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 rtl-optimization/49847] [4.7 Regression] NULL deref in fold_rtx (prev_insn_cc0 == NULL)


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

Andreas Schwab <schwab@linux-m68k.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |build
            Version|4.6.1                       |4.7.0
   Target Milestone|4.6.3                       |4.7.0
            Summary|[4.6/4.7 Regression] m68k   |[4.7 Regression] NULL deref
                   |gcj-4.6 NULL deref in       |in fold_rtx (prev_insn_cc0
                   |fold_rtx (prev_insn_cc0 ==  |== NULL)
                   |NULL)                       |

--- Comment #12 from Andreas Schwab <schwab@linux-m68k.org> 2012-01-23 16:03:21 UTC ---
The problem appears to be due to the exception region on a cc0 setter, which
separates it from the cc0 consumer:

(insn 4013 4012 8164 949 (set (cc0)
        (compare (reg:SF 912 [ D.26269 ])
            (const_double:SF -2147483648 [0x80000000] 2.147483648e+9
[0x0.8p+32]))) ../../../gcc/libjava/interpret.cc:131 -1
     (expr_list:REG_EH_REGION (const_int 4 [0x4])
        (nil)))

(note 8164 4013 4014 950 [bb 950] NOTE_INSN_BASIC_BLOCK)

(insn 4014 8164 4015 950 (set (reg:QI 2121)
        (ge:QI (cc0)
            (const_int 0 [0]))) ../../../gcc/libjava/interpret.cc:131 -1
     (nil))

Happens in trunk since r180192.


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