diff options
Diffstat (limited to 'src/ir_print.cpp')
| -rw-r--r-- | src/ir_print.cpp | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/src/ir_print.cpp b/src/ir_print.cpp index 637486912..27704133f 100644 --- a/src/ir_print.cpp +++ b/src/ir_print.cpp @@ -1934,8 +1934,14 @@ void print_llvm_ir(irGen *ir) { ir_write_string(f, str_lit("dllexport ")); } } - if (g->is_thread_local) { - ir_write_string(f, str_lit("thread_local ")); + if (g->thread_local_model.len > 0) { + String model = g->thread_local_model; + if (model == "default") { + ir_write_string(f, str_lit("thread_local ")); + } else { + ir_fprintf(f, "thread_local(%.*s) ", LIT(model)); + + } } if (g->is_private) { |