1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-26 06:22:56 +02:00
llvm-mirror/test/CodeGen
Bill Schmidt d115a77d30 [PPC64] Add vector pack/unpack support from ISA 2.07
This patch adds support for the following new instructions in the
Power ISA 2.07:

  vpksdss
  vpksdus
  vpkudus
  vpkudum
  vupkhsw
  vupklsw

These instructions are available through the vec_packs, vec_packsu,
vec_unpackh, and vec_unpackl built-in interfaces.  These are
lane-sensitive instructions, so the built-ins have different
implementations for big- and little-endian, and the instructions must
be marked as killing the vector swap optimization for now.

The first three instructions perform saturating pack operations.  The
fourth performs a modulo pack operation, which means it can be
represented with a vector shuffle, and conversely the appropriate
vector shuffles may cause this instruction to be generated.  The other
instructions are only generated via built-in support for now.

Appropriate tests have been added.

There is a companion patch to clang for the rest of this support.

llvm-svn: 237499
2015-05-16 01:02:12 +00:00
..
AArch64 Mark SMIN/SMAX/UMIN/UMAX nodes as legal and add patterns for them. 2015-05-15 16:15:57 +00:00
ARM [CodeGen] Use standard -not gnueabi- naming for f16 libcalls on Darwin. 2015-05-14 01:00:51 +00:00
BPF
CPP
Generic [Statepoints] Support for "patchable" statepoints. 2015-05-12 23:52:24 +00:00
Hexagon [Hexagon] Generate hardware loop for a vectorized loop 2015-05-14 20:36:19 +00:00
Inputs IR: Give 'DI' prefix to debug info metadata 2015-04-29 16:38:44 +00:00
Mips [mips] Do not place users of $ra in the delay slot of call instructions. 2015-05-14 13:17:56 +00:00
MSP430
NVPTX [NVPTX] Handle addrspacecast constant expressions in aggregate initializers 2015-04-28 17:18:30 +00:00
PowerPC [PPC64] Add vector pack/unpack support from ISA 2.07 2015-05-16 01:02:12 +00:00
R600 R600/SI: add pass to mark CF live ranges as non-spillable 2015-05-12 17:13:02 +00:00
SPARC
SystemZ [DAGCombiner] Account for getVectorIdxTy() when narrowing vector load 2015-05-05 19:34:10 +00:00
Thumb IR: Give 'DI' prefix to debug info metadata 2015-04-29 16:38:44 +00:00
Thumb2 Thumb2SizeReduction: Check the correct set of registers for LDMIA. 2015-05-05 20:07:10 +00:00
WinEH Changed renaming of local symbols by inserting a dot vefore the numeric suffix. 2015-05-12 16:47:30 +00:00
X86 AVX-512: Added i1 type handling for calling conventions. 2015-05-14 09:04:45 +00:00
XCore IR: Give 'DI' prefix to debug info metadata 2015-04-29 16:38:44 +00:00