Openembedded Core Discussions
 help / color / mirror / Atom feed
From: Martin Jansa <martin.jansa@gmail.com>
To: openembedded-core@lists.openembedded.org
Subject: Re: [RFC][PATCH] gcc-4.8: Backport fix for ICE triggered in pixman
Date: Wed, 12 Jun 2013 00:35:24 +0200	[thread overview]
Message-ID: <20130611223524.GM3233@jama> (raw)
In-Reply-To: <1370989876-20531-1-git-send-email-Martin.Jansa@gmail.com>

[-- Attachment #1: Type: text/plain, Size: 4674 bytes --]

On Wed, Jun 12, 2013 at 12:31:16AM +0200, Martin Jansa wrote:
> * http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57329

Only RFC, because world build is still running to confirm that it
doesn't introduce new issues and that it indeed fixes pixman build for
xscalete.

> 
> Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
> ---
>  meta/recipes-devtools/gcc/gcc-4.8.inc              |  1 +
>  .../gcc/gcc-4.8/0036-PR-target-56102.patch         | 83 ++++++++++++++++++++++
>  2 files changed, 84 insertions(+)
>  create mode 100644 meta/recipes-devtools/gcc/gcc-4.8/0036-PR-target-56102.patch
> 
> diff --git a/meta/recipes-devtools/gcc/gcc-4.8.inc b/meta/recipes-devtools/gcc/gcc-4.8.inc
> index 6664f1c..bfdb766 100644
> --- a/meta/recipes-devtools/gcc/gcc-4.8.inc
> +++ b/meta/recipes-devtools/gcc/gcc-4.8.inc
> @@ -65,6 +65,7 @@ SRC_URI = "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.bz2 \
>  	   file://0033-gcc-armv4-pass-fix-v4bx-to-linker-to-support-EABI.patch \
>  	   file://0034-Use-the-multilib-config-files-from-B-instead-of-usin.patch \
>  	   file://0035-wcast-qual-PR-55383.patch \
> +	   file://0036-PR-target-56102.patch \
>  	   file://gcc-4.8-PR56797.patch \
>  	   file://gcc-4.8-build-args.patch \
>  	  "
> diff --git a/meta/recipes-devtools/gcc/gcc-4.8/0036-PR-target-56102.patch b/meta/recipes-devtools/gcc/gcc-4.8/0036-PR-target-56102.patch
> new file mode 100644
> index 0000000..a9498fc
> --- /dev/null
> +++ b/meta/recipes-devtools/gcc/gcc-4.8/0036-PR-target-56102.patch
> @@ -0,0 +1,83 @@
> +From fa049b3584a1cc36c250205e3d5841e6a40ff677 Mon Sep 17 00:00:00 2001
> +From: amker <amker@138bc75d-0d04-0410-961f-82ee72b054a4>
> +Date: Wed, 27 Mar 2013 08:16:54 +0000
> +Subject: [PATCH] PR target/56102
> +
> +* config/arm/arm.c (thumb1_rtx_costs, thumb1_size_rtx_costs): Fix rtx costs for SET/ASHIFT/ASHIFTRT/LSHIFTRT/ROTATERT patterns with mult-word mode.
> +
> +git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197155 138bc75d-0d04-0410-961f-82ee72b054a4
> +
> +Upstream-Status: Backport
> +http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57329
> +
> +Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
> +---
> + gcc/config/arm/arm.c | 17 ++++++++++++++---
> + 1 file changed, 14 insertions(+), 3 deletions(-)
> +
> +diff --git a/gcc/config/arm/arm.c b/gcc/config/arm/arm.c
> +index 460d333..edf850d 100644
> +--- a/gcc/config/arm/arm.c
> ++++ b/gcc/config/arm/arm.c
> +@@ -7094,7 +7094,7 @@ static inline int
> + thumb1_rtx_costs (rtx x, enum rtx_code code, enum rtx_code outer)
> + {
> +   enum machine_mode mode = GET_MODE (x);
> +-  int total;
> ++  int total, words;
> + 
> +   switch (code)
> +     {
> +@@ -7102,6 +7102,8 @@ thumb1_rtx_costs (rtx x, enum rtx_code code, enum rtx_code outer)
> +     case ASHIFTRT:
> +     case LSHIFTRT:
> +     case ROTATERT:
> ++      return (mode == SImode) ? COSTS_N_INSNS (1) : COSTS_N_INSNS (2);
> ++
> +     case PLUS:
> +     case MINUS:
> +     case COMPARE:
> +@@ -7125,7 +7127,10 @@ thumb1_rtx_costs (rtx x, enum rtx_code code, enum rtx_code outer)
> +       return COSTS_N_INSNS (1) + 16;
> + 
> +     case SET:
> +-      return (COSTS_N_INSNS (1)
> ++      /* A SET doesn't have a mode, so let's look at the SET_DEST to get
> ++	 the mode.  */
> ++      words = ARM_NUM_INTS (GET_MODE_SIZE (GET_MODE (SET_DEST (x))));
> ++      return (COSTS_N_INSNS (words)
> + 	      + 4 * ((MEM_P (SET_SRC (x)))
> + 		     + MEM_P (SET_DEST (x))));
> + 
> +@@ -7822,6 +7827,7 @@ static inline int
> + thumb1_size_rtx_costs (rtx x, enum rtx_code code, enum rtx_code outer)
> + {
> +   enum machine_mode mode = GET_MODE (x);
> ++  int words;
> + 
> +   switch (code)
> +     {
> +@@ -7829,6 +7835,8 @@ thumb1_size_rtx_costs (rtx x, enum rtx_code code, enum rtx_code outer)
> +     case ASHIFTRT:
> +     case LSHIFTRT:
> +     case ROTATERT:
> ++      return (mode == SImode) ? COSTS_N_INSNS (1) : COSTS_N_INSNS (2);
> ++
> +     case PLUS:
> +     case MINUS:
> +     case COMPARE:
> +@@ -7847,7 +7855,10 @@ thumb1_size_rtx_costs (rtx x, enum rtx_code code, enum rtx_code outer)
> +       return COSTS_N_INSNS (1);
> + 
> +     case SET:
> +-      return (COSTS_N_INSNS (1)
> ++      /* A SET doesn't have a mode, so let's look at the SET_DEST to get
> ++	 the mode.  */
> ++      words = ARM_NUM_INTS (GET_MODE_SIZE (GET_MODE (SET_DEST (x))));
> ++      return (COSTS_N_INSNS (words)
> +               + 4 * ((MEM_P (SET_SRC (x)))
> +                      + MEM_P (SET_DEST (x))));
> + 
> +-- 
> +1.8.2.1
> +
> -- 
> 1.8.2.1
> 

-- 
Martin 'JaMa' Jansa     jabber: Martin.Jansa@gmail.com

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 205 bytes --]

  reply	other threads:[~2013-06-11 22:35 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-06-11 21:57 [PATCH] gcc: Upgrade to 4.8.1 Khem Raj
2013-06-11 22:31 ` [RFC][PATCH] gcc-4.8: Backport fix for ICE triggered in pixman Martin Jansa
2013-06-11 22:35   ` Martin Jansa [this message]
2013-06-11 22:36     ` Khem Raj
2013-06-11 22:39     ` Khem Raj
2013-06-11 23:00       ` Martin Jansa
2013-06-11 23:16         ` Saul Wold
2013-06-13 17:12 ` [PATCH] gcc: Upgrade to 4.8.1 Saul Wold
2013-06-13 19:43   ` Khem Raj
2013-06-28 23:47 ` Jonathan Liu
2013-06-29  0:51   ` Khem Raj

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=20130611223524.GM3233@jama \
    --to=martin.jansa@gmail.com \
    --cc=openembedded-core@lists.openembedded.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