R600: Expand sign extension of vectors.
authorMatt Arsenault <Matthew.Arsenault@amd.com>
Wed, 16 Apr 2014 01:41:30 +0000 (01:41 +0000)
committerMatt Arsenault <Matthew.Arsenault@amd.com>
Wed, 16 Apr 2014 01:41:30 +0000 (01:41 +0000)
commitff8d7fb136597677ffa6060f45666a024704686e
treef31ac572a9f8fdaa25422ce25bac532a02e61a0d
parentac261d95852fe5fbe95707206eb702de70bc88e0
R600: Expand sign extension of vectors.

Setting vector types to expand will result in scalarization on pre SI hw,
as those gpus don't have vector shifts either.
Expand also i32 vectors, this helps llvm make the correct decision
about scalarizing the vector ops.

v2: move setOperation() calls to R600ISelLowering.cpp.
    cleanup the SI code to make it obvious that this patch does is nop for SI

Patch by: Jan Vesely <jan.vesely@rutgers.edu>

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@206348 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Target/R600/AMDGPUISelLowering.cpp
lib/Target/R600/EvergreenInstructions.td
lib/Target/R600/R600ISelLowering.cpp
lib/Target/R600/SIISelLowering.cpp