log graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/IfNode.java @ 23394:964f28c04d7b default tip

age author description
Tue, 02 Feb 2016 12:24:43 -0800 Tom Rodriguez ConditionalNode optimizations should be performed on suitable If diamonds
Tue, 19 Jan 2016 12:20:24 +0100 Manuel Rigger remove redundant modifiers.
Fri, 01 Jan 2016 18:50:05 +0100 Thomas Wuerthinger Move proxy handling from AbstractBeginNode to LoopExitNode.
Wed, 16 Dec 2015 18:47:48 -0800 Tom Rodriguez Avoid notifying about nodes that are about to be deleted
Tue, 17 Nov 2015 12:37:43 -0800 Tom Rodriguez splitIfAtPhi for non-constant compare canonicalizations
Wed, 14 Oct 2015 20:35:37 +0200 Andreas Woess fix array type in IfNode.constantValues
Thu, 08 Oct 2015 17:41:33 -0700 Tom Rodriguez Update jvmci and truffle import: Rename jdk.internal.jvmci to jdk.vm.ci
Wed, 16 Sep 2015 21:17:42 +0200 Doug Simon updated imports to be explicit and added checkstyle rule to forbid * imports
Tue, 08 Sep 2015 19:57:39 +0200 Roland Schatz Update jvmci import: Refactoring: Rename Kind to JavaKind.
Sun, 02 Aug 2015 22:55:21 -0700 Tom Rodriguez ValueNode.getKind is really getStackKind
Wed, 22 Jul 2015 23:27:39 -0700 Tom Rodriguez Move most of jdk.internal.jvmci.debug back into com.oracle.graal.debug
Mon, 22 Jun 2015 12:12:53 -0700 twisti Rename com.oracle.jvmci to jdk.internal.jvmci
Wed, 27 May 2015 00:36:16 +0200 Doug Simon renamed com.oracle.graal.api[meta|code] modules to com.oracle.jvmci.[meta|code] (JBS:GRAAL-53)
Tue, 26 May 2015 23:21:15 +0200 Doug Simon renamed com.oracle.graal.[debug|options|hotspotvmconfig]* modules to com.oracle.jvmci.[debug|options|hotspotvmconfig]* modules (JBS:GRAAL-53)
Mon, 25 May 2015 23:30:34 +0200 Doug Simon moved GraalInternalError to com.oracle.jvmci.common and renamed it to JVMCIError (JBS:GRAAL-53)
Fri, 17 Apr 2015 14:12:32 -0700 Tom Rodriguez Fixed unsigned compare construction when merging distinct values
Sat, 11 Apr 2015 00:16:29 -0700 Christian Wimmer Improve speed of Graph partial evaluation
Wed, 08 Apr 2015 22:07:50 -0700 Christian Wimmer Support node canonicalization when not all usages of a node are known yet
Mon, 30 Mar 2015 17:56:43 +0200 Thomas Wuerthinger Fix for IfNode below than canonicalization.
Mon, 23 Mar 2015 12:20:49 -0700 Tom Rodriguez Transfer proxies when splitting IfNode
Mon, 09 Mar 2015 14:14:02 +0100 Thomas Wuerthinger Convert API for tryFold from Boolean return value to TriState return value.
Sun, 08 Mar 2015 21:58:34 +0100 Thomas Wuerthinger Initial version of new dominator-based conditional elimination phase.
Mon, 02 Mar 2015 12:26:29 +0100 Thomas Wuerthinger Make earliest possible schedule iterative.
Tue, 24 Feb 2015 15:10:11 +0100 Thomas Wuerthinger Small improvement to mod/div peephole optimization.
Sun, 22 Feb 2015 23:44:37 +0100 Thomas Wuerthinger Utilities Node#acceptInputs and Node#acceptSuccessors.
Fri, 20 Feb 2015 22:22:55 +0100 Thomas Wuerthinger Create TYPE fields for LIRInstruction and CompositeValue. Renaming NodeClass#get to NodeClass#create.
Thu, 19 Feb 2015 21:06:37 +0100 Thomas Wuerthinger Change forward ends to type EndNode and not AbstractEndNode.
Wed, 18 Feb 2015 15:10:57 +0100 Thomas Wuerthinger Correctly kill the condition when cannonicalizing IfNode.
Tue, 17 Feb 2015 18:05:39 +0100 Gilles Duboscq Experiment with a different way of swapping instanceof profiles in IfNode.prepareForSwap
Mon, 16 Feb 2015 17:47:43 +0100 Thomas Wuerthinger Add generic parameter to NodeClass. Change Graph#getNodes(Class) to Graph#getNodes(NodeClass).
Mon, 16 Feb 2015 15:43:03 +0100 Thomas Wuerthinger Create static final NodeClass field named TYPE in Node subclasses.
Thu, 12 Feb 2015 10:51:16 -0800 Tom Rodriguez Simplify IfNode at Phi to help instanceof code generation
Wed, 28 Jan 2015 01:11:25 +0100 Thomas Wuerthinger Fix class comparison statements for BeginNode and MergeNode to reflect new class hierarchy.
Wed, 28 Jan 2015 01:06:39 +0100 Thomas Wuerthinger Make AbstractMergeNode abstract and introduce concrete subclass MergeNode.
Wed, 28 Jan 2015 01:04:20 +0100 Thomas Wuerthinger Rename MergeNode to AbstractMergeNode.
Wed, 28 Jan 2015 01:01:54 +0100 Thomas Wuerthinger Make AbstractBeginNode an abstract class and create concrete subclass BeginNode.
Wed, 28 Jan 2015 00:50:31 +0100 Thomas Wuerthinger Rename BeginNode => AbstractBeginNode.
Tue, 27 Jan 2015 13:17:53 +0100 Thomas Wuerthinger Use Node#getUsageCount wherever possible.
Fri, 23 Jan 2015 11:52:36 +0100 Thomas Wuerthinger Add utility Node#hasNoUsages.
Mon, 12 Jan 2015 20:39:04 +0100 Doug Simon removed Node factory methods
Sun, 21 Dec 2014 13:56:31 +1000 Doug Simon use deterministic iteration-order data structures
Mon, 24 Nov 2014 12:13:31 +0100 Roland Schatz Use asConstant() instead of asJavaConstant() where possible.
Thu, 30 Oct 2014 13:03:33 +0100 Roland Schatz Introduce new Constant interface for use in high-level graph.
Thu, 30 Oct 2014 12:21:07 +0100 Roland Schatz Rename Constant to JavaConstant.
Wed, 15 Oct 2014 15:35:33 +0200 Doug Simon removed Node generation (GRAAL-857)
Wed, 08 Oct 2014 10:49:53 +0200 Lukas Stadler correct IfNode probabilities in If-Deopt situations
Thu, 02 Oct 2014 14:22:16 +0200 Doug Simon only generate data fields equality method for leaf ValueNumberable nodes; no longer generate Node.isLeafNode()
Wed, 01 Oct 2014 07:39:47 +0200 Doug Simon moved Node valueNumber and valueEquals logic (optionally) to generated nodes
Thu, 25 Sep 2014 10:27:17 +0200 Doug Simon added Edges class to consolidate code operating on set of input or successor edges and to better isolate magic used to access edges
Wed, 27 Aug 2014 18:58:15 +0200 Doug Simon replaced 'node.getClass() == <literal>.getGenClass()' idiom with new 'NodeClass.is(Class<? extends Node.class> cls)' mechanism
Mon, 25 Aug 2014 13:45:12 +0200 Doug Simon made use of generated Node classes predicated on value of graal.useGeneratedNodes system property (default is false)
Fri, 22 Aug 2014 15:56:51 +0200 Doug Simon switched to using new NodeFieldIterator and NodeFieldIterable for traversing Node inputs and successors
Mon, 18 Aug 2014 14:04:21 +0200 Doug Simon added factory method to all Node classes; replaced Node classes instantiation with calls to factory methods; replaced identity tests on Node classes with ' == <node class>.getGenClass()' idiom
Fri, 15 Aug 2014 11:34:38 +0200 Doug Simon moved NodeInfo and friends into separate com.oracle.graal.nodeinfo project so that annotation processor can be applied to the base Node class
Wed, 13 Aug 2014 18:25:45 +0200 Doug Simon added @NodeInfo annotations to all Node classes
Mon, 28 Jul 2014 15:53:07 +0200 Lukas Stadler rename IntegerBelowThanNode to IntegerBelowNode
Thu, 17 Jul 2014 14:27:57 +0200 Lukas Stadler remove ControlSplitNode.setProbability
Wed, 16 Jul 2014 09:41:19 -0700 Tom Rodriguez consider equivalent phi inputs when simplfiying empty ifs
Thu, 10 Jul 2014 14:04:01 +0200 Lukas Stadler new GraphUtil.unlinkFixedNode utility method
Thu, 10 Jul 2014 13:42:17 +0200 Lukas Stadler fix for IfNode.pushNodesThroughIf (push more than one node)
Wed, 25 Jun 2014 16:55:01 +0200 Lukas Stadler rename getInput() to getValue() in LogicNegationNode
Wed, 25 Jun 2014 11:20:53 +0200 Lukas Stadler rename of x() to getX(), y() to getY() and object() to getValue()
Mon, 23 Jun 2014 14:13:03 +0200 Lukas Stadler ConditionalNode is not a BinaryNode
Fri, 13 Jun 2014 18:18:57 +0200 Lukas Stadler handle deleted nodes in IfNode.simplify
Wed, 28 May 2014 17:47:23 +0200 Lukas Stadler IfNode refactorings
Sat, 24 May 2014 00:38:23 +0200 Thomas Wuerthinger Merge.
Wed, 21 May 2014 11:45:50 +0200 Thomas Wuerthinger Merge.
Tue, 13 May 2014 12:15:32 +0200 Thomas Wuerthinger Fix exponential explosion when propagating zero probabilities.
Tue, 13 May 2014 03:57:06 +0200 Thomas Wuerthinger Stop propagating probability above loop header.
Tue, 13 May 2014 02:31:20 +0200 Thomas Wuerthinger Propagate 0.0 probabilities when simplifying IfNode.
Fri, 23 May 2014 13:21:49 +0200 Gilles Duboscq Simplify removeOrMaterializeIf and make it handle merges with more predecessors.
Wed, 14 May 2014 21:14:13 -0700 Tom Rodriguez fix action comparison when comparing DeoptimizeNodes
Wed, 14 May 2014 01:25:21 -0700 Tom Rodriguez fix unsigned compare, expand test
Tue, 13 May 2014 20:20:29 -0700 Tom Rodriguez convert signed range tests into an unsigned compare
Mon, 28 Apr 2014 12:11:20 -0700 Tom Rodriguez delete memory peephole machinery
Tue, 22 Apr 2014 11:51:34 +0200 Josef Eisl Move Stamps to graal.compiler.common.
Thu, 17 Apr 2014 11:32:14 +0200 Lukas Stadler push similar nodes through IfNodes
Thu, 17 Apr 2014 18:12:12 +0200 Josef Eisl Move Condition to graal.compiler.common.
Thu, 17 Apr 2014 17:28:20 +0200 Josef Eisl Move LIRTypeTool and Stamp to graal.compiler.common.
Mon, 14 Apr 2014 15:21:27 +0200 Gilles Duboscq Remove AbstractBeginNode, move the framestate from AbstractBeginNode to BeginStateSplitNode.
Mon, 07 Apr 2014 11:32:04 +0200 Lukas Stadler input types
Fri, 04 Apr 2014 18:32:32 +0200 Lukas Stadler separate subclasses for value and guard phis and proxies
Wed, 02 Apr 2014 17:53:06 +0200 Josef Eisl NodeLIRBuilderTool: fix typo in interface name.
Mon, 31 Mar 2014 10:03:32 +0200 Josef Eisl Rename NodeLIRGenerator (and related classes and interfaces) to NodeLIRBuilder.
Wed, 26 Mar 2014 20:44:11 +0100 Josef Eisl Merge.
Wed, 26 Mar 2014 11:49:07 +0100 Josef Eisl Split LIRGenerator and fix AMD64 backend.
Tue, 25 Mar 2014 15:37:02 +0100 Josef Eisl Rename LIRGeneratorTool to NodeBasedLIRGeneratorTool.
Thu, 20 Mar 2014 15:57:03 -0700 Tom Rodriguez initial support for memory arithmetic on x86
Thu, 20 Mar 2014 11:48:39 +0100 Josef Eisl Rename ValueNode kind() to getKind().
Fri, 14 Mar 2014 08:28:03 +0100 Lukas Stadler fix for IfNode reordering
Fri, 17 Jan 2014 09:38:39 +0100 Lukas Stadler additional simplifications for IfNode and MergeNode
Fri, 27 Dec 2013 15:12:12 -0800 Christian Wimmer The runtime cannot always compare two constants
Thu, 17 Oct 2013 18:18:05 +0200 Gilles Duboscq Add canonicalizations for more diamond shapes to Conditional if one of the input of the Phi is also a conditional with constants
Mon, 14 Oct 2013 23:30:05 +0200 Thomas Wuerthinger Improve convert deoptimize to guard phase to recognize FixedGuardNode following MergeNode.
Fri, 11 Oct 2013 12:19:09 +0200 Doug Simon refactored constantEquals(), lookupArrayLength() and readUnsafeConstant() out of MetaAccessProvider into ConstantReflectionProvider (GRAAL-511)
Thu, 10 Oct 2013 16:14:55 +0200 Doug Simon made CodeCacheProvider independent of MetaAccessProvider (GRAAL-511)
Tue, 01 Oct 2013 20:38:25 +0200 Doug Simon moved Canonicalizable and Simplifiable to the com.oracle.graal.graph project (GRAAL-506)
Sun, 15 Sep 2013 22:33:09 +0200 Thomas Wuerthinger Disallow add for global value numberable node types. Introduce addWithoutUnique.
Sun, 25 Aug 2013 16:23:52 +0200 Gilles Duboscq Create new IfNode in IfNode simplification
Sat, 24 Aug 2013 14:38:11 +0200 Roland Schatz Introduce LogicNegationNode and remove Negatable interface.
Tue, 16 Jul 2013 15:07:09 +0200 Lukas Stadler fix IfNode simplification that tries to remove a previously deleted LoopExitNode
Tue, 11 Jun 2013 13:10:25 +0200 Christian Haeubl Readded the pass that fixes DeoptimizeNode probabilities.
Tue, 07 May 2013 12:03:21 -0700 Christian Wimmer Introduce a graph() method that returns a StructuredGraph, to make many explicit casts unnecessary
Wed, 01 May 2013 13:33:07 -0700 Christian Wimmer Allow rounding errors in probabilities
Wed, 01 May 2013 17:05:14 +0200 Thomas Wuerthinger Fixes for probability calculation.
Wed, 01 May 2013 16:30:52 +0200 Thomas Wuerthinger Ensure probabilities are never negative. Add additional assertions.
Tue, 30 Apr 2013 19:50:12 +0200 Gilles Duboscq Merge
Tue, 30 Apr 2013 19:44:02 +0200 Gilles Duboscq Add the condition that was negated in Negatable.negate
Mon, 29 Apr 2013 00:25:09 +0200 Thomas Wuerthinger Rename BeginNode => AbstractBeginNode and make abstract. Introduce concrete subclass BeginNode.
Sun, 28 Apr 2013 23:59:14 +0200 Thomas Wuerthinger Rename EndNode => AbstractEndNode and make abstract class. Introduce concrete EndNode subclass.
Sun, 28 Apr 2013 22:58:54 +0200 Thomas Wuerthinger Correctly adjust probabilities when swapping if nodes.
Sun, 28 Apr 2013 18:42:42 +0200 Thomas Wuerthinger Fix left-over debug output.
Sun, 28 Apr 2013 08:46:28 +0200 Thomas Wuerthinger Implement alternative fix for removeIntermediateMaterialization.
Sun, 28 Apr 2013 07:50:32 +0200 Thomas Wuerthinger Disable removeIntermediateMaterialization.
Sun, 28 Apr 2013 07:06:31 +0200 Thomas Wuerthinger Fix for removeIntermediateMaterialization.
Sun, 28 Apr 2013 01:01:00 +0200 Thomas Wuerthinger Fix null pointer exception in if reordering.
Sat, 27 Apr 2013 20:17:10 +0200 Thomas Wuerthinger Do not swap if nodes when there is a loop exit node between them. Do not swap if one of the compares has unorderedIsTrue set.
Sat, 27 Apr 2013 18:06:32 +0200 Thomas Wuerthinger Fix capping.
Sat, 27 Apr 2013 18:02:20 +0200 Thomas Wuerthinger Cap probability to 1.0.
Sat, 27 Apr 2013 17:22:54 +0200 Thomas Wuerthinger Added comment.