R600: Add dag combine for copy of an illegal type.
authorMatt Arsenault <Matthew.Arsenault@amd.com>
Tue, 15 Jul 2014 02:06:31 +0000 (02:06 +0000)
committerMatt Arsenault <Matthew.Arsenault@amd.com>
Tue, 15 Jul 2014 02:06:31 +0000 (02:06 +0000)
commit5fbf09a69f2cecf52e294eb966dff236ec3828d4
tree9a03987318d96c103e577761e555d40eedc03fa4
parent832e3ffdb0a90f417606a62180d9b326b1004dbd
R600: Add dag combine for copy of an illegal type.

This helps avoid redundant instructions to unpack, and repack
the vectors. Ideally we could recognize that pattern and eliminate
it. Currently v4i8 and other small element type vectors are scalarized,
so this has the added bonus of avoiding that.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@213031 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Target/R600/AMDGPUISelLowering.cpp
lib/Target/R600/AMDGPUISelLowering.h
test/CodeGen/R600/copy-illegal-type.ll [new file with mode: 0644]
test/CodeGen/R600/indirect-private-64.ll
test/CodeGen/R600/load.ll