456 def(_fconst_2 , "fconst_2" , "b" , null , BasicType.getTFloat() , 1, false); |
459 def(_fconst_2 , "fconst_2" , "b" , null , BasicType.getTFloat() , 1, false); |
457 def(_dconst_0 , "dconst_0" , "b" , null , BasicType.getTDouble() , 2, false); |
460 def(_dconst_0 , "dconst_0" , "b" , null , BasicType.getTDouble() , 2, false); |
458 def(_dconst_1 , "dconst_1" , "b" , null , BasicType.getTDouble() , 2, false); |
461 def(_dconst_1 , "dconst_1" , "b" , null , BasicType.getTDouble() , 2, false); |
459 def(_bipush , "bipush" , "bc" , null , BasicType.getTInt() , 1, false); |
462 def(_bipush , "bipush" , "bc" , null , BasicType.getTInt() , 1, false); |
460 def(_sipush , "sipush" , "bcc" , null , BasicType.getTInt() , 1, false); |
463 def(_sipush , "sipush" , "bcc" , null , BasicType.getTInt() , 1, false); |
461 def(_ldc , "ldc" , "bi" , null , BasicType.getTIllegal(), 1, true ); |
464 def(_ldc , "ldc" , "bk" , null , BasicType.getTIllegal(), 1, true ); |
462 def(_ldc_w , "ldc_w" , "bii" , null , BasicType.getTIllegal(), 1, true ); |
465 def(_ldc_w , "ldc_w" , "bkk" , null , BasicType.getTIllegal(), 1, true ); |
463 def(_ldc2_w , "ldc2_w" , "bii" , null , BasicType.getTIllegal(), 2, true ); |
466 def(_ldc2_w , "ldc2_w" , "bkk" , null , BasicType.getTIllegal(), 2, true ); |
464 def(_iload , "iload" , "bi" , "wbii" , BasicType.getTInt() , 1, false); |
467 def(_iload , "iload" , "bi" , "wbii" , BasicType.getTInt() , 1, false); |
465 def(_lload , "lload" , "bi" , "wbii" , BasicType.getTLong() , 2, false); |
468 def(_lload , "lload" , "bi" , "wbii" , BasicType.getTLong() , 2, false); |
466 def(_fload , "fload" , "bi" , "wbii" , BasicType.getTFloat() , 1, false); |
469 def(_fload , "fload" , "bi" , "wbii" , BasicType.getTFloat() , 1, false); |
467 def(_dload , "dload" , "bi" , "wbii" , BasicType.getTDouble() , 2, false); |
470 def(_dload , "dload" , "bi" , "wbii" , BasicType.getTDouble() , 2, false); |
468 def(_aload , "aload" , "bi" , "wbii" , BasicType.getTObject() , 1, false); |
471 def(_aload , "aload" , "bi" , "wbii" , BasicType.getTObject() , 1, false); |
616 def(_lreturn , "lreturn" , "b" , null , BasicType.getTLong() , -2, true ); |
619 def(_lreturn , "lreturn" , "b" , null , BasicType.getTLong() , -2, true ); |
617 def(_freturn , "freturn" , "b" , null , BasicType.getTFloat() , -1, true ); |
620 def(_freturn , "freturn" , "b" , null , BasicType.getTFloat() , -1, true ); |
618 def(_dreturn , "dreturn" , "b" , null , BasicType.getTDouble() , -2, true ); |
621 def(_dreturn , "dreturn" , "b" , null , BasicType.getTDouble() , -2, true ); |
619 def(_areturn , "areturn" , "b" , null , BasicType.getTObject() , -1, true ); |
622 def(_areturn , "areturn" , "b" , null , BasicType.getTObject() , -1, true ); |
620 def(_return , "return" , "b" , null , BasicType.getTVoid() , 0, true ); |
623 def(_return , "return" , "b" , null , BasicType.getTVoid() , 0, true ); |
621 def(_getstatic , "getstatic" , "bjj" , null , BasicType.getTIllegal(), 1, true ); |
624 def(_getstatic , "getstatic" , "bJJ" , null , BasicType.getTIllegal(), 1, true ); |
622 def(_putstatic , "putstatic" , "bjj" , null , BasicType.getTIllegal(), -1, true ); |
625 def(_putstatic , "putstatic" , "bJJ" , null , BasicType.getTIllegal(), -1, true ); |
623 def(_getfield , "getfield" , "bjj" , null , BasicType.getTIllegal(), 0, true ); |
626 def(_getfield , "getfield" , "bJJ" , null , BasicType.getTIllegal(), 0, true ); |
624 def(_putfield , "putfield" , "bjj" , null , BasicType.getTIllegal(), -2, true ); |
627 def(_putfield , "putfield" , "bJJ" , null , BasicType.getTIllegal(), -2, true ); |
625 def(_invokevirtual , "invokevirtual" , "bjj" , null , BasicType.getTIllegal(), -1, true ); |
628 def(_invokevirtual , "invokevirtual" , "bJJ" , null , BasicType.getTIllegal(), -1, true ); |
626 def(_invokespecial , "invokespecial" , "bjj" , null , BasicType.getTIllegal(), -1, true ); |
629 def(_invokespecial , "invokespecial" , "bJJ" , null , BasicType.getTIllegal(), -1, true ); |
627 def(_invokestatic , "invokestatic" , "bjj" , null , BasicType.getTIllegal(), 0, true ); |
630 def(_invokestatic , "invokestatic" , "bJJ" , null , BasicType.getTIllegal(), 0, true ); |
628 def(_invokeinterface , "invokeinterface" , "bjj__", null , BasicType.getTIllegal(), -1, true ); |
631 def(_invokeinterface , "invokeinterface" , "bJJ__", null , BasicType.getTIllegal(), -1, true ); |
629 def(_xxxunusedxxx , "xxxunusedxxx" , null , null , BasicType.getTVoid() , 0, false); |
632 def(_invokedynamic , "invokedynamic" , "bJJJJ", null , BasicType.getTIllegal(), -1, true ); |
630 def(_new , "new" , "bii" , null , BasicType.getTObject() , 1, true ); |
633 def(_new , "new" , "bkk" , null , BasicType.getTObject() , 1, true ); |
631 def(_newarray , "newarray" , "bc" , null , BasicType.getTObject() , 0, true ); |
634 def(_newarray , "newarray" , "bc" , null , BasicType.getTObject() , 0, true ); |
632 def(_anewarray , "anewarray" , "bii" , null , BasicType.getTObject() , 0, true ); |
635 def(_anewarray , "anewarray" , "bkk" , null , BasicType.getTObject() , 0, true ); |
633 def(_arraylength , "arraylength" , "b" , null , BasicType.getTVoid() , 0, true ); |
636 def(_arraylength , "arraylength" , "b" , null , BasicType.getTVoid() , 0, true ); |
634 def(_athrow , "athrow" , "b" , null , BasicType.getTVoid() , -1, true ); |
637 def(_athrow , "athrow" , "b" , null , BasicType.getTVoid() , -1, true ); |
635 def(_checkcast , "checkcast" , "bii" , null , BasicType.getTObject() , 0, true ); |
638 def(_checkcast , "checkcast" , "bkk" , null , BasicType.getTObject() , 0, true ); |
636 def(_instanceof , "instanceof" , "bii" , null , BasicType.getTInt() , 0, true ); |
639 def(_instanceof , "instanceof" , "bkk" , null , BasicType.getTInt() , 0, true ); |
637 def(_monitorenter , "monitorenter" , "b" , null , BasicType.getTVoid() , -1, true ); |
640 def(_monitorenter , "monitorenter" , "b" , null , BasicType.getTVoid() , -1, true ); |
638 def(_monitorexit , "monitorexit" , "b" , null , BasicType.getTVoid() , -1, true ); |
641 def(_monitorexit , "monitorexit" , "b" , null , BasicType.getTVoid() , -1, true ); |
639 def(_wide , "wide" , "" , null , BasicType.getTVoid() , 0, false); |
642 def(_wide , "wide" , "" , null , BasicType.getTVoid() , 0, false); |
640 def(_multianewarray , "multianewarray" , "biic" , null , BasicType.getTObject() , 1, true ); |
643 def(_multianewarray , "multianewarray" , "bkkc" , null , BasicType.getTObject() , 1, true ); |
641 def(_ifnull , "ifnull" , "boo" , null , BasicType.getTVoid() , -1, false); |
644 def(_ifnull , "ifnull" , "boo" , null , BasicType.getTVoid() , -1, false); |
642 def(_ifnonnull , "ifnonnull" , "boo" , null , BasicType.getTVoid() , -1, false); |
645 def(_ifnonnull , "ifnonnull" , "boo" , null , BasicType.getTVoid() , -1, false); |
643 def(_goto_w , "goto_w" , "boooo", null , BasicType.getTVoid() , 0, false); |
646 def(_goto_w , "goto_w" , "boooo", null , BasicType.getTVoid() , 0, false); |
644 def(_jsr_w , "jsr_w" , "boooo", null , BasicType.getTInt() , 0, false); |
647 def(_jsr_w , "jsr_w" , "boooo", null , BasicType.getTInt() , 0, false); |
645 def(_breakpoint , "breakpoint" , "" , null , BasicType.getTVoid() , 0, true ); |
648 def(_breakpoint , "breakpoint" , "" , null , BasicType.getTVoid() , 0, true ); |
646 |
649 |
647 // JVM bytecodes |
650 // JVM bytecodes |
648 // bytecode bytecode name format wide f. result tp stk traps std code |
651 // bytecode bytecode name format wide f. result tp stk traps std code |
649 def(_fast_agetfield , "fast_agetfield" , "bjj" , null , BasicType.getTObject() , 0, true , _getfield ); |
652 def(_fast_agetfield , "fast_agetfield" , "bJJ" , null , BasicType.getTObject() , 0, true , _getfield ); |
650 def(_fast_bgetfield , "fast_bgetfield" , "bjj" , null , BasicType.getTInt() , 0, true , _getfield ); |
653 def(_fast_bgetfield , "fast_bgetfield" , "bJJ" , null , BasicType.getTInt() , 0, true , _getfield ); |
651 def(_fast_cgetfield , "fast_cgetfield" , "bjj" , null , BasicType.getTChar() , 0, true , _getfield ); |
654 def(_fast_cgetfield , "fast_cgetfield" , "bJJ" , null , BasicType.getTChar() , 0, true , _getfield ); |
652 def(_fast_dgetfield , "fast_dgetfield" , "bjj" , null , BasicType.getTDouble() , 0, true , _getfield ); |
655 def(_fast_dgetfield , "fast_dgetfield" , "bJJ" , null , BasicType.getTDouble() , 0, true , _getfield ); |
653 def(_fast_fgetfield , "fast_fgetfield" , "bjj" , null , BasicType.getTFloat() , 0, true , _getfield ); |
656 def(_fast_fgetfield , "fast_fgetfield" , "bJJ" , null , BasicType.getTFloat() , 0, true , _getfield ); |
654 def(_fast_igetfield , "fast_igetfield" , "bjj" , null , BasicType.getTInt() , 0, true , _getfield ); |
657 def(_fast_igetfield , "fast_igetfield" , "bJJ" , null , BasicType.getTInt() , 0, true , _getfield ); |
655 def(_fast_lgetfield , "fast_lgetfield" , "bjj" , null , BasicType.getTLong() , 0, true , _getfield ); |
658 def(_fast_lgetfield , "fast_lgetfield" , "bJJ" , null , BasicType.getTLong() , 0, true , _getfield ); |
656 def(_fast_sgetfield , "fast_sgetfield" , "bjj" , null , BasicType.getTShort() , 0, true , _getfield ); |
659 def(_fast_sgetfield , "fast_sgetfield" , "bJJ" , null , BasicType.getTShort() , 0, true , _getfield ); |
657 |
660 |
658 def(_fast_aputfield , "fast_aputfield" , "bjj" , null , BasicType.getTObject() , 0, true , _putfield ); |
661 def(_fast_aputfield , "fast_aputfield" , "bJJ" , null , BasicType.getTObject() , 0, true , _putfield ); |
659 def(_fast_bputfield , "fast_bputfield" , "bjj" , null , BasicType.getTInt() , 0, true , _putfield ); |
662 def(_fast_bputfield , "fast_bputfield" , "bJJ" , null , BasicType.getTInt() , 0, true , _putfield ); |
660 def(_fast_cputfield , "fast_cputfield" , "bjj" , null , BasicType.getTChar() , 0, true , _putfield ); |
663 def(_fast_cputfield , "fast_cputfield" , "bJJ" , null , BasicType.getTChar() , 0, true , _putfield ); |
661 def(_fast_dputfield , "fast_dputfield" , "bjj" , null , BasicType.getTDouble() , 0, true , _putfield ); |
664 def(_fast_dputfield , "fast_dputfield" , "bJJ" , null , BasicType.getTDouble() , 0, true , _putfield ); |
662 def(_fast_fputfield , "fast_fputfield" , "bjj" , null , BasicType.getTFloat() , 0, true , _putfield ); |
665 def(_fast_fputfield , "fast_fputfield" , "bJJ" , null , BasicType.getTFloat() , 0, true , _putfield ); |
663 def(_fast_iputfield , "fast_iputfield" , "bjj" , null , BasicType.getTInt() , 0, true , _putfield ); |
666 def(_fast_iputfield , "fast_iputfield" , "bJJ" , null , BasicType.getTInt() , 0, true , _putfield ); |
664 def(_fast_lputfield , "fast_lputfield" , "bjj" , null , BasicType.getTLong() , 0, true , _putfield ); |
667 def(_fast_lputfield , "fast_lputfield" , "bJJ" , null , BasicType.getTLong() , 0, true , _putfield ); |
665 def(_fast_sputfield , "fast_sputfield" , "bjj" , null , BasicType.getTShort() , 0, true , _putfield ); |
668 def(_fast_sputfield , "fast_sputfield" , "bJJ" , null , BasicType.getTShort() , 0, true , _putfield ); |
666 |
669 |
667 def(_fast_aload_0 , "fast_aload_0" , "b" , null , BasicType.getTObject() , 1, true , _aload_0 ); |
670 def(_fast_aload_0 , "fast_aload_0" , "b" , null , BasicType.getTObject() , 1, true , _aload_0 ); |
668 def(_fast_iaccess_0 , "fast_iaccess_0" , "b_jj" , null , BasicType.getTInt() , 1, true , _aload_0 ); |
671 def(_fast_iaccess_0 , "fast_iaccess_0" , "b_JJ" , null , BasicType.getTInt() , 1, true , _aload_0 ); |
669 def(_fast_aaccess_0 , "fast_aaccess_0" , "b_jj" , null , BasicType.getTObject() , 1, true , _aload_0 ); |
672 def(_fast_aaccess_0 , "fast_aaccess_0" , "b_JJ" , null , BasicType.getTObject() , 1, true , _aload_0 ); |
670 def(_fast_faccess_0 , "fast_faccess_0" , "b_jj" , null , BasicType.getTObject() , 1, true , _aload_0 ); |
673 def(_fast_faccess_0 , "fast_faccess_0" , "b_JJ" , null , BasicType.getTObject() , 1, true , _aload_0 ); |
671 |
674 |
672 def(_fast_iload , "fast_iload" , "bi" , null , BasicType.getTInt() , 1, false, _iload); |
675 def(_fast_iload , "fast_iload" , "bi" , null , BasicType.getTInt() , 1, false, _iload); |
673 def(_fast_iload2 , "fast_iload2" , "bi_i" , null , BasicType.getTInt() , 2, false, _iload); |
676 def(_fast_iload2 , "fast_iload2" , "bi_i" , null , BasicType.getTInt() , 2, false, _iload); |
674 def(_fast_icaload , "fast_icaload" , "bi_" , null , BasicType.getTInt() , 0, false, _iload); |
677 def(_fast_icaload , "fast_icaload" , "bi_" , null , BasicType.getTInt() , 0, false, _iload); |
675 |
678 |
676 // Faster method invocation. |
679 // Faster method invocation. |
677 def(_fast_invokevfinal , "fast_invokevfinal" , "bjj" , null , BasicType.getTIllegal(), -1, true, _invokevirtual); |
680 def(_fast_invokevfinal , "fast_invokevfinal" , "bJJ" , null , BasicType.getTIllegal(), -1, true, _invokevirtual); |
678 |
681 |
679 def(_fast_linearswitch , "fast_linearswitch" , "" , null , BasicType.getTVoid() , -1, false, _lookupswitch ); |
682 def(_fast_linearswitch , "fast_linearswitch" , "" , null , BasicType.getTVoid() , -1, false, _lookupswitch ); |
680 def(_fast_binaryswitch , "fast_binaryswitch" , "" , null , BasicType.getTVoid() , -1, false, _lookupswitch ); |
683 def(_fast_binaryswitch , "fast_binaryswitch" , "" , null , BasicType.getTVoid() , -1, false, _lookupswitch ); |
|
684 |
|
685 def(_return_register_finalizer, "return_register_finalizer", "b" , null , BasicType.getTVoid() , 0, true, _return ); |
|
686 |
|
687 def(_fast_aldc , "fast_aldc" , "bj" , null , BasicType.getTObject(), 1, true, _ldc ); |
|
688 def(_fast_aldc_w , "fast_aldc_w" , "bJJ" , null , BasicType.getTObject(), 1, true, _ldc_w ); |
|
689 |
681 def(_shouldnotreachhere , "_shouldnotreachhere" , "b" , null , BasicType.getTVoid() , 0, false); |
690 def(_shouldnotreachhere , "_shouldnotreachhere" , "b" , null , BasicType.getTVoid() , 0, false); |
682 |
691 |
683 if (Assert.ASSERTS_ENABLED) { |
692 if (Assert.ASSERTS_ENABLED) { |
684 // compare can_trap information for each bytecode with the |
693 // compare can_trap information for each bytecode with the |
685 // can_trap information for the corresponding base bytecode |
694 // can_trap information for the corresponding base bytecode |