comparison agent/src/share/classes/sun/jvm/hotspot/interpreter/BytecodeLoadConstant.java @ 3904:2090c623107e

7016881: JSR 292: JDI: sun.jvm.hotspot.utilities.AssertionFailure: index out of bounds Reviewed-by: kvn, twisti
author never
date Fri, 02 Sep 2011 22:00:49 -0700
parents 6a991dcb52bb
children da91efe96a93
comparison
equal deleted inserted replaced
3903:2f9b79ddb05c 3904:2090c623107e
88 int jcode = javaCode(); 88 int jcode = javaCode();
89 boolean codeOk = jcode == Bytecodes._ldc || jcode == Bytecodes._ldc_w || 89 boolean codeOk = jcode == Bytecodes._ldc || jcode == Bytecodes._ldc_w ||
90 jcode == Bytecodes._ldc2_w; 90 jcode == Bytecodes._ldc2_w;
91 if (! codeOk) return false; 91 if (! codeOk) return false;
92 92
93 ConstantTag ctag = method().getConstants().getTagAt(rawIndex()); 93 ConstantTag ctag = method().getConstants().getTagAt(poolIndex());
94 if (jcode == Bytecodes._ldc2_w) { 94 if (jcode == Bytecodes._ldc2_w) {
95 // has to be double or long 95 // has to be double or long
96 return (ctag.isDouble() || ctag.isLong()) ? true: false; 96 return (ctag.isDouble() || ctag.isLong()) ? true: false;
97 } else { 97 } else {
98 // has to be int or float or String or Klass 98 // has to be int or float or String or Klass