99 static jfloat l2f (jlong x); 100 static jdouble l2d (jlong x); 101 102 #ifdef __SOFTFP__ 103 static jfloat i2f (jint x); 104 static jdouble i2d (jint x); 105 static jdouble f2d (jfloat x); 106 #endif // __SOFTFP__ 107 108 // double trigonometrics and transcendentals 109 static jdouble dsin(jdouble x); 110 static jdouble dcos(jdouble x); 111 static jdouble dtan(jdouble x); 112 static jdouble dlog(jdouble x); 113 static jdouble dlog10(jdouble x); 114 static jdouble dexp(jdouble x); 115 static jdouble dpow(jdouble x, jdouble y); 116 117 #if defined(__SOFTFP__) || defined(E500V2) 118 static double dabs(double f); 119 static double dsqrt(double f); 120 #endif 121 122 #ifdef __SOFTFP__ 123 // C++ compiler generates soft float instructions as well as passing 124 // float and double in registers. 125 static int fcmpl(float x, float y); 126 static int fcmpg(float x, float y); 127 static int dcmpl(double x, double y); 128 static int dcmpg(double x, double y); 129 130 static int unordered_fcmplt(float x, float y); 131 static int unordered_dcmplt(double x, double y); 132 static int unordered_fcmple(float x, float y); 133 static int unordered_dcmple(double x, double y); 134 static int unordered_fcmpge(float x, float y); 135 static int unordered_dcmpge(double x, double y); 136 static int unordered_fcmpgt(float x, float y); 137 static int unordered_dcmpgt(double x, double y); 138 | 99 static jfloat l2f (jlong x); 100 static jdouble l2d (jlong x); 101 102 #ifdef __SOFTFP__ 103 static jfloat i2f (jint x); 104 static jdouble i2d (jint x); 105 static jdouble f2d (jfloat x); 106 #endif // __SOFTFP__ 107 108 // double trigonometrics and transcendentals 109 static jdouble dsin(jdouble x); 110 static jdouble dcos(jdouble x); 111 static jdouble dtan(jdouble x); 112 static jdouble dlog(jdouble x); 113 static jdouble dlog10(jdouble x); 114 static jdouble dexp(jdouble x); 115 static jdouble dpow(jdouble x, jdouble y); 116 117 #if defined(__SOFTFP__) || defined(E500V2) 118 static double dabs(double f); 119 #endif 120 121 #if defined(__SOFTFP__) || defined(PPC) 122 static double dsqrt(double f); 123 #endif 124 125 #ifdef __SOFTFP__ 126 // C++ compiler generates soft float instructions as well as passing 127 // float and double in registers. 128 static int fcmpl(float x, float y); 129 static int fcmpg(float x, float y); 130 static int dcmpl(double x, double y); 131 static int dcmpg(double x, double y); 132 133 static int unordered_fcmplt(float x, float y); 134 static int unordered_dcmplt(double x, double y); 135 static int unordered_fcmple(float x, float y); 136 static int unordered_dcmple(double x, double y); 137 static int unordered_fcmpge(float x, float y); 138 static int unordered_dcmpge(double x, double y); 139 static int unordered_fcmpgt(float x, float y); 140 static int unordered_dcmpgt(double x, double y); 141 |