public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug target/61737] New: ICE when building libgcc for cris cross-compiler
@ 2014-07-07 14:45 dhowells at redhat dot com
  2014-07-07 16:05 ` [Bug target/61737] " dhowells at redhat dot com
                   ` (21 more replies)
  0 siblings, 22 replies; 23+ messages in thread
From: dhowells at redhat dot com @ 2014-07-07 14:45 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61737

            Bug ID: 61737
           Summary: ICE when building libgcc for cris cross-compiler
           Product: gcc
           Version: 4.9.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: target
          Assignee: unassigned at gcc dot gnu.org
          Reporter: dhowells at redhat dot com

Created attachment 33082
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=33082&action=edit
Reduced preprocessed source that induces the error message

When trying to build a cross-compiler for cris with libgcc, I get the following
error and several others like it (make -j is in operation) during the compiler
build:

/data/fedora/cross-gcc/gcc-4.9.0-20140702/cris-linux-gnu/./gcc/xgcc
-B/data/fedora/cross-gcc/gcc-4.9.0-20140702/cris-linux-gnu/./gcc/
-B/usr/cris-linux-gnu/bin/ -B/usr/cris-linux-gnu/lib/ -isystem
/usr/cris-linux-gnu/include -isystem /usr/cris-linux-gnu/sys-include    -g -O2
-O2  -g -O2 -DIN_GCC  -DCROSS_DIRECTORY_STRUCTURE  -W -Wall -Wno-narrowing
-Wwrite-strings -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes
-Wold-style-definition  -isystem ./include   -fPIC -g -DIN_LIBGCC2
-fbuilding-libgcc -fno-stack-protector -Dinhibit_libc  -fPIC -I. -I.
-I../.././gcc -I../../../gcc-4.9.0-20140702/libgcc
-I../../../gcc-4.9.0-20140702/libgcc/.
-I../../../gcc-4.9.0-20140702/libgcc/../gcc
-I../../../gcc-4.9.0-20140702/libgcc/../include  -DHAVE_CC_TLS -DUSE_EMUTLS -o
_subvsi3.o -MT _subvsi3.o -MD -MP -MF _subvsi3.dep -DL_subvsi3 -c
../../../gcc-4.9.0-20140702/libgcc/libgcc2.c -fvisibility=hidden -DHIDE_EXPORTS
../../../gcc-4.9.0-20140702/libgcc/libgcc2.c: In function ‘__subvsi3’:
../../../gcc-4.9.0-20140702/libgcc/libgcc2.c:122:1: error: unrecognizable insn:
 }
 ^
(call_insn 27 26 28 7 (parallel [
            (call (mem:QI (symbol_ref:SI ("abort") [flags 0x41] <function_decl
0x7f5784e05d00 abort>) [0 __builtin_abort S1 A8])
                (const_int 0 [0]))
            (clobber (reg:SI 16 srp))
        ]) ../../../gcc-4.9.0-20140702/libgcc/libgcc2.c:119 -1
     (expr_list:REG_NORETURN (const_int 0 [0])
        (expr_list:REG_EH_REGION (const_int 0 [0])
            (nil)))
    (nil))
../../../gcc-4.9.0-20140702/libgcc/libgcc2.c:122:1: internal compiler error: in
extract_insn, at recog.c:2202
0x71c16a _fatal_insn(char const*, rtx_def const*, char const*, int, char
const*)
        ../../gcc-4.9.0-20140702/gcc/rtl-error.c:109
0x71c199 _fatal_insn_not_found(rtx_def const*, char const*, int, char const*)
        ../../gcc-4.9.0-20140702/gcc/rtl-error.c:117
0x6ee18a extract_insn(rtx_def*)
        ../../gcc-4.9.0-20140702/gcc/recog.c:2202
0x5d08d0 instantiate_virtual_regs_in_insn
        ../../gcc-4.9.0-20140702/gcc/function.c:1607
0x5d08d0 instantiate_virtual_regs
        ../../gcc-4.9.0-20140702/gcc/function.c:1925
0x5d08d0 execute
        ../../gcc-4.9.0-20140702/gcc/function.c:1975
Please submit a full bug report,
with preprocessed source if appropriate.
Please include the complete backtrace with any bug report.
See <http://bugzilla.redhat.com/bugzilla/> for instructions.
The bug is not reproducible, so it is likely a hardware or OS problem.


I'm also very intrigued by that last line - I can reproduce it quite easily.

Anyway, I've added a reduced libgcc2.i that causes the error to occur.  I don't
think it'll help because you need the intermediate-stage compiler binaries
also.

System gcc being used to build the cross-compiler:
Using built-in specs.
COLLECT_GCC=/usr/bin/gcc
COLLECT_LTO_WRAPPER=/usr/libexec/gcc/x86_64-redhat-linux/4.8.2/lto-wrapper
Target: x86_64-redhat-linux
Configured with: ../configure --prefix=/usr --mandir=/usr/share/man
--infodir=/usr/share/info --with-bugurl=http://bugzilla.redhat.com/bugzilla
--enable-bootstrap --enable-shared --enable-threads=posix
--enable-checking=release --with-system-zlib --enable-__cxa_atexit
--disable-libunwind-exceptions --enable-gnu-unique-object
--enable-linker-build-id --with-linker-hash-style=gnu
--enable-languages=c,c++,objc,obj-c++,java,fortran,ada,go,lto --enable-plugin
--enable-initfini-array --enable-java-awt=gtk --disable-dssi
--with-java-home=/usr/lib/jvm/java-1.5.0-gcj-1.5.0.0/jre
--enable-libgcj-multifile --enable-java-maintainer-mode
--with-ecj-jar=/usr/share/java/eclipse-ecj.jar --disable-libjava-multilib
--with-isl=/builddir/build/BUILD/gcc-4.8.2-20131212/obj-x86_64-redhat-linux/isl-install
--with-cloog=/builddir/build/BUILD/gcc-4.8.2-20131212/obj-x86_64-redhat-linux/cloog-install
--with-tune=generic --with-arch_32=i686 --build=x86_64-redhat-linux
Thread model: posix
gcc version 4.8.2 20131212 (Red Hat 4.8.2-7) (GCC)
>From gcc-bugs-return-455792-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org Mon Jul 07 15:14:56 2014
Return-Path: <gcc-bugs-return-455792-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org>
Delivered-To: listarch-gcc-bugs@gcc.gnu.org
Received: (qmail 32254 invoked by alias); 7 Jul 2014 15:14:55 -0000
Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm
Precedence: bulk
List-Id: <gcc-bugs.gcc.gnu.org>
List-Archive: <http://gcc.gnu.org/ml/gcc-bugs/>
List-Post: <mailto:gcc-bugs@gcc.gnu.org>
List-Help: <mailto:gcc-bugs-help@gcc.gnu.org>
Sender: gcc-bugs-owner@gcc.gnu.org
Delivered-To: mailing list gcc-bugs@gcc.gnu.org
Received: (qmail 31438 invoked by uid 48); 7 Jul 2014 15:14:43 -0000
From: "dhowells at redhat dot com" <gcc-bugzilla@gcc.gnu.org>
To: gcc-bugs@gcc.gnu.org
Subject: [Bug target/61737] ICE when building libgcc for cris cross-compiler
Date: Mon, 07 Jul 2014 15:14:00 -0000
X-Bugzilla-Reason: CC
X-Bugzilla-Type: changed
X-Bugzilla-Watch-Reason: None
X-Bugzilla-Product: gcc
X-Bugzilla-Component: target
X-Bugzilla-Version: 4.9.0
X-Bugzilla-Keywords:
X-Bugzilla-Severity: normal
X-Bugzilla-Who: dhowells at redhat dot com
X-Bugzilla-Status: UNCONFIRMED
X-Bugzilla-Priority: P3
X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org
X-Bugzilla-Target-Milestone: ---
X-Bugzilla-Flags:
X-Bugzilla-Changed-Fields:
Message-ID: <bug-61737-4-KFjI7h8bRL@http.gcc.gnu.org/bugzilla/>
In-Reply-To: <bug-61737-4@http.gcc.gnu.org/bugzilla/>
References: <bug-61737-4@http.gcc.gnu.org/bugzilla/>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 7bit
X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/
Auto-Submitted: auto-generated
MIME-Version: 1.0
X-SW-Source: 2014-07/txt/msg00383.txt.bz2
Content-length: 3366

https://gcc.gnu.org/bugzilla/show_bug.cgi?ida737

--- Comment #1 from dhowells at redhat dot com <dhowells at redhat dot com> ---
I needed the following change to gcc (courtesy of Nick Clifton) to get cris-gcc
to build at all, even without libgcc:

Index: gcc/config.gcc
==================================================================--- gcc/config.gcc
+++ gcc/config.gcc
@@ -1130,7 +1130,7 @@
 crisv32-*-linux* | cris-*-linux*)
     tm_file="dbxelf.h elfos.h ${tm_file} gnu-user.h linux.h glibc-stdint.h
cris/linux.h"
     # We need to avoid using t-linux, so override default tmake_file
-    tmake_file="cris/t-cris cris/t-linux t-slibgcc t-linux"
+    tmake_file="${tmake_file} cris/t-cris cris/t-linux t-slibgcc"
     extra_options="${extra_options} cris/linux.opt"
     case $target in
       cris-*-*)

This behaviour can be produced with the SVNREV 212237 (2014-07-02) gcc-4.9.0
compiler tarball plus one patch and then the following config:

AR_FOR_TARGET=/usr/bin/cris-linux-gnu-ar \
AS_FOR_TARGET=/usr/bin/cris-linux-gnu-as \
DLLTOOL_FOR_TARGET=/usr/bin/cris-linux-gnu-dlltool \
LD_FOR_TARGET=/usr/bin/cris-linux-gnu-ld \
NM_FOR_TARGET=/usr/bin/cris-linux-gnu-nm \
OBJDUMP_FOR_TARGET=/usr/bin/cris-linux-gnu-objdump \
RANLIB_FOR_TARGET=/usr/bin/cris-linux-gnu-ranlib \
STRIP_FOR_TARGET=/usr/bin/cris-linux-gnu-strip \
WINDRES_FOR_TARGET=/usr/bin/cris-linux-gnu-windres \
WINDMC_FOR_TARGET=/usr/bin/cris-linux-gnu-windmc \
LDFLAGS='-Wl,-z,relro ' \
../gcc-4.9.0-20140702/configure --bindir=/usr/bin
--build=x86_64-redhat-linux-gnu \
  --datadir=/usr/share --disable-decimal-float --disable-dependency-tracking \
  --disable-gold --disable-libgomp --disable-libmudflap --disable-libquadmath \
  --disable-libssp --disable-nls --disable-plugin --disable-shared \
  --disable-silent-rules --disable-sjlj-exceptions --disable-threads \
  --enable-checking= --enable-gnu-unique-object --enable-initfini-array \
  --enable-languages=c,c++ --enable-linker-build-id --enable-nls
--enable-obsolete \
  --enable-targets=all --exec-prefix=/usr --host=x86_64-redhat-linux-gnu \
  --includedir=/usr/include --infodir=/usr/share/info --libexecdir=/usr/libexec
\
  --localstatedir=/var --mandir=/usr/share/man --prefix=/usr \
  --program-prefix=cris-linux-gnu- --sbindir=/usr/sbin
--sharedstatedir=/var/lib \
  --sysconfdir=/etc --target=cris-linux-gnu \
  --with-bugurl=http://bugzilla.redhat.com/bugzilla/ \
  --with-linker-hash-style=gnu --with-newlib
--with-sysroot=/usr/cris-linux-gnu/sys-root \
  --with-system-libunwind --with-system-zlib --without-headers --without-isl \
  --without-cloog

The binutils is:
cris-linux-gnu-as -v
GNU assembler version 2.24.0 (cris-linux-gnu) using BFD version version
2.24.0-4.fc20 20140613

The compiler is built with:
AR_FOR_TARGET=/usr/bin/cris-linux-gnu-ar \
AS_FOR_TARGET=/usr/bin/cris-linux-gnu-as \
DLLTOOL_FOR_TARGET=/usr/bin/cris-linux-gnu-dlltool \
LD_FOR_TARGET=/usr/bin/cris-linux-gnu-ld \
NM_FOR_TARGET=/usr/bin/cris-linux-gnu-nm \
OBJDUMP_FOR_TARGET=/usr/bin/cris-linux-gnu-objdump \
RANLIB_FOR_TARGET=/usr/bin/cris-linux-gnu-ranlib \
STRIP_FOR_TARGET=/usr/bin/cris-linux-gnu-strip \
WINDRES_FOR_TARGET=/usr/bin/cris-linux-gnu-windres \
WINDMC_FOR_TARGET=/usr/bin/cris-linux-gnu-windmc \
make -C cris-linux-gnu tooldir=/usr all-gcc

libgcc is built with:
make -C cris-linux-gnu tooldir=/usr all-target-libgcc


^ permalink raw reply	[flat|nested] 23+ messages in thread

* [Bug target/61737] ICE when building libgcc for cris cross-compiler
  2014-07-07 14:45 [Bug target/61737] New: ICE when building libgcc for cris cross-compiler dhowells at redhat dot com
@ 2014-07-07 16:05 ` dhowells at redhat dot com
  2014-07-14 19:08 ` hp at gcc dot gnu.org
                   ` (20 subsequent siblings)
  21 siblings, 0 replies; 23+ messages in thread
From: dhowells at redhat dot com @ 2014-07-07 16:05 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61737

--- Comment #2 from dhowells at redhat dot com <dhowells at redhat dot com> ---
This also appears to occur for --target=sh64-linux on an unpatched gcc tree.


^ permalink raw reply	[flat|nested] 23+ messages in thread

* [Bug target/61737] ICE when building libgcc for cris cross-compiler
  2014-07-07 14:45 [Bug target/61737] New: ICE when building libgcc for cris cross-compiler dhowells at redhat dot com
  2014-07-07 16:05 ` [Bug target/61737] " dhowells at redhat dot com
@ 2014-07-14 19:08 ` hp at gcc dot gnu.org
  2014-07-14 19:26 ` hp at gcc dot gnu.org
                   ` (19 subsequent siblings)
  21 siblings, 0 replies; 23+ messages in thread
From: hp at gcc dot gnu.org @ 2014-07-14 19:08 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61737

Hans-Peter Nilsson <hp at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |hp at gcc dot gnu.org

--- Comment #3 from Hans-Peter Nilsson <hp at gcc dot gnu.org> ---
(In reply to dhowells@redhat.com from comment #1)

Thanks for reporting, I'll take this.  (I don't autotest cris-linux not
crisv32-linux; they aren't in general use anymore.)

> I needed the following change to gcc (courtesy of Nick Clifton) to get
> cris-gcc to build at all, even without libgcc:
> 
> Index: gcc/config.gcc
> ===================================================================
> --- gcc/config.gcc
> +++ gcc/config.gcc
> @@ -1130,7 +1130,7 @@
>  crisv32-*-linux* | cris-*-linux*)
>  	tm_file="dbxelf.h elfos.h ${tm_file} gnu-user.h linux.h glibc-stdint.h
> cris/linux.h"
>  	# We need to avoid using t-linux, so override default tmake_file
> -	tmake_file="cris/t-cris cris/t-linux t-slibgcc t-linux"
> +	tmake_file="${tmake_file} cris/t-cris cris/t-linux t-slibgcc"
>  	extra_options="${extra_options} cris/linux.opt"
>  	case $target in
>  	  cris-*-*)

Obvious breakages (for obvious reasons with obvious correct results) is covered
by the obviousness rule and thus free to commit for anyone (including you).

In fact, this typo (missing prepending of ${tmake_file}), supposedly introduced
at the time of some general config-revision, is shared with several targets.

JFTR:

> This behaviour can be produced with the SVNREV 212237 (2014-07-02) gcc-4.9.0
> compiler tarball plus one patch and then the following config:
[...]

No need for specific options besides --target nor special paths given target
binutils in the PATH; you should set that instead.  (Sadly, "no specific
options" with the exception of sysroot / build-sysroot options unless hoops are
jumped through, but I hope to fix that one day for all cross-targets.)  Also, a
multitude of options like this magnitude is a red flag.  (Your cross-build
setup is flawed, but I doubt that's the root of the build problem.)

> Anyway, I've added a reduced libgcc2.i that causes the error to occur.

Thanks.

>  I don't think it'll help because you need the intermediate-stage compiler binaries also.

Incorrect.  This is a *cross-compiler*.  Even if it was a native build, failing
building the first stage libgcc build makes the stageness issue moot. :)

> libgcc is built with:
> make -C cris-linux-gnu tooldir=/usr all-target-libgcc

I'd expect "make all-target-libgcc" to Just Work.
>From gcc-bugs-return-456321-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org Mon Jul 14 19:10:15 2014
Return-Path: <gcc-bugs-return-456321-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org>
Delivered-To: listarch-gcc-bugs@gcc.gnu.org
Received: (qmail 29372 invoked by alias); 14 Jul 2014 19:10:15 -0000
Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm
Precedence: bulk
List-Id: <gcc-bugs.gcc.gnu.org>
List-Archive: <http://gcc.gnu.org/ml/gcc-bugs/>
List-Post: <mailto:gcc-bugs@gcc.gnu.org>
List-Help: <mailto:gcc-bugs-help@gcc.gnu.org>
Sender: gcc-bugs-owner@gcc.gnu.org
Delivered-To: mailing list gcc-bugs@gcc.gnu.org
Received: (qmail 29248 invoked by uid 55); 14 Jul 2014 19:10:11 -0000
From: "rguenther at suse dot de" <gcc-bugzilla@gcc.gnu.org>
To: gcc-bugs@gcc.gnu.org
Subject: [Bug tree-optimization/61757] [4.10 Regression] genmodes failure with enable-checking
Date: Mon, 14 Jul 2014 19:10:00 -0000
X-Bugzilla-Reason: CC
X-Bugzilla-Type: changed
X-Bugzilla-Watch-Reason: None
X-Bugzilla-Product: gcc
X-Bugzilla-Component: tree-optimization
X-Bugzilla-Version: 4.10.0
X-Bugzilla-Keywords: build
X-Bugzilla-Severity: normal
X-Bugzilla-Who: rguenther at suse dot de
X-Bugzilla-Status: RESOLVED
X-Bugzilla-Priority: P1
X-Bugzilla-Assigned-To: rguenth at gcc dot gnu.org
X-Bugzilla-Target-Milestone: 4.10.0
X-Bugzilla-Flags:
X-Bugzilla-Changed-Fields:
Message-ID: <bug-61757-4-7k0GSnnX43@http.gcc.gnu.org/bugzilla/>
In-Reply-To: <bug-61757-4@http.gcc.gnu.org/bugzilla/>
References: <bug-61757-4@http.gcc.gnu.org/bugzilla/>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 7bit
X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/
Auto-Submitted: auto-generated
MIME-Version: 1.0
X-SW-Source: 2014-07/txt/msg00912.txt.bz2
Content-length: 1186

https://gcc.gnu.org/bugzilla/show_bug.cgi?ida757

--- Comment #31 from rguenther at suse dot de <rguenther at suse dot de> ---
On July 14, 2014 8:57:31 PM CEST, law at redhat dot com
<gcc-bugzilla@gcc.gnu.org> wrote:
>https://gcc.gnu.org/bugzilla/show_bug.cgi?ida757
>
>Jeffrey A. Law <law at redhat dot com> changed:
>
>           What    |Removed                     |Added
>----------------------------------------------------------------------------
>                 CC|                            |law at redhat dot com
>
>--- Comment #30 from Jeffrey A. Law <law at redhat dot com> ---
>Richi -- in response to your question in c#26.  I'll be looking at a
>handful of
>DOM issues while in transit to the Cauldron.  That'll include another
>evaluation of whether or not we want to thread across back edges at
>all.
>
>Invalidation of equivalences after traversing a backedge has been
>extremely
>problematical and I really question it's value in the real world.

For the case that triggered the miscompile it was useful. BTW, we do have
exactly all information necessary to invalidate with the dom walker unwind
stack. It just needs to be made somewhat more accessible, no?


^ permalink raw reply	[flat|nested] 23+ messages in thread

* [Bug target/61737] ICE when building libgcc for cris cross-compiler
  2014-07-07 14:45 [Bug target/61737] New: ICE when building libgcc for cris cross-compiler dhowells at redhat dot com
  2014-07-07 16:05 ` [Bug target/61737] " dhowells at redhat dot com
  2014-07-14 19:08 ` hp at gcc dot gnu.org
@ 2014-07-14 19:26 ` hp at gcc dot gnu.org
  2014-07-15  0:40 ` hp at gcc dot gnu.org
                   ` (18 subsequent siblings)
  21 siblings, 0 replies; 23+ messages in thread
From: hp at gcc dot gnu.org @ 2014-07-14 19:26 UTC (permalink / raw)
  To: gcc-bugs

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain; charset="UTF-8", Size: 6690 bytes --]

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61737

--- Comment #4 from Hans-Peter Nilsson <hp at gcc dot gnu.org> ---
(In reply to Hans-Peter Nilsson from comment #3)
> (In reply to dhowells@redhat.com from comment #1)

> > Index: gcc/config.gcc
> > ===================================================================
> > --- gcc/config.gcc
> > +++ gcc/config.gcc
> > @@ -1130,7 +1130,7 @@
> >  crisv32-*-linux* | cris-*-linux*)
> >  	tm_file="dbxelf.h elfos.h ${tm_file} gnu-user.h linux.h glibc-stdint.h
> > cris/linux.h"
> >  	# We need to avoid using t-linux, so override default tmake_file
> > -	tmake_file="cris/t-cris cris/t-linux t-slibgcc t-linux"
> > +	tmake_file="${tmake_file} cris/t-cris cris/t-linux t-slibgcc"

> Obvious breakages (for obvious reasons with obvious correct results) is
> covered by the obviousness rule and thus free to commit for anyone
> (including you).

Except it's only obvious in the absence of a comment "explaining" the
exception.  Doh!  So, there's another issue and that patch is incorrect (do
*not* apply it).  Also, I don't remember what aspects of t-linux needs
avoiding.  Looking into it...
>From gcc-bugs-return-456324-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org Mon Jul 14 19:37:09 2014
Return-Path: <gcc-bugs-return-456324-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org>
Delivered-To: listarch-gcc-bugs@gcc.gnu.org
Received: (qmail 9520 invoked by alias); 14 Jul 2014 19:37:08 -0000
Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm
Precedence: bulk
List-Id: <gcc-bugs.gcc.gnu.org>
List-Archive: <http://gcc.gnu.org/ml/gcc-bugs/>
List-Post: <mailto:gcc-bugs@gcc.gnu.org>
List-Help: <mailto:gcc-bugs-help@gcc.gnu.org>
Sender: gcc-bugs-owner@gcc.gnu.org
Delivered-To: mailing list gcc-bugs@gcc.gnu.org
Received: (qmail 9388 invoked by uid 48); 14 Jul 2014 19:37:02 -0000
From: "ubizjak at gmail dot com" <gcc-bugzilla@gcc.gnu.org>
To: gcc-bugs@gcc.gnu.org
Subject: [Bug target/61794] internal error: unrecognizable insn, from avx512 extract instruction
Date: Mon, 14 Jul 2014 19:37:00 -0000
X-Bugzilla-Reason: CC
X-Bugzilla-Type: changed
X-Bugzilla-Watch-Reason: None
X-Bugzilla-Product: gcc
X-Bugzilla-Component: target
X-Bugzilla-Version: 4.10.0
X-Bugzilla-Keywords:
X-Bugzilla-Severity: normal
X-Bugzilla-Who: ubizjak at gmail dot com
X-Bugzilla-Status: NEW
X-Bugzilla-Priority: P3
X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org
X-Bugzilla-Target-Milestone: 4.10.0
X-Bugzilla-Flags:
X-Bugzilla-Changed-Fields: bug_status cf_reconfirmed_on cc target_milestone everconfirmed bug_severity
Message-ID: <bug-61794-4-niz1DB5PFP@http.gcc.gnu.org/bugzilla/>
In-Reply-To: <bug-61794-4@http.gcc.gnu.org/bugzilla/>
References: <bug-61794-4@http.gcc.gnu.org/bugzilla/>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/
Auto-Submitted: auto-generated
MIME-Version: 1.0
X-SW-Source: 2014-07/txt/msg00915.txt.bz2
Content-length: 683

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61794

Uroš Bizjak <ubizjak at gmail dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
   Last reconfirmed|                            |2014-07-14
                 CC|                            |kyukhin at gcc dot gnu.org
   Target Milestone|---                         |4.10.0
     Ever confirmed|0                           |1
           Severity|major                       |normal

--- Comment #1 from Uroš Bizjak <ubizjak at gmail dot com> ---
Confirmed, adding CC.
>From gcc-bugs-return-456325-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org Mon Jul 14 19:47:28 2014
Return-Path: <gcc-bugs-return-456325-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org>
Delivered-To: listarch-gcc-bugs@gcc.gnu.org
Received: (qmail 26528 invoked by alias); 14 Jul 2014 19:47:27 -0000
Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm
Precedence: bulk
List-Id: <gcc-bugs.gcc.gnu.org>
List-Archive: <http://gcc.gnu.org/ml/gcc-bugs/>
List-Post: <mailto:gcc-bugs@gcc.gnu.org>
List-Help: <mailto:gcc-bugs-help@gcc.gnu.org>
Sender: gcc-bugs-owner@gcc.gnu.org
Delivered-To: mailing list gcc-bugs@gcc.gnu.org
Received: (qmail 26332 invoked by uid 48); 14 Jul 2014 19:47:13 -0000
From: "dominiq at lps dot ens.fr" <gcc-bugzilla@gcc.gnu.org>
To: gcc-bugs@gcc.gnu.org
Subject: [Bug fortran/61632] Memory corruption on error when writing formatted data
Date: Mon, 14 Jul 2014 19:47:00 -0000
X-Bugzilla-Reason: CC
X-Bugzilla-Type: changed
X-Bugzilla-Watch-Reason: None
X-Bugzilla-Product: gcc
X-Bugzilla-Component: fortran
X-Bugzilla-Version: 4.8.2
X-Bugzilla-Keywords:
X-Bugzilla-Severity: normal
X-Bugzilla-Who: dominiq at lps dot ens.fr
X-Bugzilla-Status: NEW
X-Bugzilla-Priority: P3
X-Bugzilla-Assigned-To: jvdelisle at gcc dot gnu.org
X-Bugzilla-Target-Milestone: ---
X-Bugzilla-Flags:
X-Bugzilla-Changed-Fields:
Message-ID: <bug-61632-4-iKNld5wgY0@http.gcc.gnu.org/bugzilla/>
In-Reply-To: <bug-61632-4@http.gcc.gnu.org/bugzilla/>
References: <bug-61632-4@http.gcc.gnu.org/bugzilla/>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 7bit
X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/
Auto-Submitted: auto-generated
MIME-Version: 1.0
X-SW-Source: 2014-07/txt/msg00916.txt.bz2
Content-length: 1163

https://gcc.gnu.org/bugzilla/show_bug.cgi?ida632

--- Comment #12 from Dominique d'Humieres <dominiq at lps dot ens.fr> ---
A little bit less clumsy

   if (f != NULL)
-    fmt->format_string = f->source;
+    fmt->format_string_len = strrchr (f->source, ')') - f->source + 1;

I don't understand why

+    fmt->format_string_len = strchr (f->source, '\0') - f->source;

is not working. With the following "instrumentation"

  if (f != NULL)
    {
    fmt->format_string_len = strrchr (f->source, ')') - f->source + 1;
      if (strchr (f->source, '\0')-strrchr (f->source, ')')>1)
        printf("pos 0 =%x, pos ) =%x\n",strchr (f->source, '\0'),strrchr
(f->source, ')'));
    }

I get

pos 0 Âc048c0, pos ) Âc048b1
At line 8 of file pr61632_1_db_5.f90 (unit = 6, file = 'stdout')
Fortran runtime error: Expected REAL for item 2 in formatted transfer, got
CHARACTER
(A3,1PE13.5,2(A3))
      ^

for

      program p
      call ss()
      end program p
      subroutine ss
      CHARACTER(3), save :: ZTYP(4)
      DATA ZTYP /'WWW','XXX','YYY','ZZZ'/
      write(*,600) 'AAA','BBB',0.0,ZTYP
 600  FORMAT(A3,1PE13.5,2(A3))
      end subroutine ss

Any idea?


^ permalink raw reply	[flat|nested] 23+ messages in thread

* [Bug target/61737] ICE when building libgcc for cris cross-compiler
  2014-07-07 14:45 [Bug target/61737] New: ICE when building libgcc for cris cross-compiler dhowells at redhat dot com
                   ` (2 preceding siblings ...)
  2014-07-14 19:26 ` hp at gcc dot gnu.org
@ 2014-07-15  0:40 ` hp at gcc dot gnu.org
  2014-07-15  0:43 ` hp at gcc dot gnu.org
                   ` (17 subsequent siblings)
  21 siblings, 0 replies; 23+ messages in thread
From: hp at gcc dot gnu.org @ 2014-07-15  0:40 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61737

Hans-Peter Nilsson <hp at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Last reconfirmed|                            |2014-7-15

--- Comment #5 from Hans-Peter Nilsson <hp at gcc dot gnu.org> ---
Confirmed the observation at r212508, with the patch in the attachment in the
next comment.


^ permalink raw reply	[flat|nested] 23+ messages in thread

* [Bug target/61737] ICE when building libgcc for cris cross-compiler
  2014-07-07 14:45 [Bug target/61737] New: ICE when building libgcc for cris cross-compiler dhowells at redhat dot com
                   ` (3 preceding siblings ...)
  2014-07-15  0:40 ` hp at gcc dot gnu.org
@ 2014-07-15  0:43 ` hp at gcc dot gnu.org
  2014-07-15  0:44 ` hp at gcc dot gnu.org
                   ` (16 subsequent siblings)
  21 siblings, 0 replies; 23+ messages in thread
From: hp at gcc dot gnu.org @ 2014-07-15  0:43 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61737

--- Comment #6 from Hans-Peter Nilsson <hp at gcc dot gnu.org> ---
Created attachment 33121
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=33121&action=edit
Patch to config.gcc

Correct patch to config.gcc required to actually build the compiler proper.


^ permalink raw reply	[flat|nested] 23+ messages in thread

* [Bug target/61737] ICE when building libgcc for cris cross-compiler
  2014-07-07 14:45 [Bug target/61737] New: ICE when building libgcc for cris cross-compiler dhowells at redhat dot com
                   ` (4 preceding siblings ...)
  2014-07-15  0:43 ` hp at gcc dot gnu.org
@ 2014-07-15  0:44 ` hp at gcc dot gnu.org
  2014-07-15  0:58 ` hp at gcc dot gnu.org
                   ` (15 subsequent siblings)
  21 siblings, 0 replies; 23+ messages in thread
From: hp at gcc dot gnu.org @ 2014-07-15  0:44 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61737

Hans-Peter Nilsson <hp at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
     Ever confirmed|0                           |1


^ permalink raw reply	[flat|nested] 23+ messages in thread

* [Bug target/61737] ICE when building libgcc for cris cross-compiler
  2014-07-07 14:45 [Bug target/61737] New: ICE when building libgcc for cris cross-compiler dhowells at redhat dot com
                   ` (5 preceding siblings ...)
  2014-07-15  0:44 ` hp at gcc dot gnu.org
@ 2014-07-15  0:58 ` hp at gcc dot gnu.org
  2014-07-15  2:48 ` hp at gcc dot gnu.org
                   ` (14 subsequent siblings)
  21 siblings, 0 replies; 23+ messages in thread
From: hp at gcc dot gnu.org @ 2014-07-15  0:58 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61737

--- Comment #7 from Hans-Peter Nilsson <hp at gcc dot gnu.org> ---
(In reply to dhowells@redhat.com from comment #0)

BTW,

> Please submit a full bug report,
> with preprocessed source if appropriate.
> Please include the complete backtrace with any bug report.
> See <http://bugzilla.redhat.com/bugzilla/> for instructions.
> The bug is not reproducible, so it is likely a hardware or OS problem.
> 
> 
> I'm also very intrigued by that last line - I can reproduce it quite easily.

This is a RH local patch in your host gcc (by Jakub, IIRC) to help users
re-running the actual ICEing command adding -save-temps.  I'm guessing it has a
bug and accidentally drops some option required to reproduce the ICE...


^ permalink raw reply	[flat|nested] 23+ messages in thread

* [Bug target/61737] ICE when building libgcc for cris cross-compiler
  2014-07-07 14:45 [Bug target/61737] New: ICE when building libgcc for cris cross-compiler dhowells at redhat dot com
                   ` (6 preceding siblings ...)
  2014-07-15  0:58 ` hp at gcc dot gnu.org
@ 2014-07-15  2:48 ` hp at gcc dot gnu.org
  2014-07-15  3:07 ` hp at gcc dot gnu.org
                   ` (13 subsequent siblings)
  21 siblings, 0 replies; 23+ messages in thread
From: hp at gcc dot gnu.org @ 2014-07-15  2:48 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61737

--- Comment #8 from Hans-Peter Nilsson <hp at gcc dot gnu.org> ---
(In reply to dhowells@redhat.com from comment #0)
> ../../../gcc-4.9.0-20140702/libgcc/libgcc2.c: In function ‘__subvsi3’:
> ../../../gcc-4.9.0-20140702/libgcc/libgcc2.c:122:1: error: unrecognizable
> insn:
>  }
>  ^
> (call_insn 27 26 28 7 (parallel [
>             (call (mem:QI (symbol_ref:SI ("abort") [flags 0x41]
> <function_decl 0x7f5784e05d00 abort>) [0 __builtin_abort S1 A8])


This symbol_ref must be wrapped inside a CONST by the middle-end.
Something changed such that that doesn't happen anymore; that's the bug.
Unless this was a deliberate general change in representation, which I doubt.
Still investigating...
>From gcc-bugs-return-456340-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org Tue Jul 15 02:48:46 2014
Return-Path: <gcc-bugs-return-456340-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org>
Delivered-To: listarch-gcc-bugs@gcc.gnu.org
Received: (qmail 9172 invoked by alias); 15 Jul 2014 02:48:40 -0000
Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm
Precedence: bulk
List-Id: <gcc-bugs.gcc.gnu.org>
List-Archive: <http://gcc.gnu.org/ml/gcc-bugs/>
List-Post: <mailto:gcc-bugs@gcc.gnu.org>
List-Help: <mailto:gcc-bugs-help@gcc.gnu.org>
Sender: gcc-bugs-owner@gcc.gnu.org
Delivered-To: mailing list gcc-bugs@gcc.gnu.org
Received: (qmail 9002 invoked by uid 48); 15 Jul 2014 02:48:25 -0000
From: "jvdelisle at gcc dot gnu.org" <gcc-bugzilla@gcc.gnu.org>
To: gcc-bugs@gcc.gnu.org
Subject: [Bug fortran/61632] Memory corruption on error when writing formatted data
Date: Tue, 15 Jul 2014 02:48:00 -0000
X-Bugzilla-Reason: CC
X-Bugzilla-Type: changed
X-Bugzilla-Watch-Reason: None
X-Bugzilla-Product: gcc
X-Bugzilla-Component: fortran
X-Bugzilla-Version: 4.8.2
X-Bugzilla-Keywords:
X-Bugzilla-Severity: normal
X-Bugzilla-Who: jvdelisle at gcc dot gnu.org
X-Bugzilla-Status: NEW
X-Bugzilla-Priority: P3
X-Bugzilla-Assigned-To: jvdelisle at gcc dot gnu.org
X-Bugzilla-Target-Milestone: ---
X-Bugzilla-Flags:
X-Bugzilla-Changed-Fields:
Message-ID: <bug-61632-4-lNKGUtzNVV@http.gcc.gnu.org/bugzilla/>
In-Reply-To: <bug-61632-4@http.gcc.gnu.org/bugzilla/>
References: <bug-61632-4@http.gcc.gnu.org/bugzilla/>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 7bit
X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/
Auto-Submitted: auto-generated
MIME-Version: 1.0
X-SW-Source: 2014-07/txt/msg00931.txt.bz2
Content-length: 625

https://gcc.gnu.org/bugzilla/show_bug.cgi?ida632

--- Comment #14 from Jerry DeLisle <jvdelisle at gcc dot gnu.org> ---

(In reply to Dominique d'Humieres from comment #10)

--- snip ---
>
> Is the printing of 'YYY' supposed to happen?

Its sort of like Steve said earlier.  The coder is choosing to ignore an error
condition so anything gfortran does is valid.  In this case the output got
wriiten to buffer before the error occurred.  You are bypassing all of the
normal error handling when you do this. The buffer got flushed.

Its not worth the time to change any of it really.

The program should exit, its invalid.


^ permalink raw reply	[flat|nested] 23+ messages in thread

* [Bug target/61737] ICE when building libgcc for cris cross-compiler
  2014-07-07 14:45 [Bug target/61737] New: ICE when building libgcc for cris cross-compiler dhowells at redhat dot com
                   ` (7 preceding siblings ...)
  2014-07-15  2:48 ` hp at gcc dot gnu.org
@ 2014-07-15  3:07 ` hp at gcc dot gnu.org
  2014-07-15  9:19 ` dhowells at redhat dot com
                   ` (12 subsequent siblings)
  21 siblings, 0 replies; 23+ messages in thread
From: hp at gcc dot gnu.org @ 2014-07-15  3:07 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61737

--- Comment #9 from Hans-Peter Nilsson <hp at gcc dot gnu.org> ---
(In reply to Hans-Peter Nilsson from comment #8)
> This symbol_ref must be wrapped inside a CONST by the middle-end.

Uh, strike that, I'm hallucinating.


^ permalink raw reply	[flat|nested] 23+ messages in thread

* [Bug target/61737] ICE when building libgcc for cris cross-compiler
  2014-07-07 14:45 [Bug target/61737] New: ICE when building libgcc for cris cross-compiler dhowells at redhat dot com
                   ` (8 preceding siblings ...)
  2014-07-15  3:07 ` hp at gcc dot gnu.org
@ 2014-07-15  9:19 ` dhowells at redhat dot com
  2014-07-15  9:34 ` dhowells at redhat dot com
                   ` (11 subsequent siblings)
  21 siblings, 0 replies; 23+ messages in thread
From: dhowells at redhat dot com @ 2014-07-15  9:19 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61737

--- Comment #10 from dhowells at redhat dot com <dhowells at redhat dot com> ---
(In reply to Hans-Peter Nilsson from comment #7)
> (In reply to dhowells@redhat.com from comment #0)
> > I'm also very intrigued by that last line - I can reproduce it quite easily.
> 
> This is a RH local patch in your host gcc (by Jakub, IIRC) to help users
> re-running the actual ICEing command adding -save-temps.  I'm guessing it
> has a bug and accidentally drops some option required to reproduce the ICE...

It's in the gcc-4.9.0-20140702 tarball.


^ permalink raw reply	[flat|nested] 23+ messages in thread

* [Bug target/61737] ICE when building libgcc for cris cross-compiler
  2014-07-07 14:45 [Bug target/61737] New: ICE when building libgcc for cris cross-compiler dhowells at redhat dot com
                   ` (9 preceding siblings ...)
  2014-07-15  9:19 ` dhowells at redhat dot com
@ 2014-07-15  9:34 ` dhowells at redhat dot com
  2014-07-15  9:36 ` dhowells at redhat dot com
                   ` (10 subsequent siblings)
  21 siblings, 0 replies; 23+ messages in thread
From: dhowells at redhat dot com @ 2014-07-15  9:34 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61737

--- Comment #11 from dhowells at redhat dot com <dhowells at redhat dot com> ---
(In reply to Hans-Peter Nilsson from comment #3)
> > libgcc is built with:
> > make -C cris-linux-gnu tooldir=/usr all-target-libgcc
> 
> I'd expect "make all-target-libgcc" to Just Work.

So would I.  However, it doesn't work for all arches that the SRPM builds a
cross-compiler for.  I need the compiler to build the kernel, but not normally
libgcc, however, I've been asked to build libgcc if I can.  The arches for
which I can't build libgcc include: cris, sh, sh64 and tile.


^ permalink raw reply	[flat|nested] 23+ messages in thread

* [Bug target/61737] ICE when building libgcc for cris cross-compiler
  2014-07-07 14:45 [Bug target/61737] New: ICE when building libgcc for cris cross-compiler dhowells at redhat dot com
                   ` (10 preceding siblings ...)
  2014-07-15  9:34 ` dhowells at redhat dot com
@ 2014-07-15  9:36 ` dhowells at redhat dot com
  2014-07-15 14:42 ` hp at gcc dot gnu.org
                   ` (9 subsequent siblings)
  21 siblings, 0 replies; 23+ messages in thread
From: dhowells at redhat dot com @ 2014-07-15  9:36 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61737

--- Comment #12 from dhowells at redhat dot com <dhowells at redhat dot com> ---
(In reply to Hans-Peter Nilsson from comment #6)
> Created attachment 33121 [details]
> Patch to config.gcc
> 
> Correct patch to config.gcc required to actually build the compiler proper.

Okay, I've tried that.  I can't see that it makes any obvious difference.  Is
there something I should look for?


^ permalink raw reply	[flat|nested] 23+ messages in thread

* [Bug target/61737] ICE when building libgcc for cris cross-compiler
  2014-07-07 14:45 [Bug target/61737] New: ICE when building libgcc for cris cross-compiler dhowells at redhat dot com
                   ` (11 preceding siblings ...)
  2014-07-15  9:36 ` dhowells at redhat dot com
@ 2014-07-15 14:42 ` hp at gcc dot gnu.org
  2014-07-15 14:44 ` hp at gcc dot gnu.org
                   ` (8 subsequent siblings)
  21 siblings, 0 replies; 23+ messages in thread
From: hp at gcc dot gnu.org @ 2014-07-15 14:42 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61737

--- Comment #13 from Hans-Peter Nilsson <hp at gcc dot gnu.org> ---
(In reply to dhowells@redhat.com from comment #12)
> (In reply to Hans-Peter Nilsson from comment #6)
> > Created attachment 33121 [details]
> > Patch to config.gcc
> > 
> > Correct patch to config.gcc required to actually build the compiler proper.
> 
> Okay, I've tried that.  I can't see that it makes any obvious difference. 
> Is there something I should look for?

Oh, it wasn't meant as a fix to the problem at hand, just a replacement for the
prerequisite patch.  The differences to *that* one is that the duplicate
t-slibgcc t-linux are removed and the comment too, after checking why I had it;
likely a libgcc-related issue with headers (and so moot after the libgcc split
years ago).


^ permalink raw reply	[flat|nested] 23+ messages in thread

* [Bug target/61737] ICE when building libgcc for cris cross-compiler
  2014-07-07 14:45 [Bug target/61737] New: ICE when building libgcc for cris cross-compiler dhowells at redhat dot com
                   ` (12 preceding siblings ...)
  2014-07-15 14:42 ` hp at gcc dot gnu.org
@ 2014-07-15 14:44 ` hp at gcc dot gnu.org
  2014-07-15 14:58 ` dhowells at redhat dot com
                   ` (7 subsequent siblings)
  21 siblings, 0 replies; 23+ messages in thread
From: hp at gcc dot gnu.org @ 2014-07-15 14:44 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61737

--- Comment #14 from Hans-Peter Nilsson <hp at gcc dot gnu.org> ---
(In reply to dhowells@redhat.com from comment #10)
> (In reply to Hans-Peter Nilsson from comment #7)
> > (In reply to dhowells@redhat.com from comment #0)
> > > I'm also very intrigued by that last line - I can reproduce it quite easily.
> > 
> > This is a RH local patch in your host gcc (by Jakub, IIRC) to help users
> > re-running the actual ICEing command adding -save-temps.  I'm guessing it
> > has a bug and accidentally drops some option required to reproduce the ICE...
> 
> It's in the gcc-4.9.0-20140702 tarball.

Oh it finally made into the FSF repo, good!
Could you please consider open a separate PR for the "is not reproducible"
misdisagnosis?


^ permalink raw reply	[flat|nested] 23+ messages in thread

* [Bug target/61737] ICE when building libgcc for cris cross-compiler
  2014-07-07 14:45 [Bug target/61737] New: ICE when building libgcc for cris cross-compiler dhowells at redhat dot com
                   ` (13 preceding siblings ...)
  2014-07-15 14:44 ` hp at gcc dot gnu.org
@ 2014-07-15 14:58 ` dhowells at redhat dot com
  2014-07-17  2:05 ` hp at gcc dot gnu.org
                   ` (6 subsequent siblings)
  21 siblings, 0 replies; 23+ messages in thread
From: dhowells at redhat dot com @ 2014-07-15 14:58 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61737

--- Comment #15 from dhowells at redhat dot com <dhowells at redhat dot com> ---
(In reply to Hans-Peter Nilsson from comment #14)
> Could you please consider open a separate PR for the "is not reproducible"
> misdisagnosis?

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61812


^ permalink raw reply	[flat|nested] 23+ messages in thread

* [Bug target/61737] ICE when building libgcc for cris cross-compiler
  2014-07-07 14:45 [Bug target/61737] New: ICE when building libgcc for cris cross-compiler dhowells at redhat dot com
                   ` (14 preceding siblings ...)
  2014-07-15 14:58 ` dhowells at redhat dot com
@ 2014-07-17  2:05 ` hp at gcc dot gnu.org
  2014-07-17  3:54 ` hp at gcc dot gnu.org
                   ` (5 subsequent siblings)
  21 siblings, 0 replies; 23+ messages in thread
From: hp at gcc dot gnu.org @ 2014-07-17  2:05 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61737

--- Comment #16 from Hans-Peter Nilsson <hp at gcc dot gnu.org> ---
Author: hp
Date: Thu Jul 17 02:03:52 2014
New Revision: 212708

URL: https://gcc.gnu.org/viewcvs?rev=212708&root=gcc&view=rev
Log:
    PR target/61737.
    * config/cris/cris.c (TARGET_LEGITIMATE_CONSTANT_P)
    (TARGET_CANNOT_FORCE_CONST_MEM): Define.
    (cris_cannot_force_const_mem, cris_legitimate_constant_p): New
    functions.
    (cris_print_index, cris_print_operand, cris_constant_index_p)
    (cris_side_effect_mode_ok): Replace CONSTANT_P with CRIS_CONSTANT_P.
    (cris_address_cost): Ditto last CONSTANT_P.
    (cris_symbol_type_of): Rename from cris_pic_symbol_type_of.  All
        callers changed.  Yield cris_offsettable_symbol for non-PIC
        constant symbolic expressions including labels.  Yield cris_unspec
    for all unspecs.
    (cris_expand_pic_call_address): New parameter MARKERP.  Set its
        target to pic_offset_table_rtx for calls that will likely go
        through PLT, const0_rtx when they can't.  All callers changed.
    Assert flag_pic.  Use CONSTANT_P, not CONSTANT_ADDRESS_P, for
    symbolic expressions to be PICified.  Remove second, redundant,
    assert on can_create_pseudo_p returning non-zero.  Use
    replace_equiv_address_nv, not replace_equiv_address, for final
    operand update.
    * config/cris/cris.md ("movsi"): Move variable t to pattern
    toplevel. Adjust assert for new cris_symbol_type member.  Use
    CONSTANT_P instead of CONSTANT_ADDRESS_P.
    ("*movsi_internal") <case 9>: Make check for valid unspec operands
    for lapc stricter.
    <case CRIS_UNSPEC_PCREL, CRIS_UNSPEC_PLT_PCREL>: Clear condition
    codes.
    ("call", "call_value"): Use second incoming operand as a marker
    for pic-offset-table-register being used.
    ("*expanded_call_non_v32", "*expanded_call_v32")
        ("*expanded_call_value_non_v32", "*expanded_call_value_v32"): For
    second incoming operand to CALL, match cris_call_type_marker.
    ("*expanded_call_value_side"): Ditto.  Disable before
    reload_completed.
    ("*expanded_call_side"): Ditto.  Fix typo in comment.
    (moverside, movemside peepholes): Check for CRIS_CONSTANT_P, not
    CONSTANT_P.
    * config/cris/predicates.md ("cris_call_type_marker"): New predicate.
    * config/cris/cris.h (CRIS_CONSTANT_P): New macro.
    (enum cris_symbol_type): Rename from cris_pic_symbol_type.  All
        users changed.  Add members cris_offsettable_symbol and
    cris_unspec.
    (cris_symbol_type): Rename from cris_pic_symbol_type.
    * config/cris/constraints.md ("T"): Use CRIS_CONSTANT_P, not
        just CONSTANT_P.
    * config/cris/cris-protos.h (cris_symbol_type_of,
    cris_expand_pic_call_address): Adjust prototypes.
    (cris_legitimate_constant_p): New prototype.

Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/config/cris/constraints.md
    trunk/gcc/config/cris/cris-protos.h
    trunk/gcc/config/cris/cris.c
    trunk/gcc/config/cris/cris.h
    trunk/gcc/config/cris/cris.md
    trunk/gcc/config/cris/predicates.md


^ permalink raw reply	[flat|nested] 23+ messages in thread

* [Bug target/61737] ICE when building libgcc for cris cross-compiler
  2014-07-07 14:45 [Bug target/61737] New: ICE when building libgcc for cris cross-compiler dhowells at redhat dot com
                   ` (15 preceding siblings ...)
  2014-07-17  2:05 ` hp at gcc dot gnu.org
@ 2014-07-17  3:54 ` hp at gcc dot gnu.org
  2014-07-17  4:27 ` hp at gcc dot gnu.org
                   ` (4 subsequent siblings)
  21 siblings, 0 replies; 23+ messages in thread
From: hp at gcc dot gnu.org @ 2014-07-17  3:54 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61737

--- Comment #17 from Hans-Peter Nilsson <hp at gcc dot gnu.org> ---
Author: hp
Date: Thu Jul 17 03:53:23 2014
New Revision: 212713

URL: https://gcc.gnu.org/viewcvs?rev=212713&root=gcc&view=rev
Log:
    Backport from trunk.
    PR target/61737.
    * config/cris/cris.c (TARGET_LEGITIMATE_CONSTANT_P)
    (TARGET_CANNOT_FORCE_CONST_MEM): Define.
    (cris_cannot_force_const_mem, cris_legitimate_constant_p): New
    functions.
    (cris_print_index, cris_print_operand, cris_constant_index_p)
    (cris_side_effect_mode_ok): Replace CONSTANT_P with CRIS_CONSTANT_P.
    (cris_address_cost): Ditto last CONSTANT_P.
    (cris_symbol_type_of): Rename from cris_pic_symbol_type_of.  All
        callers changed.  Yield cris_offsettable_symbol for non-PIC
        constant symbolic expressions including labels.  Yield cris_unspec
    for all unspecs.
    (cris_expand_pic_call_address): New parameter MARKERP.  Set its
        target to pic_offset_table_rtx for calls that will likely go
        through PLT, const0_rtx when they can't.  All callers changed.
    Assert flag_pic.  Use CONSTANT_P, not CONSTANT_ADDRESS_P, for
    symbolic expressions to be PICified.  Remove second, redundant,
    assert on can_create_pseudo_p returning non-zero.  Use
    replace_equiv_address_nv, not replace_equiv_address, for final
    operand update.
    * config/cris/cris.md ("movsi"): Move variable t to pattern
    toplevel. Adjust assert for new cris_symbol_type member.  Use
    CONSTANT_P instead of CONSTANT_ADDRESS_P.
    ("*movsi_internal") <case 9>: Make check for valid unspec operands
    for lapc stricter.
    <case CRIS_UNSPEC_PCREL, CRIS_UNSPEC_PLT_PCREL>: Clear condition
    codes.
    ("call", "call_value"): Use second incoming operand as a marker
    for pic-offset-table-register being used.
    ("*expanded_call_non_v32", "*expanded_call_v32")
        ("*expanded_call_value_non_v32", "*expanded_call_value_v32"): For
    second incoming operand to CALL, match cris_call_type_marker.
    ("*expanded_call_value_side"): Ditto.  Disable before
    reload_completed.
    ("*expanded_call_side"): Ditto.  Fix typo in comment.
    (moverside, movemside peepholes): Check for CRIS_CONSTANT_P, not
    CONSTANT_P.
    * config/cris/predicates.md ("cris_call_type_marker"): New predicate.
    * config/cris/cris.h (CRIS_CONSTANT_P): New macro.
    (enum cris_symbol_type): Rename from cris_pic_symbol_type.  All
        users changed.  Add members cris_offsettable_symbol and
    cris_unspec.
    (cris_symbol_type): Rename from cris_pic_symbol_type.
    * config/cris/constraints.md ("T"): Use CRIS_CONSTANT_P, not
        just CONSTANT_P.
    * config/cris/cris-protos.h (cris_symbol_type_of,
    cris_expand_pic_call_address): Adjust prototypes.
    (cris_legitimate_constant_p): New prototype.

Modified:
    branches/gcc-4_9-branch/gcc/ChangeLog
    branches/gcc-4_9-branch/gcc/config/cris/constraints.md
    branches/gcc-4_9-branch/gcc/config/cris/cris-protos.h
    branches/gcc-4_9-branch/gcc/config/cris/cris.c
    branches/gcc-4_9-branch/gcc/config/cris/cris.h
    branches/gcc-4_9-branch/gcc/config/cris/cris.md
    branches/gcc-4_9-branch/gcc/config/cris/predicates.md


^ permalink raw reply	[flat|nested] 23+ messages in thread

* [Bug target/61737] ICE when building libgcc for cris cross-compiler
  2014-07-07 14:45 [Bug target/61737] New: ICE when building libgcc for cris cross-compiler dhowells at redhat dot com
                   ` (16 preceding siblings ...)
  2014-07-17  3:54 ` hp at gcc dot gnu.org
@ 2014-07-17  4:27 ` hp at gcc dot gnu.org
  2014-07-18 13:22 ` dhowells at redhat dot com
                   ` (3 subsequent siblings)
  21 siblings, 0 replies; 23+ messages in thread
From: hp at gcc dot gnu.org @ 2014-07-17  4:27 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61737

Hans-Peter Nilsson <hp at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|---                         |FIXED
   Target Milestone|---                         |4.9.2

--- Comment #18 from Hans-Peter Nilsson <hp at gcc dot gnu.org> ---
Prerequisite config.gcc patch committed separately.


^ permalink raw reply	[flat|nested] 23+ messages in thread

* [Bug target/61737] ICE when building libgcc for cris cross-compiler
  2014-07-07 14:45 [Bug target/61737] New: ICE when building libgcc for cris cross-compiler dhowells at redhat dot com
                   ` (17 preceding siblings ...)
  2014-07-17  4:27 ` hp at gcc dot gnu.org
@ 2014-07-18 13:22 ` dhowells at redhat dot com
  2014-07-18 15:53 ` hp at gcc dot gnu.org
                   ` (2 subsequent siblings)
  21 siblings, 0 replies; 23+ messages in thread
From: dhowells at redhat dot com @ 2014-07-18 13:22 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61737

--- Comment #19 from dhowells at redhat dot com <dhowells at redhat dot com> ---
This seems to have done the trick, thanks!


^ permalink raw reply	[flat|nested] 23+ messages in thread

* [Bug target/61737] ICE when building libgcc for cris cross-compiler
  2014-07-07 14:45 [Bug target/61737] New: ICE when building libgcc for cris cross-compiler dhowells at redhat dot com
                   ` (18 preceding siblings ...)
  2014-07-18 13:22 ` dhowells at redhat dot com
@ 2014-07-18 15:53 ` hp at gcc dot gnu.org
  2014-07-18 15:58 ` hp at gcc dot gnu.org
  2014-07-18 16:04 ` dhowells at redhat dot com
  21 siblings, 0 replies; 23+ messages in thread
From: hp at gcc dot gnu.org @ 2014-07-18 15:53 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61737

--- Comment #20 from Hans-Peter Nilsson <hp at gcc dot gnu.org> ---
Unfortunately, at the face of it, I think the only factors common with PR61844
are "rot at the RTL level" and "building libgcc".  (My own involvement with
SH64 is too far in the past and then only peripheral to the GCC port.)


^ permalink raw reply	[flat|nested] 23+ messages in thread

* [Bug target/61737] ICE when building libgcc for cris cross-compiler
  2014-07-07 14:45 [Bug target/61737] New: ICE when building libgcc for cris cross-compiler dhowells at redhat dot com
                   ` (19 preceding siblings ...)
  2014-07-18 15:53 ` hp at gcc dot gnu.org
@ 2014-07-18 15:58 ` hp at gcc dot gnu.org
  2014-07-18 16:04 ` dhowells at redhat dot com
  21 siblings, 0 replies; 23+ messages in thread
From: hp at gcc dot gnu.org @ 2014-07-18 15:58 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61737

--- Comment #21 from Hans-Peter Nilsson <hp at gcc dot gnu.org> ---
(In reply to Hans-Peter Nilsson from comment #20)
> Unfortunately, at the face of it, I think the only factors common with
> PR61844 are "rot at the RTL level" and "building libgcc".

Apparently also "when handling PIC" (register 12 on SH says grep).
Unfortunately that's unlikely to help anyone not involved with SH64.


^ permalink raw reply	[flat|nested] 23+ messages in thread

* [Bug target/61737] ICE when building libgcc for cris cross-compiler
  2014-07-07 14:45 [Bug target/61737] New: ICE when building libgcc for cris cross-compiler dhowells at redhat dot com
                   ` (20 preceding siblings ...)
  2014-07-18 15:58 ` hp at gcc dot gnu.org
@ 2014-07-18 16:04 ` dhowells at redhat dot com
  21 siblings, 0 replies; 23+ messages in thread
From: dhowells at redhat dot com @ 2014-07-18 16:04 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61737

--- Comment #22 from dhowells at redhat dot com <dhowells at redhat dot com> ---
That's a shame.  It's just that the error messages look very similar.


^ permalink raw reply	[flat|nested] 23+ messages in thread

end of thread, other threads:[~2014-07-18 16:04 UTC | newest]

Thread overview: 23+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-07-07 14:45 [Bug target/61737] New: ICE when building libgcc for cris cross-compiler dhowells at redhat dot com
2014-07-07 16:05 ` [Bug target/61737] " dhowells at redhat dot com
2014-07-14 19:08 ` hp at gcc dot gnu.org
2014-07-14 19:26 ` hp at gcc dot gnu.org
2014-07-15  0:40 ` hp at gcc dot gnu.org
2014-07-15  0:43 ` hp at gcc dot gnu.org
2014-07-15  0:44 ` hp at gcc dot gnu.org
2014-07-15  0:58 ` hp at gcc dot gnu.org
2014-07-15  2:48 ` hp at gcc dot gnu.org
2014-07-15  3:07 ` hp at gcc dot gnu.org
2014-07-15  9:19 ` dhowells at redhat dot com
2014-07-15  9:34 ` dhowells at redhat dot com
2014-07-15  9:36 ` dhowells at redhat dot com
2014-07-15 14:42 ` hp at gcc dot gnu.org
2014-07-15 14:44 ` hp at gcc dot gnu.org
2014-07-15 14:58 ` dhowells at redhat dot com
2014-07-17  2:05 ` hp at gcc dot gnu.org
2014-07-17  3:54 ` hp at gcc dot gnu.org
2014-07-17  4:27 ` hp at gcc dot gnu.org
2014-07-18 13:22 ` dhowells at redhat dot com
2014-07-18 15:53 ` hp at gcc dot gnu.org
2014-07-18 15:58 ` hp at gcc dot gnu.org
2014-07-18 16:04 ` dhowells at redhat dot com

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).