1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-23 13:02:52 +02:00
llvm-mirror/test
Andrea Di Biagio 171a02e1ca [X86][AVX] Fix wrong lowering of VPERM2X128 nodes
There were cases where the backend computed a wrong permute mask for a VPERM2X128 node.

Example:
\code
define <8 x float> @foo(<8 x float> %a, <8 x float> %b) {
  %shuffle = shufflevector <8 x float> %a, <8 x float> %b, <8 x i32> <i32 undef, i32 undef, i32 6, i32 7, i32 undef, i32 undef, i32 6, i32 7>
  ret <8 x float> %shuffle
}
\code end

Before this patch, llc (with -mattr=+avx) emitted the following vperm2f128:
  vperm2f128 $0, %ymm0, %ymm0, %ymm0  # ymm0 = ymm0[0,1,0,1]

With this patch, llc emits a vperm2f128 with a correct permute mask:
  vperm2f128 $17, %ymm0, %ymm0, %ymm0  # ymm0 = ymm0[2,3,2,3]

Differential Revision: http://reviews.llvm.org/D8119

llvm-svn: 231601
2015-03-08 16:28:47 +00:00
..
Analysis [SCEV] make SCEV smarter about proving no-wrap. 2015-03-04 22:24:17 +00:00
Assembler DebugInfo: Move new hierarchy into place 2015-03-03 17:24:31 +00:00
Bindings DebugInfo: Move new hierarchy into place 2015-03-03 17:24:31 +00:00
Bitcode Make DataLayout Non-Optional in the Module 2015-03-04 18:43:29 +00:00
BugPoint DebugInfo: Move new hierarchy into place 2015-03-03 17:24:31 +00:00
CodeGen [X86][AVX] Fix wrong lowering of VPERM2X128 nodes 2015-03-08 16:28:47 +00:00
DebugInfo Use the existing begin and end symbol for debug info. 2015-03-05 02:05:42 +00:00
ExecutionEngine ExecutionEngine: Preliminary support for dynamically loadable coff objects 2015-03-07 20:21:27 +00:00
Feature DebugInfo: Move new hierarchy into place 2015-03-03 17:24:31 +00:00
FileCheck FileCheck: Add CHECK-SAME 2015-02-26 04:53:00 +00:00
Instrumentation [sanitizer] add nosanitize metadata to more coverage instrumentation instructions 2015-03-05 01:20:05 +00:00
Integer [opaque pointer type] Add textual IR support for explicit type parameter to load instruction 2015-02-27 21:17:42 +00:00
JitListener DebugInfo: Move new hierarchy into place 2015-03-03 17:24:31 +00:00
Linker Remember to move a type to the correct set when setting the body. 2015-03-06 00:50:21 +00:00
LTO [opaque pointer type] Add textual IR support for explicit type parameter to load instruction 2015-02-27 21:17:42 +00:00
MC [AsmPrinter][TLOF] Remove AArch64 test to appease buildbots 2015-03-06 19:42:18 +00:00
Object Make llvm/test/Object/archive-format.test CRLF-tolerant. 2015-03-03 15:54:48 +00:00
Other Make DataLayout Non-Optional in the Module 2015-03-04 18:43:29 +00:00
SymbolRewriter
TableGen
tools [dsymutil] Apply relocations to DIE data before cloning. 2015-03-07 01:25:09 +00:00
Transforms Do not restrict interleaved unrolling to small loops, depending on the target. 2015-03-06 23:12:04 +00:00
Unit
Verifier Replace llvm.frameallocate with llvm.frameescape 2015-03-05 18:26:34 +00:00
YAMLParser
.clang-format
CMakeLists.txt Back out two accidental changes that snuck in with r229245. Sorry these 2015-02-14 09:05:58 +00:00
lit.cfg Change SystemZ large tests to use the existing long_tests property 2015-03-02 19:34:11 +00:00
lit.site.cfg.in Remove log statements from config scripts. 2015-02-22 07:31:42 +00:00
Makefile Attempt to fix the builders. 2015-02-22 07:01:41 +00:00
Makefile.tests
TestRunner.sh