[llvm] [Xtensa] Fix FP register scavenging. (PR #215984)

via llvm-commits llvm-commits at lists.llvm.org
Thu Aug 13 01:20:22 PDT 2026


llvmorg-github-actions[bot] wrote:


<!--LLVM PR SUMMARY COMMENT-->

@llvm/pr-subscribers-backend-xtensa

Author: Andrei Safronov (andreisfr)

<details>
<summary>Changes</summary>



---
Full diff: https://github.com/llvm/llvm-project/pull/215984.diff


1 Files Affected:

- (modified) llvm/lib/Target/Xtensa/XtensaFrameLowering.cpp (+1-1) 


``````````diff
diff --git a/llvm/lib/Target/Xtensa/XtensaFrameLowering.cpp b/llvm/lib/Target/Xtensa/XtensaFrameLowering.cpp
index 1c0dc66a46144..0c090f04e2508 100644
--- a/llvm/lib/Target/Xtensa/XtensaFrameLowering.cpp
+++ b/llvm/lib/Target/Xtensa/XtensaFrameLowering.cpp
@@ -368,7 +368,7 @@ void XtensaFrameLowering::processFunctionBeforeFrameFinalized(
   auto *XtensaFI = MF.getInfo<XtensaMachineFunctionInfo>();
   unsigned ScavSlotsNum = 0;
 
-  if (!isInt<12>(MaxSPOffset))
+  if (!isInt<12>(MaxSPOffset) || hasFP(MF))
     ScavSlotsNum = 1;
 
   // Far branches over 18-bit offset require a spill slot for scratch register.

``````````

</details>


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


More information about the llvm-commits mailing list