[PATCH] D125009: [ArgPromotion] Use common alignment for loads in caller

Pavel Samolysov via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu May 5 06:07:22 PDT 2022


psamolysov added a comment.

I've opened this review to get a more common behavior for byval and non-byval promotion schemes before replacing the byval scheme with tweaked non-byval (with allowed `store`s) one. I think having some more ifs in the source code to check whether this is promotion from byval or not and emulate the old behavior of alignments in each scheme is not a good idea and makes the code more difficult. I understand that this is not a common thing to have non-byval pointers in function arguments with the `align` attribute, I've actually seen a few cases in the `align.ll` LIT test only (`@caller_guaranteed_aligned_1(i1 %c, i32* align 16 dereferenceable(4) %p)` for example).


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D125009/new/

https://reviews.llvm.org/D125009



More information about the llvm-commits mailing list