[all-commits] [llvm/llvm-project] 219f32: [X86][SSE] Shuffle combine blends to OR(X, Y) if th...
Simon Pilgrim via All-commits
all-commits at lists.llvm.org
Mon Aug 3 10:33:17 PDT 2020
Branch: refs/heads/master
Home: https://github.com/llvm/llvm-project
Commit: 219f32f4b68679563443cdaae7b8174c9976409a
https://github.com/llvm/llvm-project/commit/219f32f4b68679563443cdaae7b8174c9976409a
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2020-08-03 (Mon, 03 Aug 2020)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/insertelement-ones.ll
M llvm/test/CodeGen/X86/shuffle-vs-trunc-256.ll
M llvm/test/CodeGen/X86/vector-shuffle-128-v8.ll
M llvm/test/CodeGen/X86/vector-shuffle-256-v32.ll
Log Message:
-----------
[X86][SSE] Shuffle combine blends to OR(X,Y) if the relevant elements are known zero.
This allows us to remove the (depth violating) code in getFauxShuffleMask where we were combining the OR(SHUFFLE,SHUFFLE) shuffle inputs as well, and not just the OR().
This is a minor step toward being able to shuffle combine from/to SELECT/BLENDV as a faux shuffle.
More information about the All-commits
mailing list