Commit Graph

10 Commits

Author SHA1 Message Date
1de21f0c33 Make translator::intrinsics accessible to trampoline.
Start filling in the code to generate trampolines. Move func_type_to_llvm and type_to_llvm from code.rs to intrinsics.rs so that trampoline code can reuse them.
2020-04-24 16:42:14 -07:00
a6bde15ce5 Connect trampoline code to trampoline module. Still unimplemented. 2020-04-24 16:31:31 -07:00
474b3eb2f2 Fill in CompiledFunction::body with the instructions.
Use a bit of a hack to find the function, we ask LLVM to emit it to a non-standard section with a name of our choosing, and that entire section should have our function body and nothing else.
2020-04-24 16:06:03 -07:00
56fe08ad00 Assorted fixes:
Fix creation of the target machine. Fix CPU features, architecture and target name.

Function names are not mandatory. Support unnamed functions.

Include parameters and local variables in the list of local variables for LLVMFunctionCodeGenerator.

Run the tests single-threaded, using a Mutex in the rayon code. This means that only the first error is real, subsequent errors are just picking up the panic across threads.

Add TODOs about attributes on vmctx.
2020-04-23 23:32:17 -07:00
7f4fa66a23 Fix build of compiler-llvm. 2020-04-22 16:30:55 -07:00
4e6371c3ce Fix most compile issues in compiler-llvm.
Still to be fixed are MemoryPlan, MemoryStyle, TablePlan, and TableStyle.
2020-04-22 16:30:55 -07:00
57af68df13 Use module instead of module.local 2020-04-21 23:27:43 -07:00
5e59eb895b Renamed defined_ to local_ 2020-04-21 23:26:17 -07:00
feef35364b Renamed *Defined into *Local for better clarity 2020-04-21 23:19:33 -07:00
a402691303 First iteration of wasmer-reborn 2020-04-21 21:37:33 -07:00