summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/Mips/AsmParser/MipsAsmParser.cpp
diff options
context:
space:
mode:
authorNemanja Ivanovic <nemanja.i.ibm@gmail.com>2016-07-05 09:22:29 +0000
committerNemanja Ivanovic <nemanja.i.ibm@gmail.com>2016-07-05 09:22:29 +0000
commit44513e545fdafe7d537f9f152bd8512c3c31f582 (patch)
tree19f3253d1799fac700b5df62c79c932403e93c04 /llvm/lib/Target/Mips/AsmParser/MipsAsmParser.cpp
parentdea33cc2f3b1f6c37cdb4178c8a213fea7db118b (diff)
downloadbcm5719-llvm-44513e545fdafe7d537f9f152bd8512c3c31f582.tar.gz
bcm5719-llvm-44513e545fdafe7d537f9f152bd8512c3c31f582.zip
[PowerPC] - Legalize vector types by widening instead of integer promotion
This patch corresponds to review: http://reviews.llvm.org/D20443 It changes the legalization strategy for illegal vector types from integer promotion to widening. This only applies for vectors with elements of width that is a multiple of a byte since we have hardware support for vectors with 1, 2, 3, 8 and 16 byte elements. Integer promotion for vectors is quite expensive on PPC due to the sequence of breaking apart the vector, extending the elements and reconstituting the vector. Two of these operations are expensive. This patch causes between minor and major improvements in performance on most benchmarks. There are very few benchmarks whose performance regresses. These regressions can be handled in a subsequent patch with a DAG combine (similar to how this patch handles int -> fp conversions of illegal vector types). llvm-svn: 274535
Diffstat (limited to 'llvm/lib/Target/Mips/AsmParser/MipsAsmParser.cpp')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud