Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
easing the constraint for isNegatibleForFree and GetNegatedExpression
Summary: Here we relax the old constraint which utilized unsafe with the TargetOption flag HonorSignDependentRoundingFPMathOption, with the assertion that unsafe is no longer needed or never was required for correctness on FDIV/FMUL. Reviewers: spatel, hfinkel, wristow, arsenm, javed.absar Reviewed By: spatel Subscribers: efriedma, wdng, tpr Differential Revision: https://reviews.llvm.org/D48057 llvm-svn: 334769
- Loading branch information
Michael Berg
committed
Jun 14, 2018
1 parent
d1e0365
commit 0c20447
Showing
2 changed files
with
5 additions
and
11 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,17 +1,15 @@ | ||
; RUN: llc -mtriple=arm-eabi -mattr=+v6,+vfp2 %s -o - | FileCheck %s | ||
|
||
; RUN: llc -mtriple=arm-eabi -mattr=+v6,+vfp2 -enable-sign-dependent-rounding-fp-math %s -o - \ | ||
; RUN: | FileCheck %s -check-prefix CHECK-ROUNDING | ||
|
||
; RUN: llc -mtriple=arm-eabi -mattr=+v6,+vfp2 %s -o - | FileCheck %s -check-prefix STRICT | ||
|
||
; RUN: llc -mtriple=arm-eabi -mattr=+v6,+vfp2 -enable-unsafe-fp-math %s -o - | FileCheck %s -check-prefix UNSAFE | ||
|
||
define double @t1(double %a, double %b) { | ||
; STRICT: vnmul.f64 | ||
; | ||
; UNSAFE: vnmul.f64 | ||
entry: | ||
%tmp2 = fsub double -0.000000e+00, %a ; <double> [#uses=1] | ||
%tmp4 = fmul double %tmp2, %b ; <double> [#uses=1] | ||
ret double %tmp4 | ||
} | ||
|
||
; CHECK: vnmul.f64 | ||
; CHECK-ROUNDING: vmul.f64 | ||
|