Mercurial > hg > truffle
comparison agent/src/share/classes/sun/jvm/hotspot/oops/ConstMethod.java @ 7402:fd74228fd5ca
8004076: Move _max_locals and _size_of_parameters to ConstMethod for better sharing.
Summary: Move _max_locals and _size_of_parameters to ConstMethod for better sharing.
Reviewed-by: coleenp, minqi, jrose
author | jiangli |
---|---|
date | Tue, 11 Dec 2012 12:41:31 -0500 |
parents | b2dbd323c668 |
children | 927a311d00f9 |
comparison
equal
deleted
inserted
replaced
7396:4a2ed49abd51 | 7402:fd74228fd5ca |
---|---|
67 codeSize = new CIntField(type.getCIntegerField("_code_size"), 0); | 67 codeSize = new CIntField(type.getCIntegerField("_code_size"), 0); |
68 nameIndex = new CIntField(type.getCIntegerField("_name_index"), 0); | 68 nameIndex = new CIntField(type.getCIntegerField("_name_index"), 0); |
69 signatureIndex = new CIntField(type.getCIntegerField("_signature_index"), 0); | 69 signatureIndex = new CIntField(type.getCIntegerField("_signature_index"), 0); |
70 idnum = new CIntField(type.getCIntegerField("_method_idnum"), 0); | 70 idnum = new CIntField(type.getCIntegerField("_method_idnum"), 0); |
71 maxStack = new CIntField(type.getCIntegerField("_max_stack"), 0); | 71 maxStack = new CIntField(type.getCIntegerField("_max_stack"), 0); |
72 maxLocals = new CIntField(type.getCIntegerField("_max_locals"), 0); | |
73 sizeOfParameters = new CIntField(type.getCIntegerField("_size_of_parameters"), 0); | |
72 | 74 |
73 // start of byte code | 75 // start of byte code |
74 bytecodeOffset = type.getSize(); | 76 bytecodeOffset = type.getSize(); |
75 | 77 |
76 type = db.lookupType("CheckedExceptionElement"); | 78 type = db.lookupType("CheckedExceptionElement"); |
94 private static CIntField codeSize; | 96 private static CIntField codeSize; |
95 private static CIntField nameIndex; | 97 private static CIntField nameIndex; |
96 private static CIntField signatureIndex; | 98 private static CIntField signatureIndex; |
97 private static CIntField idnum; | 99 private static CIntField idnum; |
98 private static CIntField maxStack; | 100 private static CIntField maxStack; |
101 private static CIntField maxLocals; | |
102 private static CIntField sizeOfParameters; | |
99 | 103 |
100 // start of bytecode | 104 // start of bytecode |
101 private static long bytecodeOffset; | 105 private static long bytecodeOffset; |
102 | 106 |
103 private static long checkedExceptionElementSize; | 107 private static long checkedExceptionElementSize; |
147 return idnum.getValue(this); | 151 return idnum.getValue(this); |
148 } | 152 } |
149 | 153 |
150 public long getMaxStack() { | 154 public long getMaxStack() { |
151 return maxStack.getValue(this); | 155 return maxStack.getValue(this); |
156 } | |
157 | |
158 public long getMaxLocals() { | |
159 return maxLocals.getValue(this); | |
160 } | |
161 | |
162 public long getSizeOfParameters() { | |
163 return sizeOfParameters.getValue(this); | |
152 } | 164 } |
153 | 165 |
154 public Symbol getName() { | 166 public Symbol getName() { |
155 return getMethod().getName(); | 167 return getMethod().getName(); |
156 } | 168 } |
245 visitor.doCInt(codeSize, true); | 257 visitor.doCInt(codeSize, true); |
246 visitor.doCInt(nameIndex, true); | 258 visitor.doCInt(nameIndex, true); |
247 visitor.doCInt(signatureIndex, true); | 259 visitor.doCInt(signatureIndex, true); |
248 visitor.doCInt(codeSize, true); | 260 visitor.doCInt(codeSize, true); |
249 visitor.doCInt(maxStack, true); | 261 visitor.doCInt(maxStack, true); |
262 visitor.doCInt(maxLocals, true); | |
263 visitor.doCInt(sizeOfParameters, true); | |
250 } | 264 } |
251 | 265 |
252 // Accessors | 266 // Accessors |
253 | 267 |
254 public boolean hasLineNumberTable() { | 268 public boolean hasLineNumberTable() { |