fneg-ext.ll 555 B

1234567891011121314151617181920212223
  1. ; RUN: opt -instcombine -S < %s | FileCheck %s
  2. ; CHECK: test1
  3. define double @test1(float %a, double %b) nounwind readnone ssp uwtable {
  4. ; CHECK-NOT: fsub
  5. ; CHECK: fpext
  6. ; CHECK: fadd
  7. %1 = fsub float -0.000000e+00, %a
  8. %2 = fpext float %1 to double
  9. %3 = fsub double %b, %2
  10. ret double %3
  11. }
  12. ; CHECK: test2
  13. define double @test2(float %a, double %b) nounwind readnone ssp uwtable {
  14. ; CHECK-NOT: fsub
  15. ; CHECK: fpext
  16. ; CHECK: fadd fast
  17. %1 = fsub float -0.000000e+00, %a
  18. %2 = fpext float %1 to double
  19. %3 = fsub fast double %b, %2
  20. ret double %3
  21. }