Mercurial > hg > truffle
changeset 5270:e7f3f0541429
Merge
author | Lukas Stadler <lukas.stadler@jku.at> |
---|---|
date | Fri, 20 Apr 2012 15:12:10 +0200 |
parents | 6b2d030d01ff (current diff) a6632d6e2753 (diff) |
children | 558ea5229886 a44b5ebb28a0 |
files | |
diffstat | 3 files changed, 7 insertions(+), 9 deletions(-) [+] |
line wrap: on
line diff
--- a/graal/com.oracle.graal.graph/src/com/oracle/graal/graph/NodeClass.java Fri Apr 20 15:03:02 2012 +0200 +++ b/graal/com.oracle.graal.graph/src/com/oracle/graal/graph/NodeClass.java Fri Apr 20 15:12:10 2012 +0200 @@ -274,6 +274,7 @@ } successorNamesMap.put(offset, name); } else if (field.isAnnotationPresent(Node.Data.class)) { + assert !Node.class.isAssignableFrom(field.getType()) : "cannot have a node as data: " + currentClazz; dataOffsets.add(offset); dataTypes.add(type); dataNames.add(name);
--- a/graal/com.oracle.graal.java/src/com/oracle/graal/java/GraphBuilderPhase.java Fri Apr 20 15:03:02 2012 +0200 +++ b/graal/com.oracle.graal.java/src/com/oracle/graal/java/GraphBuilderPhase.java Fri Apr 20 15:12:10 2012 +0200 @@ -189,7 +189,7 @@ // Add safepoints to loop ends if (GraalOptions.GenLoopSafepoints) { for (LoopEndNode loopEnd : currentGraph.getNodes(LoopEndNode.class)) { - SafepointNode safepoint = currentGraph.add(new SafepointNode(loopEnd)); + SafepointNode safepoint = currentGraph.add(new SafepointNode()); currentGraph.addBeforeFixed(loopEnd, safepoint); } }
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/SafepointNode.java Fri Apr 20 15:03:02 2012 +0200 +++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/SafepointNode.java Fri Apr 20 15:12:10 2012 +0200 @@ -31,14 +31,8 @@ */ public final class SafepointNode extends FixedWithNextNode implements LIRLowerable, Node.IterableNodeType { - /** - * Will be null if this safepoint is not associated with a loop end. - */ - @Data private final LoopEndNode loopEnd; - - public SafepointNode(LoopEndNode loopEnd) { + public SafepointNode() { super(StampFactory.illegal()); - this.loopEnd = loopEnd; } @@ -51,6 +45,9 @@ * Gets the loop end (if any) associated with this safepoint. */ public LoopEndNode loopEnd() { - return loopEnd; + if (next() instanceof LoopEndNode) { + return (LoopEndNode) next(); + } + return null; } }