[Bug target/36209] arm-*-linux-gnueabi-gcc (4.3.0) segment fault during build of procps-3.2.7

rearnsha at gcc dot gnu dot org gcc-bugzilla@gcc.gnu.org
Tue Dec 16 17:13:00 GMT 2008



------- Comment #2 from rearnsha at gcc dot gnu dot org  2008-12-16 17:12 -------
Confirmed.  This appears to be a bug in the register-renaming pass, where the
insn

(insn:HI 84 79 82 8 proc/sysinfo.c:890 (parallel [
            (set (reg:CC_NOOV 24 cc)
                (compare:CC_NOOV (minus:SI (ashiftrt:SI (reg:SI 2 r2 [170])
                            (const_int 2 [0x2]))
                        (reg:SI 3 r3 [173]))
                    (const_int 0 [0x0])))
            (set (reg/v:SI 0 r0 [orig:133 rc.187 ] [133])
                (minus:SI (ashiftrt:SI (reg:SI 2 r2 [170])
                        (const_int 2 [0x2]))
                    (reg:SI 3 r3 [173])))
        ]) 265 {*arith_shiftsi_compare0} (nil))

is transformed to

(insn:HI 84 79 82 8 proc/sysinfo.c:890 (parallel [
            (set (reg:CC_NOOV 24 cc)
                (compare:CC_NOOV (minus:SI (ashiftrt:SI (reg:SI 2 r2 [170])
                            (const_int 2 [0x2]))
                        (reg:SI 14 lr [173]))
                    (const_int 0 [0x0])))
            (set (reg/v:SI 0 r0 [orig:133 rc.187 ] [133])
                (minus:SI (cc0)
                    (cc0)))
        ]) 265 {*arith_shiftsi_compare0} (expr_list:REG_DEAD (reg:SI 3 r3
[173])
        (expr_list:REG_DEAD (reg:SI 2 r2 [170])
            (nil))))

The use of cc0 in the second version indicates a failure to correctly transform
the insn.

The bug goes away if -frename-registers is removed from the command line.


-- 

rearnsha at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |rearnsha at gcc dot gnu dot
                   |                            |org
             Status|UNCONFIRMED                 |NEW
     Ever Confirmed|0                           |1
      Known to fail|                            |4.3.3
      Known to work|                            |4.4.0
   Last reconfirmed|0000-00-00 00:00:00         |2008-12-16 17:12:19
               date|                            |
   Target Milestone|---                         |4.3.4


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



More information about the Gcc-bugs mailing list