diff options
author | Duncan Sands <baldrick@free.fr> | 2008-02-27 13:03:44 +0000 |
---|---|---|
committer | Duncan Sands <baldrick@free.fr> | 2008-02-27 13:03:44 +0000 |
commit | 8745b52853c9b1d1370005d7cb42587ebe2a7193 (patch) | |
tree | 34fed63d9a14c636f574d79d9a0e1318345de39d /Makefile.rules | |
parent | 4f069e6db1772a7e6cd8bfc360d819b56557badc (diff) | |
download | llvm-8745b52853c9b1d1370005d7cb42587ebe2a7193.tar.gz llvm-8745b52853c9b1d1370005d7cb42587ebe2a7193.tar.bz2 llvm-8745b52853c9b1d1370005d7cb42587ebe2a7193.tar.xz |
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
Diffstat (limited to 'Makefile.rules')
0 files changed, 0 insertions, 0 deletions