Changeset View
Changeset View
Standalone View
Standalone View
contrib/llvm/lib/Target/PowerPC/PPCTargetMachine.cpp
Show First 20 Lines • Show All 203 Lines • ▼ Show 20 Lines | else if (Options.MCOptions.getABIName().startswith("elfv2")) | ||||
return PPCTargetMachine::PPC_ABI_ELFv2; | return PPCTargetMachine::PPC_ABI_ELFv2; | ||||
assert(Options.MCOptions.getABIName().empty() && | assert(Options.MCOptions.getABIName().empty() && | ||||
"Unknown target-abi option!"); | "Unknown target-abi option!"); | ||||
if (TT.isMacOSX()) | if (TT.isMacOSX()) | ||||
return PPCTargetMachine::PPC_ABI_UNKNOWN; | 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()) { | switch (TT.getArch()) { | ||||
case Triple::ppc64le: | case Triple::ppc64le: | ||||
return PPCTargetMachine::PPC_ABI_ELFv2; | return PPCTargetMachine::PPC_ABI_ELFv2; | ||||
case Triple::ppc64: | case Triple::ppc64: | ||||
if (TT.getEnvironment() == llvm::Triple::ELFv2) | if (TT.getEnvironment() == llvm::Triple::ELFv2) | ||||
return PPCTargetMachine::PPC_ABI_ELFv2; | return PPCTargetMachine::PPC_ABI_ELFv2; | ||||
return PPCTargetMachine::PPC_ABI_ELFv1; | return PPCTargetMachine::PPC_ABI_ELFv1; | ||||
default: | default: | ||||
▲ Show 20 Lines • Show All 312 Lines • Show Last 20 Lines |