internal/rosa/package/go: added PMULL gate on carryless multiply test

Fixes go.dev/issues/80991.

Signed-off-by: Ophestra <cat@gensokyo.uk>
This commit is contained in:
cat
2026-08-25 16:27:05 +09:00
parent ce53fa9249
commit cfede152c8
2 changed files with 25 additions and 0 deletions
+24
View File
@@ -0,0 +1,24 @@
From fa10bbcce5635dd533ba933252e9dabd8a7f5e2a Mon Sep 17 00:00:00 2001
From: David Chase <drchase@google.com>
Date: Mon, 24 Aug 2026 15:20:40 -0400
Subject: [PATCH] simd/archsimd: added PMULL gate on carryless multiply test
Fixes #80991.
Change-Id: I637de72acbb338c4c3b0a47f4a5520c33fe81fd2
---
diff --git a/src/simd/archsimd/internal/simd_test/simd_arm64_test.go b/src/simd/archsimd/internal/simd_test/simd_arm64_test.go
index f009488..7836fc8 100644
--- a/src/simd/archsimd/internal/simd_test/simd_arm64_test.go
+++ b/src/simd/archsimd/internal/simd_test/simd_arm64_test.go
@@ -22,6 +22,9 @@
}
func TestClMul(t *testing.T) {
+ if !archsimd.ARM64.PMULL() {
+ t.Skip("no carryless multiply")
+ }
var x = archsimd.LoadUint64x2([]uint64{1, 5})
var y = archsimd.LoadUint64x2([]uint64{3, 9})
+58
View File
@@ -0,0 +1,58 @@
package go {
description = "the Go programming language toolchain";
website = "https://go.dev";
anitya = 1227;
version# = "1.27.0";
source = remoteTar {
url = "https://go.dev/dl/go"+version+".src.tar.gz";
checksum = "Ookl2vP6KMfJuxaxX6nXZ1gnL43wZPl5GjpVsrI7IJiB4b3xr1PbnbYIOJ8v5jzG";
compress = gzip;
};
patches = [ "820480.patch" ];
env = [
"CC=cc",
"GOCACHE=/tmp/gocache",
"GOROOT_BOOTSTRAP=/system/go",
"TMPDIR=/dev/shm/go",
];
enterSource = true;
exec = generic {
chdir = false;
build = `
mkdir /work/system/ "${TMPDIR}"
cp -r . /work/system/go
cd /work/system/go/src/
chmod -R +w ..
sed -i \
's,/lib/ld-musl-`+linuxArch+`.so.1,/system/bin/linker,' \
cmd/link/internal/`+arch+`/obj.go
rm \
os/root_unix_test.go \
runtime/crash_cgo_test.go \
cmd/cgo/internal/testsanitizers/tsan_test.go \
cmd/cgo/internal/testsanitizers/cshared_test.go
set +u
. ./make.bash "$@" --no-banner
set -u
`;
check = "bash run.bash --no-rebuild\n";
install = `
../bin/go tool dist banner # print build info
mkdir /work/system/bin
ln -s \
../go/bin/go \
../go/bin/gofmt \
/work/system/bin
`;
};
inputs = [ bash, go-bootstrap ];
}