From 490104720db9e1e0eb9cc27e88e2d7288ac27ff0 Mon Sep 17 00:00:00 2001
From: Craig Topper
This is an overloaded intrinsic. You can use llvm.ceil on any + floating point or vector of floating point type. Not all targets support all + types however.
+ ++ declare float @llvm.ceil.f32(float %Val) + declare double @llvm.ceil.f64(double %Val) + declare x86_fp80 @llvm.ceil.f80(x86_fp80 %Val) + declare fp128 @llvm.ceil.f128(fp128 %Val) + declare ppc_fp128 @llvm.ceil.ppcf128(ppc_fp128 %Val) ++ +
The 'llvm.ceil.*' intrinsics return the ceiling of + the operand.
+ +The argument and return value are floating point numbers of the same + type.
+ +This function returns the same values as the libm ceil functions + would, and handles error conditions in the same way.
+ +This is an overloaded intrinsic. You can use llvm.trunc on any + floating point or vector of floating point type. Not all targets support all + types however.
+ ++ declare float @llvm.trunc.f32(float %Val) + declare double @llvm.trunc.f64(double %Val) + declare x86_fp80 @llvm.trunc.f80(x86_fp80 %Val) + declare fp128 @llvm.trunc.f128(fp128 %Val) + declare ppc_fp128 @llvm.trunc.ppcf128(ppc_fp128 %Val) ++ +
The 'llvm.trunc.*' intrinsics returns the operand rounded to the + nearest integer not larger in magnitude than the operand.
+ +The argument and return value are floating point numbers of the same + type.
+ +This function returns the same values as the libm trunc functions + would, and handles error conditions in the same way.
+ +This is an overloaded intrinsic. You can use llvm.rint on any + floating point or vector of floating point type. Not all targets support all + types however.
+ ++ declare float @llvm.rint.f32(float %Val) + declare double @llvm.rint.f64(double %Val) + declare x86_fp80 @llvm.rint.f80(x86_fp80 %Val) + declare fp128 @llvm.rint.f128(fp128 %Val) + declare ppc_fp128 @llvm.rint.ppcf128(ppc_fp128 %Val) ++ +
The 'llvm.rint.*' intrinsics returns the operand rounded to the + nearest integer. It may raise an inexact floating-point exception if the + operand isn't an integer.
+ +The argument and return value are floating point numbers of the same + type.
+ +This function returns the same values as the libm rint functions + would, and handles error conditions in the same way.
+ +This is an overloaded intrinsic. You can use llvm.nearbyint on any + floating point or vector of floating point type. Not all targets support all + types however.
+ ++ declare float @llvm.nearbyint.f32(float %Val) + declare double @llvm.nearbyint.f64(double %Val) + declare x86_fp80 @llvm.nearbyint.f80(x86_fp80 %Val) + declare fp128 @llvm.nearbyint.f128(fp128 %Val) + declare ppc_fp128 @llvm.nearbyint.ppcf128(ppc_fp128 %Val) ++ +
The 'llvm.nearbyint.*' intrinsics returns the operand rounded to the + nearest integer.
+ +The argument and return value are floating point numbers of the same + type.
+ +This function returns the same values as the libm nearbyint + functions would, and handles error conditions in the same way.
+ +