summaryrefslogtreecommitdiffstats
path: root/clang/test/Analysis/svalbuilder-logic.c
diff options
context:
space:
mode:
authorChandler Carruth <chandlerc@gmail.com>2015-02-19 13:15:12 +0000
committerChandler Carruth <chandlerc@gmail.com>2015-02-19 13:15:12 +0000
commitf0f0d2739127cd8971f0c91a45596ac40effb53b (patch)
tree7ed91794043f898d1e8ece948ed19d407224fe86 /clang/test/Analysis/svalbuilder-logic.c
parentc31da7010baeb6f45ad97ec8b52aeca71c0fd094 (diff)
downloadbcm5719-llvm-f0f0d2739127cd8971f0c91a45596ac40effb53b.tar.gz
bcm5719-llvm-f0f0d2739127cd8971f0c91a45596ac40effb53b.zip
[x86] Simplify the pre-SSSE3 v16i8 lowering significantly by decomposing
them into permutes and a blend with the generic decomposition logic. This works really well in almost every case and lets the code only manage the expansion of a single input into two v8i16 vectors to perform the actual shuffle. The blend-based merging is often much nicer than the pack based merging that this replaces. The only place where it isn't we end up blending between two packs when we could do a single pack. To handle that case, just teach the v2i64 lowering to handle these blends by digging out the operands. With this we're down to only really random permutations that cause an explosion of instructions. llvm-svn: 229849
Diffstat (limited to 'clang/test/Analysis/svalbuilder-logic.c')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud