llvm-project/llvm/lib
Bill Schmidt f910a0650e [PPC64LE] Recognize shufflevector patterns for little endian
Various masks on shufflevector instructions are recognizable as
specific PowerPC instructions (vector pack, vector merge, etc.).
There is existing code in PPCISelLowering.cpp to recognize the correct
patterns for big endian code.  The masks for these instructions are
different for little endian code due to the big-endian numbering
employed by these instructions.  This patch adds the recognition code
for little endian.

I've added a new test case test/CodeGen/PowerPC/vec_shuffle_le.ll for
this.  The existing recognizer test (vec_shuffle.ll) is unnecessarily
verbose and difficult to read, so I felt it was better to add a new
test rather than modify the old one.

llvm-svn: 210536
2014-06-10 14:35:01 +00:00
..
Analysis Removing an "if (!this)" check from two print methods. The condition will 2014-06-09 22:53:16 +00:00
AsmParser Allow aliases to be unnamed_addr. 2014-06-06 01:20:28 +00:00
Bitcode Allow aliases to be unnamed_addr. 2014-06-06 01:20:28 +00:00
CodeGen Removing an "if (!this)" check from two print methods. The condition will 2014-06-09 22:53:16 +00:00
DebugInfo [modules] Add module maps for LLVM. These are not quite ready for prime-time 2014-05-21 02:46:14 +00:00
ExecutionEngine Add a Constant version of stripPointerCasts. 2014-06-04 19:01:48 +00:00
IR Reorder Value and User fields to save 8 bytes of padding on 64-bit 2014-06-09 23:32:20 +00:00
IRReader [C++11] More 'nullptr' conversion. In some cases just using a boolean check instead of comparing to nullptr. 2014-04-15 06:32:26 +00:00
LTO Build fix: remove initializeJumpInstrTablesPass() call from LTO 2014-06-07 20:39:53 +00:00
LineEditor [CMake] Use LINK_LIBS instead of target_link_libraries(). 2014-02-26 06:41:29 +00:00
Linker Allow aliases to be unnamed_addr. 2014-06-06 01:20:28 +00:00
MC Fix gcc warning (enumeral and non-enumeral type in conditional expression) 2014-06-09 07:35:07 +00:00
Object [yaml2obj][obj2yaml] Support ELF symbol's visibility flags (default/hidden/protected). 2014-06-06 07:41:57 +00:00
Option Options: Use erase_if to remove Args from the list. 2014-05-18 15:14:13 +00:00
ProfileData Use an enum class. 2014-06-03 05:12:33 +00:00
Support APFloat: x - NaN needs to flip the signbit of NaN when x is a number. 2014-06-08 16:53:31 +00:00
TableGen Anonymous definitions in foreach blocks triggered a 'def already exists' 2014-06-10 12:41:14 +00:00
Target [PPC64LE] Recognize shufflevector patterns for little endian 2014-06-10 14:35:01 +00:00
Transforms Removing an "if (!this)" check from two print methods. The condition will 2014-06-09 22:53:16 +00:00
CMakeLists.txt ProfileData: Introduce the InstrProfReader interface and a text reader 2014-03-21 17:24:48 +00:00
LLVMBuild.txt ProfileData: Introduce the InstrProfReader interface and a text reader 2014-03-21 17:24:48 +00:00
Makefile ProfileData: Introduce the InstrProfReader interface and a text reader 2014-03-21 17:24:48 +00:00