brandtbucher wrote:

> Function X86FrameLowering::spillFPBP can do this for clobbered base pointer 
> and frame pointer.

So the `RBX`/`ESI` base pointers can be removed from the callee-saved-regs 
lists?

```diff
diff --git a/llvm/lib/Target/X86/X86CallingConv.td 
b/llvm/lib/Target/X86/X86CallingConv.td
index 9e5aaeb44334..32eedcb9ca79 100644
--- a/llvm/lib/Target/X86/X86CallingConv.td
+++ b/llvm/lib/Target/X86/X86CallingConv.td
@@ -1197,8 +1197,8 @@ def CSR_64_AllRegs_AVX512 : CalleeSavedRegs<(sub (add 
CSR_64_MostRegs, RAX,
                                                       (sequence "ZMM%u", 0, 
31),
                                                       (sequence "K%u", 0, 7)),
                                                  (sequence "XMM%u", 0, 15))>;
-def CSR_64_NoneRegs    : CalleeSavedRegs<(add RBP, RBX)>;
-def CSR_32_NoneRegs    : CalleeSavedRegs<(add EBP, ESI)>;
+def CSR_64_NoneRegs    : CalleeSavedRegs<(add RBP)>;
+def CSR_32_NoneRegs    : CalleeSavedRegs<(add EBP)>;
 
 // Standard C + YMM6-15
 def CSR_Win64_Intel_OCL_BI_AVX : CalleeSavedRegs<(add RBX, RBP, RDI, RSI, R12,
```



https://github.com/llvm/llvm-project/pull/150106
_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to