diff options
author | Dale Johannesen <dalej@apple.com> | 2007-10-05 20:04:43 +0000 |
---|---|---|
committer | Dale Johannesen <dalej@apple.com> | 2007-10-05 20:04:43 +0000 |
commit | 161e897b0fb35d156b2fe720fadabd975b0d6723 (patch) | |
tree | 7077a0839c21a1e72afa5dd377d02c66466159a0 /include | |
parent | b952d1f5be9238b7d39ccb72303b677d97bd8ec5 (diff) | |
download | external_llvm-161e897b0fb35d156b2fe720fadabd975b0d6723.zip external_llvm-161e897b0fb35d156b2fe720fadabd975b0d6723.tar.gz external_llvm-161e897b0fb35d156b2fe720fadabd975b0d6723.tar.bz2 |
First round of ppc long double. call/return and
basic arithmetic works.
Rename RTLIB long double functions to distinguish
different flavors of long double; the lib functions
have different names, alas.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42644 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include')
-rw-r--r-- | include/llvm/CodeGen/RuntimeLibcalls.h | 27 |
1 files changed, 18 insertions, 9 deletions
diff --git a/include/llvm/CodeGen/RuntimeLibcalls.h b/include/llvm/CodeGen/RuntimeLibcalls.h index 80cc33a..5327d68 100644 --- a/include/llvm/CodeGen/RuntimeLibcalls.h +++ b/include/llvm/CodeGen/RuntimeLibcalls.h @@ -18,9 +18,8 @@ namespace llvm { namespace RTLIB { /// RTLIB::Libcall enum - This enum defines all of the runtime library calls - /// the backend can emit. "LD" is used for all long double types, since - /// these functions will have the same interface on different targets even - /// though the data is not in the same format. + /// the backend can emit. The various long double types cannot be merged, + /// because 80-bit library functions use "xf" and 128-bit use "tf". /// enum Libcall { // Integer @@ -46,22 +45,29 @@ namespace RTLIB { // FLOATING POINT ADD_F32, ADD_F64, + ADD_PPCF128, SUB_F32, SUB_F64, + SUB_PPCF128, MUL_F32, MUL_F64, + MUL_PPCF128, DIV_F32, DIV_F64, + DIV_PPCF128, REM_F32, REM_F64, + REM_PPCF128, NEG_F32, NEG_F64, POWI_F32, POWI_F64, - POWI_LD, + POWI_F80, + POWI_PPCF128, SQRT_F32, SQRT_F64, - SQRT_LD, + SQRT_F80, + SQRT_PPCF128, SIN_F32, SIN_F64, COS_F32, @@ -74,18 +80,21 @@ namespace RTLIB { FPTOSINT_F32_I64, FPTOSINT_F64_I32, FPTOSINT_F64_I64, - FPTOSINT_LD_I64, + FPTOSINT_F80_I64, + FPTOSINT_PPCF128_I64, FPTOUINT_F32_I32, FPTOUINT_F32_I64, FPTOUINT_F64_I32, FPTOUINT_F64_I64, - FPTOUINT_LD_I32, - FPTOUINT_LD_I64, + FPTOUINT_F80_I32, + FPTOUINT_F80_I64, + FPTOUINT_PPCF128_I64, SINTTOFP_I32_F32, SINTTOFP_I32_F64, SINTTOFP_I64_F32, SINTTOFP_I64_F64, - SINTTOFP_I64_LD, + SINTTOFP_I64_F80, + SINTTOFP_I64_PPCF128, UINTTOFP_I32_F32, UINTTOFP_I32_F64, UINTTOFP_I64_F32, |