llvm-6502/lib
Duncan Sands 8745b52853 LegalizeTypes support for legalizing the mask
operand of a VECTOR_SHUFFLE.  The mask is a
vector of constant integers.  The code in
LegalizeDAG doesn't bother to legalize the
mask, since it's basically just storage for
a bunch of constants, however LegalizeTypes
is more picky.  The problem is that there may
not exist any legal vector-of-integers type
with a legal element type, so it is impossible
to create a legal mask!  Unless of course you
cheat by creating a BUILD_VECTOR where the
operands have a different type to the element
type of the vector being built...  This is
pretty ugly but works - all relevant tests in
the testsuite pass, and produce the same
assembler with and without LegalizeTypes.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47670 91177308-0d34-0410-b5e6-96231b3b80d8
2008-02-27 13:03:44 +00:00
..
Analysis
Archive
AsmParser regenerate. 2008-02-26 23:19:08 +00:00
Bitcode Use SmallVector while constructing ReturnInst. 2008-02-26 19:38:17 +00:00
CodeGen LegalizeTypes support for legalizing the mask 2008-02-27 13:03:44 +00:00
Debugger
ExecutionEngine
Linker
Support
System Add path separator support, patch by Sam Bishop. 2008-02-27 06:17:10 +00:00
Target Final de-tabification. 2008-02-27 06:33:05 +00:00
Transforms Fix an issue where GVN had the sizes of the two memcpy's reverse, resulting 2008-02-26 23:06:17 +00:00
VMCore Add comment. 2008-02-27 01:20:54 +00:00
Makefile