[Bug lto/47259] [4.7 Regression] LTO and global register variable

rguenth at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Fri Dec 2 12:15:00 GMT 2011


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

Richard Guenther <rguenth at gcc dot gnu.org> changed:

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

--- Comment #11 from Richard Guenther <rguenth at gcc dot gnu.org> 2011-12-02 12:14:29 UTC ---
This must be a new bug, the testcase passed previously, the register name
(esi) is rejected at link-time only.

#1  0x0000000000d4dbba in make_decl_rtl (decl=0x7ffff5a2c140)
    at /space/rguenther/src/svn/trunk/gcc/varasm.c:1207
1207            error ("invalid register name for %q+D", decl);
(gdb) l
1202          reg_number = decode_reg_name (asmspec);
1203          /* First detect errors in declaring global registers.  */
1204          if (reg_number == -1)
1205            error ("register name not specified for %q+D", decl);
1206          else if (reg_number < 0)
1207            error ("invalid register name for %q+D", decl);
(gdb) p asmspec
$2 = 0x7ffff5b58401 "esi.2318"

we mangle the register name now.  That's of course bogus.  It seems we
put the global register vars into the alias machinery now?  Honza?



More information about the Gcc-bugs mailing list