public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
From: Steve Ellcey <sellcey@cavium.com>
To: Andreas Schwab <schwab@suse.de>,
	Segher Boessenkool	<segher@kernel.crashing.org>
Cc: "gcc-patches@gcc.gnu.org" <gcc-patches@gcc.gnu.org>,
	"bergner@linux.ibm.com" <bergner@linux.ibm.com>
Subject: Re: [PATCH] combine: Do not combine moves from hard registers
Date: Fri, 26 Oct 2018 17:41:00 -0000	[thread overview]
Message-ID: <1540571945.12895.67.camel@cavium.com> (raw)
In-Reply-To: <mvmbm7jr5nm.fsf@suse.de>

What is the status of this patch?  I see PR 87708, which is for the
regression to ira-shrinkwrap-prep-[12].c but what about all the
other regressions?  I see 27 of them on my aarch64 build and when
I looked at one of them (gcc.target/aarch64/cvtf_1.c) the code looks
worse than before, generating an extra instruction in each of the
routines.  Here is an example from one function where there is an
extra fmov that was not there before.  The test runs at -O1 but
the extra instruction appears at all optimization levels.  Should
I submit a new PR for this?

Steve Ellcey


void cvt_int32_t_to_float (int a, float b)
{ float c; c = (float) a;
  if ( (c - b) > 0.00001) abort();
}


Which used to generate:

cvt_int32_t_to_float:
.LFB0:
	.cfi_startproc
	scvtf	s1, w0
	fsub	s0, s1, s0
	fcvt	d0, s0
	adrp	x0, .LC0
	ldr	d1, [x0, #:lo12:.LC0]
	fcmpe	d0, d1
	bgt	.L9
	ret
.L9:
	stp	x29, x30, [sp, -16]!
	.cfi_def_cfa_offset 16
	.cfi_offset 29, -16
	.cfi_offset 30, -8
	mov	x29, sp
	bl	abort
	.cfi_endproc

Now generates:

cvt_int32_t_to_float:
.LFB0:
	.cfi_startproc
	fmov	s1, w0
	scvtf	s1, s1
	fsub	s1, s1, s0
	fcvt	d1, s1
	adrp	x0, .LC0
	ldr	d0, [x0, #:lo12:.LC0]
	fcmpe	d1, d0
	bgt	.L9
	ret
.L9:
	stp	x29, x30, [sp, -16]!
	.cfi_def_cfa_offset 16
	.cfi_offset 29, -16
	.cfi_offset 30, -8
	mov	x29, sp
	bl	abort
	.cfi_endproc


  reply	other threads:[~2018-10-26 16:39 UTC|newest]

Thread overview: 32+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-10-22 21:06 Segher Boessenkool
2018-10-22 22:07 ` Jeff Law
2018-10-22 22:46   ` Segher Boessenkool
2018-10-23 10:54 ` Christophe Lyon
2018-10-23 12:36   ` Christophe Lyon
2018-10-23 13:10     ` Segher Boessenkool
2018-10-23 13:30       ` Christophe Lyon
2018-10-23 13:08   ` Segher Boessenkool
2018-10-23 13:50     ` Christophe Lyon
2018-10-24  1:50       ` Segher Boessenkool
2018-10-24  9:52         ` Christophe Lyon
2018-11-02 22:19           ` Renlin Li
2018-11-02 23:03             ` Segher Boessenkool
2018-11-02 23:54               ` Segher Boessenkool
2018-11-03  2:34                 ` Jeff Law
2018-11-05 12:35                   ` Renlin Li
2018-11-05 18:16                     ` Renlin Li
2018-11-07 23:02                       ` Segher Boessenkool
2018-11-09 10:21                         ` Richard Earnshaw (lists)
2018-11-05 22:50                     ` Segher Boessenkool
2018-10-24  9:38   ` Paul Hua
2018-10-23 16:16 ` Andreas Schwab
2018-10-23 16:28   ` Segher Boessenkool
2018-10-24 12:24     ` Andreas Schwab
2018-10-26 17:41       ` Steve Ellcey [this message]
2018-10-26 18:37         ` Segher Boessenkool
     [not found]           ` <7bc8697f-a09e-627f-b032-eba5ecb682ac@arm.com>
2018-11-08 20:34             ` Segher Boessenkool
2018-11-09 21:12               ` Jeff Law
2018-11-10  4:51                 ` Segher Boessenkool
2018-11-10 16:54                   ` Jeff Law
2018-11-12 11:57               ` Sam Tebbs
     [not found]               ` <e9104024-2f6a-6cb8-e366-39b96f7a72f2@arm.com>
2018-11-12 12:54                 ` Segher Boessenkool

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=1540571945.12895.67.camel@cavium.com \
    --to=sellcey@cavium.com \
    --cc=bergner@linux.ibm.com \
    --cc=gcc-patches@gcc.gnu.org \
    --cc=schwab@suse.de \
    --cc=segher@kernel.crashing.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).