http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53740

             Bug #: 53740
           Summary: [4.8 Regression] --enable-checking=yes,rtl bootstrap
                    failure with ada
    Classification: Unclassified
           Product: gcc
           Version: 4.8.0
            Status: UNCONFIRMED
          Keywords: ice-checking, ice-on-valid-code
          Severity: normal
          Priority: P3
         Component: debug
        AssignedTo: unassig...@gcc.gnu.org
        ReportedBy: ja...@gcc.gnu.org
                CC: aol...@gcc.gnu.org


Last night my x86_64-linux bootstrap failed due to a RTL checking failure.
.../gnat1 -gnatwa -quiet -nostdinc -O2 -g -gnatpg -m32 -mtune=generic
-march=x86-64 -gnatO s-arit64.o s-arit64.adb -o /tmp/s-arit64.s
ICEs, because in dead_debug_insert_temp during DCE
          reg = *DF_REF_REAL_LOC (cur->use);
assigns reg a DEBUG_EXPR rather than REG, so when we later:
          /* Hmm...  Something's fishy, we should be setting REG here.  */
          if (REGNO (dest) != REGNO (reg))
            breg = NULL;
we ICE, because REGNO on DEBUG_EXPR isn't valid.  Alex, could you please look
at it?  Not sure if DEBUG_EXPR there is supposed to be valid and we should just
handle it, or if the problem is that some dead_debug* call wasn't called or
didn't do the right job.  Thanks.

Reply via email to