com.oracle.truffle.api.nodes.Node.toString()方法的使用及代码示例

x33g5p2x  于2022-01-25 转载在 其他  
字(6.7k)|赞(0)|评价(0)|浏览(744)

本文整理了Java中com.oracle.truffle.api.nodes.Node.toString()方法的一些代码示例,展示了Node.toString()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Node.toString()方法的具体详情如下:
包路径:com.oracle.truffle.api.nodes.Node
类名称:Node
方法名:toString

Node.toString介绍

[英]Converts this node to a textual representation useful for debugging.
[中]将此节点转换为对调试有用的文本表示形式。

代码示例

代码示例来源:origin: org.graalvm.truffle/truffle-api

  1. @Override
  2. public String toString() {
  3. if (next == null) {
  4. return node.toString();
  5. }
  6. StringBuilder sb = new StringBuilder("[");
  7. LinkedNodes ln = this;
  8. while (ln != null) {
  9. sb.append(ln.node);
  10. sb.append(", ");
  11. ln = ln.next;
  12. }
  13. sb.delete(sb.length() - 2, sb.length());
  14. sb.append("]");
  15. return sb.toString();
  16. }

代码示例来源:origin: org.graalvm.compiler/compiler

  1. @Override
  2. public void onCompilationSuccess(OptimizedCallTarget target, TruffleInlining inliningDecision, GraphInfo graph, CompilationResultInfo result) {
  3. for (Node node : target.nodeIterable(inliningDecision)) {
  4. if (node != null && (node.getCost() == NodeCost.MEGAMORPHIC || node.getCost() == NodeCost.POLYMORPHIC)) {
  5. NodeCost cost = node.getCost();
  6. Map<String, Object> props = new LinkedHashMap<>();
  7. props.put("simpleName", node.getClass().getSimpleName());
  8. props.put("subtree", "\n" + NodeUtil.printCompactTreeToString(node));
  9. String msg = cost == NodeCost.MEGAMORPHIC ? "megamorphic" : "polymorphic";
  10. runtime.logEvent(0, msg, node.toString(), props);
  11. }
  12. }
  13. }

代码示例来源:origin: org.graalvm.regex/regex

  1. @TruffleBoundary
  2. @Override
  3. public String toString() {
  4. if (body instanceof InstrumentableNode.WrapperNode) {
  5. return ((InstrumentableNode.WrapperNode) body).getDelegateNode().toString();
  6. }
  7. return body.toString();
  8. }
  9. }

代码示例来源:origin: org.graalvm.compiler/compiler

  1. @Override
  2. public void nodeProperties(PolymorphicSpecializeGraph graph, PolymorphicSpecializeGraph.DumpNode node, Map<String, ? super Object> properties) {
  3. properties.put("label", node.node.toString());
  4. properties.put("ROOT?", node.node instanceof RootNode);
  5. properties.put("LEAF?", node.edge == null);
  6. properties.put("RootNode", node.node.getRootNode());
  7. properties.putAll(node.node.getDebugProperties());
  8. properties.put("SourceSection", node.node.getSourceSection());
  9. if (Introspection.isIntrospectable(node.node)) {
  10. final List<Introspection.SpecializationInfo> specializations = Introspection.getSpecializations(node.node);
  11. for (Introspection.SpecializationInfo specialization : specializations) {
  12. properties.put(specialization.getMethodName() + ".isActive", specialization.isActive());
  13. properties.put(specialization.getMethodName() + ".isExcluded", specialization.isExcluded());
  14. properties.put(specialization.getMethodName() + ".instances", specialization.getInstances());
  15. }
  16. }
  17. }

代码示例来源:origin: org.graalvm.compiler/compiler

  1. public static void dumpPolymorphicSpecialize(List<Node> toDump, List<OptimizedDirectCallNode> knownCallNodes) {
  2. assert toDump.size() > 0;
  3. assert knownCallNodes.size() > 0;
  4. try (TruffleDebugContext debugContext = openDebugContext()) {
  5. Collections.reverse(toDump);
  6. PolymorphicSpecializeDump.PolymorphicSpecializeGraph graph = new PolymorphicSpecializeDump.PolymorphicSpecializeGraph(knownCallNodes, toDump);
  7. final GraphOutput<PolymorphicSpecializeGraph, ?> output = debugContext.buildOutput(
  8. GraphOutput.newBuilder(new PolymorphicSpecializeDump.PolymorphicSpecializeGraphStructure()).protocolVersion(6, 0));
  9. output.beginGroup(graph, "Polymorphic Specialize [" + knownCallNodes.get(0).getCurrentCallTarget() + "]", "Polymorphic Specialize", null, 0, null);
  10. output.print(graph, null, 0, toDump.get(toDump.size() - 1).toString());
  11. output.endGroup();
  12. output.close();
  13. } catch (IOException e) {
  14. e.printStackTrace();
  15. }
  16. }

代码示例来源:origin: org.graalvm.truffle/truffle-api

  1. static void traceRewrite(Node oldNode, Node newNode, CharSequence reason) {
  2. if (TruffleOptions.TraceRewritesFilterFromCost != null) {
  3. if (filterByKind(oldNode, TruffleOptions.TraceRewritesFilterFromCost)) {
  4. return;
  5. }
  6. }
  7. if (TruffleOptions.TraceRewritesFilterToCost != null) {
  8. if (filterByKind(newNode, TruffleOptions.TraceRewritesFilterToCost)) {
  9. return;
  10. }
  11. }
  12. String filter = TruffleOptions.TraceRewritesFilterClass;
  13. Class<? extends Node> from = oldNode.getClass();
  14. Class<? extends Node> to = newNode.getClass();
  15. if (filter != null && (filterByContainsClassName(from, filter) || filterByContainsClassName(to, filter))) {
  16. return;
  17. }
  18. final SourceSection reportedSourceSection = oldNode.getEncapsulatingSourceSection();
  19. PrintStream out = System.out;
  20. out.printf("[truffle] rewrite %-50s |From %-40s |To %-40s |Reason %s %s%n", oldNode.toString(), formatNodeInfo(oldNode), formatNodeInfo(newNode),
  21. reason != null && reason.length() > 0 ? reason : "unknown", formatLocation(reportedSourceSection));
  22. }

代码示例来源:origin: com.oracle.truffle/truffle-api

  1. static void traceRewrite(Node oldNode, Node newNode, CharSequence reason) {
  2. if (TruffleOptions.TraceRewritesFilterFromCost != null) {
  3. if (filterByKind(oldNode, TruffleOptions.TraceRewritesFilterFromCost)) {
  4. return;
  5. }
  6. }
  7. if (TruffleOptions.TraceRewritesFilterToCost != null) {
  8. if (filterByKind(newNode, TruffleOptions.TraceRewritesFilterToCost)) {
  9. return;
  10. }
  11. }
  12. String filter = TruffleOptions.TraceRewritesFilterClass;
  13. Class<? extends Node> from = oldNode.getClass();
  14. Class<? extends Node> to = newNode.getClass();
  15. if (filter != null && (filterByContainsClassName(from, filter) || filterByContainsClassName(to, filter))) {
  16. return;
  17. }
  18. final SourceSection reportedSourceSection = oldNode.getEncapsulatingSourceSection();
  19. PrintStream out = System.out;
  20. out.printf("[truffle] rewrite %-50s |From %-40s |To %-40s |Reason %s %s%n", oldNode.toString(), formatNodeInfo(oldNode), formatNodeInfo(newNode),
  21. reason != null && reason.length() > 0 ? reason : "unknown", formatLocation(reportedSourceSection));
  22. }

代码示例来源:origin: com.oracle/truffle

  1. static void traceRewrite(Node oldNode, Node newNode, CharSequence reason) {
  2. if (TruffleOptions.TraceRewritesFilterFromCost != null) {
  3. if (filterByKind(oldNode, TruffleOptions.TraceRewritesFilterFromCost)) {
  4. return;
  5. }
  6. }
  7. if (TruffleOptions.TraceRewritesFilterToCost != null) {
  8. if (filterByKind(newNode, TruffleOptions.TraceRewritesFilterToCost)) {
  9. return;
  10. }
  11. }
  12. String filter = TruffleOptions.TraceRewritesFilterClass;
  13. Class<? extends Node> from = oldNode.getClass();
  14. Class<? extends Node> to = newNode.getClass();
  15. if (filter != null && (filterByContainsClassName(from, filter) || filterByContainsClassName(to, filter))) {
  16. return;
  17. }
  18. final SourceSection reportedSourceSection = oldNode.getEncapsulatingSourceSection();
  19. PrintStream out = System.out;
  20. out.printf("[truffle] rewrite %-50s |From %-40s |To %-40s |Reason %s%s%n", oldNode.toString(), formatNodeInfo(oldNode), formatNodeInfo(newNode),
  21. reason != null && reason.length() > 0 ? reason : "unknown", reportedSourceSection != null ? " at " + reportedSourceSection.getShortDescription() : "");
  22. }

相关文章