[PATCH] D58888: [X86][AVX] lowerShuffleAsBroadcast - improve load folding by avoiding bitcasts

Simon Pilgrim via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Sun Mar 3 14:17:04 PST 2019


RKSimon created this revision.
RKSimon added reviewers: craig.topper, spatel.
Herald added a project: LLVM.

AVX1 broadcasts were failing as we were adding bitcasts that caused MayFoldLoad's hasOneUse to return false.

This patch stops introducing bitcasts so early and also replaces the broadcast index scaling through bitcasts (which can't succeed in some cases) to instead just keep track of the bitoffset which can be converted back to the broadcast index later on.


Repository:
  rL LLVM

https://reviews.llvm.org/D58888

Files:
  lib/Target/X86/X86ISelLowering.cpp
  test/CodeGen/X86/widened-broadcast.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D58888.189098.patch
Type: text/x-patch
Size: 15548 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20190303/fd0f31d9/attachment.bin>


More information about the llvm-commits mailing list