185 this.name(),
186 type.name());
187 throw new Error(msg);
188 }
189 }
190 }
191
192 public static interface Validator {
193 void validate(jdk.vm.ci.meta.ConstantPool constantPoolCTVM,
194 ConstantTypes cpType,
195 DummyClasses dummyClass,
196 int index);
197 }
198
199 public static class TestedCPEntry {
200 public final String klass;
201 public final String name;
202 public final String type;
203 public final ResolvedJavaMethod[] methods;
204 public final byte[] opcodes;
205 public final long accFlags;
206
207 public TestedCPEntry(String klass, String name, String type, byte[] opcodes, long accFlags) {
208 this(klass, name, type, null, opcodes, accFlags);
209 }
210
211 public TestedCPEntry(String klass, String name, String type, ResolvedJavaMethod[] methods, byte[] opcodes, long accFlags) {
212 this.klass = klass;
213 this.name = name;
214 this.type = type;
215 if (methods != null) {
216 this.methods = new ResolvedJavaMethod[methods.length];
217 System.arraycopy(methods, 0, this.methods, 0, methods.length);
218 } else {
219 this.methods = null;
220 }
221 if (opcodes != null) {
222 this.opcodes = new byte[opcodes.length];
223 System.arraycopy(opcodes, 0, this.opcodes, 0, opcodes.length);
224 } else {
225 this.opcodes = null;
226 }
227 this.accFlags = accFlags;
228 }
229
230 public TestedCPEntry(String klass, String name, String type, byte[] opcodes) {
231 this(klass, name, type, opcodes, 0);
|
185 this.name(),
186 type.name());
187 throw new Error(msg);
188 }
189 }
190 }
191
192 public static interface Validator {
193 void validate(jdk.vm.ci.meta.ConstantPool constantPoolCTVM,
194 ConstantTypes cpType,
195 DummyClasses dummyClass,
196 int index);
197 }
198
199 public static class TestedCPEntry {
200 public final String klass;
201 public final String name;
202 public final String type;
203 public final ResolvedJavaMethod[] methods;
204 public final byte[] opcodes;
205 public final int accFlags;
206
207 public TestedCPEntry(String klass, String name, String type, byte[] opcodes, int accFlags) {
208 this(klass, name, type, null, opcodes, accFlags);
209 }
210
211 public TestedCPEntry(String klass, String name, String type, ResolvedJavaMethod[] methods, byte[] opcodes, int accFlags) {
212 this.klass = klass;
213 this.name = name;
214 this.type = type;
215 if (methods != null) {
216 this.methods = new ResolvedJavaMethod[methods.length];
217 System.arraycopy(methods, 0, this.methods, 0, methods.length);
218 } else {
219 this.methods = null;
220 }
221 if (opcodes != null) {
222 this.opcodes = new byte[opcodes.length];
223 System.arraycopy(opcodes, 0, this.opcodes, 0, opcodes.length);
224 } else {
225 this.opcodes = null;
226 }
227 this.accFlags = accFlags;
228 }
229
230 public TestedCPEntry(String klass, String name, String type, byte[] opcodes) {
231 this(klass, name, type, opcodes, 0);
|