mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-12-15 20:29:48 +00:00
Fix a bug from r1.391 of this file, where we checked the size instead of
the alignment when promoting allocations. This implements InstCombine/cast.ll:test32 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30682 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
537cf962d1
commit
e831b9a48b
@ -5053,8 +5053,8 @@ Instruction *InstCombiner::PromoteCastOfAllocation(CastInst &CI,
|
||||
const Type *CastElTy = PTy->getElementType();
|
||||
if (!AllocElTy->isSized() || !CastElTy->isSized()) return 0;
|
||||
|
||||
unsigned AllocElTyAlign = TD->getTypeSize(AllocElTy);
|
||||
unsigned CastElTyAlign = TD->getTypeSize(CastElTy);
|
||||
unsigned AllocElTyAlign = TD->getTypeAlignment(AllocElTy);
|
||||
unsigned CastElTyAlign = TD->getTypeAlignment(CastElTy);
|
||||
if (CastElTyAlign < AllocElTyAlign) return 0;
|
||||
|
||||
// If the allocation has multiple uses, only promote it if we are strictly
|
||||
|
Loading…
Reference in New Issue
Block a user