> - ceiling
>       cvtss2si %xmmMM, %rNN
>       cvtsi2ss %rNN, %xmmJJ ;; scratch
>       ucomiss %xmmMM, %xmmJJ
>       adc $0, %rNN                    <<
>
> - floor
>       cvtss2si %xmmMM, %rNN
>       cvtsi2ss %rNN, %xmmJJ ;; scratch
>       ucomiss %xmmJJ, %xmmMM
>       sbb $0, %rNN                    <<

can be emitted directly using appropriate IF_THEN_ELSE rtx and not rely
on ifcvt figuring out itself (which it doesn't in most cases).


-- 
           Summary: Expansion of ceil and floor could use if-conversion
           Product: gcc
           Version: 4.3.0
            Status: UNCONFIRMED
          Severity: enhancement
          Priority: P3
         Component: target
        AssignedTo: rguenth at gcc dot gnu dot org
        ReportedBy: rguenth at gcc dot gnu dot org
GCC target triplet: x86_64-*-*, i?86-*-*


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

Reply via email to