[PATCH] D70401: [RISCV] CodeGen of RVE and ilp32e/lp64e ABIs
Wang Pengcheng via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Sun Jun 11 20:17:56 PDT 2023
pcwang-thead added a comment.
In D70401#4411560 <https://reviews.llvm.org/D70401#4411560>, @david-sawatzke wrote:
> Thank you for the reply, I've compiled this with the most recent patch and also didn't see a problem (but can't get it running with rustc). Building the .ll with the older patch, the same issue also occurs, so I *do* think its the old patch version?
> Here is the log output for the riscv32e
> F27886013: llvm_output <https://reviews.llvm.org/F27886013>
>
> (and as a sanity check riscv32i)
> F27886014: llvm_output_riscv32i <https://reviews.llvm.org/F27886014>
>
> The errant code seems to get introduced here:
>
> # *** IR Dump After Prologue/Epilogue Insertion & Frame Finalization (prologepilog) ***:
> # Machine code for function _ZN13miscomp_repro4test17h065760f827b95d43E: NoPHIs, TracksLiveness, NoVRegs, TiedOpsRewritten, TracksDebugUserValues
>
> bb.0.start:
> $x2 = frame-destroy ADDI $x8, 0
> PseudoRET
Thanks! It seems that the problem is that we do wrong FP adjustment here.
But, as you can see, this patch does almost nothing to `RISCVFrameLowering`. So I think the bug may have been fixed somewhere else (I do remember there is a bug fix but I can't remember the differential ID).
So I would suggest you to use newest patch or do some bitsecting to find the bug fix commit if you don't bother. :-)
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D70401/new/
https://reviews.llvm.org/D70401
More information about the cfe-commits
mailing list