summaryrefslogtreecommitdiffstats
path: root/llvm/lib/CodeGen
diff options
context:
space:
mode:
authorAyman Musa <ayman.musa@intel.com>2017-11-02 13:07:06 +0000
committerAyman Musa <ayman.musa@intel.com>2017-11-02 13:07:06 +0000
commita37d1130d797599c6babb150c97440fcd83c5089 (patch)
tree4c32b57a1b6517d96ce7db058efcf1199b01073b /llvm/lib/CodeGen
parent35cbbdd9f4308ec0cc5128b8c4cd2a44538099d3 (diff)
downloadbcm5719-llvm-a37d1130d797599c6babb150c97440fcd83c5089.tar.gz
bcm5719-llvm-a37d1130d797599c6babb150c97440fcd83c5089.zip
[X86] Fix bug in legalize vector types - Split large loads
When splitting a large load to smaller legally-typed loads, the last load should be padded to reach the size of the previous one so a CONCAT_VECTORS node could reunite them again. The code currently pads the last load to reach the size of the first load (instead of the previous). Differential Revision: https://reviews.llvm.org/D38495 Change-Id: Ib60b55ed26ce901fabf68108daf52683fbd5013f llvm-svn: 317206
Diffstat (limited to 'llvm/lib/CodeGen')
-rw-r--r--llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp b/llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
index 5d6c4998ecd..b55414b51b8 100644
--- a/llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
+++ b/llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
@@ -3844,7 +3844,7 @@ SDValue DAGTypeLegalizer::GenWidenVectorLoads(SmallVectorImpl<SDValue> &LdChain,
}
LdOps.push_back(L);
-
+ LdOp = L;
LdWidth -= NewVTWidth;
}
OpenPOWER on IntegriCloud