[PATCH] Improve arm and aarch64 casesi (PR target/70341)

Jakub Jelinek jakub@redhat.com
Mon Feb 25 10:27:00 GMT 2019


On Mon, Feb 25, 2019 at 10:05:46AM +0000, Kyrill Tkachov wrote:
> Hi Jakub,
> 
> On 2/23/19 12:20 AM, Jakub Jelinek wrote:
> > Hi!
> > 
> > The testcase in the PR doesn't hoist any memory loads from the large
> > switch
> > before the switch on aarch64 and arm (unlike e.g. x86), because the
> > arm/aarch64 casesi patterns don't properly annotate the memory load from
> > the
> > jump table.  It is created by gen_* and in RTL directly one can't specify
> > the needed flags (MEM_READONLY_P and MEM_NOTRAP_P).
> > 
> > Fixed thusly, bootstrapped/regtested on armv7hl-linux-gnueabi and
> > aarch64-linux, ok for trunk?
> > 
> Since you're changing Arm and Thumb-2-specific paths can you please make
> sure to bootstrap configurations --with-mode=arm and --with-mode=thumb.

The only bootstraps I'm doing are distro builds with
        --with-tune=generic-armv7-a --with-arch=armv7-a \
        --with-float=hard --with-fpu=vfpv3-d16 --with-abi=aapcs-linux
I don't have setup nor experience with configuring anything else, don't
really know what is and what isn't ABI compatible etc.
Isn't --with-mode=arm the default with the above set of options?  Can
--with-mode=thumb be used ABI compatibly with that, or is that incompatible?

	Jakub



More information about the Gcc-patches mailing list