1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-23 03:02:36 +01:00
llvm-mirror/test
Hal Finkel b8fe2ab5cb PPC: Initial support for permutation-based unaligned Altivec loads
Altivec only directly supports aligned loads, but the loads have a strange
property: If given an unaligned address, they truncate the address to the next
lower aligned address, and load from there.  This property, along with an extra
load and some special-purpose permutation-control instructions that generate
the appropriate permutations from the original unaligned address, allow
efficient lowering of aligned loads. This code uses the trick explained in the
Apple Velocity Engine optimization overview document to prevent the needed
extra load from possibly causing a page fault if the original address happens
to be aligned.

As noted in the FIXMEs, there are several additional optimizations that can be
performed to reduce the cost of these loads even more. These will be
implemented in future commits.

llvm-svn: 182691
2013-05-24 23:00:14 +00:00
..
Analysis Add a new function attribute 'cold' to functions. 2013-05-24 12:26:52 +00:00
Archive
Assembler
Bindings/Ocaml
Bitcode
BugPoint
CodeGen PPC: Initial support for permutation-based unaligned Altivec loads 2013-05-24 23:00:14 +00:00
DebugInfo Solidify the assumption that a DW_TAG_subprogram's type is a DW_TAG_subroutine_type 2013-05-22 23:22:18 +00:00
ExecutionEngine Disable remote MCJIT on pre-v6 ARM 2013-05-20 07:46:06 +00:00
Feature Add a new function attribute 'cold' to functions. 2013-05-24 12:26:52 +00:00
FileCheck Add 'CHECK-DAG' support 2013-05-14 20:34:12 +00:00
Instrumentation [msan] A no-op implementation of VarArg handling. 2013-05-21 12:27:47 +00:00
Integer
JitListener
Linker
MC [SystemZ] Improve AsmParser handling of invalid instructions 2013-05-24 14:26:46 +00:00
Object Add MCSymbolizer for symbolic/annotated disassembly. 2013-05-24 00:39:57 +00:00
Other
TableGen
tools Use pointers to iterate over symbols. 2013-04-24 19:47:55 +00:00
Transforms [objc-arc] KnownSafe does not imply that it is safe to perform code motion across CFG edges since even if it is safe to remove RR pairs, we may still be able to move a retain/release into a loop. 2013-05-24 20:44:05 +00:00
Unit
Verifier
YAMLParser
CMakeLists.txt
lit.cfg AArch64: use MCJIT by default and enable related tests. 2013-05-06 16:51:08 +00:00
lit.site.cfg.in Allow host triple to be correctly overridden in CMake builds 2013-05-04 07:36:23 +00:00
Makefile add polly to check-all 2013-05-20 18:49:15 +00:00
Makefile.tests
TestRunner.sh