summaryrefslogtreecommitdiffstats
path: root/llvm/lib/CodeGen/StackColoring.cpp
diff options
context:
space:
mode:
authorBill Schmidt <wschmidt@linux.vnet.ibm.com>2014-06-09 16:06:29 +0000
committerBill Schmidt <wschmidt@linux.vnet.ibm.com>2014-06-09 16:06:29 +0000
commit42995e8c74d96f5205a2fbce75260cdda5104842 (patch)
treed58dc7c0f54444ed1236b769b18e66815a9fd001 /llvm/lib/CodeGen/StackColoring.cpp
parenta9b6202d60ea412e27f9f72c1e8a0c7fe9aa7d51 (diff)
downloadbcm5719-llvm-42995e8c74d96f5205a2fbce75260cdda5104842.tar.gz
bcm5719-llvm-42995e8c74d96f5205a2fbce75260cdda5104842.zip
[PPC64LE] Generate correct little-endian code for v16i8 multiply
The existing code in PPCTargetLowering::LowerMUL() for multiplying two v16i8 values assumes that vector elements are numbered in big-endian order. For little-endian targets, the vector element numbering is reversed, but the vmuleub, vmuloub, and vperm instructions still assume big-endian numbering. To account for this, we must adjust the permute control vector and reverse the order of the input registers on the vperm instruction. The existing test/CodeGen/PowerPC/vec_mul.ll is updated to be executed on powerpc64 and powerpc64le targets as well as the original powerpc (32-bit) target. llvm-svn: 210474
Diffstat (limited to 'llvm/lib/CodeGen/StackColoring.cpp')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud