diff options
| author | gingerBill <bill@gingerbill.org> | 2020-05-27 12:32:11 +0100 |
|---|---|---|
| committer | gingerBill <bill@gingerbill.org> | 2020-05-27 12:32:11 +0100 |
| commit | 6ac0fb80a6eab6ba28838e8e577dc8ae8cba06a7 (patch) | |
| tree | 9bf9a7315b8344f3a44fb019680bb41bf5c8332f /src/llvm_backend.cpp | |
| parent | 098699103da15894be771ce7c5f28812fd6de883 (diff) | |
Minor tokenizer performance improvements
Diffstat (limited to 'src/llvm_backend.cpp')
| -rw-r--r-- | src/llvm_backend.cpp | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/src/llvm_backend.cpp b/src/llvm_backend.cpp index 8095b06f1..f152c7596 100644 --- a/src/llvm_backend.cpp +++ b/src/llvm_backend.cpp @@ -2034,6 +2034,11 @@ lbProcedure *lb_create_procedure(lbModule *m, Entity *entity) { LLVMSetLinkage(p->value, LLVMDLLExportLinkage); LLVMSetDLLStorageClass(p->value, LLVMDLLExportStorageClass); LLVMSetVisibility(p->value, LLVMDefaultVisibility); + + if (build_context.metrics.os == TargetOs_js) { + LLVMAddTargetDependentFunctionAttr(p->value, "wasm-export-name", alloc_cstring(heap_allocator(), p->name)); + LLVMAddTargetDependentFunctionAttr(p->value, "wasm-exported", nullptr); + } } // NOTE(bill): offset==0 is the return value @@ -12173,7 +12178,9 @@ void lb_generate_code(lbGenerator *gen) { TIME_SECTION("LLVM Object Generation"); - LLVMBool was_an_error = LLVMTargetMachineEmitToFile(target_machine, mod, cast(char *)filepath_obj.text, LLVMObjectFile, &llvm_error); + LLVMCodeGenFileType code_gen_file_type = LLVMObjectFile; + + LLVMBool was_an_error = LLVMTargetMachineEmitToFile(target_machine, mod, cast(char *)filepath_obj.text, code_gen_file_type, &llvm_error); if (was_an_error) { gb_printf_err("LLVM Error: %s\n", llvm_error); gb_exit(1); |