aboutsummaryrefslogtreecommitdiff
path: root/src/main.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/main.cpp')
-rw-r--r--src/main.cpp18
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
{