Skip to content

Commit bb92714

Browse files
committed
[AMDGPU] Fix wrong reverse operations for v_cmpx_le_u32
Fixes SWDEV-538616.
1 parent 0d1392e commit bb92714

File tree

2 files changed

+14
-1
lines changed

2 files changed

+14
-1
lines changed

llvm/lib/Target/AMDGPU/VOPCInstructions.td

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -846,7 +846,7 @@ defm V_CMP_T_U32 : VOPC_I32 <"v_cmp_t_u32">;
846846
defm V_CMPX_F_U32 : VOPCX_I32 <"v_cmpx_f_u32">;
847847
defm V_CMPX_LT_U32 : VOPCX_I32 <"v_cmpx_lt_u32", "v_cmpx_gt_u32">;
848848
defm V_CMPX_EQ_U32 : VOPCX_I32 <"v_cmpx_eq_u32">;
849-
defm V_CMPX_LE_U32 : VOPCX_I32 <"v_cmpx_le_u32", "v_cmpx_le_u32">;
849+
defm V_CMPX_LE_U32 : VOPCX_I32 <"v_cmpx_le_u32", "v_cmpx_ge_u32">;
850850
defm V_CMPX_GT_U32 : VOPCX_I32 <"v_cmpx_gt_u32">;
851851
defm V_CMPX_NE_U32 : VOPCX_I32 <"v_cmpx_ne_u32">;
852852
defm V_CMPX_GE_U32 : VOPCX_I32 <"v_cmpx_ge_u32">;

llvm/test/CodeGen/AMDGPU/cmp_shrink.mir

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,3 +10,16 @@ body: |
1010
; GCN: S_CMP_LT_I32 65, 1, implicit-def $scc
1111
S_CMP_GT_I32 1, 65, implicit-def $scc
1212
...
13+
14+
---
15+
name: shrink_icmp
16+
body: |
17+
bb.0:
18+
; GCN-LABEL: name: shrink_icmp
19+
; GCN: %op0:sgpr_32 = COPY $sgpr0
20+
; GCN-NEXT: %cond:sreg_64 = V_CMP_GE_U32_e64 5, %op0, implicit $exec
21+
; GCN-NEXT: S_NOP 0
22+
%op0:sgpr_32 = COPY $sgpr0
23+
%cond:sreg_64 = V_CMP_LE_U32_e64 %op0, 5, implicit $exec
24+
S_NOP 0
25+
...

0 commit comments

Comments
 (0)