[llvm] [AMDGPU] Don't rely on !eq comparing int with bits<5>. NFC. (PR #113279)
via llvm-commits
llvm-commits at lists.llvm.org
Tue Oct 22 01:29:29 PDT 2024
llvmbot wrote:
<!--LLVM PR SUMMARY COMMENT-->
@llvm/pr-subscribers-backend-amdgpu
Author: Jay Foad (jayfoad)
<details>
<summary>Changes</summary>
Tweak VOP2eInst_Base so that it does not rely on !eq comparing an int
value (-1) with a bits<5> value. This is to avoid a change in behaviour
when #<!-- -->112904 lands, which is a bug fix which has the side effect of
implicitly casting template arguments to the declared template parameter
type.
---
Full diff: https://github.com/llvm/llvm-project/pull/113279.diff
1 Files Affected:
- (modified) llvm/lib/Target/AMDGPU/VOP2Instructions.td (+2-2)
``````````diff
diff --git a/llvm/lib/Target/AMDGPU/VOP2Instructions.td b/llvm/lib/Target/AMDGPU/VOP2Instructions.td
index e83ea57c61df13..fbde3bb7d14111 100644
--- a/llvm/lib/Target/AMDGPU/VOP2Instructions.td
+++ b/llvm/lib/Target/AMDGPU/VOP2Instructions.td
@@ -287,7 +287,7 @@ multiclass
let SchedRW = [Write32Bit] in {
let Uses = !if(useSGPRInput, [VCC, EXEC], [EXEC]) in {
- if !eq(VOPDOp, -1) then
+ if !empty(VOPDName) then
def _e32 : VOP2_Pseudo <opName, P>,
Commutable_REV<revOp#"_e32", !eq(revOp, opName)>;
else
@@ -319,7 +319,7 @@ multiclass
multiclass
VOP2eInst<string opName, VOPProfile P, SDPatternOperator node = null_frag,
string revOp = opName, bit useSGPRInput = !eq(P.NumSrcArgs, 3)>
- : VOP2eInst_Base<opName, P, -1, "", node, revOp, useSGPRInput>;
+ : VOP2eInst_Base<opName, P, 0, "", node, revOp, useSGPRInput>;
multiclass
VOP2eInst_VOPD<string opName, VOPProfile P, bits<5> VOPDOp, string VOPDName,
``````````
</details>
https://github.com/llvm/llvm-project/pull/113279
More information about the llvm-commits
mailing list