From 5177e9551cd5a37e17d3522457b49969c5e3899a Mon Sep 17 00:00:00 2001 From: Matt Arsenault Date: Wed, 18 Feb 2015 02:15:27 +0000 Subject: [PATCH] R600/SI: Fix not setting clamp / omod for v_cndmask_b32_e64 Rename the multiclass since it now applies to the output modifiers as well. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@229610 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/Target/R600/SIInstrInfo.td | 6 ++++-- lib/Target/R600/SIInstructions.td | 2 +- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/lib/Target/R600/SIInstrInfo.td b/lib/Target/R600/SIInstrInfo.td index 3443d4ba9ee..3732b8e3664 100644 --- a/lib/Target/R600/SIInstrInfo.td +++ b/lib/Target/R600/SIInstrInfo.td @@ -910,14 +910,16 @@ multiclass VOP3_m pattern, } // VOP3_m without source modifiers -multiclass VOP3_m_nosrcmod pattern, +multiclass VOP3_m_nomods pattern, string opName, int NumSrcArgs, bit HasMods = 1> { def "" : VOP3_Pseudo ; let src0_modifiers = 0, src1_modifiers = 0, - src2_modifiers = 0 in { + src2_modifiers = 0, + clamp = 0, + omod = 0 in { def _si : VOP3_Real_si ; def _vi : VOP3_Real_vi ; } diff --git a/lib/Target/R600/SIInstructions.td b/lib/Target/R600/SIInstructions.td index e14c52078b6..77a7b54b1c1 100644 --- a/lib/Target/R600/SIInstructions.td +++ b/lib/Target/R600/SIInstructions.td @@ -1402,7 +1402,7 @@ defm V_INTERP_MOV_F32 : VINTRP_m < // VOP2 Instructions //===----------------------------------------------------------------------===// -defm V_CNDMASK_B32_e64 : VOP3_m_nosrcmod , (outs VGPR_32:$dst), +defm V_CNDMASK_B32_e64 : VOP3_m_nomods , (outs VGPR_32:$dst), (ins VSrc_32:$src0, VSrc_32:$src1, SSrc_64:$src2), "v_cndmask_b32_e64 $dst, $src0, $src1, $src2", [(set i32:$dst, (select i1:$src2, i32:$src1, i32:$src0))], -- 2.34.1