[Bug middle-end/55279] New pseudo registers aren't supported in CSE

hjl.tools at gmail dot com gcc-bugzilla@gcc.gnu.org
Mon Dec 10 01:05:00 GMT 2012


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

--- Comment #9 from H.J. Lu <hjl.tools at gmail dot com> 2012-12-10 01:05:09 UTC ---
(In reply to comment #8)
> (In reply to comment #7)
> > (In reply to comment #5)
> > > Why can't cse_reg_info_table() be modified to intercept this?
> > Correction: get_cse_reg_info()
> 
> Like so, quick-and-dirty hack. HJ, can you try and see if this
> keeps valgrind happy?
> 
> Index: cse.c
> ===================================================================
> --- cse.c       (revision 194325)
> +++ cse.c       (working copy)
> @@ -833,6 +833,7 @@
>  static inline struct cse_reg_info *
>  get_cse_reg_info (unsigned int regno)
>  {
> +  init_cse_reg_info (regno + 1);
>    struct cse_reg_info *p = &cse_reg_info_table[regno];
> 
>    /* If this entry has not been initialized, go ahead and initialize

I got

/export/gnu/import/git/sources/gcc-release/gcc/testsuite/gcc.dg/Warray-bounds.c:92:1:
internal compiler error: in insert_regs, at cse.c:1159^M
0xce1db0 insert_regs^M
        /export/gnu/import/git/sources/gcc-release/gcc/cse.c:1159^M 
0xce4fbb cse_insn^M
        /export/gnu/import/git/sources/gcc-release/gcc/cse.c:5793^M
0xce719b cse_extended_basic_block^M
        /export/gnu/import/git/sources/gcc-release/gcc/cse.c:6408^M
0xce719b cse_main^M
        /export/gnu/import/git/sources/gcc-release/gcc/cse.c:6586^M
0xce7675 rest_of_handle_cse^M
        /export/gnu/import/git/sources/gcc-release/gcc/cse.c:7436^M
Please submit a full bug report,^M
with preprocessed source if appropriate.^M
Please include the complete backtrace with any bug report.^M
See <http://gcc.gnu.org/bugs.html> for instructions.^M



More information about the Gcc-bugs mailing list