https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70429

Ilya Enkovich <ienkovich at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
   Last reconfirmed|                            |2016-03-28
                 CC|                            |ienkovich at gcc dot gnu.org
     Ever confirmed|0                           |1

--- Comment #1 from Ilya Enkovich <ienkovich at gcc dot gnu.org> ---
Confirm.

Looks like combine issue.  Before combine:

    6: r94:DI=0x14ff6e2207db5d1f
    7: {r93:DI=r94:DI>>r92:SI#0;clobber flags:CC;}
      REG_DEAD r94:DI
      REG_DEAD r92:SI
      REG_UNUSED flags:CC
      REG_EQUAL 0x14ff6e2207db5d1f>>r92:SI#0
    8: {r95:SI=r93:DI#0>>0x4;clobber flags:CC;}

Combine log:

allowing combination of insns 6, 7 and 8                              
original costs 3 + 4 + 4 = 11                                         
replacement costs 3 + 4 = 7                                           
deferring deletion of insn with uid = 6.                              
modifying insn i2     7: r93:DI=0x14ff6e2207db5d1                     
deferring rescan insn with uid = 7.                                   
modifying insn i3     8: {r95:SI#0=r93:DI>>r92:SI#0;clobber flags:CC;}

This affects 4 high bits if the result.

Reply via email to