This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH] Fix powerpc64le ICE in replace_swapped_load_constant (PR target/85503)
- From: Segher Boessenkool <segher at kernel dot crashing dot org>
- To: Jakub Jelinek <jakub at redhat dot com>
- Cc: Kelvin Nilsen <kdnilsen at linux dot ibm dot com>, gcc-patches at gcc dot gnu dot org
- Date: Tue, 24 Apr 2018 10:46:49 -0500
- Subject: Re: [PATCH] Fix powerpc64le ICE in replace_swapped_load_constant (PR target/85503)
- References: <20180424075229.GV8577@tucnak>
Hi Jakub,
On Tue, Apr 24, 2018 at 09:52:29AM +0200, Jakub Jelinek wrote:
> The following patch adjusts the const_load_sequence_p predicate to match
> what the replace_swapped_load_constant function guarded by it expects.
>
> On the testcase base is a CONSTANT_POOL_ADDRESS_P SYMBOL_REF, but it
> contains an address of a static data member + 8, so not a CONST_VECTOR nor
> a CONSTANT_POOL_ADDRESS_P SYMBOL_REF.
Okay for trunk (and backports where needed). Thanks! Some day we should
figure out why we need this hack. But not today I guess :-)
Segher
> 2018-04-24 Jakub Jelinek <jakub@redhat.com>
>
> PR target/85503
> * config/rs6000/rs6000-p8swap.c (const_load_sequence_p): Punt if
> const_vector is not CONST_VECTOR or SYMBOL_REF for a constant pool
> containing a CONST_VECTOR.
>
> * g++.dg/ext/pr85503.C: New test.