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

             Bug #: 50191
           Summary: Strange debug insn produced for TOC compiling
                    416.gamess with profile-generate
    Classification: Unclassified
           Product: gcc
           Version: 4.7.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: rtl-optimization
        AssignedTo: unassig...@gcc.gnu.org
        ReportedBy: wschm...@gcc.gnu.org
                CC: berg...@gcc.gnu.org, meiss...@gcc.gnu.org,
                    pthau...@gcc.gnu.org
              Host: powerpc64-linux
            Target: powerpc64-linux
             Build: powerpc64-linux


Created attachment 25107
  --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=25107
Failing source code

I opened a bug against binutils
(http://sourceware.org/bugzilla/show_bug.cgi?id=13131) for the linkage error
described there.  However, Alan Modra determined the linker was confused by a
strange debug_insn reference into the TOC, produced by gcc:

(debug_insn 8390 8396 8395 5 (var_location:DI D#142 (mem/u/c:DI (lo_sum:DI
(reg/f:DI 2011)
            (const:DI (unspec:DI [
                        (symbol_ref/u:DI ("*.LC7") [flags 0x2])
                    ] UNSPEC_TOCREL))) [23 S8 A8])) -1
     (nil))

The debug_insn appears to be modified during combine; prior to that it contains
the more innocuous:

(debug_insn 8390 8396 8395 5 (var_location:DI D#142 (reg/f:DI 1243 [ ivtmp.961
])) -1
     (nil))

This occurs when compiling chgpen.fppized.f (attached) with the following
minimal set of options:

> /home/wschmidt/gcc/install/gcc-mainline-base/libexec/gcc/powerpc64-linux/4.7.0/f951
>  chgpen.fppized.f -g -O3 -fprofile-generate -ffast-math -funroll-loops -o 
> chgpen.fppized.s

Reply via email to