ScalarFuncs.def 4.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117
  1. //===-- ScalarFuncs.def - Library information ----------*- C++ -*----------===//
  2. //
  3. // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
  4. // See https://llvm.org/LICENSE.txt for license information.
  5. // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
  6. //
  7. //===----------------------------------------------------------------------===//
  8. // This .def file creates mapping from standard IEEE math functions
  9. // their corresponding entries in the IBM MASS (scalar) library.
  10. // LLVM intrinsic math functions will be handled in PPCISelLowing to
  11. // allow existing optimizations like pow(x,0.5) --> sqrt(x).
  12. #if defined(TLI_DEFINE_SCALAR_MASS_FUNCS)
  13. #define TLI_DEFINE_SCALAR_MASS_FUNC(SCAL, MASSENTRY) {SCAL, MASSENTRY},
  14. #endif
  15. TLI_DEFINE_SCALAR_MASS_FUNC("acosf", "__xl_acosf")
  16. TLI_DEFINE_SCALAR_MASS_FUNC("__acosf_finite", "__xl_acosf")
  17. TLI_DEFINE_SCALAR_MASS_FUNC("acos", "__xl_acos")
  18. TLI_DEFINE_SCALAR_MASS_FUNC("__acos_finite", "__xl_acos")
  19. TLI_DEFINE_SCALAR_MASS_FUNC("acoshf", "__xl_acoshf")
  20. TLI_DEFINE_SCALAR_MASS_FUNC("__acoshf_finite", "__xl_acoshf")
  21. TLI_DEFINE_SCALAR_MASS_FUNC("acosh", "__xl_acosh")
  22. TLI_DEFINE_SCALAR_MASS_FUNC("__acosh_finite", "__xl_acosh")
  23. TLI_DEFINE_SCALAR_MASS_FUNC("asinf", "__xl_asinf")
  24. TLI_DEFINE_SCALAR_MASS_FUNC("__asinf_finite", "__xl_asinf")
  25. TLI_DEFINE_SCALAR_MASS_FUNC("asin", "__xl_asin")
  26. TLI_DEFINE_SCALAR_MASS_FUNC("__asin_finite", "__xl_asin")
  27. TLI_DEFINE_SCALAR_MASS_FUNC("asinhf", "__xl_asinhf")
  28. TLI_DEFINE_SCALAR_MASS_FUNC("asinh", "__xl_asinh")
  29. TLI_DEFINE_SCALAR_MASS_FUNC("atanf", "__xl_atanf")
  30. TLI_DEFINE_SCALAR_MASS_FUNC("atan", "__xl_atan")
  31. TLI_DEFINE_SCALAR_MASS_FUNC("atan2f", "__xl_atan2f")
  32. TLI_DEFINE_SCALAR_MASS_FUNC("__atan2f_finite", "__xl_atan2f")
  33. TLI_DEFINE_SCALAR_MASS_FUNC("atan2", "__xl_atan2")
  34. TLI_DEFINE_SCALAR_MASS_FUNC("__atan2_finite", "__xl_atan2")
  35. TLI_DEFINE_SCALAR_MASS_FUNC("atanhf", "__xl_atanhf")
  36. TLI_DEFINE_SCALAR_MASS_FUNC("__atanhf_finite", "__xl_atanhf")
  37. TLI_DEFINE_SCALAR_MASS_FUNC("atanh", "__xl_atanh")
  38. TLI_DEFINE_SCALAR_MASS_FUNC("__atanh_finite", "__xl_atanh")
  39. TLI_DEFINE_SCALAR_MASS_FUNC("cbrtf", "__xl_cbrtf")
  40. TLI_DEFINE_SCALAR_MASS_FUNC("cbrt", "__xl_cbrt")
  41. TLI_DEFINE_SCALAR_MASS_FUNC("cosf", "__xl_cosf")
  42. TLI_DEFINE_SCALAR_MASS_FUNC("cos", "__xl_cos")
  43. TLI_DEFINE_SCALAR_MASS_FUNC("coshf", "__xl_coshf")
  44. TLI_DEFINE_SCALAR_MASS_FUNC("__coshf_finite", "__xl_coshf")
  45. TLI_DEFINE_SCALAR_MASS_FUNC("cosh", "__xl_cosh")
  46. TLI_DEFINE_SCALAR_MASS_FUNC("__cosh_finite", "__xl_cosh")
  47. TLI_DEFINE_SCALAR_MASS_FUNC("erff", "__xl_erff")
  48. TLI_DEFINE_SCALAR_MASS_FUNC("erf", "__xl_erf")
  49. TLI_DEFINE_SCALAR_MASS_FUNC("erfcf", "__xl_erfcf")
  50. TLI_DEFINE_SCALAR_MASS_FUNC("erfc", "__xl_erfc")
  51. TLI_DEFINE_SCALAR_MASS_FUNC("expf", "__xl_expf")
  52. TLI_DEFINE_SCALAR_MASS_FUNC("__expf_finite", "__xl_expf")
  53. TLI_DEFINE_SCALAR_MASS_FUNC("exp", "__xl_exp")
  54. TLI_DEFINE_SCALAR_MASS_FUNC("__exp_finite", "__xl_exp")
  55. TLI_DEFINE_SCALAR_MASS_FUNC("expm1f", "__xl_expm1f")
  56. TLI_DEFINE_SCALAR_MASS_FUNC("expm1", "__xl_expm1")
  57. TLI_DEFINE_SCALAR_MASS_FUNC("hypotf", "__xl_hypotf")
  58. TLI_DEFINE_SCALAR_MASS_FUNC("hypot", "__xl_hypot")
  59. TLI_DEFINE_SCALAR_MASS_FUNC("lgammaf", "__xl_lgammaf")
  60. TLI_DEFINE_SCALAR_MASS_FUNC("lgamma", "__xl_lgamma")
  61. TLI_DEFINE_SCALAR_MASS_FUNC("logf", "__xl_logf")
  62. TLI_DEFINE_SCALAR_MASS_FUNC("__logf_finite", "__xl_logf")
  63. TLI_DEFINE_SCALAR_MASS_FUNC("log", "__xl_log")
  64. TLI_DEFINE_SCALAR_MASS_FUNC("__log_finite", "__xl_log")
  65. TLI_DEFINE_SCALAR_MASS_FUNC("log10f", "__xl_log10f")
  66. TLI_DEFINE_SCALAR_MASS_FUNC("__log10f_finite", "__xl_log10f")
  67. TLI_DEFINE_SCALAR_MASS_FUNC("log10", "__xl_log10")
  68. TLI_DEFINE_SCALAR_MASS_FUNC("__log10_finite", "__xl_log10")
  69. TLI_DEFINE_SCALAR_MASS_FUNC("log1pf", "__xl_log1pf")
  70. TLI_DEFINE_SCALAR_MASS_FUNC("log1p", "__xl_log1p")
  71. TLI_DEFINE_SCALAR_MASS_FUNC("powf", "__xl_powf")
  72. TLI_DEFINE_SCALAR_MASS_FUNC("__powf_finite", "__xl_powf")
  73. TLI_DEFINE_SCALAR_MASS_FUNC("pow", "__xl_pow")
  74. TLI_DEFINE_SCALAR_MASS_FUNC("__pow_finite", "__xl_pow")
  75. TLI_DEFINE_SCALAR_MASS_FUNC("rsqrt", "__xl_rsqrt")
  76. TLI_DEFINE_SCALAR_MASS_FUNC("sinf", "__xl_sinf")
  77. TLI_DEFINE_SCALAR_MASS_FUNC("sin", "__xl_sin")
  78. TLI_DEFINE_SCALAR_MASS_FUNC("sinhf", "__xl_sinhf")
  79. TLI_DEFINE_SCALAR_MASS_FUNC("__sinhf_finite", "__xl_sinhf")
  80. TLI_DEFINE_SCALAR_MASS_FUNC("sinh", "__xl_sinh")
  81. TLI_DEFINE_SCALAR_MASS_FUNC("__sinh_finite", "__xl_sinh")
  82. TLI_DEFINE_SCALAR_MASS_FUNC("sqrt", "__xl_sqrt")
  83. TLI_DEFINE_SCALAR_MASS_FUNC("tanf", "__xl_tanf")
  84. TLI_DEFINE_SCALAR_MASS_FUNC("tan", "__xl_tan")
  85. TLI_DEFINE_SCALAR_MASS_FUNC("tanhf", "__xl_tanhf")
  86. TLI_DEFINE_SCALAR_MASS_FUNC("tanh", "__xl_tanh")
  87. #undef TLI_DEFINE_SCALAR_MASS_FUNCS
  88. #undef TLI_DEFINE_SCALAR_MASS_FUNC