mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-01-27 14:34:58 +00:00
R600: Expand SUB for v2i32/v4i32
Patch by: Aaron Watry Reviewed-by: Tom Stellard <thomas.stellard@amd.com> Signed-off-by: Aaron Watry <awatry@gmail.com> NOTE: This is a candidate for the 3.3 branch. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@181579 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
6c40d40d70
commit
dde6836456
@ -54,6 +54,8 @@ R600TargetLowering::R600TargetLowering(TargetMachine &TM) :
|
||||
setOperationAction(ISD::SRL, MVT::v2i32, Expand);
|
||||
setOperationAction(ISD::SRA, MVT::v4i32, Expand);
|
||||
setOperationAction(ISD::SRA, MVT::v2i32, Expand);
|
||||
setOperationAction(ISD::SUB, MVT::v4i32, Expand);
|
||||
setOperationAction(ISD::SUB, MVT::v2i32, Expand);
|
||||
setOperationAction(ISD::UINT_TO_FP, MVT::v4i32, Expand);
|
||||
setOperationAction(ISD::UDIV, MVT::v4i32, Expand);
|
||||
setOperationAction(ISD::UREM, MVT::v4i32, Expand);
|
||||
|
15
test/CodeGen/R600/sub.ll
Normal file
15
test/CodeGen/R600/sub.ll
Normal file
@ -0,0 +1,15 @@
|
||||
;RUN: llc < %s -march=r600 -mcpu=redwood | FileCheck %s
|
||||
|
||||
;CHECK: SUB_INT T{{[0-9]+\.[XYZW], T[0-9]+\.[XYZW], T[0-9]+\.[XYZW]}}
|
||||
;CHECK: SUB_INT * T{{[0-9]+\.[XYZW], T[0-9]+\.[XYZW], T[0-9]+\.[XYZW]}}
|
||||
;CHECK: SUB_INT * T{{[0-9]+\.[XYZW], T[0-9]+\.[XYZW], T[0-9]+\.[XYZW]}}
|
||||
;CHECK: SUB_INT * T{{[0-9]+\.[XYZW], T[0-9]+\.[XYZW], T[0-9]+\.[XYZW]}}
|
||||
|
||||
define void @test(<4 x i32> addrspace(1)* %out, <4 x i32> addrspace(1)* %in) {
|
||||
%b_ptr = getelementptr <4 x i32> addrspace(1)* %in, i32 1
|
||||
%a = load <4 x i32> addrspace(1) * %in
|
||||
%b = load <4 x i32> addrspace(1) * %b_ptr
|
||||
%result = sub <4 x i32> %a, %b
|
||||
store <4 x i32> %result, <4 x i32> addrspace(1)* %out
|
||||
ret void
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user