summaryrefslogtreecommitdiff
path: root/lib/Target/AArch64/AArch64RegisterInfo.h
diff options
context:
space:
mode:
Diffstat (limited to 'lib/Target/AArch64/AArch64RegisterInfo.h')
-rw-r--r--lib/Target/AArch64/AArch64RegisterInfo.h79
1 files changed, 0 insertions, 79 deletions
diff --git a/lib/Target/AArch64/AArch64RegisterInfo.h b/lib/Target/AArch64/AArch64RegisterInfo.h
deleted file mode 100644
index 5b501f9cc1..0000000000
--- a/lib/Target/AArch64/AArch64RegisterInfo.h
+++ /dev/null
@@ -1,79 +0,0 @@
-//==- AArch64RegisterInfo.h - AArch64 Register Information Impl -*- C++ -*-===//
-//
-// The LLVM Compiler Infrastructure
-//
-// This file is distributed under the University of Illinois Open Source
-// License. See LICENSE.TXT for details.
-//
-//===----------------------------------------------------------------------===//
-//
-// This file contains the AArch64 implementation of the MCRegisterInfo class.
-//
-//===----------------------------------------------------------------------===//
-
-#ifndef LLVM_TARGET_AARCH64REGISTERINFO_H
-#define LLVM_TARGET_AARCH64REGISTERINFO_H
-
-#include "llvm/Target/TargetRegisterInfo.h"
-
-#define GET_REGINFO_HEADER
-#include "AArch64GenRegisterInfo.inc"
-
-namespace llvm {
-
-class AArch64InstrInfo;
-class AArch64Subtarget;
-
-struct AArch64RegisterInfo : public AArch64GenRegisterInfo {
- AArch64RegisterInfo();
-
- const MCPhysReg *
- getCalleeSavedRegs(const MachineFunction *MF =nullptr) const override;
- const uint32_t *getCallPreservedMask(CallingConv::ID) const override;
-
- unsigned getCSRFirstUseCost() const override {
- // The cost will be compared against BlockFrequency where entry has the
- // value of 1 << 14. A value of 5 will choose to spill or split really
- // cold path instead of using a callee-saved register.
- return 5;
- }
-
- const uint32_t *getTLSDescCallPreservedMask() const;
-
- BitVector getReservedRegs(const MachineFunction &MF) const override;
- unsigned getFrameRegister(const MachineFunction &MF) const override;
-
- void eliminateFrameIndex(MachineBasicBlock::iterator II, int SPAdj,
- unsigned FIOperandNum,
- RegScavenger *Rs = nullptr) const override;
-
- /// getCrossCopyRegClass - Returns a legal register class to copy a register
- /// in the specified class to or from. Returns original class if it is
- /// possible to copy between a two registers of the specified class.
- const TargetRegisterClass *
- getCrossCopyRegClass(const TargetRegisterClass *RC) const override;
-
- /// getLargestLegalSuperClass - Returns the largest super class of RC that is
- /// legal to use in the current sub-target and has the same spill size.
- const TargetRegisterClass*
- getLargestLegalSuperClass(const TargetRegisterClass *RC) const override {
- if (RC == &AArch64::tcGPR64RegClass)
- return &AArch64::GPR64RegClass;
-
- return RC;
- }
-
- bool requiresRegisterScavenging(const MachineFunction &MF) const override {
- return true;
- }
-
- bool requiresFrameIndexScavenging(const MachineFunction &MF) const override {
- return true;
- }
-
- bool useFPForScavengingIndex(const MachineFunction &MF) const override;
-};
-
-} // end namespace llvm
-
-#endif // LLVM_TARGET_AARCH64REGISTERINFO_H