From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 2209) id 90ABC3853828; Fri, 25 Jun 2021 23:09:08 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 90ABC3853828 MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="utf-8" From: David Malcolm To: gcc-cvs@gcc.gnu.org Subject: [gcc r12-1821] jit: fix test-vector-* failures X-Act-Checkin: gcc X-Git-Author: David Malcolm X-Git-Refname: refs/heads/master X-Git-Oldrev: 176289e50e3d379b681f8775cdb0230b1e9f50dc X-Git-Newrev: 99585d88a090b4c5b7791f7ab62f70eb37b748fa Message-Id: <20210625230908.90ABC3853828@sourceware.org> Date: Fri, 25 Jun 2021 23:09:08 +0000 (GMT) X-BeenThere: gcc-cvs@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gcc-cvs mailing list List-Unsubscribe: , List-Archive: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 25 Jun 2021 23:09:08 -0000 https://gcc.gnu.org/g:99585d88a090b4c5b7791f7ab62f70eb37b748fa commit r12-1821-g99585d88a090b4c5b7791f7ab62f70eb37b748fa Author: David Malcolm Date: Fri Jun 25 19:07:30 2021 -0400 jit: fix test-vector-* failures Fix failures seen on i686 due to relying on exact floating-point equality when testing results of vector division. gcc/testsuite/ChangeLog: * jit.dg/test-vector-rvalues.cc (check_div): Add specialization for v4f, to avoid relying on exact floating-point equality. * jit.dg/test-vector-types.cc (check_div): Likewise. Signed-off-by: David Malcolm Diff: --- gcc/testsuite/jit.dg/test-vector-rvalues.cc | 8 ++++++++ gcc/testsuite/jit.dg/test-vector-types.cc | 8 ++++++++ 2 files changed, 16 insertions(+) diff --git a/gcc/testsuite/jit.dg/test-vector-rvalues.cc b/gcc/testsuite/jit.dg/test-vector-rvalues.cc index ac230bf774c..02877114e4a 100644 --- a/gcc/testsuite/jit.dg/test-vector-rvalues.cc +++ b/gcc/testsuite/jit.dg/test-vector-rvalues.cc @@ -165,6 +165,14 @@ check_div (const V &a, const V &b, const V &c) CHECK_VALUE (c[i], a[i] / b[i]); } +template <> +void +check_div (const v4f &a, const v4f &b, const v4f &c) +{ + for (int i = 0; i < 4; i++) + CHECK_DOUBLE_VALUE (c[i], a[i] / b[i]); +} + template void verify_vec_code (gcc_jit_context *ctxt, gcc_jit_result *result, diff --git a/gcc/testsuite/jit.dg/test-vector-types.cc b/gcc/testsuite/jit.dg/test-vector-types.cc index 3389e04a082..1f49be6b59f 100644 --- a/gcc/testsuite/jit.dg/test-vector-types.cc +++ b/gcc/testsuite/jit.dg/test-vector-types.cc @@ -139,6 +139,14 @@ check_div (const T &a, const T &b, const T &c) CHECK_VALUE (c[i], a[i] / b[i]); } +template <> +void +check_div (const v4f &a, const v4f &b, const v4f &c) +{ + for (int i = 0; i < 4; i++) + CHECK_DOUBLE_VALUE (c[i], a[i] / b[i]); +} + template void verify_vec_code (gcc_jit_context *ctxt, gcc_jit_result *result,