aboutsummaryrefslogtreecommitdiff
path: root/src/llvm_backend.cpp
diff options
context:
space:
mode:
authorJason Kercher <JKercher@JSM.lcl>2022-03-09 17:17:40 -0500
committerJason Kercher <JKercher@JSM.lcl>2022-03-09 17:17:40 -0500
commitd2bc41a2df1612f8b3eb8300413be8b3f8bff895 (patch)
tree8987434f10036be298ce8cb93726b6a43f372dbf /src/llvm_backend.cpp
parentbea2f3644325454e7fe0e12313528359d0782843 (diff)
parentdc8d28c383a404d01dcbcb65ba84ff814da9424e (diff)
Merge remote-tracking branch 'upstream/master' into fix_odin_test
Diffstat (limited to 'src/llvm_backend.cpp')
-rw-r--r--src/llvm_backend.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/llvm_backend.cpp b/src/llvm_backend.cpp
index 07b8e97b2..3694f186a 100644
--- a/src/llvm_backend.cpp
+++ b/src/llvm_backend.cpp
@@ -1295,6 +1295,11 @@ void lb_generate_code(lbGenerator *gen) {
reloc_mode = LLVMRelocPIC;
}
+ if (build_context.metrics.os == TargetOs_openbsd) {
+ // Always use PIC for OpenBSD: it defaults to PIE
+ reloc_mode = LLVMRelocPIC;
+ }
+
for_array(i, gen->modules.entries) {
target_machines[i] = LLVMCreateTargetMachine(
target, target_triple, llvm_cpu,