Compare commits
3 Commits
9e17fac1d0
...
1fa92bb037
Author | SHA1 | Date |
---|---|---|
David Mak | 1fa92bb037 | |
David Mak | e8885e0bf4 | |
David Mak | 60305b0510 |
|
@ -17,3 +17,5 @@ echo -n "Checking $demo... "
|
|||
diff -Nau interpreted.log run.log
|
||||
diff -Nau interpreted.log run_lli.log
|
||||
echo "ok"
|
||||
|
||||
rm -f interpreted.log run.log run_lli.log
|
||||
|
|
|
@ -18,5 +18,4 @@ rm -f "*.o" "*.bc" demo
|
|||
|
||||
$nac3standalone --emit-llvm "$@"
|
||||
clang -S -std=gnu11 -Wall -Wextra -O3 -emit-llvm -o demo.bc demo.c
|
||||
clang -S -std=gnu11 -Wall -Wextra -O3 -emit-llvm -o irrt.bc ../../nac3core/src/codegen/irrt/irrt.c
|
||||
lli --extra-module demo.bc --extra-module irrt.bc main.bc
|
||||
lli --extra-module demo.bc main.bc
|
||||
|
|
|
@ -339,6 +339,10 @@ fn main() {
|
|||
let main = context
|
||||
.create_module_from_ir(MemoryBuffer::create_from_memory_range(&buffers[0], "main"))
|
||||
.unwrap();
|
||||
|
||||
// Emit bitcode with main and IRRT dependencies first before linking in the other modules.
|
||||
// This helps separate the input generated from the input and the IRRT utilities.
|
||||
main.link_in_module(load_irrt(&context)).unwrap();
|
||||
if emit_llvm {
|
||||
main.write_bitcode_to_path(Path::new("main.bc"));
|
||||
}
|
||||
|
@ -354,7 +358,6 @@ fn main() {
|
|||
|
||||
main.link_in_module(other).unwrap();
|
||||
}
|
||||
main.link_in_module(load_irrt(&context)).unwrap();
|
||||
|
||||
let mut function_iter = main.get_first_function();
|
||||
while let Some(func) = function_iter {
|
||||
|
|
Loading…
Reference in New Issue