⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 biginteger.c

📁 linux下建立JAVA虚拟机的源码KAFFE
💻 C
📖 第 1 页 / 共 2 页
字号:
	mpz_srcptr src2;	src1 = (mpz_srcptr)(*env)->GetObjectField(env, s1, number);	src2 = (mpz_srcptr)(*env)->GetObjectField(env, s2, number);	res = (mpz_ptr)(*env)->GetObjectField(env, r, number);	mpz_ior(res, src1, src2);}voidJava_java_math_BigInteger_xor0(JNIEnv* env, jobject r, jobject s1, jobject s2){	mpz_ptr res;	mpz_srcptr src1;	mpz_srcptr src2;	mpz_t tmp;	src1 = (mpz_srcptr)(*env)->GetObjectField(env, s1, number);	src2 = (mpz_srcptr)(*env)->GetObjectField(env, s2, number);	res = (mpz_ptr)(*env)->GetObjectField(env, r, number);	mpz_init(tmp);	mpz_and(res, src1, src2);	mpz_com(res, res);	mpz_ior(tmp, src1, src2);	mpz_and(res, res, tmp);	mpz_clear(tmp);}voidJava_java_math_BigInteger_not0(JNIEnv* env, jobject r, jobject s){	mpz_ptr res;	mpz_srcptr src;	src = (mpz_srcptr)(*env)->GetObjectField(env, s, number);	res = (mpz_ptr)(*env)->GetObjectField(env, r, number);	mpz_com(res, src);}voidJava_java_math_BigInteger_setbit0(JNIEnv* env, jobject r, jobject s, jint n){	mpz_ptr res;	mpz_srcptr src;	src = (mpz_srcptr)(*env)->GetObjectField(env, s, number);	res = (mpz_ptr)(*env)->GetObjectField(env, r, number);	mpz_set(res, src);	mpz_setbit(res, (unsigned long)n);}voidJava_java_math_BigInteger_clrbit0(JNIEnv* env, jobject r, jobject s, jint n){	mpz_ptr res;	mpz_srcptr src;	src = (mpz_srcptr)(*env)->GetObjectField(env, s, number);	res = (mpz_ptr)(*env)->GetObjectField(env, r, number);	mpz_set(res, src);	mpz_clrbit(res, (unsigned long)n);}jintJava_java_math_BigInteger_scansetbit0(JNIEnv* env, jobject s){	mpz_srcptr src;	src = (mpz_srcptr)(*env)->GetObjectField(env, s, number);	return ((jint)mpz_scan1(src, 0));}jintJava_java_math_BigInteger_cmp0(JNIEnv* env, jclass cls UNUSED, jobject s1,			       jobject s2){	mpz_srcptr src1;	mpz_srcptr src2;	src1 = (mpz_srcptr)(*env)->GetObjectField(env, s1, number);	src2 = (mpz_srcptr)(*env)->GetObjectField(env, s2, number);	return (mpz_cmp(src1, src2));}jstringJava_java_math_BigInteger_toString0(JNIEnv* env, jobject s, jint base){	char* res;	mpz_srcptr src;	jstring str;	src = (mpz_srcptr)(*env)->GetObjectField(env, s, number);	res = mpz_get_str(NULL, (int)base, src);	str = (*env)->NewStringUTF(env, res);	bi_free(res, 0 /* is ignored */);	return (str);}jdoubleJava_java_math_BigInteger_toDouble0(JNIEnv* env, jobject s){	mpz_srcptr src;	src = (mpz_srcptr)(*env)->GetObjectField(env, s, number);	return ((jdouble)mpz_get_d(src));}jintJava_java_math_BigInteger_toInt0(JNIEnv* env, jobject s){	mpz_srcptr src;	src = (mpz_srcptr)(*env)->GetObjectField(env, s, number);	return ((jint)mpz_get_ui(src));}jintJava_java_math_BigInteger_probablyPrime0(JNIEnv* env, jobject s, jint prop){	mpz_srcptr src;	src = (mpz_srcptr)(*env)->GetObjectField(env, s, number);	return (mpz_probab_prime_p(src, (int)prop));}jintJava_java_math_BigInteger_bitLength0(JNIEnv* env, jobject s){	mpz_srcptr src;	src = (mpz_srcptr)(*env)->GetObjectField(env, s, number);	return (mpz_sizeinbase(src, 2));}jintJava_java_math_BigInteger_hamDist0(JNIEnv* env, jobject s1, jobject s2){	mpz_srcptr src1, src2;	src1 = (mpz_srcptr)(*env)->GetObjectField(env, s1, number);	src2 = (mpz_srcptr)(*env)->GetObjectField(env, s2, number);	return (mpz_hamdist(src1, src2));}#else /* !defined(HAVE_GMP_H) || !defined(USE_GMP) *//* throw a kaffe.util.SupportDisabled exception */static voidgmp_not_found(JNIEnv* env) {	jclass sd = (*env)->FindClass(env, "org.kaffe.util.SupportDisabled");	(*env)->ThrowNew(env, sd, "GNU gmp was not found by Kaffe configure script");}/* We should put some dummies in here */voidJava_java_math_BigInteger_initialize0(JNIEnv* env, jclass cls UNUSED){	gmp_not_found(env);}voidJava_java_math_BigInteger_init0(JNIEnv* env, jobject r UNUSED){	gmp_not_found(env);}voidJava_java_math_BigInteger_finalize0(JNIEnv* env, jobject r UNUSED){	gmp_not_found(env);}voidJava_java_math_BigInteger_assignLong0(JNIEnv* env, jobject r UNUSED,				      jlong v UNUSED){	gmp_not_found(env);}voidJava_java_math_BigInteger_assignBytes0(JNIEnv* env, jobject r UNUSED,				       jint sign UNUSED,				       jbyteArray magnitude UNUSED){	gmp_not_found(env);}jintJava_java_math_BigInteger_assignString0(JNIEnv* env, jobject r UNUSED,					jstring val UNUSED, jint radix UNUSED){	gmp_not_found(env);	return 0;}voidJava_java_math_BigInteger_add0(JNIEnv* env, jobject r UNUSED, jobject s1 UNUSED,			       jobject s2 UNUSED){	gmp_not_found(env);}voidJava_java_math_BigInteger_sub0(JNIEnv* env, jobject r UNUSED, jobject s1 UNUSED,			       jobject s2 UNUSED){	gmp_not_found(env);}voidJava_java_math_BigInteger_mul0(JNIEnv* env, jobject r UNUSED, jobject s1 UNUSED,			       jobject s2 UNUSED){	gmp_not_found(env);}voidJava_java_math_BigInteger_div0(JNIEnv* env, jobject r UNUSED, jobject s1 UNUSED,			       jobject s2 UNUSED){	gmp_not_found(env);}voidJava_java_math_BigInteger_rem0(JNIEnv* env, jobject r UNUSED, jobject s1 UNUSED,			       jobject s2 UNUSED){	gmp_not_found(env);}voidJava_java_math_BigInteger_divrem0(JNIEnv* env, jclass cls UNUSED,				  jobject r1 UNUSED, jobject r2 UNUSED,				  jobject s1 UNUSED, jobject s2 UNUSED){	gmp_not_found(env);}voidJava_java_math_BigInteger_abs0(JNIEnv* env, jobject r UNUSED, jobject s UNUSED){	gmp_not_found(env);}voidJava_java_math_BigInteger_neg0(JNIEnv* env, jobject r UNUSED, jobject s UNUSED){	gmp_not_found(env);}voidJava_java_math_BigInteger_pow0(JNIEnv* env, jobject r UNUSED, jobject s UNUSED,			       jint power UNUSED){	gmp_not_found(env);}voidJava_java_math_BigInteger_gcd0(JNIEnv* env, jobject r UNUSED, jobject s1 UNUSED,			       jobject s2 UNUSED){	gmp_not_found(env);}voidJava_java_math_BigInteger_mod0(JNIEnv* env, jobject r UNUSED, jobject s1 UNUSED,			       jobject s2 UNUSED){	gmp_not_found(env);}voidJava_java_math_BigInteger_modpow0(JNIEnv* env, jobject r UNUSED,				  jobject s1 UNUSED, jobject s2 UNUSED,				  jobject s3 UNUSED){	gmp_not_found(env);}voidJava_java_math_BigInteger_modinv0(JNIEnv* env, jobject r UNUSED,				  jobject s1 UNUSED, jobject s2 UNUSED){	gmp_not_found(env);}voidJava_java_math_BigInteger_and0(JNIEnv* env, jobject r UNUSED,			       jobject s1 UNUSED, jobject s2 UNUSED){	gmp_not_found(env);}voidJava_java_math_BigInteger_or0(JNIEnv* env, jobject r UNUSED, jobject s1 UNUSED,			      jobject s2 UNUSED){	gmp_not_found(env);}voidJava_java_math_BigInteger_xor0(JNIEnv* env, jobject r UNUSED, jobject s1 UNUSED,			       jobject s2 UNUSED){	gmp_not_found(env);}voidJava_java_math_BigInteger_not0(JNIEnv* env, jobject r UNUSED,  jobject s UNUSED){	gmp_not_found(env);}voidJava_java_math_BigInteger_setbit0(JNIEnv* env, jobject r UNUSED,				  jobject s UNUSED,				  jint n UNUSED){	gmp_not_found(env);}voidJava_java_math_BigInteger_clrbit0(JNIEnv* env, jobject r UNUSED,				  jobject s UNUSED, jint n UNUSED){	gmp_not_found(env);}jintJava_java_math_BigInteger_scansetbit0(JNIEnv* env, jobject s UNUSED){	gmp_not_found(env);	return 0;}jintJava_java_math_BigInteger_cmp0(JNIEnv* env, jclass cls UNUSED,			       jobject s1 UNUSED, jobject s2 UNUSED){	gmp_not_found(env);	return 0;}jstringJava_java_math_BigInteger_toString0(JNIEnv* env, jobject s UNUSED,				    jint base UNUSED){	gmp_not_found(env);	return NULL;}jdoubleJava_java_math_BigInteger_toDouble0(JNIEnv* env, jobject s UNUSED){	gmp_not_found(env);	return 0.0;}jintJava_java_math_BigInteger_toInt0(JNIEnv* env, jobject s UNUSED){	gmp_not_found(env);	return 0;}jintJava_java_math_BigInteger_probablyPrime0(JNIEnv* env, jobject s UNUSED,					 jint prop UNUSED){	gmp_not_found(env);	return 0;}jintJava_java_math_BigInteger_bitLength0(JNIEnv* env, jobject s UNUSED){	gmp_not_found(env);	return 0;}jintJava_java_math_BigInteger_hamDist0(JNIEnv* env, jobject s1 UNUSED,				   jobject s2 UNUSED){	gmp_not_found(env);	return 0;}#endif /* defined(HAVE_GMP_H) && defined(USE_GMP) */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -