comparison truffle/com.oracle.truffle.api.dsl/src/com/oracle/truffle/api/dsl/internal/SpecializationNode.java @ 22368:0d4b0e4263ee

Convert NodeClass and NodeFieldAccessor to interfaces
author Christian Wimmer <christian.wimmer@oracle.com>
date Fri, 13 Nov 2015 10:29:52 -0800
parents dc83cc1f94f2
children 6598b9b7aafd
comparison
equal deleted inserted replaced
22367:1b48778cee21 22368:0d4b0e4263ee
85 updateRootImpl(((SpecializedNode) node).getSpecializationNode(), node); 85 updateRootImpl(((SpecializedNode) node).getSpecializationNode(), node);
86 return node; 86 return node;
87 } 87 }
88 88
89 private static void updateRootImpl(SpecializationNode start, Node node) { 89 private static void updateRootImpl(SpecializationNode start, Node node) {
90 NodeFieldAccessor[] fields = NodeClass.get(start).getFields(); 90 NodeFieldAccessor[] fields = NodeClass.Lookup.get(start).getFields();
91 for (int i = fields.length - 1; i >= 0; i--) { 91 for (int i = fields.length - 1; i >= 0; i--) {
92 NodeFieldAccessor f = fields[i]; 92 NodeFieldAccessor f = fields[i];
93 if (f.getName().equals("root")) { 93 if (f.getName().equals("root")) {
94 f.putObject(start, node); 94 f.putObject(start, node);
95 break; 95 break;
506 506
507 protected Object unsupported(Frame frame, Object... args) { 507 protected Object unsupported(Frame frame, Object... args) {
508 throw new UnsupportedSpecializationException(findRoot(), getSuppliedChildren(), args); 508 throw new UnsupportedSpecializationException(findRoot(), getSuppliedChildren(), args);
509 } 509 }
510 510
511 /* Suppress FindBugs false positive. */
512 @SuppressFBWarnings(value = "NP")
511 static SpecializationNode insertSorted(SpecializationNode start, final SpecializationNode generated, final CharSequence message, final SpecializationNode merged) { 513 static SpecializationNode insertSorted(SpecializationNode start, final SpecializationNode generated, final CharSequence message, final SpecializationNode merged) {
512 if (merged == generated) { 514 if (merged == generated) {
513 // new node 515 // new node
514 if (start.count() == 2) { 516 if (start.count() == 2) {
515 SpecializationNode polymorphic = start.createPolymorphic(); 517 SpecializationNode polymorphic = start.createPolymorphic();