summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom Stellard <thomas.stellard@amd.com>2012-03-05 12:38:19 -0500
committerTom Stellard <thomas.stellard@amd.com>2012-03-05 12:38:19 -0500
commit749ee6695c8e29fa4c5c91c53626533e0ff69dee (patch)
treeddaec02330cb23d763b8464e18496d3250568881
parent7253d3eb8efcef4c7fd2f760958494f44ac544a0 (diff)
r600/llvm: Lower USHR_i32 to LSHR
-rw-r--r--src/gallium/drivers/radeon/AMDGPUGenInstrEnums.pl3
-rw-r--r--src/gallium/drivers/radeon/R600Instructions.td5
2 files changed, 5 insertions, 3 deletions
diff --git a/src/gallium/drivers/radeon/AMDGPUGenInstrEnums.pl b/src/gallium/drivers/radeon/AMDGPUGenInstrEnums.pl
index 54a4116e0f4..720921bf4e3 100644
--- a/src/gallium/drivers/radeon/AMDGPUGenInstrEnums.pl
+++ b/src/gallium/drivers/radeon/AMDGPUGenInstrEnums.pl
@@ -51,7 +51,8 @@ my $FILE_TYPE = $ARGV[0];
open AMDIL, '<', 'AMDILInstructions.td';
-my @INST_ENUMS = ('NONE', 'FEQ', 'FGE', 'FLT', 'FNE', 'MOVE_f32', 'MOVE_i32', 'FTOI', 'ITOF', 'CMOVLOG_f32');
+my @INST_ENUMS = ('NONE', 'FEQ', 'FGE', 'FLT', 'FNE', 'MOVE_f32', 'MOVE_i32', 'FTOI', 'ITOF', 'CMOVLOG_f32',
+ 'USHR_i32');
while (<AMDIL>) {
if ($_ =~ /defm\s+([A-Z_]+)\s+:\s+([A-Za-z]+)</) {
diff --git a/src/gallium/drivers/radeon/R600Instructions.td b/src/gallium/drivers/radeon/R600Instructions.td
index 563d6a85bb5..0856cc34e0d 100644
--- a/src/gallium/drivers/radeon/R600Instructions.td
+++ b/src/gallium/drivers/radeon/R600Instructions.td
@@ -472,8 +472,9 @@ class LOG_IEEE_Common <bits<32> inst> : R600_1OP <
class LSHR_Common <bits<32> inst> : R600_2OP <
inst, "LSHR $dst, $src0, $src1",
- []
->;
+ [] >{
+ let AMDILOp = AMDILInst.USHR_i32;
+}
class RECIP_CLAMPED_Common <bits<32> inst> : R600_1OP <
inst, "RECIP_CLAMPED",