diff options
author | Ayman Musa <ayman.musa@intel.com> | 2017-11-02 13:07:06 +0000 |
---|---|---|
committer | Ayman Musa <ayman.musa@intel.com> | 2017-11-02 13:07:06 +0000 |
commit | a37d1130d797599c6babb150c97440fcd83c5089 (patch) | |
tree | 4c32b57a1b6517d96ce7db058efcf1199b01073b /llvm/lib/CodeGen | |
parent | 35cbbdd9f4308ec0cc5128b8c4cd2a44538099d3 (diff) | |
download | bcm5719-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.cpp | 2 |
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; } |