summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/Hexagon/HexagonRegisterInfo.cpp
diff options
context:
space:
mode:
authorKrzysztof Parzyszek <kparzysz@codeaurora.org>2017-02-17 22:14:51 +0000
committerKrzysztof Parzyszek <kparzysz@codeaurora.org>2017-02-17 22:14:51 +0000
commit1aaf41af54fca47baa8caf3a4ec5b097d4c17976 (patch)
treecf9568c0b367b03e4a4c91d6f035f06783a0dbcd /llvm/lib/Target/Hexagon/HexagonRegisterInfo.cpp
parentbca05df38b0122945b58c559c452c03b8e81c2ce (diff)
downloadbcm5719-llvm-1aaf41af54fca47baa8caf3a4ec5b097d4c17976.tar.gz
bcm5719-llvm-1aaf41af54fca47baa8caf3a4ec5b097d4c17976.zip
[Hexagon] Start using regmasks on calls
Reapply r295371 with a fix for the Windows bot failures. llvm-svn: 295504
Diffstat (limited to 'llvm/lib/Target/Hexagon/HexagonRegisterInfo.cpp')
-rw-r--r--llvm/lib/Target/Hexagon/HexagonRegisterInfo.cpp12
1 files changed, 9 insertions, 3 deletions
diff --git a/llvm/lib/Target/Hexagon/HexagonRegisterInfo.cpp b/llvm/lib/Target/Hexagon/HexagonRegisterInfo.cpp
index 42568db4a13..a6af751d5f5 100644
--- a/llvm/lib/Target/Hexagon/HexagonRegisterInfo.cpp
+++ b/llvm/lib/Target/Hexagon/HexagonRegisterInfo.cpp
@@ -36,6 +36,9 @@
#include "llvm/Target/TargetMachine.h"
#include "llvm/Target/TargetOptions.h"
+#define GET_REGINFO_TARGET_DESC
+#include "HexagonGenRegisterInfo.inc"
+
using namespace llvm;
HexagonRegisterInfo::HexagonRegisterInfo()
@@ -134,6 +137,12 @@ HexagonRegisterInfo::getCalleeSavedRegs(const MachineFunction *MF) const {
}
+const uint32_t *HexagonRegisterInfo::getCallPreservedMask(
+ const MachineFunction &MF, CallingConv::ID) const {
+ return HexagonCSR_RegMask;
+}
+
+
BitVector HexagonRegisterInfo::getReservedRegs(const MachineFunction &MF)
const {
BitVector Reserved(getNumRegs());
@@ -284,6 +293,3 @@ unsigned HexagonRegisterInfo::getFirstCallerSavedNonParamReg() const {
return Hexagon::R6;
}
-
-#define GET_REGINFO_TARGET_DESC
-#include "HexagonGenRegisterInfo.inc"
OpenPOWER on IntegriCloud