1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-22 04:22:57 +02:00
llvm-mirror/test
Elena Demikhovsky 832f074a32 Shuffle optimization for AVX/AVX2.
The current patch optimizes frequently used shuffle patterns and gives these instruction sequence reduction.
Before:
      vshufps $-35, %xmm1, %xmm0, %xmm2 ## xmm2 = xmm0[1,3],xmm1[1,3]
       vpermilps       $-40, %xmm2, %xmm2 ## xmm2 = xmm2[0,2,1,3]
       vextractf128    $1, %ymm1, %xmm1
       vextractf128    $1, %ymm0, %xmm0
       vshufps $-35, %xmm1, %xmm0, %xmm0 ## xmm0 = xmm0[1,3],xmm1[1,3]
       vpermilps       $-40, %xmm0, %xmm0 ## xmm0 = xmm0[0,2,1,3]
       vinsertf128     $1, %xmm0, %ymm2, %ymm0
After:
      vshufps $13, %ymm0, %ymm1, %ymm1 ## ymm1 = ymm1[1,3],ymm0[0,0],ymm1[5,7],ymm0[4,4]
      vshufps $13, %ymm0, %ymm0, %ymm0 ## ymm0 = ymm0[1,3,0,0,5,7,4,4]
      vunpcklps       %ymm1, %ymm0, %ymm0 ## ymm0 = ymm0[0],ymm1[0],ymm0[1],ymm1[1],ymm0[4],ymm1[4],ymm0[5],ymm1[5]

llvm-svn: 159188
2012-06-26 08:04:10 +00:00
..
Analysis SCEV: Handle a corner case reducing AddRecExpr * AddRecExpr 2012-05-30 03:35:20 +00:00
Archive
Assembler Extend the IL for selecting TLS models (PR9788) 2012-06-23 11:37:03 +00:00
Bindings/Ocaml
Bitcode Add AutoUpgrade support for the SSE4 ptest intrinsics. 2012-06-10 18:42:51 +00:00
BugPoint
CodeGen Shuffle optimization for AVX/AVX2. 2012-06-26 08:04:10 +00:00
DebugInfo Emit relocations for DW_AT_location entries on systems which need it. This is 2012-06-22 01:25:12 +00:00
ExecutionEngine Add Mips to the list of target architectures for the MCJIT tests. 2012-06-21 20:23:32 +00:00
Feature rdar://11542750 - llvm.trap should be marked no return. 2012-05-27 23:20:41 +00:00
Instrumentation [asan] instrument cmpxchg and atomicrmw 2012-05-30 09:04:06 +00:00
Integer remove two (useless) tests that use incorrect intrinsic prototypes, detected by the new intrinsic verifier. 2012-05-27 19:31:00 +00:00
Linker Remove llvm-ld and llvm-stub (which is only used by llvm-ld). 2012-04-19 19:27:54 +00:00
MC Remove some duplicate instructions that exist only to given different mnemonics for the assembler. Use InstAlias instead. 2012-06-26 04:12:49 +00:00
Object Add relocation types for Hexagon processor; patch by Sidney Manning <sidneym@codeaurora.org> 2012-06-23 14:46:18 +00:00
Other Teach the 'opt' tool about '-Os' and '-Oz', corresponding to the Clang 2012-05-16 08:32:49 +00:00
Scripts
TableGen Add support for range expressions in TableGen foreach loops. 2012-05-24 22:17:39 +00:00
Transforms Enable the new LoopInfo algorithm by default. 2012-06-26 04:11:38 +00:00
Unit
Verifier revert r158660, since Chris has some issues with this patch (namely using code to reprent information only used by the compiler) 2012-06-18 23:34:26 +00:00
YAMLParser
CMakeLists.txt - Added ExecutionEngine/MCJIT tests 2012-05-17 21:07:47 +00:00
lit.cfg Remove llvm-ld and llvm-stub (which is only used by llvm-ld). 2012-04-19 19:27:54 +00:00
lit.site.cfg.in - Added ExecutionEngine/MCJIT tests 2012-05-17 21:07:47 +00:00
Makefile - Added ExecutionEngine/MCJIT tests 2012-05-17 21:07:47 +00:00
Makefile.tests
site.exp.in
TestRunner.sh