[PATCH] D70267: [X86][SSE] Simplify extract(shuffle(load())) handling (PR43971)

Simon Pilgrim via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Nov 14 12:25:16 PST 2019


RKSimon created this revision.
RKSimon added reviewers: craig.topper, spatel, wolfgangp, deadalnix.
Herald added subscribers: dmgreen, hiraditya.
Herald added a project: LLVM.

PR43971 showed how XFormVExtractWithShuffleIntoLoad was relying on a later call to DAGCombiner::visitEXTRACT_VECTOR_ELT to succeed before the regenerated VECTOR_SHUFFLE was re-lowered to a target shuffle again.

This patch removes XFormVExtractWithShuffleIntoLoad entirely, avoiding the creation of the VECTOR_SHUFFLE, instead it uses combineExtractWithShuffle to extract directly from the load (stripping any bitcasts).


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D70267

Files:
  llvm/lib/Target/X86/X86ISelLowering.cpp
  llvm/test/CodeGen/X86/extractelement-load.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D70267.229378.patch
Type: text/x-patch
Size: 9323 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20191114/d29d6625/attachment.bin>


More information about the llvm-commits mailing list