diff options
author | David Monniaux <david.monniaux@univ-grenoble-alpes.fr> | 2019-05-15 18:01:25 +0200 |
---|---|---|
committer | David Monniaux <david.monniaux@univ-grenoble-alpes.fr> | 2019-05-15 18:01:25 +0200 |
commit | 2981acd39bb23b783339fa6848aa284bfae938c0 (patch) | |
tree | b77505e39137a289843ab7a915eb8dff694ec8e5 /runtime | |
parent | 72becdf730fb3b5ae2502d1eb19b7c61f047728d (diff) | |
download | compcert-kvx-2981acd39bb23b783339fa6848aa284bfae938c0.tar.gz compcert-kvx-2981acd39bb23b783339fa6848aa284bfae938c0.zip |
directly call float and double division from gcc lib instead of a stub
Diffstat (limited to 'runtime')
-rw-r--r-- | runtime/mppa_k1c/i64_sdiv.c | 42 |
1 files changed, 0 insertions, 42 deletions
diff --git a/runtime/mppa_k1c/i64_sdiv.c b/runtime/mppa_k1c/i64_sdiv.c index c80ae0cb..9feab791 100644 --- a/runtime/mppa_k1c/i64_sdiv.c +++ b/runtime/mppa_k1c/i64_sdiv.c @@ -1,34 +1,3 @@ -#if COMPLIQUE -unsigned long long -udivmoddi4(unsigned long long num, unsigned long long den, int modwanted); - -long long -i64_sdiv (long long a, long long b) -{ - int neg = 0; - long long res; - - if (a < 0) - { - a = -a; - neg = !neg; - } - - if (b < 0) - { - b = -b; - neg = !neg; - } - - res = udivmoddi4 (a, b, 0); - - if (neg) - res = -res; - - return res; -} - -#else extern long __divdi3 (long a, long b); long i64_sdiv (long a, long b) @@ -41,17 +10,6 @@ int i32_sdiv (int a, int b) return __divdi3 (a, b); } -extern double __divdf3(double, double); -double f64_div(double a, double b) { - return __divdf3(a, b); -} - -extern float __divsf3(float, float); -float f32_div(float a, float b) { - return __divsf3(a, b); -} -#endif - #include <mppa_bare_runtime/k1c/registers.h> /* DM FIXME this is for floating point */ |