jdk/test/sun/reflect/constantPool/ConstantPoolTestDummy.jasm
changeset 38062 430e0a96ef1f
parent 38061 5fe046aef3b9
parent 38060 954c9575f653
child 38064 0e7c67a6ad89
child 38065 025c784d9333
equal deleted inserted replaced
38061:5fe046aef3b9 38062:430e0a96ef1f
     1 /*
       
     2  * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
       
     3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
       
     4  *
       
     5  * This code is free software; you can redistribute it and/or modify it
       
     6  * under the terms of the GNU General Public License version 2 only, as
       
     7  * published by the Free Software Foundation.
       
     8  *
       
     9  * This code is distributed in the hope that it will be useful, but WITHOUT
       
    10  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
       
    11  * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
       
    12  * version 2 for more details (a copy is included in the LICENSE file that
       
    13  * accompanied this code).
       
    14  *
       
    15  * You should have received a copy of the GNU General Public License version
       
    16  * 2 along with this work; if not, write to the Free Software Foundation,
       
    17  * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
       
    18  *
       
    19  * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
       
    20  * or visit www.oracle.com if you need additional information or have any
       
    21  * questions.
       
    22  */
       
    23 
       
    24 package  sun/reflect/constantPool;
       
    25 
       
    26 super public    #2; //class ConstantPoolTestDummy
       
    27     version 52:0
       
    28 {
       
    29 
       
    30 // Actually, only first 13 constant pool entries are actually used by the class
       
    31 // and its methods. All the rest are added just for the testing of getTagAt method
       
    32 // and getNameAndTypeRefIndexAt method.
       
    33 
       
    34 const #1 = Method   #3.#10; //  java/lang/Object."<init>":"()V"
       
    35 const #2 = class    #11;    //  ConstantPoolTestDummy
       
    36 const #3 = class    #12;    //  java/lang/Object
       
    37 const #4 = Asciz    "<init>";
       
    38 const #5 = Asciz    "()V";
       
    39 const #6 = Asciz    "Code";
       
    40 const #7 = Asciz    "LineNumberTable";
       
    41 const #8 = Asciz    "SourceFile";
       
    42 const #9 = Asciz    "ConstantPoolTestDummy.java";
       
    43 const #10 = NameAndType #4:#5;  //  "<init>":"()V"
       
    44 const #11 = Asciz   "sun/reflect/constantPool/ConstantPoolTestDummy";
       
    45 const #12 = Asciz   "java/lang/Object";
       
    46 const #13 = long    6l;
       
    47 const #15 = int     1;
       
    48 const #16 = InterfaceMethod #17.#18;    //  java/lang/Runnable.run:"()V"
       
    49 const #17 = class   #19;    //  java/lang/Runnable
       
    50 const #18 = NameAndType #20:#5;    //  run:"()V"
       
    51 const #19 = Asciz   "java/lang/Runnable";
       
    52 const #20 = Asciz   "run";
       
    53 const #21 = double   1.45d;
       
    54 const #23 = String   #24;    //  "Hello"
       
    55 const #24 = Asciz   "Hello";
       
    56 const #25 = InvokeDynamic   0:#26;  //  REF_invokeStatic:java/lang/invoke/LambdaMetafactory.metafactory:"(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;":accept:"()Ljava/util/function/Consumer;" MethodType "(Ljava/lang/Object;)V", MethodHandle REF_invokeVirtual:java/lang/Object.toString:"()Ljava/lang/String;", MethodType "(Ljava/lang/Object;)V"
       
    57 const #26 = NameAndType #27:#28;    //  accept:"()Ljava/util/function/Consumer;"
       
    58 const #27 = Asciz   "accept";
       
    59 const #28 = Asciz   "()Ljava/util/function/Consumer;";
       
    60 const #29 = MethodHandle    6:#32;  //  REF_invokeStatic:java/lang/invoke/LambdaMetafactory.metafactory:"(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;"
       
    61 const #30 = MethodType  #33;    //  "(Ljava/lang/Object;)V"
       
    62 const #31 = MethodHandle    5:#34;  //  REF_invokeVirtual:java/lang/Object.toString:"()Ljava/lang/String;"
       
    63 const #32 = Method  #35.#36;    //  java/lang/invoke/LambdaMetafactory.metafactory:"(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;"
       
    64 const #33 = Asciz   "(Ljava/lang/Object;)V";
       
    65 const #34 = Method  #3.#37; //  java/lang/Object.toString:"()Ljava/lang/String;"
       
    66 const #35 = class   #38;    //  java/lang/invoke/LambdaMetafactory
       
    67 const #36 = NameAndType #39:#40;    //  metafactory:"(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;"
       
    68 const #37 = NameAndType #41:#42;    //  toString:"()Ljava/lang/String;"
       
    69 const #38 = Asciz   "java/lang/invoke/LambdaMetafactory";
       
    70 const #39 = Asciz   "metafactory";
       
    71 const #40 = Asciz   "(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;";
       
    72 const #41 = Asciz   "toString";
       
    73 const #42 = Asciz   "()Ljava/lang/String;";
       
    74 const #43 = class   #46;    //  java/lang/invoke/MethodHandles$Lookup
       
    75 const #44 = Asciz   "Lookup";
       
    76 const #45 = class   #47;    //  java/lang/invoke/MethodHandles
       
    77 const #46 = Asciz   "java/lang/invoke/MethodHandles$Lookup";
       
    78 const #47 = Asciz   "java/lang/invoke/MethodHandles";
       
    79 const #48 = Field    #2.#49;    //  sun/reflect/constantPool/ConstantPoolTestDummy.myField:"I"
       
    80 const #49 = NameAndType #50:#51;    //  myField:"I"
       
    81 const #50 = Asciz   "myField";
       
    82 const #51 = Asciz   "I";
       
    83 const #52 = float   1.34f;
       
    84 
       
    85 public Method #4:#5  // "<init>":"()V"
       
    86 
       
    87     stack 1 locals 1
       
    88 {
       
    89 3   0:  aload_0;
       
    90     1:  invokespecial   #1; //  Method java/lang/Object."<init>":"()V";
       
    91     4:  return;
       
    92 }
       
    93 
       
    94 public static final InnerClass #44= #43 of #45; //Lookup=class java/lang/invoke/MethodHandles$Lookup of class java/lang/invoke/MethodHandles
       
    95 
       
    96 BootstrapMethod #29 #30 #31 #30;
       
    97 
       
    98 } // end Class ConstantPoolTestDummy