[dev.simd] cmd/compile: fix the "always panic" code to actually panic

without this change, the intrinsics of non-constant immediates
just substitute a zero, which is wrong.

Change-Id: I2c39ebedcfb0d0d6c072f4434f393027c6f3f033
Reviewed-on: https://go-review.googlesource.com/c/go/+/685575
Reviewed-by: Junyang Shao <shaojunyang@google.com>
Reviewed-by: Cherry Mui <cherryyz@google.com>
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
This commit is contained in:
David Chase 2025-07-02 14:28:10 -04:00
parent 1ee72a15a3
commit 72c39ef834

View file

@ -1636,7 +1636,7 @@ func opLen4(op ssa.Op, t *types.Type) func(s *state, n *ir.CallExpr, args []*ssa
func plainPanicSimdImm(s *state) { func plainPanicSimdImm(s *state) {
cmp := s.newValue0(ssa.OpConstBool, types.Types[types.TBOOL]) cmp := s.newValue0(ssa.OpConstBool, types.Types[types.TBOOL])
cmp.AuxInt = 1 cmp.AuxInt = 0
// TODO: make this a standalone panic instead of reusing the overflow panic. // TODO: make this a standalone panic instead of reusing the overflow panic.
// Or maybe after we implement the switch table this will be obsolete anyway. // Or maybe after we implement the switch table this will be obsolete anyway.
s.check(cmp, ir.Syms.Panicoverflow) s.check(cmp, ir.Syms.Panicoverflow)