mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-10-21 03:53:04 +02:00
[DAG] Defer Pre/Post IndexStore merge to after mergestore. NFCI.
In preparation for doing storemerge post-legalization, reorder visitSTORE passes to move pre/post-index combining after store merge. Reordered passes other than store merge are unaffected. llvm-svn: 305473
This commit is contained in:
parent
c66e7ebfbd
commit
ba6db6fbfd
@ -13218,10 +13218,6 @@ SDValue DAGCombiner::visitSTORE(SDNode *N) {
|
||||
Chain = ST->getChain();
|
||||
}
|
||||
|
||||
// Try transforming N to an indexed store.
|
||||
if (CombineToPreIndexedLoadStore(N) || CombineToPostIndexedLoadStore(N))
|
||||
return SDValue(N, 0);
|
||||
|
||||
// FIXME: is there such a thing as a truncating indexed store?
|
||||
if (ST->isTruncatingStore() && ST->isUnindexed() &&
|
||||
Value.getValueType().isInteger()) {
|
||||
@ -13316,6 +13312,10 @@ SDValue DAGCombiner::visitSTORE(SDNode *N) {
|
||||
}
|
||||
}
|
||||
|
||||
// Try transforming N to an indexed store.
|
||||
if (CombineToPreIndexedLoadStore(N) || CombineToPostIndexedLoadStore(N))
|
||||
return SDValue(N, 0);
|
||||
|
||||
// Turn 'store float 1.0, Ptr' -> 'store int 0x12345678, Ptr'
|
||||
//
|
||||
// Make sure to do this only after attempting to merge stores in order to
|
||||
|
Loading…
Reference in New Issue
Block a user