search for: getstackpointerregistertosaverestor

Displaying 2 results from an estimated 2 matches for "getstackpointerregistertosaverestor".

2018 Apr 09
2
Issue with shrink wrapping
...uch that along a certain path, the callee-saved registers and the stack pointer are restored, but then the stack pointer is overwritten with an incorrect value. I've "fixed" this by modifying `ShrinkWrap::useOrDefCSROrFI` to explicitly check for the stack pointer register (using `TLI.getStackPointerRegisterToSaveRestore`) and also to ignore tall call instructions (`isCall() && isReturn()`), since they implictly use SP (for AArch{32,64} at least). Does this look correct? Are there alternatives? Shouldn't `ShrinkWrap::useOrDefCSROrFI` also check whether or not `MachineInstr::Frame{Setup,Destroy}` flag...
2018 Apr 10
0
Issue with shrink wrapping
...path, the callee-saved registers and the stack pointer are > restored, but then the stack pointer is overwritten with an incorrect value. > > I've "fixed" this by modifying `ShrinkWrap::useOrDefCSROrFI` to explicitly check > for the stack pointer register (using > `TLI.getStackPointerRegisterToSaveRestore`) This part sounds ok to me. Can you put up a patch please? > and also to ignore tall call > instructions (`isCall() && isReturn()`), since they implictly use SP (for > AArch{32,64} at least). Calls are handled through the regmask check, and return blocks should be handled by t...