agent/src/share/classes/sun/jvm/hotspot/ui/classbrowser/HTMLGenerator.java
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File hotspot Cdiff agent/src/share/classes/sun/jvm/hotspot/ui/classbrowser/HTMLGenerator.java

agent/src/share/classes/sun/jvm/hotspot/ui/classbrowser/HTMLGenerator.java

Print this page

        

*** 29,43 **** import sun.jvm.hotspot.asm.*; import sun.jvm.hotspot.code.*; import sun.jvm.hotspot.compiler.*; import sun.jvm.hotspot.debugger.*; import sun.jvm.hotspot.interpreter.*; - import sun.jvm.hotspot.memory.*; import sun.jvm.hotspot.oops.*; import sun.jvm.hotspot.runtime.*; import sun.jvm.hotspot.tools.jcore.*; - import sun.jvm.hotspot.types.*; import sun.jvm.hotspot.utilities.*; public class HTMLGenerator implements /* imports */ ClassConstants { static class Formatter { boolean html; --- 29,41 ----
*** 885,895 **** class HTMLDisassembler implements InstructionVisitor { private int instrSize = 0; private Formatter buf; private SymbolFinder symFinder = createSymbolFinder(); private long pc; ! private OopMapSet oms; private CodeBlob blob; private NMethod nmethod; HTMLDisassembler(Formatter buf, CodeBlob blob) { this.buf = buf; --- 883,893 ---- class HTMLDisassembler implements InstructionVisitor { private int instrSize = 0; private Formatter buf; private SymbolFinder symFinder = createSymbolFinder(); private long pc; ! private ImmutableOopMapSet oms; private CodeBlob blob; private NMethod nmethod; HTMLDisassembler(Formatter buf, CodeBlob blob) { this.buf = buf;
*** 952,968 **** } } if (oms != null) { long base = addressToLong(blob.codeBegin()); ! for (int i = 0, imax = (int)oms.getSize(); i < imax; i++) { ! OopMap om = oms.getMapAt(i); ! long omspc = base + om.getOffset(); if (omspc > pc) { if (omspc <= endPc) { buf.br(); ! buf.append(genOopMapInfo(om)); // st.move_to(column); // visitor.print("; "); // om.print_on(st); } break; --- 950,966 ---- } } if (oms != null) { long base = addressToLong(blob.codeBegin()); ! for (int i = 0, imax = oms.getCount(); i < imax; i++) { ! ImmutableOopMapPair pair = oms.getPairAt(i); ! long omspc = base + pair.getPC(); if (omspc > pc) { if (omspc <= endPc) { buf.br(); ! buf.append(genOopMapInfo(oms.getMap(pair))); // st.move_to(column); // visitor.print("; "); // om.print_on(st); } break;
*** 1165,1175 **** } buf.br(); } } ! protected String genHTMLForOopMap(OopMap map) { final int stack0 = VMRegImpl.getStack0().getValue(); Formatter buf = new Formatter(genHTML); final class OopMapValueIterator { final Formatter iterate(OopMapStream oms, String type, boolean printContentReg) { --- 1163,1173 ---- } buf.br(); } } ! protected String genHTMLForOopMap(ImmutableOopMap map) { final int stack0 = VMRegImpl.getStack0().getValue(); Formatter buf = new Formatter(genHTML); final class OopMapValueIterator { final Formatter iterate(OopMapStream oms, String type, boolean printContentReg) {
*** 1235,1257 **** return buf.toString(); } protected String genOopMapInfo(NMethod nmethod, PCDesc pcDesc) { ! OopMapSet mapSet = nmethod.getOopMaps(); if (mapSet == null || (mapSet.getSize() <= 0)) return ""; int pcOffset = pcDesc.getPCOffset(); ! OopMap map = mapSet.findMapAtOffset(pcOffset, VM.getVM().isDebugging()); if (map == null) { throw new IllegalArgumentException("no oopmap at safepoint!"); } return genOopMapInfo(map); } ! protected String genOopMapInfo(OopMap map) { Formatter buf = new Formatter(genHTML); buf.beginTag("pre"); buf.append("OopMap: "); buf.br(); buf.append(genHTMLForOopMap(map)); --- 1233,1255 ---- return buf.toString(); } protected String genOopMapInfo(NMethod nmethod, PCDesc pcDesc) { ! ImmutableOopMapSet mapSet = nmethod.getOopMaps(); if (mapSet == null || (mapSet.getSize() <= 0)) return ""; int pcOffset = pcDesc.getPCOffset(); ! ImmutableOopMap map = mapSet.findMapAtOffset(pcOffset, VM.getVM().isDebugging()); if (map == null) { throw new IllegalArgumentException("no oopmap at safepoint!"); } return genOopMapInfo(map); } ! protected String genOopMapInfo(ImmutableOopMap map) { Formatter buf = new Formatter(genHTML); buf.beginTag("pre"); buf.append("OopMap: "); buf.br(); buf.append(genHTMLForOopMap(map));
agent/src/share/classes/sun/jvm/hotspot/ui/classbrowser/HTMLGenerator.java
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File