From: Andreas Arnez Date: Thu, 13 Oct 2022 12:29:08 +0000 (+0200) Subject: Bug 460356 -- s390: Fix code generation for Iop_Sqrt32Fx4 X-Git-Tag: VALGRIND_3_21_0~228 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=6da4025b59253312a24eb2650190a4fcd8f2e634;p=thirdparty%2Fvalgrind.git Bug 460356 -- s390: Fix code generation for Iop_Sqrt32Fx4 There is no instruction selector for Iop_Sqrt32Fx4, leading to Valgrind panicking with the message: s390_isel_vec_expr: cannot reduce tree Fix this. --- diff --git a/NEWS b/NEWS index fb3b05fa9d..041ff5ba65 100644 --- 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 diff --git a/VEX/priv/host_s390_isel.c b/VEX/priv/host_s390_isel.c index f037255cb8..32c209edb5 100644 --- a/VEX/priv/host_s390_isel.c +++ b/VEX/priv/host_s390_isel.c @@ -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;