public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
From: Richard Sandiford <rdsandiford@googlemail.com>
To: "H.J. Lu" <hjl.tools@gmail.com>
Cc: gcc-patches@gcc.gnu.org
Subject: Re: PATCH: PR rtl-optimization/54157: [x32] -maddress-mode=long failures
Date: Wed, 01 Aug 2012 18:59:00 -0000	[thread overview]
Message-ID: <87a9ye1lsh.fsf@talisman.home> (raw)
In-Reply-To: <20120801184138.GA3787@intel.com> (H. J. Lu's message of "Wed, 1	Aug 2012 11:41:38 -0700")

"H.J. Lu" <hongjiu.lu@intel.com> writes:
> We have
>
> (gdb) r -fpreprocessed x.i -quiet -dumpbase x.i -mx32
> -maddress-mode=long -mtune=generic -march=x86-64 -auxbase x -O2 -version
> -ftree-vectorize -o x.s
> Starting program: /export/build/gnu/gcc-x32/build-x86_64-linux/gcc/cc1
> -fpreprocessed x.i -quiet -dumpbase x.i -mx32 -maddress-mode=long
> -mtune=generic -march=x86-64 -auxbase x -O2 -version -ftree-vectorize -o
> x.s
> GNU C (GCC) version 4.8.0 20120801 (experimental)
> (x86_64-unknown-linux-gnu)
> 	compiled by GNU C version 4.7.1 20120629 (Red Hat 4.7.1-1), GMP
> version 5.0.2, MPFR version 3.1.0, MPC version 0.9
> GGC heuristics: --param ggc-min-expand=30 --param ggc-min-heapsize=4096
> GNU C (GCC) version 4.8.0 20120801 (experimental)
> (x86_64-unknown-linux-gnu)
> 	compiled by GNU C version 4.7.1 20120629 (Red Hat 4.7.1-1), GMP
> version 5.0.2, MPFR version 3.1.0, MPC version 0.9
> GGC heuristics: --param ggc-min-expand=30 --param ggc-min-heapsize=4096
> Compiler executable checksum: 07a4e516c4e8fe4abfdafa83737d8f4a
>
> Breakpoint 1, fancy_abort (
>     file=0x130fe68 "/export/gnu/import/git/gcc/gcc/explow.c", line=88, 
>     function=0x131032e <__FUNCTION__.39220> "plus_constant")
>     at /export/gnu/import/git/gcc/gcc/diagnostic.c:1011
> 1011	  internal_error ("in %s, at %s:%d", function, trim_filename
> (file), line);
> (gdb) f 1
> #1  0x0000000000743e07 in plus_constant (mode=DImode, x=0x7ffff106a7e0, 
>     c=99452) at /export/gnu/import/git/gcc/gcc/explow.c:88
> 88	  gcc_assert (GET_MODE (x) == VOIDmode || GET_MODE (x) == mode);
> (gdb) f 2
> #2  0x0000000000adc4b1 in simplify_binary_operation_1 (code=PLUS,
> mode=DImode, 
>     op0=0x7ffff106a7e0, op1=0x7ffff1010e80, trueop0=0x7ffff106a7e0, 
>     trueop1=0x7ffff1010e80)
>     at /export/gnu/import/git/gcc/gcc/simplify-rtx.c:1956
> 1956		return plus_constant (mode, op0, INTVAL (op1));
> (gdb) call debug_rtx (op0)
> (symbol_ref:SI ("tmp2") <var_decl 0x7ffff0f06140 tmp2>)
> (gdb) call debug_rtx (op1)
> (const_int 99452 [0x1847c])
> (gdb) bt
> #0  fancy_abort (file=0x130fe68
> "/export/gnu/import/git/gcc/gcc/explow.c", 
>     line=88, function=0x131032e <__FUNCTION__.39220> "plus_constant")
>     at /export/gnu/import/git/gcc/gcc/diagnostic.c:1011
> #1  0x0000000000743e07 in plus_constant (mode=DImode, x=0x7ffff106a7e0, 
>     c=99452) at /export/gnu/import/git/gcc/gcc/explow.c:88
> #2  0x0000000000adc4b1 in simplify_binary_operation_1 (code=PLUS,
> mode=DImode, 
>     op0=0x7ffff106a7e0, op1=0x7ffff1010e80, trueop0=0x7ffff106a7e0, 
>     trueop1=0x7ffff1010e80)
>     at /export/gnu/import/git/gcc/gcc/simplify-rtx.c:1956
> #3  0x0000000000adc221 in simplify_binary_operation (code=PLUS,
> mode=DImode, 
>     op0=0x7ffff106a7e0, op1=0x7ffff1010e80)
>     at /export/gnu/import/git/gcc/gcc/simplify-rtx.c:1904

Things have already gone wrong by this frame: we have a DImode
addition of an SImode value, which isn't allowed.  Where does
that mismatch get introduced?

Richard

  reply	other threads:[~2012-08-01 18:59 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-08-01 18:41 H.J. Lu
2012-08-01 18:59 ` Richard Sandiford [this message]
2012-08-01 19:14   ` H.J. Lu
2012-08-02 18:21     ` H.J. Lu
2012-08-05  7:47       ` Richard Sandiford
2012-08-07 19:28         ` H.J. Lu
2012-08-08  8:09           ` Richard Sandiford
2012-08-08 13:40             ` H.J. Lu
2012-08-08 13:43               ` Uros Bizjak
2012-08-08 13:50                 ` H.J. Lu
2012-08-08 15:11                   ` Richard Sandiford
2012-08-09 14:51                     ` H.J. Lu

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=87a9ye1lsh.fsf@talisman.home \
    --to=rdsandiford@googlemail.com \
    --cc=gcc-patches@gcc.gnu.org \
    --cc=hjl.tools@gmail.com \
    /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).