diff options
| author | Nirav Dave <niravd@google.com> | 2017-07-10 20:25:54 +0000 | 
|---|---|---|
| committer | Nirav Dave <niravd@google.com> | 2017-07-10 20:25:54 +0000 | 
| commit | 4dcad5dc6b5f491e903d68f5278f527e6a3c98af (patch) | |
| tree | ff9af37d834dd1c91a8c7fcfd8cf277aaf849ad2 /llvm/lib/CodeGen/SelectionDAG | |
| parent | f85dd9f4e54ce2196de63923fc5291ab38684b26 (diff) | |
| download | bcm5719-llvm-4dcad5dc6b5f491e903d68f5278f527e6a3c98af.tar.gz bcm5719-llvm-4dcad5dc6b5f491e903d68f5278f527e6a3c98af.zip | |
Add DAG argument to canMergeStoresTo NFC.
llvm-svn: 307583
Diffstat (limited to 'llvm/lib/CodeGen/SelectionDAG')
| -rw-r--r-- | llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp | 16 | 
1 files changed, 9 insertions, 7 deletions
| diff --git a/llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp b/llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp index 70ce2fcd33c..33a806d8eed 100644 --- a/llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp +++ b/llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp @@ -12712,7 +12712,7 @@ bool DAGCombiner::MergeConsecutiveStores(StoreSDNode *St) {          EVT StoreTy = EVT::getIntegerVT(Context, SizeInBits);          bool IsFast = false;          if (TLI.isTypeLegal(StoreTy) && -            TLI.canMergeStoresTo(FirstStoreAS, StoreTy) && +            TLI.canMergeStoresTo(FirstStoreAS, StoreTy, DAG) &&              TLI.allowsMemoryAccess(Context, DL, StoreTy, FirstStoreAS,                                     FirstStoreAlign, &IsFast) &&              IsFast) { @@ -12724,7 +12724,7 @@ bool DAGCombiner::MergeConsecutiveStores(StoreSDNode *St) {            EVT LegalizedStoredValueTy =                TLI.getTypeToTransformTo(Context, StoredVal.getValueType());            if (TLI.isTruncStoreLegal(LegalizedStoredValueTy, StoreTy) && -              TLI.canMergeStoresTo(FirstStoreAS, LegalizedStoredValueTy) && +              TLI.canMergeStoresTo(FirstStoreAS, LegalizedStoredValueTy, DAG) &&                TLI.allowsMemoryAccess(Context, DL, LegalizedStoredValueTy,                                       FirstStoreAS, FirstStoreAlign, &IsFast) &&                IsFast) { @@ -12741,7 +12741,8 @@ bool DAGCombiner::MergeConsecutiveStores(StoreSDNode *St) {              !NoVectors) {            // Find a legal type for the vector store.            EVT Ty = EVT::getVectorVT(Context, MemVT, i + 1); -          if (TLI.isTypeLegal(Ty) && TLI.canMergeStoresTo(FirstStoreAS, Ty) && +          if (TLI.isTypeLegal(Ty) && +              TLI.canMergeStoresTo(FirstStoreAS, Ty, DAG) &&                TLI.allowsMemoryAccess(Context, DL, Ty, FirstStoreAS,                                       FirstStoreAlign, &IsFast) &&                IsFast) @@ -12799,7 +12800,8 @@ bool DAGCombiner::MergeConsecutiveStores(StoreSDNode *St) {          EVT Ty =              EVT::getVectorVT(*DAG.getContext(), MemVT.getScalarType(), Elts);          bool IsFast; -        if (TLI.isTypeLegal(Ty) && TLI.canMergeStoresTo(FirstStoreAS, Ty) && +        if (TLI.isTypeLegal(Ty) && +            TLI.canMergeStoresTo(FirstStoreAS, Ty, DAG) &&              TLI.allowsMemoryAccess(Context, DL, Ty, FirstStoreAS,                                     FirstStoreAlign, &IsFast) &&              IsFast) @@ -12916,7 +12918,7 @@ bool DAGCombiner::MergeConsecutiveStores(StoreSDNode *St) {        EVT StoreTy = EVT::getVectorVT(Context, MemVT, i + 1);        bool IsFastSt, IsFastLd;        if (TLI.isTypeLegal(StoreTy) && -          TLI.canMergeStoresTo(FirstStoreAS, StoreTy) && +          TLI.canMergeStoresTo(FirstStoreAS, StoreTy, DAG) &&            TLI.allowsMemoryAccess(Context, DL, StoreTy, FirstStoreAS,                                   FirstStoreAlign, &IsFastSt) &&            IsFastSt && @@ -12930,7 +12932,7 @@ bool DAGCombiner::MergeConsecutiveStores(StoreSDNode *St) {        unsigned SizeInBits = (i + 1) * ElementSizeBytes * 8;        StoreTy = EVT::getIntegerVT(Context, SizeInBits);        if (TLI.isTypeLegal(StoreTy) && -          TLI.canMergeStoresTo(FirstStoreAS, StoreTy) && +          TLI.canMergeStoresTo(FirstStoreAS, StoreTy, DAG) &&            TLI.allowsMemoryAccess(Context, DL, StoreTy, FirstStoreAS,                                   FirstStoreAlign, &IsFastSt) &&            IsFastSt && @@ -12944,7 +12946,7 @@ bool DAGCombiner::MergeConsecutiveStores(StoreSDNode *St) {                   TargetLowering::TypePromoteInteger) {          EVT LegalizedStoredValueTy = TLI.getTypeToTransformTo(Context, StoreTy);          if (TLI.isTruncStoreLegal(LegalizedStoredValueTy, StoreTy) && -            TLI.canMergeStoresTo(FirstStoreAS, LegalizedStoredValueTy) && +            TLI.canMergeStoresTo(FirstStoreAS, LegalizedStoredValueTy, DAG) &&              TLI.isLoadExtLegal(ISD::ZEXTLOAD, LegalizedStoredValueTy,                                 StoreTy) &&              TLI.isLoadExtLegal(ISD::SEXTLOAD, LegalizedStoredValueTy, | 

