[PATCH] D75903: [AArch64][CodeGen] Fixing stack alignment of HFA arguments on AArch64 PCS
Reid Kleckner via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Fri Apr 10 13:59:00 PDT 2020
rnk added a comment.
In D75903#1963382 <https://reviews.llvm.org/D75903#1963382>, @pratlucas wrote:
> In regards to the compatibility with other compilers, I'm not sure that following what seems to be an uncompliant behavior would be the best way to proceed. @rnk and @ostannard, what would be your take on this?
I don't have any familiarity with the prevailing practices for ARM ABI compatibility, so I couldn't say. It might be worth checking in with stakeholders from the other compilers, i.e. file bugs against both compilers and ask for an opinion.
================
Comment at: llvm/docs/LangRef.rst:1220
+``alignstack(<n>)``
+ This indicates the alignment that should be considered by the backend when
+ assigning this parameter to a stack slot during calling convention
----------------
This seems like you are introducing a new meaning to `alignstack`, which according to the comments, only affects function SP alignment, not parameter alignment.
I'm assuming the reason you can't use the regular `align` attribute is that it is overloaded to mean two things: the alignment of the pointer when applied to a pointer, and the alignment of the argument memory when that pointer argument is marked `byval`. If you want to resolve this ambiguity, it seems like something that should be discussed on llvm-dev with a wider audience.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D75903/new/
https://reviews.llvm.org/D75903
More information about the cfe-commits
mailing list