You've already forked linux-packaging-mono
Imported Upstream version 5.18.0.167
Former-commit-id: 289509151e0fee68a1b591a20c9f109c3c789d3a
This commit is contained in:
parent
e19d552987
commit
b084638f15
@ -1,83 +0,0 @@
|
||||
; RUN: opt < %s -constprop -S | FileCheck %s
|
||||
|
||||
; Test to verify constant folding can occur when math
|
||||
; routines are mapped to the __<func>_finite versions
|
||||
; of functions due to __FINITE_MATH_ONLY__ being
|
||||
; enabled on headers. All calls should constant
|
||||
; fold away in this test.
|
||||
|
||||
declare double @__acos_finite(double) #0
|
||||
declare float @__acosf_finite(float) #0
|
||||
declare double @__asin_finite(double) #0
|
||||
declare float @__asinf_finite(float) #0
|
||||
declare double @__atan2_finite(double, double) #0
|
||||
declare float @__atan2f_finite(float, float) #0
|
||||
declare double @__cosh_finite(double) #0
|
||||
declare float @__coshf_finite(float) #0
|
||||
declare double @__exp2_finite(double) #0
|
||||
declare float @__exp2f_finite(float) #0
|
||||
declare double @__exp_finite(double) #0
|
||||
declare float @__expf_finite(float) #0
|
||||
declare double @__log10_finite(double) #0
|
||||
declare float @__log10f_finite(float) #0
|
||||
declare double @__log_finite(double) #0
|
||||
declare float @__logf_finite(float) #0
|
||||
declare double @__pow_finite(double, double) #0
|
||||
declare float @__powf_finite(float, float) #0
|
||||
declare double @__sinh_finite(double) #0
|
||||
declare float @__sinhf_finite(float) #0
|
||||
|
||||
attributes #0 = { nounwind readnone }
|
||||
|
||||
define void @T() {
|
||||
; CHECK-LABEL: @T(
|
||||
|
||||
; CHECK-NOT: call
|
||||
; CHECK: ret
|
||||
|
||||
%slot = alloca double
|
||||
%slotf = alloca float
|
||||
|
||||
%ACOS = call fast double @__acos_finite(double 1.000000e+00)
|
||||
store double %ACOS, double* %slot
|
||||
%ASIN = call fast double @__asin_finite(double 1.000000e+00)
|
||||
store double %ASIN, double* %slot
|
||||
%ATAN2 = call fast double @__atan2_finite(double 3.000000e+00, double 4.000000e+00)
|
||||
store double %ATAN2, double* %slot
|
||||
%COSH = call fast double @__cosh_finite(double 3.000000e+00)
|
||||
store double %COSH, double* %slot
|
||||
%EXP = call fast double @__exp_finite(double 3.000000e+00)
|
||||
store double %EXP, double* %slot
|
||||
%EXP2 = call fast double @__exp2_finite(double 3.000000e+00)
|
||||
store double %EXP2, double* %slot
|
||||
%LOG = call fast double @__log_finite(double 3.000000e+00)
|
||||
store double %LOG, double* %slot
|
||||
%LOG10 = call fast double @__log10_finite(double 3.000000e+00)
|
||||
store double %LOG10, double* %slot
|
||||
%POW = call fast double @__pow_finite(double 1.000000e+00, double 4.000000e+00)
|
||||
store double %POW, double* %slot
|
||||
%SINH = call fast double @__sinh_finite(double 3.000000e+00)
|
||||
store double %SINH, double* %slot
|
||||
|
||||
%ACOSF = call fast float @__acosf_finite(float 1.000000e+00)
|
||||
store float %ACOSF, float* %slotf
|
||||
%ASINF = call fast float @__asinf_finite(float 1.000000e+00)
|
||||
store float %ASINF, float* %slotf
|
||||
%ATAN2F = call fast float @__atan2f_finite(float 3.000000e+00, float 4.000000e+00)
|
||||
store float %ATAN2F, float* %slotf
|
||||
%COSHF = call fast float @__coshf_finite(float 3.000000e+00)
|
||||
store float %COSHF, float* %slotf
|
||||
%EXPF = call fast float @__expf_finite(float 3.000000e+00)
|
||||
store float %EXPF, float* %slotf
|
||||
%EXP2F = call fast float @__exp2f_finite(float 3.000000e+00)
|
||||
store float %EXP2F, float* %slotf
|
||||
%LOGF = call fast float @__logf_finite(float 3.000000e+00)
|
||||
store float %LOGF, float* %slotf
|
||||
%LOG10F = call fast float @__log10f_finite(float 3.000000e+00)
|
||||
store float %LOG10F, float* %slotf
|
||||
%POWF = call fast float @__powf_finite(float 3.000000e+00, float 4.000000e+00)
|
||||
store float %POWF, float* %slotf
|
||||
%SINHF = call fast float @__sinhf_finite(float 3.000000e+00)
|
||||
store float %SINHF, float* %slotf
|
||||
ret void
|
||||
}
|
Reference in New Issue
Block a user