On Fri, Jun 4, 2021 at 12:47 AM Jakub Jelinek via Gcc-patches <gcc-patches@gcc.gnu.org> wrote: > > On Fri, Jun 04, 2021 at 01:03:58AM +0000, Liu, Hongtao wrote: > > Thanks for the review. > > Yes, you're right, AVX512VL parts are already guaranteed by > > ix86_hard_regno_mode_ok. > > > > Here is updated patch. > > One remaining thing, could you try to modify the testcase back to > #include <x86intrin.h> and using intrinsics instead of the target builtins, > so that next time we replace some builtins we don't have to adjust the > testcase (and of course verify that without your patch it still ICEs and > with your patch it doesn't)? > > Ok for trunk with that change. > > Jakub >
I am checking in this as an obvious fix. -- H.J.
From 6dcfc0b15c4bcb97ab5eb9c4d78c383fe38cba51 Mon Sep 17 00:00:00 2001 From: "H.J. Lu" <hjl.to...@gmail.com> Date: Mon, 7 Jun 2021 07:29:31 -0700 Subject: [PATCH] x86: Update g++.target/i386/pr100885.C Since long is 32 bits for x32, update g++.target/i386/pr100885.C to cast __m64 to long long for x32. PR target/100885 * g++.target/i386/pr100885.C (_mm_set_epi64): Cast __m64 to long long. --- gcc/testsuite/g++.target/i386/pr100885.C | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gcc/testsuite/g++.target/i386/pr100885.C b/gcc/testsuite/g++.target/i386/pr100885.C index 08a5bdd02a2..bec08f7e96d 100644 --- a/gcc/testsuite/g++.target/i386/pr100885.C +++ b/gcc/testsuite/g++.target/i386/pr100885.C @@ -33,7 +33,7 @@ protected: } }; __m128i _mm_set_epi64(__m64 __q0) { - __m128i __trans_tmp_5{(long)__q0}; + __m128i __trans_tmp_5{(long long)__q0}; return __trans_tmp_5; } long _mm_storel_epi64___P, Draw_dsts; -- 2.31.1