blob: 4abb7c64f4d1b1de476aace3e8ba313f6b99ad35 [file] [log] [blame]
//@class:dxc/junit/opcodes/goto_w/jm/T_goto_w_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 0d 00 09
// 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 3, h: 0004: string{"a"}
// . . .
08 00 0c
// parsed:, offset 50, len 9, h: 0005: utf8{"<init>"}
// . . . < i n i t >
01 00 06 3c 69 6e 69 74 3e
// parsed:, offset 59, len 18, h: 0006: utf8{"T_goto_w_2.java"}
// . . . T _ g o t o _ w _ 2 . j a v a
01 00 0f 54 5f 67 6f 74 6f 5f 77 5f 32 2e 6a 61 76 61
// parsed:, offset 77, len 6, h: 0007: utf8{"run"}
// . . . r u n
01 00 03 72 75 6e
// parsed:, offset 83, len 3, h: 0008: type{dxc.junit.opcodes.goto_w.jm.T_goto_w_2}
// . . .
07 00 0e
// parsed:, offset 86, len 5, h: 0009: nat{<init>:()V}
// . . . . .
0c 00 05 00 0b
// parsed:, offset 91, len 7, h: 000a: utf8{"Code"}
// . . . C o d e
01 00 04 43 6f 64 65
// parsed:, offset 98, len 6, h: 000b: utf8{"()V"}
// . . . ( ) V
01 00 03 28 29 56
// parsed:, offset 104, len 4, h: 000c: utf8{"a"}
// . . . a
01 00 01 61
// parsed:, offset 108, len 3, h: 000d: type{java.lang.Object}
// . . .
07 00 02
// parsed:, offset 111, len 41, h: 000e: utf8{"dxc/junit/opcodes/goto_w/jm/T_goto_w_2"}
// . . & d x c / j u n i t / o p c o d e s / g o t o _ w / j m / T _ g o t o _ w _ 2
01 00 26 64 78 63 2f 6a 75 6e 69 74 2f 6f 70 63 6f 64 65 73 2f 67 6f 74 6f 5f 77 2f 6a 6d 2f 54 5f 67 6f 74 6f 5f 77 5f 32
// parsed:, offset 152, len 0, h: end constant_pool
// parsed:, offset 152, len 2, h: access_flags: public|super
// . !
00 21
// parsed:, offset 154, len 2, h: this_class: type{dxc.junit.opcodes.goto_w.jm.T_goto_w_2}
// . .
00 08
// parsed:, offset 156, len 2, h: super_class: type{java.lang.Object}
// . .
00 0d
// parsed:, offset 158, len 2, h: interfaces_count: 0000
// . .
00 00
// parsed:, offset 160, len 2, h: fields_count: 0000
// . .
00 00
// parsed:, offset 162, len 2, h: methods_count: 0002
// . .
00 02
// ========== start-ParseMember:<init>, offset 164, len:76,desc: ()V
// parsed:, offset 164, len 0, h: methods[0]:
// parsed:, offset 164, len 2, h: access_flags: public
// . .
00 01
// parsed:, offset 166, len 2, h: name: <init>
// . .
00 05
// parsed:, offset 168, len 2, h: descriptor: ()V
// . .
00 0b
// parsed:, offset 170, len 2, h: attributes_count: 0001
// . .
00 01
// parsed:, offset 172, len 0, h: attributes[0]:
// parsed:, offset 172, len 2, h: name: Code
// . .
00 0a
// parsed:, offset 174, len 4, h: length: 00000011
// . . . .
00 00 00 11
// parsed:, offset 178, len 2, h: max_stack: 0001
// . .
00 01
// parsed:, offset 180, len 2, h: max_locals: 0001
// . .
00 01
// parsed:, offset 182, 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 191, len 2, h: exception_table_length: 0000
// . .
00 00
// parsed:, offset 193, len 2, h: attributes_count: 0000
// . .
00 00
// parsed:, offset 195, len 0, h: end attributes[0]
// parsed:, offset 195, len 0, h: end methods[0]
// ========== end-ParseMember:<init>, desc: ()V
// ========== start-ParseMember:run, offset 195, len:45,desc: ()V
// parsed:, offset 195, len 0, h: methods[1]:
// parsed:, offset 195, len 2, h: access_flags: public
// . .
00 01
// parsed:, offset 197, len 2, h: name: run
// . .
00 07
// parsed:, offset 199, len 2, h: descriptor: ()V
// . .
00 0b
// parsed:, offset 201, len 2, h: attributes_count: 0001
// . .
00 01
// parsed:, offset 203, len 0, h: attributes[0]:
// parsed:, offset 203, len 2, h: name: Code
// . .
00 0a
// parsed:, offset 205, len 4, h: length: 00000015
// . . . .
00 00 00 15
// parsed:, offset 209, len 2, h: max_stack: 0001
// . .
00 01
// parsed:, offset 211, len 2, h: max_locals: 0001
// . .
00 01
// parsed:, offset 213, len 4, h: code_length: 00000009
// . . . .
00 00 00 09
// parsed:, offset 0, len 5, h: 0000: goto_w 00000006
// . . . . .
//@mod: c8 00 00 00 06
// we jump to the parameter of a byte code (was: ldc, now: string "a"), so this
// must be rejected by the verifier
c8 00 00 00 07
// parsed:, offset 5, len 1, h: 0005: return
// .
b1
// parsed:, offset 6, len 2, h: 0006: ldc string{"a"}
// . .
12 04
// parsed:, offset 8, len 1, h: 0008: return
// .
b1
// parsed:, offset 226, len 2, h: exception_table_length: 0000
// . .
00 00
// parsed:, offset 228, len 2, h: attributes_count: 0000
// . .
00 00
// parsed:, offset 230, len 0, h: end attributes[0]
// parsed:, offset 230, len 0, h: end methods[1]
// ========== end-ParseMember:run, desc: ()V
// parsed:, offset 230, len 2, h: attributes_count: 0001
// . .
00 01
// parsed:, offset 232, len 0, h: attributes[0]:
// parsed:, offset 232, len 2, h: name: SourceFile
// . .
00 03
// parsed:, offset 234, len 4, h: length: 00000002
// . . . .
00 00 00 02
// parsed:, offset 238, len 2, h: source: utf8{"T_goto_w_2.java"}
// . .
00 06
// parsed:, offset 240, len 0, h: end attributes[0]
// parsed:, offset 240, len 0, h: end classfile