Mercurial > hg > truffle
comparison agent/src/share/classes/sun/jvm/hotspot/ui/classbrowser/HTMLGenerator.java @ 2011:dad31fc330cd
7001379: bootstrap method data needs to be moved from constant pool to a classfile attribute
Reviewed-by: twisti
author | jrose |
---|---|
date | Fri, 03 Dec 2010 15:53:57 -0800 |
parents | 3b2dea75431e |
children | 3da13a976363 |
comparison
equal
deleted
inserted
replaced
2010:7601ab0e1e33 | 2011:dad31fc330cd |
---|---|
458 buf.append(" #"); | 458 buf.append(" #"); |
459 buf.append(Integer.toString((val >> 16) & 0xFFFF)); | 459 buf.append(Integer.toString((val >> 16) & 0xFFFF)); |
460 return buf.toString(); | 460 return buf.toString(); |
461 } | 461 } |
462 | 462 |
463 private String genListOfShort(int[] values) { | 463 private String genListOfShort(short[] values) { |
464 if (values == null || values.length == 0) return ""; | |
464 Formatter buf = new Formatter(genHTML); | 465 Formatter buf = new Formatter(genHTML); |
465 buf.append('['); | 466 buf.append('['); |
466 for (int i = 0; i < values.length; i++) { | 467 for (int i = 0; i < values.length; i++) { |
467 if (i > 0) buf.append(' '); | 468 if (i > 0) buf.append(' '); |
468 buf.append('#'); | 469 buf.append('#'); |
592 case JVM_CONSTANT_MethodType: | 593 case JVM_CONSTANT_MethodType: |
593 buf.cell("JVM_CONSTANT_MethodType"); | 594 buf.cell("JVM_CONSTANT_MethodType"); |
594 buf.cell(Integer.toString(cpool.getIntAt(index))); | 595 buf.cell(Integer.toString(cpool.getIntAt(index))); |
595 break; | 596 break; |
596 | 597 |
598 case JVM_CONSTANT_InvokeDynamicTrans: | |
597 case JVM_CONSTANT_InvokeDynamic: | 599 case JVM_CONSTANT_InvokeDynamic: |
598 buf.cell("JVM_CONSTANT_InvokeDynamic"); | 600 buf.cell("JVM_CONSTANT_InvokeDynamic"); |
599 buf.cell(genListOfShort(cpool.getMultiOperandsAt(index))); | 601 buf.cell(genLowHighShort(cpool.getIntAt(index)) + |
602 genListOfShort(cpool.getBootstrapSpecifierAt(index))); | |
600 break; | 603 break; |
601 | 604 |
602 default: | 605 default: |
603 throw new InternalError("unknown tag: " + ctag); | 606 throw new InternalError("unknown tag: " + ctag); |
604 } | 607 } |