[llvm] [SelectionDAG] Add GET_ACTIVE_LANE_MASK to ComputeNumSignBits (PR #208977)
Paul Walker via llvm-commits
llvm-commits at lists.llvm.org
Mon Jul 13 06:29:20 PDT 2026
================
@@ -17,3 +17,34 @@ entry:
%data = call <16 x i8> @llvm.masked.load.v16i8.p0(ptr %p, i32 1, <16 x i1> %mask, <16 x i8> zeroinitializer)
ret <16 x i8> %data
}
+
+define void @active_lane_mask_mstore_vscaleX2(ptr %p, i64 %n) #0 {
+; CHECK-LABEL: active_lane_mask_mstore_vscaleX2:
+; CHECK: // %bb.0: // %entry
+; CHECK-NEXT: whilelo p0.b, xzr, x1
+; CHECK-NEXT: mov z0.h, #123 // =0x7b
+; CHECK-NEXT: punpklo p0.h, p0.b
+; CHECK-NEXT: st1h { z0.h }, p0, [x0]
+; CHECK-NEXT: ret
+entry:
+ %mask = call <16 x i1> @llvm.get.active.lane.mask.v16i1(i64 0, i64 %n)
+ call void @llvm.masked.store.v16i16.p0(<16 x i16> splat(i16 123), ptr %p, <16 x i1> %mask)
+ ret void
+}
+
+define void @active_lane_mask_mstore_vscaleX4(ptr %p, i64 %n) #1 {
----------------
paulwalker-arm wrote:
```suggestion
define void @active_lane_mask_mstore_vscaleX4(ptr %p, i64 %n) vscale_range(4,4) {
```
https://github.com/llvm/llvm-project/pull/208977
More information about the llvm-commits
mailing list