1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-23 11:13:28 +01:00
llvm-mirror/test/MC
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
ARM [DWARF] Add CIE header fields address_size and segment_size when generating dwarf-4 2015-05-12 15:25:08 +00:00
AsmParser
COFF Don't omit the constant when computing a cross-section relative relocation. 2015-05-14 01:10:41 +00:00
Disassembler [PPC64] Add vector pack/unpack support from ISA 2.07 2015-05-16 01:02:12 +00:00
ELF [DWARF] Add CIE header fields address_size and segment_size when generating dwarf-4 2015-05-12 15:25:08 +00:00
Hexagon
MachO
Markup
Mips [mips] [IAS] Fix expansion of negative 32-bit immediates for LI/DLI. 2015-05-15 09:42:11 +00:00
PowerPC [PPC64] Add vector pack/unpack support from ISA 2.07 2015-05-16 01:02:12 +00:00
R600
Sparc
SystemZ
X86 AVX-512: fixed a bug in encoding of VPSRAQ instrcution, 2015-05-13 07:35:05 +00:00