diff options
| author | Alex Rønne Petersen <alex@alexrp.com> | 2024-08-28 03:02:04 +0200 |
|---|---|---|
| committer | Alex Rønne Petersen <alex@alexrp.com> | 2024-08-28 06:18:06 +0200 |
| commit | 7d9edff11d4c0dd6793bfd4bb2d7e3c2d32c88cd (patch) | |
| tree | 82c547eab6f1cd93cef5905e88c14b0438cc5a12 /src/codegen/llvm.zig | |
| parent | 93cb44c80582dd02b63b02e7bb7e54d7ad8a4ebc (diff) | |
| download | zig-7d9edff11d4c0dd6793bfd4bb2d7e3c2d32c88cd.tar.gz zig-7d9edff11d4c0dd6793bfd4bb2d7e3c2d32c88cd.zip | |
llvm: Set PIC level 1 for MIPS.
For hysterical raisins, MIPS always uses 1, regardless of `-fpic` vs `-fPIC`.
Diffstat (limited to 'src/codegen/llvm.zig')
| -rw-r--r-- | src/codegen/llvm.zig | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/src/codegen/llvm.zig b/src/codegen/llvm.zig index eec46b8379..57ee1c8a67 100644 --- a/src/codegen/llvm.zig +++ b/src/codegen/llvm.zig @@ -1259,8 +1259,11 @@ pub const Object = struct { ); errdefer target_machine.dispose(); - if (pic) module.setModulePICLevel(); - if (comp.config.pie) module.setModulePIELevel(); + const large_pic = target_util.usesLargePIC(comp.root_mod.resolved_target.result); + + if (pic) module.setModulePICLevel(large_pic); + if (comp.config.pie) module.setModulePIELevel(large_pic); + if (code_model != .Default) module.setModuleCodeModel(code_model); if (comp.llvm_opt_bisect_limit >= 0) { |
