This builtin will be converted to llvm.set.rounding intrinsic in IR level and should be work with "#pragma STDC FENV_ACCESS ON" since it changes default FP environment. Users can change rounding mode via this builtin without introducing libc dependency. Reviewed by: andrew.w.kaylor, rjmccall, sepavloff, aaron.ballman Differential Revision: https://reviews.llvm.org/D145765 Signed-off-by: jinge90 <ge.jin@intel.com>
9 lines
438 B
C
9 lines
438 B
C
// RUN: %clang_cc1 -triple x86_64-gnu-linux %s -emit-llvm -o - | FileCheck %s
|
|
// RUN: %clang_cc1 -triple x86_64-windows-msvc %s -emit-llvm -o - | FileCheck %s
|
|
// RUN: %clang_cc1 -triple aarch64-gnu-linux %s -emit-llvm -o - | FileCheck %s
|
|
// RUN: %clang_cc1 -triple aarch64-windows-msvc %s -emit-llvm -o - | FileCheck %s
|
|
void test_builtin_set_flt_rounds() {
|
|
__builtin_set_flt_rounds(1);
|
|
// CHECK: call void @llvm.set.rounding(i32 1)
|
|
}
|