You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
; CHECK-NEXT: call void @llvm.masked.store.v4f32.p0(<4 x float> [[TMP4]], ptr [[TMP1:%.*]], i32 1, <4 x i1> splat (i1 true))
43
43
; CHECK-NEXT: ret <4 x float> [[TMP4]]
44
44
;
45
-
%6 = call <4 x i1> @llvm.get.active.lane.mask.v4i1.i32(i320, i324)
46
-
%7 = call <4 x float> @llvm.masked.load.v4f32.p0(ptr%0, i321, <4 x i1> %6, <4 x float> zeroinitializer)
47
-
callvoid@llvm.masked.store.v4f32.p0(<4 x float> %7, ptr%1, i321, <4 x i1> %6)
48
-
%8 = call <4 x float> @llvm.masked.load.v4f32.p0(ptr%1, i321, <4 x i1> %6, <4 x float> zeroinitializer)
49
-
ret <4 x float> %8
45
+
%mask = call <4 x i1> @llvm.get.active.lane.mask.v4i1.i32(i320, i324)
46
+
%load1 = call <4 x float> @llvm.masked.load.v4f32.p0(ptr%0, i321, <4 x i1> %mask, <4 x float> zeroinitializer)
47
+
callvoid@llvm.masked.store.v4f32.p0(<4 x float> %load1, ptr%1, i321, <4 x i1> %mask)
48
+
%load2 = call <4 x float> @llvm.masked.load.v4f32.p0(ptr%1, i321, <4 x i1> %mask, <4 x float> zeroinitializer)
49
+
ret <4 x float> %load2
50
50
}
51
51
52
52
define <4 x float> @forward_binop_splat_i1_mask(ptr%0, ptr%1) {
@@ -96,11 +96,11 @@ define <vscale x 4 x float> @forward_masked_load_scalable(ptr %0, ptr %1, <vscal
96
96
; CHECK-NEXT: call void @llvm.masked.store.nxv4f32.p0(<vscale x 4 x float> [[TMP4]], ptr [[TMP1:%.*]], i32 1, <vscale x 4 x i1> [[TMP3]])
97
97
; CHECK-NEXT: ret <vscale x 4 x float> [[TMP4]]
98
98
;
99
-
%6 = call <vscale x 4 x i1> @llvm.get.active.lane.mask.nxv4i1.i32(i320, i324)
100
-
%7 = call <vscale x 4 x float> @llvm.masked.load.nxv4f32.p0(ptr%0, i321, <vscale x 4 x i1> %6, <vscale x 4 x float> %passthrough)
101
-
callvoid@llvm.masked.store.nxv4f32.p0(<vscale x 4 x float> %7, ptr%1, i321, <vscale x 4 x i1> %6)
102
-
%8 = call <vscale x 4 x float> @llvm.masked.load.nxv4f32.p0(ptr%1, i321, <vscale x 4 x i1> %6, <vscale x 4 x float> %passthrough)
103
-
ret <vscale x 4 x float> %8
99
+
%mask = call <vscale x 4 x i1> @llvm.get.active.lane.mask.nxv4i1.i32(i320, i324)
100
+
%load1 = call <vscale x 4 x float> @llvm.masked.load.nxv4f32.p0(ptr%0, i321, <vscale x 4 x i1> %mask, <vscale x 4 x float> %passthrough)
101
+
callvoid@llvm.masked.store.nxv4f32.p0(<vscale x 4 x float> %load1, ptr%1, i321, <vscale x 4 x i1> %mask)
102
+
%load2 = call <vscale x 4 x float> @llvm.masked.load.nxv4f32.p0(ptr%1, i321, <vscale x 4 x i1> %mask, <vscale x 4 x float> %passthrough)
103
+
ret <vscale x 4 x float> %load2
104
104
}
105
105
106
106
define <vscale x 4 x float> @bail_on_different_passthrough(ptr%0, ptr%1, <vscale x 4 x float> %passthrough) {
@@ -111,11 +111,11 @@ define <vscale x 4 x float> @bail_on_different_passthrough(ptr %0, ptr %1, <vsca
111
111
; CHECK-NEXT: [[TMP5:%.*]] = call <vscale x 4 x float> @llvm.masked.load.nxv4f32.p0(ptr [[TMP1]], i32 1, <vscale x 4 x i1> [[TMP3]], <vscale x 4 x float> [[PASSTHROUGH:%.*]])
112
112
; CHECK-NEXT: ret <vscale x 4 x float> [[TMP5]]
113
113
;
114
-
%6 = call <vscale x 4 x i1> @llvm.get.active.lane.mask.nxv4i1.i32(i320, i324)
115
-
%7 = call <vscale x 4 x float> @llvm.masked.load.nxv4f32.p0(ptr%0, i321, <vscale x 4 x i1> %6, <vscale x 4 x float> zeroinitializer)
116
-
callvoid@llvm.masked.store.nxv4f32.p0(<vscale x 4 x float> %7, ptr%1, i321, <vscale x 4 x i1> %6)
117
-
%8 = call <vscale x 4 x float> @llvm.masked.load.nxv4f32.p0(ptr%1, i321, <vscale x 4 x i1> %6, <vscale x 4 x float> %passthrough)
118
-
ret <vscale x 4 x float> %8
114
+
%mask = call <vscale x 4 x i1> @llvm.get.active.lane.mask.nxv4i1.i32(i320, i324)
115
+
%load1 = call <vscale x 4 x float> @llvm.masked.load.nxv4f32.p0(ptr%0, i321, <vscale x 4 x i1> %mask, <vscale x 4 x float> zeroinitializer)
116
+
callvoid@llvm.masked.store.nxv4f32.p0(<vscale x 4 x float> %load1, ptr%1, i321, <vscale x 4 x i1> %mask)
117
+
%load2 = call <vscale x 4 x float> @llvm.masked.load.nxv4f32.p0(ptr%1, i321, <vscale x 4 x i1> %mask, <vscale x 4 x float> %passthrough)
118
+
ret <vscale x 4 x float> %load2
119
119
}
120
120
121
121
define <vscale x 4 x float> @forward_binop_with_sel_scalable(ptr%0, ptr%1, <vscale x 4 x float> %passthrough) {
0 commit comments