diff options
| author | Matt Arsenault <Matthew.Arsenault@amd.com> | 2015-02-18 02:15:27 +0000 |
|---|---|---|
| committer | Matt Arsenault <Matthew.Arsenault@amd.com> | 2015-02-18 02:15:27 +0000 |
| commit | 65fa1c425d7104909ad18b34086e259e789de441 (patch) | |
| tree | 825caae57d23ee6dc420927c65afd35971990464 /llvm/lib | |
| parent | 284d7dfb531e13ed30c1ed567cb555fd5a362111 (diff) | |
| download | bcm5719-llvm-65fa1c425d7104909ad18b34086e259e789de441.tar.gz bcm5719-llvm-65fa1c425d7104909ad18b34086e259e789de441.zip | |
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.
llvm-svn: 229610
Diffstat (limited to 'llvm/lib')
| -rw-r--r-- | llvm/lib/Target/R600/SIInstrInfo.td | 6 | ||||
| -rw-r--r-- | llvm/lib/Target/R600/SIInstructions.td | 2 |
2 files changed, 5 insertions, 3 deletions
diff --git a/llvm/lib/Target/R600/SIInstrInfo.td b/llvm/lib/Target/R600/SIInstrInfo.td index 3443d4ba9ee..3732b8e3664 100644 --- a/llvm/lib/Target/R600/SIInstrInfo.td +++ b/llvm/lib/Target/R600/SIInstrInfo.td @@ -910,14 +910,16 @@ multiclass VOP3_m <vop op, dag outs, dag ins, string asm, list<dag> pattern, } // VOP3_m without source modifiers -multiclass VOP3_m_nosrcmod <vop op, dag outs, dag ins, string asm, list<dag> pattern, +multiclass VOP3_m_nomods <vop op, dag outs, dag ins, string asm, list<dag> pattern, string opName, int NumSrcArgs, bit HasMods = 1> { def "" : VOP3_Pseudo <outs, ins, pattern, opName>; let src0_modifiers = 0, src1_modifiers = 0, - src2_modifiers = 0 in { + src2_modifiers = 0, + clamp = 0, + omod = 0 in { def _si : VOP3_Real_si <op.SI3, outs, ins, asm, opName>; def _vi : VOP3_Real_vi <op.VI3, outs, ins, asm, opName>; } diff --git a/llvm/lib/Target/R600/SIInstructions.td b/llvm/lib/Target/R600/SIInstructions.td index e14c52078b6..77a7b54b1c1 100644 --- a/llvm/lib/Target/R600/SIInstructions.td +++ b/llvm/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 <vop3<0x100>, (outs VGPR_32:$dst), +defm V_CNDMASK_B32_e64 : VOP3_m_nomods <vop3<0x100>, (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))], |

