[go] simd: repair renaming of Mask.ToIntNs

1 view
Skip to first unread message

David Chase (Gerrit)

unread,
Jun 26, 2026, 9:49:31 PM (9 hours ago) Jun 26
to goph...@pubsubhelper.golang.org, golang-co...@googlegroups.com

David Chase has uploaded the change for review

Commit message

simd: repair renaming of Mask.ToIntNs

Fixes #80176.
Change-Id: Ic109e9bcd57bbcc9b2ce4ba2c9c884cf8b9de620

Change diff

diff --git a/src/simd/archsimd/_gen/midway/intersect_simd_ops.go b/src/simd/archsimd/_gen/midway/intersect_simd_ops.go
index e91c527..141ccc2 100644
--- a/src/simd/archsimd/_gen/midway/intersect_simd_ops.go
+++ b/src/simd/archsimd/_gen/midway/intersect_simd_ops.go
@@ -669,7 +669,12 @@
if fd == nil {
continue
}
- pf("func (x %s) %s(", t, fd.Name.Name)
+ bridgeName := fd.Name.Name
+ if strings.HasPrefix(t, "Mask") && strings.HasPrefix(bridgeName, "ToInt") {
+ x := strings.Index(bridgeName, "x")
+ bridgeName = bridgeName[:x] + "s"
+ }
+ pf("func (x %s) %s(", t, bridgeName)
var args []string
if fd.Type.Params != nil {
paramCount := 0
diff --git a/src/simd/internal/bridge/decls_amd64.go b/src/simd/internal/bridge/decls_amd64.go
index 5e15dca..57083c8 100644
--- a/src/simd/internal/bridge/decls_amd64.go
+++ b/src/simd/internal/bridge/decls_amd64.go
@@ -3928,15 +3928,15 @@
return (archsimd.Mask8x64(x)).String()
}

-func (x Mask8x16) ToInt8x16() Int8x16 {
+func (x Mask8x16) ToInt8s() Int8x16 {
return Int8x16((archsimd.Mask8x16(x)).ToInt8x16())
}

-func (x Mask8x32) ToInt8x32() Int8x32 {
+func (x Mask8x32) ToInt8s() Int8x32 {
return Int8x32((archsimd.Mask8x32(x)).ToInt8x32())
}

-func (x Mask8x64) ToInt8x64() Int8x64 {
+func (x Mask8x64) ToInt8s() Int8x64 {
return Int8x64((archsimd.Mask8x64(x)).ToInt8x64())
}

@@ -3976,15 +3976,15 @@
return (archsimd.Mask16x8(x)).String()
}

-func (x Mask16x16) ToInt16x16() Int16x16 {
+func (x Mask16x16) ToInt16s() Int16x16 {
return Int16x16((archsimd.Mask16x16(x)).ToInt16x16())
}

-func (x Mask16x32) ToInt16x32() Int16x32 {
+func (x Mask16x32) ToInt16s() Int16x32 {
return Int16x32((archsimd.Mask16x32(x)).ToInt16x32())
}

-func (x Mask16x8) ToInt16x8() Int16x8 {
+func (x Mask16x8) ToInt16s() Int16x8 {
return Int16x8((archsimd.Mask16x8(x)).ToInt16x8())
}

@@ -4024,15 +4024,15 @@
return (archsimd.Mask32x8(x)).String()
}

-func (x Mask32x16) ToInt32x16() Int32x16 {
+func (x Mask32x16) ToInt32s() Int32x16 {
return Int32x16((archsimd.Mask32x16(x)).ToInt32x16())
}

-func (x Mask32x4) ToInt32x4() Int32x4 {
+func (x Mask32x4) ToInt32s() Int32x4 {
return Int32x4((archsimd.Mask32x4(x)).ToInt32x4())
}

-func (x Mask32x8) ToInt32x8() Int32x8 {
+func (x Mask32x8) ToInt32s() Int32x8 {
return Int32x8((archsimd.Mask32x8(x)).ToInt32x8())
}

@@ -4072,14 +4072,14 @@
return (archsimd.Mask64x8(x)).String()
}

-func (x Mask64x2) ToInt64x2() Int64x2 {
+func (x Mask64x2) ToInt64s() Int64x2 {
return Int64x2((archsimd.Mask64x2(x)).ToInt64x2())
}

-func (x Mask64x4) ToInt64x4() Int64x4 {
+func (x Mask64x4) ToInt64s() Int64x4 {
return Int64x4((archsimd.Mask64x4(x)).ToInt64x4())
}

-func (x Mask64x8) ToInt64x8() Int64x8 {
+func (x Mask64x8) ToInt64s() Int64x8 {
return Int64x8((archsimd.Mask64x8(x)).ToInt64x8())
}
diff --git a/src/simd/internal/bridge/decls_arm64.go b/src/simd/internal/bridge/decls_arm64.go
index 335e7af..a0f971e 100644
--- a/src/simd/internal/bridge/decls_arm64.go
+++ b/src/simd/internal/bridge/decls_arm64.go
@@ -1316,7 +1316,7 @@
return (archsimd.Mask8x16(x)).String()
}

-func (x Mask8x16) ToInt8x16() Int8x16 {
+func (x Mask8x16) ToInt8s() Int8x16 {
return Int8x16((archsimd.Mask8x16(x)).ToInt8x16())
}

@@ -1332,7 +1332,7 @@
return (archsimd.Mask16x8(x)).String()
}

-func (x Mask16x8) ToInt16x8() Int16x8 {
+func (x Mask16x8) ToInt16s() Int16x8 {
return Int16x8((archsimd.Mask16x8(x)).ToInt16x8())
}

@@ -1348,7 +1348,7 @@
return (archsimd.Mask32x4(x)).String()
}

-func (x Mask32x4) ToInt32x4() Int32x4 {
+func (x Mask32x4) ToInt32s() Int32x4 {
return Int32x4((archsimd.Mask32x4(x)).ToInt32x4())
}

@@ -1364,6 +1364,6 @@
return (archsimd.Mask64x2(x)).String()
}

-func (x Mask64x2) ToInt64x2() Int64x2 {
+func (x Mask64x2) ToInt64s() Int64x2 {
return Int64x2((archsimd.Mask64x2(x)).ToInt64x2())
}
diff --git a/src/simd/internal/bridge/decls_wasm.go b/src/simd/internal/bridge/decls_wasm.go
index 013482e..72064dc 100644
--- a/src/simd/internal/bridge/decls_wasm.go
+++ b/src/simd/internal/bridge/decls_wasm.go
@@ -1316,7 +1316,7 @@
return (archsimd.Mask8x16(x)).String()
}

-func (x Mask8x16) ToInt8x16() Int8x16 {
+func (x Mask8x16) ToInt8s() Int8x16 {
return Int8x16((archsimd.Mask8x16(x)).ToInt8x16())
}

@@ -1332,7 +1332,7 @@
return (archsimd.Mask16x8(x)).String()
}

-func (x Mask16x8) ToInt16x8() Int16x8 {
+func (x Mask16x8) ToInt16s() Int16x8 {
return Int16x8((archsimd.Mask16x8(x)).ToInt16x8())
}

@@ -1348,7 +1348,7 @@
return (archsimd.Mask32x4(x)).String()
}

-func (x Mask32x4) ToInt32x4() Int32x4 {
+func (x Mask32x4) ToInt32s() Int32x4 {
return Int32x4((archsimd.Mask32x4(x)).ToInt32x4())
}

@@ -1364,6 +1364,6 @@
return (archsimd.Mask64x2(x)).String()
}

-func (x Mask64x2) ToInt64x2() Int64x2 {
+func (x Mask64x2) ToInt64s() Int64x2 {
return Int64x2((archsimd.Mask64x2(x)).ToInt64x2())
}
diff --git a/src/simd/simd_test.go b/src/simd/simd_test.go
index 099c52e..5bcca61 100644
--- a/src/simd/simd_test.go
+++ b/src/simd/simd_test.go
@@ -8,6 +8,7 @@

import (
"simd"
+ "slices"
"testing"
)

@@ -446,3 +447,13 @@
testBroadcast(t, float32(99991111), simd.BroadcastFloat32s)
testBroadcast(t, float64(112233445599887766), simd.BroadcastFloat64s)
}
+
+func TestMaskToInt(t *testing.T) {
+ topBits := simd.BroadcastUint8s(0x80)
+ got := make([]int8, 16)
+ topBits.Equal(topBits).ToInt8s().Store(got)
+ want := []int8{-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1}
+ if !slices.Equal(want, got) {
+ t.Errorf("Wanted %v, got %v", want, got)
+ }
+}

Change information

Files:
  • M src/simd/archsimd/_gen/midway/intersect_simd_ops.go
  • M src/simd/internal/bridge/decls_amd64.go
  • M src/simd/internal/bridge/decls_arm64.go
  • M src/simd/internal/bridge/decls_wasm.go
  • M src/simd/simd_test.go
Change size: M
Delta: 5 files changed, 37 insertions(+), 21 deletions(-)
Open in Gerrit

Related details

Attention set is empty
Submit Requirements:
  • requirement is not satisfiedCode-Review
  • requirement satisfiedNo-Unresolved-Comments
  • requirement is not satisfiedReview-Enforcement
  • requirement is not satisfiedTryBots-Pass
Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
Gerrit-MessageType: newchange
Gerrit-Project: go
Gerrit-Branch: master
Gerrit-Change-Id: Ic109e9bcd57bbcc9b2ce4ba2c9c884cf8b9de620
Gerrit-Change-Number: 794960
Gerrit-PatchSet: 1
Gerrit-Owner: David Chase <drc...@google.com>
Gerrit-Reviewer: David Chase <drc...@google.com>
unsatisfied_requirement
satisfied_requirement
open
diffy

David Chase (Gerrit)

unread,
12:33 AM (6 hours ago) 12:33 AM
to goph...@pubsubhelper.golang.org, golang-co...@googlegroups.com
Attention needed from Cherry Mui, David Chase and Junyang Shao

David Chase uploaded new patchset

David Chase uploaded patch set #2 to this change.
Following approvals got outdated and were removed:
Open in Gerrit

Related details

Attention is currently required from:
  • Cherry Mui
  • David Chase
  • Junyang Shao
Submit Requirements:
  • requirement is not satisfiedCode-Review
  • requirement satisfiedNo-Unresolved-Comments
  • requirement is not satisfiedReview-Enforcement
  • requirement is not satisfiedTryBots-Pass
Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
Gerrit-MessageType: newpatchset
Gerrit-Project: go
Gerrit-Branch: master
Gerrit-Change-Id: Ic109e9bcd57bbcc9b2ce4ba2c9c884cf8b9de620
Gerrit-Change-Number: 794960
Gerrit-PatchSet: 2
Gerrit-Owner: David Chase <drc...@google.com>
Gerrit-Reviewer: Cherry Mui <cher...@google.com>
Gerrit-Reviewer: David Chase <drc...@google.com>
Gerrit-Reviewer: Junyang Shao <shaoj...@google.com>
Gerrit-Attention: Cherry Mui <cher...@google.com>
Gerrit-Attention: David Chase <drc...@google.com>
Gerrit-Attention: Junyang Shao <shaoj...@google.com>
unsatisfied_requirement
satisfied_requirement
open
diffy
Reply all
Reply to author
Forward
0 new messages