Skip to content

Commit 3402a7e

Browse files
author
oscarddssmith
committed
clean up now that we have the intrinsic rather than just the ccall
1 parent f0d7d2c commit 3402a7e

File tree

1 file changed

+3
-14
lines changed

1 file changed

+3
-14
lines changed

base/math.jl

Lines changed: 3 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ using .Base: sign_mask, exponent_mask, exponent_one,
2525
significand_bits, exponent_bits, exponent_bias,
2626
exponent_max, exponent_raw_max, clamp, clamp!
2727

28-
using Core.Intrinsics: sqrt_llvm
28+
using Core.Intrinsics: sqrt_llvm, min_float, max_float
2929

3030
using .Base: IEEEFloat
3131

@@ -833,23 +833,12 @@ minmax(x::T, y::T) where {T<:AbstractFloat} = min(x, y), max(x, y)
833833

834834
_isless(x::Float16, y::Float16) = signbit(widen(x) - widen(y))
835835

836-
Base.@assume_effects :total @inline llvm_min(x::Float64, y::Float64) = ccall("llvm.minimum.f64", llvmcall, Float64, (Float64, Float64), x, y)
837-
Base.@assume_effects :total @inline llvm_min(x::Float32, y::Float32) = ccall("llvm.minimum.f32", llvmcall, Float32, (Float32, Float32), x, y)
838-
Base.@assume_effects :total @inline llvm_min(x::Float16, y::Float16) = ccall("llvm.minimum.f16", llvmcall, Float16, (Float16, Float16), x, y)
839-
Base.@assume_effects :total @inline llvm_max(x::Float64, y::Float64) = ccall("llvm.maximum.f64", llvmcall, Float64, (Float64, Float64), x, y)
840-
Base.@assume_effects :total @inline llvm_max(x::Float32, y::Float32) = ccall("llvm.maximum.f32", llvmcall, Float32, (Float32, Float32), x, y)
841-
Base.@assume_effects :total @inline llvm_max(x::Float16, y::Float16) = ccall("llvm.maximum.f16", llvmcall, Float16, (Float16, Float16), x, y)
842-
843836
function min(x::T, y::T) where {T<:Union{Float16,Float32,Float64}}
844-
return llvm_min(x,y)
837+
return min_float(x, y)
845838
end
846839

847840
function max(x::T, y::T) where {T<:Union{Float16,Float32,Float64}}
848-
return llvm_max(x,y)
849-
end
850-
851-
function minmax(x::T, y::T) where {T<:Union{Float16,Float32,Float64}}
852-
return llvm_min(x, y), llvm_max(x, y)
841+
return max_float(x, y)
853842
end
854843

855844
"""

0 commit comments

Comments
 (0)