From: Tom Stellard Date: Thu, 17 May 2012 15:46:19 +0000 (-0400) Subject: radeon/llvm: Remove sub patterns from AMDILInstrPatterns.td X-Git-Tag: 062012170305~235 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=89b945591bb5d434518cea481209b1ea7a435861;p=profile%2Fivi%2Fmesa.git radeon/llvm: Remove sub patterns from AMDILInstrPatterns.td --- diff --git a/src/gallium/drivers/radeon/AMDILInstrPatterns.td b/src/gallium/drivers/radeon/AMDILInstrPatterns.td index 51181b2..0314598 100644 --- a/src/gallium/drivers/radeon/AMDILInstrPatterns.td +++ b/src/gallium/drivers/radeon/AMDILInstrPatterns.td @@ -30,26 +30,6 @@ def ULTOF : Pat<(f32 (uint_to_fp GPRI64:$src)), def LTOF : Pat<(f32 (sint_to_fp GPRI64:$src)), (ITOF (LLO GPRI64:$src))>; -// integer subtraction -// a - b ==> a + (-b) -def SUB_i8 : Pat<(sub GPRI8:$src0, GPRI8:$src1), - (ADD_i8 GPRI8:$src0, (NEGATE_i8 GPRI8:$src1))>; -def SUB_v2i8 : Pat<(sub GPRV2I8:$src0, GPRV2I8:$src1), - (ADD_v2i8 GPRV2I8:$src0, (NEGATE_v2i8 GPRV2I8:$src1))>; -def SUB_v4i8 : Pat<(sub GPRV4I8:$src0, GPRV4I8:$src1), - (ADD_v4i8 GPRV4I8:$src0, (NEGATE_v4i8 GPRV4I8:$src1))>; -def SUB_i16 : Pat<(sub GPRI16:$src0, GPRI16:$src1), - (ADD_i16 GPRI16:$src0, (NEGATE_i16 GPRI16:$src1))>; -def SUB_v2i16 : Pat<(sub GPRV2I16:$src0, GPRV2I16:$src1), - (ADD_v2i16 GPRV2I16:$src0, (NEGATE_v2i16 GPRV2I16:$src1))>; -def SUB_v4i16 : Pat<(sub GPRV4I16:$src0, GPRV4I16:$src1), - (ADD_v4i16 GPRV4I16:$src0, (NEGATE_v4i16 GPRV4I16:$src1))>; -def SUB_i32 : Pat<(sub GPRI32:$src0, GPRI32:$src1), - (ADD_i32 GPRI32:$src0, (NEGATE_i32 GPRI32:$src1))>; -def SUB_v2i32 : Pat<(sub GPRV2I32:$src0, GPRV2I32:$src1), - (ADD_v2i32 GPRV2I32:$src0, (NEGATE_v2i32 GPRV2I32:$src1))>; -def SUB_v4i32 : Pat<(sub GPRV4I32:$src0, GPRV4I32:$src1), - (ADD_v4i32 GPRV4I32:$src0, (NEGATE_v4i32 GPRV4I32:$src1))>; // LLVM isn't lowering this correctly, so writing a pattern that // matches it isntead. def : Pat<(build_vector (i32 imm:$src)), diff --git a/src/gallium/drivers/radeon/R600Instructions.td b/src/gallium/drivers/radeon/R600Instructions.td index ca2af73..c3643b6 100644 --- a/src/gallium/drivers/radeon/R600Instructions.td +++ b/src/gallium/drivers/radeon/R600Instructions.td @@ -364,7 +364,7 @@ def ADD_INT : R600_2OP < def SUB_INT : R600_2OP < 0x35, "SUB_INT", - [] + [(set R600_Reg32:$dst, (sub R600_Reg32:$src0, R600_Reg32:$src1))] >; def MAX_INT : R600_2OP <