# HG changeset patch # User Andreas Woess # Date 1422497513 -3600 # Node ID f5b83e7b2b4c22facadc9bbdcb0b96d7a3fd2be3 # Parent 203c7256e123b562b030e87903cfd64a67ec1228 Truffle: simplify NodeUtil.findChildField diff -r 203c7256e123 -r f5b83e7b2b4c graal/com.oracle.truffle.api/src/com/oracle/truffle/api/nodes/NodeUtil.java --- a/graal/com.oracle.truffle.api/src/com/oracle/truffle/api/nodes/NodeUtil.java Thu Jan 29 00:12:55 2015 +0000 +++ b/graal/com.oracle.truffle.api/src/com/oracle/truffle/api/nodes/NodeUtil.java Thu Jan 29 03:11:53 2015 +0100 @@ -362,15 +362,6 @@ return childrenFields; } - public NodeField findField(long fieldOffset) { - for (NodeField field : getFields()) { - if (field.getOffset() == fieldOffset) { - return field; - } - } - return null; - } - @Override public int hashCode() { return clazz.hashCode(); @@ -665,20 +656,18 @@ NodeClass parentNodeClass = NodeClass.get(parent.getClass()); for (NodeField field : parentNodeClass.getChildFields()) { - final long fieldOffset = field.getOffset(); - if (unsafe.getObject(parent, fieldOffset) == child) { - return parentNodeClass.findField(fieldOffset); + if (field.getObject(parent) == child) { + return field; } } for (NodeField field : parentNodeClass.getChildrenFields()) { - final long fieldOffset = field.getOffset(); - Object arrayObject = unsafe.getObject(parent, fieldOffset); + Object arrayObject = field.getObject(parent); if (arrayObject != null) { Object[] array = (Object[]) arrayObject; for (int i = 0; i < array.length; i++) { if (array[i] == child) { - return parentNodeClass.findField(fieldOffset); + return field; } } }