diff options
Diffstat (limited to 'lib/builtins/comparesf2.c')
-rw-r--r-- | lib/builtins/comparesf2.c | 21 |
1 files changed, 14 insertions, 7 deletions
diff --git a/lib/builtins/comparesf2.c b/lib/builtins/comparesf2.c index c1c3a479c..df1c45796 100644 --- a/lib/builtins/comparesf2.c +++ b/lib/builtins/comparesf2.c @@ -47,7 +47,8 @@ enum LE_RESULT { LE_UNORDERED = 1 }; -enum LE_RESULT __lesf2(fp_t a, fp_t b) { +COMPILER_RT_ABI enum LE_RESULT +__lesf2(fp_t a, fp_t b) { const srep_t aInt = toRep(a); const srep_t bInt = toRep(b); @@ -86,7 +87,8 @@ enum GE_RESULT { GE_UNORDERED = -1 // Note: different from LE_UNORDERED }; -enum GE_RESULT __gesf2(fp_t a, fp_t b) { +COMPILER_RT_ABI enum GE_RESULT +__gesf2(fp_t a, fp_t b) { const srep_t aInt = toRep(a); const srep_t bInt = toRep(b); @@ -108,7 +110,8 @@ enum GE_RESULT __gesf2(fp_t a, fp_t b) { ARM_EABI_FNALIAS(fcmpun, unordsf2) -int __unordsf2(fp_t a, fp_t b) { +COMPILER_RT_ABI int +__unordsf2(fp_t a, fp_t b) { const rep_t aAbs = toRep(a) & absMask; const rep_t bAbs = toRep(b) & absMask; return aAbs > infRep || bAbs > infRep; @@ -116,18 +119,22 @@ int __unordsf2(fp_t a, fp_t b) { // The following are alternative names for the preceeding routines. -enum LE_RESULT __eqsf2(fp_t a, fp_t b) { +COMPILER_RT_ABI enum LE_RESULT +__eqsf2(fp_t a, fp_t b) { return __lesf2(a, b); } -enum LE_RESULT __ltsf2(fp_t a, fp_t b) { +COMPILER_RT_ABI enum LE_RESULT +__ltsf2(fp_t a, fp_t b) { return __lesf2(a, b); } -enum LE_RESULT __nesf2(fp_t a, fp_t b) { +COMPILER_RT_ABI enum LE_RESULT +__nesf2(fp_t a, fp_t b) { return __lesf2(a, b); } -enum GE_RESULT __gtsf2(fp_t a, fp_t b) { +COMPILER_RT_ABI enum GE_RESULT +__gtsf2(fp_t a, fp_t b) { return __gesf2(a, b); } |