221 lines · 3.7 KB · C
RawDownload
/* * Java VM instruction set */ enum {	Jnop			= 0,	Jaconst_null		= 1,	Jiconst_m1		= 2,	Jiconst_0		= 3,	Jiconst_1		= 4,	Jiconst_2		= 5,	Jiconst_3		= 6,	Jiconst_4		= 7,	Jiconst_5		= 8,	Jlconst_0		= 9,	Jlconst_1		= 10,	Jfconst_0		= 11,	Jfconst_1		= 12,	Jfconst_2		= 13,	Jdconst_0		= 14,	Jdconst_1		= 15,	Jbipush			= 16,	Jsipush			= 17,	Jldc			= 18,	Jldc_w			= 19,	Jldc2_w			= 20,	Jiload			= 21,	Jlload			= 22,	Jfload			= 23,	Jdload			= 24,	Jaload			= 25,	Jiload_0		= 26,	Jiload_1		= 27,	Jiload_2		= 28,	Jiload_3		= 29,	Jlload_0		= 30,	Jlload_1		= 31,	Jlload_2		= 32,	Jlload_3		= 33,	Jfload_0		= 34,	Jfload_1		= 35,	Jfload_2		= 36,	Jfload_3		= 37,	Jdload_0		= 38,	Jdload_1		= 39,	Jdload_2		= 40,	Jdload_3		= 41,	Jaload_0		= 42,	Jaload_1		= 43,	Jaload_2		= 44,	Jaload_3		= 45,	Jiaload			= 46,	Jlaload			= 47,	Jfaload			= 48,	Jdaload			= 49,	Jaaload			= 50,	Jbaload			= 51,	Jcaload			= 52,	Jsaload			= 53,	Jistore			= 54,	Jlstore			= 55,	Jfstore			= 56,	Jdstore			= 57,	Jastore			= 58,	Jistore_0		= 59,	Jistore_1		= 60,	Jistore_2		= 61,	Jistore_3		= 62,	Jlstore_0		= 63,	Jlstore_1		= 64,	Jlstore_2		= 65,	Jlstore_3		= 66,	Jfstore_0		= 67,	Jfstore_1		= 68,	Jfstore_2		= 69,	Jfstore_3		= 70,	Jdstore_0		= 71,	Jdstore_1		= 72,	Jdstore_2		= 73,	Jdstore_3		= 74,	Jastore_0		= 75,	Jastore_1		= 76,	Jastore_2		= 77,	Jastore_3		= 78,	Jiastore		= 79,	Jlastore		= 80,	Jfastore		= 81,	Jdastore		= 82,	Jaastore		= 83,	Jbastore		= 84,	Jcastore		= 85,	Jsastore		= 86,	Jpop			= 87,	Jpop2			= 88,	Jdup			= 89,	Jdup_x1			= 90,	Jdup_x2			= 91,	Jdup2			= 92,	Jdup2_x1		= 93,	Jdup2_x2		= 94,	Jswap			= 95,	Jiadd			= 96,	Jladd			= 97,	Jfadd			= 98,	Jdadd			= 99,	Jisub			= 100,	Jlsub			= 101,	Jfsub			= 102,	Jdsub			= 103,	Jimul			= 104,	Jlmul			= 105,	Jfmul			= 106,	Jdmul			= 107,	Jidiv			= 108,	Jldiv			= 109,	Jfdiv			= 110,	Jddiv			= 111,	Jirem			= 112,	Jlrem			= 113,	Jfrem			= 114,	Jdrem			= 115,	Jineg			= 116,	Jlneg			= 117,	Jfneg			= 118,	Jdneg			= 119,	Jishl			= 120,	Jlshl			= 121,	Jishr			= 122,	Jlshr			= 123,	Jiushr			= 124,	Jlushr			= 125,	Jiand			= 126,	Jland			= 127,	Jior			= 128,	Jlor			= 129,	Jixor			= 130,	Jlxor			= 131,	Jiinc			= 132,	Ji2l			= 133,	Ji2f			= 134,	Ji2d			= 135,	Jl2i			= 136,	Jl2f			= 137,	Jl2d			= 138,	Jf2i			= 139,	Jf2l			= 140,	Jf2d			= 141,	Jd2i			= 142,	Jd2l			= 143,	Jd2f			= 144,	Ji2b			= 145,	Ji2c			= 146,	Ji2s			= 147,	Jlcmp			= 148,	Jfcmpl			= 149,	Jfcmpg			= 150,	Jdcmpl			= 151,	Jdcmpg			= 152,	Jifeq			= 153,	Jifne			= 154,	Jiflt			= 155,	Jifge			= 156,	Jifgt			= 157,	Jifle			= 158,	Jif_icmpeq		= 159,	Jif_icmpne		= 160,	Jif_icmplt		= 161,	Jif_icmpge		= 162,	Jif_icmpgt		= 163,	Jif_icmple		= 164,	Jif_acmpeq		= 165,	Jif_acmpne		= 166,	Jgoto			= 167,	Jjsr			= 168,	Jret			= 169,	Jtableswitch		= 170,	Jlookupswitch		= 171,	Jireturn		= 172,	Jlreturn		= 173,	Jfreturn		= 174,	Jdreturn		= 175,	Jareturn		= 176,	Jreturn			= 177,	Jgetstatic		= 178,	Jputstatic		= 179,	Jgetfield		= 180,	Jputfield		= 181,	Jinvokevirtual		= 182,	Jinvokespecial		= 183,	Jinvokestatic		= 184,	Jinvokeinterface	= 185,	Jxxxunusedxxx		= 186,	Jnew			= 187,	Jnewarray		= 188,	Janewarray		= 189,	Jarraylength		= 190,	Jathrow			= 191,	Jcheckcast		= 192,	Jinstanceof		= 193,	Jmonitorenter		= 194,	Jmonitorexit		= 195,	Jwide			= 196,	Jmultianewarray		= 197,	Jifnull			= 198,	Jifnonnull		= 199,	Jgoto_w			= 200,	Jjsr_w			= 201, 	MAXJAVA			= Jjsr_w+1, 	/* newarray element types (Java VM Specification page 320) */ 	T_BOOLEAN		= 4,	T_CHAR			= 5,	T_FLOAT			= 6,	T_DOUBLE		= 7,	T_BYTE			= 8,	T_SHORT			= 9,	T_INT			= 10,	T_LONG			= 11};