Classfile /w/lt/jdk/dev/build/linux-x86_64-server-release/images/test/DUMP_SPECIALIZER/jdk/internal/foreign/abi/DowncallStub(a8a8a8a8a8)v.class Last modified 24 Oct 2024; size 2122 bytes MD5 checksum 38900952efd1a6691c42e045dc55e123 public final class jdk.internal.foreign.abi.DowncallStub minor version: 0 major version: 68 flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER this_class: #2 // jdk/internal/foreign/abi/DowncallStub super_class: #4 // java/lang/Object interfaces: 0, fields: 0, methods: 1, attributes: 1 Constant pool: #1 = Utf8 jdk/internal/foreign/abi/DowncallStub #2 = Class #1 // jdk/internal/foreign/abi/DowncallStub #3 = Utf8 java/lang/Object #4 = Class #3 // java/lang/Object #5 = Utf8 invoke #6 = Utf8 (Ljava/lang/foreign/SegmentAllocator;Ljava/lang/foreign/MemorySegment;Ljava/lang/foreign/MemorySegment;Ljava/lang/foreign/MemorySegment;Ljava/lang/foreign/MemorySegment;Ljava/lang/foreign/MemorySegment;)V #7 = Utf8 jdk/internal/foreign/abi/SharedUtils #8 = Class #7 // jdk/internal/foreign/abi/SharedUtils #9 = Utf8 DUMMY_ARENA #10 = Utf8 Ljava/lang/foreign/Arena; #11 = NameAndType #9:#10 // DUMMY_ARENA:Ljava/lang/foreign/Arena; #12 = Fieldref #8.#11 // jdk/internal/foreign/abi/SharedUtils.DUMMY_ARENA:Ljava/lang/foreign/Arena; #13 = Utf8 jdk/internal/foreign/AbstractMemorySegmentImpl #14 = Class #13 // jdk/internal/foreign/AbstractMemorySegmentImpl #15 = Utf8 sessionImpl #16 = Utf8 ()Ljdk/internal/foreign/MemorySessionImpl; #17 = NameAndType #15:#16 // sessionImpl:()Ljdk/internal/foreign/MemorySessionImpl; #18 = Methodref #14.#17 // jdk/internal/foreign/AbstractMemorySegmentImpl.sessionImpl:()Ljdk/internal/foreign/MemorySessionImpl; #19 = Utf8 jdk/internal/foreign/MemorySessionImpl #20 = Class #19 // jdk/internal/foreign/MemorySessionImpl #21 = Utf8 acquire0 #22 = Utf8 ()V #23 = NameAndType #21:#22 // acquire0:()V #24 = Methodref #20.#23 // jdk/internal/foreign/MemorySessionImpl.acquire0:()V #25 = Utf8 checkNative #26 = Utf8 (Ljava/lang/foreign/MemorySegment;)V #27 = NameAndType #25:#26 // checkNative:(Ljava/lang/foreign/MemorySegment;)V #28 = Methodref #8.#27 // jdk/internal/foreign/abi/SharedUtils.checkNative:(Ljava/lang/foreign/MemorySegment;)V #29 = Utf8 unsafeGetOffset #30 = Utf8 ()J #31 = NameAndType #29:#30 // unsafeGetOffset:()J #32 = Methodref #14.#31 // jdk/internal/foreign/AbstractMemorySegmentImpl.unsafeGetOffset:()J #33 = Utf8 java/lang/invoke/MethodHandles #34 = Class #33 // java/lang/invoke/MethodHandles #35 = Utf8 classData #36 = Utf8 (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/Object; #37 = NameAndType #35:#36 // classData:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/Object; #38 = Methodref #34.#37 // java/lang/invoke/MethodHandles.classData:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/Object; #39 = MethodHandle 6:#38 // REF_invokeStatic java/lang/invoke/MethodHandles.classData:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/Object; #40 = Utf8 _ #41 = Utf8 Ljava/lang/Object; #42 = NameAndType #40:#41 // _:Ljava/lang/Object; #43 = Dynamic #0:#42 // #0:_:Ljava/lang/Object; #44 = Utf8 java/lang/invoke/MethodHandle #45 = Class #44 // java/lang/invoke/MethodHandle #46 = Utf8 invokeExact #47 = Utf8 (JJJJJ)V #48 = NameAndType #46:#47 // invokeExact:(JJJJJ)V #49 = Methodref #45.#48 // java/lang/invoke/MethodHandle.invokeExact:(JJJJJ)V #50 = Utf8 java/lang/foreign/Arena #51 = Class #50 // java/lang/foreign/Arena #52 = Utf8 close #53 = NameAndType #52:#22 // close:()V #54 = InterfaceMethodref #51.#53 // java/lang/foreign/Arena.close:()V #55 = Utf8 release0 #56 = NameAndType #55:#22 // release0:()V #57 = Methodref #20.#56 // jdk/internal/foreign/MemorySessionImpl.release0:()V #58 = Utf8 Code #59 = Utf8 StackMapTable #60 = Utf8 java/lang/foreign/SegmentAllocator #61 = Class #60 // java/lang/foreign/SegmentAllocator #62 = Utf8 java/lang/foreign/MemorySegment #63 = Class #62 // java/lang/foreign/MemorySegment #64 = Utf8 java/lang/Throwable #65 = Class #64 // java/lang/Throwable #66 = Utf8 BootstrapMethods { public static void invoke(java.lang.foreign.SegmentAllocator, java.lang.foreign.MemorySegment, java.lang.foreign.MemorySegment, java.lang.foreign.MemorySegment, java.lang.foreign.MemorySegment, java.lang.foreign.MemorySegment); descriptor: (Ljava/lang/foreign/SegmentAllocator;Ljava/lang/foreign/MemorySegment;Ljava/lang/foreign/MemorySegment;Ljava/lang/foreign/MemorySegment;Ljava/lang/foreign/MemorySegment;Ljava/lang/foreign/MemorySegment;)V flags: (0x0009) ACC_PUBLIC, ACC_STATIC Code: stack=11, locals=22, args_size=6 0: aconst_null 1: astore 16 3: aconst_null 4: astore 17 6: aconst_null 7: astore 18 9: aconst_null 10: astore 19 12: aconst_null 13: astore 20 15: getstatic #12 // Field jdk/internal/foreign/abi/SharedUtils.DUMMY_ARENA:Ljava/lang/foreign/Arena; 18: astore 21 20: aload_1 21: dup 22: checkcast #14 // class jdk/internal/foreign/AbstractMemorySegmentImpl 25: invokevirtual #18 // Method jdk/internal/foreign/AbstractMemorySegmentImpl.sessionImpl:()Ljdk/internal/foreign/MemorySessionImpl; 28: dup 29: invokevirtual #24 // Method jdk/internal/foreign/MemorySessionImpl.acquire0:()V 32: astore 16 34: dup 35: invokestatic #28 // Method jdk/internal/foreign/abi/SharedUtils.checkNative:(Ljava/lang/foreign/MemorySegment;)V 38: checkcast #14 // class jdk/internal/foreign/AbstractMemorySegmentImpl 41: invokevirtual #32 // Method jdk/internal/foreign/AbstractMemorySegmentImpl.unsafeGetOffset:()J 44: lstore 6 46: aload_2 47: dup 48: checkcast #14 // class jdk/internal/foreign/AbstractMemorySegmentImpl 51: invokevirtual #18 // Method jdk/internal/foreign/AbstractMemorySegmentImpl.sessionImpl:()Ljdk/internal/foreign/MemorySessionImpl; 54: dup 55: aload 16 57: if_acmpeq 69 60: dup 61: invokevirtual #24 // Method jdk/internal/foreign/MemorySessionImpl.acquire0:()V 64: astore 17 66: goto 70 69: pop 70: dup 71: invokestatic #28 // Method jdk/internal/foreign/abi/SharedUtils.checkNative:(Ljava/lang/foreign/MemorySegment;)V 74: checkcast #14 // class jdk/internal/foreign/AbstractMemorySegmentImpl 77: invokevirtual #32 // Method jdk/internal/foreign/AbstractMemorySegmentImpl.unsafeGetOffset:()J 80: lstore 8 82: aload_3 83: dup 84: checkcast #14 // class jdk/internal/foreign/AbstractMemorySegmentImpl 87: invokevirtual #18 // Method jdk/internal/foreign/AbstractMemorySegmentImpl.sessionImpl:()Ljdk/internal/foreign/MemorySessionImpl; 90: dup 91: aload 16 93: if_acmpeq 111 96: dup 97: aload 17 99: if_acmpeq 111 102: dup 103: invokevirtual #24 // Method jdk/internal/foreign/MemorySessionImpl.acquire0:()V 106: astore 18 108: goto 112 111: pop 112: dup 113: invokestatic #28 // Method jdk/internal/foreign/abi/SharedUtils.checkNative:(Ljava/lang/foreign/MemorySegment;)V 116: checkcast #14 // class jdk/internal/foreign/AbstractMemorySegmentImpl 119: invokevirtual #32 // Method jdk/internal/foreign/AbstractMemorySegmentImpl.unsafeGetOffset:()J 122: lstore 10 124: aload 4 126: dup 127: checkcast #14 // class jdk/internal/foreign/AbstractMemorySegmentImpl 130: invokevirtual #18 // Method jdk/internal/foreign/AbstractMemorySegmentImpl.sessionImpl:()Ljdk/internal/foreign/MemorySessionImpl; 133: dup 134: aload 16 136: if_acmpeq 160 139: dup 140: aload 17 142: if_acmpeq 160 145: dup 146: aload 18 148: if_acmpeq 160 151: dup 152: invokevirtual #24 // Method jdk/internal/foreign/MemorySessionImpl.acquire0:()V 155: astore 19 157: goto 161 160: pop 161: dup 162: invokestatic #28 // Method jdk/internal/foreign/abi/SharedUtils.checkNative:(Ljava/lang/foreign/MemorySegment;)V 165: checkcast #14 // class jdk/internal/foreign/AbstractMemorySegmentImpl 168: invokevirtual #32 // Method jdk/internal/foreign/AbstractMemorySegmentImpl.unsafeGetOffset:()J 171: lstore 12 173: aload 5 175: dup 176: checkcast #14 // class jdk/internal/foreign/AbstractMemorySegmentImpl 179: invokevirtual #18 // Method jdk/internal/foreign/AbstractMemorySegmentImpl.sessionImpl:()Ljdk/internal/foreign/MemorySessionImpl; 182: dup 183: aload 16 185: if_acmpeq 215 188: dup 189: aload 17 191: if_acmpeq 215 194: dup 195: aload 18 197: if_acmpeq 215 200: dup 201: aload 19 203: if_acmpeq 215 206: dup 207: invokevirtual #24 // Method jdk/internal/foreign/MemorySessionImpl.acquire0:()V 210: astore 20 212: goto 216 215: pop 216: dup 217: invokestatic #28 // Method jdk/internal/foreign/abi/SharedUtils.checkNative:(Ljava/lang/foreign/MemorySegment;)V 220: checkcast #14 // class jdk/internal/foreign/AbstractMemorySegmentImpl 223: invokevirtual #32 // Method jdk/internal/foreign/AbstractMemorySegmentImpl.unsafeGetOffset:()J 226: lstore 14 228: ldc #43 // Dynamic #0:_:Ljava/lang/Object; 230: checkcast #45 // class java/lang/invoke/MethodHandle 233: lload 6 235: lload 8 237: lload 10 239: lload 12 241: lload 14 243: invokevirtual #49 // Method java/lang/invoke/MethodHandle.invokeExact:(JJJJJ)V 246: aload 21 248: checkcast #51 // class java/lang/foreign/Arena 251: invokeinterface #54, 1 // InterfaceMethod java/lang/foreign/Arena.close:()V 256: aload 16 258: ifnull 266 261: aload 16 263: invokevirtual #57 // Method jdk/internal/foreign/MemorySessionImpl.release0:()V 266: aload 17 268: ifnull 276 271: aload 17 273: invokevirtual #57 // Method jdk/internal/foreign/MemorySessionImpl.release0:()V 276: aload 18 278: ifnull 286 281: aload 18 283: invokevirtual #57 // Method jdk/internal/foreign/MemorySessionImpl.release0:()V 286: aload 19 288: ifnull 296 291: aload 19 293: invokevirtual #57 // Method jdk/internal/foreign/MemorySessionImpl.release0:()V 296: aload 20 298: ifnull 306 301: aload 20 303: invokevirtual #57 // Method jdk/internal/foreign/MemorySessionImpl.release0:()V 306: return 307: aload 21 309: checkcast #51 // class java/lang/foreign/Arena 312: invokeinterface #54, 1 // InterfaceMethod java/lang/foreign/Arena.close:()V 317: aload 16 319: ifnull 327 322: aload 16 324: invokevirtual #57 // Method jdk/internal/foreign/MemorySessionImpl.release0:()V 327: aload 17 329: ifnull 337 332: aload 17 334: invokevirtual #57 // Method jdk/internal/foreign/MemorySessionImpl.release0:()V 337: aload 18 339: ifnull 347 342: aload 18 344: invokevirtual #57 // Method jdk/internal/foreign/MemorySessionImpl.release0:()V 347: aload 19 349: ifnull 357 352: aload 19 354: invokevirtual #57 // Method jdk/internal/foreign/MemorySessionImpl.release0:()V 357: aload 20 359: ifnull 367 362: aload 20 364: invokevirtual #57 // Method jdk/internal/foreign/MemorySessionImpl.release0:()V 367: athrow Exception table: from to target type 20 246 307 any StackMapTable: number_of_entries = 19 frame_type = 255 /* full_frame */ offset_delta = 69 locals = [ class java/lang/foreign/SegmentAllocator, class java/lang/foreign/MemorySegment, class java/lang/foreign/MemorySegment, class java/lang/foreign/MemorySegment, class java/lang/foreign/MemorySegment, class java/lang/foreign/MemorySegment, long, top, top, top, top, top, top, top, top, class jdk/internal/foreign/MemorySessionImpl, null, null, null, null, class java/lang/foreign/Arena ] stack = [ class java/lang/foreign/MemorySegment, class jdk/internal/foreign/MemorySessionImpl ] frame_type = 255 /* full_frame */ offset_delta = 0 locals = [ class java/lang/foreign/SegmentAllocator, class java/lang/foreign/MemorySegment, class java/lang/foreign/MemorySegment, class java/lang/foreign/MemorySegment, class java/lang/foreign/MemorySegment, class java/lang/foreign/MemorySegment, long, top, top, top, top, top, top, top, top, class jdk/internal/foreign/MemorySessionImpl, class jdk/internal/foreign/MemorySessionImpl, null, null, null, class java/lang/foreign/Arena ] stack = [ class java/lang/foreign/MemorySegment ] frame_type = 255 /* full_frame */ offset_delta = 40 locals = [ class java/lang/foreign/SegmentAllocator, class java/lang/foreign/MemorySegment, class java/lang/foreign/MemorySegment, class java/lang/foreign/MemorySegment, class java/lang/foreign/MemorySegment, class java/lang/foreign/MemorySegment, long, long, top, top, top, top, top, top, class jdk/internal/foreign/MemorySessionImpl, class jdk/internal/foreign/MemorySessionImpl, null, null, null, class java/lang/foreign/Arena ] stack = [ class java/lang/foreign/MemorySegment, class jdk/internal/foreign/MemorySessionImpl ] frame_type = 255 /* full_frame */ offset_delta = 0 locals = [ class java/lang/foreign/SegmentAllocator, class java/lang/foreign/MemorySegment, class java/lang/foreign/MemorySegment, class java/lang/foreign/MemorySegment, class java/lang/foreign/MemorySegment, class java/lang/foreign/MemorySegment, long, long, top, top, top, top, top, top, class jdk/internal/foreign/MemorySessionImpl, class jdk/internal/foreign/MemorySessionImpl, class jdk/internal/foreign/MemorySessionImpl, null, null, class java/lang/foreign/Arena ] stack = [ class java/lang/foreign/MemorySegment ] frame_type = 255 /* full_frame */ offset_delta = 47 locals = [ class java/lang/foreign/SegmentAllocator, class java/lang/foreign/MemorySegment, class java/lang/foreign/MemorySegment, class java/lang/foreign/MemorySegment, class java/lang/foreign/MemorySegment, class java/lang/foreign/MemorySegment, long, long, long, top, top, top, top, class jdk/internal/foreign/MemorySessionImpl, class jdk/internal/foreign/MemorySessionImpl, class jdk/internal/foreign/MemorySessionImpl, null, null, class java/lang/foreign/Arena ] stack = [ class java/lang/foreign/MemorySegment, class jdk/internal/foreign/MemorySessionImpl ] frame_type = 255 /* full_frame */ offset_delta = 0 locals = [ class java/lang/foreign/SegmentAllocator, class java/lang/foreign/MemorySegment, class java/lang/foreign/MemorySegment, class java/lang/foreign/MemorySegment, class java/lang/foreign/MemorySegment, class java/lang/foreign/MemorySegment, long, long, long, top, top, top, top, class jdk/internal/foreign/MemorySessionImpl, class jdk/internal/foreign/MemorySessionImpl, class jdk/internal/foreign/MemorySessionImpl, class jdk/internal/foreign/MemorySessionImpl, null, class java/lang/foreign/Arena ] stack = [ class java/lang/foreign/MemorySegment ] frame_type = 255 /* full_frame */ offset_delta = 53 locals = [ class java/lang/foreign/SegmentAllocator, class java/lang/foreign/MemorySegment, class java/lang/foreign/MemorySegment, class java/lang/foreign/MemorySegment, class java/lang/foreign/MemorySegment, class java/lang/foreign/MemorySegment, long, long, long, long, top, top, class jdk/internal/foreign/MemorySessionImpl, class jdk/internal/foreign/MemorySessionImpl, class jdk/internal/foreign/MemorySessionImpl, class jdk/internal/foreign/MemorySessionImpl, null, class java/lang/foreign/Arena ] stack = [ class java/lang/foreign/MemorySegment, class jdk/internal/foreign/MemorySessionImpl ] frame_type = 255 /* full_frame */ offset_delta = 0 locals = [ class java/lang/foreign/SegmentAllocator, class java/lang/foreign/MemorySegment, class java/lang/foreign/MemorySegment, class java/lang/foreign/MemorySegment, class java/lang/foreign/MemorySegment, class java/lang/foreign/MemorySegment, long, long, long, long, top, top, class jdk/internal/foreign/MemorySessionImpl, class jdk/internal/foreign/MemorySessionImpl, class jdk/internal/foreign/MemorySessionImpl, class jdk/internal/foreign/MemorySessionImpl, class jdk/internal/foreign/MemorySessionImpl, class java/lang/foreign/Arena ] stack = [ class java/lang/foreign/MemorySegment ] frame_type = 255 /* full_frame */ offset_delta = 49 locals = [ class java/lang/foreign/SegmentAllocator, class java/lang/foreign/MemorySegment, class java/lang/foreign/MemorySegment, class java/lang/foreign/MemorySegment, class java/lang/foreign/MemorySegment, class java/lang/foreign/MemorySegment, long, long, long, long, long, class jdk/internal/foreign/MemorySessionImpl, class jdk/internal/foreign/MemorySessionImpl, class jdk/internal/foreign/MemorySessionImpl, class jdk/internal/foreign/MemorySessionImpl, class jdk/internal/foreign/MemorySessionImpl, class java/lang/foreign/Arena ] stack = [] frame_type = 9 /* same */ frame_type = 9 /* same */ frame_type = 9 /* same */ frame_type = 9 /* same */ frame_type = 255 /* full_frame */ offset_delta = 0 locals = [ class java/lang/foreign/SegmentAllocator, class java/lang/foreign/MemorySegment, class java/lang/foreign/MemorySegment, class java/lang/foreign/MemorySegment, class java/lang/foreign/MemorySegment, class java/lang/foreign/MemorySegment, top, top, top, top, top, top, top, top, top, top, class jdk/internal/foreign/MemorySessionImpl, class jdk/internal/foreign/MemorySessionImpl, class jdk/internal/foreign/MemorySessionImpl, class jdk/internal/foreign/MemorySessionImpl, class jdk/internal/foreign/MemorySessionImpl, class java/lang/foreign/Arena ] stack = [ class java/lang/Throwable ] frame_type = 83 /* same_locals_1_stack_item */ stack = [ class java/lang/Throwable ] frame_type = 73 /* same_locals_1_stack_item */ stack = [ class java/lang/Throwable ] frame_type = 73 /* same_locals_1_stack_item */ stack = [ class java/lang/Throwable ] frame_type = 73 /* same_locals_1_stack_item */ stack = [ class java/lang/Throwable ] frame_type = 73 /* same_locals_1_stack_item */ stack = [ class java/lang/Throwable ] } BootstrapMethods: 0: #39 REF_invokeStatic java/lang/invoke/MethodHandles.classData:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/Object; Method arguments: