public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
From: Jakub Jelinek <jakub@redhat.com>
To: Tom de Vries <Tom_deVries@mentor.com>
Cc: gcc-patches@gnu.org
Subject: Re: [PATCH, PR66444] Handle -fipa-ra in reload_combine
Date: Mon, 08 Jun 2015 15:37:00 -0000	[thread overview]
Message-ID: <20150608153151.GW10247@tucnak.redhat.com> (raw)
In-Reply-To: <557584BC.2040603@mentor.com>

On Mon, Jun 08, 2015 at 02:04:12PM +0200, Tom de Vries wrote:
> this patch fixes PR66444, a problem with -fipa-ra in reload_combine.
> 
> The problem is that for the test-case, reload_combine combines these two
> insns:

Please work out with Vlad whether reload_cse_move2add doesn't need similar
fix (and check other spots too).

> 2015-06-08  Tom de Vries  <tom@codesourcery.com>
> 
> 	PR rtl-optimization/66444
> 	* postreload.c (reload_combine): Use get_call_reg_set_usage instead of
> 	call_used_regs.

LGTM.

> 	* gcc.dg/pr66444.c: New test.

> +int __attribute__((noinline, noclone))
> +baz (void)
> +{
> +  struct S *x = (struct S *) 0xe0000000U;

I'm still afraid this will not really work on s390-linux (which has only
31-bit pointers) and will not work on 16-bit int targets either
(some have say 24-bit pointers etc., not really familiar with the embedded
world).
So, I'd suggest use a macro for the address, so you don't need to duplicate
it, and define it to say ((struct S *) 0x8000UL), if it reproduces
even with that change without your reload_combine fix.

Ok for trunk and 5.2 with that change.

	Jakub

  reply	other threads:[~2015-06-08 15:32 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-06-08 12:05 Tom de Vries
2015-06-08 15:37 ` Jakub Jelinek [this message]
2015-06-08 17:47   ` Tom de Vries
2015-06-08 17:52   ` Tom de Vries

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20150608153151.GW10247@tucnak.redhat.com \
    --to=jakub@redhat.com \
    --cc=Tom_deVries@mentor.com \
    --cc=gcc-patches@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).