[all-commits] [llvm/llvm-project] ee4055: [GlobalOpt] adjust test to show load problems; NFC
RotateRight via All-commits
all-commits at lists.llvm.org
Thu May 20 09:12:51 PDT 2021
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: ee4055cf23e7c7c5e2b91aefbbf10aa23754ade9
https://github.com/llvm/llvm-project/commit/ee4055cf23e7c7c5e2b91aefbbf10aa23754ade9
Author: Sanjay Patel <spatel at rotateright.com>
Date: 2021-05-20 (Thu, 20 May 2021)
Changed paths:
M llvm/test/Transforms/GlobalOpt/globalsra-align.ll
Log Message:
-----------
[GlobalOpt] adjust test to show load problems; NFC
Goes with D102552
Commit: f34311c4024d07246128352241ff360173c68f87
https://github.com/llvm/llvm-project/commit/f34311c4024d07246128352241ff360173c68f87
Author: Sanjay Patel <spatel at rotateright.com>
Date: 2021-05-20 (Thu, 20 May 2021)
Changed paths:
M llvm/lib/Transforms/IPO/GlobalOpt.cpp
M llvm/test/Transforms/GlobalOpt/externally-initialized-global-ctr.ll
M llvm/test/Transforms/GlobalOpt/globalsra-align.ll
Log Message:
-----------
[GlobalOpt] recompute alignments for loads and stores of updated globals
GlobalOpt can slice structs/arrays and change GEPs in the process,
but it was not updating alignments for load/store users. This
eventually causes the crashing seen in:
https://llvm.org/PR49661
https://llvm.org/PR50253
On x86, this required SLP+codegen to create an aligned vector
store on an invalid address. The bugs would be easier to
demonstrate on a target with stricter alignment requirements.
I'm not sure if this is a complete solution. The alignment
updating code is adapted from InstCombine, so I assume that
part is tested and good.
Differential Revision: https://reviews.llvm.org/D102552
Compare: https://github.com/llvm/llvm-project/compare/8ebaa195015d...f34311c4024d
More information about the All-commits
mailing list