aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/Analysis/CodeMetrics.cpp
diff options
context:
space:
mode:
authorSimon Pilgrim <llvm-dev@redking.me.uk>2016-08-03 19:08:24 +0000
committerSimon Pilgrim <llvm-dev@redking.me.uk>2016-08-03 19:08:24 +0000
commit898f030f70411496ef9450fab7b4bb0da1eda33b (patch)
tree618951d7ff0c96a40f53b198b323a4854c3250ff /llvm/lib/Analysis/CodeMetrics.cpp
parent4031d9f80e67c4e36c233e1c390dabed994e9316 (diff)
downloadllvm-898f030f70411496ef9450fab7b4bb0da1eda33b.zip
llvm-898f030f70411496ef9450fab7b4bb0da1eda33b.tar.gz
llvm-898f030f70411496ef9450fab7b4bb0da1eda33b.tar.bz2
[X86][SSE] Enable target shuffle combining to combine multiple shuffle inputs.
We currently only support combining target shuffles that consist of a single source input (plus elements known to be undef/zero). This patch generalizes the recursive combining of the target shuffle to collect all the inputs, merging any duplicates along the way, into a full set of src ops and its shuffle mask. We uncover a number of cases where we have failed to combine a unary shuffle because the input has been duplicated and separated during lowering. This will allow us to combine to 2-input shuffles in a future patch. Differential Revision: https://reviews.llvm.org/D22859 llvm-svn: 277631
Diffstat (limited to 'llvm/lib/Analysis/CodeMetrics.cpp')
0 files changed, 0 insertions, 0 deletions