diff options
Diffstat (limited to 'src/llvm_backend.cpp')
| -rw-r--r-- | src/llvm_backend.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/llvm_backend.cpp b/src/llvm_backend.cpp index ed3ae7dfc..b6c1693d8 100644 --- a/src/llvm_backend.cpp +++ b/src/llvm_backend.cpp @@ -1325,6 +1325,10 @@ void lb_generate_code(lbGenerator *gen) { switch (build_context.reloc_mode) { case RelocMode_Default: + if (build_context.metrics.os == TargetOs_openbsd) { + // Always use PIC for OpenBSD: it defaults to PIE + reloc_mode = LLVMRelocPIC; + } break; case RelocMode_Static: reloc_mode = LLVMRelocStatic; |