On Tue, 11 Jun 2024 06:27:13 GMT, Emanuel Peter <epe...@openjdk.org> wrote:
>> @eme64 It seems that when the following code uses StringUTF16.putChar, C2's >> optimization is not as good as the manual merging and storage effect. >> >> class AbstractStringBuilder { >> private AbstractStringBuilder appendNull() { >> // ... >> StringUTF16.putCharsAt(val, count, 'n', 'u', 'l', 'l'); >> // ... >> } >> >> public AbstractStringBuilder append(boolean b) { >> // ... >> StringUTF16.putCharsAt(val, count, 't', 'r', 'u', 'e'); >> // ... >> StringUTF16.putCharsAt(val, count, 'f', 'a', 'l', 's', 'e'); >> // ... >> } >> } >> >> class StringUTF16 { >> public static void putCharsAt(byte[] value, int i, char c1, char c2, char >> c3, char c4) { >> putChar(value, i , c1); >> putChar(value, i + 1, c2); >> putChar(value, i + 2, c3); >> putChar(value, i + 3, c4); >> } >> >> @IntrinsicCandidate >> // intrinsic performs no bounds checks >> static void putChar(byte[] val, int index, int c) { >> assert index >= 0 && index < length(val) : "Trusted caller missed >> bounds check"; >> index <<= 1; >> val[index++] = (byte)(c >> HI_BYTE_SHIFT); >> val[index] = (byte)(c >> LO_BYTE_SHIFT); >> } >> } >> >> >> The code for manually merging storage is as follows, without using Unsafe: >> >> class AbstractStringBuilder { >> static final long NULL_UTF16; >> static final long TRUE_UTF16; >> static final long FALS_UTF16; >> >> static { >> byte[] bytes = new byte[8]; >> >> StringUTF16.putCharsAt(bytes, 0, 'n', 'u', 'l', 'l'); >> NULL_UTF16 = getLong(bytes, 0); >> >> StringUTF16.putCharsAt(bytes, 0, 't', 'r', 'u', 'e'); >> TRUE_UTF16 = getLong(bytes, 0); >> >> StringUTF16.putCharsAt(bytes, 0, 'f', 'a', 'l', 's'); >> FALS_UTF16 = getLong(bytes, 0); >> } >> >> private static long getLong(byte[] bytes, int offset) { >> return (((long)bytes[offset ] & 0xff) ) | >> (((long)bytes[offset + 1] & 0xff) << 8) | >> (((long)bytes[offset + 2] & 0xff) << 16) | >> (((long)bytes[offset + 3] & 0xff) << 24) | >> (((long)bytes[offset + 4] & 0xff) << 32) | >> (((long)bytes[offset + 5] & 0xff) << 40) | >> (((long)bytes[offset + 6] & 0xff) << 48) | >> (((long)bytes[offset + 7] & 0xff) << 56); >> } >> >> private static void setLong(byte[] array, int offset, long value) { >> array[offset] = (byte) value; >> array[offse... > > @wenshao >> @eme64 It seems that when the following code uses StringUTF16.putChar, C2's >> optimization is not as good as the manual merging and storage effect. > > As I asked above, you will need to provide some evidence / generated assembly > / perf data, and logs from `TraceMergeStores`. I currently do not have time > to produce these myself, and I think they would be crucial to determine where > the missing performance has gone. See my earlier comment: > https://github.com/openjdk/jdk/pull/19626#issuecomment-2158533469 > > And please also try @cl4es advide here: > https://github.com/openjdk/jdk/pull/19626#issuecomment-2159509806 > > And sure, maybe you need some public API for setting multiple bytes at once, > which the `MergeStores` optimization can optimize. I'm a C2 engineer, so I > leave that up to the library folks ;) @eme64 The assembly information is below, can you take a look and see if it can help you diagnose the problem? * JavaCode class AbstractStringBuilder { private AbstractStringBuilder appendNull() { int count = this.count; ensureCapacityInternal(count + 4); byte[] val = this.value; if (isLatin1()) { val[count ] = 'n'; val[count + 1] = 'u'; val[count + 2] = 'l'; val[count + 3] = 'l'; } else { StringUTF16.putCharsAt(val, count, 'n', 'u', 'l', 'l'); } this.count = count + 4; return this; } } class StringUTF16 { public static void putCharsAt(byte[] value, int i, char c1, char c2, char c3, char c4) { putChar(value, i , c1); putChar(value, i + 1, c2); putChar(value, i + 2, c3); putChar(value, i + 3, c4); } } * Apple M1 StringBuilder.appendNull PrintAssembly /Users/wenshao/Work/git/jdk/build/macosx-aarch64-server-release/jdk/bin/java -XX:+UnlockDiagnosticVMOptions -XX:+PrintAssembly -XX:CompileCommand=compileonly,*StringBuilder.appendNull -XX:-TieredCompilation -XX:TieredStopAtLevel=4 -javaagent:/Applications/IntelliJ IDEA.app/Contents/lib/idea_rt.jar=61041:/Applications/IntelliJ IDEA.app/Contents/bin -Dfile.encoding=UTF-8 -Dsun.stdout.encoding=UTF-8 -Dsun.stderr.encoding=UTF-8 .... Compiled method (n/a) 96 1 n java.lang.invoke.MethodHandle::linkToStatic(LLLLLLL)L (native) total in heap [0x0000000102efba08,0x0000000102efbb20] = 280 relocation [0x0000000102efbae0,0x0000000102efbae8] = 8 main code [0x0000000102efbb00,0x0000000102efbb20] = 32 [Disassembly] -------------------------------------------------------------------------------- [Constant Pool (empty)] -------------------------------------------------------------------------------- [Verified Entry Point] # {method} {0x000000011c3e1c80} 'linkToStatic' '(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/invoke/MemberName;)Ljava/lang/Object;' in 'java/lang/invoke/MethodHandle' # parm0: c_rarg1:c_rarg1 = 'java/lang/Object' # parm1: c_rarg2:c_rarg2 = 'java/lang/Object' # parm2: c_rarg3:c_rarg3 = 'java/lang/Object' # parm3: c_rarg4:c_rarg4 = 'java/lang/Object' # parm4: c_rarg5:c_rarg5 = 'java/lang/Object' # parm5: c_rarg6:c_rarg6 = 'java/lang/Object' # parm6: c_rarg7:c_rarg7 = 'java/lang/invoke/MemberName' # [sp+0x0] (sp of caller) 0x0000000102efbb00: nop 0x0000000102efbb04: ldr w12, [x7, #36] 0x0000000102efbb08: lsl x12, x12, #3 0x0000000102efbb0c: ldr x12, [x12, #16] 0x0000000102efbb10: cbz x12, 0x0000000102efbb1c 0x0000000102efbb14: ldr x8, [x12, #64] 0x0000000102efbb18: br x8 0x0000000102efbb1c: b 0x0000000102e9e080 ; {runtime_call AbstractMethodError throw_exception} -------------------------------------------------------------------------------- [/Disassembly] Compiled method (n/a) 102 2 n java.lang.invoke.MethodHandle::linkToStatic(LLL)L (native) total in heap [0x0000000102f01108,0x0000000102f01220] = 280 relocation [0x0000000102f011e0,0x0000000102f011e8] = 8 main code [0x0000000102f01200,0x0000000102f01220] = 32 [Disassembly] -------------------------------------------------------------------------------- [Constant Pool (empty)] -------------------------------------------------------------------------------- [Verified Entry Point] # {method} {0x000000011c432368} 'linkToStatic' '(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/invoke/MemberName;)Ljava/lang/Object;' in 'java/lang/invoke/MethodHandle' # parm0: c_rarg1:c_rarg1 = 'java/lang/Object' # parm1: c_rarg2:c_rarg2 = 'java/lang/Object' # parm2: c_rarg3:c_rarg3 = 'java/lang/invoke/MemberName' # [sp+0x0] (sp of caller) 0x0000000102f01200: nop 0x0000000102f01204: ldr w12, [x3, #36] 0x0000000102f01208: lsl x12, x12, #3 0x0000000102f0120c: ldr x12, [x12, #16] 0x0000000102f01210: cbz x12, 0x0000000102f0121c 0x0000000102f01214: ldr x8, [x12, #64] 0x0000000102f01218: br x8 0x0000000102f0121c: b 0x0000000102e9e080 ; {runtime_call AbstractMethodError throw_exception} -------------------------------------------------------------------------------- [/Disassembly] Compiled method (n/a) 103 3 n java.lang.invoke.MethodHandle::invokeBasic(LLLLLL)L (native) total in heap [0x0000000102f01408,0x0000000102f01530] = 296 relocation [0x0000000102f014e0,0x0000000102f014e8] = 8 main code [0x0000000102f01500,0x0000000102f01530] = 48 [Disassembly] -------------------------------------------------------------------------------- [Constant Pool (empty)] -------------------------------------------------------------------------------- [Verified Entry Point] # {method} {0x000000011c43ace8} 'invokeBasic' '(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;' in 'java/lang/invoke/MethodHandle' # this: c_rarg1:c_rarg1 = 'java/lang/invoke/MethodHandle' # parm0: c_rarg2:c_rarg2 = 'java/lang/Object' # parm1: c_rarg3:c_rarg3 = 'java/lang/Object' # parm2: c_rarg4:c_rarg4 = 'java/lang/Object' # parm3: c_rarg5:c_rarg5 = 'java/lang/Object' # parm4: c_rarg6:c_rarg6 = 'java/lang/Object' # parm5: c_rarg7:c_rarg7 = 'java/lang/Object' # [sp+0x0] (sp of caller) 0x0000000102f01500: nop 0x0000000102f01504: ldr w12, [x1, #20] 0x0000000102f01508: lsl x12, x12, #3 0x0000000102f0150c: ldr w12, [x12, #40] 0x0000000102f01510: lsl x12, x12, #3 0x0000000102f01514: ldr w12, [x12, #36] 0x0000000102f01518: lsl x12, x12, #3 0x0000000102f0151c: ldr x12, [x12, #16] 0x0000000102f01520: cbz x12, 0x0000000102f0152c 0x0000000102f01524: ldr x8, [x12, #64] 0x0000000102f01528: br x8 0x0000000102f0152c: b 0x0000000102e9e080 ; {runtime_call AbstractMethodError throw_exception} -------------------------------------------------------------------------------- [/Disassembly] Compiled method (n/a) 104 4 n java.lang.invoke.MethodHandle::linkToSpecial(LLLLLLLL)L (native) total in heap [0x0000000102f01708,0x0000000102f01828] = 288 relocation [0x0000000102f017e0,0x0000000102f017e8] = 8 main code [0x0000000102f01800,0x0000000102f01824] = 36 stub code [0x0000000102f01824,0x0000000102f01828] = 4 [Disassembly] -------------------------------------------------------------------------------- [Constant Pool (empty)] -------------------------------------------------------------------------------- [Verified Entry Point] # {method} {0x000000011c43ae60} 'linkToSpecial' '(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/invoke/MemberName;)Ljava/lang/Object;' in 'java/lang/invoke/MethodHandle' # parm0: c_rarg1:c_rarg1 = 'java/lang/Object' # parm1: c_rarg2:c_rarg2 = 'java/lang/Object' # parm2: c_rarg3:c_rarg3 = 'java/lang/Object' # parm3: c_rarg4:c_rarg4 = 'java/lang/Object' # parm4: c_rarg5:c_rarg5 = 'java/lang/Object' # parm5: c_rarg6:c_rarg6 = 'java/lang/Object' # parm6: c_rarg7:c_rarg7 = 'java/lang/Object' # parm7: c_rarg0:c_rarg0 = 'java/lang/invoke/MemberName' # [sp+0x0] (sp of caller) 0x0000000102f01800: nop 0x0000000102f01804: ldr xzr, [x1] 0x0000000102f01808: ldr w12, [x0, #36] 0x0000000102f0180c: lsl x12, x12, #3 0x0000000102f01810: ldr x12, [x12, #16] 0x0000000102f01814: cbz x12, 0x0000000102f01820 0x0000000102f01818: ldr x8, [x12, #64] 0x0000000102f0181c: br x8 0x0000000102f01820: b 0x0000000102e9e080 ; {runtime_call AbstractMethodError throw_exception} [Stub Code] 0x0000000102f01824: udf #0 -------------------------------------------------------------------------------- [/Disassembly] Compiled method (n/a) 107 5 n java.lang.invoke.MethodHandle::linkToSpecial(LLLL)V (native) total in heap [0x0000000102f01d88,0x0000000102f01ea8] = 288 relocation [0x0000000102f01e60,0x0000000102f01e68] = 8 main code [0x0000000102f01e80,0x0000000102f01ea4] = 36 stub code [0x0000000102f01ea4,0x0000000102f01ea8] = 4 [Disassembly] -------------------------------------------------------------------------------- [Constant Pool (empty)] -------------------------------------------------------------------------------- [Verified Entry Point] # {method} {0x000000011c44f7a0} 'linkToSpecial' '(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/invoke/MemberName;)V' in 'java/lang/invoke/MethodHandle' # parm0: c_rarg1:c_rarg1 = 'java/lang/Object' # parm1: c_rarg2:c_rarg2 = 'java/lang/Object' # parm2: c_rarg3:c_rarg3 = 'java/lang/Object' # parm3: c_rarg4:c_rarg4 = 'java/lang/invoke/MemberName' # [sp+0x0] (sp of caller) 0x0000000102f01e80: nop 0x0000000102f01e84: ldr xzr, [x1] 0x0000000102f01e88: ldr w12, [x4, #36] 0x0000000102f01e8c: lsl x12, x12, #3 0x0000000102f01e90: ldr x12, [x12, #16] 0x0000000102f01e94: cbz x12, 0x0000000102f01ea0 0x0000000102f01e98: ldr x8, [x12, #64] 0x0000000102f01e9c: br x8 0x0000000102f01ea0: b 0x0000000102e9e080 ; {runtime_call AbstractMethodError throw_exception} [Stub Code] 0x0000000102f01ea4: udf #0 -------------------------------------------------------------------------------- [/Disassembly] Compiled method (n/a) 108 6 n java.lang.invoke.MethodHandle::invokeBasic(LL)L (native) total in heap [0x0000000102f02408,0x0000000102f02530] = 296 relocation [0x0000000102f024e0,0x0000000102f024e8] = 8 main code [0x0000000102f02500,0x0000000102f02530] = 48 [Disassembly] -------------------------------------------------------------------------------- [Constant Pool (empty)] -------------------------------------------------------------------------------- [Verified Entry Point] # {method} {0x000000011c450b68} 'invokeBasic' '(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;' in 'java/lang/invoke/MethodHandle' # this: c_rarg1:c_rarg1 = 'java/lang/invoke/MethodHandle' # parm0: c_rarg2:c_rarg2 = 'java/lang/Object' # parm1: c_rarg3:c_rarg3 = 'java/lang/Object' # [sp+0x0] (sp of caller) 0x0000000102f02500: nop 0x0000000102f02504: ldr w12, [x1, #20] 0x0000000102f02508: lsl x12, x12, #3 0x0000000102f0250c: ldr w12, [x12, #40] 0x0000000102f02510: lsl x12, x12, #3 0x0000000102f02514: ldr w12, [x12, #36] 0x0000000102f02518: lsl x12, x12, #3 0x0000000102f0251c: ldr x12, [x12, #16] 0x0000000102f02520: cbz x12, 0x0000000102f0252c 0x0000000102f02524: ldr x8, [x12, #64] 0x0000000102f02528: br x8 0x0000000102f0252c: b 0x0000000102e9e080 ; {runtime_call AbstractMethodError throw_exception} -------------------------------------------------------------------------------- [/Disassembly] Compiled method (n/a) 109 7 n java.lang.invoke.MethodHandle::linkToSpecial(LLLL)L (native) total in heap [0x0000000102f02708,0x0000000102f02828] = 288 relocation [0x0000000102f027e0,0x0000000102f027e8] = 8 main code [0x0000000102f02800,0x0000000102f02824] = 36 stub code [0x0000000102f02824,0x0000000102f02828] = 4 [Disassembly] -------------------------------------------------------------------------------- [Constant Pool (empty)] -------------------------------------------------------------------------------- [Verified Entry Point] # {method} {0x000000011c450c80} 'linkToSpecial' '(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/invoke/MemberName;)Ljava/lang/Object;' in 'java/lang/invoke/MethodHandle' # parm0: c_rarg1:c_rarg1 = 'java/lang/Object' # parm1: c_rarg2:c_rarg2 = 'java/lang/Object' # parm2: c_rarg3:c_rarg3 = 'java/lang/Object' # parm3: c_rarg4:c_rarg4 = 'java/lang/invoke/MemberName' # [sp+0x0] (sp of caller) 0x0000000102f02800: nop 0x0000000102f02804: ldr xzr, [x1] 0x0000000102f02808: ldr w12, [x4, #36] 0x0000000102f0280c: lsl x12, x12, #3 0x0000000102f02810: ldr x12, [x12, #16] 0x0000000102f02814: cbz x12, 0x0000000102f02820 0x0000000102f02818: ldr x8, [x12, #64] 0x0000000102f0281c: br x8 0x0000000102f02820: b 0x0000000102e9e080 ; {runtime_call AbstractMethodError throw_exception} [Stub Code] 0x0000000102f02824: udf #0 -------------------------------------------------------------------------------- [/Disassembly] Compiled method (n/a) 117 8 n java.lang.invoke.MethodHandle::linkToSpecial(LLL)L (native) total in heap [0x0000000102f05088,0x0000000102f051a8] = 288 relocation [0x0000000102f05160,0x0000000102f05168] = 8 main code [0x0000000102f05180,0x0000000102f051a4] = 36 stub code [0x0000000102f051a4,0x0000000102f051a8] = 4 [Disassembly] -------------------------------------------------------------------------------- [Constant Pool (empty)] -------------------------------------------------------------------------------- [Verified Entry Point] # {method} {0x000000011c4911f8} 'linkToSpecial' '(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/invoke/MemberName;)Ljava/lang/Object;' in 'java/lang/invoke/MethodHandle' # parm0: c_rarg1:c_rarg1 = 'java/lang/Object' # parm1: c_rarg2:c_rarg2 = 'java/lang/Object' # parm2: c_rarg3:c_rarg3 = 'java/lang/invoke/MemberName' # [sp+0x0] (sp of caller) 0x0000000102f05180: nop 0x0000000102f05184: ldr xzr, [x1] 0x0000000102f05188: ldr w12, [x3, #36] 0x0000000102f0518c: lsl x12, x12, #3 0x0000000102f05190: ldr x12, [x12, #16] 0x0000000102f05194: cbz x12, 0x0000000102f051a0 0x0000000102f05198: ldr x8, [x12, #64] 0x0000000102f0519c: br x8 0x0000000102f051a0: b 0x0000000102e9e080 ; {runtime_call AbstractMethodError throw_exception} [Stub Code] 0x0000000102f051a4: udf #0 -------------------------------------------------------------------------------- [/Disassembly] Compiled method (n/a) 123 9 n java.lang.invoke.MethodHandle::linkToStatic(LLIL)I (native) total in heap [0x0000000102f08b88,0x0000000102f08ca0] = 280 relocation [0x0000000102f08c60,0x0000000102f08c68] = 8 main code [0x0000000102f08c80,0x0000000102f08ca0] = 32 [Disassembly] -------------------------------------------------------------------------------- [Constant Pool (empty)] -------------------------------------------------------------------------------- [Verified Entry Point] # {method} {0x000000011c4c2f78} 'linkToStatic' '(Ljava/lang/Object;Ljava/lang/Object;ILjava/lang/invoke/MemberName;)I' in 'java/lang/invoke/MethodHandle' # parm0: c_rarg1:c_rarg1 = 'java/lang/Object' # parm1: c_rarg2:c_rarg2 = 'java/lang/Object' # parm2: c_rarg3 = int # parm3: c_rarg4:c_rarg4 = 'java/lang/invoke/MemberName' # [sp+0x0] (sp of caller) 0x0000000102f08c80: nop 0x0000000102f08c84: ldr w12, [x4, #36] 0x0000000102f08c88: lsl x12, x12, #3 0x0000000102f08c8c: ldr x12, [x12, #16] 0x0000000102f08c90: cbz x12, 0x0000000102f08c9c 0x0000000102f08c94: ldr x8, [x12, #64] 0x0000000102f08c98: br x8 0x0000000102f08c9c: b 0x0000000102e9e080 ; {runtime_call AbstractMethodError throw_exception} -------------------------------------------------------------------------------- [/Disassembly] Compiled method (n/a) 128 10 n java.lang.invoke.MethodHandle::linkToSpecial(LLL)V (native) total in heap [0x0000000102f09208,0x0000000102f09328] = 288 relocation [0x0000000102f092e0,0x0000000102f092e8] = 8 main code [0x0000000102f09300,0x0000000102f09324] = 36 stub code [0x0000000102f09324,0x0000000102f09328] = 4 [Disassembly] -------------------------------------------------------------------------------- [Constant Pool (empty)] -------------------------------------------------------------------------------- [Verified Entry Point] # {method} {0x000000011c4dbc20} 'linkToSpecial' '(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/invoke/MemberName;)V' in 'java/lang/invoke/MethodHandle' # parm0: c_rarg1:c_rarg1 = 'java/lang/Object' # parm1: c_rarg2:c_rarg2 = 'java/lang/Object' # parm2: c_rarg3:c_rarg3 = 'java/lang/invoke/MemberName' # [sp+0x0] (sp of caller) 0x0000000102f09300: nop 0x0000000102f09304: ldr xzr, [x1] 0x0000000102f09308: ldr w12, [x3, #36] 0x0000000102f0930c: lsl x12, x12, #3 0x0000000102f09310: ldr x12, [x12, #16] 0x0000000102f09314: cbz x12, 0x0000000102f09320 0x0000000102f09318: ldr x8, [x12, #64] 0x0000000102f0931c: br x8 0x0000000102f09320: b 0x0000000102e9e080 ; {runtime_call AbstractMethodError throw_exception} [Stub Code] 0x0000000102f09324: udf #0 -------------------------------------------------------------------------------- [/Disassembly] Compiled method (n/a) 129 11 n java.lang.invoke.MethodHandle::invokeBasic(L)L (native) total in heap [0x0000000102f09508,0x0000000102f09630] = 296 relocation [0x0000000102f095e0,0x0000000102f095e8] = 8 main code [0x0000000102f09600,0x0000000102f09630] = 48 [Disassembly] -------------------------------------------------------------------------------- [Constant Pool (empty)] -------------------------------------------------------------------------------- [Verified Entry Point] # {method} {0x000000011c4dc348} 'invokeBasic' '(Ljava/lang/Object;)Ljava/lang/Object;' in 'java/lang/invoke/MethodHandle' # this: c_rarg1:c_rarg1 = 'java/lang/invoke/MethodHandle' # parm0: c_rarg2:c_rarg2 = 'java/lang/Object' # [sp+0x0] (sp of caller) 0x0000000102f09600: nop 0x0000000102f09604: ldr w12, [x1, #20] 0x0000000102f09608: lsl x12, x12, #3 0x0000000102f0960c: ldr w12, [x12, #40] 0x0000000102f09610: lsl x12, x12, #3 0x0000000102f09614: ldr w12, [x12, #36] 0x0000000102f09618: lsl x12, x12, #3 0x0000000102f0961c: ldr x12, [x12, #16] 0x0000000102f09620: cbz x12, 0x0000000102f0962c 0x0000000102f09624: ldr x8, [x12, #64] 0x0000000102f09628: br x8 0x0000000102f0962c: b 0x0000000102e9e080 ; {runtime_call AbstractMethodError throw_exception} -------------------------------------------------------------------------------- [/Disassembly] Compiled method (n/a) 131 12 n java.lang.invoke.MethodHandle::linkToStatic(LL)L (native) total in heap [0x0000000102f09808,0x0000000102f09920] = 280 relocation [0x0000000102f098e0,0x0000000102f098e8] = 8 main code [0x0000000102f09900,0x0000000102f09920] = 32 [Disassembly] -------------------------------------------------------------------------------- [Constant Pool (empty)] -------------------------------------------------------------------------------- [Verified Entry Point] # {method} {0x000000011c4e4358} 'linkToStatic' '(Ljava/lang/Object;Ljava/lang/invoke/MemberName;)Ljava/lang/Object;' in 'java/lang/invoke/MethodHandle' # parm0: c_rarg1:c_rarg1 = 'java/lang/Object' # parm1: c_rarg2:c_rarg2 = 'java/lang/invoke/MemberName' # [sp+0x0] (sp of caller) 0x0000000102f09900: nop 0x0000000102f09904: ldr w12, [x2, #36] 0x0000000102f09908: lsl x12, x12, #3 0x0000000102f0990c: ldr x12, [x12, #16] 0x0000000102f09910: cbz x12, 0x0000000102f0991c 0x0000000102f09914: ldr x8, [x12, #64] 0x0000000102f09918: br x8 0x0000000102f0991c: b 0x0000000102e9e080 ; {runtime_call AbstractMethodError throw_exception} -------------------------------------------------------------------------------- [/Disassembly] Compiled method (n/a) 206 13 n java.lang.invoke.MethodHandle::linkToInterface(LL)L (native) total in heap [0x0000000102f0b708,0x0000000102f0b868] = 352 relocation [0x0000000102f0b7e0,0x0000000102f0b7e8] = 8 main code [0x0000000102f0b800,0x0000000102f0b864] = 100 stub code [0x0000000102f0b864,0x0000000102f0b868] = 4 [Disassembly] -------------------------------------------------------------------------------- [Constant Pool (empty)] -------------------------------------------------------------------------------- [Verified Entry Point] # {method} {0x000000011c5a1548} 'linkToInterface' '(Ljava/lang/Object;Ljava/lang/invoke/MemberName;)Ljava/lang/Object;' in 'java/lang/invoke/MethodHandle' # parm0: c_rarg1:c_rarg1 = 'java/lang/Object' # parm1: c_rarg2:c_rarg2 = 'java/lang/invoke/MemberName' # [sp+0x0] (sp of caller) 0x0000000102f0b800: nop 0x0000000102f0b804: ldr w10, [x1, #8] 0x0000000102f0b808: eor x10, x10, #0x700000000000 0x0000000102f0b80c: ldr w14, [x2, #24] 0x0000000102f0b810: lsl x14, x14, #3 0x0000000102f0b814: ldr x14, [x14, #16] 0x0000000102f0b818: ldr x12, [x2, #16] 0x0000000102f0b81c: ldr w11, [x10, #172] 0x0000000102f0b820: add x11, x10, x11, uxtx #3 0x0000000102f0b824: add x11, x11, #0x1d8 0x0000000102f0b828: add x10, x10, x12, uxtx #3 0x0000000102f0b82c: ldr x12, [x11] 0x0000000102f0b830: cmp x14, x12 0x0000000102f0b834: b.eq 0x0000000102f0b848 // b.none 0x0000000102f0b838: cbz x12, 0x0000000102f0b860 0x0000000102f0b83c: ldr x12, [x11, #16]! 0x0000000102f0b840: cmp x14, x12 0x0000000102f0b844: b.ne 0x0000000102f0b838 // b.any 0x0000000102f0b848: ldr w11, [x11, #8] 0x0000000102f0b84c: ldr x12, [x10, w11, uxtw] 0x0000000102f0b850: cbz x12, 0x0000000102f0b85c 0x0000000102f0b854: ldr x8, [x12, #64] 0x0000000102f0b858: br x8 0x0000000102f0b85c: b 0x0000000102e9e080 ; {runtime_call AbstractMethodError throw_exception} 0x0000000102f0b860: b 0x0000000102e9dd80 ; {runtime_call IncompatibleClassChangeError throw_exception} [Stub Code] 0x0000000102f0b864: udf #0 -------------------------------------------------------------------------------- [/Disassembly] Compiled method (n/a) 210 14 n java.lang.invoke.MethodHandle::linkToStatic(L)L (native) total in heap [0x0000000102f0bd88,0x0000000102f0bea0] = 280 relocation [0x0000000102f0be60,0x0000000102f0be68] = 8 main code [0x0000000102f0be80,0x0000000102f0bea0] = 32 [Disassembly] -------------------------------------------------------------------------------- [Constant Pool (empty)] -------------------------------------------------------------------------------- [Verified Entry Point] # {method} {0x000000011c5c9ad0} 'linkToStatic' '(Ljava/lang/invoke/MemberName;)Ljava/lang/Object;' in 'java/lang/invoke/MethodHandle' # parm0: c_rarg1:c_rarg1 = 'java/lang/invoke/MemberName' # [sp+0x0] (sp of caller) 0x0000000102f0be80: nop 0x0000000102f0be84: ldr w12, [x1, #36] 0x0000000102f0be88: lsl x12, x12, #3 0x0000000102f0be8c: ldr x12, [x12, #16] 0x0000000102f0be90: cbz x12, 0x0000000102f0be9c 0x0000000102f0be94: ldr x8, [x12, #64] 0x0000000102f0be98: br x8 0x0000000102f0be9c: b 0x0000000102e9e080 ; {runtime_call AbstractMethodError throw_exception} -------------------------------------------------------------------------------- [/Disassembly] Compiled method (n/a) 213 15 n java.lang.invoke.MethodHandle::linkToStatic(LLLL)L (native) total in heap [0x0000000102f0c788,0x0000000102f0c8a0] = 280 relocation [0x0000000102f0c860,0x0000000102f0c868] = 8 main code [0x0000000102f0c880,0x0000000102f0c8a0] = 32 [Disassembly] -------------------------------------------------------------------------------- [Constant Pool (empty)] -------------------------------------------------------------------------------- [Verified Entry Point] # {method} {0x000000011c5dd5e8} 'linkToStatic' '(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/invoke/MemberName;)Ljava/lang/Object;' in 'java/lang/invoke/MethodHandle' # parm0: c_rarg1:c_rarg1 = 'java/lang/Object' # parm1: c_rarg2:c_rarg2 = 'java/lang/Object' # parm2: c_rarg3:c_rarg3 = 'java/lang/Object' # parm3: c_rarg4:c_rarg4 = 'java/lang/invoke/MemberName' # [sp+0x0] (sp of caller) 0x0000000102f0c880: nop 0x0000000102f0c884: ldr w12, [x4, #36] 0x0000000102f0c888: lsl x12, x12, #3 0x0000000102f0c88c: ldr x12, [x12, #16] 0x0000000102f0c890: cbz x12, 0x0000000102f0c89c 0x0000000102f0c894: ldr x8, [x12, #64] 0x0000000102f0c898: br x8 0x0000000102f0c89c: b 0x0000000102e9e080 ; {runtime_call AbstractMethodError throw_exception} -------------------------------------------------------------------------------- [/Disassembly] Compiled method (n/a) 214 16 n java.lang.invoke.MethodHandle::invokeBasic()L (native) total in heap [0x0000000102f0d188,0x0000000102f0d2b0] = 296 relocation [0x0000000102f0d260,0x0000000102f0d268] = 8 main code [0x0000000102f0d280,0x0000000102f0d2b0] = 48 [Disassembly] -------------------------------------------------------------------------------- [Constant Pool (empty)] -------------------------------------------------------------------------------- [Verified Entry Point] # {method} {0x000000011c5e1620} 'invokeBasic' '()Ljava/lang/Object;' in 'java/lang/invoke/MethodHandle' # [sp+0x0] (sp of caller) 0x0000000102f0d280: nop 0x0000000102f0d284: ldr w12, [x1, #20] 0x0000000102f0d288: lsl x12, x12, #3 0x0000000102f0d28c: ldr w12, [x12, #40] 0x0000000102f0d290: lsl x12, x12, #3 0x0000000102f0d294: ldr w12, [x12, #36] 0x0000000102f0d298: lsl x12, x12, #3 0x0000000102f0d29c: ldr x12, [x12, #16] 0x0000000102f0d2a0: cbz x12, 0x0000000102f0d2ac 0x0000000102f0d2a4: ldr x8, [x12, #64] 0x0000000102f0d2a8: br x8 0x0000000102f0d2ac: b 0x0000000102e9e080 ; {runtime_call AbstractMethodError throw_exception} -------------------------------------------------------------------------------- [/Disassembly] Compiled method (n/a) 214 17 n java.lang.invoke.MethodHandle::linkToSpecial(LL)L (native) total in heap [0x0000000102f0d488,0x0000000102f0d5a8] = 288 relocation [0x0000000102f0d560,0x0000000102f0d568] = 8 main code [0x0000000102f0d580,0x0000000102f0d5a4] = 36 stub code [0x0000000102f0d5a4,0x0000000102f0d5a8] = 4 [Disassembly] -------------------------------------------------------------------------------- [Constant Pool (empty)] -------------------------------------------------------------------------------- [Verified Entry Point] # {method} {0x000000011c5e1738} 'linkToSpecial' '(Ljava/lang/Object;Ljava/lang/invoke/MemberName;)Ljava/lang/Object;' in 'java/lang/invoke/MethodHandle' # parm0: c_rarg1:c_rarg1 = 'java/lang/Object' # parm1: c_rarg2:c_rarg2 = 'java/lang/invoke/MemberName' # [sp+0x0] (sp of caller) 0x0000000102f0d580: nop 0x0000000102f0d584: ldr xzr, [x1] 0x0000000102f0d588: ldr w12, [x2, #36] 0x0000000102f0d58c: lsl x12, x12, #3 0x0000000102f0d590: ldr x12, [x12, #16] 0x0000000102f0d594: cbz x12, 0x0000000102f0d5a0 0x0000000102f0d598: ldr x8, [x12, #64] 0x0000000102f0d59c: br x8 0x0000000102f0d5a0: b 0x0000000102e9e080 ; {runtime_call AbstractMethodError throw_exception} [Stub Code] 0x0000000102f0d5a4: udf #0 -------------------------------------------------------------------------------- [/Disassembly] Compiled method (n/a) 218 18 n java.lang.invoke.MethodHandle::linkToSpecial(LL)V (native) total in heap [0x0000000102f0d788,0x0000000102f0d8a8] = 288 relocation [0x0000000102f0d860,0x0000000102f0d868] = 8 main code [0x0000000102f0d880,0x0000000102f0d8a4] = 36 stub code [0x0000000102f0d8a4,0x0000000102f0d8a8] = 4 [Disassembly] -------------------------------------------------------------------------------- [Constant Pool (empty)] -------------------------------------------------------------------------------- [Verified Entry Point] # {method} {0x000000011c5462f8} 'linkToSpecial' '(Ljava/lang/Object;Ljava/lang/invoke/MemberName;)V' in 'java/lang/invoke/MethodHandle' # parm0: c_rarg1:c_rarg1 = 'java/lang/Object' # parm1: c_rarg2:c_rarg2 = 'java/lang/invoke/MemberName' # [sp+0x0] (sp of caller) 0x0000000102f0d880: nop 0x0000000102f0d884: ldr xzr, [x1] 0x0000000102f0d888: ldr w12, [x2, #36] 0x0000000102f0d88c: lsl x12, x12, #3 0x0000000102f0d890: ldr x12, [x12, #16] 0x0000000102f0d894: cbz x12, 0x0000000102f0d8a0 0x0000000102f0d898: ldr x8, [x12, #64] 0x0000000102f0d89c: br x8 0x0000000102f0d8a0: b 0x0000000102e9e080 ; {runtime_call AbstractMethodError throw_exception} [Stub Code] 0x0000000102f0d8a4: udf #0 -------------------------------------------------------------------------------- [/Disassembly] Compiled method (n/a) 220 19 n java.lang.invoke.MethodHandle::linkToInterface(LLL)I (native) total in heap [0x0000000102f0da88,0x0000000102f0dbe8] = 352 relocation [0x0000000102f0db60,0x0000000102f0db68] = 8 main code [0x0000000102f0db80,0x0000000102f0dbe4] = 100 stub code [0x0000000102f0dbe4,0x0000000102f0dbe8] = 4 [Disassembly] -------------------------------------------------------------------------------- [Constant Pool (empty)] -------------------------------------------------------------------------------- [Verified Entry Point] # {method} {0x000000011c5488b0} 'linkToInterface' '(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/invoke/MemberName;)I' in 'java/lang/invoke/MethodHandle' # parm0: c_rarg1:c_rarg1 = 'java/lang/Object' # parm1: c_rarg2:c_rarg2 = 'java/lang/Object' # parm2: c_rarg3:c_rarg3 = 'java/lang/invoke/MemberName' # [sp+0x0] (sp of caller) 0x0000000102f0db80: nop 0x0000000102f0db84: ldr w10, [x1, #8] 0x0000000102f0db88: eor x10, x10, #0x700000000000 0x0000000102f0db8c: ldr w14, [x3, #24] 0x0000000102f0db90: lsl x14, x14, #3 0x0000000102f0db94: ldr x14, [x14, #16] 0x0000000102f0db98: ldr x12, [x3, #16] 0x0000000102f0db9c: ldr w11, [x10, #172] 0x0000000102f0dba0: add x11, x10, x11, uxtx #3 0x0000000102f0dba4: add x11, x11, #0x1d8 0x0000000102f0dba8: add x10, x10, x12, uxtx #3 0x0000000102f0dbac: ldr x12, [x11] 0x0000000102f0dbb0: cmp x14, x12 0x0000000102f0dbb4: b.eq 0x0000000102f0dbc8 // b.none 0x0000000102f0dbb8: cbz x12, 0x0000000102f0dbe0 0x0000000102f0dbbc: ldr x12, [x11, #16]! 0x0000000102f0dbc0: cmp x14, x12 0x0000000102f0dbc4: b.ne 0x0000000102f0dbb8 // b.any 0x0000000102f0dbc8: ldr w11, [x11, #8] 0x0000000102f0dbcc: ldr x12, [x10, w11, uxtw] 0x0000000102f0dbd0: cbz x12, 0x0000000102f0dbdc 0x0000000102f0dbd4: ldr x8, [x12, #64] 0x0000000102f0dbd8: br x8 0x0000000102f0dbdc: b 0x0000000102e9e080 ; {runtime_call AbstractMethodError throw_exception} 0x0000000102f0dbe0: b 0x0000000102e9dd80 ; {runtime_call IncompatibleClassChangeError throw_exception} [Stub Code] 0x0000000102f0dbe4: udf #0 -------------------------------------------------------------------------------- [/Disassembly] Compiled method (n/a) 224 20 n java.lang.invoke.MethodHandle::linkToStatic(LL)I (native) total in heap [0x0000000102f0e108,0x0000000102f0e220] = 280 relocation [0x0000000102f0e1e0,0x0000000102f0e1e8] = 8 main code [0x0000000102f0e200,0x0000000102f0e220] = 32 [Disassembly] -------------------------------------------------------------------------------- [Constant Pool (empty)] -------------------------------------------------------------------------------- [Verified Entry Point] # {method} {0x000000011c5531f8} 'linkToStatic' '(Ljava/lang/Object;Ljava/lang/invoke/MemberName;)I' in 'java/lang/invoke/MethodHandle' # parm0: c_rarg1:c_rarg1 = 'java/lang/Object' # parm1: c_rarg2:c_rarg2 = 'java/lang/invoke/MemberName' # [sp+0x0] (sp of caller) 0x0000000102f0e200: nop 0x0000000102f0e204: ldr w12, [x2, #36] 0x0000000102f0e208: lsl x12, x12, #3 0x0000000102f0e20c: ldr x12, [x12, #16] 0x0000000102f0e210: cbz x12, 0x0000000102f0e21c 0x0000000102f0e214: ldr x8, [x12, #64] 0x0000000102f0e218: br x8 0x0000000102f0e21c: b 0x0000000102e9e080 ; {runtime_call AbstractMethodError throw_exception} -------------------------------------------------------------------------------- [/Disassembly] Compiled method (n/a) 226 21 n java.lang.invoke.MethodHandle::linkToStatic(LLL)I (native) total in heap [0x0000000102f0e408,0x0000000102f0e520] = 280 relocation [0x0000000102f0e4e0,0x0000000102f0e4e8] = 8 main code [0x0000000102f0e500,0x0000000102f0e520] = 32 [Disassembly] -------------------------------------------------------------------------------- [Constant Pool (empty)] -------------------------------------------------------------------------------- [Verified Entry Point] # {method} {0x000000011c555080} 'linkToStatic' '(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/invoke/MemberName;)I' in 'java/lang/invoke/MethodHandle' # parm0: c_rarg1:c_rarg1 = 'java/lang/Object' # parm1: c_rarg2:c_rarg2 = 'java/lang/Object' # parm2: c_rarg3:c_rarg3 = 'java/lang/invoke/MemberName' # [sp+0x0] (sp of caller) 0x0000000102f0e500: nop 0x0000000102f0e504: ldr w12, [x3, #36] 0x0000000102f0e508: lsl x12, x12, #3 0x0000000102f0e50c: ldr x12, [x12, #16] 0x0000000102f0e510: cbz x12, 0x0000000102f0e51c 0x0000000102f0e514: ldr x8, [x12, #64] 0x0000000102f0e518: br x8 0x0000000102f0e51c: b 0x0000000102e9e080 ; {runtime_call AbstractMethodError throw_exception} -------------------------------------------------------------------------------- [/Disassembly] Compiled method (n/a) 227 22 n java.lang.invoke.MethodHandle::linkToVirtual(LL)L (native) total in heap [0x0000000102f0e708,0x0000000102f0e828] = 288 relocation [0x0000000102f0e7e0,0x0000000102f0e7e8] = 8 main code [0x0000000102f0e800,0x0000000102f0e828] = 40 [Disassembly] -------------------------------------------------------------------------------- [Constant Pool (empty)] -------------------------------------------------------------------------------- [Verified Entry Point] # {method} {0x000000011c555590} 'linkToVirtual' '(Ljava/lang/Object;Ljava/lang/invoke/MemberName;)Ljava/lang/Object;' in 'java/lang/invoke/MethodHandle' # parm0: c_rarg1:c_rarg1 = 'java/lang/Object' # parm1: c_rarg2:c_rarg2 = 'java/lang/invoke/MemberName' # [sp+0x0] (sp of caller) 0x0000000102f0e800: nop 0x0000000102f0e804: ldr w10, [x1, #8] 0x0000000102f0e808: eor x10, x10, #0x700000000000 0x0000000102f0e80c: ldr x11, [x2, #16] 0x0000000102f0e810: add x12, x10, x11, uxtx #3 0x0000000102f0e814: ldr x12, [x12, #472] 0x0000000102f0e818: cbz x12, 0x0000000102f0e824 0x0000000102f0e81c: ldr x8, [x12, #64] 0x0000000102f0e820: br x8 0x0000000102f0e824: b 0x0000000102e9e080 ; {runtime_call AbstractMethodError throw_exception} -------------------------------------------------------------------------------- [/Disassembly] Compiled method (n/a) 229 23 n java.lang.invoke.MethodHandle::linkToSpecial(LL)I (native) total in heap [0x0000000102f0ea08,0x0000000102f0eb28] = 288 relocation [0x0000000102f0eae0,0x0000000102f0eae8] = 8 main code [0x0000000102f0eb00,0x0000000102f0eb24] = 36 stub code [0x0000000102f0eb24,0x0000000102f0eb28] = 4 [Disassembly] -------------------------------------------------------------------------------- [Constant Pool (empty)] -------------------------------------------------------------------------------- [Verified Entry Point] # {method} {0x000000011c55ec78} 'linkToSpecial' '(Ljava/lang/Object;Ljava/lang/invoke/MemberName;)I' in 'java/lang/invoke/MethodHandle' # parm0: c_rarg1:c_rarg1 = 'java/lang/Object' # parm1: c_rarg2:c_rarg2 = 'java/lang/invoke/MemberName' # [sp+0x0] (sp of caller) 0x0000000102f0eb00: nop 0x0000000102f0eb04: ldr xzr, [x1] 0x0000000102f0eb08: ldr w12, [x2, #36] 0x0000000102f0eb0c: lsl x12, x12, #3 0x0000000102f0eb10: ldr x12, [x12, #16] 0x0000000102f0eb14: cbz x12, 0x0000000102f0eb20 0x0000000102f0eb18: ldr x8, [x12, #64] 0x0000000102f0eb1c: br x8 0x0000000102f0eb20: b 0x0000000102e9e080 ; {runtime_call AbstractMethodError throw_exception} [Stub Code] 0x0000000102f0eb24: udf #0 -------------------------------------------------------------------------------- [/Disassembly] Compiled method (n/a) 248 24 n jdk.internal.vm.Continuation::enterSpecial (native) total in heap [0x0000000102f0f088,0x0000000102f0f380] = 760 relocation [0x0000000102f0f160,0x0000000102f0f188] = 40 main code [0x0000000102f0f1c0,0x0000000102f0f330] = 368 stub code [0x0000000102f0f330,0x0000000102f0f370] = 64 metadata [0x0000000102f0f370,0x0000000102f0f380] = 16 [Disassembly] -------------------------------------------------------------------------------- [Constant Pool (empty)] -------------------------------------------------------------------------------- [Entry Point] # {method} {0x000000011c08c298} 'enterSpecial' '(Ljdk/internal/vm/Continuation;ZZ)V' in 'jdk/internal/vm/Continuation' # parm0: c_rarg1:c_rarg1 = 'jdk/internal/vm/Continuation' # parm1: c_rarg2 = boolean # parm2: c_rarg3 = boolean # [sp+0x50] (sp of caller) 0x0000000102f0f1c0: ldp x2, x1, [x20, #8] 0x0000000102f0f1c4: ldr x3, [x20] 0x0000000102f0f1c8: ldr x8, [x28, #1344] 0x0000000102f0f1cc: cmp sp, x8 0x0000000102f0f1d0: b.ls 0x0000000102f0f1dc // b.plast 0x0000000102f0f1d4: mov x8, sp 0x0000000102f0f1d8: str x8, [x28, #1344] 0x0000000102f0f1dc: stp x29, x30, [sp, #-16]! 0x0000000102f0f1e0: mov x29, sp 0x0000000102f0f1e4: sub sp, sp, #0x40 0x0000000102f0f1e8: ldr x8, [x28, #1336] 0x0000000102f0f1ec: str x8, [sp, #8] 0x0000000102f0f1f0: mov x8, sp 0x0000000102f0f1f4: str x8, [x28, #1336] 0x0000000102f0f1f8: str x1, [sp, #16] 0x0000000102f0f1fc: str w3, [sp, #32] 0x0000000102f0f200: str xzr, [sp, #24] 0x0000000102f0f204: str wzr, [sp, #36] 0x0000000102f0f208: str wzr, [sp, #56] 0x0000000102f0f20c: ldr x8, [x28, #1344] 0x0000000102f0f210: str x8, [sp, #40] 0x0000000102f0f214: ldr x8, [x28, #1360] 0x0000000102f0f218: str x8, [sp, #48] 0x0000000102f0f21c: str xzr, [x28, #1344] 0x0000000102f0f220: str xzr, [x28, #1360] 0x0000000102f0f224: cbnz x2, 0x0000000102f0f2a0 0x0000000102f0f228: bl 0x0000000102ea8580 ; ImmutableOopMap {} ; {static_call} 0x0000000102f0f22c: nop ; {other} 0x0000000102f0f230: movk xzr, #0x1a4 0x0000000102f0f234: movk xzr, #0x0 0x0000000102f0f238: b 0x0000000102f0f2b0 0x0000000102f0f23c: nop [Verified Entry Point] 0x0000000102f0f240: stp x29, x30, [sp, #-16]! 0x0000000102f0f244: mov x29, sp 0x0000000102f0f248: sub sp, sp, #0x40 0x0000000102f0f24c: ldr x8, [x28, #1336] 0x0000000102f0f250: str x8, [sp, #8] 0x0000000102f0f254: mov x8, sp 0x0000000102f0f258: str x8, [x28, #1336] 0x0000000102f0f25c: str x1, [sp, #16] 0x0000000102f0f260: str w3, [sp, #32] 0x0000000102f0f264: str xzr, [sp, #24] 0x0000000102f0f268: str wzr, [sp, #36] 0x0000000102f0f26c: str wzr, [sp, #56] 0x0000000102f0f270: ldr x8, [x28, #1344] 0x0000000102f0f274: str x8, [sp, #40] 0x0000000102f0f278: ldr x8, [x28, #1360] 0x0000000102f0f27c: str x8, [sp, #48] 0x0000000102f0f280: str xzr, [x28, #1344] 0x0000000102f0f284: str xzr, [x28, #1360] 0x0000000102f0f288: cbnz x2, 0x0000000102f0f2a0 0x0000000102f0f28c: bl 0x0000000102ea8580 ; ImmutableOopMap {} ; {static_call} 0x0000000102f0f290: nop ; {other} 0x0000000102f0f294: movk xzr, #0x208 0x0000000102f0f298: movk xzr, #0x100 0x0000000102f0f29c: b 0x0000000102f0f2b0 0x0000000102f0f2a0: bl Stub::Cont thaw ; ImmutableOopMap {} ; {runtime_call StubRoutines (continuation stubs)} 0x0000000102f0f2a4: nop ; {other} 0x0000000102f0f2a8: movk xzr, #0x21c 0x0000000102f0f2ac: movk xzr, #0x200 0x0000000102f0f2b0: ldr x8, [sp, #40] 0x0000000102f0f2b4: str x8, [x28, #1344] 0x0000000102f0f2b8: ldr x8, [sp, #48] 0x0000000102f0f2bc: str x8, [x28, #1360] 0x0000000102f0f2c0: ldr x9, [sp, #8] 0x0000000102f0f2c4: str x9, [x28, #1336] 0x0000000102f0f2c8: add x29, sp, #0x40 0x0000000102f0f2cc: mov sp, x29 0x0000000102f0f2d0: ldp x29, x30, [sp], #16 0x0000000102f0f2d4: ret [Exception Handler] 0x0000000102f0f2d8: mov x19, x0 0x0000000102f0f2dc: ldr x8, [sp, #40] 0x0000000102f0f2e0: str x8, [x28, #1344] 0x0000000102f0f2e4: ldr x8, [sp, #48] 0x0000000102f0f2e8: str x8, [x28, #1360] 0x0000000102f0f2ec: ldr x9, [sp, #8] 0x0000000102f0f2f0: str x9, [x28, #1336] 0x0000000102f0f2f4: add x29, sp, #0x40 0x0000000102f0f2f8: ldr x1, [x29, #8] 0x0000000102f0f2fc: mov x0, x28 0x0000000102f0f300: stp x8, x12, [sp, #-16]! 0x0000000102f0f304: mov x8, #0x7460 // #29792 0x0000000102f0f308: movk x8, #0x254, lsl #16 0x0000000102f0f30c: movk x8, #0x1, lsl #32 0x0000000102f0f310: blr x8 0x0000000102f0f314: ldp x8, x12, [sp], #16 0x0000000102f0f318: mov x1, x0 0x0000000102f0f31c: mov x0, x19 0x0000000102f0f320: mov sp, x29 0x0000000102f0f324: ldp x29, x30, [sp], #16 0x0000000102f0f328: mov x3, x30 0x0000000102f0f32c: br x1 [Stub Code] 0x0000000102f0f330: isb ; {no_reloc} 0x0000000102f0f334: mov x12, #0x0 // #0 ; {metadata(nullptr)} 0x0000000102f0f338: movk x12, #0x0, lsl #16 0x0000000102f0f33c: movk x12, #0x0, lsl #32 0x0000000102f0f340: mov x8, #0x0 // #0 0x0000000102f0f344: movk x8, #0x0, lsl #16 0x0000000102f0f348: movk x8, #0x0, lsl #32 0x0000000102f0f34c: br x8 0x0000000102f0f350: isb ; {static_stub} 0x0000000102f0f354: mov x12, #0x0 // #0 ; {metadata(nullptr)} 0x0000000102f0f358: movk x12, #0x0, lsl #16 0x0000000102f0f35c: movk x12, #0x0, lsl #32 0x0000000102f0f360: mov x8, #0x0 // #0 0x0000000102f0f364: movk x8, #0x0, lsl #16 0x0000000102f0f368: movk x8, #0x0, lsl #32 0x0000000102f0f36c: br x8 -------------------------------------------------------------------------------- [/Disassembly] Compiled method (n/a) 250 25 n jdk.internal.vm.Continuation::doYield (native) total in heap [0x0000000102f0f388,0x0000000102f0f528] = 416 relocation [0x0000000102f0f460,0x0000000102f0f468] = 8 main code [0x0000000102f0f480,0x0000000102f0f528] = 168 [Disassembly] -------------------------------------------------------------------------------- [Constant Pool (empty)] -------------------------------------------------------------------------------- [Verified Entry Point] # {method} {0x000000011c08c1e0} 'doYield' '()I' in 'jdk/internal/vm/Continuation' # [sp+0x10] (sp of caller) 0x0000000102f0f480: stp x29, x30, [sp, #-16]! 0x0000000102f0f484: mov x29, sp 0x0000000102f0f488: mov x1, sp 0x0000000102f0f48c: nop ; {other} 0x0000000102f0f490: movk xzr, #0x104 0x0000000102f0f494: movk xzr, #0x0 0x0000000102f0f498: mov x0, x28 0x0000000102f0f49c: adr x8, 0x0000000102f0f48c 0x0000000102f0f4a0: str x8, [x28, #936] 0x0000000102f0f4a4: mov x8, sp 0x0000000102f0f4a8: str x8, [x28, #928] 0x0000000102f0f4ac: str x29, [x28, #944] 0x0000000102f0f4b0: stp x8, x12, [sp, #-16]! 0x0000000102f0f4b4: mov x8, #0xdb70 // #56176 0x0000000102f0f4b8: movk x8, #0x1f3, lsl #16 0x0000000102f0f4bc: movk x8, #0x1, lsl #32 0x0000000102f0f4c0: blr x8 0x0000000102f0f4c4: ldp x8, x12, [sp], #16 0x0000000102f0f4c8: str xzr, [x28, #928] 0x0000000102f0f4cc: str xzr, [x28, #944] 0x0000000102f0f4d0: str xzr, [x28, #936] 0x0000000102f0f4d4: cbnz x0, 0x0000000102f0f4fc 0x0000000102f0f4d8: ldr x8, [x28, #1336] 0x0000000102f0f4dc: mov sp, x8 0x0000000102f0f4e0: ldr x8, [sp, #40] 0x0000000102f0f4e4: str x8, [x28, #1344] 0x0000000102f0f4e8: ldr x8, [sp, #48] 0x0000000102f0f4ec: str x8, [x28, #1360] 0x0000000102f0f4f0: ldr x9, [sp, #8] 0x0000000102f0f4f4: str x9, [x28, #1336] 0x0000000102f0f4f8: add x29, sp, #0x40 0x0000000102f0f4fc: ldr x8, [x28, #8] 0x0000000102f0f500: cbz x8, 0x0000000102f0f51c 0x0000000102f0f504: mov sp, x29 0x0000000102f0f508: ldp x29, x30, [sp], #16 0x0000000102f0f50c: mov x8, #0xc040 // #49216 ; {runtime_call StubRoutines (initial stubs)} 0x0000000102f0f510: movk x8, #0x2e6, lsl #16 0x0000000102f0f514: movk x8, #0x1, lsl #32 0x0000000102f0f518: br x8 0x0000000102f0f51c: mov sp, x29 0x0000000102f0f520: ldp x29, x30, [sp], #16 0x0000000102f0f524: ret -------------------------------------------------------------------------------- [/Disassembly] Compiled method (n/a) 336 26 n java.lang.invoke.MethodHandle::linkToStatic(LLL)V (native) total in heap [0x0000000102f12788,0x0000000102f128a0] = 280 relocation [0x0000000102f12860,0x0000000102f12868] = 8 main code [0x0000000102f12880,0x0000000102f128a0] = 32 [Disassembly] -------------------------------------------------------------------------------- [Constant Pool (empty)] -------------------------------------------------------------------------------- [Verified Entry Point] # {method} {0x000000011c679960} 'linkToStatic' '(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/invoke/MemberName;)V' in 'java/lang/invoke/MethodHandle' # parm0: c_rarg1:c_rarg1 = 'java/lang/Object' # parm1: c_rarg2:c_rarg2 = 'java/lang/Object' # parm2: c_rarg3:c_rarg3 = 'java/lang/invoke/MemberName' # [sp+0x0] (sp of caller) 0x0000000102f12880: nop 0x0000000102f12884: ldr w12, [x3, #36] 0x0000000102f12888: lsl x12, x12, #3 0x0000000102f1288c: ldr x12, [x12, #16] 0x0000000102f12890: cbz x12, 0x0000000102f1289c 0x0000000102f12894: ldr x8, [x12, #64] 0x0000000102f12898: br x8 0x0000000102f1289c: b 0x0000000102e9e080 ; {runtime_call AbstractMethodError throw_exception} -------------------------------------------------------------------------------- [/Disassembly] Compiled method (n/a) 337 27 n java.lang.invoke.MethodHandle::invokeBasic(LL)V (native) total in heap [0x0000000102f12a88,0x0000000102f12bb0] = 296 relocation [0x0000000102f12b60,0x0000000102f12b68] = 8 main code [0x0000000102f12b80,0x0000000102f12bb0] = 48 [Disassembly] -------------------------------------------------------------------------------- [Constant Pool (empty)] -------------------------------------------------------------------------------- [Verified Entry Point] # {method} {0x000000011c679a78} 'invokeBasic' '(Ljava/lang/Object;Ljava/lang/Object;)V' in 'java/lang/invoke/MethodHandle' # this: c_rarg1:c_rarg1 = 'java/lang/invoke/MethodHandle' # parm0: c_rarg2:c_rarg2 = 'java/lang/Object' # parm1: c_rarg3:c_rarg3 = 'java/lang/Object' # [sp+0x0] (sp of caller) 0x0000000102f12b80: nop 0x0000000102f12b84: ldr w12, [x1, #20] 0x0000000102f12b88: lsl x12, x12, #3 0x0000000102f12b8c: ldr w12, [x12, #40] 0x0000000102f12b90: lsl x12, x12, #3 0x0000000102f12b94: ldr w12, [x12, #36] 0x0000000102f12b98: lsl x12, x12, #3 0x0000000102f12b9c: ldr x12, [x12, #16] 0x0000000102f12ba0: cbz x12, 0x0000000102f12bac 0x0000000102f12ba4: ldr x8, [x12, #64] 0x0000000102f12ba8: br x8 0x0000000102f12bac: b 0x0000000102e9e080 ; {runtime_call AbstractMethodError throw_exception} -------------------------------------------------------------------------------- [/Disassembly] Compiled method (n/a) 340 28 n java.lang.invoke.MethodHandle::linkToStatic(LLLLL)L (native) total in heap [0x0000000102f12d88,0x0000000102f12ea0] = 280 relocation [0x0000000102f12e60,0x0000000102f12e68] = 8 main code [0x0000000102f12e80,0x0000000102f12ea0] = 32 [Disassembly] -------------------------------------------------------------------------------- [Constant Pool (empty)] -------------------------------------------------------------------------------- [Verified Entry Point] # {method} {0x000000011c67d468} 'linkToStatic' '(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/invoke/MemberName;)Ljava/lang/Object;' in 'java/lang/invoke/MethodHandle' # parm0: c_rarg1:c_rarg1 = 'java/lang/Object' # parm1: c_rarg2:c_rarg2 = 'java/lang/Object' # parm2: c_rarg3:c_rarg3 = 'java/lang/Object' # parm3: c_rarg4:c_rarg4 = 'java/lang/Object' # parm4: c_rarg5:c_rarg5 = 'java/lang/invoke/MemberName' # [sp+0x0] (sp of caller) 0x0000000102f12e80: nop 0x0000000102f12e84: ldr w12, [x5, #36] 0x0000000102f12e88: lsl x12, x12, #3 0x0000000102f12e8c: ldr x12, [x12, #16] 0x0000000102f12e90: cbz x12, 0x0000000102f12e9c 0x0000000102f12e94: ldr x8, [x12, #64] 0x0000000102f12e98: br x8 0x0000000102f12e9c: b 0x0000000102e9e080 ; {runtime_call AbstractMethodError throw_exception} -------------------------------------------------------------------------------- [/Disassembly] Compiled method (n/a) 341 29 n java.lang.invoke.MethodHandle::invokeBasic(LLLL)L (native) total in heap [0x0000000102f13088,0x0000000102f131b0] = 296 relocation [0x0000000102f13160,0x0000000102f13168] = 8 main code [0x0000000102f13180,0x0000000102f131b0] = 48 [Disassembly] -------------------------------------------------------------------------------- [Constant Pool (empty)] -------------------------------------------------------------------------------- [Verified Entry Point] # {method} {0x000000011c67d8f8} 'invokeBasic' '(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;' in 'java/lang/invoke/MethodHandle' # this: c_rarg1:c_rarg1 = 'java/lang/invoke/MethodHandle' # parm0: c_rarg2:c_rarg2 = 'java/lang/Object' # parm1: c_rarg3:c_rarg3 = 'java/lang/Object' # parm2: c_rarg4:c_rarg4 = 'java/lang/Object' # parm3: c_rarg5:c_rarg5 = 'java/lang/Object' # [sp+0x0] (sp of caller) 0x0000000102f13180: nop 0x0000000102f13184: ldr w12, [x1, #20] 0x0000000102f13188: lsl x12, x12, #3 0x0000000102f1318c: ldr w12, [x12, #40] 0x0000000102f13190: lsl x12, x12, #3 0x0000000102f13194: ldr w12, [x12, #36] 0x0000000102f13198: lsl x12, x12, #3 0x0000000102f1319c: ldr x12, [x12, #16] 0x0000000102f131a0: cbz x12, 0x0000000102f131ac 0x0000000102f131a4: ldr x8, [x12, #64] 0x0000000102f131a8: br x8 0x0000000102f131ac: b 0x0000000102e9e080 ; {runtime_call AbstractMethodError throw_exception} -------------------------------------------------------------------------------- [/Disassembly] Compiled method (n/a) 344 30 n java.lang.invoke.MethodHandle::linkToStatic(LLLLLL)L (native) total in heap [0x0000000102f13388,0x0000000102f134a0] = 280 relocation [0x0000000102f13460,0x0000000102f13468] = 8 main code [0x0000000102f13480,0x0000000102f134a0] = 32 [Disassembly] -------------------------------------------------------------------------------- [Constant Pool (empty)] -------------------------------------------------------------------------------- [Verified Entry Point] # {method} {0x000000011c67f2e0} 'linkToStatic' '(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/invoke/MemberName;)Ljava/lang/Object;' in 'java/lang/invoke/MethodHandle' # parm0: c_rarg1:c_rarg1 = 'java/lang/Object' # parm1: c_rarg2:c_rarg2 = 'java/lang/Object' # parm2: c_rarg3:c_rarg3 = 'java/lang/Object' # parm3: c_rarg4:c_rarg4 = 'java/lang/Object' # parm4: c_rarg5:c_rarg5 = 'java/lang/Object' # parm5: c_rarg6:c_rarg6 = 'java/lang/invoke/MemberName' # [sp+0x0] (sp of caller) 0x0000000102f13480: nop 0x0000000102f13484: ldr w12, [x6, #36] 0x0000000102f13488: lsl x12, x12, #3 0x0000000102f1348c: ldr x12, [x12, #16] 0x0000000102f13490: cbz x12, 0x0000000102f1349c 0x0000000102f13494: ldr x8, [x12, #64] 0x0000000102f13498: br x8 0x0000000102f1349c: b 0x0000000102e9e080 ; {runtime_call AbstractMethodError throw_exception} -------------------------------------------------------------------------------- [/Disassembly] Compiled method (n/a) 345 31 n java.lang.invoke.MethodHandle::invokeBasic(LLLLL)L (native) total in heap [0x0000000102f13688,0x0000000102f137b0] = 296 relocation [0x0000000102f13760,0x0000000102f13768] = 8 main code [0x0000000102f13780,0x0000000102f137b0] = 48 [Disassembly] -------------------------------------------------------------------------------- [Constant Pool (empty)] -------------------------------------------------------------------------------- [Verified Entry Point] # {method} {0x000000011c67f5a8} 'invokeBasic' '(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;' in 'java/lang/invoke/MethodHandle' # this: c_rarg1:c_rarg1 = 'java/lang/invoke/MethodHandle' # parm0: c_rarg2:c_rarg2 = 'java/lang/Object' # parm1: c_rarg3:c_rarg3 = 'java/lang/Object' # parm2: c_rarg4:c_rarg4 = 'java/lang/Object' # parm3: c_rarg5:c_rarg5 = 'java/lang/Object' # parm4: c_rarg6:c_rarg6 = 'java/lang/Object' # [sp+0x0] (sp of caller) 0x0000000102f13780: nop 0x0000000102f13784: ldr w12, [x1, #20] 0x0000000102f13788: lsl x12, x12, #3 0x0000000102f1378c: ldr w12, [x12, #40] 0x0000000102f13790: lsl x12, x12, #3 0x0000000102f13794: ldr w12, [x12, #36] 0x0000000102f13798: lsl x12, x12, #3 0x0000000102f1379c: ldr x12, [x12, #16] 0x0000000102f137a0: cbz x12, 0x0000000102f137ac 0x0000000102f137a4: ldr x8, [x12, #64] 0x0000000102f137a8: br x8 0x0000000102f137ac: b 0x0000000102e9e080 ; {runtime_call AbstractMethodError throw_exception} -------------------------------------------------------------------------------- [/Disassembly] Compiled method (n/a) 346 32 n java.lang.invoke.MethodHandle::invokeBasic(LLL)L (native) total in heap [0x0000000102f13988,0x0000000102f13ab0] = 296 relocation [0x0000000102f13a60,0x0000000102f13a68] = 8 main code [0x0000000102f13a80,0x0000000102f13ab0] = 48 [Disassembly] -------------------------------------------------------------------------------- [Constant Pool (empty)] -------------------------------------------------------------------------------- [Verified Entry Point] # {method} {0x000000011c67f870} 'invokeBasic' '(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;' in 'java/lang/invoke/MethodHandle' # this: c_rarg1:c_rarg1 = 'java/lang/invoke/MethodHandle' # parm0: c_rarg2:c_rarg2 = 'java/lang/Object' # parm1: c_rarg3:c_rarg3 = 'java/lang/Object' # parm2: c_rarg4:c_rarg4 = 'java/lang/Object' # [sp+0x0] (sp of caller) 0x0000000102f13a80: nop 0x0000000102f13a84: ldr w12, [x1, #20] 0x0000000102f13a88: lsl x12, x12, #3 0x0000000102f13a8c: ldr w12, [x12, #40] 0x0000000102f13a90: lsl x12, x12, #3 0x0000000102f13a94: ldr w12, [x12, #36] 0x0000000102f13a98: lsl x12, x12, #3 0x0000000102f13a9c: ldr x12, [x12, #16] 0x0000000102f13aa0: cbz x12, 0x0000000102f13aac 0x0000000102f13aa4: ldr x8, [x12, #64] 0x0000000102f13aa8: br x8 0x0000000102f13aac: b 0x0000000102e9e080 ; {runtime_call AbstractMethodError throw_exception} -------------------------------------------------------------------------------- [/Disassembly] Compiled method (n/a) 346 33 n java.lang.invoke.MethodHandle::linkToSpecial(LLLLL)L (native) total in heap [0x0000000102f13c88,0x0000000102f13da8] = 288 relocation [0x0000000102f13d60,0x0000000102f13d68] = 8 main code [0x0000000102f13d80,0x0000000102f13da4] = 36 stub code [0x0000000102f13da4,0x0000000102f13da8] = 4 [Disassembly] -------------------------------------------------------------------------------- [Constant Pool (empty)] -------------------------------------------------------------------------------- [Verified Entry Point] # {method} {0x000000011c67f988} 'linkToSpecial' '(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/invoke/MemberName;)Ljava/lang/Object;' in 'java/lang/invoke/MethodHandle' # parm0: c_rarg1:c_rarg1 = 'java/lang/Object' # parm1: c_rarg2:c_rarg2 = 'java/lang/Object' # parm2: c_rarg3:c_rarg3 = 'java/lang/Object' # parm3: c_rarg4:c_rarg4 = 'java/lang/Object' # parm4: c_rarg5:c_rarg5 = 'java/lang/invoke/MemberName' # [sp+0x0] (sp of caller) 0x0000000102f13d80: nop 0x0000000102f13d84: ldr xzr, [x1] 0x0000000102f13d88: ldr w12, [x5, #36] 0x0000000102f13d8c: lsl x12, x12, #3 0x0000000102f13d90: ldr x12, [x12, #16] 0x0000000102f13d94: cbz x12, 0x0000000102f13da0 0x0000000102f13d98: ldr x8, [x12, #64] 0x0000000102f13d9c: br x8 0x0000000102f13da0: b 0x0000000102e9e080 ; {runtime_call AbstractMethodError throw_exception} [Stub Code] 0x0000000102f13da4: udf #0 -------------------------------------------------------------------------------- [/Disassembly] Compiled method (n/a) 370 34 n java.lang.invoke.MethodHandle::linkToStatic(LL)V (native) total in heap [0x0000000102f15f08,0x0000000102f16020] = 280 relocation [0x0000000102f15fe0,0x0000000102f15fe8] = 8 main code [0x0000000102f16000,0x0000000102f16020] = 32 [Disassembly] -------------------------------------------------------------------------------- [Constant Pool (empty)] -------------------------------------------------------------------------------- [Verified Entry Point] # {method} {0x000000011c6efad0} 'linkToStatic' '(Ljava/lang/Object;Ljava/lang/invoke/MemberName;)V' in 'java/lang/invoke/MethodHandle' # parm0: c_rarg1:c_rarg1 = 'java/lang/Object' # parm1: c_rarg2:c_rarg2 = 'java/lang/invoke/MemberName' # [sp+0x0] (sp of caller) 0x0000000102f16000: nop 0x0000000102f16004: ldr w12, [x2, #36] 0x0000000102f16008: lsl x12, x12, #3 0x0000000102f1600c: ldr x12, [x12, #16] 0x0000000102f16010: cbz x12, 0x0000000102f1601c 0x0000000102f16014: ldr x8, [x12, #64] 0x0000000102f16018: br x8 0x0000000102f1601c: b 0x0000000102e9e080 ; {runtime_call AbstractMethodError throw_exception} -------------------------------------------------------------------------------- [/Disassembly] Compiled method (n/a) 385 35 n java.lang.invoke.MethodHandle::linkToStatic(IL)I (native) total in heap [0x0000000102f16208,0x0000000102f16320] = 280 relocation [0x0000000102f162e0,0x0000000102f162e8] = 8 main code [0x0000000102f16300,0x0000000102f16320] = 32 [Disassembly] -------------------------------------------------------------------------------- [Constant Pool (empty)] -------------------------------------------------------------------------------- [Verified Entry Point] # {method} {0x000000011c795268} 'linkToStatic' '(ILjava/lang/invoke/MemberName;)I' in 'java/lang/invoke/MethodHandle' # parm0: c_rarg1 = int # parm1: c_rarg2:c_rarg2 = 'java/lang/invoke/MemberName' # [sp+0x0] (sp of caller) 0x0000000102f16300: nop 0x0000000102f16304: ldr w12, [x2, #36] 0x0000000102f16308: lsl x12, x12, #3 0x0000000102f1630c: ldr x12, [x12, #16] 0x0000000102f16310: cbz x12, 0x0000000102f1631c 0x0000000102f16314: ldr x8, [x12, #64] 0x0000000102f16318: br x8 0x0000000102f1631c: b 0x0000000102e9e080 ; {runtime_call AbstractMethodError throw_exception} -------------------------------------------------------------------------------- [/Disassembly] Compiled method (n/a) 393 36 n java.lang.invoke.MethodHandle::linkToStatic(LLLLL)I (native) total in heap [0x0000000102f18808,0x0000000102f18920] = 280 relocation [0x0000000102f188e0,0x0000000102f188e8] = 8 main code [0x0000000102f18900,0x0000000102f18920] = 32 [Disassembly] -------------------------------------------------------------------------------- [Constant Pool (empty)] -------------------------------------------------------------------------------- [Verified Entry Point] # {method} {0x000000011c7c5e80} 'linkToStatic' '(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/invoke/MemberName;)I' in 'java/lang/invoke/MethodHandle' # parm0: c_rarg1:c_rarg1 = 'java/lang/Object' # parm1: c_rarg2:c_rarg2 = 'java/lang/Object' # parm2: c_rarg3:c_rarg3 = 'java/lang/Object' # parm3: c_rarg4:c_rarg4 = 'java/lang/Object' # parm4: c_rarg5:c_rarg5 = 'java/lang/invoke/MemberName' # [sp+0x0] (sp of caller) 0x0000000102f18900: nop 0x0000000102f18904: ldr w12, [x5, #36] 0x0000000102f18908: lsl x12, x12, #3 0x0000000102f1890c: ldr x12, [x12, #16] 0x0000000102f18910: cbz x12, 0x0000000102f1891c 0x0000000102f18914: ldr x8, [x12, #64] 0x0000000102f18918: br x8 0x0000000102f1891c: b 0x0000000102e9e080 ; {runtime_call AbstractMethodError throw_exception} -------------------------------------------------------------------------------- [/Disassembly] ============================= C2-compiled nmethod ============================== ----------------------------------- Assembly ----------------------------------- Compiled method (c2) 397 37 java.lang.AbstractStringBuilder::appendNull (75 bytes) total in heap [0x0000000102f1cf88,0x0000000102f1d558] = 1488 relocation [0x0000000102f1d060,0x0000000102f1d0b8] = 88 main code [0x0000000102f1d0c0,0x0000000102f1d4f0] = 1072 stub code [0x0000000102f1d4f0,0x0000000102f1d520] = 48 metadata [0x0000000102f1d520,0x0000000102f1d558] = 56 immutable data [0x0000000144856800,0x0000000144856c78] = 1144 dependencies [0x0000000144856800,0x0000000144856810] = 16 nul chk table [0x0000000144856810,0x0000000144856820] = 16 handler table [0x0000000144856820,0x0000000144856850] = 48 scopes pcs [0x0000000144856850,0x0000000144856b20] = 720 scopes data [0x0000000144856b20,0x0000000144856c78] = 344 [Disassembly] -------------------------------------------------------------------------------- [Constant Pool (empty)] -------------------------------------------------------------------------------- [Instructions begin] 0x0000000102f1d0c0: nop 0x0000000102f1d0c4: nop 0x0000000102f1d0c8: nop [Entry Point] # {method} {0x000000011c0cefd0} 'appendNull' '()Ljava/lang/AbstractStringBuilder;' in 'java/lang/AbstractStringBuilder' # [sp+0x50] (sp of caller) 0x0000000102f1d0cc: ldr w8, [x1, #8] 0x0000000102f1d0d0: ldr w10, [x9, #8] 0x0000000102f1d0d4: cmp w8, w10 0x0000000102f1d0d8: b.eq 0x0000000102f1d0e0 // b.none 0x0000000102f1d0dc: b 0x0000000102ea7c80 ; {runtime_call ic_miss_stub} [Verified Entry Point] 0x0000000102f1d0e0: nop 0x0000000102f1d0e4: sub x9, sp, #0x14, lsl #12 0x0000000102f1d0e8: str xzr, [x9] 0x0000000102f1d0ec: sub sp, sp, #0x50 0x0000000102f1d0f0: stp x29, x30, [sp, #64] 0x0000000102f1d0f4: ldr w8, 0x0000000102f1d4ec 0x0000000102f1d0f8: ldr w9, [x28, #32] 0x0000000102f1d0fc: cmp x8, x9 0x0000000102f1d100: b.ne 0x0000000102f1d4d8 // b.any;*synchronization entry ; - java.lang.AbstractStringBuilder::appendNull@-1 (line 711) 0x0000000102f1d104: ldr w10, [x1, #20] 0x0000000102f1d108: mov x19, x1 0x0000000102f1d10c: lsl x14, x10, #3 ;*getfield value {reexecute=0 rethrow=0 return_oop=0} ; - java.lang.AbstractStringBuilder::ensureCapacityInternal@1 (line 316) ; - java.lang.AbstractStringBuilder::appendNull@9 (line 712) 0x0000000102f1d110: ldr w15, [x14, #12] ; implicit exception: dispatches to 0x0000000102f1d4a0 ;*arraylength {reexecute=0 rethrow=0 return_oop=0} ; - java.lang.AbstractStringBuilder::ensureCapacityInternal@4 (line 316) ; - java.lang.AbstractStringBuilder::appendNull@9 (line 712) 0x0000000102f1d114: ldrsb w12, [x1, #16] ;*getfield coder {reexecute=0 rethrow=0 return_oop=0} ; - java.lang.AbstractStringBuilder::ensureCapacityInternal@6 (line 316) ; - java.lang.AbstractStringBuilder::appendNull@9 (line 712) 0x0000000102f1d118: ldr w17, [x1, #12] ;*getfield count {reexecute=0 rethrow=0 return_oop=0} ; - java.lang.AbstractStringBuilder::appendNull@1 (line 711) 0x0000000102f1d11c: asr w11, w15, w12 0x0000000102f1d120: sub w13, w17, w11 0x0000000102f1d124: add w11, w13, #0x4 0x0000000102f1d128: add w13, w17, #0x4 ;*iadd {reexecute=0 rethrow=0 return_oop=0} ; - java.lang.AbstractStringBuilder::appendNull@8 (line 712) 0x0000000102f1d12c: cmp w11, #0x0 0x0000000102f1d130: b.gt 0x0000000102f1d17c 0x0000000102f1d134: lsl x10, x10, #3 ;*getfield value {reexecute=0 rethrow=0 return_oop=0} ; - java.lang.AbstractStringBuilder::appendNull@13 (line 713) 0x0000000102f1d138: cbz w12, 0x0000000102f1d3d8 ;*ifeq {reexecute=0 rethrow=0 return_oop=0} ; - java.lang.AbstractStringBuilder::appendNull@21 (line 714) 0x0000000102f1d13c: mov w11, #0x6e // #110 0x0000000102f1d140: add x10, x10, w17, sxtw #1 0x0000000102f1d144: strh w11, [x10, #16] ;*invokestatic putChar {reexecute=0 rethrow=0 return_oop=0} ; - java.lang.StringUTF16::putCharsAt@3 (line 1552) ; - java.lang.AbstractStringBuilder::appendNull@63 (line 722) 0x0000000102f1d148: mov w11, #0x75 // #117 0x0000000102f1d14c: mov w12, #0x6c // #108 0x0000000102f1d150: strh w11, [x10, #18] ;*invokestatic putChar {reexecute=0 rethrow=0 return_oop=0} ; - java.lang.StringUTF16::putCharsAt@11 (line 1553) ; - java.lang.AbstractStringBuilder::appendNull@63 (line 722) 0x0000000102f1d154: strh w12, [x10, #20] ;*invokestatic putChar {reexecute=0 rethrow=0 return_oop=0} ; - java.lang.StringUTF16::putCharsAt@20 (line 1554) ; - java.lang.AbstractStringBuilder::appendNull@63 (line 722) 0x0000000102f1d158: strh w12, [x10, #22] ;*invokestatic putChar {reexecute=0 rethrow=0 return_oop=0} ; - java.lang.StringUTF16::putCharsAt@29 (line 1555) ; - java.lang.AbstractStringBuilder::appendNull@63 (line 722) 0x0000000102f1d15c: str w13, [x19, #12] ;*synchronization entry ; - java.lang.AbstractStringBuilder::appendNull@-1 (line 711) 0x0000000102f1d160: mov x0, x19 0x0000000102f1d164: ldp x29, x30, [sp, #64] 0x0000000102f1d168: add sp, sp, #0x50 0x0000000102f1d16c: ldr x8, [x28, #1096] ; {poll_return} 0x0000000102f1d170: cmp sp, x8 0x0000000102f1d174: b.hi 0x0000000102f1d4cc // b.pmore 0x0000000102f1d178: ret 0x0000000102f1d17c: stp w15, w13, [sp] 0x0000000102f1d180: str x14, [sp, #8] 0x0000000102f1d184: str w17, [sp, #20] 0x0000000102f1d188: mov x29, x1 0x0000000102f1d18c: mov w2, w13 0x0000000102f1d190: bl 0x0000000102ea7f80 ; ImmutableOopMap {rfp=Oop [8]=Oop } ;*invokevirtual newCapacity {reexecute=0 rethrow=0 return_oop=0} ; - java.lang.AbstractStringBuilder::ensureCapacityInternal@24 (line 319) ; - java.lang.AbstractStringBuilder::appendNull@9 (line 712) ; {optimized virtual_call} 0x0000000102f1d194: nop ; {other} 0x0000000102f1d198: movk xzr, #0x20c 0x0000000102f1d19c: movk xzr, #0x0 ;*invokevirtual newCapacity {reexecute=0 rethrow=0 return_oop=0} ; - java.lang.AbstractStringBuilder::ensureCapacityInternal@24 (line 319) ; - java.lang.AbstractStringBuilder::appendNull@9 (line 712) 0x0000000102f1d1a0: mov x19, x29 0x0000000102f1d1a4: ldrsb w10, [x19, #16] 0x0000000102f1d1a8: lsl w14, w0, w10 ;*ishl {reexecute=0 rethrow=0 return_oop=0} ; - java.lang.AbstractStringBuilder::ensureCapacityInternal@31 (line 319) ; - java.lang.AbstractStringBuilder::appendNull@9 (line 712) 0x0000000102f1d1ac: ldr w11, [sp] 0x0000000102f1d1b0: cmp w11, w14 0x0000000102f1d1b4: csel w29, w11, w14, lt // lt = tstop;*invokestatic min {reexecute=0 rethrow=0 return_oop=0} ; - java.util.Arrays::copyOf@25 (line 3542) ; - java.lang.AbstractStringBuilder::ensureCapacityInternal@32 (line 318) ; - java.lang.AbstractStringBuilder::appendNull@9 (line 712) 0x0000000102f1d1b8: cmp w14, w11 0x0000000102f1d1bc: b.eq 0x0000000102f1d480 // b.none;*if_icmpne {reexecute=0 rethrow=0 return_oop=0} ; - java.util.Arrays::copyOf@3 (line 3537) ; - java.lang.AbstractStringBuilder::ensureCapacityInternal@32 (line 318) ; - java.lang.AbstractStringBuilder::appendNull@9 (line 712) 0x0000000102f1d1c0: mov w12, w14 0x0000000102f1d1c4: mov x10, #0x17 // #23 0x0000000102f1d1c8: add x12, x10, w12, sxtw ;*newarray {reexecute=0 rethrow=0 return_oop=0} ; - java.util.Arrays::copyOf@15 (line 3540) ; - java.lang.AbstractStringBuilder::ensureCapacityInternal@32 (line 318) ; - java.lang.AbstractStringBuilder::appendNull@9 (line 712) 0x0000000102f1d1cc: cmp w11, w29 0x0000000102f1d1d0: b.cc 0x0000000102f1d434 // b.lo, b.ul, b.last 0x0000000102f1d1d4: cmp w14, w29 0x0000000102f1d1d8: b.cc 0x0000000102f1d434 // b.lo, b.ul, b.last ;*invokestatic arraycopy {reexecute=0 rethrow=0 return_oop=0} ; - java.util.Arrays::copyOf@28 (line 3541) ; - java.lang.AbstractStringBuilder::ensureCapacityInternal@32 (line 318) ; - java.lang.AbstractStringBuilder::appendNull@9 (line 712) 0x0000000102f1d1dc: and x13, x12, #0xfffffffffffffff8;*newarray {reexecute=0 rethrow=0 return_oop=0} ; - java.util.Arrays::copyOf@15 (line 3540) ; - java.lang.AbstractStringBuilder::ensureCapacityInternal@32 (line 318) ; - java.lang.AbstractStringBuilder::appendNull@9 (line 712) 0x0000000102f1d1e0: cmp w14, #0x100, lsl #12 0x0000000102f1d1e4: b.hi 0x0000000102f1d398 // b.pmore 0x0000000102f1d1e8: ldr x20, [x28, #440] 0x0000000102f1d1ec: ldr x11, [x28, #456] 0x0000000102f1d1f0: add x10, x20, x13 0x0000000102f1d1f4: cmp x10, x11 0x0000000102f1d1f8: b.cs 0x0000000102f1d398 // b.hs, b.nlast ;*putfield value {reexecute=0 rethrow=0 return_oop=0} ; - java.lang.AbstractStringBuilder::ensureCapacityInternal@35 (line 318) ; - java.lang.AbstractStringBuilder::appendNull@9 (line 712) 0x0000000102f1d1fc: orr x11, xzr, #0x1 0x0000000102f1d200: str x10, [x28, #440] 0x0000000102f1d204: str x11, [x20] 0x0000000102f1d208: mov x11, #0x40000 // #262144 ; {metadata({type array byte})} 0x0000000102f1d20c: movk x11, #0xa00 0x0000000102f1d210: prfm pstl1keep, [x10, #384] 0x0000000102f1d214: str w11, [x20, #8] 0x0000000102f1d218: prfm pstl1keep, [x10, #512] 0x0000000102f1d21c: str w14, [x20, #12] 0x0000000102f1d220: prfm pstl1keep, [x10, #640] ;*newarray {reexecute=0 rethrow=0 return_oop=0} ; - java.util.Arrays::copyOf@15 (line 3540) ; - java.lang.AbstractStringBuilder::ensureCapacityInternal@32 (line 318) ; - java.lang.AbstractStringBuilder::appendNull@9 (line 712) 0x0000000102f1d224: lsr x11, x12, #3 0x0000000102f1d228: add x1, x20, #0x10 0x0000000102f1d22c: lsr x21, x20, #3 0x0000000102f1d230: cbz w29, 0x0000000102f1d400 0x0000000102f1d234: ldr x10, [sp, #8] 0x0000000102f1d238: add x0, x10, #0x10 0x0000000102f1d23c: cmp w29, w14 0x0000000102f1d240: b.lt 0x0000000102f1d2b4 // b.tstop 0x0000000102f1d244: sub x10, x13, #0x10 0x0000000102f1d248: lsr x2, x10, #3 0x0000000102f1d24c: bl Stub::arrayof_jlong_disjoint_arraycopy ; {runtime_call StubRoutines (final stubs)} 0x0000000102f1d250: nop ; {other} 0x0000000102f1d254: movk xzr, #0x0 0x0000000102f1d258: movk xzr, #0x0 0x0000000102f1d25c: dmb ishst 0x0000000102f1d260: ldrsb w10, [x28, #56] 0x0000000102f1d264: cbnz w10, 0x0000000102f1d304 0x0000000102f1d268: mov x10, x19 0x0000000102f1d26c: mov x11, x20 0x0000000102f1d270: eor x11, x11, x10 0x0000000102f1d274: lsr x11, x11, #23 0x0000000102f1d278: str w21, [x19, #20] 0x0000000102f1d27c: cbz x11, 0x0000000102f1d2a0 0x0000000102f1d280: lsr x10, x10, #9 0x0000000102f1d284: mov x11, #0xc000 // #49152 0x0000000102f1d288: movk x11, #0x5e6, lsl #16 0x0000000102f1d28c: movk x11, #0x1, lsl #32 0x0000000102f1d290: add x0, x11, x10 0x0000000102f1d294: ldrsb w10, [x0] 0x0000000102f1d298: cmp w10, #0x2 0x0000000102f1d29c: b.ne 0x0000000102f1d330 // b.any;*getfield value {reexecute=0 rethrow=0 return_oop=0} ; - java.lang.AbstractStringBuilder::appendNull@13 (line 713) 0x0000000102f1d2a0: ldrsb w12, [x19, #16] ;*getfield coder {reexecute=0 rethrow=0 return_oop=0} ; - java.lang.AbstractStringBuilder::isLatin1@7 (line 1791) ; - java.lang.AbstractStringBuilder::appendNull@18 (line 714) 0x0000000102f1d2a4: lsr x10, x20, #3 0x0000000102f1d2a8: ldr w13, [sp, #4] 0x0000000102f1d2ac: ldr w17, [sp, #20] 0x0000000102f1d2b0: b 0x0000000102f1d134 0x0000000102f1d2b4: sxtw x2, w29 0x0000000102f1d2b8: add x12, x2, #0x10 0x0000000102f1d2bc: and x10, x12, #0xfffffffffffffff8 0x0000000102f1d2c0: add x10, x20, x10 0x0000000102f1d2c4: sub x11, x11, x12, lsr #3 0x0000000102f1d2c8: subs x8, x11, #0x8 0x0000000102f1d2cc: b.cc 0x0000000102f1d2d4 // b.lo, b.ul, b.last 0x0000000102f1d2d0: bl Stub::zero_blocks ; {runtime_call StubRoutines (final stubs)} 0x0000000102f1d2d4: tbz w11, #2, 0x0000000102f1d2e0 0x0000000102f1d2d8: stp xzr, xzr, [x10], #16 0x0000000102f1d2dc: stp xzr, xzr, [x10], #16 0x0000000102f1d2e0: tbz w11, #1, 0x0000000102f1d2e8 0x0000000102f1d2e4: stp xzr, xzr, [x10], #16 0x0000000102f1d2e8: tbz w11, #0, 0x0000000102f1d2f0 0x0000000102f1d2ec: str xzr, [x10] 0x0000000102f1d2f0: bl Stub::arrayof_jbyte_disjoint_arraycopy ; {runtime_call StubRoutines (final stubs)} 0x0000000102f1d2f4: nop ; {other} 0x0000000102f1d2f8: movk xzr, #0x0 0x0000000102f1d2fc: movk xzr, #0x0 0x0000000102f1d300: b 0x0000000102f1d25c 0x0000000102f1d304: ldr w11, [x19, #20] 0x0000000102f1d308: lsl x0, x11, #3 0x0000000102f1d30c: cbz x0, 0x0000000102f1d268 0x0000000102f1d310: ldr x10, [x28, #40] 0x0000000102f1d314: cbz x10, 0x0000000102f1d450 0x0000000102f1d318: ldr x11, [x28, #48] 0x0000000102f1d31c: sub x12, x10, #0x8 0x0000000102f1d320: add x10, x11, x10 0x0000000102f1d324: stur x0, [x10, #-8] 0x0000000102f1d328: str x12, [x28, #40] 0x0000000102f1d32c: b 0x0000000102f1d268 0x0000000102f1d330: ldp x11, x10, [x28, #64] 0x0000000102f1d334: dmb ish 0x0000000102f1d338: ldrsb w12, [x0] 0x0000000102f1d33c: cbz w12, 0x0000000102f1d388 0x0000000102f1d340: strb wzr, [x0] 0x0000000102f1d344: cbz x11, 0x0000000102f1d35c 0x0000000102f1d348: sub x12, x11, #0x8 0x0000000102f1d34c: add x10, x10, x11 0x0000000102f1d350: stur x0, [x10, #-8] 0x0000000102f1d354: str x12, [x28, #64] 0x0000000102f1d358: b 0x0000000102f1d388 0x0000000102f1d35c: mov x1, x28 0x0000000102f1d360: adr x9, 0x0000000102f1d378 0x0000000102f1d364: mov x8, #0x6ae4 // #27364 ; {runtime_call G1BarrierSetRuntime::write_ref_field_post_entry(unsigned char volatile*, JavaThread*)} 0x0000000102f1d368: movk x8, #0x200, lsl #16 0x0000000102f1d36c: movk x8, #0x1, lsl #32 0x0000000102f1d370: stp xzr, x9, [sp, #-16]! 0x0000000102f1d374: blr x8 0x0000000102f1d378: nop ; {other} 0x0000000102f1d37c: movk xzr, #0x0 0x0000000102f1d380: movk xzr, #0x0 0x0000000102f1d384: add sp, sp, #0x10 ;*putfield value {reexecute=0 rethrow=0 return_oop=0} ; - java.lang.AbstractStringBuilder::ensureCapacityInternal@35 (line 318) ; - java.lang.AbstractStringBuilder::appendNull@9 (line 712) 0x0000000102f1d388: ldr w11, [x19, #20] 0x0000000102f1d38c: lsl x10, x11, #3 ;*getfield value {reexecute=0 rethrow=0 return_oop=0} ; - java.lang.AbstractStringBuilder::appendNull@13 (line 713) 0x0000000102f1d390: mov x20, x10 0x0000000102f1d394: b 0x0000000102f1d2a0 0x0000000102f1d398: str w14, [sp] 0x0000000102f1d39c: stp x19, x12, [sp, #24] 0x0000000102f1d3a0: str x13, [sp, #40] 0x0000000102f1d3a4: mov x1, #0xa00 // #2560 ; {metadata({type array byte})} 0x0000000102f1d3a8: movk x1, #0x4, lsl #16 0x0000000102f1d3ac: movk x1, #0x7000, lsl #32 0x0000000102f1d3b0: mov w2, w14 0x0000000102f1d3b4: bl 0x0000000102eecf00 ; ImmutableOopMap {[8]=Oop [24]=Oop } ;*newarray {reexecute=0 rethrow=0 return_oop=1} ; - java.util.Arrays::copyOf@15 (line 3540) ; - java.lang.AbstractStringBuilder::ensureCapacityInternal@32 (line 318) ; - java.lang.AbstractStringBuilder::appendNull@9 (line 712) ; {runtime_call _new_array_nozero_Java} 0x0000000102f1d3b8: nop ; {other} 0x0000000102f1d3bc: movk xzr, #0x430 0x0000000102f1d3c0: movk xzr, #0x100 ;*newarray {reexecute=0 rethrow=0 return_oop=0} ; - java.util.Arrays::copyOf@15 (line 3540) ; - java.lang.AbstractStringBuilder::ensureCapacityInternal@32 (line 318) ; - java.lang.AbstractStringBuilder::appendNull@9 (line 712) 0x0000000102f1d3c4: ldr w14, [sp] 0x0000000102f1d3c8: ldr x19, [sp, #24] 0x0000000102f1d3cc: mov x20, x0 0x0000000102f1d3d0: ldp x12, x13, [sp, #32] 0x0000000102f1d3d4: b 0x0000000102f1d224 0x0000000102f1d3d8: cmp w12, #0x0 ;*invokevirtual isLatin1 {reexecute=0 rethrow=0 return_oop=0} ; - java.lang.AbstractStringBuilder::appendNull@18 (line 714) 0x0000000102f1d3dc: cset w29, eq // eq = none ;*ireturn {reexecute=0 rethrow=0 return_oop=0} ; - java.lang.AbstractStringBuilder::isLatin1@18 (line 1791) ; - java.lang.AbstractStringBuilder::appendNull@18 (line 714) 0x0000000102f1d3e0: mov w1, #0xffffff45 // #-187 0x0000000102f1d3e4: str x19, [sp] 0x0000000102f1d3e8: str w17, [sp, #8] 0x0000000102f1d3ec: str x10, [sp, #16] 0x0000000102f1d3f0: bl 0x0000000102eaed00 ; ImmutableOopMap {[0]=Oop [16]=Oop } ;*ifeq {reexecute=1 rethrow=0 return_oop=0} ; - (reexecute) java.lang.AbstractStringBuilder::appendNull@21 (line 714) ; {runtime_call UncommonTrapBlob} 0x0000000102f1d3f4: nop ; {other} 0x0000000102f1d3f8: movk xzr, #0x46c 0x0000000102f1d3fc: movk xzr, #0x200 ;*ifeq {reexecute=0 rethrow=0 return_oop=0} ; - java.lang.AbstractStringBuilder::appendNull@21 (line 714) 0x0000000102f1d400: mov x10, x1 0x0000000102f1d404: sub x11, x11, #0x2 0x0000000102f1d408: subs x8, x11, #0x8 0x0000000102f1d40c: b.cc 0x0000000102f1d414 // b.lo, b.ul, b.last 0x0000000102f1d410: bl Stub::zero_blocks ; {runtime_call StubRoutines (final stubs)} 0x0000000102f1d414: tbz w11, #2, 0x0000000102f1d420 0x0000000102f1d418: stp xzr, xzr, [x10], #16 0x0000000102f1d41c: stp xzr, xzr, [x10], #16 0x0000000102f1d420: tbz w11, #1, 0x0000000102f1d428 0x0000000102f1d424: stp xzr, xzr, [x10], #16 0x0000000102f1d428: tbz w11, #0, 0x0000000102f1d430 0x0000000102f1d42c: str xzr, [x10] 0x0000000102f1d430: b 0x0000000102f1d25c ;*invokestatic arraycopy {reexecute=0 rethrow=0 return_oop=0} ; - java.util.Arrays::copyOf@28 (line 3541) ; - java.lang.AbstractStringBuilder::ensureCapacityInternal@32 (line 318) ; - java.lang.AbstractStringBuilder::appendNull@9 (line 712) 0x0000000102f1d434: mov w1, #0xffffffcc // #-52 0x0000000102f1d438: str x19, [sp] 0x0000000102f1d43c: str w14, [sp, #16] 0x0000000102f1d440: bl 0x0000000102eaed00 ; ImmutableOopMap {[0]=Oop [8]=Oop } ;*newarray {reexecute=1 rethrow=0 return_oop=0} ; - (reexecute) java.util.Arrays::copyOf@15 (line 3540) ; - java.lang.AbstractStringBuilder::ensureCapacityInternal@32 (line 318) ; - java.lang.AbstractStringBuilder::appendNull@9 (line 712) ; {runtime_call UncommonTrapBlob} 0x0000000102f1d444: nop ; {other} 0x0000000102f1d448: movk xzr, #0x4bc 0x0000000102f1d44c: movk xzr, #0x300 0x0000000102f1d450: mov x1, x28 0x0000000102f1d454: adr x9, 0x0000000102f1d46c 0x0000000102f1d458: mov x8, #0x6abc // #27324 ; {runtime_call G1BarrierSetRuntime::write_ref_field_pre_entry(oopDesc*, JavaThread*)} 0x0000000102f1d45c: movk x8, #0x200, lsl #16 0x0000000102f1d460: movk x8, #0x1, lsl #32 0x0000000102f1d464: stp xzr, x9, [sp, #-16]! 0x0000000102f1d468: blr x8 0x0000000102f1d46c: nop ; {other} 0x0000000102f1d470: movk xzr, #0x0 0x0000000102f1d474: movk xzr, #0x0 0x0000000102f1d478: add sp, sp, #0x10 ;*putfield value {reexecute=0 rethrow=0 return_oop=0} ; - java.lang.AbstractStringBuilder::ensureCapacityInternal@35 (line 318) ; - java.lang.AbstractStringBuilder::appendNull@9 (line 712) 0x0000000102f1d47c: b 0x0000000102f1d268 0x0000000102f1d480: mov w1, #0xffffff45 // #-187 0x0000000102f1d484: str x19, [sp] 0x0000000102f1d488: str w11, [sp, #16] 0x0000000102f1d48c: str w14, [sp, #24] 0x0000000102f1d490: bl 0x0000000102eaed00 ; ImmutableOopMap {[0]=Oop [8]=Oop } ;*if_icmpne {reexecute=1 rethrow=0 return_oop=0} ; - (reexecute) java.util.Arrays::copyOf@3 (line 3537) ; - java.lang.AbstractStringBuilder::ensureCapacityInternal@32 (line 318) ; - java.lang.AbstractStringBuilder::appendNull@9 (line 712) ; {runtime_call UncommonTrapBlob} 0x0000000102f1d494: nop ; {other} 0x0000000102f1d498: movk xzr, #0x50c 0x0000000102f1d49c: movk xzr, #0x400 ;*if_icmpne {reexecute=0 rethrow=0 return_oop=0} ; - java.util.Arrays::copyOf@3 (line 3537) ; - java.lang.AbstractStringBuilder::ensureCapacityInternal@32 (line 318) ; - java.lang.AbstractStringBuilder::appendNull@9 (line 712) 0x0000000102f1d4a0: mov w1, #0xfffffff6 // #-10 0x0000000102f1d4a4: bl 0x0000000102eaed00 ; ImmutableOopMap {} ;*arraylength {reexecute=0 rethrow=0 return_oop=0} ; - java.lang.AbstractStringBuilder::ensureCapacityInternal@4 (line 316) ; - java.lang.AbstractStringBuilder::appendNull@9 (line 712) ; {runtime_call UncommonTrapBlob} 0x0000000102f1d4a8: nop ; {other} 0x0000000102f1d4ac: movk xzr, #0x520 0x0000000102f1d4b0: movk xzr, #0x500 ;*newarray {reexecute=0 rethrow=0 return_oop=0} ; - java.util.Arrays::copyOf@15 (line 3540) ; - java.lang.AbstractStringBuilder::ensureCapacityInternal@32 (line 318) ; - java.lang.AbstractStringBuilder::appendNull@9 (line 712) 0x0000000102f1d4b4: mov x1, x0 0x0000000102f1d4b8: b 0x0000000102f1d4c0 ;*invokevirtual newCapacity {reexecute=0 rethrow=0 return_oop=0} ; - java.lang.AbstractStringBuilder::ensureCapacityInternal@24 (line 319) ; - java.lang.AbstractStringBuilder::appendNull@9 (line 712) 0x0000000102f1d4bc: mov x1, x0 ;*synchronization entry ; - java.lang.AbstractStringBuilder::ensureCapacityInternal@-1 (line 316) ; - java.lang.AbstractStringBuilder::appendNull@9 (line 712) 0x0000000102f1d4c0: ldp x29, x30, [sp, #64] 0x0000000102f1d4c4: add sp, sp, #0x50 0x0000000102f1d4c8: b 0x0000000102eeed00 ;*getfield value {reexecute=0 rethrow=0 return_oop=0} ; - java.lang.AbstractStringBuilder::appendNull@13 (line 713) ; {runtime_call _rethrow_Java} 0x0000000102f1d4cc: adr x8, 0x0000000102f1d16c ; {internal_word} 0x0000000102f1d4d0: str x8, [x28, #1120] 0x0000000102f1d4d4: b 0x0000000102eae680 ; {runtime_call SafepointBlob} 0x0000000102f1d4d8: mov x8, #0x16c0 // #5824 ; {runtime_call StubRoutines (final stubs)} 0x0000000102f1d4dc: movk x8, #0x2eb, lsl #16 0x0000000102f1d4e0: movk x8, #0x1, lsl #32 0x0000000102f1d4e4: blr x8 0x0000000102f1d4e8: b 0x0000000102f1d104 0x0000000102f1d4ec: udf #1 ; {other} [Stub Code] 0x0000000102f1d4f0: isb ; {no_reloc} 0x0000000102f1d4f4: mov x12, #0x0 // #0 ; {metadata(nullptr)} 0x0000000102f1d4f8: movk x12, #0x0, lsl #16 0x0000000102f1d4fc: movk x12, #0x0, lsl #32 0x0000000102f1d500: mov x8, #0x0 // #0 0x0000000102f1d504: movk x8, #0x0, lsl #16 0x0000000102f1d508: movk x8, #0x0, lsl #32 0x0000000102f1d50c: br x8 [Exception Handler] 0x0000000102f1d510: b 0x0000000102eed880 ; {runtime_call ExceptionBlob} [Deopt Handler Code] 0x0000000102f1d514: adr x30, 0x0000000102f1d514 0x0000000102f1d518: b 0x0000000102eae980 ; {runtime_call DeoptimizationBlob} 0x0000000102f1d51c: udf #0 -------------------------------------------------------------------------------- [/Disassembly] Compiled method (n/a) 38661 38 n java.lang.invoke.MethodHandle::linkToSpecial(LLLLLLL)L (native) total in heap [0x0000000102f1cc88,0x0000000102f1cda8] = 288 relocation [0x0000000102f1cd60,0x0000000102f1cd68] = 8 main code [0x0000000102f1cd80,0x0000000102f1cda4] = 36 stub code [0x0000000102f1cda4,0x0000000102f1cda8] = 4 [Disassembly] -------------------------------------------------------------------------------- [Constant Pool (empty)] -------------------------------------------------------------------------------- [Verified Entry Point] # {method} {0x000000011c7d03b0} 'linkToSpecial' '(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/invoke/MemberName;)Ljava/lang/Object;' in 'java/lang/invoke/MethodHandle' # parm0: c_rarg1:c_rarg1 = 'java/lang/Object' # parm1: c_rarg2:c_rarg2 = 'java/lang/Object' # parm2: c_rarg3:c_rarg3 = 'java/lang/Object' # parm3: c_rarg4:c_rarg4 = 'java/lang/Object' # parm4: c_rarg5:c_rarg5 = 'java/lang/Object' # parm5: c_rarg6:c_rarg6 = 'java/lang/Object' # parm6: c_rarg7:c_rarg7 = 'java/lang/invoke/MemberName' # [sp+0x0] (sp of caller) 0x0000000102f1cd80: nop 0x0000000102f1cd84: ldr xzr, [x1] 0x0000000102f1cd88: ldr w12, [x7, #36] 0x0000000102f1cd8c: lsl x12, x12, #3 0x0000000102f1cd90: ldr x12, [x12, #16] 0x0000000102f1cd94: cbz x12, 0x0000000102f1cda0 0x0000000102f1cd98: ldr x8, [x12, #64] 0x0000000102f1cd9c: br x8 0x0000000102f1cda0: b 0x0000000102e9e080 ; {runtime_call AbstractMethodError throw_exception} [Stub Code] 0x0000000102f1cda4: udf #0 -------------------------------------------------------------------------------- [/Disassembly] Compiled method (n/a) 38663 39 n java.lang.invoke.MethodHandle::linkToStatic(LJL)L (native) total in heap [0x0000000102f1c988,0x0000000102f1caa0] = 280 relocation [0x0000000102f1ca60,0x0000000102f1ca68] = 8 main code [0x0000000102f1ca80,0x0000000102f1caa0] = 32 [Disassembly] -------------------------------------------------------------------------------- [Constant Pool (empty)] -------------------------------------------------------------------------------- [Verified Entry Point] # {method} {0x000000011c7d0768} 'linkToStatic' '(Ljava/lang/Object;JLjava/lang/invoke/MemberName;)Ljava/lang/Object;' in 'java/lang/invoke/MethodHandle' # parm0: c_rarg1:c_rarg1 = 'java/lang/Object' # parm1: c_rarg2:c_rarg2 = long # parm2: c_rarg3:c_rarg3 = 'java/lang/invoke/MemberName' # [sp+0x0] (sp of caller) 0x0000000102f1ca80: nop 0x0000000102f1ca84: ldr w12, [x3, #36] 0x0000000102f1ca88: lsl x12, x12, #3 0x0000000102f1ca8c: ldr x12, [x12, #16] 0x0000000102f1ca90: cbz x12, 0x0000000102f1ca9c 0x0000000102f1ca94: ldr x8, [x12, #64] 0x0000000102f1ca98: br x8 0x0000000102f1ca9c: b 0x0000000102e9e080 ; {runtime_call AbstractMethodError throw_exception} -------------------------------------------------------------------------------- [/Disassembly] Compiled method (n/a) 38664 40 n java.lang.invoke.MethodHandle::invokeBasic(LJ)L (native) total in heap [0x0000000102f1c688,0x0000000102f1c7b0] = 296 relocation [0x0000000102f1c760,0x0000000102f1c768] = 8 main code [0x0000000102f1c780,0x0000000102f1c7b0] = 48 [Disassembly] -------------------------------------------------------------------------------- [Constant Pool (empty)] -------------------------------------------------------------------------------- [Verified Entry Point] # {method} {0x000000011c7d0880} 'invokeBasic' '(Ljava/lang/Object;J)Ljava/lang/Object;' in 'java/lang/invoke/MethodHandle' # this: c_rarg1:c_rarg1 = 'java/lang/invoke/MethodHandle' # parm0: c_rarg2:c_rarg2 = 'java/lang/Object' # parm1: c_rarg3:c_rarg3 = long # [sp+0x0] (sp of caller) 0x0000000102f1c780: nop 0x0000000102f1c784: ldr w12, [x1, #20] 0x0000000102f1c788: lsl x12, x12, #3 0x0000000102f1c78c: ldr w12, [x12, #40] 0x0000000102f1c790: lsl x12, x12, #3 0x0000000102f1c794: ldr w12, [x12, #36] 0x0000000102f1c798: lsl x12, x12, #3 0x0000000102f1c79c: ldr x12, [x12, #16] 0x0000000102f1c7a0: cbz x12, 0x0000000102f1c7ac 0x0000000102f1c7a4: ldr x8, [x12, #64] 0x0000000102f1c7a8: br x8 0x0000000102f1c7ac: b 0x0000000102e9e080 ; {runtime_call AbstractMethodError throw_exception} -------------------------------------------------------------------------------- [/Disassembly] Compiled method (n/a) 38664 41 n java.lang.invoke.MethodHandle::linkToSpecial(LLJL)L (native) total in heap [0x0000000102f1c388,0x0000000102f1c4a8] = 288 relocation [0x0000000102f1c460,0x0000000102f1c468] = 8 main code [0x0000000102f1c480,0x0000000102f1c4a4] = 36 stub code [0x0000000102f1c4a4,0x0000000102f1c4a8] = 4 [Disassembly] -------------------------------------------------------------------------------- [Constant Pool (empty)] -------------------------------------------------------------------------------- [Verified Entry Point] # {method} {0x000000011c7d0b08} 'linkToSpecial' '(Ljava/lang/Object;Ljava/lang/Object;JLjava/lang/invoke/MemberName;)Ljava/lang/Object;' in 'java/lang/invoke/MethodHandle' # parm0: c_rarg1:c_rarg1 = 'java/lang/Object' # parm1: c_rarg2:c_rarg2 = 'java/lang/Object' # parm2: c_rarg3:c_rarg3 = long # parm3: c_rarg4:c_rarg4 = 'java/lang/invoke/MemberName' # [sp+0x0] (sp of caller) 0x0000000102f1c480: nop 0x0000000102f1c484: ldr xzr, [x1] 0x0000000102f1c488: ldr w12, [x4, #36] 0x0000000102f1c48c: lsl x12, x12, #3 0x0000000102f1c490: ldr x12, [x12, #16] 0x0000000102f1c494: cbz x12, 0x0000000102f1c4a0 0x0000000102f1c498: ldr x8, [x12, #64] 0x0000000102f1c49c: br x8 0x0000000102f1c4a0: b 0x0000000102e9e080 ; {runtime_call AbstractMethodError throw_exception} [Stub Code] 0x0000000102f1c4a4: udf #0 -------------------------------------------------------------------------------- [/Disassembly] Compiled method (n/a) 38665 42 n java.lang.invoke.MethodHandle::linkToStatic(JLJLL)J (native) total in heap [0x0000000102f1bd08,0x0000000102f1be20] = 280 relocation [0x0000000102f1bde0,0x0000000102f1bde8] = 8 main code [0x0000000102f1be00,0x0000000102f1be20] = 32 [Disassembly] -------------------------------------------------------------------------------- [Constant Pool (empty)] -------------------------------------------------------------------------------- [Verified Entry Point] # {method} {0x000000011c7d0da0} 'linkToStatic' '(JLjava/lang/Object;JLjava/lang/Object;Ljava/lang/invoke/MemberName;)J' in 'java/lang/invoke/MethodHandle' # parm0: c_rarg1:c_rarg1 = long # parm1: c_rarg2:c_rarg2 = 'java/lang/Object' # parm2: c_rarg3:c_rarg3 = long # parm3: c_rarg4:c_rarg4 = 'java/lang/Object' # parm4: c_rarg5:c_rarg5 = 'java/lang/invoke/MemberName' # [sp+0x0] (sp of caller) 0x0000000102f1be00: nop 0x0000000102f1be04: ldr w12, [x5, #36] 0x0000000102f1be08: lsl x12, x12, #3 0x0000000102f1be0c: ldr x12, [x12, #16] 0x0000000102f1be10: cbz x12, 0x0000000102f1be1c 0x0000000102f1be14: ldr x8, [x12, #64] 0x0000000102f1be18: br x8 0x0000000102f1be1c: b 0x0000000102e9e080 ; {runtime_call AbstractMethodError throw_exception} -------------------------------------------------------------------------------- [/Disassembly] Compiled method (n/a) 38666 43 n java.lang.invoke.MethodHandle::invokeBasic(JLJL)J (native) total in heap [0x0000000102f1ba08,0x0000000102f1bb30] = 296 relocation [0x0000000102f1bae0,0x0000000102f1bae8] = 8 main code [0x0000000102f1bb00,0x0000000102f1bb30] = 48 [Disassembly] -------------------------------------------------------------------------------- [Constant Pool (empty)] -------------------------------------------------------------------------------- [Verified Entry Point] # {method} {0x000000011c7d0eb8} 'invokeBasic' '(JLjava/lang/Object;JLjava/lang/Object;)J' in 'java/lang/invoke/MethodHandle' # this: c_rarg1:c_rarg1 = 'java/lang/invoke/MethodHandle' # parm0: c_rarg2:c_rarg2 = long # parm1: c_rarg3:c_rarg3 = 'java/lang/Object' # parm2: c_rarg4:c_rarg4 = long # parm3: c_rarg5:c_rarg5 = 'java/lang/Object' # [sp+0x0] (sp of caller) 0x0000000102f1bb00: nop 0x0000000102f1bb04: ldr w12, [x1, #20] 0x0000000102f1bb08: lsl x12, x12, #3 0x0000000102f1bb0c: ldr w12, [x12, #40] 0x0000000102f1bb10: lsl x12, x12, #3 0x0000000102f1bb14: ldr w12, [x12, #36] 0x0000000102f1bb18: lsl x12, x12, #3 0x0000000102f1bb1c: ldr x12, [x12, #16] 0x0000000102f1bb20: cbz x12, 0x0000000102f1bb2c 0x0000000102f1bb24: ldr x8, [x12, #64] 0x0000000102f1bb28: br x8 0x0000000102f1bb2c: b 0x0000000102e9e080 ; {runtime_call AbstractMethodError throw_exception} -------------------------------------------------------------------------------- [/Disassembly] Compiled method (n/a) 38666 44 n java.lang.invoke.MethodHandle::linkToSpecial(LJLJLL)J (native) total in heap [0x0000000102f1b388,0x0000000102f1b4a8] = 288 relocation [0x0000000102f1b460,0x0000000102f1b468] = 8 main code [0x0000000102f1b480,0x0000000102f1b4a4] = 36 stub code [0x0000000102f1b4a4,0x0000000102f1b4a8] = 4 [Disassembly] -------------------------------------------------------------------------------- [Constant Pool (empty)] -------------------------------------------------------------------------------- [Verified Entry Point] # {method} {0x000000011c7d11a0} 'linkToSpecial' '(Ljava/lang/Object;JLjava/lang/Object;JLjava/lang/Object;Ljava/lang/invoke/MemberName;)J' in 'java/lang/invoke/MethodHandle' # parm0: c_rarg1:c_rarg1 = 'java/lang/Object' # parm1: c_rarg2:c_rarg2 = long # parm2: c_rarg3:c_rarg3 = 'java/lang/Object' # parm3: c_rarg4:c_rarg4 = long # parm4: c_rarg5:c_rarg5 = 'java/lang/Object' # parm5: c_rarg6:c_rarg6 = 'java/lang/invoke/MemberName' # [sp+0x0] (sp of caller) 0x0000000102f1b480: nop 0x0000000102f1b484: ldr xzr, [x1] 0x0000000102f1b488: ldr w12, [x6, #36] 0x0000000102f1b48c: lsl x12, x12, #3 0x0000000102f1b490: ldr x12, [x12, #16] 0x0000000102f1b494: cbz x12, 0x0000000102f1b4a0 0x0000000102f1b498: ldr x8, [x12, #64] 0x0000000102f1b49c: br x8 0x0000000102f1b4a0: b 0x0000000102e9e080 ; {runtime_call AbstractMethodError throw_exception} [Stub Code] 0x0000000102f1b4a4: udf #0 -------------------------------------------------------------------------------- [/Disassembly] Compiled method (n/a) 38668 45 n java.lang.invoke.MethodHandle::invokeBasic(JLJ)J (native) total in heap [0x0000000102f1a988,0x0000000102f1aab0] = 296 relocation [0x0000000102f1aa60,0x0000000102f1aa68] = 8 main code [0x0000000102f1aa80,0x0000000102f1aab0] = 48 [Disassembly] -------------------------------------------------------------------------------- [Constant Pool (empty)] -------------------------------------------------------------------------------- [Verified Entry Point] # {method} {0x000000011c7d14c8} 'invokeBasic' '(JLjava/lang/Object;J)J' in 'java/lang/invoke/MethodHandle' # this: c_rarg1:c_rarg1 = 'java/lang/invoke/MethodHandle' # parm0: c_rarg2:c_rarg2 = long # parm1: c_rarg3:c_rarg3 = 'java/lang/Object' # parm2: c_rarg4:c_rarg4 = long # [sp+0x0] (sp of caller) 0x0000000102f1aa80: nop 0x0000000102f1aa84: ldr w12, [x1, #20] 0x0000000102f1aa88: lsl x12, x12, #3 0x0000000102f1aa8c: ldr w12, [x12, #40] 0x0000000102f1aa90: lsl x12, x12, #3 0x0000000102f1aa94: ldr w12, [x12, #36] 0x0000000102f1aa98: lsl x12, x12, #3 0x0000000102f1aa9c: ldr x12, [x12, #16] 0x0000000102f1aaa0: cbz x12, 0x0000000102f1aaac 0x0000000102f1aaa4: ldr x8, [x12, #64] 0x0000000102f1aaa8: br x8 0x0000000102f1aaac: b 0x0000000102e9e080 ; {runtime_call AbstractMethodError throw_exception} -------------------------------------------------------------------------------- [/Disassembly] Compiled method (n/a) 38668 46 n java.lang.invoke.MethodHandle::linkToSpecial(LJLJL)J (native) total in heap [0x0000000102f1a688,0x0000000102f1a7a8] = 288 relocation [0x0000000102f1a760,0x0000000102f1a768] = 8 main code [0x0000000102f1a780,0x0000000102f1a7a4] = 36 stub code [0x0000000102f1a7a4,0x0000000102f1a7a8] = 4 [Disassembly] -------------------------------------------------------------------------------- [Constant Pool (empty)] -------------------------------------------------------------------------------- [Verified Entry Point] # {method} {0x000000011c7d15e0} 'linkToSpecial' '(Ljava/lang/Object;JLjava/lang/Object;JLjava/lang/invoke/MemberName;)J' in 'java/lang/invoke/MethodHandle' # parm0: c_rarg1:c_rarg1 = 'java/lang/Object' # parm1: c_rarg2:c_rarg2 = long # parm2: c_rarg3:c_rarg3 = 'java/lang/Object' # parm3: c_rarg4:c_rarg4 = long # parm4: c_rarg5:c_rarg5 = 'java/lang/invoke/MemberName' # [sp+0x0] (sp of caller) 0x0000000102f1a780: nop 0x0000000102f1a784: ldr xzr, [x1] 0x0000000102f1a788: ldr w12, [x5, #36] 0x0000000102f1a78c: lsl x12, x12, #3 0x0000000102f1a790: ldr x12, [x12, #16] 0x0000000102f1a794: cbz x12, 0x0000000102f1a7a0 0x0000000102f1a798: ldr x8, [x12, #64] 0x0000000102f1a79c: br x8 0x0000000102f1a7a0: b 0x0000000102e9e080 ; {runtime_call AbstractMethodError throw_exception} [Stub Code] 0x0000000102f1a7a4: udf #0 -------------------------------------------------------------------------------- [/Disassembly] Compiled method (n/a) 38669 47 n java.lang.invoke.MethodHandle::linkToStatic(JL)L (native) total in heap [0x0000000102f1a008,0x0000000102f1a120] = 280 relocation [0x0000000102f1a0e0,0x0000000102f1a0e8] = 8 main code [0x0000000102f1a100,0x0000000102f1a120] = 32 [Disassembly] -------------------------------------------------------------------------------- [Constant Pool (empty)] -------------------------------------------------------------------------------- [Verified Entry Point] # {method} {0x000000011c7d1910} 'linkToStatic' '(JLjava/lang/invoke/MemberName;)Ljava/lang/Object;' in 'java/lang/invoke/MethodHandle' # parm0: c_rarg1:c_rarg1 = long # parm1: c_rarg2:c_rarg2 = 'java/lang/invoke/MemberName' # [sp+0x0] (sp of caller) 0x0000000102f1a100: nop 0x0000000102f1a104: ldr w12, [x2, #36] 0x0000000102f1a108: lsl x12, x12, #3 0x0000000102f1a10c: ldr x12, [x12, #16] 0x0000000102f1a110: cbz x12, 0x0000000102f1a11c 0x0000000102f1a114: ldr x8, [x12, #64] 0x0000000102f1a118: br x8 0x0000000102f1a11c: b 0x0000000102e9e080 ; {runtime_call AbstractMethodError throw_exception} -------------------------------------------------------------------------------- [/Disassembly] Compiled method (n/a) 38670 48 n java.lang.invoke.MethodHandle::invokeBasic(J)L (native) total in heap [0x0000000102f19d08,0x0000000102f19e30] = 296 relocation [0x0000000102f19de0,0x0000000102f19de8] = 8 main code [0x0000000102f19e00,0x0000000102f19e30] = 48 [Disassembly] -------------------------------------------------------------------------------- [Constant Pool (empty)] -------------------------------------------------------------------------------- [Verified Entry Point] # {method} {0x000000011c7d1b18} 'invokeBasic' '(J)Ljava/lang/Object;' in 'java/lang/invoke/MethodHandle' # this: c_rarg1:c_rarg1 = 'java/lang/invoke/MethodHandle' # parm0: c_rarg2:c_rarg2 = long # [sp+0x0] (sp of caller) 0x0000000102f19e00: nop 0x0000000102f19e04: ldr w12, [x1, #20] 0x0000000102f19e08: lsl x12, x12, #3 0x0000000102f19e0c: ldr w12, [x12, #40] 0x0000000102f19e10: lsl x12, x12, #3 0x0000000102f19e14: ldr w12, [x12, #36] 0x0000000102f19e18: lsl x12, x12, #3 0x0000000102f19e1c: ldr x12, [x12, #16] 0x0000000102f19e20: cbz x12, 0x0000000102f19e2c 0x0000000102f19e24: ldr x8, [x12, #64] 0x0000000102f19e28: br x8 0x0000000102f19e2c: b 0x0000000102e9e080 ; {runtime_call AbstractMethodError throw_exception} -------------------------------------------------------------------------------- [/Disassembly] Compiled method (n/a) 38670 49 n java.lang.invoke.MethodHandle::linkToSpecial(LJL)L (native) total in heap [0x0000000102f19a08,0x0000000102f19b28] = 288 relocation [0x0000000102f19ae0,0x0000000102f19ae8] = 8 main code [0x0000000102f19b00,0x0000000102f19b24] = 36 stub code [0x0000000102f19b24,0x0000000102f19b28] = 4 [Disassembly] -------------------------------------------------------------------------------- [Constant Pool (empty)] -------------------------------------------------------------------------------- [Verified Entry Point] # {method} {0x000000011c7d1c30} 'linkToSpecial' '(Ljava/lang/Object;JLjava/lang/invoke/MemberName;)Ljava/lang/Object;' in 'java/lang/invoke/MethodHandle' # parm0: c_rarg1:c_rarg1 = 'java/lang/Object' # parm1: c_rarg2:c_rarg2 = long # parm2: c_rarg3:c_rarg3 = 'java/lang/invoke/MemberName' # [sp+0x0] (sp of caller) 0x0000000102f19b00: nop 0x0000000102f19b04: ldr xzr, [x1] 0x0000000102f19b08: ldr w12, [x3, #36] 0x0000000102f19b0c: lsl x12, x12, #3 0x0000000102f19b10: ldr x12, [x12, #16] 0x0000000102f19b14: cbz x12, 0x0000000102f19b20 0x0000000102f19b18: ldr x8, [x12, #64] 0x0000000102f19b1c: br x8 0x0000000102f19b20: b 0x0000000102e9e080 ; {runtime_call AbstractMethodError throw_exception} [Stub Code] 0x0000000102f19b24: udf #0 -------------------------------------------------------------------------------- [/Disassembly] Compiled method (n/a) 38671 50 n java.lang.invoke.MethodHandle::linkToStatic(JJL)J (native) total in heap [0x0000000102f19588,0x0000000102f196a0] = 280 relocation [0x0000000102f19660,0x0000000102f19668] = 8 main code [0x0000000102f19680,0x0000000102f196a0] = 32 [Disassembly] -------------------------------------------------------------------------------- [Constant Pool (empty)] -------------------------------------------------------------------------------- [Verified Entry Point] # {method} {0x000000011c7d1dd8} 'linkToStatic' '(JJLjava/lang/invoke/MemberName;)J' in 'java/lang/invoke/MethodHandle' # parm0: c_rarg1:c_rarg1 = long # parm1: c_rarg2:c_rarg2 = long # parm2: c_rarg3:c_rarg3 = 'java/lang/invoke/MemberName' # [sp+0x0] (sp of caller) 0x0000000102f19680: nop 0x0000000102f19684: ldr w12, [x3, #36] 0x0000000102f19688: lsl x12, x12, #3 0x0000000102f1968c: ldr x12, [x12, #16] 0x0000000102f19690: cbz x12, 0x0000000102f1969c 0x0000000102f19694: ldr x8, [x12, #64] 0x0000000102f19698: br x8 0x0000000102f1969c: b 0x0000000102e9e080 ; {runtime_call AbstractMethodError throw_exception} -------------------------------------------------------------------------------- [/Disassembly] Compiled method (n/a) 38671 51 n java.lang.invoke.MethodHandle::invokeBasic(JJ)J (native) total in heap [0x0000000102f1d588,0x0000000102f1d6b0] = 296 relocation [0x0000000102f1d660,0x0000000102f1d668] = 8 main code [0x0000000102f1d680,0x0000000102f1d6b0] = 48 [Disassembly] -------------------------------------------------------------------------------- [Constant Pool (empty)] -------------------------------------------------------------------------------- [Verified Entry Point] # {method} {0x000000011c7d1ef0} 'invokeBasic' '(JJ)J' in 'java/lang/invoke/MethodHandle' # this: c_rarg1:c_rarg1 = 'java/lang/invoke/MethodHandle' # parm0: c_rarg2:c_rarg2 = long # parm1: c_rarg3:c_rarg3 = long # [sp+0x0] (sp of caller) 0x0000000102f1d680: nop 0x0000000102f1d684: ldr w12, [x1, #20] 0x0000000102f1d688: lsl x12, x12, #3 0x0000000102f1d68c: ldr w12, [x12, #40] 0x0000000102f1d690: lsl x12, x12, #3 0x0000000102f1d694: ldr w12, [x12, #36] 0x0000000102f1d698: lsl x12, x12, #3 0x0000000102f1d69c: ldr x12, [x12, #16] 0x0000000102f1d6a0: cbz x12, 0x0000000102f1d6ac 0x0000000102f1d6a4: ldr x8, [x12, #64] 0x0000000102f1d6a8: br x8 0x0000000102f1d6ac: b 0x0000000102e9e080 ; {runtime_call AbstractMethodError throw_exception} -------------------------------------------------------------------------------- [/Disassembly] Compiled method (n/a) 38672 52 n java.lang.invoke.MethodHandle::linkToSpecial(LJJL)J (native) total in heap [0x0000000102f1d888,0x0000000102f1d9a8] = 288 relocation [0x0000000102f1d960,0x0000000102f1d968] = 8 main code [0x0000000102f1d980,0x0000000102f1d9a4] = 36 stub code [0x0000000102f1d9a4,0x0000000102f1d9a8] = 4 [Disassembly] -------------------------------------------------------------------------------- [Constant Pool (empty)] -------------------------------------------------------------------------------- [Verified Entry Point] # {method} {0x000000011c7d2008} 'linkToSpecial' '(Ljava/lang/Object;JJLjava/lang/invoke/MemberName;)J' in 'java/lang/invoke/MethodHandle' # parm0: c_rarg1:c_rarg1 = 'java/lang/Object' # parm1: c_rarg2:c_rarg2 = long # parm2: c_rarg3:c_rarg3 = long # parm3: c_rarg4:c_rarg4 = 'java/lang/invoke/MemberName' # [sp+0x0] (sp of caller) 0x0000000102f1d980: nop 0x0000000102f1d984: ldr xzr, [x1] 0x0000000102f1d988: ldr w12, [x4, #36] 0x0000000102f1d98c: lsl x12, x12, #3 0x0000000102f1d990: ldr x12, [x12, #16] 0x0000000102f1d994: cbz x12, 0x0000000102f1d9a0 0x0000000102f1d998: ldr x8, [x12, #64] 0x0000000102f1d99c: br x8 0x0000000102f1d9a0: b 0x0000000102e9e080 ; {runtime_call AbstractMethodError throw_exception} [Stub Code] 0x0000000102f1d9a4: udf #0 -------------------------------------------------------------------------------- [/Disassembly] Compiled method (n/a) 38698 53 n java.lang.invoke.MethodHandle::linkToStatic(LLLJL)L (native) total in heap [0x0000000102f1df08,0x0000000102f1e020] = 280 relocation [0x0000000102f1dfe0,0x0000000102f1dfe8] = 8 main code [0x0000000102f1e000,0x0000000102f1e020] = 32 [Disassembly] -------------------------------------------------------------------------------- [Constant Pool (empty)] -------------------------------------------------------------------------------- [Verified Entry Point] # {method} {0x000000011c7d3a80} 'linkToStatic' '(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;JLjava/lang/invoke/MemberName;)Ljava/lang/Object;' in 'java/lang/invoke/MethodHandle' # parm0: c_rarg1:c_rarg1 = 'java/lang/Object' # parm1: c_rarg2:c_rarg2 = 'java/lang/Object' # parm2: c_rarg3:c_rarg3 = 'java/lang/Object' # parm3: c_rarg4:c_rarg4 = long # parm4: c_rarg5:c_rarg5 = 'java/lang/invoke/MemberName' # [sp+0x0] (sp of caller) 0x0000000102f1e000: nop 0x0000000102f1e004: ldr w12, [x5, #36] 0x0000000102f1e008: lsl x12, x12, #3 0x0000000102f1e00c: ldr x12, [x12, #16] 0x0000000102f1e010: cbz x12, 0x0000000102f1e01c 0x0000000102f1e014: ldr x8, [x12, #64] 0x0000000102f1e018: br x8 0x0000000102f1e01c: b 0x0000000102e9e080 ; {runtime_call AbstractMethodError throw_exception} -------------------------------------------------------------------------------- [/Disassembly] Compiled method (n/a) 38699 54 n java.lang.invoke.MethodHandle::invokeBasic(LLLJ)L (native) total in heap [0x0000000102f1e208,0x0000000102f1e330] = 296 relocation [0x0000000102f1e2e0,0x0000000102f1e2e8] = 8 main code [0x0000000102f1e300,0x0000000102f1e330] = 48 [Disassembly] -------------------------------------------------------------------------------- [Constant Pool (empty)] -------------------------------------------------------------------------------- [Verified Entry Point] # {method} {0x000000011c7d3bc8} 'invokeBasic' '(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;J)Ljava/lang/Object;' in 'java/lang/invoke/MethodHandle' # this: c_rarg1:c_rarg1 = 'java/lang/invoke/MethodHandle' # parm0: c_rarg2:c_rarg2 = 'java/lang/Object' # parm1: c_rarg3:c_rarg3 = 'java/lang/Object' # parm2: c_rarg4:c_rarg4 = 'java/lang/Object' # parm3: c_rarg5:c_rarg5 = long # [sp+0x0] (sp of caller) 0x0000000102f1e300: nop 0x0000000102f1e304: ldr w12, [x1, #20] 0x0000000102f1e308: lsl x12, x12, #3 0x0000000102f1e30c: ldr w12, [x12, #40] 0x0000000102f1e310: lsl x12, x12, #3 0x0000000102f1e314: ldr w12, [x12, #36] 0x0000000102f1e318: lsl x12, x12, #3 0x0000000102f1e31c: ldr x12, [x12, #16] 0x0000000102f1e320: cbz x12, 0x0000000102f1e32c 0x0000000102f1e324: ldr x8, [x12, #64] 0x0000000102f1e328: br x8 0x0000000102f1e32c: b 0x0000000102e9e080 ; {runtime_call AbstractMethodError throw_exception} -------------------------------------------------------------------------------- [/Disassembly] Compiled method (n/a) 38702 55 n java.lang.invoke.MethodHandle::invokeBasic(J)J (native) total in heap [0x0000000102f1e508,0x0000000102f1e630] = 296 relocation [0x0000000102f1e5e0,0x0000000102f1e5e8] = 8 main code [0x0000000102f1e600,0x0000000102f1e630] = 48 [Disassembly] -------------------------------------------------------------------------------- [Constant Pool (empty)] -------------------------------------------------------------------------------- [Verified Entry Point] # {method} {0x000000011c7d4b48} 'invokeBasic' '(J)J' in 'java/lang/invoke/MethodHandle' # this: c_rarg1:c_rarg1 = 'java/lang/invoke/MethodHandle' # parm0: c_rarg2:c_rarg2 = long # [sp+0x0] (sp of caller) 0x0000000102f1e600: nop 0x0000000102f1e604: ldr w12, [x1, #20] 0x0000000102f1e608: lsl x12, x12, #3 0x0000000102f1e60c: ldr w12, [x12, #40] 0x0000000102f1e610: lsl x12, x12, #3 0x0000000102f1e614: ldr w12, [x12, #36] 0x0000000102f1e618: lsl x12, x12, #3 0x0000000102f1e61c: ldr x12, [x12, #16] 0x0000000102f1e620: cbz x12, 0x0000000102f1e62c 0x0000000102f1e624: ldr x8, [x12, #64] 0x0000000102f1e628: br x8 0x0000000102f1e62c: b 0x0000000102e9e080 ; {runtime_call AbstractMethodError throw_exception} -------------------------------------------------------------------------------- [/Disassembly] Compiled method (n/a) 38702 56 n java.lang.invoke.MethodHandle::linkToSpecial(LJL)J (native) total in heap [0x0000000102f1e808,0x0000000102f1e928] = 288 relocation [0x0000000102f1e8e0,0x0000000102f1e8e8] = 8 main code [0x0000000102f1e900,0x0000000102f1e924] = 36 stub code [0x0000000102f1e924,0x0000000102f1e928] = 4 [Disassembly] -------------------------------------------------------------------------------- [Constant Pool (empty)] -------------------------------------------------------------------------------- [Verified Entry Point] # {method} {0x000000011c7d5010} 'linkToSpecial' '(Ljava/lang/Object;JLjava/lang/invoke/MemberName;)J' in 'java/lang/invoke/MethodHandle' # parm0: c_rarg1:c_rarg1 = 'java/lang/Object' # parm1: c_rarg2:c_rarg2 = long # parm2: c_rarg3:c_rarg3 = 'java/lang/invoke/MemberName' # [sp+0x0] (sp of caller) 0x0000000102f1e900: nop 0x0000000102f1e904: ldr xzr, [x1] 0x0000000102f1e908: ldr w12, [x3, #36] 0x0000000102f1e90c: lsl x12, x12, #3 0x0000000102f1e910: ldr x12, [x12, #16] 0x0000000102f1e914: cbz x12, 0x0000000102f1e920 0x0000000102f1e918: ldr x8, [x12, #64] 0x0000000102f1e91c: br x8 0x0000000102f1e920: b 0x0000000102e9e080 ; {runtime_call AbstractMethodError throw_exception} [Stub Code] 0x0000000102f1e924: udf #0 -------------------------------------------------------------------------------- [/Disassembly] Process finished with exit code 0 ------------- PR Comment: https://git.openjdk.org/jdk/pull/19626#issuecomment-2160211224