340 \ 341 /* non-intrinsic name/signature pairs: */ \ 342 template(register_method_name, "register") \ 343 do_alias(register_method_signature, object_void_signature) \ 344 \ 345 /* name symbols needed by intrinsics */ \ 346 VM_INTRINSICS_DO(VM_INTRINSIC_IGNORE, VM_SYMBOL_IGNORE, template, VM_SYMBOL_IGNORE, VM_ALIAS_IGNORE) \ 347 \ 348 /* common signatures names */ \ 349 template(void_method_signature, "()V") \ 350 template(void_boolean_signature, "()Z") \ 351 template(void_byte_signature, "()B") \ 352 template(void_char_signature, "()C") \ 353 template(void_short_signature, "()S") \ 354 template(void_int_signature, "()I") \ 355 template(void_long_signature, "()J") \ 356 template(void_float_signature, "()F") \ 357 template(void_double_signature, "()D") \ 358 template(int_void_signature, "(I)V") \ 359 template(int_int_signature, "(I)I") \ 360 template(int_bool_signature, "(I)Z") \ 361 template(float_int_signature, "(F)I") \ 362 template(double_long_signature, "(D)J") \ 363 template(double_double_signature, "(D)D") \ 364 template(int_float_signature, "(I)F") \ 365 template(long_int_signature, "(J)I") \ 366 template(long_long_signature, "(J)J") \ 367 template(long_double_signature, "(J)D") \ 368 template(byte_signature, "B") \ 369 template(char_signature, "C") \ 370 template(double_signature, "D") \ 371 template(float_signature, "F") \ 372 template(int_signature, "I") \ 373 template(long_signature, "J") \ 374 template(short_signature, "S") \ 375 template(bool_signature, "Z") \ 376 template(void_signature, "V") \ 377 template(byte_array_signature, "[B") \ 378 template(char_array_signature, "[C") \ 379 template(object_void_signature, "(Ljava/lang/Object;)V") \ 568 do_intrinsic(_doubleToRawLongBits, java_lang_Double, doubleToRawLongBits_name, double_long_signature, F_S) \ 569 do_name( doubleToRawLongBits_name, "doubleToRawLongBits") \ 570 do_intrinsic(_doubleToLongBits, java_lang_Double, doubleToLongBits_name, double_long_signature, F_S) \ 571 do_name( doubleToLongBits_name, "doubleToLongBits") \ 572 do_intrinsic(_longBitsToDouble, java_lang_Double, longBitsToDouble_name, long_double_signature, F_S) \ 573 do_name( longBitsToDouble_name, "longBitsToDouble") \ 574 \ 575 do_intrinsic(_numberOfLeadingZeros_i, java_lang_Integer, numberOfLeadingZeros_name,int_int_signature, F_S) \ 576 do_intrinsic(_numberOfLeadingZeros_l, java_lang_Long, numberOfLeadingZeros_name,long_int_signature, F_S) \ 577 \ 578 do_intrinsic(_numberOfTrailingZeros_i, java_lang_Integer, numberOfTrailingZeros_name,int_int_signature, F_S) \ 579 do_intrinsic(_numberOfTrailingZeros_l, java_lang_Long, numberOfTrailingZeros_name,long_int_signature, F_S) \ 580 \ 581 do_intrinsic(_bitCount_i, java_lang_Integer, bitCount_name, int_int_signature, F_S) \ 582 do_intrinsic(_bitCount_l, java_lang_Long, bitCount_name, long_int_signature, F_S) \ 583 \ 584 do_intrinsic(_reverseBytes_i, java_lang_Integer, reverseBytes_name, int_int_signature, F_S) \ 585 do_name( reverseBytes_name, "reverseBytes") \ 586 do_intrinsic(_reverseBytes_l, java_lang_Long, reverseBytes_name, long_long_signature, F_S) \ 587 /* (symbol reverseBytes_name defined above) */ \ 588 \ 589 do_intrinsic(_identityHashCode, java_lang_System, identityHashCode_name, object_int_signature, F_S) \ 590 do_name( identityHashCode_name, "identityHashCode") \ 591 do_intrinsic(_currentTimeMillis, java_lang_System, currentTimeMillis_name, void_long_signature, F_S) \ 592 \ 593 do_name( currentTimeMillis_name, "currentTimeMillis") \ 594 do_intrinsic(_nanoTime, java_lang_System, nanoTime_name, void_long_signature, F_S) \ 595 do_name( nanoTime_name, "nanoTime") \ 596 \ 597 do_intrinsic(_arraycopy, java_lang_System, arraycopy_name, arraycopy_signature, F_S) \ 598 do_name( arraycopy_name, "arraycopy") \ 599 do_signature(arraycopy_signature, "(Ljava/lang/Object;ILjava/lang/Object;II)V") \ 600 do_intrinsic(_isInterrupted, java_lang_Thread, isInterrupted_name, isInterrupted_signature, F_R) \ 601 do_name( isInterrupted_name, "isInterrupted") \ 602 do_signature(isInterrupted_signature, "(Z)Z") \ 603 do_intrinsic(_currentThread, java_lang_Thread, currentThread_name, currentThread_signature, F_S) \ 604 do_name( currentThread_name, "currentThread") \ 605 do_signature(currentThread_signature, "()Ljava/lang/Thread;") \ 606 \ 607 /* reflective intrinsics, for java/lang/Class, etc. */ \ | 340 \ 341 /* non-intrinsic name/signature pairs: */ \ 342 template(register_method_name, "register") \ 343 do_alias(register_method_signature, object_void_signature) \ 344 \ 345 /* name symbols needed by intrinsics */ \ 346 VM_INTRINSICS_DO(VM_INTRINSIC_IGNORE, VM_SYMBOL_IGNORE, template, VM_SYMBOL_IGNORE, VM_ALIAS_IGNORE) \ 347 \ 348 /* common signatures names */ \ 349 template(void_method_signature, "()V") \ 350 template(void_boolean_signature, "()Z") \ 351 template(void_byte_signature, "()B") \ 352 template(void_char_signature, "()C") \ 353 template(void_short_signature, "()S") \ 354 template(void_int_signature, "()I") \ 355 template(void_long_signature, "()J") \ 356 template(void_float_signature, "()F") \ 357 template(void_double_signature, "()D") \ 358 template(int_void_signature, "(I)V") \ 359 template(int_int_signature, "(I)I") \ 360 template(char_char_signature, "(C)C") \ 361 template(short_short_signature, "(S)S") \ 362 template(int_bool_signature, "(I)Z") \ 363 template(float_int_signature, "(F)I") \ 364 template(double_long_signature, "(D)J") \ 365 template(double_double_signature, "(D)D") \ 366 template(int_float_signature, "(I)F") \ 367 template(long_int_signature, "(J)I") \ 368 template(long_long_signature, "(J)J") \ 369 template(long_double_signature, "(J)D") \ 370 template(byte_signature, "B") \ 371 template(char_signature, "C") \ 372 template(double_signature, "D") \ 373 template(float_signature, "F") \ 374 template(int_signature, "I") \ 375 template(long_signature, "J") \ 376 template(short_signature, "S") \ 377 template(bool_signature, "Z") \ 378 template(void_signature, "V") \ 379 template(byte_array_signature, "[B") \ 380 template(char_array_signature, "[C") \ 381 template(object_void_signature, "(Ljava/lang/Object;)V") \ 570 do_intrinsic(_doubleToRawLongBits, java_lang_Double, doubleToRawLongBits_name, double_long_signature, F_S) \ 571 do_name( doubleToRawLongBits_name, "doubleToRawLongBits") \ 572 do_intrinsic(_doubleToLongBits, java_lang_Double, doubleToLongBits_name, double_long_signature, F_S) \ 573 do_name( doubleToLongBits_name, "doubleToLongBits") \ 574 do_intrinsic(_longBitsToDouble, java_lang_Double, longBitsToDouble_name, long_double_signature, F_S) \ 575 do_name( longBitsToDouble_name, "longBitsToDouble") \ 576 \ 577 do_intrinsic(_numberOfLeadingZeros_i, java_lang_Integer, numberOfLeadingZeros_name,int_int_signature, F_S) \ 578 do_intrinsic(_numberOfLeadingZeros_l, java_lang_Long, numberOfLeadingZeros_name,long_int_signature, F_S) \ 579 \ 580 do_intrinsic(_numberOfTrailingZeros_i, java_lang_Integer, numberOfTrailingZeros_name,int_int_signature, F_S) \ 581 do_intrinsic(_numberOfTrailingZeros_l, java_lang_Long, numberOfTrailingZeros_name,long_int_signature, F_S) \ 582 \ 583 do_intrinsic(_bitCount_i, java_lang_Integer, bitCount_name, int_int_signature, F_S) \ 584 do_intrinsic(_bitCount_l, java_lang_Long, bitCount_name, long_int_signature, F_S) \ 585 \ 586 do_intrinsic(_reverseBytes_i, java_lang_Integer, reverseBytes_name, int_int_signature, F_S) \ 587 do_name( reverseBytes_name, "reverseBytes") \ 588 do_intrinsic(_reverseBytes_l, java_lang_Long, reverseBytes_name, long_long_signature, F_S) \ 589 /* (symbol reverseBytes_name defined above) */ \ 590 do_intrinsic(_reverseBytes_c, java_lang_Character, reverseBytes_name, char_char_signature, F_S) \ 591 /* (symbol reverseBytes_name defined above) */ \ 592 do_intrinsic(_reverseBytes_s, java_lang_Short, reverseBytes_name, short_short_signature, F_S) \ 593 /* (symbol reverseBytes_name defined above) */ \ 594 \ 595 do_intrinsic(_identityHashCode, java_lang_System, identityHashCode_name, object_int_signature, F_S) \ 596 do_name( identityHashCode_name, "identityHashCode") \ 597 do_intrinsic(_currentTimeMillis, java_lang_System, currentTimeMillis_name, void_long_signature, F_S) \ 598 \ 599 do_name( currentTimeMillis_name, "currentTimeMillis") \ 600 do_intrinsic(_nanoTime, java_lang_System, nanoTime_name, void_long_signature, F_S) \ 601 do_name( nanoTime_name, "nanoTime") \ 602 \ 603 do_intrinsic(_arraycopy, java_lang_System, arraycopy_name, arraycopy_signature, F_S) \ 604 do_name( arraycopy_name, "arraycopy") \ 605 do_signature(arraycopy_signature, "(Ljava/lang/Object;ILjava/lang/Object;II)V") \ 606 do_intrinsic(_isInterrupted, java_lang_Thread, isInterrupted_name, isInterrupted_signature, F_R) \ 607 do_name( isInterrupted_name, "isInterrupted") \ 608 do_signature(isInterrupted_signature, "(Z)Z") \ 609 do_intrinsic(_currentThread, java_lang_Thread, currentThread_name, currentThread_signature, F_S) \ 610 do_name( currentThread_name, "currentThread") \ 611 do_signature(currentThread_signature, "()Ljava/lang/Thread;") \ 612 \ 613 /* reflective intrinsics, for java/lang/Class, etc. */ \ |