changeset 17450:45b45f902bed

removed Node generation (GRAAL-857)
author Doug Simon <doug.simon@oracle.com>
date Wed, 15 Oct 2014 15:35:33 +0200
parents cca154b1bf91
children 89152779163c 594f932ade4a
files graal/com.oracle.graal.compiler.amd64/src/com/oracle/graal/compiler/amd64/AMD64NodeLIRBuilder.java graal/com.oracle.graal.compiler.test/src/com/oracle/graal/compiler/test/CheckGraalInvariants.java graal/com.oracle.graal.compiler.test/src/com/oracle/graal/compiler/test/NodePosIteratorTest.java graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/match/MatchPattern.java graal/com.oracle.graal.graph.test/src/com/oracle/graal/graph/test/NodeMapTest.java graal/com.oracle.graal.graph.test/src/com/oracle/graal/graph/test/NodeUsagesTests.java graal/com.oracle.graal.graph.test/src/com/oracle/graal/graph/test/TypedNodeIteratorTest.java graal/com.oracle.graal.graph.test/src/com/oracle/graal/graph/test/TypedNodeIteratorTest2.java graal/com.oracle.graal.graph/src/com/oracle/graal/graph/Graph.java graal/com.oracle.graal.graph/src/com/oracle/graal/graph/Node.java graal/com.oracle.graal.graph/src/com/oracle/graal/graph/NodeClass.java graal/com.oracle.graal.hotspot.amd64/src/com/oracle/graal/hotspot/amd64/AMD64RawNativeCallNode.java graal/com.oracle.graal.hotspot.hsail/src/com/oracle/graal/hotspot/hsail/replacements/HSAILDirectLoadAcquireNode.java graal/com.oracle.graal.hotspot.hsail/src/com/oracle/graal/hotspot/hsail/replacements/HSAILDirectStoreReleaseNode.java graal/com.oracle.graal.hotspot.hsail/src/com/oracle/graal/hotspot/hsail/replacements/HSAILWorkItemAbsIdNode.java graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/AllocaNode.java graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/BeginLockScopeNode.java graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/CStringNode.java graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/ClassCastNode.java graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/ClassGetClassLoader0Node.java graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/ClassGetComponentTypeNode.java graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/ClassGetModifiersNode.java graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/ClassGetSuperclassNode.java graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/ClassIsArrayNode.java graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/ClassIsInstanceNode.java graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/ClassIsInterfaceNode.java graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/ClassIsPrimitiveNode.java graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/CompressionNode.java graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/CurrentJavaThreadNode.java graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/CurrentLockNode.java graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/DeoptimizationFetchUnrollInfoCallNode.java graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/DeoptimizeCallerNode.java graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/DeoptimizingStubCall.java graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/DimensionsNode.java graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/DirectCompareAndSwapNode.java graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/EndLockScopeNode.java graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/EnterUnpackFramesStackFrameNode.java graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/G1ArrayRangePostWriteBarrier.java graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/G1ArrayRangePreWriteBarrier.java graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/G1PostWriteBarrier.java graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/G1PreWriteBarrier.java graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/G1ReferentFieldReadBarrier.java graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/GetObjectAddressNode.java graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/HotSpotDirectCallTargetNode.java graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/HotSpotIndirectCallTargetNode.java graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/JumpToExceptionHandlerInCallerNode.java graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/LeaveCurrentStackFrameNode.java graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/LeaveDeoptimizedStackFrameNode.java graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/LeaveUnpackFramesStackFrameNode.java graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/MonitorCounterNode.java graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/NewArrayStubCall.java graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/NewInstanceStubCall.java graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/NewMultiArrayStubCall.java graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/PatchReturnAddressNode.java graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/PrefetchAllocateNode.java graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/PushInterpreterFrameNode.java graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/SaveAllRegistersNode.java graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/SerialArrayRangeWriteBarrier.java graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/SerialWriteBarrier.java graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/SnippetAnchorNode.java graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/SnippetLocationProxyNode.java graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/StubForeignCallNode.java graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/StubStartNode.java graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/TailcallNode.java graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/UncommonTrapCallNode.java graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/VMErrorNode.java graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/ArrayCopyCallNode.java graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/ArrayCopyNode.java graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/CallSiteTargetNode.java graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/CompositeValueClassSubstitutions.java graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/HotSpotNodeClassSubstitutions.java graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/MethodHandleNode.java graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/ObjectCloneNode.java graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/ObjectGetClassNode.java graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/ReflectionGetCallerClassNode.java graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/SystemIdentityHashCodeNode.java graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/UnsafeArrayCopyNode.java graal/com.oracle.graal.java/src/com/oracle/graal/java/GraphBuilderPhase.java graal/com.oracle.graal.nodeinfo.processor/src/com/oracle/graal/nodeinfo/processor/GraphNodeGenerator.java graal/com.oracle.graal.nodeinfo.processor/src/com/oracle/graal/nodeinfo/processor/GraphNodeProcessor.java graal/com.oracle.graal.nodeinfo.processor/src/com/oracle/graal/nodeinfo/processor/GraphNodeVerifier.java graal/com.oracle.graal.nodeinfo/src/com/oracle/graal/nodeinfo/GeneratedNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/BeginNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/BreakpointNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/ConditionAnchorNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/ConstantNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/DeoptimizeNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/DirectCallTargetNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/DispatchBeginNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/DynamicDeoptimizeNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/EndNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/EntryMarkerNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/FixedGuardNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/FrameState.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/FullInfopointNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/GuardNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/GuardPhiNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/GuardProxyNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/GuardedValueNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/GuardingPiNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/IfNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/IndirectCallTargetNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/InvokeNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/InvokeWithExceptionNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/KillingBeginNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/LogicConstantNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/LogicNegationNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/LoopBeginNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/LoopEndNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/LoopExitNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/MemoryMapNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/MemoryPhiNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/MergeNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/ParameterNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/PhiNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/PiArrayNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/PiNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/ReturnNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/SafepointNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/ShortCircuitOrNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/SimpleInfopointNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/StartNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/TypeProfileProxyNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/UnwindNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/ValuePhiNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/ValueProxyNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/AddNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/AndNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/ConditionalNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/DivNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/FloatConvertNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/FloatEqualsNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/FloatLessThanNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/IntegerBelowNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/IntegerDivNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/IntegerEqualsNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/IntegerLessThanNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/IntegerRemNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/IntegerTestNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/IsNullNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/LeftShiftNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/MulNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/NarrowNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/NegateNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/NormalizeCompareNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/NotNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/ObjectEqualsNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/OrNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/ReinterpretNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/RemNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/RightShiftNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/SignExtendNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/SubNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/UnsignedDivNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/UnsignedRemNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/UnsignedRightShiftNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/XorNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/ZeroExtendNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/debug/DynamicCounterNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/debug/WeakCounterNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/AddLocationNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/BoxNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/BranchProbabilityNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/BytecodeExceptionNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/ComputeAddressNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/ConstantLocationNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/FixedValueAnchorNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/FloatingReadNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/ForeignCallNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/IndexedLocationNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/IntegerSwitchNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/JavaReadNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/JavaWriteNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/LoadHubNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/LoadMethodNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/MembarNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/NullCheckNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/OSRLocalNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/OSRStartNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/ReadNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/StoreHubNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/UnboxNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/UnsafeCastNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/UnsafeLoadNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/UnsafeStoreNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/ValueAnchorNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/WriteNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/AbstractNewArrayNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/AbstractNewObjectNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/ArrayLengthNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/AtomicReadAndAddNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/AtomicReadAndWriteNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/CheckCastDynamicNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/CheckCastNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/CompareAndSwapNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/DynamicNewArrayNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/DynamicNewInstanceNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/ExceptionObjectNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/InstanceOfDynamicNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/InstanceOfNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/LoadExceptionObjectNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/LoadFieldNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/LoadIndexedNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/LoweredAtomicReadAndWriteNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/LoweredCompareAndSwapNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/MethodCallTargetNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/MonitorEnterNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/MonitorExitNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/MonitorIdNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/NewArrayNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/NewInstanceNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/NewMultiArrayNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/RegisterFinalizerNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/SelfReplacingMethodCallTargetNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/StoreFieldNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/StoreIndexedNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/TypeSwitchNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/virtual/AllocatedObjectNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/virtual/CommitAllocationNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/virtual/VirtualArrayNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/virtual/VirtualBoxingNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/virtual/VirtualInstanceNode.java graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/LoweringPhase.java graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/TailDuplicationPhase.java graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/UseTrappingNullChecksPhase.java graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/inlining/walker/ComputeInliningRelevance.java graal/com.oracle.graal.phases/src/com/oracle/graal/phases/verify/VerifyNoNodeClassLiteralIdentityTests.java graal/com.oracle.graal.printer/src/com/oracle/graal/printer/IdealGraphPrinter.java graal/com.oracle.graal.replacements.amd64/src/com/oracle/graal/replacements/amd64/AMD64FloatConvertNode.java graal/com.oracle.graal.replacements.hsail/src/com/oracle/graal/replacements/hsail/HSAILMathIntrinsicsNode.java graal/com.oracle.graal.replacements.test/src/com/oracle/graal/replacements/test/EdgesTest.java graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/SnippetTemplate.java graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/ArrayEqualsNode.java graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/AssertionNode.java graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/BasicArrayCopyNode.java graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/BasicObjectCloneNode.java graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/BitCountNode.java graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/BitScanForwardNode.java graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/BitScanReverseNode.java graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/DeferredPiNode.java graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/DirectObjectStoreNode.java graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/DirectReadNode.java graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/DirectStoreNode.java graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/ExplodeLoopNode.java graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/LoadSnippetVarargParameterNode.java graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/MacroNode.java graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/MacroStateSplitNode.java graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/MathIntrinsicNode.java graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/MemoryAnchorNode.java graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/ReadRegisterNode.java graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/ReverseBytesNode.java graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/WriteRegisterNode.java graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/nodes/AssumptionNode.java graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/nodes/BailoutNode.java graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/nodes/IsCompilationConstantNode.java graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/nodes/LoadIndexedFinalNode.java graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/nodes/arithmetic/IntegerAddExactNode.java graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/nodes/arithmetic/IntegerAddExactSplitNode.java graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/nodes/arithmetic/IntegerMulExactNode.java graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/nodes/arithmetic/IntegerMulExactSplitNode.java graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/nodes/arithmetic/IntegerMulHighNode.java graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/nodes/arithmetic/IntegerSubExactNode.java graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/nodes/arithmetic/IntegerSubExactSplitNode.java graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/nodes/arithmetic/UnsignedMulHighNode.java graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/nodes/asserts/CompilationConstantNode.java graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/nodes/asserts/NeverInlineMacroNode.java graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/nodes/asserts/NeverPartOfCompilationNode.java graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/nodes/frame/ForceMaterializeNode.java graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/nodes/frame/MaterializeFrameNode.java graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/nodes/frame/NewFrameNode.java graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/nodes/typesystem/CustomizedUnsafeLoadFinalNode.java graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/nodes/typesystem/CustomizedUnsafeLoadMacroNode.java graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/nodes/typesystem/CustomizedUnsafeStoreMacroNode.java graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/nodes/typesystem/UnsafeTypeCastMacroNode.java graal/com.oracle.graal.virtual/src/com/oracle/graal/virtual/nodes/MaterializedObjectState.java graal/com.oracle.graal.virtual/src/com/oracle/graal/virtual/nodes/VirtualObjectState.java graal/com.oracle.graal.word/src/com/oracle/graal/word/nodes/SnippetLocationNode.java graal/com.oracle.graal.word/src/com/oracle/graal/word/nodes/WordCastNode.java
diffstat 278 files changed, 561 insertions(+), 1210 deletions(-) [+]
line wrap: on
line diff
--- a/graal/com.oracle.graal.compiler.amd64/src/com/oracle/graal/compiler/amd64/AMD64NodeLIRBuilder.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.compiler.amd64/src/com/oracle/graal/compiler/amd64/AMD64NodeLIRBuilder.java	Wed Oct 15 15:35:33 2014 +0200
@@ -275,7 +275,7 @@
 
     protected AMD64Arithmetic getOp(ValueNode operation, Access access) {
         Kind memoryKind = getMemoryKind(access);
-        if (operation.getNodeClass().is(AddNode.class)) {
+        if (operation.getClass() == AddNode.class) {
             switch (memoryKind) {
                 case Int:
                     return IADD;
@@ -286,28 +286,28 @@
                 case Double:
                     return DADD;
             }
-        } else if (operation.getNodeClass().is(AndNode.class)) {
+        } else if (operation.getClass() == AndNode.class) {
             switch (memoryKind) {
                 case Int:
                     return IAND;
                 case Long:
                     return LAND;
             }
-        } else if (operation.getNodeClass().is(OrNode.class)) {
+        } else if (operation.getClass() == OrNode.class) {
             switch (memoryKind) {
                 case Int:
                     return IOR;
                 case Long:
                     return LOR;
             }
-        } else if (operation.getNodeClass().is(XorNode.class)) {
+        } else if (operation.getClass() == XorNode.class) {
             switch (memoryKind) {
                 case Int:
                     return IXOR;
                 case Long:
                     return LXOR;
             }
-        } else if (operation.getNodeClass().is(SubNode.class)) {
+        } else if (operation.getClass() == SubNode.class) {
             switch (memoryKind) {
                 case Int:
                     return ISUB;
@@ -318,7 +318,7 @@
                 case Double:
                     return DSUB;
             }
-        } else if (operation.getNodeClass().is(MulNode.class)) {
+        } else if (operation.getClass() == MulNode.class) {
             switch (memoryKind) {
                 case Int:
                     return IMUL;
--- a/graal/com.oracle.graal.compiler.test/src/com/oracle/graal/compiler/test/CheckGraalInvariants.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.compiler.test/src/com/oracle/graal/compiler/test/CheckGraalInvariants.java	Wed Oct 15 15:35:33 2014 +0200
@@ -185,16 +185,11 @@
      */
     private static void checkClass(Class<?> c, MetaAccessProvider metaAccess) {
         if (Node.class.isAssignableFrom(c)) {
-            if (!GeneratedNode.class.isAssignableFrom(c)) {
-                if (Modifier.isFinal(c.getModifiers())) {
-                    throw new AssertionError(String.format("Node subclass %s must not be final", c.getName()));
-                }
-                if (c.getAnnotation(NodeInfo.class) == null) {
-                    throw new AssertionError(String.format("Node subclass %s requires %s annotation", c.getName(), NodeClass.class.getSimpleName()));
-                }
-                if (!Modifier.isAbstract(c.getModifiers())) {
-                    NodeClass.get(c).getGenClass();
-                }
+            if (Modifier.isFinal(c.getModifiers())) {
+                throw new AssertionError(String.format("Node subclass %s must not be final", c.getName()));
+            }
+            if (c.getAnnotation(NodeInfo.class) == null) {
+                throw new AssertionError(String.format("Node subclass %s requires %s annotation", c.getName(), NodeClass.class.getSimpleName()));
             }
         }
     }
@@ -204,7 +199,6 @@
      */
     private static void checkGraph(HighTierContext context, StructuredGraph graph, boolean verifyEquals) {
         if (verifyEquals) {
-            new VerifyNoNodeClassLiteralIdentityTests().apply(graph, context);
             new VerifyUsageWithEquals(Value.class).apply(graph, context);
             new VerifyUsageWithEquals(Register.class).apply(graph, context);
             new VerifyUsageWithEquals(JavaType.class).apply(graph, context);
--- a/graal/com.oracle.graal.compiler.test/src/com/oracle/graal/compiler/test/NodePosIteratorTest.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.compiler.test/src/com/oracle/graal/compiler/test/NodePosIteratorTest.java	Wed Oct 15 15:35:33 2014 +0200
@@ -42,7 +42,7 @@
         @Input FloatingNode i2;
 
         public static TestNode create() {
-            return USE_GENERATED_NODES ? new NodePosIteratorTest_TestNodeGen() : new TestNode();
+            return new TestNode();
         }
 
         protected TestNode() {
--- a/graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/match/MatchPattern.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/match/MatchPattern.java	Wed Oct 15 15:35:33 2014 +0200
@@ -151,22 +151,8 @@
         this(null, name, singleUser);
     }
 
-    /**
-     * Gets the {@link Node} class instantiated for a given canonical {@link Node} class depending
-     * on whether or not generated node classes are enabled.
-     */
-    @SuppressWarnings("unchecked")
-    private static Class<? extends ValueNode> asInstantiatedClass(Class<? extends ValueNode> nodeClass) {
-        if (nodeClass != null && Node.USE_GENERATED_NODES) {
-            Class<? extends ValueNode> res = (Class<? extends ValueNode>) NodeClass.get(nodeClass).getGenClass();
-            assert res != null : nodeClass;
-            return res;
-        }
-        return nodeClass;
-    }
-
     public MatchPattern(Class<? extends ValueNode> nodeClass, String name, boolean singleUser) {
-        this.nodeClass = asInstantiatedClass(nodeClass);
+        this.nodeClass = nodeClass;
         this.name = name;
         this.singleUser = singleUser;
         this.patterns = EMPTY_PATTERNS;
@@ -175,7 +161,7 @@
 
     private MatchPattern(Class<? extends ValueNode> nodeClass, String name, boolean singleUser, MatchPattern[] patterns, Position[] inputs) {
         assert inputs == null || inputs.length == patterns.length;
-        this.nodeClass = asInstantiatedClass(nodeClass);
+        this.nodeClass = nodeClass;
         this.name = name;
         this.singleUser = singleUser;
         this.patterns = patterns;
@@ -312,7 +298,9 @@
             return name;
         } else {
             String nodeName = nodeClass.getSimpleName();
-            nodeName = nodeName.substring(0, nodeName.length() - (Node.USE_GENERATED_NODES ? 7 : 4));
+            if (nodeName.endsWith("Node")) {
+                nodeName = nodeName.substring(0, nodeName.length() - 4);
+            }
             if (patterns.length == 0) {
                 return nodeName + (name != null ? "=" + name : "");
             } else {
--- a/graal/com.oracle.graal.graph.test/src/com/oracle/graal/graph/test/NodeMapTest.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.graph.test/src/com/oracle/graal/graph/test/NodeMapTest.java	Wed Oct 15 15:35:33 2014 +0200
@@ -38,7 +38,7 @@
         }
 
         public static TestNode create() {
-            return USE_GENERATED_NODES ? new NodeMapTest_TestNodeGen() : new TestNode();
+            return new TestNode();
         }
     }
 
--- a/graal/com.oracle.graal.graph.test/src/com/oracle/graal/graph/test/NodeUsagesTests.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.graph.test/src/com/oracle/graal/graph/test/NodeUsagesTests.java	Wed Oct 15 15:35:33 2014 +0200
@@ -40,7 +40,7 @@
         }
 
         public static Def create() {
-            return USE_GENERATED_NODES ? new NodeUsagesTests_DefGen() : new Def();
+            return new Def();
         }
     }
 
@@ -51,7 +51,7 @@
         @Input Def in2;
 
         public static Use create(Def in0, Def in1, Def in2) {
-            return USE_GENERATED_NODES ? new NodeUsagesTests_UseGen(in0, in1, in2) : new Use(in0, in1, in2);
+            return new Use(in0, in1, in2);
         }
 
         protected Use(Def in0, Def in1, Def in2) {
--- a/graal/com.oracle.graal.graph.test/src/com/oracle/graal/graph/test/TypedNodeIteratorTest.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.graph.test/src/com/oracle/graal/graph/test/TypedNodeIteratorTest.java	Wed Oct 15 15:35:33 2014 +0200
@@ -39,7 +39,7 @@
         protected final String name;
 
         public static TestNode create(String name) {
-            return USE_GENERATED_NODES ? new TypedNodeIteratorTest_TestNodeGen(name) : new TestNode(name);
+            return new TestNode(name);
         }
 
         protected TestNode(String name) {
--- a/graal/com.oracle.graal.graph.test/src/com/oracle/graal/graph/test/TypedNodeIteratorTest2.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.graph.test/src/com/oracle/graal/graph/test/TypedNodeIteratorTest2.java	Wed Oct 15 15:35:33 2014 +0200
@@ -37,7 +37,7 @@
         protected final String name;
 
         public static NodeA create(String name) {
-            return USE_GENERATED_NODES ? new TypedNodeIteratorTest2_NodeAGen(name) : new NodeA(name);
+            return new NodeA(name);
         }
 
         protected NodeA(String name) {
@@ -53,7 +53,7 @@
     static class NodeB extends NodeA implements IterableNodeType {
 
         public static NodeB create(String name) {
-            return USE_GENERATED_NODES ? new TypedNodeIteratorTest2_NodeBGen(name) : new NodeB(name);
+            return new NodeB(name);
         }
 
         protected NodeB(String name) {
@@ -64,7 +64,7 @@
     @NodeInfo
     static class NodeC extends NodeB {
         public static NodeC create(String name) {
-            return USE_GENERATED_NODES ? new TypedNodeIteratorTest2_NodeCGen(name) : new NodeC(name);
+            return new NodeC(name);
         }
 
         protected NodeC(String name) {
@@ -75,7 +75,7 @@
     @NodeInfo
     static class NodeD extends NodeC {
         public static NodeD create(String name) {
-            return USE_GENERATED_NODES ? new TypedNodeIteratorTest2_NodeDGen(name) : new NodeD(name);
+            return new NodeD(name);
         }
 
         protected NodeD(String name) {
--- a/graal/com.oracle.graal.graph/src/com/oracle/graal/graph/Graph.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.graph/src/com/oracle/graal/graph/Graph.java	Wed Oct 15 15:35:33 2014 +0200
@@ -107,7 +107,7 @@
 
         @Override
         public int hashCode() {
-            return Node.USE_GENERATED_VALUE_NUMBER ? node.valueNumberLeaf() : node.getNodeClass().valueNumber(node);
+            return node.getNodeClass().valueNumber(node);
         }
 
         @Override
@@ -628,7 +628,7 @@
         }
     }
 
-    static final Node PLACE_HOLDER = USE_GENERATED_NODES ? new Graph_PlaceHolderNodeGen() : new PlaceHolderNode();
+    static final Node PLACE_HOLDER = new PlaceHolderNode();
 
     /**
      * When the percent of live nodes in {@link #nodes} fall below this number, a call to
--- a/graal/com.oracle.graal.graph/src/com/oracle/graal/graph/Node.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.graph/src/com/oracle/graal/graph/Node.java	Wed Oct 15 15:35:33 2014 +0200
@@ -59,14 +59,8 @@
 @NodeInfo
 public abstract class Node implements Cloneable, Formattable {
 
-    public final static boolean USE_GENERATED_VALUE_NUMBER = Boolean.parseBoolean(System.getProperty("graal.node.useGeneratedValueNumber", "false"));
-
-    public final static boolean USE_GENERATED_VALUE_EQUALS = Boolean.parseBoolean(System.getProperty("graal.node.useGeneratedValueEquals", "true"));
-
     public final static boolean USE_UNSAFE_TO_CLONE = Boolean.parseBoolean(System.getProperty("graal.node.useUnsafeToClone", "true"));
 
-    public final static boolean USE_GENERATED_NODES = USE_GENERATED_VALUE_NUMBER || USE_GENERATED_VALUE_EQUALS;
-
     static final int DELETED_ID_START = -1000000000;
     static final int INITIAL_ID = -1;
     static final int ALIVE_ID_START = 0;
@@ -186,7 +180,6 @@
     public static final int NOT_ITERABLE = -1;
 
     public Node() {
-        assert USE_GENERATED_NODES == this instanceof GeneratedNode : getClass() + " is not a generated Node class - forgot @" + NodeInfo.class.getSimpleName() + " on class declaration?";
         init();
     }
 
@@ -1043,29 +1036,6 @@
     }
 
     /**
-     * Gets a hash for this {@linkplain NodeClass#valueNumberable() value numberable}
-     * {@linkplain NodeClass#isLeafNode() leaf} node based on its {@linkplain NodeClass#getData()
-     * data} fields.
-     *
-     * This method must only be called if {@link #USE_GENERATED_VALUE_NUMBER} is true and this is a
-     * value numberable leaf node.
-     *
-     * Overridden by a method generated for leaf nodes.
-     */
-    public int valueNumberLeaf() {
-        throw new GraalInternalError("Node is not a value numberable leaf", this);
-    }
-
-    /**
-     * Overridden by a generated method.
-     *
-     * @param other
-     */
-    protected boolean dataEquals(Node other) {
-        throw GraalInternalError.shouldNotReachHere();
-    }
-
-    /**
      * Determines if this node's {@link NodeClass#getData() data} fields are equal to the data
      * fields of another node of the same type. Primitive fields are compared by value and
      * non-primitive fields are compared by {@link Objects#equals(Object, Object)}.
@@ -1076,6 +1046,6 @@
      * @return true if the data fields of this object and {@code other} are equal
      */
     public boolean valueEquals(Node other) {
-        return USE_GENERATED_VALUE_EQUALS ? dataEquals(other) : getNodeClass().dataEquals(this, other);
+        return getNodeClass().dataEquals(this, other);
     }
 }
--- a/graal/com.oracle.graal.graph/src/com/oracle/graal/graph/NodeClass.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.graph/src/com/oracle/graal/graph/NodeClass.java	Wed Oct 15 15:35:33 2014 +0200
@@ -27,7 +27,6 @@
 import static com.oracle.graal.graph.InputEdges.*;
 import static com.oracle.graal.graph.Node.*;
 import static com.oracle.graal.graph.util.CollectionsAccess.*;
-import static java.lang.reflect.Modifier.*;
 
 import java.lang.annotation.*;
 import java.lang.reflect.*;
@@ -39,6 +38,7 @@
 import com.oracle.graal.graph.Edges.Type;
 import com.oracle.graal.graph.Graph.DuplicationReplacement;
 import com.oracle.graal.graph.Node.Input;
+import com.oracle.graal.graph.Node.OptionalInput;
 import com.oracle.graal.graph.Node.Successor;
 import com.oracle.graal.graph.spi.*;
 import com.oracle.graal.nodeinfo.*;
@@ -89,23 +89,12 @@
                     value = (NodeClass) allClasses.get(key);
                     if (value == null) {
                         Class<?> superclass = c.getSuperclass();
-                        if (GeneratedNode.class.isAssignableFrom(c)) {
-                            Class<? extends Node> originalNodeClass = (Class<? extends Node>) superclass;
-                            value = (NodeClass) allClasses.get(originalNodeClass);
-                            assert value != null;
-                            if (value.genClass == null) {
-                                value.genClass = (Class<? extends Node>) c;
-                            } else {
-                                assert value.genClass == c;
-                            }
-                        } else {
-                            NodeClass superNodeClass = null;
-                            if (superclass != NODE_CLASS) {
-                                // Ensure NodeClass for superclass exists
-                                superNodeClass = get(superclass);
-                            }
-                            value = new NodeClass(key, superNodeClass);
+                        NodeClass superNodeClass = null;
+                        if (superclass != NODE_CLASS) {
+                            // Ensure NodeClass for superclass exists
+                            superNodeClass = get(superclass);
                         }
+                        value = new NodeClass(key, superNodeClass);
                         Object old = allClasses.putIfAbsent(key, value);
                         assert old == null : old + "   " + key;
                     }
@@ -132,13 +121,6 @@
     private final EnumSet<InputType> allowedUsageTypes;
     private int[] iterableIds;
 
-    /**
-     * The {@linkplain GeneratedNode generated} node class denoted by this object. This value is
-     * lazily initialized to avoid class initialization circularity issues. A sentinel value of
-     * {@code Node.class} is used to denote absence of a generated class.
-     */
-    private Class<? extends Node> genClass;
-
     private static final DebugMetric ITERABLE_NODE_TYPES = Debug.metric("IterableNodeTypes");
     private final DebugMetric nodeIterableCount;
 
@@ -220,30 +202,6 @@
         nodeIterableCount = Debug.metric("NodeIterable_%s", clazz);
     }
 
-    /**
-     * Gets the {@linkplain GeneratedNode generated} node class (if any) described by the object.
-     */
-    @SuppressWarnings("unchecked")
-    public Class<? extends Node> getGenClass() {
-        if (USE_GENERATED_NODES) {
-            if (genClass == null) {
-                if (!isAbstract(getClazz().getModifiers())) {
-                    String genClassName = getClazz().getName().replace('$', '_') + "Gen";
-                    try {
-                        genClass = (Class<? extends Node>) Class.forName(genClassName);
-                    } catch (ClassNotFoundException e) {
-                        throw new GraalInternalError("Could not find generated class " + genClassName + " for " + getClazz());
-                    }
-                } else {
-                    // Sentinel value denoting no generated class
-                    genClass = Node.class;
-                }
-            }
-            return genClass.equals(Node.class) ? null : genClass;
-        }
-        return null;
-    }
-
     private static boolean containsId(int iterableId, int[] iterableIds) {
         for (int i : iterableIds) {
             if (i == iterableId) {
@@ -253,26 +211,6 @@
         return false;
     }
 
-    /**
-     * Determines if a given {@link Node} class is described by this {@link NodeClass} object. This
-     * is useful for doing an exact type test (as opposed to an instanceof test) on a node. For
-     * example:
-     *
-     * <pre>
-     *     if (node.getNodeClass().is(BeginNode.class)) { ... }
-     * 
-     *     // Due to generated Node classes, the test below
-     *     // is *not* the same as the test above:
-     *     if (node.getClass() == BeginNode.class) { ... }
-     * </pre>
-     *
-     * @param nodeClass a {@linkplain GeneratedNode non-generated} {@link Node} class
-     */
-    public boolean is(Class<? extends Node> nodeClass) {
-        assert !GeneratedNode.class.isAssignableFrom(nodeClass) : "cannot test NodeClass against generated " + nodeClass;
-        return nodeClass == getClazz();
-    }
-
     private String shortName;
 
     public String shortName() {
--- a/graal/com.oracle.graal.hotspot.amd64/src/com/oracle/graal/hotspot/amd64/AMD64RawNativeCallNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.hotspot.amd64/src/com/oracle/graal/hotspot/amd64/AMD64RawNativeCallNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -39,7 +39,7 @@
     @Input NodeInputList<ValueNode> args;
 
     public static AMD64RawNativeCallNode create(Kind returnType, Constant functionPointer, ValueNode[] args) {
-        return USE_GENERATED_NODES ? new AMD64RawNativeCallNodeGen(returnType, functionPointer, args) : new AMD64RawNativeCallNode(returnType, functionPointer, args);
+        return new AMD64RawNativeCallNode(returnType, functionPointer, args);
     }
 
     protected AMD64RawNativeCallNode(Kind returnType, Constant functionPointer, ValueNode[] args) {
--- a/graal/com.oracle.graal.hotspot.hsail/src/com/oracle/graal/hotspot/hsail/replacements/HSAILDirectLoadAcquireNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.hotspot.hsail/src/com/oracle/graal/hotspot/hsail/replacements/HSAILDirectLoadAcquireNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -35,7 +35,7 @@
 public class HSAILDirectLoadAcquireNode extends DirectReadNode {
 
     public static HSAILDirectLoadAcquireNode create(ValueNode address, Kind readKind) {
-        return USE_GENERATED_NODES ? new HSAILDirectLoadAcquireNodeGen(address, readKind) : new HSAILDirectLoadAcquireNode(address, readKind);
+        return new HSAILDirectLoadAcquireNode(address, readKind);
     }
 
     protected HSAILDirectLoadAcquireNode(ValueNode address, Kind readKind) {
--- a/graal/com.oracle.graal.hotspot.hsail/src/com/oracle/graal/hotspot/hsail/replacements/HSAILDirectStoreReleaseNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.hotspot.hsail/src/com/oracle/graal/hotspot/hsail/replacements/HSAILDirectStoreReleaseNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -35,7 +35,7 @@
 public class HSAILDirectStoreReleaseNode extends DirectStoreNode {
 
     public static HSAILDirectStoreReleaseNode create(ValueNode address, ValueNode value, Kind kind) {
-        return USE_GENERATED_NODES ? new HSAILDirectStoreReleaseNodeGen(address, value, kind) : new HSAILDirectStoreReleaseNode(address, value, kind);
+        return new HSAILDirectStoreReleaseNode(address, value, kind);
     }
 
     protected HSAILDirectStoreReleaseNode(ValueNode address, ValueNode value, Kind kind) {
--- a/graal/com.oracle.graal.hotspot.hsail/src/com/oracle/graal/hotspot/hsail/replacements/HSAILWorkItemAbsIdNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.hotspot.hsail/src/com/oracle/graal/hotspot/hsail/replacements/HSAILWorkItemAbsIdNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -33,7 +33,7 @@
 public class HSAILWorkItemAbsIdNode extends FixedWithNextNode implements LIRLowerable {
 
     public static HSAILWorkItemAbsIdNode create() {
-        return USE_GENERATED_NODES ? new HSAILWorkItemAbsIdNodeGen() : new HSAILWorkItemAbsIdNode();
+        return new HSAILWorkItemAbsIdNode();
     }
 
     protected HSAILWorkItemAbsIdNode() {
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/AllocaNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/AllocaNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -52,7 +52,7 @@
     protected final BitSet objects;
 
     public static AllocaNode create(int slots, BitSet objects) {
-        return USE_GENERATED_NODES ? new AllocaNodeGen(slots, objects) : new AllocaNode(slots, objects);
+        return new AllocaNode(slots, objects);
     }
 
     protected AllocaNode(int slots, BitSet objects) {
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/BeginLockScopeNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/BeginLockScopeNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -43,7 +43,7 @@
     protected int lockDepth;
 
     public static BeginLockScopeNode create(int lockDepth) {
-        return USE_GENERATED_NODES ? new BeginLockScopeNodeGen(lockDepth) : new BeginLockScopeNode(lockDepth);
+        return new BeginLockScopeNode(lockDepth);
     }
 
     protected BeginLockScopeNode(int lockDepth) {
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/CStringNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/CStringNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -37,7 +37,7 @@
     protected final String string;
 
     public static CStringNode create(String string) {
-        return USE_GENERATED_NODES ? new CStringNodeGen(string) : new CStringNode(string);
+        return new CStringNode(string);
     }
 
     protected CStringNode(String string) {
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/ClassCastNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/ClassCastNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -39,7 +39,7 @@
 public class ClassCastNode extends MacroStateSplitNode implements Canonicalizable.Binary<ValueNode> {
 
     public static ClassCastNode create(Invoke invoke) {
-        return USE_GENERATED_NODES ? new ClassCastNodeGen(invoke) : new ClassCastNode(invoke);
+        return new ClassCastNode(invoke);
     }
 
     protected ClassCastNode(Invoke invoke) {
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/ClassGetClassLoader0Node.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/ClassGetClassLoader0Node.java	Wed Oct 15 15:35:33 2014 +0200
@@ -40,7 +40,7 @@
 public class ClassGetClassLoader0Node extends MacroStateSplitNode implements Canonicalizable {
 
     public static ClassGetClassLoader0Node create(Invoke invoke) {
-        return USE_GENERATED_NODES ? new ClassGetClassLoader0NodeGen(invoke) : new ClassGetClassLoader0Node(invoke);
+        return new ClassGetClassLoader0Node(invoke);
     }
 
     protected ClassGetClassLoader0Node(Invoke invoke) {
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/ClassGetComponentTypeNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/ClassGetComponentTypeNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -39,7 +39,7 @@
 public class ClassGetComponentTypeNode extends MacroNode implements Canonicalizable {
 
     public static ClassGetComponentTypeNode create(Invoke invoke) {
-        return USE_GENERATED_NODES ? new ClassGetComponentTypeNodeGen(invoke) : new ClassGetComponentTypeNode(invoke);
+        return new ClassGetComponentTypeNode(invoke);
     }
 
     protected ClassGetComponentTypeNode(Invoke invoke) {
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/ClassGetModifiersNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/ClassGetModifiersNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -39,7 +39,7 @@
 public class ClassGetModifiersNode extends MacroNode implements Canonicalizable {
 
     public static ClassGetModifiersNode create(Invoke invoke) {
-        return USE_GENERATED_NODES ? new ClassGetModifiersNodeGen(invoke) : new ClassGetModifiersNode(invoke);
+        return new ClassGetModifiersNode(invoke);
     }
 
     protected ClassGetModifiersNode(Invoke invoke) {
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/ClassGetSuperclassNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/ClassGetSuperclassNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -39,7 +39,7 @@
 public class ClassGetSuperclassNode extends MacroNode implements Canonicalizable {
 
     public static ClassGetSuperclassNode create(Invoke invoke) {
-        return USE_GENERATED_NODES ? new ClassGetSuperclassNodeGen(invoke) : new ClassGetSuperclassNode(invoke);
+        return new ClassGetSuperclassNode(invoke);
     }
 
     protected ClassGetSuperclassNode(Invoke invoke) {
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/ClassIsArrayNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/ClassIsArrayNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -39,7 +39,7 @@
 public class ClassIsArrayNode extends MacroNode implements Canonicalizable {
 
     public static ClassIsArrayNode create(Invoke invoke) {
-        return USE_GENERATED_NODES ? new ClassIsArrayNodeGen(invoke) : new ClassIsArrayNode(invoke);
+        return new ClassIsArrayNode(invoke);
     }
 
     protected ClassIsArrayNode(Invoke invoke) {
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/ClassIsInstanceNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/ClassIsInstanceNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -41,7 +41,7 @@
 public class ClassIsInstanceNode extends MacroNode implements Canonicalizable {
 
     public static ClassIsInstanceNode create(Invoke invoke) {
-        return USE_GENERATED_NODES ? new ClassIsInstanceNodeGen(invoke) : new ClassIsInstanceNode(invoke);
+        return new ClassIsInstanceNode(invoke);
     }
 
     protected ClassIsInstanceNode(Invoke invoke) {
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/ClassIsInterfaceNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/ClassIsInterfaceNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -39,7 +39,7 @@
 public class ClassIsInterfaceNode extends MacroNode implements Canonicalizable {
 
     public static ClassIsInterfaceNode create(Invoke invoke) {
-        return USE_GENERATED_NODES ? new ClassIsInterfaceNodeGen(invoke) : new ClassIsInterfaceNode(invoke);
+        return new ClassIsInterfaceNode(invoke);
     }
 
     protected ClassIsInterfaceNode(Invoke invoke) {
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/ClassIsPrimitiveNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/ClassIsPrimitiveNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -39,7 +39,7 @@
 public class ClassIsPrimitiveNode extends MacroNode implements Canonicalizable {
 
     public static ClassIsPrimitiveNode create(Invoke invoke) {
-        return USE_GENERATED_NODES ? new ClassIsPrimitiveNodeGen(invoke) : new ClassIsPrimitiveNode(invoke);
+        return new ClassIsPrimitiveNode(invoke);
     }
 
     protected ClassIsPrimitiveNode(Invoke invoke) {
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/CompressionNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/CompressionNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -51,7 +51,7 @@
     protected final CompressEncoding encoding;
 
     public static CompressionNode create(CompressionOp op, ValueNode input, CompressEncoding encoding) {
-        return USE_GENERATED_NODES ? new CompressionNodeGen(op, input, encoding) : new CompressionNode(op, input, encoding);
+        return new CompressionNode(op, input, encoding);
     }
 
     protected CompressionNode(CompressionOp op, ValueNode input, CompressEncoding encoding) {
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/CurrentJavaThreadNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/CurrentJavaThreadNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -43,7 +43,7 @@
     protected LIRKind wordKind;
 
     public static CurrentJavaThreadNode create(Kind kind) {
-        return USE_GENERATED_NODES ? new CurrentJavaThreadNodeGen(kind) : new CurrentJavaThreadNode(kind);
+        return new CurrentJavaThreadNode(kind);
     }
 
     protected CurrentJavaThreadNode(Kind kind) {
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/CurrentLockNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/CurrentLockNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -39,7 +39,7 @@
     protected int lockDepth;
 
     public static CurrentLockNode create(int lockDepth) {
-        return USE_GENERATED_NODES ? new CurrentLockNodeGen(lockDepth) : new CurrentLockNode(lockDepth);
+        return new CurrentLockNode(lockDepth);
     }
 
     protected CurrentLockNode(int lockDepth) {
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/DeoptimizationFetchUnrollInfoCallNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/DeoptimizationFetchUnrollInfoCallNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -45,7 +45,7 @@
     protected final ForeignCallsProvider foreignCalls;
 
     public static DeoptimizationFetchUnrollInfoCallNode create(@InjectedNodeParameter ForeignCallsProvider foreignCalls, ValueNode registerSaver) {
-        return USE_GENERATED_NODES ? new DeoptimizationFetchUnrollInfoCallNodeGen(foreignCalls, registerSaver) : new DeoptimizationFetchUnrollInfoCallNode(foreignCalls, registerSaver);
+        return new DeoptimizationFetchUnrollInfoCallNode(foreignCalls, registerSaver);
     }
 
     protected DeoptimizationFetchUnrollInfoCallNode(ForeignCallsProvider foreignCalls, ValueNode registerSaver) {
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/DeoptimizeCallerNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/DeoptimizeCallerNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -39,7 +39,7 @@
     protected final DeoptimizationReason reason;
 
     public static DeoptimizeCallerNode create(DeoptimizationAction action, DeoptimizationReason reason) {
-        return USE_GENERATED_NODES ? new DeoptimizeCallerNodeGen(action, reason) : new DeoptimizeCallerNode(action, reason);
+        return new DeoptimizeCallerNode(action, reason);
     }
 
     protected DeoptimizeCallerNode(DeoptimizationAction action, DeoptimizationReason reason) {
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/DeoptimizingStubCall.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/DeoptimizingStubCall.java	Wed Oct 15 15:35:33 2014 +0200
@@ -30,7 +30,7 @@
 public class DeoptimizingStubCall extends DeoptimizingFixedWithNextNode {
 
     public static DeoptimizingStubCall create(Stamp stamp) {
-        return USE_GENERATED_NODES ? new DeoptimizingStubCallGen(stamp) : new DeoptimizingStubCall(stamp);
+        return new DeoptimizingStubCall(stamp);
     }
 
     protected DeoptimizingStubCall(Stamp stamp) {
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/DimensionsNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/DimensionsNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -44,7 +44,7 @@
     protected final int rank;
 
     public static DimensionsNode create(int rank) {
-        return USE_GENERATED_NODES ? new DimensionsNodeGen(rank) : new DimensionsNode(rank);
+        return new DimensionsNode(rank);
     }
 
     protected DimensionsNode(int rank) {
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/DirectCompareAndSwapNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/DirectCompareAndSwapNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -48,8 +48,7 @@
     protected final LocationIdentity locationIdentity;
 
     public static DirectCompareAndSwapNode create(ValueNode object, ValueNode offset, ValueNode expected, ValueNode newValue, LocationIdentity locationIdentity) {
-        return USE_GENERATED_NODES ? new DirectCompareAndSwapNodeGen(object, offset, expected, newValue, locationIdentity) : new DirectCompareAndSwapNode(object, offset, expected, newValue,
-                        locationIdentity);
+        return new DirectCompareAndSwapNode(object, offset, expected, newValue, locationIdentity);
     }
 
     protected DirectCompareAndSwapNode(ValueNode object, ValueNode offset, ValueNode expected, ValueNode newValue, LocationIdentity locationIdentity) {
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/EndLockScopeNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/EndLockScopeNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -37,7 +37,7 @@
 public class EndLockScopeNode extends AbstractMemoryCheckpoint implements LIRLowerable, MonitorExit, MemoryCheckpoint.Single {
 
     public static EndLockScopeNode create() {
-        return USE_GENERATED_NODES ? new EndLockScopeNodeGen() : new EndLockScopeNode();
+        return new EndLockScopeNode();
     }
 
     protected EndLockScopeNode() {
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/EnterUnpackFramesStackFrameNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/EnterUnpackFramesStackFrameNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -44,8 +44,7 @@
     @Input SaveAllRegistersNode registerSaver;
 
     public static EnterUnpackFramesStackFrameNode create(ValueNode framePc, ValueNode senderSp, ValueNode senderFp, ValueNode registerSaver) {
-        return USE_GENERATED_NODES ? new EnterUnpackFramesStackFrameNodeGen(framePc, senderSp, senderFp, registerSaver) : new EnterUnpackFramesStackFrameNode(framePc, senderSp, senderFp,
-                        registerSaver);
+        return new EnterUnpackFramesStackFrameNode(framePc, senderSp, senderFp, registerSaver);
     }
 
     protected EnterUnpackFramesStackFrameNode(ValueNode framePc, ValueNode senderSp, ValueNode senderFp, ValueNode registerSaver) {
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/G1ArrayRangePostWriteBarrier.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/G1ArrayRangePostWriteBarrier.java	Wed Oct 15 15:35:33 2014 +0200
@@ -29,7 +29,7 @@
 public class G1ArrayRangePostWriteBarrier extends ArrayRangeWriteBarrier {
 
     public static G1ArrayRangePostWriteBarrier create(ValueNode object, ValueNode startIndex, ValueNode length) {
-        return USE_GENERATED_NODES ? new G1ArrayRangePostWriteBarrierGen(object, startIndex, length) : new G1ArrayRangePostWriteBarrier(object, startIndex, length);
+        return new G1ArrayRangePostWriteBarrier(object, startIndex, length);
     }
 
     protected G1ArrayRangePostWriteBarrier(ValueNode object, ValueNode startIndex, ValueNode length) {
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/G1ArrayRangePreWriteBarrier.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/G1ArrayRangePreWriteBarrier.java	Wed Oct 15 15:35:33 2014 +0200
@@ -29,7 +29,7 @@
 public class G1ArrayRangePreWriteBarrier extends ArrayRangeWriteBarrier {
 
     public static G1ArrayRangePreWriteBarrier create(ValueNode object, ValueNode startIndex, ValueNode length) {
-        return USE_GENERATED_NODES ? new G1ArrayRangePreWriteBarrierGen(object, startIndex, length) : new G1ArrayRangePreWriteBarrier(object, startIndex, length);
+        return new G1ArrayRangePreWriteBarrier(object, startIndex, length);
     }
 
     protected G1ArrayRangePreWriteBarrier(ValueNode object, ValueNode startIndex, ValueNode length) {
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/G1PostWriteBarrier.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/G1PostWriteBarrier.java	Wed Oct 15 15:35:33 2014 +0200
@@ -32,7 +32,7 @@
     protected final boolean alwaysNull;
 
     public static G1PostWriteBarrier create(ValueNode object, ValueNode value, LocationNode location, boolean precise, boolean alwaysNull) {
-        return USE_GENERATED_NODES ? new G1PostWriteBarrierGen(object, value, location, precise, alwaysNull) : new G1PostWriteBarrier(object, value, location, precise, alwaysNull);
+        return new G1PostWriteBarrier(object, value, location, precise, alwaysNull);
     }
 
     protected G1PostWriteBarrier(ValueNode object, ValueNode value, LocationNode location, boolean precise, boolean alwaysNull) {
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/G1PreWriteBarrier.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/G1PreWriteBarrier.java	Wed Oct 15 15:35:33 2014 +0200
@@ -34,7 +34,7 @@
     protected final boolean doLoad;
 
     public static G1PreWriteBarrier create(ValueNode object, ValueNode expectedObject, LocationNode location, boolean doLoad, boolean nullCheck) {
-        return USE_GENERATED_NODES ? new G1PreWriteBarrierGen(object, expectedObject, location, doLoad, nullCheck) : new G1PreWriteBarrier(object, expectedObject, location, doLoad, nullCheck);
+        return new G1PreWriteBarrier(object, expectedObject, location, doLoad, nullCheck);
     }
 
     protected G1PreWriteBarrier(ValueNode object, ValueNode expectedObject, LocationNode location, boolean doLoad, boolean nullCheck) {
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/G1ReferentFieldReadBarrier.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/G1ReferentFieldReadBarrier.java	Wed Oct 15 15:35:33 2014 +0200
@@ -38,7 +38,7 @@
     protected final boolean doLoad;
 
     public static G1ReferentFieldReadBarrier create(ValueNode object, ValueNode expectedObject, LocationNode location, boolean doLoad) {
-        return USE_GENERATED_NODES ? new G1ReferentFieldReadBarrierGen(object, expectedObject, location, doLoad) : new G1ReferentFieldReadBarrier(object, expectedObject, location, doLoad);
+        return new G1ReferentFieldReadBarrier(object, expectedObject, location, doLoad);
     }
 
     protected G1ReferentFieldReadBarrier(ValueNode object, ValueNode expectedObject, LocationNode location, boolean doLoad) {
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/GetObjectAddressNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/GetObjectAddressNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -39,7 +39,7 @@
     @Input ValueNode object;
 
     public static GetObjectAddressNode create(ValueNode obj) {
-        return USE_GENERATED_NODES ? new GetObjectAddressNodeGen(obj) : new GetObjectAddressNode(obj);
+        return new GetObjectAddressNode(obj);
     }
 
     protected GetObjectAddressNode(ValueNode obj) {
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/HotSpotDirectCallTargetNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/HotSpotDirectCallTargetNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -33,8 +33,7 @@
 @NodeInfo
 public class HotSpotDirectCallTargetNode extends DirectCallTargetNode {
     public static HotSpotDirectCallTargetNode create(List<ValueNode> arguments, Stamp returnStamp, JavaType[] signature, ResolvedJavaMethod target, Type callType, InvokeKind invokeKind) {
-        return USE_GENERATED_NODES ? new HotSpotDirectCallTargetNodeGen(arguments, returnStamp, signature, target, callType, invokeKind) : new HotSpotDirectCallTargetNode(arguments, returnStamp,
-                        signature, target, callType, invokeKind);
+        return new HotSpotDirectCallTargetNode(arguments, returnStamp, signature, target, callType, invokeKind);
     }
 
     protected HotSpotDirectCallTargetNode(List<ValueNode> arguments, Stamp returnStamp, JavaType[] signature, ResolvedJavaMethod target, Type callType, InvokeKind invokeKind) {
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/HotSpotIndirectCallTargetNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/HotSpotIndirectCallTargetNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -37,8 +37,7 @@
 
     public static HotSpotIndirectCallTargetNode create(ValueNode metaspaceMethod, ValueNode computedAddress, List<ValueNode> arguments, Stamp returnStamp, JavaType[] signature,
                     ResolvedJavaMethod target, Type callType, InvokeKind invokeKind) {
-        return USE_GENERATED_NODES ? new HotSpotIndirectCallTargetNodeGen(metaspaceMethod, computedAddress, arguments, returnStamp, signature, target, callType, invokeKind)
-                        : new HotSpotIndirectCallTargetNode(metaspaceMethod, computedAddress, arguments, returnStamp, signature, target, callType, invokeKind);
+        return new HotSpotIndirectCallTargetNode(metaspaceMethod, computedAddress, arguments, returnStamp, signature, target, callType, invokeKind);
     }
 
     protected HotSpotIndirectCallTargetNode(ValueNode metaspaceMethod, ValueNode computedAddress, List<ValueNode> arguments, Stamp returnStamp, JavaType[] signature, ResolvedJavaMethod target,
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/JumpToExceptionHandlerInCallerNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/JumpToExceptionHandlerInCallerNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -41,8 +41,7 @@
     @Input ValueNode exceptionPc;
 
     public static JumpToExceptionHandlerInCallerNode create(ValueNode handlerInCallerPc, ValueNode exception, ValueNode exceptionPc) {
-        return USE_GENERATED_NODES ? new JumpToExceptionHandlerInCallerNodeGen(handlerInCallerPc, exception, exceptionPc) : new JumpToExceptionHandlerInCallerNode(handlerInCallerPc, exception,
-                        exceptionPc);
+        return new JumpToExceptionHandlerInCallerNode(handlerInCallerPc, exception, exceptionPc);
     }
 
     protected JumpToExceptionHandlerInCallerNode(ValueNode handlerInCallerPc, ValueNode exception, ValueNode exceptionPc) {
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/LeaveCurrentStackFrameNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/LeaveCurrentStackFrameNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -39,7 +39,7 @@
     @Input SaveAllRegistersNode registerSaver;
 
     public static LeaveCurrentStackFrameNode create(ValueNode registerSaver) {
-        return USE_GENERATED_NODES ? new LeaveCurrentStackFrameNodeGen(registerSaver) : new LeaveCurrentStackFrameNode(registerSaver);
+        return new LeaveCurrentStackFrameNode(registerSaver);
     }
 
     protected LeaveCurrentStackFrameNode(ValueNode registerSaver) {
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/LeaveDeoptimizedStackFrameNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/LeaveDeoptimizedStackFrameNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -42,7 +42,7 @@
     @Input ValueNode initialInfo;
 
     public static LeaveDeoptimizedStackFrameNode create(ValueNode frameSize, ValueNode initialInfo) {
-        return USE_GENERATED_NODES ? new LeaveDeoptimizedStackFrameNodeGen(frameSize, initialInfo) : new LeaveDeoptimizedStackFrameNode(frameSize, initialInfo);
+        return new LeaveDeoptimizedStackFrameNode(frameSize, initialInfo);
     }
 
     protected LeaveDeoptimizedStackFrameNode(ValueNode frameSize, ValueNode initialInfo) {
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/LeaveUnpackFramesStackFrameNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/LeaveUnpackFramesStackFrameNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -39,7 +39,7 @@
     @Input SaveAllRegistersNode registerSaver;
 
     public static LeaveUnpackFramesStackFrameNode create(ValueNode registerSaver) {
-        return USE_GENERATED_NODES ? new LeaveUnpackFramesStackFrameNodeGen(registerSaver) : new LeaveUnpackFramesStackFrameNode(registerSaver);
+        return new LeaveUnpackFramesStackFrameNode(registerSaver);
     }
 
     protected LeaveUnpackFramesStackFrameNode(ValueNode registerSaver) {
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/MonitorCounterNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/MonitorCounterNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -38,7 +38,7 @@
 public class MonitorCounterNode extends FloatingNode implements LIRLowerable {
 
     public static MonitorCounterNode create() {
-        return USE_GENERATED_NODES ? new MonitorCounterNodeGen() : new MonitorCounterNode();
+        return new MonitorCounterNode();
     }
 
     protected MonitorCounterNode() {
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/NewArrayStubCall.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/NewArrayStubCall.java	Wed Oct 15 15:35:33 2014 +0200
@@ -46,7 +46,7 @@
     @Input ValueNode length;
 
     public static NewArrayStubCall create(ValueNode hub, ValueNode length) {
-        return USE_GENERATED_NODES ? new NewArrayStubCallGen(hub, length) : new NewArrayStubCall(hub, length);
+        return new NewArrayStubCall(hub, length);
     }
 
     protected NewArrayStubCall(ValueNode hub, ValueNode length) {
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/NewInstanceStubCall.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/NewInstanceStubCall.java	Wed Oct 15 15:35:33 2014 +0200
@@ -45,7 +45,7 @@
     @Input ValueNode hub;
 
     public static NewInstanceStubCall create(ValueNode hub) {
-        return USE_GENERATED_NODES ? new NewInstanceStubCallGen(hub) : new NewInstanceStubCall(hub);
+        return new NewInstanceStubCall(hub);
     }
 
     protected NewInstanceStubCall(ValueNode hub) {
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/NewMultiArrayStubCall.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/NewMultiArrayStubCall.java	Wed Oct 15 15:35:33 2014 +0200
@@ -47,7 +47,7 @@
     protected final int rank;
 
     public static NewMultiArrayStubCall create(@InjectedNodeParameter ForeignCallsProvider foreignCalls, ValueNode hub, int rank, ValueNode dims) {
-        return USE_GENERATED_NODES ? new NewMultiArrayStubCallGen(foreignCalls, hub, rank, dims) : new NewMultiArrayStubCall(foreignCalls, hub, rank, dims);
+        return new NewMultiArrayStubCall(foreignCalls, hub, rank, dims);
     }
 
     protected NewMultiArrayStubCall(ForeignCallsProvider foreignCalls, ValueNode hub, int rank, ValueNode dims) {
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/PatchReturnAddressNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/PatchReturnAddressNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -38,7 +38,7 @@
     @Input ValueNode address;
 
     public static PatchReturnAddressNode create(ValueNode address) {
-        return USE_GENERATED_NODES ? new PatchReturnAddressNodeGen(address) : new PatchReturnAddressNode(address);
+        return new PatchReturnAddressNode(address);
     }
 
     protected PatchReturnAddressNode(ValueNode address) {
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/PrefetchAllocateNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/PrefetchAllocateNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -37,7 +37,7 @@
     @Input ValueNode address;
 
     public static PrefetchAllocateNode create(ValueNode address, ValueNode distance) {
-        return USE_GENERATED_NODES ? new PrefetchAllocateNodeGen(address, distance) : new PrefetchAllocateNode(address, distance);
+        return new PrefetchAllocateNode(address, distance);
     }
 
     protected PrefetchAllocateNode(ValueNode address, ValueNode distance) {
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/PushInterpreterFrameNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/PushInterpreterFrameNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -42,7 +42,7 @@
     @Input ValueNode initialInfo;
 
     public static PushInterpreterFrameNode create(ValueNode frameSize, ValueNode framePc, ValueNode senderSp, ValueNode initialInfo) {
-        return USE_GENERATED_NODES ? new PushInterpreterFrameNodeGen(frameSize, framePc, senderSp, initialInfo) : new PushInterpreterFrameNode(frameSize, framePc, senderSp, initialInfo);
+        return new PushInterpreterFrameNode(frameSize, framePc, senderSp, initialInfo);
     }
 
     protected PushInterpreterFrameNode(ValueNode frameSize, ValueNode framePc, ValueNode senderSp, ValueNode initialInfo) {
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/SaveAllRegistersNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/SaveAllRegistersNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -40,7 +40,7 @@
     protected SaveRegistersOp saveRegistersOp;
 
     public static SaveAllRegistersNode create() {
-        return USE_GENERATED_NODES ? new SaveAllRegistersNodeGen() : new SaveAllRegistersNode();
+        return new SaveAllRegistersNode();
     }
 
     protected SaveAllRegistersNode() {
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/SerialArrayRangeWriteBarrier.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/SerialArrayRangeWriteBarrier.java	Wed Oct 15 15:35:33 2014 +0200
@@ -29,7 +29,7 @@
 public class SerialArrayRangeWriteBarrier extends ArrayRangeWriteBarrier {
 
     public static SerialArrayRangeWriteBarrier create(ValueNode object, ValueNode startIndex, ValueNode length) {
-        return USE_GENERATED_NODES ? new SerialArrayRangeWriteBarrierGen(object, startIndex, length) : new SerialArrayRangeWriteBarrier(object, startIndex, length);
+        return new SerialArrayRangeWriteBarrier(object, startIndex, length);
     }
 
     protected SerialArrayRangeWriteBarrier(ValueNode object, ValueNode startIndex, ValueNode length) {
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/SerialWriteBarrier.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/SerialWriteBarrier.java	Wed Oct 15 15:35:33 2014 +0200
@@ -32,7 +32,7 @@
     protected final boolean alwaysNull;
 
     public static SerialWriteBarrier create(ValueNode object, LocationNode location, boolean precise, boolean alwaysNull) {
-        return USE_GENERATED_NODES ? new SerialWriteBarrierGen(object, location, precise, alwaysNull) : new SerialWriteBarrier(object, location, precise, alwaysNull);
+        return new SerialWriteBarrier(object, location, precise, alwaysNull);
     }
 
     protected SerialWriteBarrier(ValueNode object, LocationNode location, boolean precise, boolean alwaysNull) {
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/SnippetAnchorNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/SnippetAnchorNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -32,7 +32,7 @@
 public class SnippetAnchorNode extends FixedWithNextNode implements Simplifiable, GuardingNode {
 
     public static SnippetAnchorNode create() {
-        return USE_GENERATED_NODES ? new SnippetAnchorNodeGen() : new SnippetAnchorNode();
+        return new SnippetAnchorNode();
     }
 
     protected SnippetAnchorNode() {
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/SnippetLocationProxyNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/SnippetLocationProxyNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -36,7 +36,7 @@
     @Input(InputType.Unchecked) ValueNode location;
 
     public static SnippetLocationProxyNode create(ValueNode location) {
-        return USE_GENERATED_NODES ? new SnippetLocationProxyNodeGen(location) : new SnippetLocationProxyNode(location);
+        return new SnippetLocationProxyNode(location);
     }
 
     protected SnippetLocationProxyNode(ValueNode location) {
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/StubForeignCallNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/StubForeignCallNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -46,7 +46,7 @@
     protected final ForeignCallDescriptor descriptor;
 
     public static StubForeignCallNode create(@InjectedNodeParameter ForeignCallsProvider foreignCalls, ForeignCallDescriptor descriptor, ValueNode... arguments) {
-        return USE_GENERATED_NODES ? new StubForeignCallNodeGen(foreignCalls, descriptor, arguments) : new StubForeignCallNode(foreignCalls, descriptor, arguments);
+        return new StubForeignCallNode(foreignCalls, descriptor, arguments);
     }
 
     protected StubForeignCallNode(@InjectedNodeParameter ForeignCallsProvider foreignCalls, ForeignCallDescriptor descriptor, ValueNode... arguments) {
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/StubStartNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/StubStartNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -35,7 +35,7 @@
     protected final Stub stub;
 
     public static StubStartNode create(Stub stub) {
-        return USE_GENERATED_NODES ? new StubStartNodeGen(stub) : new StubStartNode(stub);
+        return new StubStartNode(stub);
     }
 
     protected StubStartNode(Stub stub) {
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/TailcallNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/TailcallNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -53,7 +53,7 @@
      * @param frameState the parameters will be taken from this FrameState
      */
     public static TailcallNode create(ValueNode target, FrameState frameState) {
-        return USE_GENERATED_NODES ? new TailcallNodeGen(target, frameState) : new TailcallNode(target, frameState);
+        return new TailcallNode(target, frameState);
     }
 
     protected TailcallNode(ValueNode target, FrameState frameState) {
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/UncommonTrapCallNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/UncommonTrapCallNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -46,7 +46,7 @@
     protected final ForeignCallsProvider foreignCalls;
 
     public static UncommonTrapCallNode create(@InjectedNodeParameter ForeignCallsProvider foreignCalls, ValueNode registerSaver, ValueNode trapRequest) {
-        return USE_GENERATED_NODES ? new UncommonTrapCallNodeGen(foreignCalls, registerSaver, trapRequest) : new UncommonTrapCallNode(foreignCalls, registerSaver, trapRequest);
+        return new UncommonTrapCallNode(foreignCalls, registerSaver, trapRequest);
     }
 
     protected UncommonTrapCallNode(@InjectedNodeParameter ForeignCallsProvider foreignCalls, ValueNode registerSaver, ValueNode trapRequest) {
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/VMErrorNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/VMErrorNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -44,7 +44,7 @@
     @Input ValueNode value;
 
     public static VMErrorNode create(String format, ValueNode value) {
-        return USE_GENERATED_NODES ? new VMErrorNodeGen(format, value) : new VMErrorNode(format, value);
+        return new VMErrorNode(format, value);
     }
 
     protected VMErrorNode(String format, ValueNode value) {
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/ArrayCopyCallNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/ArrayCopyCallNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -60,8 +60,7 @@
 
     public static ArrayCopyCallNode create(ValueNode src, ValueNode srcPos, ValueNode dest, ValueNode destPos, ValueNode length, Kind elementKind, boolean aligned, boolean disjoint,
                     boolean uninitialized) {
-        return USE_GENERATED_NODES ? new ArrayCopyCallNodeGen(src, srcPos, dest, destPos, length, elementKind, aligned, disjoint, uninitialized) : new ArrayCopyCallNode(src, srcPos, dest, destPos,
-                        length, elementKind, aligned, disjoint, uninitialized);
+        return new ArrayCopyCallNode(src, srcPos, dest, destPos, length, elementKind, aligned, disjoint, uninitialized);
     }
 
     protected ArrayCopyCallNode(ValueNode src, ValueNode srcPos, ValueNode dest, ValueNode destPos, ValueNode length, Kind elementKind, boolean aligned, boolean disjoint, boolean uninitialized) {
@@ -79,8 +78,7 @@
     }
 
     public static ArrayCopyCallNode create(ValueNode src, ValueNode srcPos, ValueNode dest, ValueNode destPos, ValueNode length, Kind elementKind, boolean disjoint) {
-        return USE_GENERATED_NODES ? new ArrayCopyCallNodeGen(src, srcPos, dest, destPos, length, elementKind, disjoint) : new ArrayCopyCallNode(src, srcPos, dest, destPos, length, elementKind,
-                        disjoint);
+        return new ArrayCopyCallNode(src, srcPos, dest, destPos, length, elementKind, disjoint);
     }
 
     protected ArrayCopyCallNode(ValueNode src, ValueNode srcPos, ValueNode dest, ValueNode destPos, ValueNode length, Kind elementKind, boolean disjoint) {
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/ArrayCopyNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/ArrayCopyNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -41,7 +41,7 @@
 public class ArrayCopyNode extends BasicArrayCopyNode implements Virtualizable, Lowerable {
 
     public static ArrayCopyNode create(Invoke invoke) {
-        return USE_GENERATED_NODES ? new ArrayCopyNodeGen(invoke) : new ArrayCopyNode(invoke);
+        return new ArrayCopyNode(invoke);
     }
 
     protected ArrayCopyNode(Invoke invoke) {
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/CallSiteTargetNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/CallSiteTargetNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -38,7 +38,7 @@
 public class CallSiteTargetNode extends MacroStateSplitNode implements Canonicalizable, Lowerable {
 
     public static CallSiteTargetNode create(Invoke invoke) {
-        return USE_GENERATED_NODES ? new CallSiteTargetNodeGen(invoke) : new CallSiteTargetNode(invoke);
+        return new CallSiteTargetNode(invoke);
     }
 
     protected CallSiteTargetNode(Invoke invoke) {
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/CompositeValueClassSubstitutions.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/CompositeValueClassSubstitutions.java	Wed Oct 15 15:35:33 2014 +0200
@@ -48,7 +48,7 @@
     public static class CompositeValueClassGetNode extends PureFunctionMacroNode {
 
         public static CompositeValueClassGetNode create(Invoke invoke) {
-            return USE_GENERATED_NODES ? new CompositeValueClassSubstitutions_CompositeValueClassGetNodeGen(invoke) : new CompositeValueClassGetNode(invoke);
+            return new CompositeValueClassGetNode(invoke);
         }
 
         protected CompositeValueClassGetNode(Invoke invoke) {
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/HotSpotNodeClassSubstitutions.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/HotSpotNodeClassSubstitutions.java	Wed Oct 15 15:35:33 2014 +0200
@@ -48,7 +48,7 @@
     public static class NodeClassGetNode extends PureFunctionMacroNode {
 
         public static NodeClassGetNode create(Invoke invoke) {
-            return USE_GENERATED_NODES ? new HotSpotNodeClassSubstitutions_NodeClassGetNodeGen(invoke) : new NodeClassGetNode(invoke);
+            return new NodeClassGetNode(invoke);
         }
 
         protected NodeClassGetNode(Invoke invoke) {
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/MethodHandleNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/MethodHandleNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -57,7 +57,7 @@
     @Input NodeInputList<ValueNode> replacementArguments;
 
     public static MethodHandleNode create(Invoke invoke) {
-        return USE_GENERATED_NODES ? new MethodHandleNodeGen(invoke) : new MethodHandleNode(invoke);
+        return new MethodHandleNode(invoke);
     }
 
     protected MethodHandleNode(Invoke invoke) {
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/ObjectCloneNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/ObjectCloneNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -40,7 +40,7 @@
 public class ObjectCloneNode extends BasicObjectCloneNode implements VirtualizableAllocation, ArrayLengthProvider {
 
     public static ObjectCloneNode create(Invoke invoke) {
-        return USE_GENERATED_NODES ? new ObjectCloneNodeGen(invoke) : new ObjectCloneNode(invoke);
+        return new ObjectCloneNode(invoke);
     }
 
     protected ObjectCloneNode(Invoke invoke) {
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/ObjectGetClassNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/ObjectGetClassNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -42,7 +42,7 @@
 public class ObjectGetClassNode extends MacroNode implements Virtualizable, Canonicalizable {
 
     public static ObjectGetClassNode create(Invoke invoke) {
-        return USE_GENERATED_NODES ? new ObjectGetClassNodeGen(invoke) : new ObjectGetClassNode(invoke);
+        return new ObjectGetClassNode(invoke);
     }
 
     protected ObjectGetClassNode(Invoke invoke) {
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/ReflectionGetCallerClassNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/ReflectionGetCallerClassNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -38,7 +38,7 @@
 public class ReflectionGetCallerClassNode extends MacroStateSplitNode implements Canonicalizable, Lowerable {
 
     public static ReflectionGetCallerClassNode create(Invoke invoke) {
-        return USE_GENERATED_NODES ? new ReflectionGetCallerClassNodeGen(invoke) : new ReflectionGetCallerClassNode(invoke);
+        return new ReflectionGetCallerClassNode(invoke);
     }
 
     protected ReflectionGetCallerClassNode(Invoke invoke) {
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/SystemIdentityHashCodeNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/SystemIdentityHashCodeNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -34,7 +34,7 @@
 public class SystemIdentityHashCodeNode extends PureFunctionMacroNode {
 
     public static SystemIdentityHashCodeNode create(Invoke invoke) {
-        return USE_GENERATED_NODES ? new SystemIdentityHashCodeNodeGen(invoke) : new SystemIdentityHashCodeNode(invoke);
+        return new SystemIdentityHashCodeNode(invoke);
     }
 
     protected SystemIdentityHashCodeNode(Invoke invoke) {
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/UnsafeArrayCopyNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/UnsafeArrayCopyNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -45,8 +45,7 @@
     protected Kind elementKind;
 
     public static UnsafeArrayCopyNode create(ValueNode src, ValueNode srcPos, ValueNode dest, ValueNode destPos, ValueNode length, ValueNode layoutHelper, Kind elementKind) {
-        return USE_GENERATED_NODES ? new UnsafeArrayCopyNodeGen(src, srcPos, dest, destPos, length, layoutHelper, elementKind) : new UnsafeArrayCopyNode(src, srcPos, dest, destPos, length,
-                        layoutHelper, elementKind);
+        return new UnsafeArrayCopyNode(src, srcPos, dest, destPos, length, layoutHelper, elementKind);
     }
 
     protected UnsafeArrayCopyNode(ValueNode src, ValueNode srcPos, ValueNode dest, ValueNode destPos, ValueNode length, ValueNode layoutHelper, Kind elementKind) {
@@ -62,7 +61,7 @@
     }
 
     public static UnsafeArrayCopyNode create(ValueNode src, ValueNode srcPos, ValueNode dest, ValueNode destPos, ValueNode length, Kind elementKind) {
-        return USE_GENERATED_NODES ? new UnsafeArrayCopyNodeGen(src, srcPos, dest, destPos, length, elementKind) : new UnsafeArrayCopyNode(src, srcPos, dest, destPos, length, elementKind);
+        return new UnsafeArrayCopyNode(src, srcPos, dest, destPos, length, elementKind);
     }
 
     protected UnsafeArrayCopyNode(ValueNode src, ValueNode srcPos, ValueNode dest, ValueNode destPos, ValueNode length, Kind elementKind) {
@@ -70,7 +69,7 @@
     }
 
     public static UnsafeArrayCopyNode create(ValueNode src, ValueNode srcPos, ValueNode dest, ValueNode destPos, ValueNode length, ValueNode layoutHelper) {
-        return USE_GENERATED_NODES ? new UnsafeArrayCopyNodeGen(src, srcPos, dest, destPos, length, layoutHelper) : new UnsafeArrayCopyNode(src, srcPos, dest, destPos, length, layoutHelper);
+        return new UnsafeArrayCopyNode(src, srcPos, dest, destPos, length, layoutHelper);
     }
 
     protected UnsafeArrayCopyNode(ValueNode src, ValueNode srcPos, ValueNode dest, ValueNode destPos, ValueNode length, ValueNode layoutHelper) {
--- a/graal/com.oracle.graal.java/src/com/oracle/graal/java/GraphBuilderPhase.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.java/src/com/oracle/graal/java/GraphBuilderPhase.java	Wed Oct 15 15:35:33 2014 +0200
@@ -111,7 +111,7 @@
             protected final Object nextPlaceholder;
 
             public static BlockPlaceholderNode create(BytecodeParser builder) {
-                return USE_GENERATED_NODES ? new GraphBuilderPhase_Instance_BlockPlaceholderNodeGen(builder) : new BlockPlaceholderNode(builder);
+                return new BlockPlaceholderNode(builder);
             }
 
             protected BlockPlaceholderNode(BytecodeParser builder) {
@@ -1346,7 +1346,7 @@
                         frameState.clearNonLiveLocals(currentBlock, liveness, false);
                     }
                     if (lastInstr instanceof StateSplit) {
-                        if (lastInstr.getNodeClass().is(BeginNode.class)) {
+                        if (lastInstr.getClass() == BeginNode.class) {
                             // BeginNodes do not need a frame state
                         } else {
                             StateSplit stateSplit = (StateSplit) lastInstr;
--- a/graal/com.oracle.graal.nodeinfo.processor/src/com/oracle/graal/nodeinfo/processor/GraphNodeGenerator.java	Wed Oct 15 13:11:42 2014 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,542 +0,0 @@
-/*
- * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
- * or visit www.oracle.com if you need additional information or have any
- * questions.
- */
-package com.oracle.graal.nodeinfo.processor;
-
-import static com.oracle.truffle.dsl.processor.java.ElementUtils.*;
-import static java.util.Arrays.*;
-import static javax.lang.model.element.Modifier.*;
-
-import java.util.*;
-import java.util.stream.*;
-
-import javax.annotation.processing.*;
-import javax.lang.model.element.*;
-import javax.lang.model.type.*;
-import javax.lang.model.util.*;
-import javax.tools.Diagnostic.Kind;
-
-import com.oracle.graal.nodeinfo.*;
-import com.oracle.truffle.dsl.processor.java.*;
-import com.oracle.truffle.dsl.processor.java.compiler.*;
-import com.oracle.truffle.dsl.processor.java.compiler.Compiler;
-import com.oracle.truffle.dsl.processor.java.model.*;
-
-/**
- * Generates the source code for a Node class.
- */
-public class GraphNodeGenerator {
-
-    private final GraphNodeProcessor env;
-    private final Types types;
-    private final Elements elements;
-
-    private final TypeElement Input;
-    private final TypeElement OptionalInput;
-    private final TypeElement Successor;
-
-    final TypeElement Node;
-    private final TypeElement NodeInputList;
-    private final TypeElement NodeSuccessorList;
-    private final TypeElement ValueNumberable;
-
-    private final List<VariableElement> inputFields = new ArrayList<>();
-    private final List<VariableElement> inputListFields = new ArrayList<>();
-    private final List<VariableElement> successorFields = new ArrayList<>();
-    private final List<VariableElement> successorListFields = new ArrayList<>();
-    private final List<VariableElement> dataFields = new ArrayList<>();
-    private final Set<VariableElement> optionalInputs = new HashSet<>();
-    private final Map<VariableElement, VariableElement> inputTypes = new HashMap<>();
-
-    private CodeTypeElement genClass;
-    private String genClassName;
-
-    public GraphNodeGenerator(GraphNodeProcessor processor) {
-        this.env = processor;
-
-        this.types = processor.getProcessingEnv().getTypeUtils();
-        this.elements = processor.getProcessingEnv().getElementUtils();
-
-        this.Input = getTypeElement("com.oracle.graal.graph.Node.Input");
-        this.OptionalInput = getTypeElement("com.oracle.graal.graph.Node.OptionalInput");
-        this.Successor = getTypeElement("com.oracle.graal.graph.Node.Successor");
-        this.Node = getTypeElement("com.oracle.graal.graph.Node");
-        this.NodeInputList = getTypeElement("com.oracle.graal.graph.NodeInputList");
-        this.NodeSuccessorList = getTypeElement("com.oracle.graal.graph.NodeSuccessorList");
-        this.ValueNumberable = getTypeElement("com.oracle.graal.graph.Node.ValueNumberable");
-    }
-
-    @SafeVarargs
-    private static Collection<VariableElement> concat(List<VariableElement> fields1, List<VariableElement> fields2, List<VariableElement>... tail) {
-        return new AbstractCollection<VariableElement>() {
-
-            @Override
-            public Iterator<VariableElement> iterator() {
-                Stream<VariableElement> joined = Stream.concat(fields1.stream(), fields2.stream());
-                for (List<VariableElement> t : tail) {
-                    joined = Stream.concat(joined, t.stream());
-                }
-                return joined.iterator();
-            }
-
-            @Override
-            public int size() {
-                return fields1.size() + fields2.size();
-            }
-        };
-    }
-
-    /**
-     * Returns a type element given a canonical name.
-     *
-     * @throw {@link NoClassDefFoundError} if a type element does not exist for {@code name}
-     */
-    public TypeElement getTypeElement(String name) {
-        TypeElement typeElement = elements.getTypeElement(name);
-        if (typeElement == null) {
-            throw new NoClassDefFoundError(name);
-        }
-        return typeElement;
-    }
-
-    public TypeElement getTypeElement(Class<?> cls) {
-        return getTypeElement(cls.getName());
-    }
-
-    public TypeMirror getType(String name) {
-        return getTypeElement(name).asType();
-    }
-
-    public TypeMirror getType(Class<?> cls) {
-        return ElementUtils.getType(getProcessingEnv(), cls);
-    }
-
-    public ProcessingEnvironment getProcessingEnv() {
-        return env.getProcessingEnv();
-    }
-
-    private static String getGeneratedClassName(TypeElement node) {
-
-        TypeElement typeElement = node;
-
-        String genClassName = typeElement.getSimpleName().toString() + "Gen";
-        Element enclosing = typeElement.getEnclosingElement();
-        while (enclosing != null) {
-            if (enclosing.getKind() == ElementKind.CLASS || enclosing.getKind() == ElementKind.INTERFACE) {
-                if (enclosing.getModifiers().contains(Modifier.PRIVATE)) {
-                    throw new ElementException(enclosing, "%s %s cannot be private", enclosing.getKind().name().toLowerCase(), enclosing);
-                }
-                genClassName = enclosing.getSimpleName() + "_" + genClassName;
-            } else {
-                assert enclosing.getKind() == ElementKind.PACKAGE;
-            }
-            enclosing = enclosing.getEnclosingElement();
-        }
-        return genClassName;
-    }
-
-    public boolean isAssignableWithErasure(Element from, Element to) {
-        TypeMirror fromType = types.erasure(from.asType());
-        TypeMirror toType = types.erasure(to.asType());
-        return types.isAssignable(fromType, toType);
-    }
-
-    private void scanFields(TypeElement node) {
-        Compiler compiler = CompilerFactory.getCompiler(node);
-        TypeElement currentClazz = node;
-        do {
-            for (VariableElement field : ElementFilter.fieldsIn(compiler.getEnclosedElementsInDeclarationOrder(currentClazz))) {
-                Set<Modifier> modifiers = field.getModifiers();
-                if (modifiers.contains(STATIC) || modifiers.contains(TRANSIENT)) {
-                    continue;
-                }
-
-                List<? extends AnnotationMirror> annotations = field.getAnnotationMirrors();
-
-                boolean isNonOptionalInput = findAnnotationMirror(annotations, Input) != null;
-                boolean isOptionalInput = findAnnotationMirror(annotations, OptionalInput) != null;
-                boolean isSuccessor = findAnnotationMirror(annotations, Successor) != null;
-
-                if (isNonOptionalInput || isOptionalInput) {
-                    if (findAnnotationMirror(annotations, Successor) != null) {
-                        throw new ElementException(field, "Field cannot be both input and successor");
-                    } else if (isNonOptionalInput && isOptionalInput) {
-                        throw new ElementException(field, "Inputs must be either optional or non-optional");
-                    } else if (isAssignableWithErasure(field, NodeInputList)) {
-                        if (modifiers.contains(FINAL)) {
-                            throw new ElementException(field, "Input list field must not be final");
-                        }
-                        if (modifiers.contains(PUBLIC) || modifiers.contains(PRIVATE)) {
-                            throw new ElementException(field, "Input list field must be protected or package-private");
-                        }
-                        inputListFields.add(field);
-                    } else {
-                        if (!isAssignableWithErasure(field, Node) && field.getKind() == ElementKind.INTERFACE) {
-                            throw new ElementException(field, "Input field type must be an interface or assignable to Node");
-                        }
-                        if (modifiers.contains(FINAL)) {
-                            throw new ElementException(field, "Input field must not be final");
-                        }
-                        if (modifiers.contains(PUBLIC) || modifiers.contains(PRIVATE)) {
-                            throw new ElementException(field, "Input field must be protected or package-private");
-                        }
-                        inputFields.add(field);
-                    }
-                    if (isOptionalInput) {
-                        inputTypes.put(field, getAnnotationValue(VariableElement.class, findAnnotationMirror(annotations, OptionalInput), "value"));
-                        optionalInputs.add(field);
-                    } else {
-                        inputTypes.put(field, getAnnotationValue(VariableElement.class, findAnnotationMirror(annotations, Input), "value"));
-                    }
-                } else if (isSuccessor) {
-                    if (isAssignableWithErasure(field, NodeSuccessorList)) {
-                        if (modifiers.contains(FINAL)) {
-                            throw new ElementException(field, "Successor list field must not be final");
-                        }
-                        if (modifiers.contains(PUBLIC)) {
-                            throw new ElementException(field, "Successor list field must not be public");
-                        }
-                        successorListFields.add(field);
-                    } else {
-                        if (!isAssignableWithErasure(field, Node)) {
-                            throw new ElementException(field, "Successor field must be a Node type");
-                        }
-                        if (modifiers.contains(FINAL)) {
-                            throw new ElementException(field, "Successor field must not be final");
-                        }
-                        if (modifiers.contains(PUBLIC) || modifiers.contains(PRIVATE)) {
-                            throw new ElementException(field, "Successor field must be protected or package-private");
-                        }
-                        successorFields.add(field);
-                    }
-
-                } else {
-                    if (isAssignableWithErasure(field, Node) && !field.getSimpleName().contentEquals("Null")) {
-                        throw new ElementException(field, "Node field must be annotated with @" + Input.getSimpleName() + ", @" + OptionalInput.getSimpleName() + " or @" + Successor.getSimpleName());
-                    }
-                    if (isAssignableWithErasure(field, NodeInputList)) {
-                        throw new ElementException(field, "NodeInputList field must be annotated with @" + Input.getSimpleName() + " or @" + OptionalInput.getSimpleName());
-                    }
-                    if (isAssignableWithErasure(field, NodeSuccessorList)) {
-                        throw new ElementException(field, "NodeSuccessorList field must be annotated with @" + Successor.getSimpleName());
-                    }
-                    if (modifiers.contains(PUBLIC)) {
-                        if (!modifiers.contains(FINAL)) {
-                            throw new ElementException(field, "Data field must be final if public otherwise it must be protected");
-                        }
-                    } else if (!modifiers.contains(PROTECTED)) {
-                        throw new ElementException(field, "Data field must be protected");
-                    }
-                    dataFields.add(field);
-                }
-            }
-            currentClazz = getSuperType(currentClazz);
-        } while (!isObject(getSuperType(currentClazz).asType()));
-    }
-
-    /**
-     * Determines if two parameter lists contain the
-     * {@linkplain Types#isSameType(TypeMirror, TypeMirror) same} types.
-     */
-    private boolean parametersMatch(List<? extends VariableElement> p1, List<? extends VariableElement> p2) {
-        if (p1.size() == p2.size()) {
-            for (int i = 0; i < p1.size(); i++) {
-                if (!types.isSameType(p1.get(i).asType(), p2.get(i).asType())) {
-                    return false;
-                }
-            }
-            return true;
-        }
-        return false;
-    }
-
-    /**
-     * Searches a type for a method based on a given name and parameter types.
-     */
-    private ExecutableElement findMethod(TypeElement type, String name, List<? extends VariableElement> parameters) {
-        List<? extends ExecutableElement> methods = ElementFilter.methodsIn(type.getEnclosedElements());
-        for (ExecutableElement method : methods) {
-            if (method.getSimpleName().toString().equals(name)) {
-                if (parametersMatch(method.getParameters(), parameters)) {
-                    return method;
-                }
-            }
-        }
-        return null;
-    }
-
-    enum NodeRefsType {
-        Inputs,
-        Successors;
-
-        String singular() {
-            return name().substring(0, name().length() - 1);
-        }
-    }
-
-    CodeCompilationUnit process(TypeElement node, boolean constructorsOnly) {
-        try {
-            return process0(node, constructorsOnly);
-        } finally {
-            reset();
-        }
-    }
-
-    private CodeCompilationUnit process0(TypeElement node, boolean constructorsOnly) {
-
-        CodeCompilationUnit compilationUnit = new CodeCompilationUnit();
-
-        PackageElement packageElement = ElementUtils.findPackageElement(node);
-
-        genClassName = getGeneratedClassName(node);
-        genClass = new CodeTypeElement(modifiers(FINAL), ElementKind.CLASS, packageElement, genClassName);
-        genClass.setSuperClass(node.asType());
-
-        boolean foundValidConstructor = false;
-        for (ExecutableElement constructor : ElementFilter.constructorsIn(node.getEnclosedElements())) {
-            if (constructor.getModifiers().contains(PRIVATE)) {
-                continue;
-            } else if (constructor.getModifiers().contains(PUBLIC)) {
-                throw new ElementException(constructor, "Node class constructor must not be public");
-            } else if (!constructor.getModifiers().contains(PROTECTED)) {
-                throw new ElementException(constructor, "Node class constructor must be protected");
-            }
-
-            checkFactoryMethodExists(node, constructor);
-            foundValidConstructor = true;
-
-            CodeExecutableElement subConstructor = createConstructor(genClass, constructor);
-            subConstructor.getModifiers().removeAll(Arrays.asList(PUBLIC, PRIVATE, PROTECTED));
-            genClass.add(subConstructor);
-        }
-
-        if (!foundValidConstructor) {
-            throw new ElementException(node, "Node class must have at least one protected constructor");
-        }
-
-        if (!constructorsOnly) {
-            DeclaredType generatedNode = (DeclaredType) getType(GeneratedNode.class);
-            genClass.getImplements().add(generatedNode);
-
-            scanFields(node);
-
-            boolean hasInputs = !inputFields.isEmpty() || !inputListFields.isEmpty();
-            boolean hasSuccessors = !successorFields.isEmpty() || !successorListFields.isEmpty();
-
-            boolean isLeaf = !(hasInputs || hasSuccessors);
-
-            if (isLeaf && isAssignableWithErasure(node, ValueNumberable)) {
-                createValueNumberLeafMethod(node);
-            }
-            createDataEqualsMethod();
-        }
-        compilationUnit.add(genClass);
-        return compilationUnit;
-    }
-
-    /**
-     * Checks that a public static factory method named {@code "create"} exists in {@code node}
-     * whose signature matches that of a given constructor.
-     *
-     * @throws ElementException if the check fails
-     */
-    private void checkFactoryMethodExists(TypeElement node, ExecutableElement constructor) {
-        ExecutableElement create = findMethod(node, "create", constructor.getParameters());
-        if (create == null) {
-            Formatter f = new Formatter();
-            f.format("public static %s create(", node.getSimpleName());
-            String sep = "";
-            Formatter callArgs = new Formatter();
-            for (VariableElement v : constructor.getParameters()) {
-                f.format("%s%s %s", sep, ElementUtils.getSimpleName(v.asType()), v.getSimpleName());
-                callArgs.format("%s%s", sep, v.getSimpleName());
-                sep = ", ";
-            }
-            f.format(") { return USE_GENERATED_NODES ? new %s(%s) : new %s(%s); }", genClassName, callArgs, node.getSimpleName(), callArgs);
-            throw new ElementException(constructor, "Missing Node class factory method '%s'", f);
-        }
-        if (!create.getModifiers().containsAll(asList(PUBLIC, STATIC))) {
-            throw new ElementException(constructor, "Node class factory method must be public and static");
-        }
-    }
-
-    private CodeExecutableElement createConstructor(TypeElement type, ExecutableElement element) {
-        CodeExecutableElement executable = CodeExecutableElement.clone(getProcessingEnv(), element);
-
-        // to create a constructor we have to set the return type to null.(TODO needs fix)
-        executable.setReturnType(null);
-        // we have to set the name manually otherwise <init> is inferred (TODO needs fix)
-        executable.setSimpleName(CodeNames.of(type.getSimpleName().toString()));
-
-        CodeTreeBuilder b = executable.createBuilder();
-        b.startStatement().startSuperCall();
-        for (VariableElement v : element.getParameters()) {
-            b.string(v.getSimpleName().toString());
-        }
-        b.end().end();
-
-        return executable;
-    }
-
-    private void reset() {
-        inputFields.clear();
-        inputListFields.clear();
-        successorFields.clear();
-        successorListFields.clear();
-        dataFields.clear();
-        optionalInputs.clear();
-        inputTypes.clear();
-        genClass = null;
-        genClassName = null;
-    }
-
-    private CodeVariableElement addParameter(CodeExecutableElement method, TypeMirror type, String name) {
-        return addParameter(method, type, name, true);
-    }
-
-    private CodeVariableElement addParameter(CodeExecutableElement method, TypeMirror type, String name, boolean checkHiding) {
-        CodeVariableElement parameter = new CodeVariableElement(type, name);
-        if (checkHiding && hidesField(parameter.getSimpleName().toString())) {
-            DeclaredType suppress = (DeclaredType) getType(SuppressWarnings.class);
-            CodeAnnotationMirror suppressMirror = new CodeAnnotationMirror(suppress);
-            suppressMirror.setElementValue(suppressMirror.findExecutableElement("value"), new CodeAnnotationValue("hiding"));
-            parameter.getAnnotationMirrors().add(suppressMirror);
-        }
-        method.addParameter(parameter);
-        return parameter;
-    }
-
-    /**
-     * Checks that a generated method overrides exactly one method in a super type and that the
-     * super type is Node.
-     */
-    private void checkOnlyInGenNode(CodeExecutableElement method) {
-        List<ExecutableElement> overriddenMethods = getDeclaredMethodsInSuperTypes(method.getEnclosingClass(), method.getSimpleName().toString(), method.getParameterTypes());
-        for (ExecutableElement overriddenMethod : overriddenMethods) {
-            if (!overriddenMethod.getEnclosingElement().equals(Node)) {
-                env.message(Kind.WARNING, overriddenMethod, "This method is overridden in a generated subclass will never be called");
-            }
-        }
-    }
-
-    private void createValueNumberLeafMethod(TypeElement node) {
-        CodeExecutableElement method = new CodeExecutableElement(modifiers(PUBLIC), getType(int.class), "valueNumberLeaf");
-        CodeTreeBuilder b = method.createBuilder();
-        b.startStatement().string("int number = " + node.hashCode()).end();
-        for (VariableElement f : dataFields) {
-            String fname = f.getSimpleName().toString();
-            switch (f.asType().getKind()) {
-                case BOOLEAN:
-                    b.startIf().string(fname).end().startBlock();
-                    b.startStatement().string("number += 7").end();
-                    b.end();
-                    break;
-                case BYTE:
-                case SHORT:
-                case CHAR:
-                case INT:
-                    b.startStatement().string("number += 13 * ", fname).end();
-                    break;
-                case FLOAT:
-                    b.startStatement().string("number += 17 * Float.floatToRawIntBits(", fname, ")").end();
-                    break;
-                case LONG:
-                    b.startStatement().string("number += 19 * ", fname + " ^ (", fname, " >>> 32)").end();
-                    break;
-                case DOUBLE:
-                    b.startStatement().string("long longValue = Double.doubleToRawLongBits(", fname, ")").end();
-                    b.startStatement().string("number += 23 * longValue ^ (longValue >>> 32)").end();
-                    break;
-                case ARRAY:
-                    if (((ArrayType) f.asType()).getComponentType().getKind().isPrimitive()) {
-                        b.startStatement().string("number += 31 * Arrays.hashCode(", fname, ")").end();
-                    } else {
-                        b.startStatement().string("number += 31 * Arrays.deepHashCode(", fname, ")").end();
-                    }
-                    break;
-                default:
-                    b.startIf().string(fname, " != null").end().startBlock();
-                    b.startStatement().string("number += 29 * ", fname + ".hashCode()").end();
-                    b.end();
-                    break;
-            }
-        }
-        b.end();
-        b.startReturn().string("number").end();
-        genClass.add(method);
-        checkOnlyInGenNode(method);
-    }
-
-    private void createDataEqualsMethod() {
-        CodeExecutableElement method = new CodeExecutableElement(modifiers(PUBLIC), getType(boolean.class), "dataEquals");
-        addParameter(method, Node.asType(), "other");
-        CodeTreeBuilder b = method.createBuilder();
-        if (!dataFields.isEmpty()) {
-            String other = "o";
-            b.declaration(genClassName, other, "(" + genClassName + ") other");
-
-            for (VariableElement f : dataFields) {
-                String fname = f.getSimpleName().toString();
-                switch (f.asType().getKind()) {
-                    case BOOLEAN:
-                    case BYTE:
-                    case SHORT:
-                    case CHAR:
-                    case INT:
-                    case FLOAT:
-                    case LONG:
-                    case DOUBLE:
-                        b.startIf().string(other, ".", fname, " != ", fname).end().startBlock();
-                        b.startStatement().string("return false").end();
-                        b.end();
-                        break;
-                    case ARRAY:
-                        if (((ArrayType) f.asType()).getComponentType().getKind().isPrimitive()) {
-                            b.startIf().string("!").type(getType(Arrays.class)).string(".equals(", other, ".", fname, ", ", fname, ")").end().startBlock();
-                        } else {
-                            b.startIf().string("!").type(getType(Arrays.class)).string(".deepEquals(", other, ".", fname, ", ", fname, ")").end().startBlock();
-                        }
-                        b.startStatement().string("return false").end();
-                        b.end();
-                        break;
-                    default:
-                        b.startIf().string("!").type(getType(Objects.class)).string(".equals(", other, ".", fname, ", ", fname, ")").end().startBlock();
-                        b.startStatement().string("return false").end();
-                        b.end();
-                        break;
-                }
-            }
-        }
-        b.startReturn().string("true").end();
-        genClass.add(method);
-        checkOnlyInGenNode(method);
-    }
-
-    private boolean hidesField(String name) {
-        for (VariableElement field : concat(inputFields, inputListFields, successorFields, successorListFields, dataFields)) {
-            if (field.getSimpleName().contentEquals(name)) {
-                return true;
-            }
-        }
-        return false;
-    }
-}
--- a/graal/com.oracle.graal.nodeinfo.processor/src/com/oracle/graal/nodeinfo/processor/GraphNodeProcessor.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodeinfo.processor/src/com/oracle/graal/nodeinfo/processor/GraphNodeProcessor.java	Wed Oct 15 15:35:33 2014 +0200
@@ -32,15 +32,10 @@
 import javax.annotation.processing.*;
 import javax.lang.model.*;
 import javax.lang.model.element.*;
-import javax.lang.model.type.*;
 import javax.lang.model.util.*;
 import javax.tools.Diagnostic.Kind;
 
 import com.oracle.graal.nodeinfo.*;
-import com.oracle.truffle.dsl.processor.*;
-import com.oracle.truffle.dsl.processor.java.*;
-import com.oracle.truffle.dsl.processor.java.model.*;
-import com.oracle.truffle.dsl.processor.java.transform.*;
 
 @SupportedSourceVersion(SourceVersion.RELEASE_8)
 @SupportedAnnotationTypes({"com.oracle.graal.nodeinfo.NodeInfo"})
@@ -113,7 +108,7 @@
             return false;
         }
 
-        GraphNodeGenerator gen = new GraphNodeGenerator(this);
+        GraphNodeVerifier verifier = new GraphNodeVerifier(this);
 
         for (Element element : roundEnv.getElementsAnnotatedWith(NodeInfo.class)) {
             scope = element;
@@ -136,17 +131,8 @@
                     continue;
                 }
 
-                if (!typeElement.equals(gen.Node) && !typeElement.getModifiers().contains(Modifier.ABSTRACT)) {
-                    try {
-                        CodeCompilationUnit unit = gen.process(typeElement, false);
-                        emitCode(typeElement, unit);
-                    } catch (ElementException ee) {
-                        // Try to generate the class with just the constructors so that
-                        // spurious errors related to a missing class are not emitted
-                        CodeCompilationUnit unit = gen.process(typeElement, true);
-                        emitCode(typeElement, unit);
-                        throw ee;
-                    }
+                if (!typeElement.equals(verifier.Node) && !typeElement.getModifiers().contains(Modifier.ABSTRACT)) {
+                    verifier.verify(typeElement);
                 }
             } catch (ElementException ee) {
                 errorMessage(ee.element, ee.getMessage());
@@ -159,16 +145,6 @@
         return false;
     }
 
-    private void emitCode(TypeElement typeElement, CodeCompilationUnit unit) {
-        unit.setGeneratorElement(typeElement);
-
-        DeclaredType overrideType = (DeclaredType) ElementUtils.getType(processingEnv, Override.class);
-        DeclaredType unusedType = (DeclaredType) ElementUtils.getType(processingEnv, SuppressWarnings.class);
-        unit.accept(new GenerateOverrideVisitor(overrideType), null);
-        unit.accept(new FixWarningsVisitor(processingEnv, unusedType, overrideType), null);
-        unit.accept(new CodeWriter(processingEnv, typeElement), null);
-    }
-
     /**
      * Determines if a given exception is (most likely) caused by <a
      * href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=367599">Bug 367599</a>.
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/graal/com.oracle.graal.nodeinfo.processor/src/com/oracle/graal/nodeinfo/processor/GraphNodeVerifier.java	Wed Oct 15 15:35:33 2014 +0200
@@ -0,0 +1,207 @@
+/*
+ * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+package com.oracle.graal.nodeinfo.processor;
+
+import static com.oracle.truffle.dsl.processor.java.ElementUtils.*;
+import static javax.lang.model.element.Modifier.*;
+
+import java.util.*;
+
+import javax.annotation.processing.*;
+import javax.lang.model.element.*;
+import javax.lang.model.type.*;
+import javax.lang.model.util.*;
+
+import com.oracle.truffle.dsl.processor.java.*;
+import com.oracle.truffle.dsl.processor.java.compiler.*;
+import com.oracle.truffle.dsl.processor.java.compiler.Compiler;
+
+/**
+ * Verifies static constraints on nodes.
+ */
+public class GraphNodeVerifier {
+
+    private final GraphNodeProcessor env;
+    private final Types types;
+    private final Elements elements;
+
+    private final TypeElement Input;
+    private final TypeElement OptionalInput;
+    private final TypeElement Successor;
+
+    final TypeElement Node;
+    private final TypeElement NodeInputList;
+    private final TypeElement NodeSuccessorList;
+
+    public GraphNodeVerifier(GraphNodeProcessor processor) {
+        this.env = processor;
+
+        this.types = processor.getProcessingEnv().getTypeUtils();
+        this.elements = processor.getProcessingEnv().getElementUtils();
+
+        this.Input = getTypeElement("com.oracle.graal.graph.Node.Input");
+        this.OptionalInput = getTypeElement("com.oracle.graal.graph.Node.OptionalInput");
+        this.Successor = getTypeElement("com.oracle.graal.graph.Node.Successor");
+        this.Node = getTypeElement("com.oracle.graal.graph.Node");
+        this.NodeInputList = getTypeElement("com.oracle.graal.graph.NodeInputList");
+        this.NodeSuccessorList = getTypeElement("com.oracle.graal.graph.NodeSuccessorList");
+    }
+
+    /**
+     * Returns a type element given a canonical name.
+     *
+     * @throw {@link NoClassDefFoundError} if a type element does not exist for {@code name}
+     */
+    public TypeElement getTypeElement(String name) {
+        TypeElement typeElement = elements.getTypeElement(name);
+        if (typeElement == null) {
+            throw new NoClassDefFoundError(name);
+        }
+        return typeElement;
+    }
+
+    public TypeElement getTypeElement(Class<?> cls) {
+        return getTypeElement(cls.getName());
+    }
+
+    public TypeMirror getType(String name) {
+        return getTypeElement(name).asType();
+    }
+
+    public TypeMirror getType(Class<?> cls) {
+        return ElementUtils.getType(getProcessingEnv(), cls);
+    }
+
+    public ProcessingEnvironment getProcessingEnv() {
+        return env.getProcessingEnv();
+    }
+
+    public boolean isAssignableWithErasure(Element from, Element to) {
+        TypeMirror fromType = types.erasure(from.asType());
+        TypeMirror toType = types.erasure(to.asType());
+        return types.isAssignable(fromType, toType);
+    }
+
+    private void scanFields(TypeElement node) {
+        Compiler compiler = CompilerFactory.getCompiler(node);
+        TypeElement currentClazz = node;
+        do {
+            for (VariableElement field : ElementFilter.fieldsIn(compiler.getEnclosedElementsInDeclarationOrder(currentClazz))) {
+                Set<Modifier> modifiers = field.getModifiers();
+                if (modifiers.contains(STATIC) || modifiers.contains(TRANSIENT)) {
+                    continue;
+                }
+
+                List<? extends AnnotationMirror> annotations = field.getAnnotationMirrors();
+
+                boolean isNonOptionalInput = findAnnotationMirror(annotations, Input) != null;
+                boolean isOptionalInput = findAnnotationMirror(annotations, OptionalInput) != null;
+                boolean isSuccessor = findAnnotationMirror(annotations, Successor) != null;
+
+                if (isNonOptionalInput || isOptionalInput) {
+                    if (findAnnotationMirror(annotations, Successor) != null) {
+                        throw new ElementException(field, "Field cannot be both input and successor");
+                    } else if (isNonOptionalInput && isOptionalInput) {
+                        throw new ElementException(field, "Inputs must be either optional or non-optional");
+                    } else if (isAssignableWithErasure(field, NodeInputList)) {
+                        if (modifiers.contains(FINAL)) {
+                            throw new ElementException(field, "Input list field must not be final");
+                        }
+                        if (modifiers.contains(PUBLIC) || modifiers.contains(PRIVATE)) {
+                            throw new ElementException(field, "Input list field must be protected or package-private");
+                        }
+                    } else {
+                        if (!isAssignableWithErasure(field, Node) && field.getKind() == ElementKind.INTERFACE) {
+                            throw new ElementException(field, "Input field type must be an interface or assignable to Node");
+                        }
+                        if (modifiers.contains(FINAL)) {
+                            throw new ElementException(field, "Input field must not be final");
+                        }
+                        if (modifiers.contains(PUBLIC) || modifiers.contains(PRIVATE)) {
+                            throw new ElementException(field, "Input field must be protected or package-private");
+                        }
+                    }
+                } else if (isSuccessor) {
+                    if (isAssignableWithErasure(field, NodeSuccessorList)) {
+                        if (modifiers.contains(FINAL)) {
+                            throw new ElementException(field, "Successor list field must not be final");
+                        }
+                        if (modifiers.contains(PUBLIC)) {
+                            throw new ElementException(field, "Successor list field must not be public");
+                        }
+                    } else {
+                        if (!isAssignableWithErasure(field, Node)) {
+                            throw new ElementException(field, "Successor field must be a Node type");
+                        }
+                        if (modifiers.contains(FINAL)) {
+                            throw new ElementException(field, "Successor field must not be final");
+                        }
+                        if (modifiers.contains(PUBLIC) || modifiers.contains(PRIVATE)) {
+                            throw new ElementException(field, "Successor field must be protected or package-private");
+                        }
+                    }
+
+                } else {
+                    if (isAssignableWithErasure(field, Node) && !field.getSimpleName().contentEquals("Null")) {
+                        throw new ElementException(field, "Node field must be annotated with @" + Input.getSimpleName() + ", @" + OptionalInput.getSimpleName() + " or @" + Successor.getSimpleName());
+                    }
+                    if (isAssignableWithErasure(field, NodeInputList)) {
+                        throw new ElementException(field, "NodeInputList field must be annotated with @" + Input.getSimpleName() + " or @" + OptionalInput.getSimpleName());
+                    }
+                    if (isAssignableWithErasure(field, NodeSuccessorList)) {
+                        throw new ElementException(field, "NodeSuccessorList field must be annotated with @" + Successor.getSimpleName());
+                    }
+                    if (modifiers.contains(PUBLIC)) {
+                        if (!modifiers.contains(FINAL)) {
+                            throw new ElementException(field, "Data field must be final if public otherwise it must be protected");
+                        }
+                    } else if (!modifiers.contains(PROTECTED)) {
+                        throw new ElementException(field, "Data field must be protected");
+                    }
+                }
+            }
+            currentClazz = getSuperType(currentClazz);
+        } while (!isObject(getSuperType(currentClazz).asType()));
+    }
+
+    void verify(TypeElement node) {
+        scanFields(node);
+
+        boolean foundValidConstructor = false;
+        for (ExecutableElement constructor : ElementFilter.constructorsIn(node.getEnclosedElements())) {
+            if (constructor.getModifiers().contains(PRIVATE)) {
+                continue;
+            } else if (constructor.getModifiers().contains(PUBLIC)) {
+                throw new ElementException(constructor, "Node class constructor must not be public");
+            } else if (!constructor.getModifiers().contains(PROTECTED)) {
+                throw new ElementException(constructor, "Node class constructor must be protected");
+            }
+
+            foundValidConstructor = true;
+        }
+
+        if (!foundValidConstructor) {
+            throw new ElementException(node, "Node class must have at least one protected constructor");
+        }
+    }
+}
--- a/graal/com.oracle.graal.nodeinfo/src/com/oracle/graal/nodeinfo/GeneratedNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,48 +0,0 @@
-/*
- * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
- * or visit www.oracle.com if you need additional information or have any
- * questions.
- */
-package com.oracle.graal.nodeinfo;
-
-/**
- * Marker for a Node class generated on the basis of a {@link NodeInfo} annotation on its super
- * class.
- *
- * Testing whether a node class is generated:
- *
- * <pre>
- * Class<? extends Node> c = ...;
- * if (GeneratedNode.class.isAssignableFrom(c)) { ... }
- * </pre>
- *
- * Since a generated node class always subclasses the node from which it is generated:
- *
- * <pre>
- * if (GeneratedNode.class.isAssignableFrom(c)) {
- *     Class&lt;?&gt; original = c.getSuperclass();
- * }
- * </pre>
- *
- * Note: This used to be an annotation but was converted to an interface to avoid annotation parsing
- * when creating a NodeClass instance.
- */
-public interface GeneratedNode {
-}
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/BeginNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/BeginNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -39,7 +39,7 @@
 public class BeginNode extends FixedWithNextNode implements LIRLowerable, Simplifiable, GuardingNode, AnchoringNode, IterableNodeType {
 
     public static BeginNode create() {
-        return USE_GENERATED_NODES ? new BeginNodeGen() : new BeginNode();
+        return new BeginNode();
     }
 
     protected BeginNode() {
@@ -47,7 +47,7 @@
     }
 
     public static BeginNode create(Stamp stamp) {
-        return USE_GENERATED_NODES ? new BeginNodeGen(stamp) : new BeginNode(stamp);
+        return new BeginNode(stamp);
     }
 
     protected BeginNode(Stamp stamp) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/BreakpointNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/BreakpointNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -51,7 +51,7 @@
     @Input NodeInputList<ValueNode> arguments;
 
     public static BreakpointNode create(ValueNode[] arguments) {
-        return USE_GENERATED_NODES ? new BreakpointNodeGen(arguments) : new BreakpointNode(arguments);
+        return new BreakpointNode(arguments);
     }
 
     protected BreakpointNode(ValueNode... arguments) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/ConditionAnchorNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/ConditionAnchorNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -36,7 +36,7 @@
     protected boolean negated;
 
     public static ConditionAnchorNode create(LogicNode condition) {
-        return USE_GENERATED_NODES ? new ConditionAnchorNodeGen(condition) : new ConditionAnchorNode(condition);
+        return new ConditionAnchorNode(condition);
     }
 
     protected ConditionAnchorNode(LogicNode condition) {
@@ -44,7 +44,7 @@
     }
 
     public static ConditionAnchorNode create(LogicNode condition, boolean negated) {
-        return USE_GENERATED_NODES ? new ConditionAnchorNodeGen(condition, negated) : new ConditionAnchorNode(condition, negated);
+        return new ConditionAnchorNode(condition, negated);
     }
 
     protected ConditionAnchorNode(LogicNode condition, boolean negated) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/ConstantNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/ConstantNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -56,7 +56,7 @@
      * @param value the constant
      */
     public static ConstantNode create(Constant value, Stamp stamp) {
-        return USE_GENERATED_NODES ? new ConstantNodeGen(value, stamp) : new ConstantNode(value, stamp);
+        return new ConstantNode(value, stamp);
     }
 
     protected ConstantNode(Constant value, Stamp stamp) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/DeoptimizeNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/DeoptimizeNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -35,7 +35,7 @@
     protected final Constant speculation;
 
     public static DeoptimizeNode create(DeoptimizationAction action, DeoptimizationReason reason) {
-        return USE_GENERATED_NODES ? new DeoptimizeNodeGen(action, reason) : new DeoptimizeNode(action, reason);
+        return new DeoptimizeNode(action, reason);
     }
 
     protected DeoptimizeNode(DeoptimizationAction action, DeoptimizationReason reason) {
@@ -43,7 +43,7 @@
     }
 
     public static DeoptimizeNode create(DeoptimizationAction action, DeoptimizationReason reason, int debugId, Constant speculation, FrameState stateBefore) {
-        return USE_GENERATED_NODES ? new DeoptimizeNodeGen(action, reason, debugId, speculation, stateBefore) : new DeoptimizeNode(action, reason, debugId, speculation, stateBefore);
+        return new DeoptimizeNode(action, reason, debugId, speculation, stateBefore);
     }
 
     protected DeoptimizeNode(DeoptimizationAction action, DeoptimizationReason reason, int debugId, Constant speculation, FrameState stateBefore) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/DirectCallTargetNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/DirectCallTargetNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -33,8 +33,7 @@
 public class DirectCallTargetNode extends LoweredCallTargetNode {
 
     public static DirectCallTargetNode create(List<ValueNode> arguments, Stamp returnStamp, JavaType[] signature, ResolvedJavaMethod target, CallingConvention.Type callType, InvokeKind invokeKind) {
-        return USE_GENERATED_NODES ? new DirectCallTargetNodeGen(arguments, returnStamp, signature, target, callType, invokeKind) : new DirectCallTargetNode(arguments, returnStamp, signature, target,
-                        callType, invokeKind);
+        return new DirectCallTargetNode(arguments, returnStamp, signature, target, callType, invokeKind);
     }
 
     protected DirectCallTargetNode(List<ValueNode> arguments, Stamp returnStamp, JavaType[] signature, ResolvedJavaMethod target, CallingConvention.Type callType, InvokeKind invokeKind) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/DispatchBeginNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/DispatchBeginNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -32,14 +32,14 @@
 public class DispatchBeginNode extends BeginStateSplitNode {
 
     public static DispatchBeginNode create() {
-        return USE_GENERATED_NODES ? new DispatchBeginNodeGen() : new DispatchBeginNode();
+        return new DispatchBeginNode();
     }
 
     protected DispatchBeginNode() {
     }
 
     public static DispatchBeginNode create(Stamp stamp) {
-        return USE_GENERATED_NODES ? new DispatchBeginNodeGen(stamp) : new DispatchBeginNode(stamp);
+        return new DispatchBeginNode(stamp);
     }
 
     protected DispatchBeginNode(Stamp stamp) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/DynamicDeoptimizeNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/DynamicDeoptimizeNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -34,7 +34,7 @@
     @Input ValueNode speculation;
 
     public static DynamicDeoptimizeNode create(ValueNode actionAndReason, ValueNode speculation) {
-        return USE_GENERATED_NODES ? new DynamicDeoptimizeNodeGen(actionAndReason, speculation) : new DynamicDeoptimizeNode(actionAndReason, speculation);
+        return new DynamicDeoptimizeNode(actionAndReason, speculation);
     }
 
     protected DynamicDeoptimizeNode(ValueNode actionAndReason, ValueNode speculation) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/EndNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/EndNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -27,7 +27,7 @@
 @NodeInfo(allowedUsageTypes = {InputType.Association})
 public class EndNode extends AbstractEndNode {
     public static EndNode create() {
-        return USE_GENERATED_NODES ? new EndNodeGen() : new EndNode();
+        return new EndNode();
     }
 
     protected EndNode() {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/EntryMarkerNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/EntryMarkerNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -36,7 +36,7 @@
 public class EntryMarkerNode extends BeginStateSplitNode implements IterableNodeType, Simplifiable, LIRLowerable {
 
     public static EntryMarkerNode create() {
-        return USE_GENERATED_NODES ? new EntryMarkerNodeGen() : new EntryMarkerNode();
+        return new EntryMarkerNode();
     }
 
     protected EntryMarkerNode() {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/FixedGuardNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/FixedGuardNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -33,7 +33,7 @@
 public class FixedGuardNode extends AbstractFixedGuardNode implements Lowerable, IterableNodeType {
 
     public static FixedGuardNode create(LogicNode condition, DeoptimizationReason deoptReason, DeoptimizationAction action) {
-        return USE_GENERATED_NODES ? new FixedGuardNodeGen(condition, deoptReason, action) : new FixedGuardNode(condition, deoptReason, action);
+        return new FixedGuardNode(condition, deoptReason, action);
     }
 
     protected FixedGuardNode(LogicNode condition, DeoptimizationReason deoptReason, DeoptimizationAction action) {
@@ -41,7 +41,7 @@
     }
 
     public static FixedGuardNode create(LogicNode condition, DeoptimizationReason deoptReason, DeoptimizationAction action, boolean negated) {
-        return USE_GENERATED_NODES ? new FixedGuardNodeGen(condition, deoptReason, action, negated) : new FixedGuardNode(condition, deoptReason, action, negated);
+        return new FixedGuardNode(condition, deoptReason, action, negated);
     }
 
     protected FixedGuardNode(LogicNode condition, DeoptimizationReason deoptReason, DeoptimizationAction action, boolean negated) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/FrameState.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/FrameState.java	Wed Oct 15 15:35:33 2014 +0200
@@ -89,8 +89,7 @@
      */
     public static FrameState create(FrameState outerFrameState, ResolvedJavaMethod method, int bci, List<ValueNode> values, int localsSize, int stackSize, boolean rethrowException,
                     boolean duringCall, List<MonitorIdNode> monitorIds, List<EscapeObjectState> virtualObjectMappings) {
-        return USE_GENERATED_NODES ? new FrameStateGen(outerFrameState, method, bci, values, localsSize, stackSize, rethrowException, duringCall, monitorIds, virtualObjectMappings) : new FrameState(
-                        outerFrameState, method, bci, values, localsSize, stackSize, rethrowException, duringCall, monitorIds, virtualObjectMappings);
+        return new FrameState(outerFrameState, method, bci, values, localsSize, stackSize, rethrowException, duringCall, monitorIds, virtualObjectMappings);
     }
 
     protected FrameState(FrameState outerFrameState, ResolvedJavaMethod method, int bci, List<ValueNode> values, int localsSize, int stackSize, boolean rethrowException, boolean duringCall,
@@ -117,7 +116,7 @@
      * @param bci marker bci, needs to be &lt; 0
      */
     public static FrameState create(int bci) {
-        return USE_GENERATED_NODES ? new FrameStateGen(bci) : new FrameState(bci);
+        return new FrameState(bci);
     }
 
     protected FrameState(int bci) {
@@ -128,8 +127,7 @@
 
     public static FrameState create(ResolvedJavaMethod method, int bci, ValueNode[] locals, List<ValueNode> stack, ValueNode[] locks, MonitorIdNode[] monitorIds, boolean rethrowException,
                     boolean duringCall) {
-        return USE_GENERATED_NODES ? new FrameStateGen(method, bci, locals, stack, locks, monitorIds, rethrowException, duringCall) : new FrameState(method, bci, locals, stack, locks, monitorIds,
-                        rethrowException, duringCall);
+        return new FrameState(method, bci, locals, stack, locks, monitorIds, rethrowException, duringCall);
     }
 
     protected FrameState(ResolvedJavaMethod method, int bci, ValueNode[] locals, List<ValueNode> stack, ValueNode[] locks, MonitorIdNode[] monitorIds, boolean rethrowException, boolean duringCall) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/FullInfopointNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/FullInfopointNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -34,7 +34,7 @@
     @Input(InputType.State) FrameState state;
 
     public static FullInfopointNode create(InfopointReason reason, FrameState state) {
-        return USE_GENERATED_NODES ? new FullInfopointNodeGen(reason, state) : new FullInfopointNode(reason, state);
+        return new FullInfopointNode(reason, state);
     }
 
     protected FullInfopointNode(InfopointReason reason, FrameState state) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/GuardNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/GuardNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -51,7 +51,7 @@
     protected boolean negated;
 
     public static GuardNode create(LogicNode condition, AnchoringNode anchor, DeoptimizationReason reason, DeoptimizationAction action, boolean negated, Constant speculation) {
-        return USE_GENERATED_NODES ? new GuardNodeGen(condition, anchor, reason, action, negated, speculation) : new GuardNode(condition, anchor, reason, action, negated, speculation);
+        return new GuardNode(condition, anchor, reason, action, negated, speculation);
     }
 
     protected GuardNode(LogicNode condition, AnchoringNode anchor, DeoptimizationReason reason, DeoptimizationAction action, boolean negated, Constant speculation) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/GuardPhiNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/GuardPhiNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -36,7 +36,7 @@
     @OptionalInput(InputType.Guard) NodeInputList<ValueNode> values;
 
     public static GuardPhiNode create(MergeNode merge) {
-        return USE_GENERATED_NODES ? new GuardPhiNodeGen(merge) : new GuardPhiNode(merge);
+        return new GuardPhiNode(merge);
     }
 
     protected GuardPhiNode(MergeNode merge) {
@@ -45,7 +45,7 @@
     }
 
     public static GuardPhiNode create(MergeNode merge, ValueNode[] values) {
-        return USE_GENERATED_NODES ? new GuardPhiNodeGen(merge, values) : new GuardPhiNode(merge, values);
+        return new GuardPhiNode(merge, values);
     }
 
     protected GuardPhiNode(MergeNode merge, ValueNode[] values) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/GuardProxyNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/GuardProxyNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -34,7 +34,7 @@
     @Input(InputType.Guard) GuardingNode value;
 
     public static GuardProxyNode create(GuardingNode value, BeginNode proxyPoint) {
-        return USE_GENERATED_NODES ? new GuardProxyNodeGen(value, proxyPoint) : new GuardProxyNode(value, proxyPoint);
+        return new GuardProxyNode(value, proxyPoint);
     }
 
     protected GuardProxyNode(GuardingNode value, BeginNode proxyPoint) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/GuardedValueNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/GuardedValueNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -43,7 +43,7 @@
     protected final Stamp piStamp;
 
     public static GuardedValueNode create(ValueNode object, GuardingNode guard, Stamp stamp) {
-        return USE_GENERATED_NODES ? new GuardedValueNodeGen(object, guard, stamp) : new GuardedValueNode(object, guard, stamp);
+        return new GuardedValueNode(object, guard, stamp);
     }
 
     protected GuardedValueNode(ValueNode object, GuardingNode guard, Stamp stamp) {
@@ -53,7 +53,7 @@
     }
 
     public static GuardedValueNode create(ValueNode object, GuardingNode guard) {
-        return USE_GENERATED_NODES ? new GuardedValueNodeGen(object, guard) : new GuardedValueNode(object, guard);
+        return new GuardedValueNode(object, guard);
     }
 
     protected GuardedValueNode(ValueNode object, GuardingNode guard) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/GuardingPiNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/GuardingPiNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -69,7 +69,7 @@
      * Constructor for {@link #guardingNonNull(Object)} node intrinsic.
      */
     public static GuardingPiNode create(ValueNode object) {
-        return USE_GENERATED_NODES ? new GuardingPiNodeGen(object) : new GuardingPiNode(object);
+        return new GuardingPiNode(object);
     }
 
     protected GuardingPiNode(ValueNode object) {
@@ -85,7 +85,7 @@
      * @param stamp the refined type of the object if the guard succeeds
      */
     public static GuardingPiNode create(ValueNode object, ValueNode condition, boolean negateCondition, DeoptimizationReason reason, DeoptimizationAction action, Stamp stamp) {
-        return USE_GENERATED_NODES ? new GuardingPiNodeGen(object, condition, negateCondition, reason, action, stamp) : new GuardingPiNode(object, condition, negateCondition, reason, action, stamp);
+        return new GuardingPiNode(object, condition, negateCondition, reason, action, stamp);
     }
 
     protected GuardingPiNode(ValueNode object, ValueNode condition, boolean negateCondition, DeoptimizationReason reason, DeoptimizationAction action, Stamp stamp) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/IfNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/IfNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -66,7 +66,7 @@
     }
 
     public static IfNode create(LogicNode condition, FixedNode trueSuccessor, FixedNode falseSuccessor, double trueSuccessorProbability) {
-        return USE_GENERATED_NODES ? new IfNodeGen(condition, trueSuccessor, falseSuccessor, trueSuccessorProbability) : new IfNode(condition, trueSuccessor, falseSuccessor, trueSuccessorProbability);
+        return new IfNode(condition, trueSuccessor, falseSuccessor, trueSuccessorProbability);
     }
 
     protected IfNode(LogicNode condition, FixedNode trueSuccessor, FixedNode falseSuccessor, double trueSuccessorProbability) {
@@ -74,7 +74,7 @@
     }
 
     public static IfNode create(LogicNode condition, BeginNode trueSuccessor, BeginNode falseSuccessor, double trueSuccessorProbability) {
-        return USE_GENERATED_NODES ? new IfNodeGen(condition, trueSuccessor, falseSuccessor, trueSuccessorProbability) : new IfNode(condition, trueSuccessor, falseSuccessor, trueSuccessorProbability);
+        return new IfNode(condition, trueSuccessor, falseSuccessor, trueSuccessorProbability);
     }
 
     protected IfNode(LogicNode condition, BeginNode trueSuccessor, BeginNode falseSuccessor, double trueSuccessorProbability) {
@@ -236,8 +236,7 @@
         do {
             BeginNode trueSucc = trueSuccessor();
             BeginNode falseSucc = falseSuccessor();
-            if (trueSucc.getNodeClass().is(BeginNode.class) && falseSucc.getNodeClass().is(BeginNode.class) && trueSucc.next() instanceof FixedWithNextNode &&
-                            falseSucc.next() instanceof FixedWithNextNode) {
+            if (trueSucc.getClass() == BeginNode.class && falseSucc.getClass() == BeginNode.class && trueSucc.next() instanceof FixedWithNextNode && falseSucc.next() instanceof FixedWithNextNode) {
                 FixedWithNextNode trueNext = (FixedWithNextNode) trueSucc.next();
                 FixedWithNextNode falseNext = (FixedWithNextNode) falseSucc.next();
                 NodeClass nodeClass = trueNext.getNodeClass();
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/IndirectCallTargetNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/IndirectCallTargetNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -36,8 +36,7 @@
 
     public static IndirectCallTargetNode create(ValueNode computedAddress, List<ValueNode> arguments, Stamp returnStamp, JavaType[] signature, ResolvedJavaMethod target,
                     CallingConvention.Type callType, InvokeKind invokeKind) {
-        return USE_GENERATED_NODES ? new IndirectCallTargetNodeGen(computedAddress, arguments, returnStamp, signature, target, callType, invokeKind) : new IndirectCallTargetNode(computedAddress,
-                        arguments, returnStamp, signature, target, callType, invokeKind);
+        return new IndirectCallTargetNode(computedAddress, arguments, returnStamp, signature, target, callType, invokeKind);
     }
 
     protected IndirectCallTargetNode(ValueNode computedAddress, List<ValueNode> arguments, Stamp returnStamp, JavaType[] signature, ResolvedJavaMethod target, CallingConvention.Type callType,
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/InvokeNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/InvokeNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -53,7 +53,7 @@
      * @param bci the bytecode index of the original invoke (used for debug infos)
      */
     public static InvokeNode create(CallTargetNode callTarget, int bci) {
-        return USE_GENERATED_NODES ? new InvokeNodeGen(callTarget, bci) : new InvokeNode(callTarget, bci);
+        return new InvokeNode(callTarget, bci);
     }
 
     protected InvokeNode(CallTargetNode callTarget, int bci) {
@@ -68,7 +68,7 @@
      * @param stamp the stamp to be used for this value
      */
     public static InvokeNode create(CallTargetNode callTarget, int bci, Stamp stamp) {
-        return USE_GENERATED_NODES ? new InvokeNodeGen(callTarget, bci, stamp) : new InvokeNode(callTarget, bci, stamp);
+        return new InvokeNode(callTarget, bci, stamp);
     }
 
     protected InvokeNode(CallTargetNode callTarget, int bci, Stamp stamp) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/InvokeWithExceptionNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/InvokeWithExceptionNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -49,7 +49,7 @@
     protected double exceptionProbability;
 
     public static InvokeWithExceptionNode create(CallTargetNode callTarget, BeginNode exceptionEdge, int bci) {
-        return USE_GENERATED_NODES ? new InvokeWithExceptionNodeGen(callTarget, exceptionEdge, bci) : new InvokeWithExceptionNode(callTarget, exceptionEdge, bci);
+        return new InvokeWithExceptionNode(callTarget, exceptionEdge, bci);
     }
 
     protected InvokeWithExceptionNode(CallTargetNode callTarget, BeginNode exceptionEdge, int bci) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/KillingBeginNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/KillingBeginNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -32,7 +32,7 @@
     protected LocationIdentity locationIdentity;
 
     public static KillingBeginNode create(LocationIdentity locationIdentity) {
-        return USE_GENERATED_NODES ? new KillingBeginNodeGen(locationIdentity) : new KillingBeginNode(locationIdentity);
+        return new KillingBeginNode(locationIdentity);
     }
 
     protected KillingBeginNode(LocationIdentity locationIdentity) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/LogicConstantNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/LogicConstantNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -35,7 +35,7 @@
     protected final boolean value;
 
     public static LogicConstantNode create(boolean value) {
-        return USE_GENERATED_NODES ? new LogicConstantNodeGen(value) : new LogicConstantNode(value);
+        return new LogicConstantNode(value);
     }
 
     protected LogicConstantNode(boolean value) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/LogicNegationNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/LogicNegationNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -34,7 +34,7 @@
     @Input(InputType.Condition) LogicNode value;
 
     public static LogicNegationNode create(LogicNode value) {
-        return USE_GENERATED_NODES ? new LogicNegationNodeGen(value) : new LogicNegationNode(value);
+        return new LogicNegationNode(value);
     }
 
     protected LogicNegationNode(LogicNode value) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/LoopBeginNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/LoopBeginNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -45,7 +45,7 @@
     @OptionalInput(InputType.Guard) GuardingNode overflowGuard;
 
     public static LoopBeginNode create() {
-        return USE_GENERATED_NODES ? new LoopBeginNodeGen() : new LoopBeginNode();
+        return new LoopBeginNode();
     }
 
     protected LoopBeginNode() {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/LoopEndNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/LoopEndNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -36,7 +36,7 @@
     protected int endIndex;
 
     public static LoopEndNode create(LoopBeginNode begin) {
-        return USE_GENERATED_NODES ? new LoopEndNodeGen(begin) : new LoopEndNode(begin);
+        return new LoopEndNode(begin);
     }
 
     protected LoopEndNode(LoopBeginNode begin) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/LoopExitNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/LoopExitNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -32,7 +32,7 @@
     @Input(InputType.Association) LoopBeginNode loopBegin;
 
     public static LoopExitNode create(LoopBeginNode loop) {
-        return USE_GENERATED_NODES ? new LoopExitNodeGen(loop) : new LoopExitNode(loop);
+        return new LoopExitNode(loop);
     }
 
     protected LoopExitNode(LoopBeginNode loop) {
@@ -47,7 +47,7 @@
     @Override
     public void simplify(SimplifierTool tool) {
         Node prev = this.predecessor();
-        while (prev.getNodeClass().is(BeginNode.class) && prev.usages().isEmpty()) {
+        while (prev.getClass() == BeginNode.class && prev.usages().isEmpty()) {
             BeginNode begin = (BeginNode) prev;
             prev = prev.predecessor();
             graph().removeFixed(begin);
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/MemoryMapNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/MemoryMapNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -50,7 +50,7 @@
     }
 
     public static MemoryMapNode create(Map<LocationIdentity, MemoryNode> mmap) {
-        return USE_GENERATED_NODES ? new MemoryMapNodeGen(mmap) : new MemoryMapNode(mmap);
+        return new MemoryMapNode(mmap);
     }
 
     protected MemoryMapNode(Map<LocationIdentity, MemoryNode> mmap) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/MemoryPhiNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/MemoryPhiNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -38,7 +38,7 @@
     protected final LocationIdentity locationIdentity;
 
     public static MemoryPhiNode create(MergeNode merge, LocationIdentity locationIdentity) {
-        return USE_GENERATED_NODES ? new MemoryPhiNodeGen(merge, locationIdentity) : new MemoryPhiNode(merge, locationIdentity);
+        return new MemoryPhiNode(merge, locationIdentity);
     }
 
     protected MemoryPhiNode(MergeNode merge, LocationIdentity locationIdentity) {
@@ -48,7 +48,7 @@
     }
 
     public static MemoryPhiNode create(MergeNode merge, LocationIdentity locationIdentity, ValueNode[] values) {
-        return USE_GENERATED_NODES ? new MemoryPhiNodeGen(merge, locationIdentity, values) : new MemoryPhiNode(merge, locationIdentity, values);
+        return new MemoryPhiNode(merge, locationIdentity, values);
     }
 
     protected MemoryPhiNode(MergeNode merge, LocationIdentity locationIdentity, ValueNode[] values) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/MergeNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/MergeNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -40,7 +40,7 @@
 @NodeInfo(allowedUsageTypes = {InputType.Association})
 public class MergeNode extends BeginStateSplitNode implements IterableNodeType, LIRLowerable {
     public static MergeNode create() {
-        return USE_GENERATED_NODES ? new MergeNodeGen() : new MergeNode();
+        return new MergeNode();
     }
 
     protected MergeNode() {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/ParameterNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/ParameterNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -33,7 +33,7 @@
 public class ParameterNode extends AbstractLocalNode implements IterableNodeType {
 
     public static ParameterNode create(int index, Stamp stamp) {
-        return USE_GENERATED_NODES ? new ParameterNodeGen(index, stamp) : new ParameterNode(index, stamp);
+        return new ParameterNode(index, stamp);
     }
 
     protected ParameterNode(int index, Stamp stamp) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/PhiNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/PhiNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -143,7 +143,7 @@
     static class MultipleValuesNode extends ValueNode {
 
         public static MultipleValuesNode create() {
-            return USE_GENERATED_NODES ? new PhiNode_MultipleValuesNodeGen() : new MultipleValuesNode();
+            return new MultipleValuesNode();
         }
 
         protected MultipleValuesNode() {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/PiArrayNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/PiArrayNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -45,7 +45,7 @@
     }
 
     public static PiArrayNode create(ValueNode object, ValueNode length, Stamp stamp) {
-        return USE_GENERATED_NODES ? new PiArrayNodeGen(object, length, stamp) : new PiArrayNode(object, length, stamp);
+        return new PiArrayNode(object, length, stamp);
     }
 
     protected PiArrayNode(ValueNode object, ValueNode length, Stamp stamp) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/PiNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/PiNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -52,7 +52,7 @@
     }
 
     public static PiNode create(ValueNode object, Stamp stamp) {
-        return USE_GENERATED_NODES ? new PiNodeGen(object, stamp) : new PiNode(object, stamp);
+        return new PiNode(object, stamp);
     }
 
     protected PiNode(ValueNode object, Stamp stamp) {
@@ -62,7 +62,7 @@
     }
 
     public static PiNode create(ValueNode object, Stamp stamp, ValueNode anchor) {
-        return USE_GENERATED_NODES ? new PiNodeGen(object, stamp, anchor) : new PiNode(object, stamp, anchor);
+        return new PiNode(object, stamp, anchor);
     }
 
     protected PiNode(ValueNode object, Stamp stamp, ValueNode anchor) {
@@ -72,7 +72,7 @@
     }
 
     public static PiNode create(ValueNode object, ResolvedJavaType toType, boolean exactType, boolean nonNull) {
-        return USE_GENERATED_NODES ? new PiNodeGen(object, toType, exactType, nonNull) : new PiNode(object, toType, exactType, nonNull);
+        return new PiNode(object, toType, exactType, nonNull);
     }
 
     protected PiNode(ValueNode object, ResolvedJavaType toType, boolean exactType, boolean nonNull) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/ReturnNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/ReturnNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -44,7 +44,7 @@
      *            void return
      */
     public static ReturnNode create(ValueNode result) {
-        return USE_GENERATED_NODES ? new ReturnNodeGen(result) : new ReturnNode(result);
+        return new ReturnNode(result);
     }
 
     protected ReturnNode(ValueNode result) {
@@ -52,7 +52,7 @@
     }
 
     public static ReturnNode create(ValueNode result, MemoryMapNode memoryMap) {
-        return USE_GENERATED_NODES ? new ReturnNodeGen(result, memoryMap) : new ReturnNode(result, memoryMap);
+        return new ReturnNode(result, memoryMap);
     }
 
     protected ReturnNode(ValueNode result, MemoryMapNode memoryMap) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/SafepointNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/SafepointNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -33,7 +33,7 @@
 public class SafepointNode extends DeoptimizingFixedWithNextNode implements LIRLowerable {
 
     public static SafepointNode create() {
-        return USE_GENERATED_NODES ? new SafepointNodeGen() : new SafepointNode();
+        return new SafepointNode();
     }
 
     protected SafepointNode() {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/ShortCircuitOrNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/ShortCircuitOrNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -36,7 +36,7 @@
     protected double shortCircuitProbability;
 
     public static ShortCircuitOrNode create(LogicNode x, boolean xNegated, LogicNode y, boolean yNegated, double shortCircuitProbability) {
-        return USE_GENERATED_NODES ? new ShortCircuitOrNodeGen(x, xNegated, y, yNegated, shortCircuitProbability) : new ShortCircuitOrNode(x, xNegated, y, yNegated, shortCircuitProbability);
+        return new ShortCircuitOrNode(x, xNegated, y, yNegated, shortCircuitProbability);
     }
 
     protected ShortCircuitOrNode(LogicNode x, boolean xNegated, LogicNode y, boolean yNegated, double shortCircuitProbability) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/SimpleInfopointNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/SimpleInfopointNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -33,7 +33,7 @@
     protected BytecodePosition position;
 
     public static SimpleInfopointNode create(InfopointReason reason, BytecodePosition position) {
-        return USE_GENERATED_NODES ? new SimpleInfopointNodeGen(reason, position) : new SimpleInfopointNode(reason, position);
+        return new SimpleInfopointNode(reason, position);
     }
 
     protected SimpleInfopointNode(InfopointReason reason, BytecodePosition position) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/StartNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/StartNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -32,7 +32,7 @@
 @NodeInfo(allowedUsageTypes = {InputType.Memory})
 public class StartNode extends BeginStateSplitNode implements MemoryCheckpoint.Single {
     public static StartNode create() {
-        return USE_GENERATED_NODES ? new StartNodeGen() : new StartNode();
+        return new StartNode();
     }
 
     protected StartNode() {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/TypeProfileProxyNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/TypeProfileProxyNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -59,7 +59,7 @@
     }
 
     public static ValueNode create(ValueNode object, JavaTypeProfile profile) {
-        return USE_GENERATED_NODES ? new TypeProfileProxyNodeGen(object, profile) : new TypeProfileProxyNode(object, profile);
+        return new TypeProfileProxyNode(object, profile);
     }
 
     protected TypeProfileProxyNode(ValueNode value, JavaTypeProfile profile) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/UnwindNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/UnwindNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -40,7 +40,7 @@
     }
 
     public static UnwindNode create(ValueNode exception) {
-        return USE_GENERATED_NODES ? new UnwindNodeGen(exception) : new UnwindNode(exception);
+        return new UnwindNode(exception);
     }
 
     protected UnwindNode(ValueNode exception) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/ValuePhiNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/ValuePhiNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -42,7 +42,7 @@
      * @param merge the merge that the new phi belongs to
      */
     public static ValuePhiNode create(Stamp stamp, MergeNode merge) {
-        return USE_GENERATED_NODES ? new ValuePhiNodeGen(stamp, merge) : new ValuePhiNode(stamp, merge);
+        return new ValuePhiNode(stamp, merge);
     }
 
     protected ValuePhiNode(Stamp stamp, MergeNode merge) {
@@ -59,7 +59,7 @@
      * @param values the initial values of the phi
      */
     public static ValuePhiNode create(Stamp stamp, MergeNode merge, ValueNode[] values) {
-        return USE_GENERATED_NODES ? new ValuePhiNodeGen(stamp, merge, values) : new ValuePhiNode(stamp, merge, values);
+        return new ValuePhiNode(stamp, merge, values);
     }
 
     protected ValuePhiNode(Stamp stamp, MergeNode merge, ValueNode[] values) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/ValueProxyNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/ValueProxyNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -33,7 +33,7 @@
     @Input ValueNode value;
 
     public static ValueProxyNode create(ValueNode value, BeginNode proxyPoint) {
-        return USE_GENERATED_NODES ? new ValueProxyNodeGen(value, proxyPoint) : new ValueProxyNode(value, proxyPoint);
+        return new ValueProxyNode(value, proxyPoint);
     }
 
     protected ValueProxyNode(ValueNode value, BeginNode proxyPoint) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/AddNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/AddNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -36,7 +36,7 @@
 public class AddNode extends BinaryArithmeticNode<Add> implements NarrowableArithmeticNode {
 
     public static AddNode create(ValueNode x, ValueNode y) {
-        return USE_GENERATED_NODES ? new AddNodeGen(x, y) : new AddNode(x, y);
+        return new AddNode(x, y);
     }
 
     protected AddNode(ValueNode x, ValueNode y) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/AndNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/AndNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -37,7 +37,7 @@
 public class AndNode extends BinaryArithmeticNode<And> implements NarrowableArithmeticNode {
 
     public static AndNode create(ValueNode x, ValueNode y) {
-        return USE_GENERATED_NODES ? new AndNodeGen(x, y) : new AndNode(x, y);
+        return new AndNode(x, y);
     }
 
     protected AndNode(ValueNode x, ValueNode y) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/ConditionalNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/ConditionalNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -49,7 +49,7 @@
     }
 
     public static ConditionalNode create(LogicNode condition) {
-        return USE_GENERATED_NODES ? new ConditionalNodeGen(condition) : new ConditionalNode(condition);
+        return new ConditionalNode(condition);
     }
 
     protected ConditionalNode(LogicNode condition) {
@@ -57,7 +57,7 @@
     }
 
     public static ConditionalNode create(LogicNode condition, ValueNode trueValue, ValueNode falseValue) {
-        return USE_GENERATED_NODES ? new ConditionalNodeGen(condition, trueValue, falseValue) : new ConditionalNode(condition, trueValue, falseValue);
+        return new ConditionalNode(condition, trueValue, falseValue);
     }
 
     protected ConditionalNode(LogicNode condition, ValueNode trueValue, ValueNode falseValue) {
@@ -128,7 +128,7 @@
     }
 
     public static ConditionalNode create(@InjectedNodeParameter StructuredGraph graph, Condition condition, ValueNode x, ValueNode y) {
-        return USE_GENERATED_NODES ? new ConditionalNodeGen(graph, condition, x, y) : new ConditionalNode(graph, condition, x, y);
+        return new ConditionalNode(graph, condition, x, y);
     }
 
     protected ConditionalNode(StructuredGraph graph, Condition condition, ValueNode x, ValueNode y) {
@@ -136,7 +136,7 @@
     }
 
     public static ConditionalNode create(ValueNode type, ValueNode object) {
-        return USE_GENERATED_NODES ? new ConditionalNodeGen(type, object) : new ConditionalNode(type, object);
+        return new ConditionalNode(type, object);
     }
 
     protected ConditionalNode(ValueNode type, ValueNode object) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/DivNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/DivNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -36,7 +36,7 @@
 public class DivNode extends BinaryArithmeticNode<Div> {
 
     public static DivNode create(ValueNode x, ValueNode y) {
-        return USE_GENERATED_NODES ? new DivNodeGen(x, y) : new DivNode(x, y);
+        return new DivNode(x, y);
     }
 
     protected DivNode(ValueNode x, ValueNode y) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/FloatConvertNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/FloatConvertNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -42,7 +42,7 @@
     protected final FloatConvert op;
 
     public static FloatConvertNode create(FloatConvert op, ValueNode input) {
-        return USE_GENERATED_NODES ? new FloatConvertNodeGen(op, input) : new FloatConvertNode(op, input);
+        return new FloatConvertNode(op, input);
     }
 
     protected FloatConvertNode(FloatConvert op, ValueNode input) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/FloatEqualsNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/FloatEqualsNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -40,7 +40,7 @@
      * @param y the instruction that produces the second input to this instruction
      */
     public static FloatEqualsNode create(ValueNode x, ValueNode y) {
-        return USE_GENERATED_NODES ? new FloatEqualsNodeGen(x, y) : new FloatEqualsNode(x, y);
+        return new FloatEqualsNode(x, y);
     }
 
     protected FloatEqualsNode(ValueNode x, ValueNode y) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/FloatLessThanNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/FloatLessThanNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -44,7 +44,7 @@
      *            a "true" result
      */
     public static FloatLessThanNode create(ValueNode x, ValueNode y, boolean unorderedIsTrue) {
-        return USE_GENERATED_NODES ? new FloatLessThanNodeGen(x, y, unorderedIsTrue) : new FloatLessThanNode(x, y, unorderedIsTrue);
+        return new FloatLessThanNode(x, y, unorderedIsTrue);
     }
 
     protected FloatLessThanNode(ValueNode x, ValueNode y, boolean unorderedIsTrue) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/IntegerBelowNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/IntegerBelowNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -39,7 +39,7 @@
      * @param y the instruction that produces the second input to this instruction
      */
     public static IntegerBelowNode create(ValueNode x, ValueNode y) {
-        return USE_GENERATED_NODES ? new IntegerBelowNodeGen(x, y) : new IntegerBelowNode(x, y);
+        return new IntegerBelowNode(x, y);
     }
 
     protected IntegerBelowNode(ValueNode x, ValueNode y) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/IntegerDivNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/IntegerDivNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -36,7 +36,7 @@
 public class IntegerDivNode extends FixedBinaryNode implements Lowerable, LIRLowerable {
 
     public static IntegerDivNode create(ValueNode x, ValueNode y) {
-        return USE_GENERATED_NODES ? new IntegerDivNodeGen(x, y) : new IntegerDivNode(x, y);
+        return new IntegerDivNode(x, y);
     }
 
     protected IntegerDivNode(ValueNode x, ValueNode y) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/IntegerEqualsNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/IntegerEqualsNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -41,7 +41,7 @@
      * @param y the instruction that produces the second input to this instruction
      */
     public static IntegerEqualsNode create(ValueNode x, ValueNode y) {
-        return USE_GENERATED_NODES ? new IntegerEqualsNodeGen(x, y) : new IntegerEqualsNode(x, y);
+        return new IntegerEqualsNode(x, y);
     }
 
     protected IntegerEqualsNode(ValueNode x, ValueNode y) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/IntegerLessThanNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/IntegerLessThanNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -41,7 +41,7 @@
      * @param y the instruction that produces the second input to this instruction
      */
     public static IntegerLessThanNode create(ValueNode x, ValueNode y) {
-        return USE_GENERATED_NODES ? new IntegerLessThanNodeGen(x, y) : new IntegerLessThanNode(x, y);
+        return new IntegerLessThanNode(x, y);
     }
 
     protected IntegerLessThanNode(ValueNode x, ValueNode y) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/IntegerRemNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/IntegerRemNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -33,7 +33,7 @@
 public class IntegerRemNode extends FixedBinaryNode implements Lowerable, LIRLowerable {
 
     public static IntegerRemNode create(ValueNode x, ValueNode y) {
-        return USE_GENERATED_NODES ? new IntegerRemNodeGen(x, y) : new IntegerRemNode(x, y);
+        return new IntegerRemNode(x, y);
     }
 
     protected IntegerRemNode(ValueNode x, ValueNode y) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/IntegerTestNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/IntegerTestNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -42,7 +42,7 @@
      * @param y the instruction that produces the second input to this instruction
      */
     public static IntegerTestNode create(ValueNode x, ValueNode y) {
-        return USE_GENERATED_NODES ? new IntegerTestNodeGen(x, y) : new IntegerTestNode(x, y);
+        return new IntegerTestNode(x, y);
     }
 
     protected IntegerTestNode(ValueNode x, ValueNode y) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/IsNullNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/IsNullNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -42,7 +42,7 @@
      * @param object the instruction producing the object to check against null
      */
     public static IsNullNode create(ValueNode object) {
-        return USE_GENERATED_NODES ? new IsNullNodeGen(object) : new IsNullNode(object);
+        return new IsNullNode(object);
     }
 
     protected IsNullNode(ValueNode object) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/LeftShiftNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/LeftShiftNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -34,7 +34,7 @@
 public class LeftShiftNode extends ShiftNode {
 
     public static LeftShiftNode create(ValueNode x, ValueNode y) {
-        return USE_GENERATED_NODES ? new LeftShiftNodeGen(x, y) : new LeftShiftNode(x, y);
+        return new LeftShiftNode(x, y);
     }
 
     protected LeftShiftNode(ValueNode x, ValueNode y) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/MulNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/MulNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -37,7 +37,7 @@
 public class MulNode extends BinaryArithmeticNode<Mul> implements NarrowableArithmeticNode {
 
     public static MulNode create(ValueNode x, ValueNode y) {
-        return USE_GENERATED_NODES ? new MulNodeGen(x, y) : new MulNode(x, y);
+        return new MulNode(x, y);
     }
 
     protected MulNode(ValueNode x, ValueNode y) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/NarrowNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/NarrowNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -38,7 +38,7 @@
 public class NarrowNode extends IntegerConvertNode<Narrow, SignExtend> {
 
     public static NarrowNode create(ValueNode input, int resultBits) {
-        return USE_GENERATED_NODES ? new NarrowNodeGen(input, resultBits) : new NarrowNode(input, resultBits);
+        return new NarrowNode(input, resultBits);
     }
 
     protected NarrowNode(ValueNode input, int resultBits) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/NegateNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/NegateNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -42,7 +42,7 @@
      * @param value the instruction producing the value that is input to this instruction
      */
     public static NegateNode create(ValueNode value) {
-        return USE_GENERATED_NODES ? new NegateNodeGen(value) : new NegateNode(value);
+        return new NegateNode(value);
     }
 
     protected NegateNode(ValueNode value) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/NormalizeCompareNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/NormalizeCompareNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -48,7 +48,7 @@
      *            less, false when greater.
      */
     public static NormalizeCompareNode create(ValueNode x, ValueNode y, boolean isUnorderedLess) {
-        return USE_GENERATED_NODES ? new NormalizeCompareNodeGen(x, y, isUnorderedLess) : new NormalizeCompareNode(x, y, isUnorderedLess);
+        return new NormalizeCompareNode(x, y, isUnorderedLess);
     }
 
     protected NormalizeCompareNode(ValueNode x, ValueNode y, boolean isUnorderedLess) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/NotNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/NotNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -42,7 +42,7 @@
      * @param x the instruction producing the value that is input to this instruction
      */
     public static NotNode create(ValueNode x) {
-        return USE_GENERATED_NODES ? new NotNodeGen(x) : new NotNode(x);
+        return new NotNode(x);
     }
 
     protected NotNode(ValueNode x) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/ObjectEqualsNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/ObjectEqualsNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -41,7 +41,7 @@
      * @param y the instruction that produces the second input to this instruction
      */
     public static ObjectEqualsNode create(ValueNode x, ValueNode y) {
-        return USE_GENERATED_NODES ? new ObjectEqualsNodeGen(x, y) : new ObjectEqualsNode(x, y);
+        return new ObjectEqualsNode(x, y);
     }
 
     protected ObjectEqualsNode(ValueNode x, ValueNode y) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/OrNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/OrNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -37,7 +37,7 @@
 public class OrNode extends BinaryArithmeticNode<Or> {
 
     public static OrNode create(ValueNode x, ValueNode y) {
-        return USE_GENERATED_NODES ? new OrNodeGen(x, y) : new OrNode(x, y);
+        return new OrNode(x, y);
     }
 
     protected OrNode(ValueNode x, ValueNode y) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/ReinterpretNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/ReinterpretNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -40,7 +40,7 @@
 public class ReinterpretNode extends UnaryNode implements ArithmeticLIRLowerable {
 
     public static ReinterpretNode create(Kind to, ValueNode value) {
-        return USE_GENERATED_NODES ? new ReinterpretNodeGen(to, value) : new ReinterpretNode(to, value);
+        return new ReinterpretNode(to, value);
     }
 
     protected ReinterpretNode(Kind to, ValueNode value) {
@@ -48,7 +48,7 @@
     }
 
     public static ReinterpretNode create(Stamp to, ValueNode value) {
-        return USE_GENERATED_NODES ? new ReinterpretNodeGen(to, value) : new ReinterpretNode(to, value);
+        return new ReinterpretNode(to, value);
     }
 
     protected ReinterpretNode(Stamp to, ValueNode value) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/RemNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/RemNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -33,7 +33,7 @@
 public class RemNode extends BinaryArithmeticNode<Rem> implements Lowerable {
 
     public static RemNode create(ValueNode x, ValueNode y) {
-        return USE_GENERATED_NODES ? new RemNodeGen(x, y) : new RemNode(x, y);
+        return new RemNode(x, y);
     }
 
     protected RemNode(ValueNode x, ValueNode y) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/RightShiftNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/RightShiftNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -35,7 +35,7 @@
 public class RightShiftNode extends ShiftNode {
 
     public static RightShiftNode create(ValueNode x, ValueNode y) {
-        return USE_GENERATED_NODES ? new RightShiftNodeGen(x, y) : new RightShiftNode(x, y);
+        return new RightShiftNode(x, y);
     }
 
     protected RightShiftNode(ValueNode x, ValueNode y) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/SignExtendNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/SignExtendNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -38,7 +38,7 @@
 public class SignExtendNode extends IntegerConvertNode<SignExtend, Narrow> {
 
     public static SignExtendNode create(ValueNode input, int resultBits) {
-        return USE_GENERATED_NODES ? new SignExtendNodeGen(input, resultBits) : new SignExtendNode(input, resultBits);
+        return new SignExtendNode(input, resultBits);
     }
 
     protected SignExtendNode(ValueNode input, int resultBits) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/SubNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/SubNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -37,7 +37,7 @@
 public class SubNode extends BinaryArithmeticNode<Sub> implements NarrowableArithmeticNode {
 
     public static SubNode create(ValueNode x, ValueNode y) {
-        return USE_GENERATED_NODES ? new SubNodeGen(x, y) : new SubNode(x, y);
+        return new SubNode(x, y);
     }
 
     protected SubNode(ValueNode x, ValueNode y) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/UnsignedDivNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/UnsignedDivNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -33,7 +33,7 @@
 public class UnsignedDivNode extends FixedBinaryNode implements Lowerable, LIRLowerable {
 
     public static UnsignedDivNode create(ValueNode x, ValueNode y) {
-        return USE_GENERATED_NODES ? new UnsignedDivNodeGen(x, y) : new UnsignedDivNode(x, y);
+        return new UnsignedDivNode(x, y);
     }
 
     protected UnsignedDivNode(ValueNode x, ValueNode y) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/UnsignedRemNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/UnsignedRemNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -33,7 +33,7 @@
 public class UnsignedRemNode extends FixedBinaryNode implements Lowerable, LIRLowerable {
 
     public static UnsignedRemNode create(ValueNode x, ValueNode y) {
-        return USE_GENERATED_NODES ? new UnsignedRemNodeGen(x, y) : new UnsignedRemNode(x, y);
+        return new UnsignedRemNode(x, y);
     }
 
     protected UnsignedRemNode(ValueNode x, ValueNode y) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/UnsignedRightShiftNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/UnsignedRightShiftNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -34,7 +34,7 @@
 public class UnsignedRightShiftNode extends ShiftNode {
 
     public static UnsignedRightShiftNode create(ValueNode x, ValueNode y) {
-        return USE_GENERATED_NODES ? new UnsignedRightShiftNodeGen(x, y) : new UnsignedRightShiftNode(x, y);
+        return new UnsignedRightShiftNode(x, y);
     }
 
     protected UnsignedRightShiftNode(ValueNode x, ValueNode y) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/XorNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/XorNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -37,7 +37,7 @@
 public class XorNode extends BinaryArithmeticNode<Xor> {
 
     public static XorNode create(ValueNode x, ValueNode y) {
-        return USE_GENERATED_NODES ? new XorNodeGen(x, y) : new XorNode(x, y);
+        return new XorNode(x, y);
     }
 
     protected XorNode(ValueNode x, ValueNode y) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/ZeroExtendNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/ZeroExtendNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -40,7 +40,7 @@
 public class ZeroExtendNode extends IntegerConvertNode<ZeroExtend, Narrow> {
 
     public static ZeroExtendNode create(ValueNode input, int resultBits) {
-        return USE_GENERATED_NODES ? new ZeroExtendNodeGen(input, resultBits) : new ZeroExtendNode(input, resultBits);
+        return new ZeroExtendNode(input, resultBits);
     }
 
     protected ZeroExtendNode(ValueNode input, int resultBits) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/debug/DynamicCounterNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/debug/DynamicCounterNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -45,7 +45,7 @@
     protected final boolean withContext;
 
     public static DynamicCounterNode create(String name, String group, ValueNode increment, boolean withContext) {
-        return USE_GENERATED_NODES ? new DynamicCounterNodeGen(name, group, increment, withContext) : new DynamicCounterNode(name, group, increment, withContext);
+        return new DynamicCounterNode(name, group, increment, withContext);
     }
 
     protected DynamicCounterNode(String name, String group, ValueNode increment, boolean withContext) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/debug/WeakCounterNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/debug/WeakCounterNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -39,7 +39,7 @@
     @Input ValueNode checkedValue;
 
     public static WeakCounterNode create(String group, String name, ValueNode increment, boolean addContext, ValueNode checkedValue) {
-        return USE_GENERATED_NODES ? new WeakCounterNodeGen(group, name, increment, addContext, checkedValue) : new WeakCounterNode(group, name, increment, addContext, checkedValue);
+        return new WeakCounterNode(group, name, increment, addContext, checkedValue);
     }
 
     protected WeakCounterNode(String group, String name, ValueNode increment, boolean addContext, ValueNode checkedValue) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/AddLocationNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/AddLocationNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -56,7 +56,7 @@
     }
 
     public static AddLocationNode create(ValueNode x, ValueNode y) {
-        return USE_GENERATED_NODES ? new AddLocationNodeGen(x, y) : new AddLocationNode(x, y);
+        return new AddLocationNode(x, y);
     }
 
     protected AddLocationNode(ValueNode x, ValueNode y) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/BoxNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/BoxNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -45,7 +45,7 @@
     protected final Kind boxingKind;
 
     public static BoxNode create(ValueNode value, ResolvedJavaType resultType, Kind boxingKind) {
-        return USE_GENERATED_NODES ? new BoxNodeGen(value, resultType, boxingKind) : new BoxNode(value, resultType, boxingKind);
+        return new BoxNode(value, resultType, boxingKind);
     }
 
     protected BoxNode(ValueNode value, ResolvedJavaType resultType, Kind boxingKind) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/BranchProbabilityNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/BranchProbabilityNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -54,7 +54,7 @@
     @Input ValueNode condition;
 
     public static BranchProbabilityNode create(ValueNode probability, ValueNode condition) {
-        return USE_GENERATED_NODES ? new BranchProbabilityNodeGen(probability, condition) : new BranchProbabilityNode(probability, condition);
+        return new BranchProbabilityNode(probability, condition);
     }
 
     protected BranchProbabilityNode(ValueNode probability, ValueNode condition) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/BytecodeExceptionNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/BytecodeExceptionNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -40,7 +40,7 @@
     @Input NodeInputList<ValueNode> arguments;
 
     public static BytecodeExceptionNode create(MetaAccessProvider metaAccess, Class<? extends Throwable> exceptionClass, ValueNode... arguments) {
-        return USE_GENERATED_NODES ? new BytecodeExceptionNodeGen(metaAccess, exceptionClass, arguments) : new BytecodeExceptionNode(metaAccess, exceptionClass, arguments);
+        return new BytecodeExceptionNode(metaAccess, exceptionClass, arguments);
     }
 
     protected BytecodeExceptionNode(MetaAccessProvider metaAccess, Class<? extends Throwable> exceptionClass, ValueNode... arguments) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/ComputeAddressNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/ComputeAddressNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -44,7 +44,7 @@
     }
 
     public static ComputeAddressNode create(ValueNode object, ValueNode location, Stamp stamp) {
-        return USE_GENERATED_NODES ? new ComputeAddressNodeGen(object, location, stamp) : new ComputeAddressNode(object, location, stamp);
+        return new ComputeAddressNode(object, location, stamp);
     }
 
     protected ComputeAddressNode(ValueNode object, ValueNode location, Stamp stamp) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/ConstantLocationNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/ConstantLocationNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -45,7 +45,7 @@
     }
 
     public static ConstantLocationNode create(LocationIdentity identity, Kind kind, long displacement) {
-        return USE_GENERATED_NODES ? new ConstantLocationNodeGen(identity, kind, displacement) : new ConstantLocationNode(identity, kind, displacement);
+        return new ConstantLocationNode(identity, kind, displacement);
     }
 
     protected ConstantLocationNode(LocationIdentity identity, Kind kind, long displacement) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/FixedValueAnchorNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/FixedValueAnchorNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -37,7 +37,7 @@
     }
 
     public static FixedValueAnchorNode create(ValueNode object) {
-        return USE_GENERATED_NODES ? new FixedValueAnchorNodeGen(object) : new FixedValueAnchorNode(object);
+        return new FixedValueAnchorNode(object);
     }
 
     protected FixedValueAnchorNode(ValueNode object) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/FloatingReadNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/FloatingReadNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -40,7 +40,7 @@
     @OptionalInput(InputType.Memory) MemoryNode lastLocationAccess;
 
     public static FloatingReadNode create(ValueNode object, LocationNode location, MemoryNode lastLocationAccess, Stamp stamp) {
-        return USE_GENERATED_NODES ? new FloatingReadNodeGen(object, location, lastLocationAccess, stamp) : new FloatingReadNode(object, location, lastLocationAccess, stamp);
+        return new FloatingReadNode(object, location, lastLocationAccess, stamp);
     }
 
     protected FloatingReadNode(ValueNode object, LocationNode location, MemoryNode lastLocationAccess, Stamp stamp) {
@@ -48,7 +48,7 @@
     }
 
     public static FloatingReadNode create(ValueNode object, LocationNode location, MemoryNode lastLocationAccess, Stamp stamp, GuardingNode guard) {
-        return USE_GENERATED_NODES ? new FloatingReadNodeGen(object, location, lastLocationAccess, stamp, guard) : new FloatingReadNode(object, location, lastLocationAccess, stamp, guard);
+        return new FloatingReadNode(object, location, lastLocationAccess, stamp, guard);
     }
 
     protected FloatingReadNode(ValueNode object, LocationNode location, MemoryNode lastLocationAccess, Stamp stamp, GuardingNode guard) {
@@ -56,8 +56,7 @@
     }
 
     public static FloatingReadNode create(ValueNode object, LocationNode location, MemoryNode lastLocationAccess, Stamp stamp, GuardingNode guard, BarrierType barrierType) {
-        return USE_GENERATED_NODES ? new FloatingReadNodeGen(object, location, lastLocationAccess, stamp, guard, barrierType) : new FloatingReadNode(object, location, lastLocationAccess, stamp,
-                        guard, barrierType);
+        return new FloatingReadNode(object, location, lastLocationAccess, stamp, guard, barrierType);
     }
 
     protected FloatingReadNode(ValueNode object, LocationNode location, MemoryNode lastLocationAccess, Stamp stamp, GuardingNode guard, BarrierType barrierType) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/ForeignCallNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/ForeignCallNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -45,7 +45,7 @@
     protected final ForeignCallDescriptor descriptor;
 
     public static ForeignCallNode create(@InjectedNodeParameter ForeignCallsProvider foreignCalls, ForeignCallDescriptor descriptor, ValueNode... arguments) {
-        return USE_GENERATED_NODES ? new ForeignCallNodeGen(foreignCalls, descriptor, arguments) : new ForeignCallNode(foreignCalls, descriptor, arguments);
+        return new ForeignCallNode(foreignCalls, descriptor, arguments);
     }
 
     protected ForeignCallNode(ForeignCallsProvider foreignCalls, ForeignCallDescriptor descriptor, ValueNode... arguments) {
@@ -56,7 +56,7 @@
     }
 
     public static ForeignCallNode create(ForeignCallsProvider foreignCalls, ForeignCallDescriptor descriptor, List<ValueNode> arguments) {
-        return USE_GENERATED_NODES ? new ForeignCallNodeGen(foreignCalls, descriptor, arguments) : new ForeignCallNode(foreignCalls, descriptor, arguments);
+        return new ForeignCallNode(foreignCalls, descriptor, arguments);
     }
 
     protected ForeignCallNode(ForeignCallsProvider foreignCalls, ForeignCallDescriptor descriptor, List<ValueNode> arguments) {
@@ -64,7 +64,7 @@
     }
 
     public static ForeignCallNode create(@InjectedNodeParameter ForeignCallsProvider foreignCalls, ForeignCallDescriptor descriptor, Stamp stamp, List<ValueNode> arguments) {
-        return USE_GENERATED_NODES ? new ForeignCallNodeGen(foreignCalls, descriptor, stamp, arguments) : new ForeignCallNode(foreignCalls, descriptor, stamp, arguments);
+        return new ForeignCallNode(foreignCalls, descriptor, stamp, arguments);
     }
 
     protected ForeignCallNode(ForeignCallsProvider foreignCalls, ForeignCallDescriptor descriptor, Stamp stamp, List<ValueNode> arguments) {
@@ -75,7 +75,7 @@
     }
 
     public static ForeignCallNode create(@InjectedNodeParameter ForeignCallsProvider foreignCalls, ForeignCallDescriptor descriptor, Stamp stamp) {
-        return USE_GENERATED_NODES ? new ForeignCallNodeGen(foreignCalls, descriptor, stamp) : new ForeignCallNode(foreignCalls, descriptor, stamp);
+        return new ForeignCallNode(foreignCalls, descriptor, stamp);
     }
 
     protected ForeignCallNode(ForeignCallsProvider foreignCalls, ForeignCallDescriptor descriptor, Stamp stamp) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/IndexedLocationNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/IndexedLocationNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -70,7 +70,7 @@
     }
 
     public static IndexedLocationNode create(LocationIdentity identity, Kind kind, long displacement, ValueNode index, int indexScaling) {
-        return USE_GENERATED_NODES ? new IndexedLocationNodeGen(identity, kind, displacement, index, indexScaling) : new IndexedLocationNode(identity, kind, displacement, index, indexScaling);
+        return new IndexedLocationNode(identity, kind, displacement, index, indexScaling);
     }
 
     protected IndexedLocationNode(LocationIdentity identity, Kind kind, long displacement, ValueNode index, int indexScaling) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/IntegerSwitchNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/IntegerSwitchNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -52,8 +52,7 @@
      * @param keySuccessors the successor index for each key
      */
     public static IntegerSwitchNode create(ValueNode value, BeginNode[] successors, int[] keys, double[] keyProbabilities, int[] keySuccessors) {
-        return USE_GENERATED_NODES ? new IntegerSwitchNodeGen(value, successors, keys, keyProbabilities, keySuccessors) : new IntegerSwitchNode(value, successors, keys, keyProbabilities,
-                        keySuccessors);
+        return new IntegerSwitchNode(value, successors, keys, keyProbabilities, keySuccessors);
     }
 
     protected IntegerSwitchNode(ValueNode value, BeginNode[] successors, int[] keys, double[] keyProbabilities, int[] keySuccessors) {
@@ -83,8 +82,7 @@
      * @param keySuccessors the successor index for each key
      */
     public static IntegerSwitchNode create(ValueNode value, int successorCount, int[] keys, double[] keyProbabilities, int[] keySuccessors) {
-        return USE_GENERATED_NODES ? new IntegerSwitchNodeGen(value, successorCount, keys, keyProbabilities, keySuccessors) : new IntegerSwitchNode(value, successorCount, keys, keyProbabilities,
-                        keySuccessors);
+        return new IntegerSwitchNode(value, successorCount, keys, keyProbabilities, keySuccessors);
     }
 
     protected IntegerSwitchNode(ValueNode value, int successorCount, int[] keys, double[] keyProbabilities, int[] keySuccessors) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/JavaReadNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/JavaReadNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -37,7 +37,7 @@
     protected final boolean compressible;
 
     public static JavaReadNode create(ValueNode object, LocationNode location, BarrierType barrierType, boolean compressible) {
-        return USE_GENERATED_NODES ? new JavaReadNodeGen(object, location, barrierType, compressible) : new JavaReadNode(object, location, barrierType, compressible);
+        return new JavaReadNode(object, location, barrierType, compressible);
     }
 
     protected JavaReadNode(ValueNode object, LocationNode location, BarrierType barrierType, boolean compressible) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/JavaWriteNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/JavaWriteNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -36,8 +36,7 @@
     protected final boolean compressible;
 
     public static JavaWriteNode create(ValueNode object, ValueNode value, ValueNode location, BarrierType barrierType, boolean compressible, boolean initialization) {
-        return USE_GENERATED_NODES ? new JavaWriteNodeGen(object, value, location, barrierType, compressible, initialization) : new JavaWriteNode(object, value, location, barrierType, compressible,
-                        initialization);
+        return new JavaWriteNode(object, value, location, barrierType, compressible, initialization);
     }
 
     protected JavaWriteNode(ValueNode object, ValueNode value, ValueNode location, BarrierType barrierType, boolean compressible, boolean initialization) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/LoadHubNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/LoadHubNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -44,7 +44,7 @@
     }
 
     public static LoadHubNode create(ValueNode value, Kind kind) {
-        return USE_GENERATED_NODES ? new LoadHubNodeGen(value, kind) : new LoadHubNode(value, kind);
+        return new LoadHubNode(value, kind);
     }
 
     protected LoadHubNode(ValueNode value, Kind kind) {
@@ -53,7 +53,7 @@
     }
 
     public static LoadHubNode create(ValueNode value, Kind kind, ValueNode guard) {
-        return USE_GENERATED_NODES ? new LoadHubNodeGen(value, kind, guard) : new LoadHubNode(value, kind, guard);
+        return new LoadHubNode(value, kind, guard);
     }
 
     protected LoadHubNode(ValueNode value, Kind kind, ValueNode guard) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/LoadMethodNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/LoadMethodNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -46,7 +46,7 @@
     }
 
     public static LoadMethodNode create(ResolvedJavaMethod method, ResolvedJavaType receiverType, ValueNode hub, Kind kind) {
-        return USE_GENERATED_NODES ? new LoadMethodNodeGen(method, receiverType, hub, kind) : new LoadMethodNode(method, receiverType, hub, kind);
+        return new LoadMethodNode(method, receiverType, hub, kind);
     }
 
     protected LoadMethodNode(ResolvedJavaMethod method, ResolvedJavaType receiverType, ValueNode hub, Kind kind) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/MembarNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/MembarNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -48,7 +48,7 @@
      * @param barriers a mask of the barrier constants defined in {@link MemoryBarriers}
      */
     public static MembarNode create(int barriers) {
-        return USE_GENERATED_NODES ? new MembarNodeGen(barriers) : new MembarNode(barriers);
+        return new MembarNode(barriers);
     }
 
     protected MembarNode(int barriers) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/NullCheckNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/NullCheckNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -33,7 +33,7 @@
     @Input ValueNode object;
 
     public static NullCheckNode create(ValueNode object) {
-        return USE_GENERATED_NODES ? new NullCheckNodeGen(object) : new NullCheckNode(object);
+        return new NullCheckNode(object);
     }
 
     protected NullCheckNode(ValueNode object) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/OSRLocalNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/OSRLocalNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -31,7 +31,7 @@
 public class OSRLocalNode extends AbstractLocalNode implements IterableNodeType {
 
     public static OSRLocalNode create(int index, Stamp stamp) {
-        return USE_GENERATED_NODES ? new OSRLocalNodeGen(index, stamp) : new OSRLocalNode(index, stamp);
+        return new OSRLocalNode(index, stamp);
     }
 
     protected OSRLocalNode(int index, Stamp stamp) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/OSRStartNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/OSRStartNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -30,7 +30,7 @@
 @NodeInfo
 public class OSRStartNode extends StartNode implements Lowerable {
     public static OSRStartNode create() {
-        return USE_GENERATED_NODES ? new OSRStartNodeGen() : new OSRStartNode();
+        return new OSRStartNode();
     }
 
     protected OSRStartNode() {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/ReadNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/ReadNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -40,7 +40,7 @@
 public class ReadNode extends FloatableAccessNode implements LIRLowerable, Canonicalizable, PiPushable, Virtualizable, GuardingNode {
 
     public static ReadNode create(ValueNode object, ValueNode location, Stamp stamp, BarrierType barrierType) {
-        return USE_GENERATED_NODES ? new ReadNodeGen(object, location, stamp, barrierType) : new ReadNode(object, location, stamp, barrierType);
+        return new ReadNode(object, location, stamp, barrierType);
     }
 
     protected ReadNode(ValueNode object, ValueNode location, Stamp stamp, BarrierType barrierType) {
@@ -48,7 +48,7 @@
     }
 
     public static ReadNode create(ValueNode object, ValueNode location, Stamp stamp, GuardingNode guard, BarrierType barrierType) {
-        return USE_GENERATED_NODES ? new ReadNodeGen(object, location, stamp, guard, barrierType) : new ReadNode(object, location, stamp, guard, barrierType);
+        return new ReadNode(object, location, stamp, guard, barrierType);
     }
 
     protected ReadNode(ValueNode object, ValueNode location, Stamp stamp, GuardingNode guard, BarrierType barrierType) {
@@ -56,8 +56,7 @@
     }
 
     public static ReadNode create(ValueNode object, ValueNode location, Stamp stamp, GuardingNode guard, BarrierType barrierType, boolean nullCheck, FrameState stateBefore) {
-        return USE_GENERATED_NODES ? new ReadNodeGen(object, location, stamp, guard, barrierType, nullCheck, stateBefore) : new ReadNode(object, location, stamp, guard, barrierType, nullCheck,
-                        stateBefore);
+        return new ReadNode(object, location, stamp, guard, barrierType, nullCheck, stateBefore);
     }
 
     protected ReadNode(ValueNode object, ValueNode location, Stamp stamp, GuardingNode guard, BarrierType barrierType, boolean nullCheck, FrameState stateBefore) {
@@ -65,7 +64,7 @@
     }
 
     public static ReadNode create(ValueNode object, ValueNode location, ValueNode guard, BarrierType barrierType) {
-        return USE_GENERATED_NODES ? new ReadNodeGen(object, location, guard, barrierType) : new ReadNode(object, location, guard, barrierType);
+        return new ReadNode(object, location, guard, barrierType);
     }
 
     protected ReadNode(ValueNode object, ValueNode location, ValueNode guard, BarrierType barrierType) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/StoreHubNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/StoreHubNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -42,7 +42,7 @@
     }
 
     public static StoreHubNode create(ValueNode object, ValueNode value) {
-        return USE_GENERATED_NODES ? new StoreHubNodeGen(object, value) : new StoreHubNode(object, value);
+        return new StoreHubNode(object, value);
     }
 
     protected StoreHubNode(ValueNode object, ValueNode value) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/UnboxNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/UnboxNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -36,7 +36,7 @@
     protected final Kind boxingKind;
 
     public static UnboxNode create(ValueNode value, Kind boxingKind) {
-        return USE_GENERATED_NODES ? new UnboxNodeGen(value, boxingKind) : new UnboxNode(value, boxingKind);
+        return new UnboxNode(value, boxingKind);
     }
 
     protected UnboxNode(ValueNode value, Kind boxingKind) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/UnsafeCastNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/UnsafeCastNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -43,7 +43,7 @@
     @Input ValueNode object;
 
     public static UnsafeCastNode create(ValueNode object, Stamp stamp) {
-        return USE_GENERATED_NODES ? new UnsafeCastNodeGen(object, stamp) : new UnsafeCastNode(object, stamp);
+        return new UnsafeCastNode(object, stamp);
     }
 
     protected UnsafeCastNode(ValueNode object, Stamp stamp) {
@@ -52,7 +52,7 @@
     }
 
     public static UnsafeCastNode create(ValueNode object, Stamp stamp, ValueNode anchor) {
-        return USE_GENERATED_NODES ? new UnsafeCastNodeGen(object, stamp, anchor) : new UnsafeCastNode(object, stamp, anchor);
+        return new UnsafeCastNode(object, stamp, anchor);
     }
 
     protected UnsafeCastNode(ValueNode object, Stamp stamp, ValueNode anchor) {
@@ -61,7 +61,7 @@
     }
 
     public static UnsafeCastNode create(ValueNode object, ResolvedJavaType toType, boolean exactType, boolean nonNull) {
-        return USE_GENERATED_NODES ? new UnsafeCastNodeGen(object, toType, exactType, nonNull) : new UnsafeCastNode(object, toType, exactType, nonNull);
+        return new UnsafeCastNode(object, toType, exactType, nonNull);
     }
 
     protected UnsafeCastNode(ValueNode object, ResolvedJavaType toType, boolean exactType, boolean nonNull) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/UnsafeLoadNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/UnsafeLoadNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -40,7 +40,7 @@
     @OptionalInput(InputType.Condition) LogicNode guardingCondition;
 
     public static UnsafeLoadNode create(ValueNode object, ValueNode offset, Kind accessKind, LocationIdentity locationIdentity) {
-        return USE_GENERATED_NODES ? new UnsafeLoadNodeGen(object, offset, accessKind, locationIdentity) : new UnsafeLoadNode(object, offset, accessKind, locationIdentity);
+        return new UnsafeLoadNode(object, offset, accessKind, locationIdentity);
     }
 
     protected UnsafeLoadNode(ValueNode object, ValueNode offset, Kind accessKind, LocationIdentity locationIdentity) {
@@ -48,7 +48,7 @@
     }
 
     public static UnsafeLoadNode create(ValueNode object, ValueNode offset, Kind accessKind, LocationIdentity locationIdentity, LogicNode condition) {
-        return USE_GENERATED_NODES ? new UnsafeLoadNodeGen(object, offset, accessKind, locationIdentity, condition) : new UnsafeLoadNode(object, offset, accessKind, locationIdentity, condition);
+        return new UnsafeLoadNode(object, offset, accessKind, locationIdentity, condition);
     }
 
     protected UnsafeLoadNode(ValueNode object, ValueNode offset, Kind accessKind, LocationIdentity locationIdentity, LogicNode condition) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/UnsafeStoreNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/UnsafeStoreNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -42,7 +42,7 @@
     @OptionalInput(InputType.State) FrameState stateAfter;
 
     public static UnsafeStoreNode create(ValueNode object, ValueNode offset, ValueNode value, Kind accessKind, LocationIdentity locationIdentity) {
-        return USE_GENERATED_NODES ? new UnsafeStoreNodeGen(object, offset, value, accessKind, locationIdentity) : new UnsafeStoreNode(object, offset, value, accessKind, locationIdentity);
+        return new UnsafeStoreNode(object, offset, value, accessKind, locationIdentity);
     }
 
     protected UnsafeStoreNode(ValueNode object, ValueNode offset, ValueNode value, Kind accessKind, LocationIdentity locationIdentity) {
@@ -50,8 +50,7 @@
     }
 
     public static UnsafeStoreNode create(ValueNode object, ValueNode offset, ValueNode value, Kind accessKind, LocationIdentity locationIdentity, FrameState stateAfter) {
-        return USE_GENERATED_NODES ? new UnsafeStoreNodeGen(object, offset, value, accessKind, locationIdentity, stateAfter) : new UnsafeStoreNode(object, offset, value, accessKind, locationIdentity,
-                        stateAfter);
+        return new UnsafeStoreNode(object, offset, value, accessKind, locationIdentity, stateAfter);
     }
 
     protected UnsafeStoreNode(ValueNode object, ValueNode offset, ValueNode value, Kind accessKind, LocationIdentity locationIdentity, FrameState stateAfter) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/ValueAnchorNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/ValueAnchorNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -39,7 +39,7 @@
     @OptionalInput(InputType.Guard) ValueNode anchored;
 
     public static ValueAnchorNode create(ValueNode value) {
-        return USE_GENERATED_NODES ? new ValueAnchorNodeGen(value) : new ValueAnchorNode(value);
+        return new ValueAnchorNode(value);
     }
 
     protected ValueAnchorNode(ValueNode value) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/WriteNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/WriteNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -37,7 +37,7 @@
 public class WriteNode extends AbstractWriteNode implements LIRLowerable, Simplifiable, Virtualizable {
 
     public static WriteNode create(ValueNode object, ValueNode value, ValueNode location, BarrierType barrierType) {
-        return USE_GENERATED_NODES ? new WriteNodeGen(object, value, location, barrierType) : new WriteNode(object, value, location, barrierType);
+        return new WriteNode(object, value, location, barrierType);
     }
 
     protected WriteNode(ValueNode object, ValueNode value, ValueNode location, BarrierType barrierType) {
@@ -45,7 +45,7 @@
     }
 
     public static WriteNode create(ValueNode object, ValueNode value, ValueNode location, BarrierType barrierType, boolean initialization) {
-        return USE_GENERATED_NODES ? new WriteNodeGen(object, value, location, barrierType, initialization) : new WriteNode(object, value, location, barrierType, initialization);
+        return new WriteNode(object, value, location, barrierType, initialization);
     }
 
     protected WriteNode(ValueNode object, ValueNode value, ValueNode location, BarrierType barrierType, boolean initialization) {
@@ -53,7 +53,7 @@
     }
 
     public static WriteNode create(ValueNode object, ValueNode value, ValueNode location, BarrierType barrierType, GuardingNode guard, boolean initialization) {
-        return USE_GENERATED_NODES ? new WriteNodeGen(object, value, location, barrierType, guard, initialization) : new WriteNode(object, value, location, barrierType, guard, initialization);
+        return new WriteNode(object, value, location, barrierType, guard, initialization);
     }
 
     protected WriteNode(ValueNode object, ValueNode value, ValueNode location, BarrierType barrierType, GuardingNode guard, boolean initialization) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/AbstractNewArrayNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/AbstractNewArrayNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -49,7 +49,7 @@
      * @param fillContents determines whether the array elements should be initialized to zero/null.
      */
     public static AbstractNewArrayNode create(Stamp stamp, ValueNode length, boolean fillContents) {
-        return USE_GENERATED_NODES ? new AbstractNewArrayNodeGen(stamp, length, fillContents) : new AbstractNewArrayNode(stamp, length, fillContents);
+        return new AbstractNewArrayNode(stamp, length, fillContents);
     }
 
     protected AbstractNewArrayNode(Stamp stamp, ValueNode length, boolean fillContents) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/AbstractNewObjectNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/AbstractNewObjectNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -47,7 +47,7 @@
      * @param fillContents determines if the object's contents should be initialized to zero/null.
      */
     public static AbstractNewObjectNode create(Stamp stamp, boolean fillContents) {
-        return USE_GENERATED_NODES ? new AbstractNewObjectNodeGen(stamp, fillContents) : new AbstractNewObjectNode(stamp, fillContents);
+        return new AbstractNewObjectNode(stamp, fillContents);
     }
 
     protected AbstractNewObjectNode(Stamp stamp, boolean fillContents) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/ArrayLengthNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/ArrayLengthNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -47,7 +47,7 @@
     }
 
     public static ArrayLengthNode create(ValueNode array) {
-        return USE_GENERATED_NODES ? new ArrayLengthNodeGen(array) : new ArrayLengthNode(array);
+        return new ArrayLengthNode(array);
     }
 
     protected ArrayLengthNode(ValueNode array) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/AtomicReadAndAddNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/AtomicReadAndAddNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -45,7 +45,7 @@
     protected final LocationIdentity locationIdentity;
 
     public static AtomicReadAndAddNode create(ValueNode object, ValueNode offset, ValueNode delta, LocationIdentity locationIdentity) {
-        return USE_GENERATED_NODES ? new AtomicReadAndAddNodeGen(object, offset, delta, locationIdentity) : new AtomicReadAndAddNode(object, offset, delta, locationIdentity);
+        return new AtomicReadAndAddNode(object, offset, delta, locationIdentity);
     }
 
     protected AtomicReadAndAddNode(ValueNode object, ValueNode offset, ValueNode delta, LocationIdentity locationIdentity) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/AtomicReadAndWriteNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/AtomicReadAndWriteNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -47,8 +47,7 @@
     protected final LocationIdentity locationIdentity;
 
     public static AtomicReadAndWriteNode create(ValueNode object, ValueNode offset, ValueNode newValue, Kind valueKind, LocationIdentity locationIdentity) {
-        return USE_GENERATED_NODES ? new AtomicReadAndWriteNodeGen(object, offset, newValue, valueKind, locationIdentity) : new AtomicReadAndWriteNode(object, offset, newValue, valueKind,
-                        locationIdentity);
+        return new AtomicReadAndWriteNode(object, offset, newValue, valueKind, locationIdentity);
     }
 
     protected AtomicReadAndWriteNode(ValueNode object, ValueNode offset, ValueNode newValue, Kind valueKind, LocationIdentity locationIdentity) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/CheckCastDynamicNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/CheckCastDynamicNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -50,7 +50,7 @@
      * @param object the object being cast
      */
     public static CheckCastDynamicNode create(ValueNode hub, ValueNode object, boolean forStoreCheck) {
-        return USE_GENERATED_NODES ? new CheckCastDynamicNodeGen(hub, object, forStoreCheck) : new CheckCastDynamicNode(hub, object, forStoreCheck);
+        return new CheckCastDynamicNode(hub, object, forStoreCheck);
     }
 
     protected CheckCastDynamicNode(ValueNode hub, ValueNode object, boolean forStoreCheck) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/CheckCastNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/CheckCastNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -60,7 +60,7 @@
      * @param object the instruction producing the object
      */
     public static CheckCastNode create(ResolvedJavaType type, ValueNode object, JavaTypeProfile profile, boolean forStoreCheck) {
-        return USE_GENERATED_NODES ? new CheckCastNodeGen(type, object, profile, forStoreCheck) : new CheckCastNode(type, object, profile, forStoreCheck);
+        return new CheckCastNode(type, object, profile, forStoreCheck);
     }
 
     protected CheckCastNode(ResolvedJavaType type, ValueNode object, JavaTypeProfile profile, boolean forStoreCheck) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/CompareAndSwapNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/CompareAndSwapNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -47,8 +47,7 @@
     protected final LocationIdentity locationIdentity;
 
     public static CompareAndSwapNode create(ValueNode object, ValueNode offset, ValueNode expected, ValueNode newValue, Kind valueKind, LocationIdentity locationIdentity) {
-        return USE_GENERATED_NODES ? new CompareAndSwapNodeGen(object, offset, expected, newValue, valueKind, locationIdentity) : new CompareAndSwapNode(object, offset, expected, newValue, valueKind,
-                        locationIdentity);
+        return new CompareAndSwapNode(object, offset, expected, newValue, valueKind, locationIdentity);
     }
 
     protected CompareAndSwapNode(ValueNode object, ValueNode offset, ValueNode expected, ValueNode newValue, Kind valueKind, LocationIdentity locationIdentity) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/DynamicNewArrayNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/DynamicNewArrayNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -43,7 +43,7 @@
     @Input ValueNode elementType;
 
     public static DynamicNewArrayNode create(ValueNode elementType, ValueNode length) {
-        return USE_GENERATED_NODES ? new DynamicNewArrayNodeGen(elementType, length) : new DynamicNewArrayNode(elementType, length);
+        return new DynamicNewArrayNode(elementType, length);
     }
 
     protected DynamicNewArrayNode(ValueNode elementType, ValueNode length) {
@@ -51,7 +51,7 @@
     }
 
     public static DynamicNewArrayNode create(ValueNode elementType, ValueNode length, boolean fillContents) {
-        return USE_GENERATED_NODES ? new DynamicNewArrayNodeGen(elementType, length, fillContents) : new DynamicNewArrayNode(elementType, length, fillContents);
+        return new DynamicNewArrayNode(elementType, length, fillContents);
     }
 
     protected DynamicNewArrayNode(ValueNode elementType, ValueNode length, boolean fillContents) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/DynamicNewInstanceNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/DynamicNewInstanceNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -35,7 +35,7 @@
     @Input ValueNode clazz;
 
     public static DynamicNewInstanceNode create(ValueNode clazz, boolean fillContents) {
-        return USE_GENERATED_NODES ? new DynamicNewInstanceNodeGen(clazz, fillContents) : new DynamicNewInstanceNode(clazz, fillContents);
+        return new DynamicNewInstanceNode(clazz, fillContents);
     }
 
     protected DynamicNewInstanceNode(ValueNode clazz, boolean fillContents) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/ExceptionObjectNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/ExceptionObjectNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -37,7 +37,7 @@
 public class ExceptionObjectNode extends DispatchBeginNode implements Lowerable, MemoryCheckpoint.Single {
 
     public static ExceptionObjectNode create(MetaAccessProvider metaAccess) {
-        return USE_GENERATED_NODES ? new ExceptionObjectNodeGen(metaAccess) : new ExceptionObjectNode(metaAccess);
+        return new ExceptionObjectNode(metaAccess);
     }
 
     protected ExceptionObjectNode(MetaAccessProvider metaAccess) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/InstanceOfDynamicNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/InstanceOfDynamicNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -45,7 +45,7 @@
      * @param object the object being tested
      */
     public static InstanceOfDynamicNode create(ValueNode mirror, ValueNode object) {
-        return USE_GENERATED_NODES ? new InstanceOfDynamicNodeGen(mirror, object) : new InstanceOfDynamicNode(mirror, object);
+        return new InstanceOfDynamicNode(mirror, object);
     }
 
     protected InstanceOfDynamicNode(ValueNode mirror, ValueNode object) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/InstanceOfNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/InstanceOfNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -46,7 +46,7 @@
      * @param object the object being tested by the instanceof
      */
     public static InstanceOfNode create(ResolvedJavaType type, ValueNode object, JavaTypeProfile profile) {
-        return USE_GENERATED_NODES ? new InstanceOfNodeGen(type, object, profile) : new InstanceOfNode(type, object, profile);
+        return new InstanceOfNode(type, object, profile);
     }
 
     protected InstanceOfNode(ResolvedJavaType type, ValueNode object, JavaTypeProfile profile) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/LoadExceptionObjectNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/LoadExceptionObjectNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -31,7 +31,7 @@
 public class LoadExceptionObjectNode extends AbstractStateSplit implements Lowerable {
 
     public static LoadExceptionObjectNode create(Stamp stamp) {
-        return USE_GENERATED_NODES ? new LoadExceptionObjectNodeGen(stamp) : new LoadExceptionObjectNode(stamp);
+        return new LoadExceptionObjectNode(stamp);
     }
 
     protected LoadExceptionObjectNode(Stamp stamp) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/LoadFieldNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/LoadFieldNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -46,7 +46,7 @@
      * @param field the compiler interface field
      */
     public static LoadFieldNode create(ValueNode object, ResolvedJavaField field) {
-        return USE_GENERATED_NODES ? new LoadFieldNodeGen(object, field) : new LoadFieldNode(object, field);
+        return new LoadFieldNode(object, field);
     }
 
     protected LoadFieldNode(ValueNode object, ResolvedJavaField field) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/LoadIndexedNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/LoadIndexedNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -43,7 +43,7 @@
      * @param elementKind the element type
      */
     public static LoadIndexedNode create(ValueNode array, ValueNode index, Kind elementKind) {
-        return USE_GENERATED_NODES ? new LoadIndexedNodeGen(array, index, elementKind) : new LoadIndexedNode(array, index, elementKind);
+        return new LoadIndexedNode(array, index, elementKind);
     }
 
     protected LoadIndexedNode(ValueNode array, ValueNode index, Kind elementKind) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/LoweredAtomicReadAndWriteNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/LoweredAtomicReadAndWriteNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -41,7 +41,7 @@
     @OptionalInput(InputType.State) FrameState stateAfter;
 
     public static LoweredAtomicReadAndWriteNode create(ValueNode object, LocationNode location, ValueNode newValue, BarrierType barrierType) {
-        return USE_GENERATED_NODES ? new LoweredAtomicReadAndWriteNodeGen(object, location, newValue, barrierType) : new LoweredAtomicReadAndWriteNode(object, location, newValue, barrierType);
+        return new LoweredAtomicReadAndWriteNode(object, location, newValue, barrierType);
     }
 
     protected LoweredAtomicReadAndWriteNode(ValueNode object, LocationNode location, ValueNode newValue, BarrierType barrierType) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/LoweredCompareAndSwapNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/LoweredCompareAndSwapNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -62,8 +62,7 @@
     }
 
     public static LoweredCompareAndSwapNode create(ValueNode object, LocationNode location, ValueNode expectedValue, ValueNode newValue, BarrierType barrierType) {
-        return USE_GENERATED_NODES ? new LoweredCompareAndSwapNodeGen(object, location, expectedValue, newValue, barrierType) : new LoweredCompareAndSwapNode(object, location, expectedValue,
-                        newValue, barrierType);
+        return new LoweredCompareAndSwapNode(object, location, expectedValue, newValue, barrierType);
     }
 
     protected LoweredCompareAndSwapNode(ValueNode object, LocationNode location, ValueNode expectedValue, ValueNode newValue, BarrierType barrierType) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/MethodCallTargetNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/MethodCallTargetNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -38,7 +38,7 @@
      * @param arguments
      */
     public static MethodCallTargetNode create(InvokeKind invokeKind, ResolvedJavaMethod targetMethod, ValueNode[] arguments, JavaType returnType) {
-        return USE_GENERATED_NODES ? new MethodCallTargetNodeGen(invokeKind, targetMethod, arguments, returnType) : new MethodCallTargetNode(invokeKind, targetMethod, arguments, returnType);
+        return new MethodCallTargetNode(invokeKind, targetMethod, arguments, returnType);
     }
 
     protected MethodCallTargetNode(InvokeKind invokeKind, ResolvedJavaMethod targetMethod, ValueNode[] arguments, JavaType returnType) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/MonitorEnterNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/MonitorEnterNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -41,7 +41,7 @@
      * @param object the instruction producing the object
      */
     public static MonitorEnterNode create(ValueNode object, MonitorIdNode monitorId) {
-        return USE_GENERATED_NODES ? new MonitorEnterNodeGen(object, monitorId) : new MonitorEnterNode(object, monitorId);
+        return new MonitorEnterNode(object, monitorId);
     }
 
     protected MonitorEnterNode(ValueNode object, MonitorIdNode monitorId) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/MonitorExitNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/MonitorExitNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -45,7 +45,7 @@
      * Creates a new MonitorExitNode.
      */
     public static MonitorExitNode create(ValueNode object, MonitorIdNode monitorId, ValueNode escapedReturnValue) {
-        return USE_GENERATED_NODES ? new MonitorExitNodeGen(object, monitorId, escapedReturnValue) : new MonitorExitNode(object, monitorId, escapedReturnValue);
+        return new MonitorExitNode(object, monitorId, escapedReturnValue);
     }
 
     protected MonitorExitNode(ValueNode object, MonitorIdNode monitorId, ValueNode escapedReturnValue) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/MonitorIdNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/MonitorIdNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -39,7 +39,7 @@
     protected int lockDepth;
 
     public static MonitorIdNode create(int lockDepth) {
-        return USE_GENERATED_NODES ? new MonitorIdNodeGen(lockDepth) : new MonitorIdNode(lockDepth);
+        return new MonitorIdNode(lockDepth);
     }
 
     protected MonitorIdNode(int lockDepth) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/NewArrayNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/NewArrayNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -49,7 +49,7 @@
      * @param fillContents determines whether the array elements should be initialized to zero/null.
      */
     public static NewArrayNode create(ResolvedJavaType elementType, ValueNode length, boolean fillContents) {
-        return USE_GENERATED_NODES ? new NewArrayNodeGen(elementType, length, fillContents) : new NewArrayNode(elementType, length, fillContents);
+        return new NewArrayNode(elementType, length, fillContents);
     }
 
     protected NewArrayNode(ResolvedJavaType elementType, ValueNode length, boolean fillContents) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/NewInstanceNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/NewInstanceNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -48,7 +48,7 @@
      *            zero/null.
      */
     public static NewInstanceNode create(ResolvedJavaType type, boolean fillContents) {
-        return USE_GENERATED_NODES ? new NewInstanceNodeGen(type, fillContents) : new NewInstanceNode(type, fillContents);
+        return new NewInstanceNode(type, fillContents);
     }
 
     protected NewInstanceNode(ResolvedJavaType type, boolean fillContents) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/NewMultiArrayNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/NewMultiArrayNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -57,7 +57,7 @@
      * @param dimensions the node which produce the dimensions for this array
      */
     public static NewMultiArrayNode create(ResolvedJavaType type, ValueNode[] dimensions) {
-        return USE_GENERATED_NODES ? new NewMultiArrayNodeGen(type, dimensions) : new NewMultiArrayNode(type, dimensions);
+        return new NewMultiArrayNode(type, dimensions);
     }
 
     protected NewMultiArrayNode(ResolvedJavaType type, ValueNode[] dimensions) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/RegisterFinalizerNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/RegisterFinalizerNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -42,7 +42,7 @@
     @Input ValueNode value;
 
     public static RegisterFinalizerNode create(ValueNode value) {
-        return USE_GENERATED_NODES ? new RegisterFinalizerNodeGen(value) : new RegisterFinalizerNode(value);
+        return new RegisterFinalizerNode(value);
     }
 
     protected RegisterFinalizerNode(ValueNode value) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/SelfReplacingMethodCallTargetNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/SelfReplacingMethodCallTargetNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -46,8 +46,7 @@
 
     public static SelfReplacingMethodCallTargetNode create(InvokeKind invokeKind, ResolvedJavaMethod targetMethod, ValueNode[] arguments, JavaType returnType,
                     ResolvedJavaMethod replacementTargetMethod, ValueNode[] replacementArguments, JavaType replacementReturnType) {
-        return USE_GENERATED_NODES ? new SelfReplacingMethodCallTargetNodeGen(invokeKind, targetMethod, arguments, returnType, replacementTargetMethod, replacementArguments, replacementReturnType)
-                        : new SelfReplacingMethodCallTargetNode(invokeKind, targetMethod, arguments, returnType, replacementTargetMethod, replacementArguments, replacementReturnType);
+        return new SelfReplacingMethodCallTargetNode(invokeKind, targetMethod, arguments, returnType, replacementTargetMethod, replacementArguments, replacementReturnType);
     }
 
     protected SelfReplacingMethodCallTargetNode(InvokeKind invokeKind, ResolvedJavaMethod targetMethod, ValueNode[] arguments, JavaType returnType, ResolvedJavaMethod replacementTargetMethod,
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/StoreFieldNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/StoreFieldNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -64,7 +64,7 @@
      * @param value the node representing the value to store to the field
      */
     public static StoreFieldNode create(ValueNode object, ResolvedJavaField field, ValueNode value) {
-        return USE_GENERATED_NODES ? new StoreFieldNodeGen(object, field, value) : new StoreFieldNode(object, field, value);
+        return new StoreFieldNode(object, field, value);
     }
 
     protected StoreFieldNode(ValueNode object, ResolvedJavaField field, ValueNode value) {
@@ -73,7 +73,7 @@
     }
 
     public static StoreFieldNode create(ValueNode object, ResolvedJavaField field, ValueNode value, FrameState stateAfter) {
-        return USE_GENERATED_NODES ? new StoreFieldNodeGen(object, field, value, stateAfter) : new StoreFieldNode(object, field, value, stateAfter);
+        return new StoreFieldNode(object, field, value, stateAfter);
     }
 
     protected StoreFieldNode(ValueNode object, ResolvedJavaField field, ValueNode value, FrameState stateAfter) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/StoreIndexedNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/StoreIndexedNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -65,7 +65,7 @@
      * @param value the value to store into the array
      */
     public static StoreIndexedNode create(ValueNode array, ValueNode index, Kind elementKind, ValueNode value) {
-        return USE_GENERATED_NODES ? new StoreIndexedNodeGen(array, index, elementKind, value) : new StoreIndexedNode(array, index, elementKind, value);
+        return new StoreIndexedNode(array, index, elementKind, value);
     }
 
     protected StoreIndexedNode(ValueNode array, ValueNode index, Kind elementKind, ValueNode value) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/TypeSwitchNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/TypeSwitchNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -54,7 +54,7 @@
      * @param keySuccessors the successor index for each key
      */
     public static TypeSwitchNode create(ValueNode value, BeginNode[] successors, ResolvedJavaType[] keys, double[] keyProbabilities, int[] keySuccessors) {
-        return USE_GENERATED_NODES ? new TypeSwitchNodeGen(value, successors, keys, keyProbabilities, keySuccessors) : new TypeSwitchNode(value, successors, keys, keyProbabilities, keySuccessors);
+        return new TypeSwitchNode(value, successors, keys, keyProbabilities, keySuccessors);
     }
 
     protected TypeSwitchNode(ValueNode value, BeginNode[] successors, ResolvedJavaType[] keys, double[] keyProbabilities, int[] keySuccessors) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/virtual/AllocatedObjectNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/virtual/AllocatedObjectNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -39,7 +39,7 @@
     @Input(InputType.Extension) CommitAllocationNode commit;
 
     public static AllocatedObjectNode create(VirtualObjectNode virtualObject) {
-        return USE_GENERATED_NODES ? new AllocatedObjectNodeGen(virtualObject) : new AllocatedObjectNode(virtualObject);
+        return new AllocatedObjectNode(virtualObject);
     }
 
     protected AllocatedObjectNode(VirtualObjectNode virtualObject) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/virtual/CommitAllocationNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/virtual/CommitAllocationNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -41,7 +41,7 @@
     protected ArrayList<Integer> lockIndexes = new ArrayList<>(Arrays.asList(0));
 
     public static CommitAllocationNode create() {
-        return USE_GENERATED_NODES ? new CommitAllocationNodeGen() : new CommitAllocationNode();
+        return new CommitAllocationNode();
     }
 
     protected CommitAllocationNode() {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/virtual/VirtualArrayNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/virtual/VirtualArrayNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -36,7 +36,7 @@
     protected final int length;
 
     public static VirtualArrayNode create(ResolvedJavaType componentType, int length) {
-        return USE_GENERATED_NODES ? new VirtualArrayNodeGen(componentType, length) : new VirtualArrayNode(componentType, length);
+        return new VirtualArrayNode(componentType, length);
     }
 
     protected VirtualArrayNode(ResolvedJavaType componentType, int length) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/virtual/VirtualBoxingNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/virtual/VirtualBoxingNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -33,7 +33,7 @@
     protected final Kind boxingKind;
 
     public static VirtualBoxingNode create(ResolvedJavaType type, Kind boxingKind) {
-        return USE_GENERATED_NODES ? new VirtualBoxingNodeGen(type, boxingKind) : new VirtualBoxingNode(type, boxingKind);
+        return new VirtualBoxingNode(type, boxingKind);
     }
 
     protected VirtualBoxingNode(ResolvedJavaType type, Kind boxingKind) {
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/virtual/VirtualInstanceNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/virtual/VirtualInstanceNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -33,7 +33,7 @@
     protected final ResolvedJavaField[] fields;
 
     public static VirtualInstanceNode create(ResolvedJavaType type, boolean hasIdentity) {
-        return USE_GENERATED_NODES ? new VirtualInstanceNodeGen(type, hasIdentity) : new VirtualInstanceNode(type, hasIdentity);
+        return new VirtualInstanceNode(type, hasIdentity);
     }
 
     protected VirtualInstanceNode(ResolvedJavaType type, boolean hasIdentity) {
@@ -41,7 +41,7 @@
     }
 
     public static VirtualInstanceNode create(ResolvedJavaType type, ResolvedJavaField[] fields, boolean hasIdentity) {
-        return USE_GENERATED_NODES ? new VirtualInstanceNodeGen(type, fields, hasIdentity) : new VirtualInstanceNode(type, fields, hasIdentity);
+        return new VirtualInstanceNode(type, fields, hasIdentity);
     }
 
     protected VirtualInstanceNode(ResolvedJavaType type, ResolvedJavaField[] fields, boolean hasIdentity) {
--- a/graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/LoweringPhase.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/LoweringPhase.java	Wed Oct 15 15:35:33 2014 +0200
@@ -52,7 +52,7 @@
         @Input(InputType.Guard) GuardingNode guard;
 
         public static DummyGuardHandle create(GuardingNode guard) {
-            return USE_GENERATED_NODES ? new LoweringPhase_DummyGuardHandleGen(guard) : new DummyGuardHandle(guard);
+            return new DummyGuardHandle(guard);
         }
 
         protected DummyGuardHandle(GuardingNode guard) {
--- a/graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/TailDuplicationPhase.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/TailDuplicationPhase.java	Wed Oct 15 15:35:33 2014 +0200
@@ -63,7 +63,7 @@
     @NodeInfo
     static class DummyAnchorNode extends FixedWithNextNode implements GuardingNode {
         public static DummyAnchorNode create() {
-            return USE_GENERATED_NODES ? new TailDuplicationPhase_DummyAnchorNodeGen() : new DummyAnchorNode();
+            return new DummyAnchorNode();
         }
 
         protected DummyAnchorNode() {
--- a/graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/UseTrappingNullChecksPhase.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/UseTrappingNullChecksPhase.java	Wed Oct 15 15:35:33 2014 +0200
@@ -172,7 +172,7 @@
          * then remove the Begin from the graph.
          */
         nonTrappingContinuation.replaceAtUsages(InputType.Guard, trappingNullCheck);
-        if (nonTrappingContinuation.getNodeClass().is(BeginNode.class)) {
+        if (nonTrappingContinuation.getClass() == BeginNode.class) {
             FixedNode next = nonTrappingContinuation.next();
             nonTrappingContinuation.clearSuccessors();
             trappingNullCheck.setNext(next);
--- a/graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/inlining/walker/ComputeInliningRelevance.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/inlining/walker/ComputeInliningRelevance.java	Wed Oct 15 15:35:33 2014 +0200
@@ -116,7 +116,7 @@
                         parent = loops.get(null);
                         break;
                     } else {
-                        assert current.getNodeClass().is(MergeNode.class) : current;
+                        assert current.getClass() == MergeNode.class : current;
                         // follow any path upwards - it doesn't matter which one
                         current = ((MergeNode) current).forwardEndAt(0);
                     }
--- a/graal/com.oracle.graal.phases/src/com/oracle/graal/phases/verify/VerifyNoNodeClassLiteralIdentityTests.java	Wed Oct 15 13:11:42 2014 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,105 +0,0 @@
-/*
- * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
- * or visit www.oracle.com if you need additional information or have any
- * questions.
- */
-package com.oracle.graal.phases.verify;
-
-import java.util.*;
-
-import com.oracle.graal.api.meta.*;
-import com.oracle.graal.graph.*;
-import com.oracle.graal.graph.iterators.*;
-import com.oracle.graal.nodeinfo.*;
-import com.oracle.graal.nodes.*;
-import com.oracle.graal.nodes.calc.*;
-import com.oracle.graal.nodes.util.*;
-import com.oracle.graal.phases.*;
-import com.oracle.graal.phases.tiers.*;
-
-/**
- * Since only {@linkplain GeneratedNode generated} {@link Node} types can be instantiated (which is
- * checked by an assertion in {@link Node#Node()}), any identity test of a node's
- * {@linkplain Object#getClass() class} against a class literal of a non-generated node types will
- * always return false. Instead, the {@link NodeClass#is(Class)} method should be used. For example,
- * instead of:
- *
- * <pre>
- *     if (operation.getClass() == IntegerAddNode.class) { ... }
- * </pre>
- *
- * this should be used:
- *
- * <pre>
- *     if (operation.getNodeClass().is(IntegerAddNode.class)) { ... }
- * </pre>
- *
- * This phase verifies there are no identity tests against class literals for non-generated Node
- * types.
- */
-public class VerifyNoNodeClassLiteralIdentityTests extends VerifyPhase<PhaseContext> {
-
-    @Override
-    protected boolean verify(StructuredGraph graph, PhaseContext context) {
-        Map<String, String> errors = new HashMap<>();
-
-        MetaAccessProvider metaAccess = context.getMetaAccess();
-        ResolvedJavaType nodeClassType = metaAccess.lookupJavaType(Node.class);
-
-        for (ConstantNode c : ConstantNode.getConstantNodes(graph)) {
-            ResolvedJavaType nodeType = context.getConstantReflection().asJavaType(c.asConstant());
-            if (nodeType != null && nodeClassType.isAssignableFrom(nodeType)) {
-                NodeIterable<Node> usages = c.usages();
-                for (Node n : usages) {
-                    if (!(n instanceof ObjectEqualsNode)) {
-                        continue;
-                    }
-                    String loc = getLocation(n, graph);
-                    errors.put(nodeType.toJavaName(false), loc);
-                }
-            }
-        }
-        if (errors.isEmpty()) {
-            return true;
-        }
-        Formatter f = new Formatter();
-        boolean first = true;
-        for (Map.Entry<String, String> e : errors.entrySet()) {
-            if (!first) {
-                f.format("%n");
-            } else {
-                first = false;
-            }
-            f.format("Found illegal use of Node class literal %s near:%n    %s", e.getKey(), e.getValue());
-        }
-        throw new VerificationError(f.toString());
-    }
-
-    private static String getLocation(Node node, StructuredGraph graph) {
-        String loc = GraphUtil.approxSourceLocation(node);
-        StackTraceElement ste = graph.method().asStackTraceElement(0);
-        if (loc == null) {
-            loc = ste.toString();
-        } else {
-            loc = ste.getClassName() + "." + ste.getMethodName() + "(" + loc + ")";
-        }
-        return loc;
-    }
-}
--- a/graal/com.oracle.graal.printer/src/com/oracle/graal/printer/IdealGraphPrinter.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.printer/src/com/oracle/graal/printer/IdealGraphPrinter.java	Wed Oct 15 15:35:33 2014 +0200
@@ -173,9 +173,9 @@
                     printProperty(bit, "true");
                 }
             }
-            if (node.getNodeClass().is(BeginNode.class)) {
+            if (node.getClass() == BeginNode.class) {
                 printProperty("shortName", "B");
-            } else if (node.getNodeClass().is(EndNode.class)) {
+            } else if (node.getClass() == EndNode.class) {
                 printProperty("shortName", "E");
             }
             if (node.predecessor() != null) {
--- a/graal/com.oracle.graal.replacements.amd64/src/com/oracle/graal/replacements/amd64/AMD64FloatConvertNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.replacements.amd64/src/com/oracle/graal/replacements/amd64/AMD64FloatConvertNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -42,7 +42,7 @@
     protected final FloatConvert op;
 
     public static AMD64FloatConvertNode create(FloatConvert op, ValueNode value) {
-        return USE_GENERATED_NODES ? new AMD64FloatConvertNodeGen(op, value) : new AMD64FloatConvertNode(op, value);
+        return new AMD64FloatConvertNode(op, value);
     }
 
     protected AMD64FloatConvertNode(FloatConvert op, ValueNode value) {
--- a/graal/com.oracle.graal.replacements.hsail/src/com/oracle/graal/replacements/hsail/HSAILMathIntrinsicsNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.replacements.hsail/src/com/oracle/graal/replacements/hsail/HSAILMathIntrinsicsNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -76,7 +76,7 @@
      * @param op the math operation
      */
     public static HSAILMathIntrinsicsNode create(ValueNode x, HSAILArithmetic op) {
-        return USE_GENERATED_NODES ? new HSAILMathIntrinsicsNodeGen(x, op) : new HSAILMathIntrinsicsNode(x, op);
+        return new HSAILMathIntrinsicsNode(x, op);
     }
 
     protected HSAILMathIntrinsicsNode(ValueNode x, HSAILArithmetic op) {
--- a/graal/com.oracle.graal.replacements.test/src/com/oracle/graal/replacements/test/EdgesTest.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.replacements.test/src/com/oracle/graal/replacements/test/EdgesTest.java	Wed Oct 15 15:35:33 2014 +0200
@@ -48,7 +48,7 @@
         @Input FloatingNode i2;
 
         public static TestNode create() {
-            return USE_GENERATED_NODES ? new EdgesTest_TestNodeGen() : new TestNode();
+            return new TestNode();
         }
 
         protected TestNode() {
--- a/graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/SnippetTemplate.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/SnippetTemplate.java	Wed Oct 15 15:35:33 2014 +0200
@@ -387,7 +387,7 @@
         protected final Varargs varargs;
 
         public static VarargsPlaceholderNode create(Varargs varargs, MetaAccessProvider metaAccess) {
-            return USE_GENERATED_NODES ? new SnippetTemplate_VarargsPlaceholderNodeGen(varargs, metaAccess) : new VarargsPlaceholderNode(varargs, metaAccess);
+            return new VarargsPlaceholderNode(varargs, metaAccess);
         }
 
         protected VarargsPlaceholderNode(Varargs varargs, MetaAccessProvider metaAccess) {
--- a/graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/ArrayEqualsNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/ArrayEqualsNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -51,7 +51,7 @@
     @Input ValueNode length;
 
     public static ArrayEqualsNode create(ValueNode array1, ValueNode array2, ValueNode length) {
-        return USE_GENERATED_NODES ? new ArrayEqualsNodeGen(array1, array2, length) : new ArrayEqualsNode(array1, array2, length);
+        return new ArrayEqualsNode(array1, array2, length);
     }
 
     protected ArrayEqualsNode(ValueNode array1, ValueNode array2, ValueNode length) {
--- a/graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/AssertionNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/AssertionNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -44,7 +44,7 @@
     protected final String message;
 
     public static AssertionNode create(boolean compileTimeAssertion, ValueNode value, String message) {
-        return USE_GENERATED_NODES ? new AssertionNodeGen(compileTimeAssertion, value, message) : new AssertionNode(compileTimeAssertion, value, message);
+        return new AssertionNode(compileTimeAssertion, value, message);
     }
 
     protected AssertionNode(boolean compileTimeAssertion, ValueNode value, String message) {
--- a/graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/BasicArrayCopyNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/BasicArrayCopyNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -34,7 +34,7 @@
 public class BasicArrayCopyNode extends MacroStateSplitNode implements Virtualizable {
 
     public static BasicArrayCopyNode create(Invoke invoke) {
-        return USE_GENERATED_NODES ? new BasicArrayCopyNodeGen(invoke) : new BasicArrayCopyNode(invoke);
+        return new BasicArrayCopyNode(invoke);
     }
 
     protected BasicArrayCopyNode(Invoke invoke) {
--- a/graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/BasicObjectCloneNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/BasicObjectCloneNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -38,7 +38,7 @@
 public class BasicObjectCloneNode extends MacroStateSplitNode implements VirtualizableAllocation, ArrayLengthProvider {
 
     public static BasicObjectCloneNode create(Invoke invoke) {
-        return USE_GENERATED_NODES ? new BasicObjectCloneNodeGen(invoke) : new BasicObjectCloneNode(invoke);
+        return new BasicObjectCloneNode(invoke);
     }
 
     protected BasicObjectCloneNode(Invoke invoke) {
--- a/graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/BitCountNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/BitCountNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -35,7 +35,7 @@
 public class BitCountNode extends UnaryNode implements LIRLowerable {
 
     public static BitCountNode create(ValueNode value) {
-        return USE_GENERATED_NODES ? new BitCountNodeGen(value) : new BitCountNode(value);
+        return new BitCountNode(value);
     }
 
     protected BitCountNode(ValueNode value) {
--- a/graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/BitScanForwardNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/BitScanForwardNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -39,7 +39,7 @@
 public class BitScanForwardNode extends UnaryNode implements LIRLowerable {
 
     public static BitScanForwardNode create(ValueNode value) {
-        return USE_GENERATED_NODES ? new BitScanForwardNodeGen(value) : new BitScanForwardNode(value);
+        return new BitScanForwardNode(value);
     }
 
     protected BitScanForwardNode(ValueNode value) {
--- a/graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/BitScanReverseNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/BitScanReverseNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -39,7 +39,7 @@
 public class BitScanReverseNode extends UnaryNode implements LIRLowerable {
 
     public static BitScanReverseNode create(ValueNode value) {
-        return USE_GENERATED_NODES ? new BitScanReverseNodeGen(value) : new BitScanReverseNode(value);
+        return new BitScanReverseNode(value);
     }
 
     protected BitScanReverseNode(ValueNode value) {
--- a/graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/DeferredPiNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/DeferredPiNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -49,7 +49,7 @@
     }
 
     public static DeferredPiNode create(ValueNode type, ValueNode object) {
-        return USE_GENERATED_NODES ? new DeferredPiNodeGen(type, object) : new DeferredPiNode(type, object);
+        return new DeferredPiNode(type, object);
     }
 
     protected DeferredPiNode(ValueNode type, ValueNode object) {
--- a/graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/DirectObjectStoreNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/DirectObjectStoreNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -44,8 +44,7 @@
     protected final LocationIdentity locationIdentity;
 
     public static DirectObjectStoreNode create(ValueNode object, int displacement, ValueNode offset, ValueNode value, LocationIdentity locationIdentity) {
-        return USE_GENERATED_NODES ? new DirectObjectStoreNodeGen(object, displacement, offset, value, locationIdentity) : new DirectObjectStoreNode(object, displacement, offset, value,
-                        locationIdentity);
+        return new DirectObjectStoreNode(object, displacement, offset, value, locationIdentity);
     }
 
     protected DirectObjectStoreNode(ValueNode object, int displacement, ValueNode offset, ValueNode value, LocationIdentity locationIdentity) {
--- a/graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/DirectReadNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/DirectReadNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -42,7 +42,7 @@
     protected final Kind readKind;
 
     public static DirectReadNode create(ValueNode address, Kind readKind) {
-        return USE_GENERATED_NODES ? new DirectReadNodeGen(address, readKind) : new DirectReadNode(address, readKind);
+        return new DirectReadNode(address, readKind);
     }
 
     protected DirectReadNode(ValueNode address, Kind readKind) {
--- a/graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/DirectStoreNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/DirectStoreNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -43,7 +43,7 @@
     protected final Kind kind;
 
     public static DirectStoreNode create(ValueNode address, ValueNode value, Kind kind) {
-        return USE_GENERATED_NODES ? new DirectStoreNodeGen(address, value, kind) : new DirectStoreNode(address, value, kind);
+        return new DirectStoreNode(address, value, kind);
     }
 
     protected DirectStoreNode(ValueNode address, ValueNode value, Kind kind) {
--- a/graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/ExplodeLoopNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/ExplodeLoopNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -40,7 +40,7 @@
 public class ExplodeLoopNode extends FixedWithNextNode {
 
     public static ExplodeLoopNode create() {
-        return USE_GENERATED_NODES ? new ExplodeLoopNodeGen() : new ExplodeLoopNode();
+        return new ExplodeLoopNode();
     }
 
     protected ExplodeLoopNode() {
--- a/graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/LoadSnippetVarargParameterNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/LoadSnippetVarargParameterNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -40,7 +40,7 @@
     @Input NodeInputList<ParameterNode> parameters;
 
     public static LoadSnippetVarargParameterNode create(ParameterNode[] locals, ValueNode index, Stamp stamp) {
-        return USE_GENERATED_NODES ? new LoadSnippetVarargParameterNodeGen(locals, index, stamp) : new LoadSnippetVarargParameterNode(locals, index, stamp);
+        return new LoadSnippetVarargParameterNode(locals, index, stamp);
     }
 
     protected LoadSnippetVarargParameterNode(ParameterNode[] locals, ValueNode index, Stamp stamp) {
--- a/graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/MacroNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/MacroNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -67,7 +67,7 @@
     protected final InvokeKind invokeKind;
 
     public static MacroNode create(Invoke invoke) {
-        return USE_GENERATED_NODES ? new MacroNodeGen(invoke) : new MacroNode(invoke);
+        return new MacroNode(invoke);
     }
 
     protected MacroNode(Invoke invoke) {
--- a/graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/MacroStateSplitNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/MacroStateSplitNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -40,7 +40,7 @@
     @OptionalInput(InputType.State) protected FrameState stateAfter;
 
     public static MacroStateSplitNode create(Invoke invoke) {
-        return USE_GENERATED_NODES ? new MacroStateSplitNodeGen(invoke) : new MacroStateSplitNode(invoke);
+        return new MacroStateSplitNode(invoke);
     }
 
     protected MacroStateSplitNode(Invoke invoke) {
--- a/graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/MathIntrinsicNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/MathIntrinsicNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -52,7 +52,7 @@
     }
 
     public static MathIntrinsicNode create(ValueNode value, Operation op) {
-        return USE_GENERATED_NODES ? new MathIntrinsicNodeGen(value, op) : new MathIntrinsicNode(value, op);
+        return new MathIntrinsicNode(value, op);
     }
 
     protected MathIntrinsicNode(ValueNode value, Operation op) {
--- a/graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/MemoryAnchorNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/MemoryAnchorNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -34,7 +34,7 @@
 public class MemoryAnchorNode extends FixedWithNextNode implements LIRLowerable, MemoryNode, Canonicalizable {
 
     public static MemoryAnchorNode create() {
-        return USE_GENERATED_NODES ? new MemoryAnchorNodeGen() : new MemoryAnchorNode();
+        return new MemoryAnchorNode();
     }
 
     protected MemoryAnchorNode() {
--- a/graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/ReadRegisterNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/ReadRegisterNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -54,7 +54,7 @@
     protected final boolean incoming;
 
     public static ReadRegisterNode create(Register register, Kind kind, boolean directUse, boolean incoming) {
-        return USE_GENERATED_NODES ? new ReadRegisterNodeGen(register, kind, directUse, incoming) : new ReadRegisterNode(register, kind, directUse, incoming);
+        return new ReadRegisterNode(register, kind, directUse, incoming);
     }
 
     protected ReadRegisterNode(Register register, Kind kind, boolean directUse, boolean incoming) {
@@ -70,7 +70,7 @@
      * definition.
      */
     public static ReadRegisterNode create(Register register, boolean directUse, boolean incoming) {
-        return USE_GENERATED_NODES ? new ReadRegisterNodeGen(register, directUse, incoming) : new ReadRegisterNode(register, directUse, incoming);
+        return new ReadRegisterNode(register, directUse, incoming);
     }
 
     protected ReadRegisterNode(Register register, boolean directUse, boolean incoming) {
--- a/graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/ReverseBytesNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/ReverseBytesNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -35,7 +35,7 @@
 public class ReverseBytesNode extends UnaryNode implements LIRLowerable {
 
     public static ReverseBytesNode create(ValueNode value) {
-        return USE_GENERATED_NODES ? new ReverseBytesNodeGen(value) : new ReverseBytesNode(value);
+        return new ReverseBytesNode(value);
     }
 
     protected ReverseBytesNode(ValueNode value) {
--- a/graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/WriteRegisterNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/WriteRegisterNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -46,7 +46,7 @@
     @Input ValueNode value;
 
     public static WriteRegisterNode create(Register register, ValueNode value) {
-        return USE_GENERATED_NODES ? new WriteRegisterNodeGen(register, value) : new WriteRegisterNode(register, value);
+        return new WriteRegisterNode(register, value);
     }
 
     protected WriteRegisterNode(Register register, ValueNode value) {
--- a/graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/nodes/AssumptionNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/nodes/AssumptionNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -38,7 +38,7 @@
 public class AssumptionNode extends MacroNode implements com.oracle.graal.graph.IterableNodeType, Simplifiable {
 
     public static AssumptionNode create(Invoke invoke) {
-        return USE_GENERATED_NODES ? new AssumptionNodeGen(invoke) : new AssumptionNode(invoke);
+        return new AssumptionNode(invoke);
     }
 
     protected AssumptionNode(Invoke invoke) {
--- a/graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/nodes/BailoutNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/nodes/BailoutNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -34,7 +34,7 @@
 public class BailoutNode extends MacroNode implements Canonicalizable {
 
     public static BailoutNode create(Invoke invoke) {
-        return USE_GENERATED_NODES ? new BailoutNodeGen(invoke) : new BailoutNode(invoke);
+        return new BailoutNode(invoke);
     }
 
     protected BailoutNode(Invoke invoke) {
--- a/graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/nodes/IsCompilationConstantNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/nodes/IsCompilationConstantNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -34,7 +34,7 @@
 public class IsCompilationConstantNode extends MacroStateSplitNode implements Canonicalizable {
 
     public static IsCompilationConstantNode create(Invoke invoke) {
-        return USE_GENERATED_NODES ? new IsCompilationConstantNodeGen(invoke) : new IsCompilationConstantNode(invoke);
+        return new IsCompilationConstantNode(invoke);
     }
 
     protected IsCompilationConstantNode(Invoke invoke) {
--- a/graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/nodes/LoadIndexedFinalNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/nodes/LoadIndexedFinalNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -46,7 +46,7 @@
      * @param elementKind the element type
      */
     public static LoadIndexedFinalNode create(ValueNode array, ValueNode index, Kind elementKind) {
-        return USE_GENERATED_NODES ? new LoadIndexedFinalNodeGen(array, index, elementKind) : new LoadIndexedFinalNode(array, index, elementKind);
+        return new LoadIndexedFinalNode(array, index, elementKind);
     }
 
     protected LoadIndexedFinalNode(ValueNode array, ValueNode index, Kind elementKind) {
--- a/graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/nodes/arithmetic/IntegerAddExactNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/nodes/arithmetic/IntegerAddExactNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -39,7 +39,7 @@
 public class IntegerAddExactNode extends AddNode implements IntegerExactArithmeticNode {
 
     public static IntegerAddExactNode create(ValueNode x, ValueNode y) {
-        return USE_GENERATED_NODES ? new IntegerAddExactNodeGen(x, y) : new IntegerAddExactNode(x, y);
+        return new IntegerAddExactNode(x, y);
     }
 
     protected IntegerAddExactNode(ValueNode x, ValueNode y) {
--- a/graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/nodes/arithmetic/IntegerAddExactSplitNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/nodes/arithmetic/IntegerAddExactSplitNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -32,7 +32,7 @@
 public class IntegerAddExactSplitNode extends IntegerExactArithmeticSplitNode {
 
     public static IntegerAddExactSplitNode create(Stamp stamp, ValueNode x, ValueNode y, BeginNode next, BeginNode overflowSuccessor) {
-        return USE_GENERATED_NODES ? new IntegerAddExactSplitNodeGen(stamp, x, y, next, overflowSuccessor) : new IntegerAddExactSplitNode(stamp, x, y, next, overflowSuccessor);
+        return new IntegerAddExactSplitNode(stamp, x, y, next, overflowSuccessor);
     }
 
     protected IntegerAddExactSplitNode(Stamp stamp, ValueNode x, ValueNode y, BeginNode next, BeginNode overflowSuccessor) {
--- a/graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/nodes/arithmetic/IntegerMulExactNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/nodes/arithmetic/IntegerMulExactNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -39,7 +39,7 @@
 public class IntegerMulExactNode extends MulNode implements IntegerExactArithmeticNode {
 
     public static IntegerMulExactNode create(ValueNode x, ValueNode y) {
-        return USE_GENERATED_NODES ? new IntegerMulExactNodeGen(x, y) : new IntegerMulExactNode(x, y);
+        return new IntegerMulExactNode(x, y);
     }
 
     protected IntegerMulExactNode(ValueNode x, ValueNode y) {
--- a/graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/nodes/arithmetic/IntegerMulExactSplitNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/nodes/arithmetic/IntegerMulExactSplitNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -32,7 +32,7 @@
 public class IntegerMulExactSplitNode extends IntegerExactArithmeticSplitNode {
 
     public static IntegerMulExactSplitNode create(Stamp stamp, ValueNode x, ValueNode y, BeginNode next, BeginNode overflowSuccessor) {
-        return USE_GENERATED_NODES ? new IntegerMulExactSplitNodeGen(stamp, x, y, next, overflowSuccessor) : new IntegerMulExactSplitNode(stamp, x, y, next, overflowSuccessor);
+        return new IntegerMulExactSplitNode(stamp, x, y, next, overflowSuccessor);
     }
 
     protected IntegerMulExactSplitNode(Stamp stamp, ValueNode x, ValueNode y, BeginNode next, BeginNode overflowSuccessor) {
--- a/graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/nodes/arithmetic/IntegerMulHighNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/nodes/arithmetic/IntegerMulHighNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -38,7 +38,7 @@
 public class IntegerMulHighNode extends BinaryNode implements ArithmeticLIRLowerable {
 
     public static IntegerMulHighNode create(ValueNode x, ValueNode y) {
-        return USE_GENERATED_NODES ? new IntegerMulHighNodeGen(x, y) : new IntegerMulHighNode(x, y);
+        return new IntegerMulHighNode(x, y);
     }
 
     protected IntegerMulHighNode(ValueNode x, ValueNode y) {
@@ -46,7 +46,7 @@
     }
 
     public static IntegerMulHighNode create(IntegerStamp stamp, ValueNode x, ValueNode y) {
-        return USE_GENERATED_NODES ? new IntegerMulHighNodeGen(stamp, x, y) : new IntegerMulHighNode(stamp, x, y);
+        return new IntegerMulHighNode(stamp, x, y);
     }
 
     protected IntegerMulHighNode(IntegerStamp stamp, ValueNode x, ValueNode y) {
--- a/graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/nodes/arithmetic/IntegerSubExactNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/nodes/arithmetic/IntegerSubExactNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -40,7 +40,7 @@
 public class IntegerSubExactNode extends SubNode implements IntegerExactArithmeticNode {
 
     public static IntegerSubExactNode create(ValueNode x, ValueNode y) {
-        return USE_GENERATED_NODES ? new IntegerSubExactNodeGen(x, y) : new IntegerSubExactNode(x, y);
+        return new IntegerSubExactNode(x, y);
     }
 
     protected IntegerSubExactNode(ValueNode x, ValueNode y) {
--- a/graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/nodes/arithmetic/IntegerSubExactSplitNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/nodes/arithmetic/IntegerSubExactSplitNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -32,7 +32,7 @@
 public class IntegerSubExactSplitNode extends IntegerExactArithmeticSplitNode {
 
     public static IntegerSubExactSplitNode create(Stamp stamp, ValueNode x, ValueNode y, BeginNode next, BeginNode overflowSuccessor) {
-        return USE_GENERATED_NODES ? new IntegerSubExactSplitNodeGen(stamp, x, y, next, overflowSuccessor) : new IntegerSubExactSplitNode(stamp, x, y, next, overflowSuccessor);
+        return new IntegerSubExactSplitNode(stamp, x, y, next, overflowSuccessor);
     }
 
     protected IntegerSubExactSplitNode(Stamp stamp, ValueNode x, ValueNode y, BeginNode next, BeginNode overflowSuccessor) {
--- a/graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/nodes/arithmetic/UnsignedMulHighNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/nodes/arithmetic/UnsignedMulHighNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -38,7 +38,7 @@
 public class UnsignedMulHighNode extends BinaryNode implements ArithmeticLIRLowerable {
 
     public static UnsignedMulHighNode create(ValueNode x, ValueNode y) {
-        return USE_GENERATED_NODES ? new UnsignedMulHighNodeGen(x, y) : new UnsignedMulHighNode(x, y);
+        return new UnsignedMulHighNode(x, y);
     }
 
     protected UnsignedMulHighNode(ValueNode x, ValueNode y) {
@@ -46,7 +46,7 @@
     }
 
     public static UnsignedMulHighNode create(IntegerStamp stamp, ValueNode x, ValueNode y) {
-        return USE_GENERATED_NODES ? new UnsignedMulHighNodeGen(stamp, x, y) : new UnsignedMulHighNode(stamp, x, y);
+        return new UnsignedMulHighNode(stamp, x, y);
     }
 
     protected UnsignedMulHighNode(IntegerStamp stamp, ValueNode x, ValueNode y) {
--- a/graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/nodes/asserts/CompilationConstantNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/nodes/asserts/CompilationConstantNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -31,7 +31,7 @@
 public class CompilationConstantNode extends NeverPartOfCompilationNode implements Canonicalizable {
 
     public static CompilationConstantNode create(Invoke invoke) {
-        return USE_GENERATED_NODES ? new CompilationConstantNodeGen(invoke) : new CompilationConstantNode(invoke);
+        return new CompilationConstantNode(invoke);
     }
 
     protected CompilationConstantNode(Invoke invoke) {
--- a/graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/nodes/asserts/NeverInlineMacroNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/nodes/asserts/NeverInlineMacroNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -31,7 +31,7 @@
 public class NeverInlineMacroNode extends MacroStateSplitNode implements com.oracle.graal.graph.IterableNodeType {
 
     public static NeverInlineMacroNode create(Invoke invoke) {
-        return USE_GENERATED_NODES ? new NeverInlineMacroNodeGen(invoke) : new NeverInlineMacroNode(invoke);
+        return new NeverInlineMacroNode(invoke);
     }
 
     protected NeverInlineMacroNode(Invoke invoke) {
--- a/graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/nodes/asserts/NeverPartOfCompilationNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/nodes/asserts/NeverPartOfCompilationNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -33,7 +33,7 @@
     protected final String message;
 
     public static NeverPartOfCompilationNode create(Invoke invoke) {
-        return USE_GENERATED_NODES ? new NeverPartOfCompilationNodeGen(invoke) : new NeverPartOfCompilationNode(invoke);
+        return new NeverPartOfCompilationNode(invoke);
     }
 
     protected NeverPartOfCompilationNode(Invoke invoke) {
@@ -41,7 +41,7 @@
     }
 
     public static NeverPartOfCompilationNode create(Invoke invoke, String message) {
-        return USE_GENERATED_NODES ? new NeverPartOfCompilationNodeGen(invoke, message) : new NeverPartOfCompilationNode(invoke, message);
+        return new NeverPartOfCompilationNode(invoke, message);
     }
 
     protected NeverPartOfCompilationNode(Invoke invoke, String message) {
--- a/graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/nodes/frame/ForceMaterializeNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/nodes/frame/ForceMaterializeNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -33,7 +33,7 @@
     @Input ValueNode object;
 
     public static ForceMaterializeNode create(ValueNode object) {
-        return USE_GENERATED_NODES ? new ForceMaterializeNodeGen(object) : new ForceMaterializeNode(object);
+        return new ForceMaterializeNode(object);
     }
 
     protected ForceMaterializeNode(ValueNode object) {
--- a/graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/nodes/frame/MaterializeFrameNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/nodes/frame/MaterializeFrameNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -36,7 +36,7 @@
     @Input ValueNode frame;
 
     public static MaterializeFrameNode create(ValueNode frame) {
-        return USE_GENERATED_NODES ? new MaterializeFrameNodeGen(frame) : new MaterializeFrameNode(frame);
+        return new MaterializeFrameNode(frame);
     }
 
     protected MaterializeFrameNode(ValueNode frame) {
--- a/graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/nodes/frame/NewFrameNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/nodes/frame/NewFrameNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -52,7 +52,7 @@
     @Input ValueNode arguments;
 
     public static NewFrameNode create(Stamp stamp, ValueNode descriptor, ValueNode arguments) {
-        return USE_GENERATED_NODES ? new NewFrameNodeGen(stamp, descriptor, arguments) : new NewFrameNode(stamp, descriptor, arguments);
+        return new NewFrameNode(stamp, descriptor, arguments);
     }
 
     protected NewFrameNode(Stamp stamp, ValueNode descriptor, ValueNode arguments) {
@@ -62,7 +62,7 @@
     }
 
     public static NewFrameNode create(ResolvedJavaType frameType, ValueNode descriptor, ValueNode arguments) {
-        return USE_GENERATED_NODES ? new NewFrameNodeGen(frameType, descriptor, arguments) : new NewFrameNode(frameType, descriptor, arguments);
+        return new NewFrameNode(frameType, descriptor, arguments);
     }
 
     protected NewFrameNode(ResolvedJavaType frameType, ValueNode descriptor, ValueNode arguments) {
@@ -109,7 +109,7 @@
         protected boolean allowMaterialization;
 
         public static VirtualOnlyInstanceNode create(ResolvedJavaType type, ResolvedJavaField[] fields) {
-            return USE_GENERATED_NODES ? new NewFrameNode_VirtualOnlyInstanceNodeGen(type, fields) : new VirtualOnlyInstanceNode(type, fields);
+            return new VirtualOnlyInstanceNode(type, fields);
         }
 
         protected VirtualOnlyInstanceNode(ResolvedJavaType type, ResolvedJavaField[] fields) {
--- a/graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/nodes/typesystem/CustomizedUnsafeLoadFinalNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/nodes/typesystem/CustomizedUnsafeLoadFinalNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -49,8 +49,7 @@
     protected final Kind accessKind;
 
     public static CustomizedUnsafeLoadFinalNode create(ValueNode object, ValueNode offset, ValueNode condition, ValueNode location, Kind accessKind) {
-        return USE_GENERATED_NODES ? new CustomizedUnsafeLoadFinalNodeGen(object, offset, condition, location, accessKind) : new CustomizedUnsafeLoadFinalNode(object, offset, condition, location,
-                        accessKind);
+        return new CustomizedUnsafeLoadFinalNode(object, offset, condition, location, accessKind);
     }
 
     protected CustomizedUnsafeLoadFinalNode(ValueNode object, ValueNode offset, ValueNode condition, ValueNode location, Kind accessKind) {
--- a/graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/nodes/typesystem/CustomizedUnsafeLoadMacroNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/nodes/typesystem/CustomizedUnsafeLoadMacroNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -47,7 +47,7 @@
     private static final int LOCATION_ARGUMENT_INDEX = 3;
 
     public static CustomizedUnsafeLoadMacroNode create(Invoke invoke) {
-        return USE_GENERATED_NODES ? new CustomizedUnsafeLoadMacroNodeGen(invoke) : new CustomizedUnsafeLoadMacroNode(invoke);
+        return new CustomizedUnsafeLoadMacroNode(invoke);
     }
 
     protected CustomizedUnsafeLoadMacroNode(Invoke invoke) {
--- a/graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/nodes/typesystem/CustomizedUnsafeStoreMacroNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/nodes/typesystem/CustomizedUnsafeStoreMacroNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -44,7 +44,7 @@
     private static final int LOCATION_ARGUMENT_INDEX = 3;
 
     public static CustomizedUnsafeStoreMacroNode create(Invoke invoke) {
-        return USE_GENERATED_NODES ? new CustomizedUnsafeStoreMacroNodeGen(invoke) : new CustomizedUnsafeStoreMacroNode(invoke);
+        return new CustomizedUnsafeStoreMacroNode(invoke);
     }
 
     protected CustomizedUnsafeStoreMacroNode(Invoke invoke) {
--- a/graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/nodes/typesystem/UnsafeTypeCastMacroNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/nodes/typesystem/UnsafeTypeCastMacroNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -46,7 +46,7 @@
     private static final int ARGUMENT_COUNT = 4;
 
     public static UnsafeTypeCastMacroNode create(Invoke invoke) {
-        return USE_GENERATED_NODES ? new UnsafeTypeCastMacroNodeGen(invoke) : new UnsafeTypeCastMacroNode(invoke);
+        return new UnsafeTypeCastMacroNode(invoke);
     }
 
     protected UnsafeTypeCastMacroNode(Invoke invoke) {
--- a/graal/com.oracle.graal.virtual/src/com/oracle/graal/virtual/nodes/MaterializedObjectState.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.virtual/src/com/oracle/graal/virtual/nodes/MaterializedObjectState.java	Wed Oct 15 15:35:33 2014 +0200
@@ -40,7 +40,7 @@
     }
 
     public static MaterializedObjectState create(VirtualObjectNode object, ValueNode materializedValue) {
-        return USE_GENERATED_NODES ? new MaterializedObjectStateGen(object, materializedValue) : new MaterializedObjectState(object, materializedValue);
+        return new MaterializedObjectState(object, materializedValue);
     }
 
     protected MaterializedObjectState(VirtualObjectNode object, ValueNode materializedValue) {
--- a/graal/com.oracle.graal.virtual/src/com/oracle/graal/virtual/nodes/VirtualObjectState.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.virtual/src/com/oracle/graal/virtual/nodes/VirtualObjectState.java	Wed Oct 15 15:35:33 2014 +0200
@@ -42,7 +42,7 @@
     }
 
     public static VirtualObjectState create(VirtualObjectNode object, ValueNode[] values) {
-        return USE_GENERATED_NODES ? new VirtualObjectStateGen(object, values) : new VirtualObjectState(object, values);
+        return new VirtualObjectState(object, values);
     }
 
     protected VirtualObjectState(VirtualObjectNode object, ValueNode[] values) {
@@ -52,7 +52,7 @@
     }
 
     public static VirtualObjectState create(VirtualObjectNode object, List<ValueNode> values) {
-        return USE_GENERATED_NODES ? new VirtualObjectStateGen(object, values) : new VirtualObjectState(object, values);
+        return new VirtualObjectState(object, values);
     }
 
     protected VirtualObjectState(VirtualObjectNode object, List<ValueNode> values) {
--- a/graal/com.oracle.graal.word/src/com/oracle/graal/word/nodes/SnippetLocationNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.word/src/com/oracle/graal/word/nodes/SnippetLocationNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -60,8 +60,7 @@
     }
 
     public static SnippetLocationNode create(@InjectedNodeParameter SnippetReflectionProvider snippetReflection, ValueNode locationIdentity, ValueNode kind, ValueNode displacement) {
-        return USE_GENERATED_NODES ? new SnippetLocationNodeGen(snippetReflection, locationIdentity, kind, displacement) : new SnippetLocationNode(snippetReflection, locationIdentity, kind,
-                        displacement);
+        return new SnippetLocationNode(snippetReflection, locationIdentity, kind, displacement);
     }
 
     protected SnippetLocationNode(@InjectedNodeParameter SnippetReflectionProvider snippetReflection, ValueNode locationIdentity, ValueNode kind, ValueNode displacement) {
@@ -70,8 +69,7 @@
 
     public static SnippetLocationNode create(@InjectedNodeParameter SnippetReflectionProvider snippetReflection, ValueNode locationIdentity, ValueNode kind, ValueNode displacement, ValueNode index,
                     ValueNode indexScaling) {
-        return USE_GENERATED_NODES ? new SnippetLocationNodeGen(snippetReflection, locationIdentity, kind, displacement, index, indexScaling) : new SnippetLocationNode(snippetReflection,
-                        locationIdentity, kind, displacement, index, indexScaling);
+        return new SnippetLocationNode(snippetReflection, locationIdentity, kind, displacement, index, indexScaling);
     }
 
     protected SnippetLocationNode(SnippetReflectionProvider snippetReflection, ValueNode locationIdentity, ValueNode kind, ValueNode displacement, ValueNode index, ValueNode indexScaling) {
--- a/graal/com.oracle.graal.word/src/com/oracle/graal/word/nodes/WordCastNode.java	Wed Oct 15 13:11:42 2014 +0200
+++ b/graal/com.oracle.graal.word/src/com/oracle/graal/word/nodes/WordCastNode.java	Wed Oct 15 15:35:33 2014 +0200
@@ -51,7 +51,7 @@
     }
 
     public static WordCastNode create(Stamp stamp, ValueNode input) {
-        return USE_GENERATED_NODES ? new WordCastNodeGen(stamp, input) : new WordCastNode(stamp, input);
+        return new WordCastNode(stamp, input);
     }
 
     protected WordCastNode(Stamp stamp, ValueNode input) {