[llvm] [LLVM] [X86] Fix integer overflows in frame layout for huge frames (PR #101840)

Matt Arsenault via llvm-commits llvm-commits at lists.llvm.org
Tue Aug 6 00:38:44 PDT 2024


================
@@ -176,6 +178,13 @@ class X86RegisterInfo final : public X86GenRegisterInfo {
                              SmallVectorImpl<MCPhysReg> &Hints,
                              const MachineFunction &MF, const VirtRegMap *VRM,
                              const LiveRegMatrix *Matrix) const override;
+
+  bool requiresRegisterScavenging(const MachineFunction &MF) const override {
+    const MachineFrameInfo &MFI = MF.getFrameInfo();
+
+    // We need to register scavenge if the frame is very large.
+    return Is64Bit && !isInt<32>(MFI.estimateStackSize(MF));
----------------
arsenm wrote:

Don't need target check?

https://github.com/llvm/llvm-project/pull/101840


More information about the llvm-commits mailing list