--- old/src/share/tools/LogCompilation/src/com/sun/hotspot/tools/compiler/CallSite.java 2014-05-21 16:16:15.928717849 +0200 +++ new/src/share/tools/LogCompilation/src/com/sun/hotspot/tools/compiler/CallSite.java 2014-05-21 16:16:15.706378567 +0200 @@ -231,6 +231,9 @@ // identical call sites with the same method name/bci are // possible so we have to try them all until we find the late // inline call site that has a matching inline id. + if (calls == null) { + return null; + } CallSite site = sites.pop(); for (CallSite c : calls) { if (c.matches(site)) { @@ -250,6 +253,27 @@ return null; } + public ArrayDeque findCallSite2(CallSite site) { + if (calls == null) { + return null; + } + + for (CallSite c : calls) { + if (c.matches(site)) { + ArrayDeque stack = new ArrayDeque(); + stack.push(c); + return stack; + } else { + ArrayDeque stack = c.findCallSite2(site); + if (stack != null) { + stack.push(c); + return stack; + } + } + } + return null; + } + public long getInlineId() { return inlineId; }