[PATCH] D34087: [X86] EltsFromConsecutiveLoads - detect split loads without a common load base (PR32940)

Simon Pilgrim via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Sun Jun 11 03:54:53 PDT 2017


RKSimon created this revision.

As discussed on PR32940, we fail to merge some vector loads as the individual scalar loads have been split (typically for i64 -> i32 legalization on 32-bit targets) which results in not all the loads being offset from the original base.

This patch fixes this by checking to see if the load is consecutive to any previous consecutive load, and not just the first 'base' load.


Repository:
  rL LLVM

https://reviews.llvm.org/D34087

Files:
  lib/Target/X86/X86ISelLowering.cpp
  test/CodeGen/X86/build-vector-128.ll
  test/CodeGen/X86/build-vector-256.ll
  test/CodeGen/X86/build-vector-512.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D34087.102130.patch
Type: text/x-patch
Size: 6768 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20170611/5593be63/attachment.bin>


More information about the llvm-commits mailing list