summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authordrahn <drahn@openbsd.org>2020-05-30 19:27:11 +0000
committerdrahn <drahn@openbsd.org>2020-05-30 19:27:11 +0000
commit98c52506dedbd7b4b3f76d15c419a7ea974c7fb5 (patch)
treebd33c10952ef73b0fb1f31a62fd32f15a860ae2e
parentPowerpc64 should use same _mcount profiling as powerpc 32bit. (diff)
downloadwireguard-openbsd-98c52506dedbd7b4b3f76d15c419a7ea974c7fb5.tar.xz
wireguard-openbsd-98c52506dedbd7b4b3f76d15c419a7ea974c7fb5.zip
Switch Powerpc64 Big Endian to ELFv2 on OpenBSD, as least for now.
This should simplify bringup and make it easier to support Big Endian and Little Endian with the same code. May be reconsidered if it causes too many problems with Ports. ok kettenis@
-rw-r--r--gnu/llvm/lib/Target/PowerPC/PPCTargetMachine.cpp2
1 files changed, 2 insertions, 0 deletions
diff --git a/gnu/llvm/lib/Target/PowerPC/PPCTargetMachine.cpp b/gnu/llvm/lib/Target/PowerPC/PPCTargetMachine.cpp
index 580d057602f..69de81b77bb 100644
--- a/gnu/llvm/lib/Target/PowerPC/PPCTargetMachine.cpp
+++ b/gnu/llvm/lib/Target/PowerPC/PPCTargetMachine.cpp
@@ -199,6 +199,8 @@ static PPCTargetMachine::PPCABI computeTargetABI(const Triple &TT,
case Triple::ppc64le:
return PPCTargetMachine::PPC_ABI_ELFv2;
case Triple::ppc64:
+ if (TT.isOSOpenBSD())
+ return PPCTargetMachine::PPC_ABI_ELFv2;
return PPCTargetMachine::PPC_ABI_ELFv1;
default:
return PPCTargetMachine::PPC_ABI_UNKNOWN;