Issue 154379
Summary [X86] regalloc fails for leaf function requiring 15 registers with `"frame-pointer"="non-leaf"`
Labels backend:X86
Assignees
Reporter omern1
    Reproducer: https://clang.godbolt.org/z/3veoajz7P

The inline assembly in the IR in the repro requires 14 registers + `ecx` which should be available given that this is a leaf function.

This was introduced in https://github.com/llvm/llvm-project/pull/146638.

The patch uses `TargetPointer::FramePointerIsReserved` to check whether the `rbp` should be reserved. `TargetPointer::FramePointerIsReserved` returns true even if `"frame-pointer"="non-leaf"` but doesn't check whether the MachineFunction in question is actually non-leaf.
_______________________________________________
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs

Reply via email to