if (csv) { Pair<String, String> valueAndUnit = key.toCSVFormat(e.getValue()); CSVUtil.Escape.println(p, csvFormat, key.getName(), valueAndUnit.getLeft(), valueAndUnit.getRight()); } else { p.println(key.getName() + "=" + key.toHumanReadableFormat(e.getValue()));
assignImplementations(pair.getLeft(), vtablesMap, usedSlotsMap, vtablesSlots);
/** * Appends metrics in CSV format to {@code out} for a single method compilation. * * @param identity the identity hash code of {@code compilable} * @param compilationNr where this compilation lies in the ordered sequence of all compilations * identified by {@code identity} * @param compilationId the runtime issued identifier for the compilation */ private void printMetricsCSV(PrintStream out, Object compilable, Integer identity, int compilationNr, String compilationId) { String compilableName = compilable instanceof JavaMethod ? ((JavaMethod) compilable).format("%H.%n(%p)%R") : String.valueOf(compilable); String csvFormat = CSVUtil.buildFormatString("%s", "%s", "%d", "%s"); String format = String.format(csvFormat, CSVUtil.Escape.escapeArgs(compilableName, identity, compilationNr, compilationId)); char sep = CSVUtil.SEPARATOR; format += sep + "%s" + sep + "%s" + sep + "%s"; for (MetricKey key : KeyRegistry.getKeys()) { int index = ((AbstractKey) key).getIndex(); if (index < metricValues.length) { Pair<String, String> valueAndUnit = key.toCSVFormat(metricValues[index]); CSVUtil.Escape.println(out, format, CSVUtil.Escape.escape(key.getName()), valueAndUnit.getLeft(), valueAndUnit.getRight()); } } }
@SuppressWarnings("try") void allocateRegisters() { try (Indent indent = allocator.getDebug().logAndIndent("allocate registers")) { Interval precoloredIntervals; Interval notPrecoloredIntervals; Pair<Interval, Interval> result = allocator.createUnhandledLists(LinearScan.IS_PRECOLORED_INTERVAL, LinearScan.IS_VARIABLE_INTERVAL); precoloredIntervals = result.getLeft(); notPrecoloredIntervals = result.getRight(); // allocate cpu registers LinearScanWalker lsw; if (OptimizingLinearScanWalker.Options.LSRAOptimization.getValue(allocator.getOptions())) { lsw = new OptimizingLinearScanWalker(allocator, precoloredIntervals, notPrecoloredIntervals); } else { lsw = new LinearScanWalker(allocator, precoloredIntervals, notPrecoloredIntervals); } lsw.walk(); lsw.finishAllocation(); } }
while (!workList.isEmpty()) { Pair<Node, Node> pair = workList.removeFirst(); Node expectedNode = pair.getLeft(); Node actualNode = pair.getRight(); assert expectedNode.getClass() == actualNode.getClass();
fixedIntervals = createUnhandledLists(IS_PRECOLORED_INTERVAL, null).getLeft();
Pair<ValueNode, Object> pair = firstValueSet.get(object); while (pair != null) { initialState.addReadCache(pair.getLeft(), entry.identity, entry.index, entry.kind, entry.overflowAccess, initialState.getReadCache().get(entry), this); pair = (Pair<ValueNode, Object>) pair.getRight();
ValueNode[] args = new ValueNode[argsWithTypes.size()]; for (int i = 0; i < argsWithTypes.size(); i++) { ValueNode value = argsWithTypes.get(i).getLeft(); ResolvedJavaType type = argsWithTypes.get(i).getRight(); if (!type.isPrimitive() && !type.isJavaLangObject()) {
interval = allocator.createUnhandledLists(mustStoreAtDefinition, null).getLeft(); if (Assertions.detailedAssertionsEnabled(allocator.getOptions())) { checkIntervals(debug, interval);
TriState result = unaryLogicNode.tryFold(foldResult.getRight()); if (result.isKnown()) { return rewireGuards(foldResult.getLeft().getGuard(), result.toBoolean(), foldResult.getLeft().getProxifiedInput(), foldResult.getRight(), rewireGuardFunction); TriState result = binaryOpLogicNode.tryFold(foldResult.getRight(), y.stamp(NodeView.DEFAULT)); if (result.isKnown()) { return rewireGuards(foldResult.getLeft().getGuard(), result.toBoolean(), foldResult.getLeft().getProxifiedInput(), foldResult.getRight(), rewireGuardFunction);