mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-07-24 06:25:18 +00:00
Move ABI handling and 64-bitness to the PowerPC target machine.
This required changing how the computation of the ABI is handled and how some of the checks for ABI/target are done. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@229471 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@@ -114,11 +114,6 @@ protected:
|
||||
bool HasICBT;
|
||||
bool HasInvariantFunctionDescriptors;
|
||||
|
||||
enum {
|
||||
PPC_ABI_UNKNOWN,
|
||||
PPC_ABI_ELFv1,
|
||||
PPC_ABI_ELFv2
|
||||
} TargetABI;
|
||||
const PPCTargetMachine &TM;
|
||||
PPCFrameLowering FrameLowering;
|
||||
PPCInstrInfo InstrInfo;
|
||||
@@ -177,7 +172,7 @@ private:
|
||||
public:
|
||||
/// isPPC64 - Return true if we are generating code for 64-bit pointer mode.
|
||||
///
|
||||
bool isPPC64() const { return IsPPC64; }
|
||||
bool isPPC64() const;
|
||||
|
||||
/// has64BitSupport - Return true if the selected CPU supports 64-bit
|
||||
/// instructions, regardless of whether we are in 32-bit or 64-bit mode.
|
||||
@@ -245,9 +240,9 @@ public:
|
||||
bool isTargetELF() const { return TargetTriple.isOSBinFormatELF(); }
|
||||
bool isTargetMachO() const { return TargetTriple.isOSBinFormatMachO(); }
|
||||
|
||||
bool isDarwinABI() const { return isDarwin(); }
|
||||
bool isSVR4ABI() const { return !isDarwin(); }
|
||||
bool isELFv2ABI() const { return TargetABI == PPC_ABI_ELFv2; }
|
||||
bool isDarwinABI() const { return isTargetMachO() || isDarwin(); }
|
||||
bool isSVR4ABI() const { return !isDarwinABI(); }
|
||||
bool isELFv2ABI() const;
|
||||
|
||||
bool enableEarlyIfConversion() const override { return hasISEL(); }
|
||||
|
||||
|
Reference in New Issue
Block a user