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

Uroš Bizjak <ubizjak at gmail dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
   Last reconfirmed|                            |2016-05-15
          Component|target                      |rtl-optimization
         Depends on|                            |71118
   Target Milestone|---                         |7.0
            Summary|[4.9 Regression] ftoit      |[4.9,5,6,7 Regression]
                   |instruction not emitted for |ftoit instruction not
                   |double -> long bitcast      |emitted for double -> long
                   |                            |bitcast
     Ever confirmed|0                           |1

--- Comment #1 from Uroš Bizjak <ubizjak at gmail dot com> ---
Probably the same root cause as in PR 71118, for some reason combine pass is
unable to propagate (insn 2) into (insn 10).

(insn 2 4 3 2 (set (reg/v:DF 71 [ f ])
        (reg:DF 48 $f16 [ f ])) ftoit.c:16 221 {*movdf}
     (expr_list:REG_DEAD (reg:DF 48 $f16 [ f ])
        (nil)))
(note 3 2 10 2 NOTE_INSN_FUNCTION_BEG)
(insn 10 3 11 2 (set (reg/i:DI 0 $0)
        (subreg:DI (reg/v:DF 71 [ f ]) 0)) ftoit.c:19 226 {*movdi}
     (expr_list:REG_DEAD (reg/v:DF 71 [ f ])
        (nil)))


Referenced Bugs:

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71118
[Bug 71118] [5,6,7 Regression] ftois instruction not emitted for float -> int
bitcast

Reply via email to