llvm-6502/test
Bill Schmidt 8e38e86266 [PPC64LE] Generate correct code for unaligned little-endian vector loads
The code in PPCTargetLowering::PerformDAGCombine() that handles
unaligned Altivec vector loads generates a lvsl followed by a vperm.
As we've seen in numerous other places, the vperm instruction has a
big-endian bias, and this is fixed for little endian by complementing
the permute control vector and swapping the input operands.  In this
case the lvsl is providing the permute control vector.  Rather than
generating an lvsl and a complement operation, it is sufficient to
generate an lvsr instruction instead.  Thus for LE code generation we
will generate an lvsr rather than an lvsl, and swap the other input
arguments on the vperm.

The existing test/CodeGen/PowerPC/vec_misalign.ll is updated to test
the code generation for PPC64 and PPC64LE, in addition to the existing
PPC32/G5 testing.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@210493 91177308-0d34-0410-b5e6-96231b3b80d8
2014-06-09 22:00:52 +00:00
..
Analysis ScalarEvolution: Derive element size from the type of the loaded element 2014-06-08 19:21:20 +00:00
Assembler
Bindings [OCaml] Add more Llvm_target tests 2014-06-09 18:28:47 +00:00
Bitcode Add a new attribute called 'jumptable' that creates jump-instruction tables for functions marked with this attribute. 2014-06-05 19:29:43 +00:00
BugPoint
CodeGen [PPC64LE] Generate correct code for unaligned little-endian vector loads 2014-06-09 22:00:52 +00:00
DebugInfo Generate better location ranges for some register-described variables. 2014-06-09 21:53:47 +00:00
ExecutionEngine
Feature Allow aliases to be unnamed_addr. 2014-06-06 01:20:28 +00:00
FileCheck
Instrumentation Fix test in r210472. 2014-06-09 14:48:53 +00:00
Integer
JitListener
Linker Allow aliases to be unnamed_addr. 2014-06-06 01:20:28 +00:00
LTO
MC [mips] Fix a bug for NaCl target - Don't report the error when non-dangerous 2014-06-09 14:09:28 +00:00
Object [yaml2obj][obj2yaml] Support ELF symbol's visibility flags (default/hidden/protected). 2014-06-06 07:41:57 +00:00
Other
TableGen
tools
Transforms Look through addrspacecasts when turning ptr comparisons into 2014-06-09 19:20:29 +00:00
Unit
Verifier Add a new attribute called 'jumptable' that creates jump-instruction tables for functions marked with this attribute. 2014-06-05 19:29:43 +00:00
YAMLParser
.clang-format
CMakeLists.txt
lit.cfg
lit.site.cfg.in
Makefile lld test for configure & make 2014-06-06 09:06:25 +00:00
Makefile.tests
TestRunner.sh