summaryrefslogtreecommitdiff
path: root/llvm/lib/Target/LoongArch/LoongArchCallingConv.td
diff options
context:
space:
mode:
Diffstat (limited to 'llvm/lib/Target/LoongArch/LoongArchCallingConv.td')
-rw-r--r--llvm/lib/Target/LoongArch/LoongArchCallingConv.td4
1 files changed, 4 insertions, 0 deletions
diff --git a/llvm/lib/Target/LoongArch/LoongArchCallingConv.td b/llvm/lib/Target/LoongArch/LoongArchCallingConv.td
index 9844163163a5..7dcf65ce2b82 100644
--- a/llvm/lib/Target/LoongArch/LoongArchCallingConv.td
+++ b/llvm/lib/Target/LoongArch/LoongArchCallingConv.td
@@ -21,3 +21,7 @@ def CSR_ILP32D_LP64D
// Needed for implementation of LoongArchRegisterInfo::getNoPreservedMask()
def CSR_NoRegs : CalleeSavedRegs<(add)>;
+
+def CSR_MostRegs : CalleeSavedRegs<(add CSR_ILP32S_LP64S,
+ (sequence "R%u", 4, 11),
+ (sequence "R%u", 16, 19))>;