mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-02-08 06:32:24 +00:00
Move a sign-extend or a zero-extend of a load to the same basic block as the
load when the type of the load is not legal, even if truncates are not free. The load is going to be legalized to an extending load anyway. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114488 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
9120f5c35b
commit
71dc4d96ed
@ -772,7 +772,8 @@ bool CodeGenPrepare::MoveExtToFormExtLoad(Instruction *I) {
|
||||
// If the load has other users and the truncate is not free, this probably
|
||||
// isn't worthwhile.
|
||||
if (!LI->hasOneUse() &&
|
||||
TLI && !TLI->isTruncateFree(I->getType(), LI->getType()))
|
||||
TLI && TLI->isTypeLegal(TLI->getValueType(LI->getType())) &&
|
||||
!TLI->isTruncateFree(I->getType(), LI->getType()))
|
||||
return false;
|
||||
|
||||
// Check whether the target supports casts folded into loads.
|
||||
|
Loading…
x
Reference in New Issue
Block a user