string(REPLACE ";" " " BUILTINS_TEST_TARGET_CFLAGS "${BUILTINS_TEST_TARGET_CFLAGS}")
endif()
+ # Compute builtins available in library and add them as lit features.
+ if(APPLE)
+ # TODO: Support other Apple platforms.
+ set(BUILTIN_LIB_TARGET_NAME "clang_rt.builtins_${arch}_osx")
+ else()
+ set(BUILTIN_LIB_TARGET_NAME "clang_rt.builtins-${arch}")
+ endif()
+ if (NOT TARGET "${BUILTIN_LIB_TARGET_NAME}")
+ message(FATAL_ERROR "Target ${BUILTIN_LIB_TARGET_NAME} does not exist")
+ endif()
+ get_target_property(BUILTIN_LIB_SOURCES "${BUILTIN_LIB_TARGET_NAME}" SOURCES)
+ list(LENGTH BUILTIN_LIB_SOURCES BUILTIN_LIB_SOURCES_LENGTH)
+ if (BUILTIN_LIB_SOURCES_LENGTH EQUAL 0)
+ message(FATAL_ERROR "Failed to find source files for ${arch} builtin library")
+ endif()
+ set(BUILTINS_LIT_SOURCE_FEATURES "")
+ foreach (file_name ${BUILTIN_LIB_SOURCES})
+ # Strip off any directories and file extensions. This approach means we add
+ # add a single feature if there is a C source file or assembly override
+ # present in the builtin library.
+ # E.g.
+ # "hexagon/udivsi3.S" => "udivsi3"
+ # "udivsi3.c" => "udivsi3"
+ get_filename_component(FILE_NAME_FILTERED "${file_name}" NAME_WE)
+ list(APPEND BUILTINS_LIT_SOURCE_FEATURES "librt_has_${FILE_NAME_FILTERED}")
+ endforeach()
+
string(TOUPPER ${arch} ARCH_UPPER_CASE)
set(CONFIG_NAME ${ARCH_UPPER_CASE}${OS_NAME}Config)
configure_lit_site_cfg(
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_absvdi2
//===-- absvdi2_test.c - Test __absvdi2 -----------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_absvsi2
//===-- absvsi2_test.c - Test __absvsi2 -----------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_absvti2
// REQUIRES: int128
//===-- absvti2_test.c - Test __absvti2 -----------------------------------===//
//
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_adddf3vfp
//===-- adddf3vfp_test.c - Test __adddf3vfp -------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_addsf3vfp
//===-- addsf3vfp_test.c - Test __addsf3vfp -------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_addtf3
//===--------------- addtf3_test.c - Test __addtf3 ------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_addvdi3
//===-- addvdi3_test.c - Test __addvdi3 -----------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_addvsi3
//===-- addvsi3_test.c - Test __addvsi3 -----------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_addvti3
// REQUIRES: int128
//===-- addvti3_test.c - Test __addvti3 -----------------------------------===//
//
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_ashldi3
//===-- ashldi3_test.c - Test __ashldi3 -----------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_ashlti3
// REQUIRES: int128
//===-- ashlti3_test.c - Test __ashlti3 -----------------------------------===//
//
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_ashrdi3
//===-- ashrdi3_test.c - Test __ashrdi3 -----------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_ashrti3
// REQUIRES: int128
//===-- ashrti3_test.c - Test __ashrti3 -----------------------------------===//
//
// UNSUPPORTED: armv6m-target-arch
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_bswapdi2
//===-- bswapdi2_test.c - Test __bswapdi2 ---------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// UNSUPPORTED: armv6m-target-arch
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_bswapsi2
//===-- bswapsi2_test.c - Test __bswapsi2 ---------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// REQUIRES: native-run
// UNSUPPORTED: arm, aarch64
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_clear_cache
//===-- clear_cache_test.c - Test clear_cache -----------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_clzdi2
//===-- clzdi2_test.c - Test __clzdi2 -------------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_clzsi2
//===-- clzsi2_test.c - Test __clzsi2 -------------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_clzti2
// REQUIRES: int128
//===-- clzti2_test.c - Test __clzti2 -------------------------------------===//
//
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_cmpdi2
//===-- cmpdi2_test.c - Test __cmpdi2 -------------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_cmpti2
// REQUIRES: int128
//===-- cmpti2_test.c - Test __cmpti2 -------------------------------------===//
//
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_comparedf2
//===-- cmpdf2_test.c - Test __cmpdf2 -------------------------------------===//
//
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_comparesf2
//===-- cmpsf2_test.c - Test __cmpsf2 -------------------------------------===//
//
// XFAIL: *
// REQUIRES: x86-target-arch
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_cpu_model
//===-- cpu_model_test.c - Test __builtin_cpu_supports --------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_ctzdi2
//===-- ctzdi2_test.c - Test __ctzdi2 -------------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_ctzsi2
//===-- ctzsi2_test.c - Test __ctzsi2 -------------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_ctzti2
// REQUIRES: int128
//===-- ctzti2_test.c - Test __ctzti2 -------------------------------------===//
//
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_divdc3
//===-- divdc3_test.c - Test __divdc3 -------------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_divdf3
//===--------------- divdf3_test.c - Test __divdf3 ------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_divdf3vfp
//===-- divdf3vfp_test.c - Test __divdf3vfp -------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_divdi3
//===-- divdi3_test.c - Test __divdi3 -------------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_divmodsi4
//===-- divmodsi4_test.c - Test __divmodsi4 -------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -lm -o %t && %run %t
+// REQUIRES: librt_has_divsc3
//===-- divsc3_test.c - Test __divsc3 -------------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_divsf3
//===--------------- divsf3_test.c - Test __divsf3 ------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_divsf3vfp
//===-- divsf3vfp_test.c - Test __divsf3vfp -------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_divsi3
//===-- divsi3_test.c - Test __divsi3 -------------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -lm -o %t && %run %t
+// REQUIRES: librt_has_divtc3
//
// 32-bit: Bug 42493, 64-bit: Bug 42496
// XFAIL: sparc
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_divtf3
//===--------------- divtf3_test.c - Test __divtf3 ------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_divti3
// REQUIRES: int128
//===-- divti3_test.c - Test __divti3 -------------------------------------===//
//
// RUN: %clang_builtins %s %librt -lm -o %t && %run %t
+// REQUIRES: librt_has_divxc3
// REQUIRES: x86-target-arch
// UNSUPPORTED: powerpc64
//===-- divxc3_test.c - Test __divxc3 -------------------------------------===//
// REQUIRES: native-run
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_enable_execute_stack
//===-- enable_execute_stack_test.c - Test __enable_execute_stack ----------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_eqdf2vfp
//===-- eqdf2vfp_test.c - Test __eqdf2vfp ---------------------------------===//
//
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_eqsf2vfp
//===-- eqsf2vfp_test.c - Test __eqsf2vfp ---------------------------------===//
//
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_comparetf2
//===------------ eqtf2_test.c - Test __eqtf2------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_extenddftf2
//===--------------- extenddftf2_test.c - Test __extenddftf2 --------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_extendhfsf2
//===--------------- extendhfsf2_test.c - Test __extendhfsf2 --------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_extendsfdf2vfp
//===-- extendsfdf2vfp_test.c - Test __extendsfdf2vfp ---------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_extendsftf2
//===--------------- extendsftf2_test.c - Test __extendsftf2 --------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_ffsdi2
//===-- ffsdi2_test.c - Test __ffsdi2 -------------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_ffssi2
//===-- ffssi2_test.c - Test __ffssi2 -------------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_ffsti2
// REQUIRES: int128
//===-- ffsti2_test.c - Test __ffsti2 -------------------------------------===//
//
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_fixdfdi
//===-- fixdfdi_test.c - Test __fixdfdi -----------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_fixdfsivfp
//===-- fixdfsivfp_test.c - Test __fixdfsivfp -----------------------------===//
//
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_fixdfti
// REQUIRES: int128
//===-- fixdfti_test.c - Test __fixdfti -----------------------------------===//
//
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_fixsfdi
//===-- fixsfdi_test.c - Test __fixsfdi -----------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_fixsfsivfp
//===-- fixsfsivfp_test.c - Test __fixsfsivfp -----------------------------===//
//
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_fixsfti
// REQUIRES: int128
//===-- fixsfti_test.c - Test __fixsfti -----------------------------------===//
//
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_fixtfdi
//===--------------- fixtfdi_test.c - Test __fixtfdi ----------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_fixtfsi
//===--------------- fixtfsi_test.c - Test __fixtfsi ----------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_fixtfti
//===--------------- fixtfti_test.c - Test __fixtfti ----------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_fixunsdfdi
//===-- fixunsdfdi_test.c - Test __fixunsdfdi -----------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_fixunsdfsi
//===-- fixunsdfsi_test.c - Test __fixunsdfsi -----------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_fixunsdfsivfp
//===-- fixunsdfsivfp_test.c - Test __fixunsdfsivfp -----------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_fixunsdfti
// REQUIRES: int128
//===-- fixunsdfti_test.c - Test __fixunsdfti -----------------------------===//
//
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_fixunssfdi
//===-- fixunssfdi_test.c - Test __fixunssfdi -----------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_fixunssfsi
//===-- fixunssfsi_test.c - Test __fixunssfsi -----------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_fixunssfsivfp
//===-- fixunssfsivfp_test.c - Test __fixunssfsivfp -----------------------===//
//
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_fixunssfti
// REQUIRES: int128
//===-- fixunssfti_test.c - Test __fixunssfti -----------------------------===//
//
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_fixunstfdi
//===-- fixunstfdi_test.c - Test __fixunstfdi -----------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_fixunstfsi
//===--------------- fixunstfsi_test.c - Test __fixunstfsi ----------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_fixunstfti
//===-- fixunstfti_test.c - Test __fixunstfti -----------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_fixunsxfdi
//===-- fixunsxfdi_test.c - Test __fixunsxfdi -----------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_fixunsxfsi
//===-- fixunsxfsi_test.c - Test __fixunsxfsi -----------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_fixunsxfti
// REQUIRES: x86-target-arch
//===-- fixunsxfti_test.c - Test __fixunsxfti -----------------------------===//
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_fixxfdi
//===-- fixxfdi_test.c - Test __fixxfdi -----------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_fixxfti
// REQUIRES: x86-target-arch
//===-- fixxfti_test.c - Test __fixxfti -----------------------------------===//
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_floatdidf
//===-- floatdidf.c - Test __floatdidf ------------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_floatdisf
//===-- floatdisf_test.c - Test __floatdisf -------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_floatditf
//===-- floatditf_test.c - Test __floatditf -------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_floatdixf
//===-- floatdixf_test.c - Test __floatdixf -------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_floatsidfvfp
//===-- floatsidfvfp_test.c - Test __floatsidfvfp -------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_floatsisfvfp
//===-- floatsisfvfp_test.c - Test __floatsisfvfp -------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_floatsitf
//===--------------- floatsitf_test.c - Test __floatsitf ------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_floattidf
// REQUIRES: int128
//===-- floattidf.c - Test __floattidf ------------------------------------===//
//
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_floattisf
// REQUIRES: int128
//===-- floattisf_test.c - Test __floattisf -------------------------------===//
//
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_floattitf
//===-- floattitf.c - Test __floattitf ------------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_floattixf
// REQUIRES: x86-target-arch
//===-- floattixf.c - Test __floattixf ------------------------------------===//
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_floatundidf
//===-- floatundidf_test.c - Test __floatundidf ---------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_floatundisf
//===-- floatundisf_test.c - Test __floatundisf ---------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_floatunditf
//===-- floatunditf_test.c - Test __floatunditf ---------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_floatundixf
//===-- floatundixf_test.c - Test __floatundixf ---------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_floatunsitf
//===--------------- floatunsitf_test.c - Test __floatunsitf --------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_floatunssidfvfp
//===-- floatunssidfvfp_test.c - Test __floatunssidfvfp -------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_floatunssisfvfp
//===-- floatunssisfvfp_test.c - Test __floatunssisfvfp -------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_floatuntidf
// REQUIRES: int128
//===-- floatuntidf.c - Test __floatuntidf --------------------------------===//
//
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_floatuntisf
//===-- floatuntisf.c - Test __floatuntisf --------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_floatuntitf
//===-- floatuntitf.c - Test __floatuntitf --------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_floatuntixf
// REQUIRES: x86-target-arch
//===-- floatuntixf.c - Test __floatuntixf --------------------------------===//
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_gedf2vfp
//===-- gedf2vfp_test.c - Test __gedf2vfp ---------------------------------===//
//
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_gesf2vfp
//===-- gesf2vfp_test.c - Test __gesf2vfp ---------------------------------===//
//
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_comparetf2
//===------------ getf2_test.c - Test __getf2------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_gtdf2vfp
//===-- gtdf2vfp_test.c - Test __gtdf2vfp ---------------------------------===//
//
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_gtsf2vfp
//===-- gtsf2vfp_test.c - Test __gtsf2vfp ---------------------------------===//
//
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_comparetf2
//===------------ gttf2_test.c - Test __gttf2------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_ledf2vfp
//===-- ledf2vfp_test.c - Test __ledf2vfp ---------------------------------===//
//
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_lesf2vfp
//===-- lesf2vfp_test.c - Test __lesf2vfp ---------------------------------===//
//
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_comparetf2
//===------------ letf2_test.c - Test __letf2------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
if not config.emulator:
config.available_features.add('native-run')
+
+# Add features for available sources
+builtins_source_features = config.builtins_lit_source_features.split(';')
+# Sanity checks
+if not builtins_source_features:
+ lit_config.fatal('builtins_source_features cannot be empty')
+builtins_source_features_set = set()
+builtins_source_feature_duplicates = []
+for builtin_source_feature in builtins_source_features:
+ if len(builtin_source_feature) == 0:
+ lit_config.fatal('builtins_source_feature cannot contain empty features')
+ if builtin_source_feature not in builtins_source_features_set:
+ builtins_source_features_set.add(builtin_source_feature)
+ else:
+ builtins_source_feature_duplicates.append(builtin_source_feature)
+
+if len(builtins_source_feature_duplicates) > 0:
+ lit_config.fatal(
+ 'builtins_source_features contains duplicates: {}'.format(
+ builtins_source_feature_duplicates)
+ )
+config.available_features.update(builtins_source_features)
config.target_arch = "@BUILTINS_TEST_TARGET_ARCH@"
config.is_msvc = @MSVC_PYBOOL@
config.builtins_is_msvc = @BUILTINS_IS_MSVC_PYBOOL@
+config.builtins_lit_source_features = "@BUILTINS_LIT_SOURCE_FEATURES@"
+
# Load common config for all compiler-rt lit tests.
lit_config.load_config(config, "@COMPILER_RT_BINARY_DIR@/test/lit.common.configured")
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_lshrdi3
//===-- lshrdi3_test.c - Test __lshrdi3 -----------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_lshrti3
// REQUIRES: int128
//===-- lshrti3_test.c - Test __lshrti3 -----------------------------------===//
//
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_ltdf2vfp
//===-- ltdf2vfp_test.c - Test __ltdf2vfp ---------------------------------===//
//
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_ltsf2vfp
//===-- ltsf2vfp_test.c - Test __ltsf2vfp ---------------------------------===//
//
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_comparetf2
//===------------ lttf2_test.c - Test __lttf2------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_moddi3
//===-- moddi3_test.c - Test __moddi3 -------------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_modsi3
/* ===-- modsi3_test.c - Test __modsi3 -------------------------------------===
*
* Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_modti3
// REQUIRES: int128
//===-- modti3_test.c - Test __modti3 -------------------------------------===//
//
// RUN: %clang_builtins %s %librt -lm -o %t && %run %t
+// REQUIRES: librt_has_muldc3
//===-- muldc3_test.c - Test __muldc3 -------------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_muldf3vfp
//===-- muldf3vfp_test.c - Test __muldf3vfp -------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_muldi3
//===-- muldi3_test.c - Test __muldi3 -------------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_mulodi4
//===-- mulodi4_test.c - Test __mulodi4 -----------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_mulosi4
//===-- mulosi4_test.c - Test __mulosi4 -----------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_muloti4
// REQUIRES: int128
//===-- muloti4_test.c - Test __muloti4 -----------------------------------===//
//
// RUN: %clang_builtins %s %librt -lm -o %t && %run %t
+// REQUIRES: librt_has_mulsc3
//===-- mulsc3_test.c - Test __mulsc3 -------------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_mulsf3vfp
//===-- mulsf3vfp_test.c - Test __mulsf3vfp -------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_multc3
//===-- multc3_test.c - Test __multc3 -------------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_multf3
//===--------------- multf3_test.c - Test __multf3 ------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_multi3
// REQUIRES: int128
//===-- multi3_test.c - Test __multi3 -------------------------------------===//
//
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_mulvdi3
//===-- mulvdi3_test.c - Test __mulvdi3 -----------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_mulvsi3
//===-- mulvsi3_test.c - Test __mulvsi3 -----------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_mulvti3
// REQUIRES: int128
//===-- mulvti3_test.c - Test __mulvti3 -----------------------------------===//
//
// RUN: %clang_builtins %s %librt -lm -o %t && %run %t
+// REQUIRES: librt_has_mulxc3
// UNSUPPORTED: powerpc64
// REQUIRES: x86-target-arch
//===-- mulxc3_test.c - Test __mulxc3 -------------------------------------===//
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_nedf2vfp
//===-- nedf2vfp_test.c - Test __nedf2vfp ---------------------------------===//
//
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_negdf2vfp
//===-- negdf2vfp_test.c - Test __negdf2vfp -------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_negdi2
//===-- negdi2_test.c - Test __negdi2 -------------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_negsf2vfp
//===-- negsf2vfp_test.c - Test __negsf2vfp -------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_negti2
// REQUIRES: int128
//===-- negti2_test.c - Test __negti2 -------------------------------------===//
//
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_negvdi2
//===-- negvdi2_test.c - Test __negvdi2 -----------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_negvsi2
//===-- negvsi2_test.c - Test __negvsi2 -----------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_negvti2
// REQUIRES: int128
//===-- negvti2_test.c - Test __negvti2 -----------------------------------===//
//
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_nesf2vfp
//===-- nesf2vfp_test.c - Test __nesf2vfp ---------------------------------===//
//
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_comparetf2
//===------------ netf2_test.c - Test __netf2------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_paritydi2
//===-- paritydi2_test.c - Test __paritydi2 -------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_paritysi2
//===-- paritysi2_test.c - Test __paritysi2 -------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_parityti2
// REQUIRES: int128
//===-- parityti2_test.c - Test __parityti2 -------------------------------===//
//
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_popcountdi2
//===-- popcountdi2_test.c - Test __popcountdi2 ----------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_popcountsi2
//===-- popcountsi2_test.c - Test __popcountsi2 ---------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_popcountti2
// REQUIRES: int128
//===-- popcountti2_test.c - Test __popcountti2 ----------------------------===//
//
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_powidf2
//===-- powidf2_test.cpp - Test __powidf2 ---------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_powisf2
//===-- powisf2_test.cpp - Test __powisf2 ---------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_powitf2
//===-- powitf2_test.cpp - Test __powitf2 ---------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_powixf2
// UNSUPPORTED: powerpc64
// REQUIRES: x86-target-arch
//===-- powixf2_test.cpp - Test __powixf2 ---------------------------------===//
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_subdf3vfp
//===-- subdf3vfp_test.c - Test __subdf3vfp -------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_subsf3vfp
//===-- subsf3vfp_test.c - Test __subsf3vfp -------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_subtf3
//===--------------- subtf3_test.c - Test __subtf3 ------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_subvdi3
//===-- subvdi3_test.c - Test __subvdi3 -----------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_subvsi3
//===-- subvsi3_test.c - Test __subvsi3 -----------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_subvti3
// REQUIRES: int128
//===-- subvti3_test.c - Test __subvti3 -----------------------------------===//
//
// RUN: %clang_builtins %s %librt -fnested-functions -o %t && %run %t
+// REQUIRES: librt_has_trampoline_setup
/* ===-- trampoline_setup_test.c - Test __trampoline_setup -----------------===
*
* Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_truncdfhf2
//===--------------- truncdfhf2_test.c - Test __truncdfhf2 ----------------===//
//
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_truncdfsf2
//===--------------- truncdfsf2_test.c - Test __truncdfsf2 ----------------===//
//
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_truncdfsf2vfp
//===-- truncdfsf2vfp_test.c - Test __truncdfsf2vfp -----------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_truncsfhf2
//===--------------- truncsfhf2_test.c - Test __truncsfhf2 ----------------===//
//
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_trunctfdf2
//===-------------- trunctfdf2_test.c - Test __trunctfdf2 -----------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_trunctfsf2
//===--------------- trunctfsf2_test.c - Test __trunctfsf2 ----------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_ucmpdi2
//===-- ucmpdi2_test.c - Test __ucmpdi2 -----------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_ucmpti2
// REQUIRES: int128
//===-- ucmpti2_test.c - Test __ucmpti2 -----------------------------------===//
//
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_udivdi3
//===-- udivdi3_test.c - Test __udivdi3 -----------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_udivmoddi4
//===-- udivmoddi4_test.c - Test __udivmoddi4 -----------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_udivmodsi4
//===-- udivmodsi4_test.c - Test __udivmodsi4 -----------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_udivmodti4
// REQUIRES: int128
//===-- udivmodti4_test.c - Test __udivmodti4 -----------------------------===//
//
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_udivsi3
//===-- udivsi3_test.c - Test __udivsi3 -----------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_udivti3
// REQUIRES: int128
//===-- udivti3_test.c - Test __udivti3 -----------------------------------===//
//
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_umoddi3
//===-- umoddi3_test.c - Test __umoddi3 -----------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_umodsi3
//===-- umodsi3_test.c - Test __umodsi3 -----------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_umodti3
// REQUIRES: int128
//===-- umodti3_test.c - Test __umodti3 -----------------------------------===//
//
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_unorddf2vfp
//===-- unorddf2vfp_test.c - Test __unorddf2vfp ---------------------------===//
//
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_unordsf2vfp
//===-- unordsf2vfp_test.c - Test __unordsf2vfp ---------------------------===//
//
// RUN: %clang_builtins %s %librt -o %t && %run %t
+// REQUIRES: librt_has_comparetf2
//===------------ unordtf2_test.c - Test __unordtf2------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.