]> git.ipfire.org Git - thirdparty/valgrind.git/commitdiff
Bug 460356 -- s390: Fix code generation for Iop_Sqrt32Fx4
authorAndreas Arnez <arnez@linux.ibm.com>
Thu, 13 Oct 2022 12:29:08 +0000 (14:29 +0200)
committerAndreas Arnez <arnez@linux.ibm.com>
Wed, 11 Jan 2023 15:44:38 +0000 (16:44 +0100)
There is no instruction selector for Iop_Sqrt32Fx4, leading to Valgrind
panicking with the message:

   s390_isel_vec_expr: cannot reduce tree

Fix this.

NEWS
VEX/priv/host_s390_isel.c

diff --git a/NEWS b/NEWS
index fb3b05fa9de3a767ea7153c0873d0dc50114cc36..041ff5ba650060973e31950704d884a04b79c2bc 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -85,6 +85,7 @@ are not entered into bugzilla tend to get forgotten about or ignored.
 444488  Use glibc.pthread.stack_cache_size tunable
 444568  drd/tests/pth_barrier_thr_cr fails on Fedora 38
 459476  vgdb: allow address reuse to avoid "address already in use" errorsuse" errors
+460356  s390: Sqrt32Fx4 -- cannot reduce tree
 462830  WARNING: unhandled amd64-freebsd syscall: 474
 463027  broken check for MPX instruction support in assembler
 
index f037255cb8036b814d74f0ef9684c3a7d1c8e7f9..32c209edb56ef984a1ea9a0635893e287577e449 100644 (file)
@@ -4552,6 +4552,10 @@ s390_isel_vec_expr_wrk(ISelEnv *env, IRExpr *expr)
          goto Iop_VV_wrk;
       }
 
+      case Iop_Sqrt32Fx4:
+         size = 4;
+         vec_unop = S390_VEC_FLOAT_SQRT;
+         goto Iop_irrm_V_wrk;
       case Iop_Sqrt64Fx2:
          size = 8;
          vec_unop = S390_VEC_FLOAT_SQRT;