1 /* 2 * Copyright (c) 1994, 2003, Oracle and/or its affiliates. All rights reserved. 3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 * 5 * This code is free software; you can redistribute it and/or modify it 6 * under the terms of the GNU General Public License version 2 only, as 7 * published by the Free Software Foundation. Oracle designates this 8 * particular file as subject to the "Classpath" exception as provided 9 * by Oracle in the LICENSE file that accompanied this code. 10 * 11 * This code is distributed in the hope that it will be useful, but WITHOUT 12 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 * version 2 for more details (a copy is included in the LICENSE file that 15 * accompanied this code). 16 * 17 * You should have received a copy of the GNU General Public License version 18 * 2 along with this work; if not, write to the Free Software Foundation, 19 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 * 21 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 * or visit www.oracle.com if you need additional information or have any 23 * questions. 24 */ 25 26 #include "jni.h" 27 #include "fdlibm.h" 28 29 #include "java_lang_StrictMath.h" 30 31 JNIEXPORT jdouble JNICALL 32 Java_java_lang_StrictMath_cos(JNIEnv *env, jclass unused, jdouble d) 33 { 34 return (jdouble) jcos((double)d); 35 } 36 37 JNIEXPORT jdouble JNICALL 38 Java_java_lang_StrictMath_sin(JNIEnv *env, jclass unused, jdouble d) 39 { 40 return (jdouble) jsin((double)d); 41 } 42 43 JNIEXPORT jdouble JNICALL 44 Java_java_lang_StrictMath_tan(JNIEnv *env, jclass unused, jdouble d) 45 { 46 return (jdouble) jtan((double)d); 47 } 48 49 JNIEXPORT jdouble JNICALL 50 Java_java_lang_StrictMath_asin(JNIEnv *env, jclass unused, jdouble d) 51 { 52 return (jdouble) jasin((double)d); 53 } 54 55 JNIEXPORT jdouble JNICALL 56 Java_java_lang_StrictMath_acos(JNIEnv *env, jclass unused, jdouble d) 57 { 58 return (jdouble) jacos((double)d); 59 } 60 61 JNIEXPORT jdouble JNICALL 62 Java_java_lang_StrictMath_atan(JNIEnv *env, jclass unused, jdouble d) 63 { 64 return (jdouble) jatan((double)d); 65 } 66 67 JNIEXPORT jdouble JNICALL 68 Java_java_lang_StrictMath_exp(JNIEnv *env, jclass unused, jdouble d) 69 { 70 return (jdouble) jexp((double)d); 71 } 72 73 JNIEXPORT jdouble JNICALL 74 Java_java_lang_StrictMath_log(JNIEnv *env, jclass unused, jdouble d) 75 { 76 return (jdouble) jlog((double)d); 77 } 78 79 JNIEXPORT jdouble JNICALL 80 Java_java_lang_StrictMath_log10(JNIEnv *env, jclass unused, jdouble d) 81 { 82 return (jdouble) jlog10((double)d); 83 } 84 85 JNIEXPORT jdouble JNICALL 86 Java_java_lang_StrictMath_sqrt(JNIEnv *env, jclass unused, jdouble d) 87 { 88 return (jdouble) jsqrt((double)d); 89 } 90 91 JNIEXPORT jdouble JNICALL 92 Java_java_lang_StrictMath_cbrt(JNIEnv *env, jclass unused, jdouble d) 93 { 94 return (jdouble) jcbrt((double)d); 95 } 96 97 JNIEXPORT jdouble JNICALL 98 Java_java_lang_StrictMath_atan2(JNIEnv *env, jclass unused, jdouble d1, jdouble d2) 99 { 100 return (jdouble) jatan2((double)d1, (double)d2); 101 } 102 103 JNIEXPORT jdouble JNICALL 104 Java_java_lang_StrictMath_pow(JNIEnv *env, jclass unused, jdouble d1, jdouble d2) 105 { 106 return (jdouble) jpow((double)d1, (double)d2); 107 } 108 109 JNIEXPORT jdouble JNICALL 110 Java_java_lang_StrictMath_IEEEremainder(JNIEnv *env, jclass unused, 111 jdouble dividend, 112 jdouble divisor) 113 { 114 return (jdouble) jremainder(dividend, divisor); 115 } 116 117 JNIEXPORT jdouble JNICALL 118 Java_java_lang_StrictMath_cosh(JNIEnv *env, jclass unused, jdouble d) 119 { 120 return (jdouble) jcosh((double)d); 121 } 122 123 JNIEXPORT jdouble JNICALL 124 Java_java_lang_StrictMath_sinh(JNIEnv *env, jclass unused, jdouble d) 125 { 126 return (jdouble) jsinh((double)d); 127 } 128 129 JNIEXPORT jdouble JNICALL 130 Java_java_lang_StrictMath_tanh(JNIEnv *env, jclass unused, jdouble d) 131 { 132 return (jdouble) jtanh((double)d); 133 } 134 135 JNIEXPORT jdouble JNICALL 136 Java_java_lang_StrictMath_hypot(JNIEnv *env, jclass unused, jdouble x, jdouble y) 137 { 138 return (jdouble) jhypot((double)x, (double)y); 139 } 140 141 142 143 JNIEXPORT jdouble JNICALL 144 Java_java_lang_StrictMath_log1p(JNIEnv *env, jclass unused, jdouble d) 145 { 146 return (jdouble) jlog1p((double)d); 147 } 148 149 JNIEXPORT jdouble JNICALL 150 Java_java_lang_StrictMath_expm1(JNIEnv *env, jclass unused, jdouble d) 151 { 152 return (jdouble) jexpm1((double)d); 153 }