1/*
2 * Copyright (c) 2003, 2018, 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
24package nsk/jvmti/FieldModification;
25
26super public class fieldmod001a {
27
28    static Field staticBoolean:Z;
29    static Field staticByte:B;
30    static Field staticShort:S;
31    static Field staticInt:I;
32    static Field staticLong:J;
33    static Field staticFloat:F;
34    static Field staticDouble:D;
35    static Field staticChar:C;
36    static Field staticObject:"Ljava/lang/Object;";
37    static Field staticArrInt:"[I";
38    Field instanceBoolean:Z;
39    Field instanceByte:B;
40    Field instanceShort:S;
41    Field instanceInt:I;
42    Field instanceLong:J;
43    Field instanceFloat:F;
44    Field instanceDouble:D;
45    Field instanceChar:C;
46    Field instanceObject:"Ljava/lang/Object;";
47    Field instanceArrInt:"[I";
48
49    public Method "<init>":"()V" stack 1 locals 1 {
50        aload_0;
51        invokespecial Method java/lang/Object."<init>":"()V";
52        return;
53    }
54
55    public Method run:"()V" stack 5 locals 1 {
56        iconst_1;
57        putstatic   Field staticBoolean:"Z";    // bci=1
58        iconst_1;
59        putstatic   Field staticByte:"B";       // bci=5
60        iconst_2;
61        putstatic   Field staticShort:"S";      // bci=9
62        iconst_3;
63        putstatic   Field staticInt:"I";        // bci=13
64        ldc2_w      long 4l;
65        putstatic   Field staticLong:"J";       // bci=19
66        ldc         float 0.5f;
67        putstatic   Field staticFloat:"F";      // bci=24
68        ldc2_w      double 0.6d;
69        putstatic   Field staticDouble:"D";     // bci=30
70        bipush      97;
71        putstatic   Field staticChar:"C";       // bci=35
72        getstatic   Field fieldmod001.obj1:"Ljava/lang/Object;";
73        putstatic   Field staticObject:"Ljava/lang/Object;"; // bci=41
74        getstatic   Field fieldmod001.arr1:"[I";
75        putstatic   Field staticArrInt:"[I";    // bci=47
76        aload_0;
77        iconst_0;
78        putfield    Field instanceBoolean:"Z";  // bci=52
79        aload_0;
80        bipush      10;
81        putfield    Field instanceByte:"B";     // bci=58
82        aload_0;
83        bipush      20;
84        putfield    Field instanceShort:"S";    // bci=64
85        aload_0;
86        bipush      30;
87        putfield    Field instanceInt:"I";      // bci=70
88        aload_0;
89        ldc2_w      long 40l;
90        putfield    Field instanceLong:"J";     // bci=77
91        aload_0;
92        ldc         float 0.05f;
93        putfield    Field instanceFloat:"F";    // bci=83
94        aload_0;
95        ldc2_w      double 0.06d;
96        putfield    Field instanceDouble:"D";   // bci=90
97        aload_0;
98        bipush      122;
99        putfield    Field instanceChar:"C";     // bci=96
100        aload_0;
101        getstatic   Field fieldmod001.obj2:"Ljava/lang/Object;";
102        putfield    Field instanceObject:"Ljava/lang/Object;"; // bci=103
103        aload_0;
104        getstatic   Field fieldmod001.arr2:"[I";
105        putfield    Field instanceArrInt:"[I";  // bci=110
106        return;
107    }
108}
109