Page MenuHomeFreeBSD

D20383.id57781.diff
No OneTemporary

D20383.id57781.diff

Index: contrib/llvm/lib/Target/PowerPC/PPCTargetMachine.cpp
===================================================================
--- contrib/llvm/lib/Target/PowerPC/PPCTargetMachine.cpp
+++ contrib/llvm/lib/Target/PowerPC/PPCTargetMachine.cpp
@@ -195,6 +195,20 @@
if (TT.isMacOSX())
return PPCTargetMachine::PPC_ABI_UNKNOWN;
+ if (TT.isOSFreeBSD()) {
+ switch (TT.getArch()) {
+ case Triple::ppc64le:
+ case Triple::ppc64:
+ if (TT.getOSMajorVersion() >= 13)
+ return PPCTargetMachine::PPC_ABI_ELFv2;
+ else
+ return PPCTargetMachine::PPC_ABI_ELFv1;
+ case Triple::ppc:
+ default:
+ return PPCTargetMachine::PPC_ABI_UNKNOWN;
+ }
+ }
+
switch (TT.getArch()) {
case Triple::ppc64le:
return PPCTargetMachine::PPC_ABI_ELFv2;
Index: contrib/llvm/tools/clang/lib/Basic/Targets/PPC.h
===================================================================
--- contrib/llvm/tools/clang/lib/Basic/Targets/PPC.h
+++ contrib/llvm/tools/clang/lib/Basic/Targets/PPC.h
@@ -372,6 +372,8 @@
case llvm::Triple::FreeBSD:
LongDoubleWidth = LongDoubleAlign = 64;
LongDoubleFormat = &llvm::APFloat::IEEEdouble();
+ if (Triple.getOSMajorVersion() >= 13)
+ ABI = "elfv2";
break;
default:
break;

File Metadata

Mime Type
text/plain
Expires
Thu, Mar 19, 3:43 AM (11 h, 49 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
29943312
Default Alt Text
D20383.id57781.diff (1 KB)

Event Timeline