This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

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


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?


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]