Skip to content

Commit 20eed3c

Browse files
committed
[AMDGPU] Add unfold test.
1 parent 7da80ba commit 20eed3c

File tree

3 files changed

+765
-37
lines changed

3 files changed

+765
-37
lines changed

llvm/lib/Target/AMDGPU/SIISelLowering.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17565,7 +17565,7 @@ SITargetLowering::lowerIdempotentRMWIntoFencedLoad(AtomicRMWInst *AI) const {
1756517565
bool SITargetLowering::hasAndNot(SDValue Op) const {
1756617566
// Return false if the operation is divergent, as AND-NOT is a scalar-only
1756717567
// instruction.
17568-
if (Op->isDivergent() || !Op->isMachineOpcode())
17568+
if (Op->isDivergent())
1756917569
return false;
1757017570

1757117571
EVT VT = Op.getValueType();

llvm/test/CodeGen/AMDGPU/andorn2.ll

Lines changed: 0 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -25,24 +25,6 @@ entry:
2525
ret void
2626
}
2727

28-
; GCN-LABEL: {{^}}scalar_andn2_i32_one_sgpr
29-
; GCN: s_andn2_b32
30-
define i32 @scalar_andn2_i32_one_sgpr(i32 inreg %a, i32 inreg %b) {
31-
entry:
32-
%nb = xor i32 %b, -1
33-
%and = and i32 %a, %nb
34-
ret i32 %and
35-
}
36-
37-
; GCN-LABEL: {{^}}scalar_andn2_i64_one_sgpr
38-
; GCN: s_andn2_b64
39-
define i64 @scalar_andn2_i64_one_sgpr(i64 inreg %a, i64 inreg %b) {
40-
entry:
41-
%nb = xor i64 %b, -1
42-
%and = and i64 %a, %nb
43-
ret i64 %and
44-
}
45-
4628
; GCN-LABEL: {{^}}scalar_orn2_i32_one_use
4729
; GCN: s_orn2_b32
4830
define amdgpu_kernel void @scalar_orn2_i32_one_use(
@@ -65,24 +47,6 @@ entry:
6547
ret void
6648
}
6749

68-
; GCN-LABEL: {{^}}scalar_orn2_i32_one_use_sgpr
69-
; GCN: s_orn2_b32
70-
define i32 @scalar_orn2_i32_one_use_sgpr(i32 inreg %a, i32 inreg %b) {
71-
entry:
72-
%nb = xor i32 %b, -1
73-
%or = or i32 %a, %nb
74-
ret i32 %or;
75-
}
76-
77-
; GCN-LABEL: {{^}}scalar_orn2_i64_one_use_sgpr
78-
; GCN: s_orn2_b64
79-
define i64 @scalar_orn2_i64_one_use_sgpr(i64 inreg %a, i64 inreg %b) {
80-
entry:
81-
%nb = xor i64 %b, -1
82-
%or = or i64 %a, %nb
83-
ret i64 %or;
84-
}
85-
8650
; GCN-LABEL: {{^}}vector_andn2_i32_s_v_one_use
8751
; GCN: v_not_b32
8852
; GCN: v_and_b32

0 commit comments

Comments
 (0)