From 1d62e92567a858b18f4e7e0c24e071c039dd3edf Mon Sep 17 00:00:00 2001 From: Cherry Mui Date: Sat, 4 Oct 2025 11:32:33 -0400 Subject: [PATCH] test/codegen: make sure assignment results are used. Some tests make assignments to an argument without reading it. With CL 708865, they are treated as dead stores and are removed. Make sure the results are used. Fixes #75745. Fixes #75746. Change-Id: I05580beb1006505ec1550e5fa245b54dcefd10b9 Reviewed-on: https://go-review.googlesource.com/c/go/+/708916 LUCI-TryBot-Result: Go LUCI Reviewed-by: Keith Randall Reviewed-by: Keith Randall --- test/codegen/constants.go | 6 ++++-- test/codegen/mathbits.go | 3 ++- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/test/codegen/constants.go b/test/codegen/constants.go index 3ce17d0ad3..0935a9e53a 100644 --- a/test/codegen/constants.go +++ b/test/codegen/constants.go @@ -7,7 +7,7 @@ package codegen // A uint16 or sint16 constant shifted left. -func shifted16BitConstants(out [64]uint64) { +func shifted16BitConstants() (out [64]uint64) { // ppc64x: "MOVD\t[$]8193,", "SLD\t[$]27," out[0] = 0x0000010008000000 // ppc64x: "MOVD\t[$]-32767", "SLD\t[$]26," @@ -16,10 +16,11 @@ func shifted16BitConstants(out [64]uint64) { out[2] = 0xFFFF000000000000 // ppc64x: "MOVD\t[$]65535", "SLD\t[$]44," out[3] = 0x0FFFF00000000000 + return } // A contiguous set of 1 bits, potentially wrapping. -func contiguousMaskConstants(out [64]uint64) { +func contiguousMaskConstants() (out [64]uint64) { // ppc64x: "MOVD\t[$]-1", "RLDC\tR[0-9]+, [$]44, [$]63," out[0] = 0xFFFFF00000000001 // ppc64x: "MOVD\t[$]-1", "RLDC\tR[0-9]+, [$]43, [$]63," @@ -30,4 +31,5 @@ func contiguousMaskConstants(out [64]uint64) { // ppc64x/power9: "MOVD\t[$]-1", "RLDC\tR[0-9]+, [$]33, [$]63," // ppc64x/power10: "MOVD\t[$]-8589934591," out[3] = 0xFFFFFFFE00000001 + return } diff --git a/test/codegen/mathbits.go b/test/codegen/mathbits.go index ba5387d2c3..f8fa374c0a 100644 --- a/test/codegen/mathbits.go +++ b/test/codegen/mathbits.go @@ -731,7 +731,7 @@ func Add64MPanicOnOverflowGT(a, b [2]uint64) [2]uint64 { // // This is what happened on PPC64 when compiling // crypto/internal/edwards25519/field.feMulGeneric. -func Add64MultipleChains(a, b, c, d [2]uint64) { +func Add64MultipleChains(a, b, c, d [2]uint64) [2]uint64 { var cx, d1, d2 uint64 a1, a2 := a[0], a[1] b1, b2 := b[0], b[1] @@ -748,6 +748,7 @@ func Add64MultipleChains(a, b, c, d [2]uint64) { d2, _ = bits.Add64(c2, d2, cx) d[0] = d1 d[1] = d2 + return d } // --------------- // -- 2.52.0