diff options
| author | gingerBill <bill@gingerbill.org> | 2023-07-24 12:01:23 +0100 |
|---|---|---|
| committer | gingerBill <bill@gingerbill.org> | 2023-07-24 12:01:23 +0100 |
| commit | b09cdc0f256bca71ffcb5960c75127e8aaa55b87 (patch) | |
| tree | d578e7ac78aebbc572e2c97cbe1174425295e1d8 /src/main.cpp | |
| parent | bd81c6f5b4bbcdb0c65cda5bedf1f3c5e0c0371e (diff) | |
Hook up Tilde to the linker code
Diffstat (limited to 'src/main.cpp')
| -rw-r--r-- | src/main.cpp | 18 |
1 files changed, 13 insertions, 5 deletions
diff --git a/src/main.cpp b/src/main.cpp index 70e887b9f..9f8530b04 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -2489,16 +2489,24 @@ int main(int arg_count, char const **arg_ptr) { #if defined(GB_SYSTEM_WINDOWS) if (build_context.tilde_backend) { + LinkerData linker_data = {}; MAIN_TIME_SECTION("Tilde Code Gen"); - if (!cg_generate_code(checker)) { + if (!cg_generate_code(checker, &linker_data)) { return 1; } - if (build_context.show_timings) { - show_timings(checker, &global_timings); + switch (build_context.build_mode) { + case BuildMode_Executable: + case BuildMode_DynamicLibrary: + i32 result = linker_stage(&linker_data); + if (result) { + if (build_context.show_timings) { + show_timings(checker, &global_timings); + } + return result; + } + break; } - - return 0; } else #endif { |