[PATCH] D94465: [RISCV] Frame handling for RISC-V V extension. (2nd. version)
Su Hsien Ho via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Tue Mar 30 10:21:24 PDT 2021
SuH added a comment.
Hi @rogfer01
> We changed the RVV frame layout in D97111 <https://reviews.llvm.org/D97111>, does your question still hold under that new layout?
Yes, the problem still exist.
|---------------------------------|------
| scalar incoming arguments | |
|---------------------------------| | Previous frame
| RVV previous local variables && | | <-----how to know this size or how to count count # of vectors?
| RVV incoming arguments |------
|---------------------------------| - start of frame (fp)
| scalar callee-saved registers |
|---------------------------------|
| scalar local variables |
|---------------------------------|
| scalar outgoing arguments |
|---------------------------------|
| RVV local variables && |
| RVV outgoing arguments |
|---------------------------------| <- end of frame (sp)
My question is how to count the scalar incoming argument with this frame layout,
because scalar incoming arguments cross RVV previous local variables frame objects.
In the current frame(callee), we don't know the RVV previous local variables count.
So we can't get the real stack offset because callee not know the **caller vector local variables size.**
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D94465/new/
https://reviews.llvm.org/D94465
More information about the llvm-commits
mailing list