Mercurial > hg > graal-jvmci-8
annotate graal/com.oracle.jvmci.bytecode/src/com/oracle/jvmci/bytecode/Bytecodes.java @ 21713:454a99ca00a9
fixed canonicalizeprojects issues
author | Doug Simon <doug.simon@oracle.com> |
---|---|
date | Wed, 03 Jun 2015 22:13:10 +0200 |
parents | graal/com.oracle.jvmci.bytecode/src/com/oracle/graal/bytecode/Bytecodes.java@1c41d00e6b2f |
children |
rev | line source |
---|---|
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
1 /* |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
2 * Copyright (c) 2009, 2011, Oracle and/or its affiliates. All rights reserved. |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
4 * |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
5 * This code is free software; you can redistribute it and/or modify it |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
6 * under the terms of the GNU General Public License version 2 only, as |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
7 * published by the Free Software Foundation. |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
8 * |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
9 * This code is distributed in the hope that it will be useful, but WITHOUT |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
10 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
11 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
12 * version 2 for more details (a copy is included in the LICENSE file that |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
13 * accompanied this code). |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
14 * |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
15 * You should have received a copy of the GNU General Public License version |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
16 * 2 along with this work; if not, write to the Free Software Foundation, |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
17 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
18 * |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
19 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
20 * or visit www.oracle.com if you need additional information or have any |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
21 * questions. |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
22 */ |
21713
454a99ca00a9
fixed canonicalizeprojects issues
Doug Simon <doug.simon@oracle.com>
parents:
21711
diff
changeset
|
23 package com.oracle.jvmci.bytecode; |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
24 |
21713
454a99ca00a9
fixed canonicalizeprojects issues
Doug Simon <doug.simon@oracle.com>
parents:
21711
diff
changeset
|
25 import static com.oracle.jvmci.bytecode.Bytecodes.Flags.*; |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
26 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
27 import java.lang.reflect.*; |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
28 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
29 /** |
21536
7fed589ff982
remove documentation about extended bytecodes
Doug Simon <doug.simon@oracle.com>
parents:
18228
diff
changeset
|
30 * Definitions of the standard Java bytecodes defined by <a href= |
7530
5e3d1a68664e
applied mx eclipseformat to all Java files
Doug Simon <doug.simon@oracle.com>
parents:
7514
diff
changeset
|
31 * "http://java.sun.com/docs/books/jvms/second_edition/html/VMSpecTOC.doc.html"> Java Virtual |
21536
7fed589ff982
remove documentation about extended bytecodes
Doug Simon <doug.simon@oracle.com>
parents:
18228
diff
changeset
|
32 * Machine Specification</a>. |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
33 */ |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
34 public class Bytecodes { |
7530
5e3d1a68664e
applied mx eclipseformat to all Java files
Doug Simon <doug.simon@oracle.com>
parents:
7514
diff
changeset
|
35 |
7514
6bf569d50989
disabled auto-formatting of some code sections that use manual alignment
Doug Simon <doug.simon@oracle.com>
parents:
6461
diff
changeset
|
36 // @formatter:off |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
37 public static final int NOP = 0; // 0x00 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
38 public static final int ACONST_NULL = 1; // 0x01 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
39 public static final int ICONST_M1 = 2; // 0x02 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
40 public static final int ICONST_0 = 3; // 0x03 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
41 public static final int ICONST_1 = 4; // 0x04 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
42 public static final int ICONST_2 = 5; // 0x05 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
43 public static final int ICONST_3 = 6; // 0x06 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
44 public static final int ICONST_4 = 7; // 0x07 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
45 public static final int ICONST_5 = 8; // 0x08 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
46 public static final int LCONST_0 = 9; // 0x09 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
47 public static final int LCONST_1 = 10; // 0x0A |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
48 public static final int FCONST_0 = 11; // 0x0B |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
49 public static final int FCONST_1 = 12; // 0x0C |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
50 public static final int FCONST_2 = 13; // 0x0D |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
51 public static final int DCONST_0 = 14; // 0x0E |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
52 public static final int DCONST_1 = 15; // 0x0F |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
53 public static final int BIPUSH = 16; // 0x10 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
54 public static final int SIPUSH = 17; // 0x11 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
55 public static final int LDC = 18; // 0x12 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
56 public static final int LDC_W = 19; // 0x13 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
57 public static final int LDC2_W = 20; // 0x14 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
58 public static final int ILOAD = 21; // 0x15 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
59 public static final int LLOAD = 22; // 0x16 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
60 public static final int FLOAD = 23; // 0x17 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
61 public static final int DLOAD = 24; // 0x18 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
62 public static final int ALOAD = 25; // 0x19 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
63 public static final int ILOAD_0 = 26; // 0x1A |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
64 public static final int ILOAD_1 = 27; // 0x1B |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
65 public static final int ILOAD_2 = 28; // 0x1C |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
66 public static final int ILOAD_3 = 29; // 0x1D |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
67 public static final int LLOAD_0 = 30; // 0x1E |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
68 public static final int LLOAD_1 = 31; // 0x1F |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
69 public static final int LLOAD_2 = 32; // 0x20 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
70 public static final int LLOAD_3 = 33; // 0x21 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
71 public static final int FLOAD_0 = 34; // 0x22 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
72 public static final int FLOAD_1 = 35; // 0x23 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
73 public static final int FLOAD_2 = 36; // 0x24 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
74 public static final int FLOAD_3 = 37; // 0x25 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
75 public static final int DLOAD_0 = 38; // 0x26 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
76 public static final int DLOAD_1 = 39; // 0x27 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
77 public static final int DLOAD_2 = 40; // 0x28 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
78 public static final int DLOAD_3 = 41; // 0x29 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
79 public static final int ALOAD_0 = 42; // 0x2A |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
80 public static final int ALOAD_1 = 43; // 0x2B |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
81 public static final int ALOAD_2 = 44; // 0x2C |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
82 public static final int ALOAD_3 = 45; // 0x2D |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
83 public static final int IALOAD = 46; // 0x2E |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
84 public static final int LALOAD = 47; // 0x2F |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
85 public static final int FALOAD = 48; // 0x30 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
86 public static final int DALOAD = 49; // 0x31 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
87 public static final int AALOAD = 50; // 0x32 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
88 public static final int BALOAD = 51; // 0x33 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
89 public static final int CALOAD = 52; // 0x34 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
90 public static final int SALOAD = 53; // 0x35 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
91 public static final int ISTORE = 54; // 0x36 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
92 public static final int LSTORE = 55; // 0x37 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
93 public static final int FSTORE = 56; // 0x38 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
94 public static final int DSTORE = 57; // 0x39 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
95 public static final int ASTORE = 58; // 0x3A |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
96 public static final int ISTORE_0 = 59; // 0x3B |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
97 public static final int ISTORE_1 = 60; // 0x3C |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
98 public static final int ISTORE_2 = 61; // 0x3D |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
99 public static final int ISTORE_3 = 62; // 0x3E |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
100 public static final int LSTORE_0 = 63; // 0x3F |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
101 public static final int LSTORE_1 = 64; // 0x40 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
102 public static final int LSTORE_2 = 65; // 0x41 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
103 public static final int LSTORE_3 = 66; // 0x42 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
104 public static final int FSTORE_0 = 67; // 0x43 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
105 public static final int FSTORE_1 = 68; // 0x44 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
106 public static final int FSTORE_2 = 69; // 0x45 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
107 public static final int FSTORE_3 = 70; // 0x46 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
108 public static final int DSTORE_0 = 71; // 0x47 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
109 public static final int DSTORE_1 = 72; // 0x48 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
110 public static final int DSTORE_2 = 73; // 0x49 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
111 public static final int DSTORE_3 = 74; // 0x4A |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
112 public static final int ASTORE_0 = 75; // 0x4B |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
113 public static final int ASTORE_1 = 76; // 0x4C |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
114 public static final int ASTORE_2 = 77; // 0x4D |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
115 public static final int ASTORE_3 = 78; // 0x4E |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
116 public static final int IASTORE = 79; // 0x4F |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
117 public static final int LASTORE = 80; // 0x50 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
118 public static final int FASTORE = 81; // 0x51 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
119 public static final int DASTORE = 82; // 0x52 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
120 public static final int AASTORE = 83; // 0x53 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
121 public static final int BASTORE = 84; // 0x54 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
122 public static final int CASTORE = 85; // 0x55 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
123 public static final int SASTORE = 86; // 0x56 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
124 public static final int POP = 87; // 0x57 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
125 public static final int POP2 = 88; // 0x58 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
126 public static final int DUP = 89; // 0x59 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
127 public static final int DUP_X1 = 90; // 0x5A |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
128 public static final int DUP_X2 = 91; // 0x5B |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
129 public static final int DUP2 = 92; // 0x5C |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
130 public static final int DUP2_X1 = 93; // 0x5D |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
131 public static final int DUP2_X2 = 94; // 0x5E |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
132 public static final int SWAP = 95; // 0x5F |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
133 public static final int IADD = 96; // 0x60 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
134 public static final int LADD = 97; // 0x61 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
135 public static final int FADD = 98; // 0x62 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
136 public static final int DADD = 99; // 0x63 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
137 public static final int ISUB = 100; // 0x64 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
138 public static final int LSUB = 101; // 0x65 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
139 public static final int FSUB = 102; // 0x66 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
140 public static final int DSUB = 103; // 0x67 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
141 public static final int IMUL = 104; // 0x68 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
142 public static final int LMUL = 105; // 0x69 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
143 public static final int FMUL = 106; // 0x6A |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
144 public static final int DMUL = 107; // 0x6B |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
145 public static final int IDIV = 108; // 0x6C |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
146 public static final int LDIV = 109; // 0x6D |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
147 public static final int FDIV = 110; // 0x6E |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
148 public static final int DDIV = 111; // 0x6F |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
149 public static final int IREM = 112; // 0x70 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
150 public static final int LREM = 113; // 0x71 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
151 public static final int FREM = 114; // 0x72 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
152 public static final int DREM = 115; // 0x73 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
153 public static final int INEG = 116; // 0x74 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
154 public static final int LNEG = 117; // 0x75 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
155 public static final int FNEG = 118; // 0x76 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
156 public static final int DNEG = 119; // 0x77 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
157 public static final int ISHL = 120; // 0x78 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
158 public static final int LSHL = 121; // 0x79 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
159 public static final int ISHR = 122; // 0x7A |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
160 public static final int LSHR = 123; // 0x7B |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
161 public static final int IUSHR = 124; // 0x7C |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
162 public static final int LUSHR = 125; // 0x7D |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
163 public static final int IAND = 126; // 0x7E |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
164 public static final int LAND = 127; // 0x7F |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
165 public static final int IOR = 128; // 0x80 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
166 public static final int LOR = 129; // 0x81 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
167 public static final int IXOR = 130; // 0x82 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
168 public static final int LXOR = 131; // 0x83 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
169 public static final int IINC = 132; // 0x84 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
170 public static final int I2L = 133; // 0x85 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
171 public static final int I2F = 134; // 0x86 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
172 public static final int I2D = 135; // 0x87 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
173 public static final int L2I = 136; // 0x88 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
174 public static final int L2F = 137; // 0x89 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
175 public static final int L2D = 138; // 0x8A |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
176 public static final int F2I = 139; // 0x8B |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
177 public static final int F2L = 140; // 0x8C |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
178 public static final int F2D = 141; // 0x8D |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
179 public static final int D2I = 142; // 0x8E |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
180 public static final int D2L = 143; // 0x8F |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
181 public static final int D2F = 144; // 0x90 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
182 public static final int I2B = 145; // 0x91 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
183 public static final int I2C = 146; // 0x92 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
184 public static final int I2S = 147; // 0x93 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
185 public static final int LCMP = 148; // 0x94 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
186 public static final int FCMPL = 149; // 0x95 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
187 public static final int FCMPG = 150; // 0x96 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
188 public static final int DCMPL = 151; // 0x97 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
189 public static final int DCMPG = 152; // 0x98 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
190 public static final int IFEQ = 153; // 0x99 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
191 public static final int IFNE = 154; // 0x9A |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
192 public static final int IFLT = 155; // 0x9B |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
193 public static final int IFGE = 156; // 0x9C |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
194 public static final int IFGT = 157; // 0x9D |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
195 public static final int IFLE = 158; // 0x9E |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
196 public static final int IF_ICMPEQ = 159; // 0x9F |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
197 public static final int IF_ICMPNE = 160; // 0xA0 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
198 public static final int IF_ICMPLT = 161; // 0xA1 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
199 public static final int IF_ICMPGE = 162; // 0xA2 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
200 public static final int IF_ICMPGT = 163; // 0xA3 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
201 public static final int IF_ICMPLE = 164; // 0xA4 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
202 public static final int IF_ACMPEQ = 165; // 0xA5 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
203 public static final int IF_ACMPNE = 166; // 0xA6 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
204 public static final int GOTO = 167; // 0xA7 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
205 public static final int JSR = 168; // 0xA8 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
206 public static final int RET = 169; // 0xA9 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
207 public static final int TABLESWITCH = 170; // 0xAA |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
208 public static final int LOOKUPSWITCH = 171; // 0xAB |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
209 public static final int IRETURN = 172; // 0xAC |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
210 public static final int LRETURN = 173; // 0xAD |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
211 public static final int FRETURN = 174; // 0xAE |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
212 public static final int DRETURN = 175; // 0xAF |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
213 public static final int ARETURN = 176; // 0xB0 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
214 public static final int RETURN = 177; // 0xB1 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
215 public static final int GETSTATIC = 178; // 0xB2 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
216 public static final int PUTSTATIC = 179; // 0xB3 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
217 public static final int GETFIELD = 180; // 0xB4 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
218 public static final int PUTFIELD = 181; // 0xB5 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
219 public static final int INVOKEVIRTUAL = 182; // 0xB6 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
220 public static final int INVOKESPECIAL = 183; // 0xB7 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
221 public static final int INVOKESTATIC = 184; // 0xB8 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
222 public static final int INVOKEINTERFACE = 185; // 0xB9 |
7790
2c6d04c5e60f
Enable invokedynamic and make bytecode known to Graal.
Andreas Woess <andreas.woess@jku.at>
parents:
7530
diff
changeset
|
223 public static final int INVOKEDYNAMIC = 186; // 0xBA |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
224 public static final int NEW = 187; // 0xBB |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
225 public static final int NEWARRAY = 188; // 0xBC |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
226 public static final int ANEWARRAY = 189; // 0xBD |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
227 public static final int ARRAYLENGTH = 190; // 0xBE |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
228 public static final int ATHROW = 191; // 0xBF |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
229 public static final int CHECKCAST = 192; // 0xC0 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
230 public static final int INSTANCEOF = 193; // 0xC1 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
231 public static final int MONITORENTER = 194; // 0xC2 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
232 public static final int MONITOREXIT = 195; // 0xC3 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
233 public static final int WIDE = 196; // 0xC4 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
234 public static final int MULTIANEWARRAY = 197; // 0xC5 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
235 public static final int IFNULL = 198; // 0xC6 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
236 public static final int IFNONNULL = 199; // 0xC7 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
237 public static final int GOTO_W = 200; // 0xC8 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
238 public static final int JSR_W = 201; // 0xC9 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
239 public static final int BREAKPOINT = 202; // 0xCA |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
240 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
241 public static final int ILLEGAL = 255; |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
242 public static final int END = 256; |
7514
6bf569d50989
disabled auto-formatting of some code sections that use manual alignment
Doug Simon <doug.simon@oracle.com>
parents:
6461
diff
changeset
|
243 // @formatter:on |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
244 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
245 /** |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
246 * The last opcode defined by the JVM specification. To iterate over all JVM bytecodes: |
18228
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
247 * |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
248 * <pre> |
7530
5e3d1a68664e
applied mx eclipseformat to all Java files
Doug Simon <doug.simon@oracle.com>
parents:
7514
diff
changeset
|
249 * for (int opcode = 0; opcode <= Bytecodes.LAST_JVM_OPCODE; ++opcode) { |
5e3d1a68664e
applied mx eclipseformat to all Java files
Doug Simon <doug.simon@oracle.com>
parents:
7514
diff
changeset
|
250 * // |
5e3d1a68664e
applied mx eclipseformat to all Java files
Doug Simon <doug.simon@oracle.com>
parents:
7514
diff
changeset
|
251 * } |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
252 * </pre> |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
253 */ |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
254 public static final int LAST_JVM_OPCODE = JSR_W; |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
255 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
256 /** |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
257 * A collection of flags describing various bytecode attributes. |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
258 */ |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
259 static class Flags { |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
260 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
261 /** |
7530
5e3d1a68664e
applied mx eclipseformat to all Java files
Doug Simon <doug.simon@oracle.com>
parents:
7514
diff
changeset
|
262 * Denotes an instruction that ends a basic block and does not let control flow fall through |
5e3d1a68664e
applied mx eclipseformat to all Java files
Doug Simon <doug.simon@oracle.com>
parents:
7514
diff
changeset
|
263 * to its lexical successor. |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
264 */ |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
265 static final int STOP = 0x00000001; |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
266 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
267 /** |
7530
5e3d1a68664e
applied mx eclipseformat to all Java files
Doug Simon <doug.simon@oracle.com>
parents:
7514
diff
changeset
|
268 * Denotes an instruction that ends a basic block and may let control flow fall through to |
5e3d1a68664e
applied mx eclipseformat to all Java files
Doug Simon <doug.simon@oracle.com>
parents:
7514
diff
changeset
|
269 * its lexical successor. In practice this means it is a conditional branch. |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
270 */ |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
271 static final int FALL_THROUGH = 0x00000002; |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
272 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
273 /** |
7530
5e3d1a68664e
applied mx eclipseformat to all Java files
Doug Simon <doug.simon@oracle.com>
parents:
7514
diff
changeset
|
274 * Denotes an instruction that has a 2 or 4 byte operand that is an offset to another |
5e3d1a68664e
applied mx eclipseformat to all Java files
Doug Simon <doug.simon@oracle.com>
parents:
7514
diff
changeset
|
275 * instruction in the same method. This does not include the {@link Bytecodes#TABLESWITCH} |
5e3d1a68664e
applied mx eclipseformat to all Java files
Doug Simon <doug.simon@oracle.com>
parents:
7514
diff
changeset
|
276 * or {@link Bytecodes#LOOKUPSWITCH} instructions. |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
277 */ |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
278 static final int BRANCH = 0x00000004; |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
279 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
280 /** |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
281 * Denotes an instruction that reads the value of a static or instance field. |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
282 */ |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
283 static final int FIELD_READ = 0x00000008; |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
284 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
285 /** |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
286 * Denotes an instruction that writes the value of a static or instance field. |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
287 */ |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
288 static final int FIELD_WRITE = 0x00000010; |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
289 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
290 /** |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
291 * Denotes an instruction that can cause a trap. |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
292 */ |
7530
5e3d1a68664e
applied mx eclipseformat to all Java files
Doug Simon <doug.simon@oracle.com>
parents:
7514
diff
changeset
|
293 static final int TRAP = 0x00000080; |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
294 /** |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
295 * Denotes an instruction that is commutative. |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
296 */ |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
297 static final int COMMUTATIVE = 0x00000100; |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
298 /** |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
299 * Denotes an instruction that is associative. |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
300 */ |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
301 static final int ASSOCIATIVE = 0x00000200; |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
302 /** |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
303 * Denotes an instruction that loads an operand. |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
304 */ |
7530
5e3d1a68664e
applied mx eclipseformat to all Java files
Doug Simon <doug.simon@oracle.com>
parents:
7514
diff
changeset
|
305 static final int LOAD = 0x00000400; |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
306 /** |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
307 * Denotes an instruction that stores an operand. |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
308 */ |
7530
5e3d1a68664e
applied mx eclipseformat to all Java files
Doug Simon <doug.simon@oracle.com>
parents:
7514
diff
changeset
|
309 static final int STORE = 0x00000800; |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
310 /** |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
311 * Denotes the 4 INVOKE* instructions. |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
312 */ |
7530
5e3d1a68664e
applied mx eclipseformat to all Java files
Doug Simon <doug.simon@oracle.com>
parents:
7514
diff
changeset
|
313 static final int INVOKE = 0x00001000; |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
314 } |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
315 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
316 // Performs a sanity check that none of the flags overlap. |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
317 static { |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
318 int allFlags = 0; |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
319 try { |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
320 for (Field field : Flags.class.getDeclaredFields()) { |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
321 int flagsFilter = Modifier.FINAL | Modifier.STATIC; |
4684
e136f2d0d002
Activate jtt for the gate
Gilles Duboscq <duboscq@ssw.jku.at>
parents:
4594
diff
changeset
|
322 if ((field.getModifiers() & flagsFilter) == flagsFilter && !field.isSynthetic()) { |
e136f2d0d002
Activate jtt for the gate
Gilles Duboscq <duboscq@ssw.jku.at>
parents:
4594
diff
changeset
|
323 assert field.getType() == int.class : "Field is not int : " + field; |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
324 final int flag = field.getInt(null); |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
325 assert flag != 0; |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
326 assert (flag & allFlags) == 0 : field.getName() + " has a value conflicting with another flag"; |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
327 allFlags |= flag; |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
328 } |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
329 } |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
330 } catch (Exception e) { |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
331 throw new InternalError(e.toString()); |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
332 } |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
333 } |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
334 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
335 /** |
7530
5e3d1a68664e
applied mx eclipseformat to all Java files
Doug Simon <doug.simon@oracle.com>
parents:
7514
diff
changeset
|
336 * An array that maps from a bytecode value to a {@link String} for the corresponding |
21536
7fed589ff982
remove documentation about extended bytecodes
Doug Simon <doug.simon@oracle.com>
parents:
18228
diff
changeset
|
337 * instruction mnemonic. |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
338 */ |
4142
bc8527f3071c
Adjust code base to new level of warnings.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
3733
diff
changeset
|
339 private static final String[] nameArray = new String[256]; |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
340 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
341 /** |
7530
5e3d1a68664e
applied mx eclipseformat to all Java files
Doug Simon <doug.simon@oracle.com>
parents:
7514
diff
changeset
|
342 * An array that maps from a bytecode value to the set of {@link Flags} for the corresponding |
5e3d1a68664e
applied mx eclipseformat to all Java files
Doug Simon <doug.simon@oracle.com>
parents:
7514
diff
changeset
|
343 * instruction. |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
344 */ |
4142
bc8527f3071c
Adjust code base to new level of warnings.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
3733
diff
changeset
|
345 private static final int[] flagsArray = new int[256]; |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
346 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
347 /** |
7530
5e3d1a68664e
applied mx eclipseformat to all Java files
Doug Simon <doug.simon@oracle.com>
parents:
7514
diff
changeset
|
348 * An array that maps from a bytecode value to the length in bytes for the corresponding |
5e3d1a68664e
applied mx eclipseformat to all Java files
Doug Simon <doug.simon@oracle.com>
parents:
7514
diff
changeset
|
349 * instruction. |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
350 */ |
4142
bc8527f3071c
Adjust code base to new level of warnings.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
3733
diff
changeset
|
351 private static final int[] lengthArray = new int[256]; |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
352 |
18228
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
353 /** |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
354 * An array that maps from a bytecode value to the number of slots pushed on the stack by the |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
355 * corresponding instruction. |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
356 */ |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
357 private static final int[] stackEffectArray = new int[256]; |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
358 |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
359 // Checkstyle: stop |
7514
6bf569d50989
disabled auto-formatting of some code sections that use manual alignment
Doug Simon <doug.simon@oracle.com>
parents:
6461
diff
changeset
|
360 // @formatter:off |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
361 static { |
18228
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
362 def(NOP , "nop" , "b" , 0); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
363 def(ACONST_NULL , "aconst_null" , "b" , 1); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
364 def(ICONST_M1 , "iconst_m1" , "b" , 1); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
365 def(ICONST_0 , "iconst_0" , "b" , 1); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
366 def(ICONST_1 , "iconst_1" , "b" , 1); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
367 def(ICONST_2 , "iconst_2" , "b" , 1); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
368 def(ICONST_3 , "iconst_3" , "b" , 1); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
369 def(ICONST_4 , "iconst_4" , "b" , 1); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
370 def(ICONST_5 , "iconst_5" , "b" , 1); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
371 def(LCONST_0 , "lconst_0" , "b" , 2); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
372 def(LCONST_1 , "lconst_1" , "b" , 2); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
373 def(FCONST_0 , "fconst_0" , "b" , 1); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
374 def(FCONST_1 , "fconst_1" , "b" , 1); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
375 def(FCONST_2 , "fconst_2" , "b" , 1); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
376 def(DCONST_0 , "dconst_0" , "b" , 2); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
377 def(DCONST_1 , "dconst_1" , "b" , 2); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
378 def(BIPUSH , "bipush" , "bc" , 1); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
379 def(SIPUSH , "sipush" , "bcc" , 1); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
380 def(LDC , "ldc" , "bi" , 1, TRAP); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
381 def(LDC_W , "ldc_w" , "bii" , 1, TRAP); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
382 def(LDC2_W , "ldc2_w" , "bii" , 2, TRAP); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
383 def(ILOAD , "iload" , "bi" , 1, LOAD); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
384 def(LLOAD , "lload" , "bi" , 2, LOAD); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
385 def(FLOAD , "fload" , "bi" , 1, LOAD); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
386 def(DLOAD , "dload" , "bi" , 2, LOAD); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
387 def(ALOAD , "aload" , "bi" , 1, LOAD); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
388 def(ILOAD_0 , "iload_0" , "b" , 1, LOAD); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
389 def(ILOAD_1 , "iload_1" , "b" , 1, LOAD); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
390 def(ILOAD_2 , "iload_2" , "b" , 1, LOAD); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
391 def(ILOAD_3 , "iload_3" , "b" , 1, LOAD); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
392 def(LLOAD_0 , "lload_0" , "b" , 2, LOAD); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
393 def(LLOAD_1 , "lload_1" , "b" , 2, LOAD); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
394 def(LLOAD_2 , "lload_2" , "b" , 2, LOAD); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
395 def(LLOAD_3 , "lload_3" , "b" , 2, LOAD); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
396 def(FLOAD_0 , "fload_0" , "b" , 1, LOAD); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
397 def(FLOAD_1 , "fload_1" , "b" , 1, LOAD); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
398 def(FLOAD_2 , "fload_2" , "b" , 1, LOAD); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
399 def(FLOAD_3 , "fload_3" , "b" , 1, LOAD); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
400 def(DLOAD_0 , "dload_0" , "b" , 2, LOAD); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
401 def(DLOAD_1 , "dload_1" , "b" , 2, LOAD); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
402 def(DLOAD_2 , "dload_2" , "b" , 2, LOAD); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
403 def(DLOAD_3 , "dload_3" , "b" , 2, LOAD); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
404 def(ALOAD_0 , "aload_0" , "b" , 1, LOAD); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
405 def(ALOAD_1 , "aload_1" , "b" , 1, LOAD); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
406 def(ALOAD_2 , "aload_2" , "b" , 1, LOAD); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
407 def(ALOAD_3 , "aload_3" , "b" , 1, LOAD); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
408 def(IALOAD , "iaload" , "b" , -1, TRAP); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
409 def(LALOAD , "laload" , "b" , 0, TRAP); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
410 def(FALOAD , "faload" , "b" , -1, TRAP); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
411 def(DALOAD , "daload" , "b" , 0, TRAP); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
412 def(AALOAD , "aaload" , "b" , -1, TRAP); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
413 def(BALOAD , "baload" , "b" , -1, TRAP); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
414 def(CALOAD , "caload" , "b" , -1, TRAP); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
415 def(SALOAD , "saload" , "b" , -1, TRAP); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
416 def(ISTORE , "istore" , "bi" , -1, STORE); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
417 def(LSTORE , "lstore" , "bi" , -2, STORE); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
418 def(FSTORE , "fstore" , "bi" , -1, STORE); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
419 def(DSTORE , "dstore" , "bi" , -2, STORE); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
420 def(ASTORE , "astore" , "bi" , -1, STORE); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
421 def(ISTORE_0 , "istore_0" , "b" , -1, STORE); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
422 def(ISTORE_1 , "istore_1" , "b" , -1, STORE); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
423 def(ISTORE_2 , "istore_2" , "b" , -1, STORE); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
424 def(ISTORE_3 , "istore_3" , "b" , -1, STORE); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
425 def(LSTORE_0 , "lstore_0" , "b" , -2, STORE); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
426 def(LSTORE_1 , "lstore_1" , "b" , -2, STORE); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
427 def(LSTORE_2 , "lstore_2" , "b" , -2, STORE); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
428 def(LSTORE_3 , "lstore_3" , "b" , -2, STORE); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
429 def(FSTORE_0 , "fstore_0" , "b" , -1, STORE); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
430 def(FSTORE_1 , "fstore_1" , "b" , -1, STORE); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
431 def(FSTORE_2 , "fstore_2" , "b" , -1, STORE); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
432 def(FSTORE_3 , "fstore_3" , "b" , -1, STORE); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
433 def(DSTORE_0 , "dstore_0" , "b" , -2, STORE); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
434 def(DSTORE_1 , "dstore_1" , "b" , -2, STORE); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
435 def(DSTORE_2 , "dstore_2" , "b" , -2, STORE); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
436 def(DSTORE_3 , "dstore_3" , "b" , -2, STORE); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
437 def(ASTORE_0 , "astore_0" , "b" , -1, STORE); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
438 def(ASTORE_1 , "astore_1" , "b" , -1, STORE); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
439 def(ASTORE_2 , "astore_2" , "b" , -1, STORE); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
440 def(ASTORE_3 , "astore_3" , "b" , -1, STORE); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
441 def(IASTORE , "iastore" , "b" , -3, TRAP); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
442 def(LASTORE , "lastore" , "b" , -4, TRAP); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
443 def(FASTORE , "fastore" , "b" , -3, TRAP); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
444 def(DASTORE , "dastore" , "b" , -4, TRAP); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
445 def(AASTORE , "aastore" , "b" , -3, TRAP); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
446 def(BASTORE , "bastore" , "b" , -3, TRAP); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
447 def(CASTORE , "castore" , "b" , -3, TRAP); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
448 def(SASTORE , "sastore" , "b" , -3, TRAP); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
449 def(POP , "pop" , "b" , -1); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
450 def(POP2 , "pop2" , "b" , -2); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
451 def(DUP , "dup" , "b" , 1); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
452 def(DUP_X1 , "dup_x1" , "b" , 1); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
453 def(DUP_X2 , "dup_x2" , "b" , 1); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
454 def(DUP2 , "dup2" , "b" , 2); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
455 def(DUP2_X1 , "dup2_x1" , "b" , 2); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
456 def(DUP2_X2 , "dup2_x2" , "b" , 2); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
457 def(SWAP , "swap" , "b" , 0); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
458 def(IADD , "iadd" , "b" , -1, COMMUTATIVE | ASSOCIATIVE); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
459 def(LADD , "ladd" , "b" , -2, COMMUTATIVE | ASSOCIATIVE); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
460 def(FADD , "fadd" , "b" , -1, COMMUTATIVE | ASSOCIATIVE); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
461 def(DADD , "dadd" , "b" , -2, COMMUTATIVE | ASSOCIATIVE); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
462 def(ISUB , "isub" , "b" , -1); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
463 def(LSUB , "lsub" , "b" , -2); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
464 def(FSUB , "fsub" , "b" , -1); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
465 def(DSUB , "dsub" , "b" , -2); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
466 def(IMUL , "imul" , "b" , -1, COMMUTATIVE | ASSOCIATIVE); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
467 def(LMUL , "lmul" , "b" , -2, COMMUTATIVE | ASSOCIATIVE); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
468 def(FMUL , "fmul" , "b" , -1, COMMUTATIVE | ASSOCIATIVE); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
469 def(DMUL , "dmul" , "b" , -2, COMMUTATIVE | ASSOCIATIVE); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
470 def(IDIV , "idiv" , "b" , -1, TRAP); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
471 def(LDIV , "ldiv" , "b" , -2, TRAP); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
472 def(FDIV , "fdiv" , "b" , -1); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
473 def(DDIV , "ddiv" , "b" , -2); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
474 def(IREM , "irem" , "b" , -1, TRAP); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
475 def(LREM , "lrem" , "b" , -2, TRAP); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
476 def(FREM , "frem" , "b" , -1); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
477 def(DREM , "drem" , "b" , -2); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
478 def(INEG , "ineg" , "b" , 0); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
479 def(LNEG , "lneg" , "b" , 0); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
480 def(FNEG , "fneg" , "b" , 0); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
481 def(DNEG , "dneg" , "b" , 0); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
482 def(ISHL , "ishl" , "b" , -1); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
483 def(LSHL , "lshl" , "b" , -1); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
484 def(ISHR , "ishr" , "b" , -1); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
485 def(LSHR , "lshr" , "b" , -1); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
486 def(IUSHR , "iushr" , "b" , -1); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
487 def(LUSHR , "lushr" , "b" , -1); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
488 def(IAND , "iand" , "b" , -1, COMMUTATIVE | ASSOCIATIVE); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
489 def(LAND , "land" , "b" , -2, COMMUTATIVE | ASSOCIATIVE); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
490 def(IOR , "ior" , "b" , -1, COMMUTATIVE | ASSOCIATIVE); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
491 def(LOR , "lor" , "b" , -2, COMMUTATIVE | ASSOCIATIVE); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
492 def(IXOR , "ixor" , "b" , -1, COMMUTATIVE | ASSOCIATIVE); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
493 def(LXOR , "lxor" , "b" , -2, COMMUTATIVE | ASSOCIATIVE); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
494 def(IINC , "iinc" , "bic" , 0, LOAD | STORE); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
495 def(I2L , "i2l" , "b" , 1); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
496 def(I2F , "i2f" , "b" , 0); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
497 def(I2D , "i2d" , "b" , 1); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
498 def(L2I , "l2i" , "b" , -1); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
499 def(L2F , "l2f" , "b" , -1); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
500 def(L2D , "l2d" , "b" , 0); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
501 def(F2I , "f2i" , "b" , 0); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
502 def(F2L , "f2l" , "b" , 1); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
503 def(F2D , "f2d" , "b" , 1); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
504 def(D2I , "d2i" , "b" , -1); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
505 def(D2L , "d2l" , "b" , 0); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
506 def(D2F , "d2f" , "b" , -1); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
507 def(I2B , "i2b" , "b" , 0); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
508 def(I2C , "i2c" , "b" , 0); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
509 def(I2S , "i2s" , "b" , 0); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
510 def(LCMP , "lcmp" , "b" , -3); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
511 def(FCMPL , "fcmpl" , "b" , -1); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
512 def(FCMPG , "fcmpg" , "b" , -1); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
513 def(DCMPL , "dcmpl" , "b" , -3); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
514 def(DCMPG , "dcmpg" , "b" , -3); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
515 def(IFEQ , "ifeq" , "boo" , -1, FALL_THROUGH | BRANCH); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
516 def(IFNE , "ifne" , "boo" , -1, FALL_THROUGH | BRANCH); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
517 def(IFLT , "iflt" , "boo" , -1, FALL_THROUGH | BRANCH); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
518 def(IFGE , "ifge" , "boo" , -1, FALL_THROUGH | BRANCH); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
519 def(IFGT , "ifgt" , "boo" , -1, FALL_THROUGH | BRANCH); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
520 def(IFLE , "ifle" , "boo" , -1, FALL_THROUGH | BRANCH); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
521 def(IF_ICMPEQ , "if_icmpeq" , "boo" , -2, COMMUTATIVE | FALL_THROUGH | BRANCH); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
522 def(IF_ICMPNE , "if_icmpne" , "boo" , -2, COMMUTATIVE | FALL_THROUGH | BRANCH); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
523 def(IF_ICMPLT , "if_icmplt" , "boo" , -2, FALL_THROUGH | BRANCH); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
524 def(IF_ICMPGE , "if_icmpge" , "boo" , -2, FALL_THROUGH | BRANCH); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
525 def(IF_ICMPGT , "if_icmpgt" , "boo" , -2, FALL_THROUGH | BRANCH); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
526 def(IF_ICMPLE , "if_icmple" , "boo" , -2, FALL_THROUGH | BRANCH); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
527 def(IF_ACMPEQ , "if_acmpeq" , "boo" , -2, COMMUTATIVE | FALL_THROUGH | BRANCH); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
528 def(IF_ACMPNE , "if_acmpne" , "boo" , -2, COMMUTATIVE | FALL_THROUGH | BRANCH); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
529 def(GOTO , "goto" , "boo" , 0, STOP | BRANCH); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
530 def(JSR , "jsr" , "boo" , 0, STOP | BRANCH); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
531 def(RET , "ret" , "bi" , 0, STOP); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
532 def(TABLESWITCH , "tableswitch" , "" , -1, STOP); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
533 def(LOOKUPSWITCH , "lookupswitch" , "" , -1, STOP); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
534 def(IRETURN , "ireturn" , "b" , -1, TRAP | STOP); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
535 def(LRETURN , "lreturn" , "b" , -2, TRAP | STOP); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
536 def(FRETURN , "freturn" , "b" , -1, TRAP | STOP); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
537 def(DRETURN , "dreturn" , "b" , -2, TRAP | STOP); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
538 def(ARETURN , "areturn" , "b" , -1, TRAP | STOP); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
539 def(RETURN , "return" , "b" , 0, TRAP | STOP); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
540 def(GETSTATIC , "getstatic" , "bjj" , 1, TRAP | FIELD_READ); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
541 def(PUTSTATIC , "putstatic" , "bjj" , -1, TRAP | FIELD_WRITE); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
542 def(GETFIELD , "getfield" , "bjj" , 0, TRAP | FIELD_READ); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
543 def(PUTFIELD , "putfield" , "bjj" , -2, TRAP | FIELD_WRITE); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
544 def(INVOKEVIRTUAL , "invokevirtual" , "bjj" , -1, TRAP | INVOKE); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
545 def(INVOKESPECIAL , "invokespecial" , "bjj" , -1, TRAP | INVOKE); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
546 def(INVOKESTATIC , "invokestatic" , "bjj" , 0, TRAP | INVOKE); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
547 def(INVOKEINTERFACE , "invokeinterface" , "bjja_", -1, TRAP | INVOKE); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
548 def(INVOKEDYNAMIC , "invokedynamic" , "bjjjj", 0, TRAP | INVOKE); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
549 def(NEW , "new" , "bii" , 1, TRAP); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
550 def(NEWARRAY , "newarray" , "bc" , 0, TRAP); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
551 def(ANEWARRAY , "anewarray" , "bii" , 0, TRAP); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
552 def(ARRAYLENGTH , "arraylength" , "b" , 0, TRAP); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
553 def(ATHROW , "athrow" , "b" , -1, TRAP | STOP); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
554 def(CHECKCAST , "checkcast" , "bii" , 0, TRAP); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
555 def(INSTANCEOF , "instanceof" , "bii" , 0, TRAP); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
556 def(MONITORENTER , "monitorenter" , "b" , -1, TRAP); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
557 def(MONITOREXIT , "monitorexit" , "b" , -1, TRAP); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
558 def(WIDE , "wide" , "" , 0); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
559 def(MULTIANEWARRAY , "multianewarray" , "biic" , 1, TRAP); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
560 def(IFNULL , "ifnull" , "boo" , -1, FALL_THROUGH | BRANCH); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
561 def(IFNONNULL , "ifnonnull" , "boo" , -1, FALL_THROUGH | BRANCH); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
562 def(GOTO_W , "goto_w" , "boooo", 0, STOP | BRANCH); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
563 def(JSR_W , "jsr_w" , "boooo", 0, STOP | BRANCH); |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
564 def(BREAKPOINT , "breakpoint" , "b" , 0, TRAP); |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
565 } |
7514
6bf569d50989
disabled auto-formatting of some code sections that use manual alignment
Doug Simon <doug.simon@oracle.com>
parents:
6461
diff
changeset
|
566 // @formatter:on |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
567 // Checkstyle: resume |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
568 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
569 /** |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
570 * Determines if an opcode is commutative. |
18228
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
571 * |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
572 * @param opcode the opcode to check |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
573 * @return {@code true} iff commutative |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
574 */ |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
575 public static boolean isCommutative(int opcode) { |
4142
bc8527f3071c
Adjust code base to new level of warnings.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
3733
diff
changeset
|
576 return (flagsArray[opcode & 0xff] & COMMUTATIVE) != 0; |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
577 } |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
578 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
579 /** |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
580 * Gets the length of an instruction denoted by a given opcode. |
18228
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
581 * |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
582 * @param opcode an instruction opcode |
7530
5e3d1a68664e
applied mx eclipseformat to all Java files
Doug Simon <doug.simon@oracle.com>
parents:
7514
diff
changeset
|
583 * @return the length of the instruction denoted by {@code opcode}. If {@code opcode} is an |
5e3d1a68664e
applied mx eclipseformat to all Java files
Doug Simon <doug.simon@oracle.com>
parents:
7514
diff
changeset
|
584 * illegal instruction or denotes a variable length instruction (e.g. |
5e3d1a68664e
applied mx eclipseformat to all Java files
Doug Simon <doug.simon@oracle.com>
parents:
7514
diff
changeset
|
585 * {@link #TABLESWITCH}), then 0 is returned. |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
586 */ |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
587 public static int lengthOf(int opcode) { |
4142
bc8527f3071c
Adjust code base to new level of warnings.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
3733
diff
changeset
|
588 return lengthArray[opcode & 0xff]; |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
589 } |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
590 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
591 /** |
18228
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
592 * Gets the effect on the depth of the expression stack of an instruction denoted by a given |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
593 * opcode. |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
594 * |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
595 * @param opcode an instruction opcode |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
596 * @return the change in the stack caused by the instruction denoted by {@code opcode}. If |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
597 * {@code opcode} is an illegal instruction then 0 is returned. Note that invoke |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
598 * instructions may pop more arguments so this value is a minimum stack effect. |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
599 */ |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
600 public static int stackEffectOf(int opcode) { |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
601 return stackEffectArray[opcode & 0xff]; |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
602 } |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
603 |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
604 /** |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
605 * Gets the lower-case mnemonic for a given opcode. |
18228
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
606 * |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
607 * @param opcode an opcode |
7530
5e3d1a68664e
applied mx eclipseformat to all Java files
Doug Simon <doug.simon@oracle.com>
parents:
7514
diff
changeset
|
608 * @return the mnemonic for {@code opcode} or {@code "<illegal opcode: " + opcode + ">"} if |
5e3d1a68664e
applied mx eclipseformat to all Java files
Doug Simon <doug.simon@oracle.com>
parents:
7514
diff
changeset
|
609 * {@code opcode} is not a legal opcode |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
610 */ |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
611 public static String nameOf(int opcode) throws IllegalArgumentException { |
4142
bc8527f3071c
Adjust code base to new level of warnings.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
3733
diff
changeset
|
612 String name = nameArray[opcode & 0xff]; |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
613 if (name == null) { |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
614 return "<illegal opcode: " + opcode + ">"; |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
615 } |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
616 return name; |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
617 } |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
618 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
619 /** |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
620 * Allocation-free version of {@linkplain #nameOf(int)}. |
18228
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
621 * |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
622 * @param opcode an opcode. |
7530
5e3d1a68664e
applied mx eclipseformat to all Java files
Doug Simon <doug.simon@oracle.com>
parents:
7514
diff
changeset
|
623 * @return the mnemonic for {@code opcode} or {@code "<illegal opcode>"} if {@code opcode} is |
5e3d1a68664e
applied mx eclipseformat to all Java files
Doug Simon <doug.simon@oracle.com>
parents:
7514
diff
changeset
|
624 * not a legal opcode. |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
625 */ |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
626 public static String baseNameOf(int opcode) { |
4142
bc8527f3071c
Adjust code base to new level of warnings.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
3733
diff
changeset
|
627 String name = nameArray[opcode & 0xff]; |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
628 if (name == null) { |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
629 return "<illegal opcode>"; |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
630 } |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
631 return name; |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
632 } |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
633 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
634 /** |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
635 * Gets the opcode corresponding to a given mnemonic. |
18228
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
636 * |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
637 * @param name an opcode mnemonic |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
638 * @return the opcode corresponding to {@code mnemonic} |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
639 * @throws IllegalArgumentException if {@code name} does not denote a valid opcode |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
640 */ |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
641 public static int valueOf(String name) { |
4142
bc8527f3071c
Adjust code base to new level of warnings.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
3733
diff
changeset
|
642 for (int opcode = 0; opcode < nameArray.length; ++opcode) { |
bc8527f3071c
Adjust code base to new level of warnings.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
3733
diff
changeset
|
643 if (name.equalsIgnoreCase(nameArray[opcode])) { |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
644 return opcode; |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
645 } |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
646 } |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
647 throw new IllegalArgumentException("No opcode for " + name); |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
648 } |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
649 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
650 /** |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
651 * Determines if a given opcode denotes an instruction that can cause an implicit exception. |
18228
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
652 * |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
653 * @param opcode an opcode to test |
7530
5e3d1a68664e
applied mx eclipseformat to all Java files
Doug Simon <doug.simon@oracle.com>
parents:
7514
diff
changeset
|
654 * @return {@code true} iff {@code opcode} can cause an implicit exception, {@code false} |
5e3d1a68664e
applied mx eclipseformat to all Java files
Doug Simon <doug.simon@oracle.com>
parents:
7514
diff
changeset
|
655 * otherwise |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
656 */ |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
657 public static boolean canTrap(int opcode) { |
4142
bc8527f3071c
Adjust code base to new level of warnings.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
3733
diff
changeset
|
658 return (flagsArray[opcode & 0xff] & TRAP) != 0; |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
659 } |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
660 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
661 /** |
7530
5e3d1a68664e
applied mx eclipseformat to all Java files
Doug Simon <doug.simon@oracle.com>
parents:
7514
diff
changeset
|
662 * Determines if a given opcode denotes an instruction that loads a local variable to the |
5e3d1a68664e
applied mx eclipseformat to all Java files
Doug Simon <doug.simon@oracle.com>
parents:
7514
diff
changeset
|
663 * operand stack. |
18228
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
664 * |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
665 * @param opcode an opcode to test |
7530
5e3d1a68664e
applied mx eclipseformat to all Java files
Doug Simon <doug.simon@oracle.com>
parents:
7514
diff
changeset
|
666 * @return {@code true} iff {@code opcode} loads a local variable to the operand stack, |
5e3d1a68664e
applied mx eclipseformat to all Java files
Doug Simon <doug.simon@oracle.com>
parents:
7514
diff
changeset
|
667 * {@code false} otherwise |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
668 */ |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
669 public static boolean isLoad(int opcode) { |
4142
bc8527f3071c
Adjust code base to new level of warnings.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
3733
diff
changeset
|
670 return (flagsArray[opcode & 0xff] & LOAD) != 0; |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
671 } |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
672 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
673 /** |
7530
5e3d1a68664e
applied mx eclipseformat to all Java files
Doug Simon <doug.simon@oracle.com>
parents:
7514
diff
changeset
|
674 * Determines if a given opcode denotes an instruction that ends a basic block and does not let |
5e3d1a68664e
applied mx eclipseformat to all Java files
Doug Simon <doug.simon@oracle.com>
parents:
7514
diff
changeset
|
675 * control flow fall through to its lexical successor. |
18228
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
676 * |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
677 * @param opcode an opcode to test |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
678 * @return {@code true} iff {@code opcode} properly ends a basic block |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
679 */ |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
680 public static boolean isStop(int opcode) { |
4142
bc8527f3071c
Adjust code base to new level of warnings.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
3733
diff
changeset
|
681 return (flagsArray[opcode & 0xff] & STOP) != 0; |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
682 } |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
683 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
684 /** |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
685 * Determines if a given opcode denotes an instruction that stores a value to a local variable |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
686 * after popping it from the operand stack. |
18228
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
687 * |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
688 * @param opcode an opcode to test |
7530
5e3d1a68664e
applied mx eclipseformat to all Java files
Doug Simon <doug.simon@oracle.com>
parents:
7514
diff
changeset
|
689 * @return {@code true} iff {@code opcode} stores a value to a local variable, {@code false} |
5e3d1a68664e
applied mx eclipseformat to all Java files
Doug Simon <doug.simon@oracle.com>
parents:
7514
diff
changeset
|
690 * otherwise |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
691 */ |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
692 public static boolean isInvoke(int opcode) { |
4142
bc8527f3071c
Adjust code base to new level of warnings.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
3733
diff
changeset
|
693 return (flagsArray[opcode & 0xff] & INVOKE) != 0; |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
694 } |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
695 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
696 /** |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
697 * Determines if a given opcode denotes an instruction that stores a value to a local variable |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
698 * after popping it from the operand stack. |
18228
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
699 * |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
700 * @param opcode an opcode to test |
7530
5e3d1a68664e
applied mx eclipseformat to all Java files
Doug Simon <doug.simon@oracle.com>
parents:
7514
diff
changeset
|
701 * @return {@code true} iff {@code opcode} stores a value to a local variable, {@code false} |
5e3d1a68664e
applied mx eclipseformat to all Java files
Doug Simon <doug.simon@oracle.com>
parents:
7514
diff
changeset
|
702 * otherwise |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
703 */ |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
704 public static boolean isStore(int opcode) { |
4142
bc8527f3071c
Adjust code base to new level of warnings.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
3733
diff
changeset
|
705 return (flagsArray[opcode & 0xff] & STORE) != 0; |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
706 } |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
707 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
708 /** |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
709 * Determines if a given opcode is an instruction that delimits a basic block. |
18228
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
710 * |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
711 * @param opcode an opcode to test |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
712 * @return {@code true} iff {@code opcode} delimits a basic block |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
713 */ |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
714 public static boolean isBlockEnd(int opcode) { |
4142
bc8527f3071c
Adjust code base to new level of warnings.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
3733
diff
changeset
|
715 return (flagsArray[opcode & 0xff] & (STOP | FALL_THROUGH)) != 0; |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
716 } |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
717 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
718 /** |
7530
5e3d1a68664e
applied mx eclipseformat to all Java files
Doug Simon <doug.simon@oracle.com>
parents:
7514
diff
changeset
|
719 * Determines if a given opcode is an instruction that has a 2 or 4 byte operand that is an |
5e3d1a68664e
applied mx eclipseformat to all Java files
Doug Simon <doug.simon@oracle.com>
parents:
7514
diff
changeset
|
720 * offset to another instruction in the same method. This does not include the |
5e3d1a68664e
applied mx eclipseformat to all Java files
Doug Simon <doug.simon@oracle.com>
parents:
7514
diff
changeset
|
721 * {@linkplain #TABLESWITCH switch} instructions. |
18228
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
722 * |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
723 * @param opcode an opcode to test |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
724 * @return {@code true} iff {@code opcode} is a branch instruction with a single operand |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
725 */ |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
726 public static boolean isBranch(int opcode) { |
4142
bc8527f3071c
Adjust code base to new level of warnings.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
3733
diff
changeset
|
727 return (flagsArray[opcode & 0xff] & BRANCH) != 0; |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
728 } |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
729 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
730 /** |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
731 * Determines if a given opcode denotes a conditional branch. |
18228
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
732 * |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
733 * @param opcode |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
734 * @return {@code true} iff {@code opcode} is a conditional branch |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
735 */ |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
736 public static boolean isConditionalBranch(int opcode) { |
4142
bc8527f3071c
Adjust code base to new level of warnings.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
3733
diff
changeset
|
737 return (flagsArray[opcode & 0xff] & FALL_THROUGH) != 0; |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
738 } |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
739 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
740 /** |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
741 * Gets the arithmetic operator name for a given opcode. If {@code opcode} does not denote an |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
742 * arithmetic instruction, then the {@linkplain #nameOf(int) name} of the opcode is returned |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
743 * instead. |
18228
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
744 * |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
745 * @param op an opcode |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
746 * @return the arithmetic operator name |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
747 */ |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
748 public static String operator(int op) { |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
749 // Checkstyle: stop |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
750 switch (op) { |
7530
5e3d1a68664e
applied mx eclipseformat to all Java files
Doug Simon <doug.simon@oracle.com>
parents:
7514
diff
changeset
|
751 // arithmetic ops |
5e3d1a68664e
applied mx eclipseformat to all Java files
Doug Simon <doug.simon@oracle.com>
parents:
7514
diff
changeset
|
752 case IADD: // fall through |
5e3d1a68664e
applied mx eclipseformat to all Java files
Doug Simon <doug.simon@oracle.com>
parents:
7514
diff
changeset
|
753 case LADD: // fall through |
5e3d1a68664e
applied mx eclipseformat to all Java files
Doug Simon <doug.simon@oracle.com>
parents:
7514
diff
changeset
|
754 case FADD: // fall through |
5e3d1a68664e
applied mx eclipseformat to all Java files
Doug Simon <doug.simon@oracle.com>
parents:
7514
diff
changeset
|
755 case DADD: |
5e3d1a68664e
applied mx eclipseformat to all Java files
Doug Simon <doug.simon@oracle.com>
parents:
7514
diff
changeset
|
756 return "+"; |
5e3d1a68664e
applied mx eclipseformat to all Java files
Doug Simon <doug.simon@oracle.com>
parents:
7514
diff
changeset
|
757 case ISUB: // fall through |
5e3d1a68664e
applied mx eclipseformat to all Java files
Doug Simon <doug.simon@oracle.com>
parents:
7514
diff
changeset
|
758 case LSUB: // fall through |
5e3d1a68664e
applied mx eclipseformat to all Java files
Doug Simon <doug.simon@oracle.com>
parents:
7514
diff
changeset
|
759 case FSUB: // fall through |
5e3d1a68664e
applied mx eclipseformat to all Java files
Doug Simon <doug.simon@oracle.com>
parents:
7514
diff
changeset
|
760 case DSUB: |
5e3d1a68664e
applied mx eclipseformat to all Java files
Doug Simon <doug.simon@oracle.com>
parents:
7514
diff
changeset
|
761 return "-"; |
5e3d1a68664e
applied mx eclipseformat to all Java files
Doug Simon <doug.simon@oracle.com>
parents:
7514
diff
changeset
|
762 case IMUL: // fall through |
5e3d1a68664e
applied mx eclipseformat to all Java files
Doug Simon <doug.simon@oracle.com>
parents:
7514
diff
changeset
|
763 case LMUL: // fall through |
5e3d1a68664e
applied mx eclipseformat to all Java files
Doug Simon <doug.simon@oracle.com>
parents:
7514
diff
changeset
|
764 case FMUL: // fall through |
5e3d1a68664e
applied mx eclipseformat to all Java files
Doug Simon <doug.simon@oracle.com>
parents:
7514
diff
changeset
|
765 case DMUL: |
5e3d1a68664e
applied mx eclipseformat to all Java files
Doug Simon <doug.simon@oracle.com>
parents:
7514
diff
changeset
|
766 return "*"; |
5e3d1a68664e
applied mx eclipseformat to all Java files
Doug Simon <doug.simon@oracle.com>
parents:
7514
diff
changeset
|
767 case IDIV: // fall through |
5e3d1a68664e
applied mx eclipseformat to all Java files
Doug Simon <doug.simon@oracle.com>
parents:
7514
diff
changeset
|
768 case LDIV: // fall through |
5e3d1a68664e
applied mx eclipseformat to all Java files
Doug Simon <doug.simon@oracle.com>
parents:
7514
diff
changeset
|
769 case FDIV: // fall through |
5e3d1a68664e
applied mx eclipseformat to all Java files
Doug Simon <doug.simon@oracle.com>
parents:
7514
diff
changeset
|
770 case DDIV: |
5e3d1a68664e
applied mx eclipseformat to all Java files
Doug Simon <doug.simon@oracle.com>
parents:
7514
diff
changeset
|
771 return "/"; |
5e3d1a68664e
applied mx eclipseformat to all Java files
Doug Simon <doug.simon@oracle.com>
parents:
7514
diff
changeset
|
772 case IREM: // fall through |
5e3d1a68664e
applied mx eclipseformat to all Java files
Doug Simon <doug.simon@oracle.com>
parents:
7514
diff
changeset
|
773 case LREM: // fall through |
5e3d1a68664e
applied mx eclipseformat to all Java files
Doug Simon <doug.simon@oracle.com>
parents:
7514
diff
changeset
|
774 case FREM: // fall through |
5e3d1a68664e
applied mx eclipseformat to all Java files
Doug Simon <doug.simon@oracle.com>
parents:
7514
diff
changeset
|
775 case DREM: |
5e3d1a68664e
applied mx eclipseformat to all Java files
Doug Simon <doug.simon@oracle.com>
parents:
7514
diff
changeset
|
776 return "%"; |
5e3d1a68664e
applied mx eclipseformat to all Java files
Doug Simon <doug.simon@oracle.com>
parents:
7514
diff
changeset
|
777 // shift ops |
5e3d1a68664e
applied mx eclipseformat to all Java files
Doug Simon <doug.simon@oracle.com>
parents:
7514
diff
changeset
|
778 case ISHL: // fall through |
5e3d1a68664e
applied mx eclipseformat to all Java files
Doug Simon <doug.simon@oracle.com>
parents:
7514
diff
changeset
|
779 case LSHL: |
5e3d1a68664e
applied mx eclipseformat to all Java files
Doug Simon <doug.simon@oracle.com>
parents:
7514
diff
changeset
|
780 return "<<"; |
5e3d1a68664e
applied mx eclipseformat to all Java files
Doug Simon <doug.simon@oracle.com>
parents:
7514
diff
changeset
|
781 case ISHR: // fall through |
5e3d1a68664e
applied mx eclipseformat to all Java files
Doug Simon <doug.simon@oracle.com>
parents:
7514
diff
changeset
|
782 case LSHR: |
5e3d1a68664e
applied mx eclipseformat to all Java files
Doug Simon <doug.simon@oracle.com>
parents:
7514
diff
changeset
|
783 return ">>"; |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
784 case IUSHR: // fall through |
7530
5e3d1a68664e
applied mx eclipseformat to all Java files
Doug Simon <doug.simon@oracle.com>
parents:
7514
diff
changeset
|
785 case LUSHR: |
5e3d1a68664e
applied mx eclipseformat to all Java files
Doug Simon <doug.simon@oracle.com>
parents:
7514
diff
changeset
|
786 return ">>>"; |
5e3d1a68664e
applied mx eclipseformat to all Java files
Doug Simon <doug.simon@oracle.com>
parents:
7514
diff
changeset
|
787 // logic ops |
5e3d1a68664e
applied mx eclipseformat to all Java files
Doug Simon <doug.simon@oracle.com>
parents:
7514
diff
changeset
|
788 case IAND: // fall through |
5e3d1a68664e
applied mx eclipseformat to all Java files
Doug Simon <doug.simon@oracle.com>
parents:
7514
diff
changeset
|
789 case LAND: |
5e3d1a68664e
applied mx eclipseformat to all Java files
Doug Simon <doug.simon@oracle.com>
parents:
7514
diff
changeset
|
790 return "&"; |
5e3d1a68664e
applied mx eclipseformat to all Java files
Doug Simon <doug.simon@oracle.com>
parents:
7514
diff
changeset
|
791 case IOR: // fall through |
5e3d1a68664e
applied mx eclipseformat to all Java files
Doug Simon <doug.simon@oracle.com>
parents:
7514
diff
changeset
|
792 case LOR: |
5e3d1a68664e
applied mx eclipseformat to all Java files
Doug Simon <doug.simon@oracle.com>
parents:
7514
diff
changeset
|
793 return "|"; |
5e3d1a68664e
applied mx eclipseformat to all Java files
Doug Simon <doug.simon@oracle.com>
parents:
7514
diff
changeset
|
794 case IXOR: // fall through |
5e3d1a68664e
applied mx eclipseformat to all Java files
Doug Simon <doug.simon@oracle.com>
parents:
7514
diff
changeset
|
795 case LXOR: |
5e3d1a68664e
applied mx eclipseformat to all Java files
Doug Simon <doug.simon@oracle.com>
parents:
7514
diff
changeset
|
796 return "^"; |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
797 } |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
798 // Checkstyle: resume |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
799 return nameOf(op); |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
800 } |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
801 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
802 /** |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
803 * Defines a bytecode by entering it into the arrays that record its name, length and flags. |
18228
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
804 * |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
805 * @param name instruction name (should be lower case) |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
806 * @param format encodes the length of the instruction |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
807 */ |
18228
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
808 private static void def(int opcode, String name, String format, int stackEffect) { |
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
809 def(opcode, name, format, stackEffect, 0); |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
810 } |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
811 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
812 /** |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
813 * Defines a bytecode by entering it into the arrays that record its name, length and flags. |
18228
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
814 * |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
815 * @param name instruction name (lower case) |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
816 * @param format encodes the length of the instruction |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
817 * @param flags the set of {@link Flags} associated with the instruction |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
818 */ |
18228
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
819 private static void def(int opcode, String name, String format, int stackEffect, int flags) { |
4142
bc8527f3071c
Adjust code base to new level of warnings.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
3733
diff
changeset
|
820 assert nameArray[opcode] == null : "opcode " + opcode + " is already bound to name " + nameArray[opcode]; |
bc8527f3071c
Adjust code base to new level of warnings.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
3733
diff
changeset
|
821 nameArray[opcode] = name; |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
822 int instructionLength = format.length(); |
4142
bc8527f3071c
Adjust code base to new level of warnings.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
3733
diff
changeset
|
823 lengthArray[opcode] = instructionLength; |
18228
ab489bac3bc8
Correct the bci used by stateDuring in ForeignCallNode
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
9699
diff
changeset
|
824 stackEffectArray[opcode] = stackEffect; |
4142
bc8527f3071c
Adjust code base to new level of warnings.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
3733
diff
changeset
|
825 Bytecodes.flagsArray[opcode] = flags; |
3733
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
826 |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
827 assert !isConditionalBranch(opcode) || isBranch(opcode) : "a conditional branch must also be a branch"; |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
828 } |
e233f5660da4
Added Java files from Maxine project.
Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
parents:
diff
changeset
|
829 } |