| //@class:dxc/junit/opcodes/opc_goto/jm/T_opc_goto_2 |
| // parsed:, offset 0, len 0, h: begin classfile |
| // parsed:, offset 0, len 4, h: magic: cafebabe |
| // . . . . |
| ca fe ba be |
| // parsed:, offset 4, len 2, h: minor_version: 0003 |
| // . . |
| 00 03 |
| // parsed:, offset 6, len 2, h: major_version: 002d |
| // . - |
| 00 2d |
| // parsed:, offset 8, len 2, h: constant_pool_count: 000f |
| // . . |
| 00 0f |
| // parsed:, offset 10, len 0, h: constant_pool: |
| // parsed:, offset 10, len 5, h: 0001: method{java.lang.Object.<init>:()V} |
| // . . . . . |
| 0a 00 0e 00 06 |
| // parsed:, offset 15, len 19, h: 0002: utf8{"java/lang/Object"} |
| // . . . j a v a / l a n g / O b j e c t |
| 01 00 10 6a 61 76 61 2f 6c 61 6e 67 2f 4f 62 6a 65 63 74 |
| // parsed:, offset 34, len 13, h: 0003: utf8{"SourceFile"} |
| // . . . S o u r c e F i l e |
| 01 00 0a 53 6f 75 72 63 65 46 69 6c 65 |
| // parsed:, offset 47, len 9, h: 0004: utf8{"<init>"} |
| // . . . < i n i t > |
| 01 00 06 3c 69 6e 69 74 3e |
| // parsed:, offset 56, len 6, h: 0005: utf8{"run"} |
| // . . . r u n |
| 01 00 03 72 75 6e |
| // parsed:, offset 62, len 5, h: 0006: nat{<init>:()V} |
| // . . . . . |
| 0c 00 04 00 0b |
| // parsed:, offset 67, len 3, h: 0007: type{dxc.junit.opcodes.opc_goto.jm.T_opc_goto_2} |
| // . . . |
| 07 00 0a |
| // parsed:, offset 70, len 7, h: 0008: utf8{"Code"} |
| // . . . C o d e |
| 01 00 04 43 6f 64 65 |
| // parsed:, offset 77, len 3, h: 0009: string{"a"} |
| // . . . |
| 08 00 0c |
| // parsed:, offset 80, len 45, h: 000a: utf8{"dxc/junit/opcodes/opc_goto/jm/T_opc_goto_2"} |
| // . . * d x c / j u n i t / o p c o d e s / o p c _ g o t o / j m / T _ o p c _ g o t o _ 2 |
| 01 00 2a 64 78 63 2f 6a 75 6e 69 74 2f 6f 70 63 6f 64 65 73 2f 6f 70 63 5f 67 6f 74 6f 2f 6a 6d 2f 54 5f 6f 70 63 5f 67 6f 74 6f 5f 32 |
| // parsed:, offset 125, len 6, h: 000b: utf8{"()V"} |
| // . . . ( ) V |
| 01 00 03 28 29 56 |
| // parsed:, offset 131, len 4, h: 000c: utf8{"a"} |
| // . . . a |
| 01 00 01 61 |
| // parsed:, offset 135, len 20, h: 000d: utf8{"T_opc_goto_2.java"} |
| // . . . T _ o p c _ g o t o _ 2 . j a v a |
| 01 00 11 54 5f 6f 70 63 5f 67 6f 74 6f 5f 32 2e 6a 61 76 61 |
| // parsed:, offset 155, len 3, h: 000e: type{java.lang.Object} |
| // . . . |
| 07 00 02 |
| // parsed:, offset 158, len 0, h: end constant_pool |
| // parsed:, offset 158, len 2, h: access_flags: public|super |
| // . ! |
| 00 21 |
| // parsed:, offset 160, len 2, h: this_class: type{dxc.junit.opcodes.opc_goto.jm.T_opc_goto_2} |
| // . . |
| 00 07 |
| // parsed:, offset 162, len 2, h: super_class: type{java.lang.Object} |
| // . . |
| 00 0e |
| // parsed:, offset 164, len 2, h: interfaces_count: 0000 |
| // . . |
| 00 00 |
| // parsed:, offset 166, len 2, h: fields_count: 0000 |
| // . . |
| 00 00 |
| // parsed:, offset 168, len 2, h: methods_count: 0002 |
| // . . |
| 00 02 |
| // ========== start-ParseMember:<init>, offset 170, len:74,desc: ()V |
| // parsed:, offset 170, len 0, h: methods[0]: |
| // parsed:, offset 170, len 2, h: access_flags: public |
| // . . |
| 00 01 |
| // parsed:, offset 172, len 2, h: name: <init> |
| // . . |
| 00 04 |
| // parsed:, offset 174, len 2, h: descriptor: ()V |
| // . . |
| 00 0b |
| // parsed:, offset 176, len 2, h: attributes_count: 0001 |
| // . . |
| 00 01 |
| // parsed:, offset 178, len 0, h: attributes[0]: |
| // parsed:, offset 178, len 2, h: name: Code |
| // . . |
| 00 08 |
| // parsed:, offset 180, len 4, h: length: 00000011 |
| // . . . . |
| 00 00 00 11 |
| // parsed:, offset 184, len 2, h: max_stack: 0001 |
| // . . |
| 00 01 |
| // parsed:, offset 186, len 2, h: max_locals: 0001 |
| // . . |
| 00 01 |
| // parsed:, offset 188, len 4, h: code_length: 00000005 |
| // . . . . |
| 00 00 00 05 |
| // parsed:, offset 0, len 1, h: 0000: aload_0 // 00 |
| // * |
| 2a |
| // parsed:, offset 1, len 3, h: 0001: invokespecial method{java.lang.Object.<init>:()V} |
| // . . . |
| b7 00 01 |
| // parsed:, offset 4, len 1, h: 0004: return |
| // . |
| b1 |
| // parsed:, offset 197, len 2, h: exception_table_length: 0000 |
| // . . |
| 00 00 |
| // parsed:, offset 199, len 2, h: attributes_count: 0000 |
| // . . |
| 00 00 |
| // parsed:, offset 201, len 0, h: end attributes[0] |
| // parsed:, offset 201, len 0, h: end methods[0] |
| // ========== end-ParseMember:<init>, desc: ()V |
| // ========== start-ParseMember:run, offset 201, len:43,desc: ()V |
| // parsed:, offset 201, len 0, h: methods[1]: |
| // parsed:, offset 201, len 2, h: access_flags: public |
| // . . |
| 00 01 |
| // parsed:, offset 203, len 2, h: name: run |
| // . . |
| 00 05 |
| // parsed:, offset 205, len 2, h: descriptor: ()V |
| // . . |
| 00 0b |
| // parsed:, offset 207, len 2, h: attributes_count: 0001 |
| // . . |
| 00 01 |
| // parsed:, offset 209, len 0, h: attributes[0]: |
| // parsed:, offset 209, len 2, h: name: Code |
| // . . |
| 00 08 |
| // parsed:, offset 211, len 4, h: length: 00000013 |
| // . . . . |
| 00 00 00 13 |
| // parsed:, offset 215, len 2, h: max_stack: 0001 |
| // . . |
| 00 01 |
| // parsed:, offset 217, len 2, h: max_locals: 0001 |
| // . . |
| 00 01 |
| // parsed:, offset 219, len 4, h: code_length: 00000007 |
| // . . . . |
| 00 00 00 07 |
| // parsed:, offset 0, len 3, h: 0000: goto 0004 |
| // . . . |
| //@mod: a7 00 04 |
| // we jump to the parameter of a byte code (was: ldc, now: string "a"), so this |
| // must be rejected by the verifier |
| a7 00 05 |
| // parsed:, offset 3, len 1, h: 0003: return |
| // . |
| b1 |
| // parsed:, offset 4, len 2, h: 0004: ldc string{"a"} |
| // . . |
| 12 09 |
| // parsed:, offset 6, len 1, h: 0006: return |
| // . |
| b1 |
| // parsed:, offset 230, len 2, h: exception_table_length: 0000 |
| // . . |
| 00 00 |
| // parsed:, offset 232, len 2, h: attributes_count: 0000 |
| // . . |
| 00 00 |
| // parsed:, offset 234, len 0, h: end attributes[0] |
| // parsed:, offset 234, len 0, h: end methods[1] |
| // ========== end-ParseMember:run, desc: ()V |
| // parsed:, offset 234, len 2, h: attributes_count: 0001 |
| // . . |
| 00 01 |
| // parsed:, offset 236, len 0, h: attributes[0]: |
| // parsed:, offset 236, len 2, h: name: SourceFile |
| // . . |
| 00 03 |
| // parsed:, offset 238, len 4, h: length: 00000002 |
| // . . . . |
| 00 00 00 02 |
| // parsed:, offset 242, len 2, h: source: utf8{"T_opc_goto_2.java"} |
| // . . |
| 00 0d |
| // parsed:, offset 244, len 0, h: end attributes[0] |
| // parsed:, offset 244, len 0, h: end classfile |