llvmbot wrote:
<!--LLVM PR SUMMARY COMMENT--> @llvm/pr-subscribers-llvm-ir Author: Matt Arsenault (arsenm) <details> <summary>Changes</summary> Replace RuntimeLibcalls.def with a tablegenerated version. This is in preparation for splitting RuntimeLibcalls into two components. For now match the existing functionality. --- Patch is 105.75 KiB, truncated to 20.00 KiB below, full version: https://github.com/llvm/llvm-project/pull/144972.diff 13 Files Affected: - (modified) llvm/include/llvm/IR/CMakeLists.txt (+3) - (removed) llvm/include/llvm/IR/RuntimeLibcalls.def (-701) - (modified) llvm/include/llvm/IR/RuntimeLibcalls.h (+20-16) - (added) llvm/include/llvm/IR/RuntimeLibcalls.td (+1054) - (added) llvm/include/llvm/IR/RuntimeLibcallsImpl.td (+32) - (modified) llvm/include/module.modulemap (-1) - (modified) llvm/lib/IR/RuntimeLibcalls.cpp (+31-77) - (removed) llvm/lib/IR/ZOSLibcallNames.def (-100) - (modified) llvm/lib/Object/IRSymtab.cpp (+1-1) - (added) llvm/test/TableGen/RuntimeLibcallEmitter.td (+40) - (modified) llvm/utils/TableGen/Basic/CMakeLists.txt (+1) - (added) llvm/utils/TableGen/Basic/RuntimeLibcallsEmitter.cpp (+305) - (modified) llvm/utils/gn/secondary/llvm/utils/TableGen/Basic/BUILD.gn (+1) ``````````diff diff --git a/llvm/include/llvm/IR/CMakeLists.txt b/llvm/include/llvm/IR/CMakeLists.txt index 468d663796ed4..c5c4cc4d21b84 100644 --- a/llvm/include/llvm/IR/CMakeLists.txt +++ b/llvm/include/llvm/IR/CMakeLists.txt @@ -1,6 +1,9 @@ set(LLVM_TARGET_DEFINITIONS Attributes.td) tablegen(LLVM Attributes.inc -gen-attrs) +set(LLVM_TARGET_DEFINITIONS RuntimeLibcalls.td) +tablegen(LLVM RuntimeLibcalls.inc -gen-runtime-libcalls) + set(LLVM_TARGET_DEFINITIONS Intrinsics.td) tablegen(LLVM IntrinsicImpl.inc -gen-intrinsic-impl) tablegen(LLVM IntrinsicEnums.inc -gen-intrinsic-enums) diff --git a/llvm/include/llvm/IR/RuntimeLibcalls.def b/llvm/include/llvm/IR/RuntimeLibcalls.def deleted file mode 100644 index 247643525ff48..0000000000000 --- a/llvm/include/llvm/IR/RuntimeLibcalls.def +++ /dev/null @@ -1,701 +0,0 @@ -//===-- llvm/RuntimeLibcalls.def - File that describes libcalls -*- C++ -*-===// -// -// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. -// See https://llvm.org/LICENSE.txt for license information. -// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception -// -//===----------------------------------------------------------------------===// -// -// This file defines all of the runtime library calls the backend can emit. -// The various long double types cannot be merged, because 80-bit library -// functions use "xf" and 128-bit use "tf". -// -// When adding PPCF128 functions here, note that their names generally need -// to be overridden for Darwin with the xxx$LDBL128 form. See -// PPCISelLowering.cpp. -// -//===----------------------------------------------------------------------===// - -// NOTE: NO INCLUDE GUARD DESIRED! - -// Provide definitions of macros so that users of this file do not have to -// define everything to use it... - -// Declare the enumerator for each libcall, along with its default name. Some -// libcalls have different names on particular OSes or architectures. These -// are set in InitLibcalls() in TargetLoweringBase.cpp and/or by targets -// using TargetLoweringBase::setLibcallName() -#ifndef HANDLE_LIBCALL -#error "HANDLE_LIBCALL must be defined" -#endif - -// Integer -HANDLE_LIBCALL(SHL_I16, "__ashlhi3") -HANDLE_LIBCALL(SHL_I32, "__ashlsi3") -HANDLE_LIBCALL(SHL_I64, "__ashldi3") -HANDLE_LIBCALL(SHL_I128, "__ashlti3") -HANDLE_LIBCALL(SRL_I16, "__lshrhi3") -HANDLE_LIBCALL(SRL_I32, "__lshrsi3") -HANDLE_LIBCALL(SRL_I64, "__lshrdi3") -HANDLE_LIBCALL(SRL_I128, "__lshrti3") -HANDLE_LIBCALL(SRA_I16, "__ashrhi3") -HANDLE_LIBCALL(SRA_I32, "__ashrsi3") -HANDLE_LIBCALL(SRA_I64, "__ashrdi3") -HANDLE_LIBCALL(SRA_I128, "__ashrti3") -HANDLE_LIBCALL(MUL_I8, "__mulqi3") -HANDLE_LIBCALL(MUL_I16, "__mulhi3") -HANDLE_LIBCALL(MUL_I32, "__mulsi3") -HANDLE_LIBCALL(MUL_I64, "__muldi3") -HANDLE_LIBCALL(MUL_I128, "__multi3") -HANDLE_LIBCALL(MULO_I32, "__mulosi4") -HANDLE_LIBCALL(MULO_I64, "__mulodi4") -HANDLE_LIBCALL(MULO_I128, "__muloti4") -HANDLE_LIBCALL(SDIV_I8, "__divqi3") -HANDLE_LIBCALL(SDIV_I16, "__divhi3") -HANDLE_LIBCALL(SDIV_I32, "__divsi3") -HANDLE_LIBCALL(SDIV_I64, "__divdi3") -HANDLE_LIBCALL(SDIV_I128, "__divti3") -HANDLE_LIBCALL(UDIV_I8, "__udivqi3") -HANDLE_LIBCALL(UDIV_I16, "__udivhi3") -HANDLE_LIBCALL(UDIV_I32, "__udivsi3") -HANDLE_LIBCALL(UDIV_I64, "__udivdi3") -HANDLE_LIBCALL(UDIV_I128, "__udivti3") -HANDLE_LIBCALL(SREM_I8, "__modqi3") -HANDLE_LIBCALL(SREM_I16, "__modhi3") -HANDLE_LIBCALL(SREM_I32, "__modsi3") -HANDLE_LIBCALL(SREM_I64, "__moddi3") -HANDLE_LIBCALL(SREM_I128, "__modti3") -HANDLE_LIBCALL(UREM_I8, "__umodqi3") -HANDLE_LIBCALL(UREM_I16, "__umodhi3") -HANDLE_LIBCALL(UREM_I32, "__umodsi3") -HANDLE_LIBCALL(UREM_I64, "__umoddi3") -HANDLE_LIBCALL(UREM_I128, "__umodti3") -HANDLE_LIBCALL(SDIVREM_I8, LIBCALL_NO_NAME) -HANDLE_LIBCALL(SDIVREM_I16, LIBCALL_NO_NAME) -HANDLE_LIBCALL(SDIVREM_I32, LIBCALL_NO_NAME) -HANDLE_LIBCALL(SDIVREM_I64, LIBCALL_NO_NAME) -HANDLE_LIBCALL(SDIVREM_I128, LIBCALL_NO_NAME) -HANDLE_LIBCALL(UDIVREM_I8, LIBCALL_NO_NAME) -HANDLE_LIBCALL(UDIVREM_I16, LIBCALL_NO_NAME) -HANDLE_LIBCALL(UDIVREM_I32, LIBCALL_NO_NAME) -HANDLE_LIBCALL(UDIVREM_I64, LIBCALL_NO_NAME) -HANDLE_LIBCALL(UDIVREM_I128, LIBCALL_NO_NAME) -HANDLE_LIBCALL(NEG_I32, "__negsi2") -HANDLE_LIBCALL(NEG_I64, "__negdi2") -HANDLE_LIBCALL(CTLZ_I32, "__clzsi2") -HANDLE_LIBCALL(CTLZ_I64, "__clzdi2") -HANDLE_LIBCALL(CTLZ_I128, "__clzti2") -HANDLE_LIBCALL(CTPOP_I32, "__popcountsi2") -HANDLE_LIBCALL(CTPOP_I64, "__popcountdi2") -HANDLE_LIBCALL(CTPOP_I128, "__popcountti2") - -// Floating-point -HANDLE_LIBCALL(ADD_F32, "__addsf3") -HANDLE_LIBCALL(ADD_F64, "__adddf3") -HANDLE_LIBCALL(ADD_F80, "__addxf3") -HANDLE_LIBCALL(ADD_F128, "__addtf3") -HANDLE_LIBCALL(ADD_PPCF128, "__gcc_qadd") -HANDLE_LIBCALL(SUB_F32, "__subsf3") -HANDLE_LIBCALL(SUB_F64, "__subdf3") -HANDLE_LIBCALL(SUB_F80, "__subxf3") -HANDLE_LIBCALL(SUB_F128, "__subtf3") -HANDLE_LIBCALL(SUB_PPCF128, "__gcc_qsub") -HANDLE_LIBCALL(MUL_F32, "__mulsf3") -HANDLE_LIBCALL(MUL_F64, "__muldf3") -HANDLE_LIBCALL(MUL_F80, "__mulxf3") -HANDLE_LIBCALL(MUL_F128, "__multf3") -HANDLE_LIBCALL(MUL_PPCF128, "__gcc_qmul") -HANDLE_LIBCALL(DIV_F32, "__divsf3") -HANDLE_LIBCALL(DIV_F64, "__divdf3") -HANDLE_LIBCALL(DIV_F80, "__divxf3") -HANDLE_LIBCALL(DIV_F128, "__divtf3") -HANDLE_LIBCALL(DIV_PPCF128, "__gcc_qdiv") -HANDLE_LIBCALL(REM_F32, "fmodf") -HANDLE_LIBCALL(REM_F64, "fmod") -HANDLE_LIBCALL(REM_F80, "fmodl") -HANDLE_LIBCALL(REM_F128, "fmodl") -HANDLE_LIBCALL(REM_PPCF128, "fmodl") -HANDLE_LIBCALL(FMA_F32, "fmaf") -HANDLE_LIBCALL(FMA_F64, "fma") -HANDLE_LIBCALL(FMA_F80, "fmal") -HANDLE_LIBCALL(FMA_F128, "fmal") -HANDLE_LIBCALL(FMA_PPCF128, "fmal") -HANDLE_LIBCALL(POWI_F32, "__powisf2") -HANDLE_LIBCALL(POWI_F64, "__powidf2") -HANDLE_LIBCALL(POWI_F80, "__powixf2") -HANDLE_LIBCALL(POWI_F128, "__powitf2") -HANDLE_LIBCALL(POWI_PPCF128, "__powitf2") -HANDLE_LIBCALL(SQRT_F32, "sqrtf") -HANDLE_LIBCALL(SQRT_F64, "sqrt") -HANDLE_LIBCALL(SQRT_F80, "sqrtl") -HANDLE_LIBCALL(SQRT_F128, "sqrtl") -HANDLE_LIBCALL(SQRT_PPCF128, "sqrtl") -HANDLE_LIBCALL(CBRT_F32, "cbrtf") -HANDLE_LIBCALL(CBRT_F64, "cbrt") -HANDLE_LIBCALL(CBRT_F80, "cbrtl") -HANDLE_LIBCALL(CBRT_F128, "cbrtl") -HANDLE_LIBCALL(CBRT_PPCF128, "cbrtl") -HANDLE_LIBCALL(LOG_F32, "logf") -HANDLE_LIBCALL(LOG_F64, "log") -HANDLE_LIBCALL(LOG_F80, "logl") -HANDLE_LIBCALL(LOG_F128, "logl") -HANDLE_LIBCALL(LOG_PPCF128, "logl") -HANDLE_LIBCALL(LOG_FINITE_F32, "__logf_finite") -HANDLE_LIBCALL(LOG_FINITE_F64, "__log_finite") -HANDLE_LIBCALL(LOG_FINITE_F80, "__logl_finite") -HANDLE_LIBCALL(LOG_FINITE_F128, "__logl_finite") -HANDLE_LIBCALL(LOG_FINITE_PPCF128, "__logl_finite") -HANDLE_LIBCALL(LOG2_F32, "log2f") -HANDLE_LIBCALL(LOG2_F64, "log2") -HANDLE_LIBCALL(LOG2_F80, "log2l") -HANDLE_LIBCALL(LOG2_F128, "log2l") -HANDLE_LIBCALL(LOG2_PPCF128, "log2l") -HANDLE_LIBCALL(LOG2_FINITE_F32, "__log2f_finite") -HANDLE_LIBCALL(LOG2_FINITE_F64, "__log2_finite") -HANDLE_LIBCALL(LOG2_FINITE_F80, "__log2l_finite") -HANDLE_LIBCALL(LOG2_FINITE_F128, "__log2l_finite") -HANDLE_LIBCALL(LOG2_FINITE_PPCF128, "__log2l_finite") -HANDLE_LIBCALL(LOG10_F32, "log10f") -HANDLE_LIBCALL(LOG10_F64, "log10") -HANDLE_LIBCALL(LOG10_F80, "log10l") -HANDLE_LIBCALL(LOG10_F128, "log10l") -HANDLE_LIBCALL(LOG10_PPCF128, "log10l") -HANDLE_LIBCALL(LOG10_FINITE_F32, "__log10f_finite") -HANDLE_LIBCALL(LOG10_FINITE_F64, "__log10_finite") -HANDLE_LIBCALL(LOG10_FINITE_F80, "__log10l_finite") -HANDLE_LIBCALL(LOG10_FINITE_F128, "__log10l_finite") -HANDLE_LIBCALL(LOG10_FINITE_PPCF128, "__log10l_finite") -HANDLE_LIBCALL(EXP_F32, "expf") -HANDLE_LIBCALL(EXP_F64, "exp") -HANDLE_LIBCALL(EXP_F80, "expl") -HANDLE_LIBCALL(EXP_F128, "expl") -HANDLE_LIBCALL(EXP_PPCF128, "expl") -HANDLE_LIBCALL(EXP_FINITE_F32, "__expf_finite") -HANDLE_LIBCALL(EXP_FINITE_F64, "__exp_finite") -HANDLE_LIBCALL(EXP_FINITE_F80, "__expl_finite") -HANDLE_LIBCALL(EXP_FINITE_F128, "__expl_finite") -HANDLE_LIBCALL(EXP_FINITE_PPCF128, "__expl_finite") -HANDLE_LIBCALL(EXP2_F32, "exp2f") -HANDLE_LIBCALL(EXP2_F64, "exp2") -HANDLE_LIBCALL(EXP2_F80, "exp2l") -HANDLE_LIBCALL(EXP2_F128, "exp2l") -HANDLE_LIBCALL(EXP2_PPCF128, "exp2l") -HANDLE_LIBCALL(EXP2_FINITE_F32, "__exp2f_finite") -HANDLE_LIBCALL(EXP2_FINITE_F64, "__exp2_finite") -HANDLE_LIBCALL(EXP2_FINITE_F80, "__exp2l_finite") -HANDLE_LIBCALL(EXP2_FINITE_F128, "__exp2l_finite") -HANDLE_LIBCALL(EXP2_FINITE_PPCF128, "__exp2l_finite") -HANDLE_LIBCALL(EXP10_F32, "exp10f") -HANDLE_LIBCALL(EXP10_F64, "exp10") -HANDLE_LIBCALL(EXP10_F80, "exp10l") -HANDLE_LIBCALL(EXP10_F128, "exp10l") -HANDLE_LIBCALL(EXP10_PPCF128, "exp10l") -HANDLE_LIBCALL(SIN_F32, "sinf") -HANDLE_LIBCALL(SIN_F64, "sin") -HANDLE_LIBCALL(SIN_F80, "sinl") -HANDLE_LIBCALL(SIN_F128, "sinl") -HANDLE_LIBCALL(SIN_PPCF128, "sinl") -HANDLE_LIBCALL(COS_F32, "cosf") -HANDLE_LIBCALL(COS_F64, "cos") -HANDLE_LIBCALL(COS_F80, "cosl") -HANDLE_LIBCALL(COS_F128, "cosl") -HANDLE_LIBCALL(COS_PPCF128, "cosl") -HANDLE_LIBCALL(TAN_F32, "tanf") -HANDLE_LIBCALL(TAN_F64, "tan") -HANDLE_LIBCALL(TAN_F80, "tanl") -HANDLE_LIBCALL(TAN_F128,"tanl") -HANDLE_LIBCALL(TAN_PPCF128, "tanl") -HANDLE_LIBCALL(SINH_F32, "sinhf") -HANDLE_LIBCALL(SINH_F64, "sinh") -HANDLE_LIBCALL(SINH_F80, "sinhl") -HANDLE_LIBCALL(SINH_F128, "sinhl") -HANDLE_LIBCALL(SINH_PPCF128, "sinhl") -HANDLE_LIBCALL(COSH_F32, "coshf") -HANDLE_LIBCALL(COSH_F64, "cosh") -HANDLE_LIBCALL(COSH_F80, "coshl") -HANDLE_LIBCALL(COSH_F128, "coshl") -HANDLE_LIBCALL(COSH_PPCF128, "coshl") -HANDLE_LIBCALL(TANH_F32, "tanhf") -HANDLE_LIBCALL(TANH_F64, "tanh") -HANDLE_LIBCALL(TANH_F80, "tanhl") -HANDLE_LIBCALL(TANH_F128,"tanhl") -HANDLE_LIBCALL(TANH_PPCF128, "tanhl") -HANDLE_LIBCALL(ASIN_F32, "asinf") -HANDLE_LIBCALL(ASIN_F64, "asin") -HANDLE_LIBCALL(ASIN_F80, "asinl") -HANDLE_LIBCALL(ASIN_F128, "asinl") -HANDLE_LIBCALL(ASIN_PPCF128, "asinl") -HANDLE_LIBCALL(ACOS_F32, "acosf") -HANDLE_LIBCALL(ACOS_F64, "acos") -HANDLE_LIBCALL(ACOS_F80, "acosl") -HANDLE_LIBCALL(ACOS_F128, "acosl") -HANDLE_LIBCALL(ACOS_PPCF128, "acosl") -HANDLE_LIBCALL(ATAN_F32, "atanf") -HANDLE_LIBCALL(ATAN_F64, "atan") -HANDLE_LIBCALL(ATAN_F80, "atanl") -HANDLE_LIBCALL(ATAN_F128,"atanl") -HANDLE_LIBCALL(ATAN_PPCF128, "atanl") -HANDLE_LIBCALL(ATAN2_F32, "atan2f") -HANDLE_LIBCALL(ATAN2_F64, "atan2") -HANDLE_LIBCALL(ATAN2_F80, "atan2l") -HANDLE_LIBCALL(ATAN2_F128,"atan2l") -HANDLE_LIBCALL(ATAN2_PPCF128, "atan2l") -HANDLE_LIBCALL(SINCOS_F32, LIBCALL_NO_NAME) -HANDLE_LIBCALL(SINCOS_F64, LIBCALL_NO_NAME) -HANDLE_LIBCALL(SINCOS_F80, LIBCALL_NO_NAME) -HANDLE_LIBCALL(SINCOS_F128, LIBCALL_NO_NAME) -HANDLE_LIBCALL(SINCOS_PPCF128, LIBCALL_NO_NAME) -HANDLE_LIBCALL(SINCOS_STRET_F32, LIBCALL_NO_NAME) -HANDLE_LIBCALL(SINCOS_STRET_F64, LIBCALL_NO_NAME) -HANDLE_LIBCALL(POW_F32, "powf") -HANDLE_LIBCALL(POW_F64, "pow") -HANDLE_LIBCALL(POW_F80, "powl") -HANDLE_LIBCALL(POW_F128, "powl") -HANDLE_LIBCALL(POW_PPCF128, "powl") -HANDLE_LIBCALL(POW_FINITE_F32, "__powf_finite") -HANDLE_LIBCALL(POW_FINITE_F64, "__pow_finite") -HANDLE_LIBCALL(POW_FINITE_F80, "__powl_finite") -HANDLE_LIBCALL(POW_FINITE_F128, "__powl_finite") -HANDLE_LIBCALL(POW_FINITE_PPCF128, "__powl_finite") -HANDLE_LIBCALL(CEIL_F32, "ceilf") -HANDLE_LIBCALL(CEIL_F64, "ceil") -HANDLE_LIBCALL(CEIL_F80, "ceill") -HANDLE_LIBCALL(CEIL_F128, "ceill") -HANDLE_LIBCALL(CEIL_PPCF128, "ceill") -HANDLE_LIBCALL(TRUNC_F32, "truncf") -HANDLE_LIBCALL(TRUNC_F64, "trunc") -HANDLE_LIBCALL(TRUNC_F80, "truncl") -HANDLE_LIBCALL(TRUNC_F128, "truncl") -HANDLE_LIBCALL(TRUNC_PPCF128, "truncl") -HANDLE_LIBCALL(RINT_F32, "rintf") -HANDLE_LIBCALL(RINT_F64, "rint") -HANDLE_LIBCALL(RINT_F80, "rintl") -HANDLE_LIBCALL(RINT_F128, "rintl") -HANDLE_LIBCALL(RINT_PPCF128, "rintl") -HANDLE_LIBCALL(NEARBYINT_F32, "nearbyintf") -HANDLE_LIBCALL(NEARBYINT_F64, "nearbyint") -HANDLE_LIBCALL(NEARBYINT_F80, "nearbyintl") -HANDLE_LIBCALL(NEARBYINT_F128, "nearbyintl") -HANDLE_LIBCALL(NEARBYINT_PPCF128, "nearbyintl") -HANDLE_LIBCALL(ROUND_F32, "roundf") -HANDLE_LIBCALL(ROUND_F64, "round") -HANDLE_LIBCALL(ROUND_F80, "roundl") -HANDLE_LIBCALL(ROUND_F128, "roundl") -HANDLE_LIBCALL(ROUND_PPCF128, "roundl") -HANDLE_LIBCALL(ROUNDEVEN_F32, "roundevenf") -HANDLE_LIBCALL(ROUNDEVEN_F64, "roundeven") -HANDLE_LIBCALL(ROUNDEVEN_F80, "roundevenl") -HANDLE_LIBCALL(ROUNDEVEN_F128, "roundevenl") -HANDLE_LIBCALL(ROUNDEVEN_PPCF128, "roundevenl") -HANDLE_LIBCALL(FLOOR_F32, "floorf") -HANDLE_LIBCALL(FLOOR_F64, "floor") -HANDLE_LIBCALL(FLOOR_F80, "floorl") -HANDLE_LIBCALL(FLOOR_F128, "floorl") -HANDLE_LIBCALL(FLOOR_PPCF128, "floorl") -HANDLE_LIBCALL(COPYSIGN_F32, "copysignf") -HANDLE_LIBCALL(COPYSIGN_F64, "copysign") -HANDLE_LIBCALL(COPYSIGN_F80, "copysignl") -HANDLE_LIBCALL(COPYSIGN_F128, "copysignl") -HANDLE_LIBCALL(COPYSIGN_PPCF128, "copysignl") -HANDLE_LIBCALL(FMIN_F32, "fminf") -HANDLE_LIBCALL(FMIN_F64, "fmin") -HANDLE_LIBCALL(FMIN_F80, "fminl") -HANDLE_LIBCALL(FMIN_F128, "fminl") -HANDLE_LIBCALL(FMIN_PPCF128, "fminl") -HANDLE_LIBCALL(FMAX_F32, "fmaxf") -HANDLE_LIBCALL(FMAX_F64, "fmax") -HANDLE_LIBCALL(FMAX_F80, "fmaxl") -HANDLE_LIBCALL(FMAX_F128, "fmaxl") -HANDLE_LIBCALL(FMAX_PPCF128, "fmaxl") -HANDLE_LIBCALL(FMINIMUM_F32, "fminimumf") -HANDLE_LIBCALL(FMINIMUM_F64, "fminimum") -HANDLE_LIBCALL(FMINIMUM_F80, "fminimuml") -HANDLE_LIBCALL(FMINIMUM_F128, "fminimuml") -HANDLE_LIBCALL(FMINIMUM_PPCF128, "fminimuml") -HANDLE_LIBCALL(FMAXIMUM_F32, "fmaximumf") -HANDLE_LIBCALL(FMAXIMUM_F64, "fmaximum") -HANDLE_LIBCALL(FMAXIMUM_F80, "fmaximuml") -HANDLE_LIBCALL(FMAXIMUM_F128, "fmaximuml") -HANDLE_LIBCALL(FMAXIMUM_PPCF128, "fmaximum_numl") -HANDLE_LIBCALL(FMINIMUM_NUM_F32, "fminimum_numf") -HANDLE_LIBCALL(FMINIMUM_NUM_F64, "fminimum_num") -HANDLE_LIBCALL(FMINIMUM_NUM_F80, "fminimum_numl") -HANDLE_LIBCALL(FMINIMUM_NUM_F128, "fminimum_numl") -HANDLE_LIBCALL(FMINIMUM_NUM_PPCF128, "fminimum_numl") -HANDLE_LIBCALL(FMAXIMUM_NUM_F32, "fmaximum_numf") -HANDLE_LIBCALL(FMAXIMUM_NUM_F64, "fmaximum_num") -HANDLE_LIBCALL(FMAXIMUM_NUM_F80, "fmaximum_numl") -HANDLE_LIBCALL(FMAXIMUM_NUM_F128, "fmaximum_numl") -HANDLE_LIBCALL(FMAXIMUM_NUM_PPCF128, "fmaximum_numl") -HANDLE_LIBCALL(LROUND_F32, "lroundf") -HANDLE_LIBCALL(LROUND_F64, "lround") -HANDLE_LIBCALL(LROUND_F80, "lroundl") -HANDLE_LIBCALL(LROUND_F128, "lroundl") -HANDLE_LIBCALL(LROUND_PPCF128, "lroundl") -HANDLE_LIBCALL(LLROUND_F32, "llroundf") -HANDLE_LIBCALL(LLROUND_F64, "llround") -HANDLE_LIBCALL(LLROUND_F80, "llroundl") -HANDLE_LIBCALL(LLROUND_F128, "llroundl") -HANDLE_LIBCALL(LLROUND_PPCF128, "llroundl") -HANDLE_LIBCALL(LRINT_F32, "lrintf") -HANDLE_LIBCALL(LRINT_F64, "lrint") -HANDLE_LIBCALL(LRINT_F80, "lrintl") -HANDLE_LIBCALL(LRINT_F128, "lrintl") -HANDLE_LIBCALL(LRINT_PPCF128, "lrintl") -HANDLE_LIBCALL(LLRINT_F32, "llrintf") -HANDLE_LIBCALL(LLRINT_F64, "llrint") -HANDLE_LIBCALL(LLRINT_F80, "llrintl") -HANDLE_LIBCALL(LLRINT_F128, "llrintl") -HANDLE_LIBCALL(LLRINT_PPCF128, "llrintl") -HANDLE_LIBCALL(LDEXP_F32, "ldexpf") -HANDLE_LIBCALL(LDEXP_F64, "ldexp") -HANDLE_LIBCALL(LDEXP_F80, "ldexpl") -HANDLE_LIBCALL(LDEXP_F128, "ldexpl") -HANDLE_LIBCALL(LDEXP_PPCF128, "ldexpl") -HANDLE_LIBCALL(FREXP_F32, "frexpf") -HANDLE_LIBCALL(FREXP_F64, "frexp") -HANDLE_LIBCALL(FREXP_F80, "frexpl") -HANDLE_LIBCALL(FREXP_F128, "frexpl") -HANDLE_LIBCALL(FREXP_PPCF128, "frexpl") -HANDLE_LIBCALL(SINCOSPI_F32, "sincospif") -HANDLE_LIBCALL(SINCOSPI_F64, "sincospi") -HANDLE_LIBCALL(SINCOSPI_F80, "sincospil") -HANDLE_LIBCALL(SINCOSPI_F128, "sincospil") -HANDLE_LIBCALL(SINCOSPI_PPCF128, "sincospil") -HANDLE_LIBCALL(MODF_F32, "modff") -HANDLE_LIBCALL(MODF_F64, "modf") -HANDLE_LIBCALL(MODF_F80, "modfl") -HANDLE_LIBCALL(MODF_F128, "modfl") -HANDLE_LIBCALL(MODF_PPCF128, "modfl") - -// Floating point environment -HANDLE_LIBCALL(FEGETENV, "fegetenv") -HANDLE_LIBCALL(FESETENV, "fesetenv") - -// Floating point control modes -HANDLE_LIBCALL(FEGETMODE, "fegetmode") -HANDLE_LIBCALL(FESETMODE, "fesetmode") - -// Conversion -HANDLE_LIBCALL(FPEXT_BF16_F32, "__extendbfsf2") -HANDLE_LIBCALL(FPEXT_F32_PPCF128, "__gcc_stoq") -HANDLE_LIBCALL(FPEXT_F64_PPCF128, "__gcc_dtoq") -HANDLE_LIBCALL(FPEXT_F80_F128, "__extendxftf2") -HANDLE_LIBCALL(FPEXT_F64_F128, "__extenddftf2") -HANDLE_LIBCALL(FPEXT_F32_F128, "__extendsftf2") -HANDLE_LIBCALL(FPEXT_F16_F128, "__extendhftf2") -HANDLE_LIBCALL(FPEXT_F16_F80, "__extendhfxf2") -HANDLE_LIBCALL(FPEXT_F32_F64, "__extendsfdf2") -HANDLE_LIBCALL(FPEXT_F16_F64, "__extendhfdf2") -HANDLE_LIBCALL(FPEXT_F16_F32, "__extendhfsf2") -HANDLE_LIBCALL(FPROUND_F32_F16, "__truncsfhf2") -HANDLE_LIBCALL(FPROUND_F64_F16, "__truncdfhf2") -HANDLE_LIBCALL(FPROUND_F80_F16, "__truncxfhf2") -HANDLE_LIBCALL(FPROUND_F128_F16, "__trunctfhf2") -HANDLE_LIBCALL(FPROUND_PPCF128_F16, "__trunctfhf2") -HANDLE_LIBCALL(FPROUND_F32_BF16, "__truncsfbf2") -HANDLE_LIBCALL(FPROUND_F64_BF16, "__truncdfbf2") -HANDLE_LIBCALL(FPROUND_F80_BF16, "__truncxfbf2") -HANDLE_LIBCALL(FPROUND_F128_BF16, "__trunctfbf2") -HANDLE_LIBCALL(FPROUND_F64_F32, "__truncdfsf2") -HANDLE_LIBCALL(FPROUND_F80_F32, "__truncxfsf2") -HANDLE_LIBCALL(FPROUND_F128_F32, "__trunctfsf2") -HANDLE_LIBCALL(FPROUND_PPCF128_F32, "__gcc_qtos") -HANDLE_LIBCALL(FPROUND_F80_F64, "__truncxfdf2") -HANDLE_LIBCALL(FPROUND_F128_F64, "__trunctfdf2") -HANDLE_LIBCALL(FPROUND_PPCF128_F64, "__gcc_qtod") -HANDLE_LIBCALL(FPROUND_F128_F80, "__trunctfxf2") -HANDLE_LIBCALL(FPTOSINT_F16_I32, "__fixhfsi") -HANDLE_LIBCALL(FPTOSINT_F16_I64, "__fixhfdi") -HANDLE_LIBCALL(FPTOSINT_F16_I128, "__fixhfti") -HANDLE_LIBCALL(FPTOSINT_F32_I32, "__fixsfsi") -HANDLE_LIBCALL(FPTOSINT_F32_I64, "__fixsfdi") -HANDLE_LIBCALL(FPTOSINT_F32_I128, "__fixsfti") -HANDLE_LIBCALL(FPTOSINT_F64_I32, "__fixdfsi") -HANDLE_LIBCALL(FPTOSINT_F64_I64, "__fixdfdi") -HANDLE_LIBCALL(FPTOSINT_F64_I128, "__fixdfti") -HANDLE_LIBCALL(FPTOSINT_F80_I32, "__fixxfsi") -HANDLE_LIBCALL(FPTOSINT_F80_I64, "__fixxfdi") -HANDLE_LIBCALL(FPTOSINT_F80_I128, "__fixxfti") -HANDLE_LIBCALL(FPTOSINT_F128_I32, "__fixtfsi") -HANDLE_LIBCALL(FPTOSINT_F128_I64, "__fixtfdi") -HANDLE_LIBCALL(FPTOSINT_F128_I128, "__fixtfti") -HANDLE_LIBCALL(FPTOSINT_PPCF128_I32, "__gcc_qtou") -HANDLE_LIBCALL(FPTOSINT_PPCF128_I64, "__fixtfdi") -HANDLE_LIBCALL(FPTOSINT_PPCF128_I128, "__fixtfti") -HANDLE_LIBCALL(FPTOUINT_F16_I32, "__fixunshfsi") -HANDLE_LIBCALL(FPTOUINT_F16_I64, "__fixunshfdi") -HANDLE_LIBCALL(FPTOUINT_F16_I128, "__fixunshfti") -HANDLE_LIBCALL(FPTOUINT_F32_I32, "__fixunssfsi") -HANDLE_LIBCALL(FPTOUINT_F32_I64, "__fixunssfdi") -HANDLE_LIBCALL(FPTOUINT_F32_I128, "__fixunssfti") -HANDLE_LIBCALL(FPTOUINT_F64_I32, "__fixunsdfsi") -HANDLE_LIBCALL(FPTOUINT_F64_I64, "__fixunsdfdi") -HANDLE_LIBCALL(FPTOUINT_F64_I128, "__fixunsdfti") -HANDLE_LIBCALL(FPTOUINT_F80_I32, "__fixunsxfsi") -HANDLE_LIBCALL(FPTOUINT_F80_I64, "__fixunsxfdi") -HANDLE_LIBCALL(FPTOUINT_F80_I128, "__fixunsxfti") -HANDLE_LIBCALL(FPTOUINT_F128_I32, "__fixunstfsi") -HANDLE_LIBCALL(FPTOUINT_F128_I64, "__fixunstfdi") -HANDLE_LIBCALL(FPTOUINT_F128_I128, "__fixunstfti") -HANDLE_LIBCALL(FPTOUINT_PPCF128_I32, "__fixunstfsi") -HANDLE_LIBCALL(FPTOUINT_PPCF128_I64, "__fixunstfdi") -HANDLE_LIBCALL(FPTOUINT_PPCF128_I128, "__fixunstfti") -HANDLE_LIBCALL(SINTTOFP_I32_F16, "__floatsihf") -HANDLE_LIBCALL(SINTTOFP_I32_F32, "__floatsisf") -HANDLE_LIBCALL(SINTTOFP_I32_F64, "__floatsidf") -HANDLE_LIBCALL(SINTTOFP_I32_F80, "__floatsixf") -HANDLE_LIBCALL(SINTTOFP_I32_F128, "__floatsitf") -HANDLE_LIBCALL(SINTTOFP_I32_PPCF128, "__gcc_itoq") -HANDLE_LIBCALL(SINTTOFP_I64_BF16, "__floatdibf") -HANDLE_LIBCALL(SINTTOFP_I64_F16, "__floatdihf") -HANDLE_LIBCALL(SINTTOFP_I64_F32, "__floatdisf") -HANDLE_LIBCALL(SINTTOFP_I64_F64, "__floatdidf") -HANDLE_LIBCALL(SINTTOFP_I64_F80, "__floatdixf") -HANDLE_LIBCALL(SINTTOFP_I64_F128, "__floatditf") -HANDLE_LIBCALL(SINTTOFP_I64_PPCF128, "__floatditf") -HANDLE_LIBCALL(SINTTOFP_I128_F16, "__floattihf") -HANDLE_LIBCALL(SINTTOFP_I128_F32, "__floattisf") -HANDLE_LIBCALL(SINTTOFP_I128_F64, "__floattidf") -HANDLE_LIBCALL(SINTTOFP_I128_F80, "__floattixf") -HANDLE_LIBCALL(SINTTOFP_I128_F128, "__floattitf") -HANDLE_LIBCALL(SINTTOFP_I128_PPCF128, "__floattitf") -HANDLE_LIBCALL(UINTTOFP_I32_F16, "__floatunsihf") -HANDLE_LIBCALL(UINTTOFP_I32_F32, "__floatunsisf") -HANDLE_LIBCALL(UINTTOFP_I32_F64, "__floatunsidf") -HANDLE_LIBCALL(UINTTOFP_I32_F80, "__floatunsixf") -HANDLE_LIBCALL(UINTTOFP_I32_F128, "__floatunsitf") -HANDLE_LIBCALL(UINTTOFP_I32_PPCF128, "__gcc_utoq") -HANDLE_LIBCALL(UINTTOFP_I64_BF16, "__floatundibf") -HANDLE_LIBCALL(UINTTOFP_I64_F16, "__floatundihf") -HANDLE_LIBCALL(UINTTOFP_I64_F32, "__floatundisf") -HANDLE_LIBCALL(UINTTOFP_I64_F64, "__floatundidf") -HANDLE_LIBCALL(UINTTOFP_I64_F80, "__floatundixf") -HANDLE_LIBC... [truncated] `````````` </details> https://github.com/llvm/llvm-project/pull/144972 _______________________________________________ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits