Fri, 08 Jul 2011 13:41:27 +0200 |
Lukas Stadler |
added FrameModifier extension, added deopt example
|
Thu, 07 Jul 2011 20:46:20 +0200 |
Thomas Wuerthinger |
New optimization phase example.
|
Thu, 07 Jul 2011 19:58:00 +0200 |
Thomas Wuerthinger |
Merge.
|
Thu, 07 Jul 2011 19:57:45 +0200 |
Thomas Wuerthinger |
Added intrinsification example (safe add).
|
Thu, 07 Jul 2011 19:43:17 +0200 |
Josef Haider |
The benchmark tool should now print zero values to the csv file, if a benchmark fails
|
Thu, 07 Jul 2011 18:31:25 +0200 |
Josef Haider |
Merge
|
Thu, 07 Jul 2011 18:19:24 +0200 |
Josef Haider |
Added a small python script for automated benchmarks.
|
Thu, 07 Jul 2011 18:15:25 +0200 |
Thomas Wuerthinger |
Merge.
|
Thu, 07 Jul 2011 18:14:50 +0200 |
Thomas Wuerthinger |
Added example project. Added InliningGuide example extension.
|
Thu, 07 Jul 2011 16:11:09 +0200 |
Thomas Wuerthinger |
Removed forgotten README file.
|
Thu, 07 Jul 2011 16:07:11 +0200 |
Thomas Wuerthinger |
Drafted inlining guide interface. Added new compiler flag -G:Extend
|
Thu, 07 Jul 2011 16:38:14 +0200 |
Lukas Stadler |
canonicalize "if (x) return bool_constant; else return !bool_constant;" to MaterializeNode
|
Thu, 07 Jul 2011 14:33:57 +0200 |
Lukas Stadler |
NodeArray uses modCount to assert in Iterators, variableInputs is now protected so that each Node class using it needs to export it explicitly (and thus give it a name)
|
Wed, 06 Jul 2011 21:48:33 +0200 |
Thomas Wuerthinger |
Clean up.
|
Wed, 06 Jul 2011 21:47:47 +0200 |
Thomas Wuerthinger |
Merge.
|
Wed, 06 Jul 2011 21:43:07 +0200 |
Thomas Wuerthinger |
Fixed anchor creation such that exception handler blocks are recognized.
|
Wed, 06 Jul 2011 21:40:39 +0200 |
Thomas Wuerthinger |
decoupled code emitting order from linear scan order. align loops. reorder short loops. fixed linear scan order.
|
Wed, 06 Jul 2011 18:59:55 +0200 |
Thomas Wuerthinger |
Align loop headers (for immediate speed-up).
|
Wed, 06 Jul 2011 18:50:11 +0200 |
Thomas Wuerthinger |
Added intrinsification of Object arraycopy.
|
Wed, 06 Jul 2011 17:53:05 +0200 |
Thomas Wuerthinger |
Generating safepoints.
|
Wed, 06 Jul 2011 17:50:32 +0200 |
Lukas Stadler |
pulled common code from NewInstance and NewArray into EscapeOp
|
Wed, 06 Jul 2011 17:15:43 +0200 |
Thomas Wuerthinger |
Disabled assert about null state at block entry.
|
Wed, 06 Jul 2011 17:07:31 +0200 |
Thomas Wuerthinger |
fixed warnings.
|
Wed, 06 Jul 2011 17:02:38 +0200 |
Thomas Wuerthinger |
Merge.
|
Wed, 06 Jul 2011 17:02:15 +0200 |
Thomas Wuerthinger |
Fixed rethrow exception frame state (again.. and this time added some useful assertions).
|
Wed, 06 Jul 2011 16:43:19 +0200 |
Thomas Wuerthinger |
Added GVN to GuardNode and Compare.
|
Wed, 06 Jul 2011 16:51:01 +0200 |
Lukas Stadler |
merge
|
Wed, 06 Jul 2011 16:31:18 +0200 |
Lukas Stadler |
added PhiType.(Value, Memory, Virtual), removed Phi.isDead, phis are now deleted immediately when they become invalid
|
Wed, 06 Jul 2011 16:01:29 +0200 |
Lukas Stadler |
new escape analysis mechanism: don't use blocks during iteration, VirtualObjectFields merged with phis
|
Mon, 04 Jul 2011 18:04:44 +0200 |
Lukas Stadler |
merge
|
Mon, 04 Jul 2011 18:04:12 +0200 |
Lukas Stadler |
canonicalization for CheckCast, InstanceOf, IsNonNull, IsType and NotInstanceOf, checkstyle fix
|
Wed, 06 Jul 2011 16:15:15 +0200 |
Thomas Wuerthinger |
Lowering of array accesses.
|
Wed, 06 Jul 2011 13:28:51 +0200 |
Thomas Wuerthinger |
Removed ExceptionDispatch node (replaced with normal InstanceOf).
|
Wed, 06 Jul 2011 13:18:34 +0200 |
Thomas Wuerthinger |
Added NegateBooleanNode, removed negate() method from BooleanNode, removed NotInstanceOf.
|
Wed, 06 Jul 2011 11:59:26 +0200 |
Thomas Wuerthinger |
simplified compute linear scan order.
|
Wed, 06 Jul 2011 11:52:31 +0200 |
Thomas Wuerthinger |
Added calculation of loop depth and loop index to scheduler.
|
Tue, 05 Jul 2011 19:49:35 +0200 |
Thomas Wuerthinger |
Introduced optimistic schedule and hid it behind a flag.
|
Tue, 05 Jul 2011 19:06:40 +0200 |
Thomas Wuerthinger |
Fixed issue that caused deopt on every exception of a top-level method that would have needed to be unwinded.
|
Tue, 05 Jul 2011 18:55:22 +0200 |
Thomas Wuerthinger |
Fixed an issue in the HotSpot code for rethrowing an exception at deopt (wrong values on the expression stack caused a crash when GC and deopt happened at the same time).
|
Tue, 05 Jul 2011 16:41:53 +0200 |
Thomas Wuerthinger |
Fixed the frame states in the array copy intrinsification.
|
Tue, 05 Jul 2011 14:12:00 +0200 |
Thomas Wuerthinger |
Merge.
|
Tue, 05 Jul 2011 14:09:44 +0200 |
Thomas Wuerthinger |
Fixed critical issue in exception frame state merging (prevented jython from running correctly). Added intrinsification for float/double to int/long conversions and for currentThread.
|
Tue, 05 Jul 2011 11:42:28 +0200 |
Gilles Duboscq |
Merge
|
Tue, 05 Jul 2011 11:39:40 +0200 |
Gilles Duboscq |
Delete framestate along with statesplit nodes if the framestate is not re-used somewhere
|
Mon, 04 Jul 2011 18:56:22 +0200 |
Thomas Wuerthinger |
Merge.
|
Mon, 04 Jul 2011 18:54:54 +0200 |
Thomas Wuerthinger |
Intrinsify arraycopy of primitive types to vector instructions.
|
Mon, 04 Jul 2011 12:21:42 +0200 |
Thomas Wuerthinger |
Added intrinsification of getClass()
|
Mon, 04 Jul 2011 12:03:31 +0200 |
Thomas Wuerthinger |
removed reference to GraalCompilation from CompilerGraph (i.e. make it more lightweight)
|
Mon, 04 Jul 2011 17:44:07 +0200 |
Peter Hofer |
IdealGraphVisualizer: use newer, more modern icons from the NetBeans project
|
Mon, 04 Jul 2011 16:08:03 +0200 |
Peter Hofer |
IdealGraphVisualizer: Apply graph difference also to control flow graphs and use bold edges for new connections and dashed edges for removed connections
|
Mon, 04 Jul 2011 13:59:41 +0200 |
Peter Hofer |
IdealGraphVisualizer: add optional import in build.xml for environment-specific build extensions/modifications
|
Mon, 04 Jul 2011 12:29:28 +0200 |
Peter Hofer |
IdealGraphVisualizer: when packaging a build, drop memory presets (-Xms, -Xmx) from default_options and let the executing VM choose reasonable defaults
|
Mon, 04 Jul 2011 12:05:23 +0200 |
Peter Hofer |
IdealGraphVisualizer: Drop the "Window" suffix of each top component's label and enter meaningful mouse-over descriptions.
|
Mon, 04 Jul 2011 12:03:50 +0200 |
Peter Hofer |
IdealGraphVisualizer: in the control flow graph (block view), allow nodes with longer text to be larger than the default size and center their text horizontally
|
Mon, 04 Jul 2011 11:28:08 +0200 |
Peter Hofer |
IdealGraphVisualizer: use a LinkedHashSet instead of an ArrayList to store the edges of an InputGraph in order to slightly increase performance, particularly when parsing an input file
|
Mon, 04 Jul 2011 10:56:19 +0200 |
Peter Hofer |
IdealGraphVisualizer: Disable assertions for RequestProcessor to prevent annoying messages in case of multiple SceneAnimator update tasks in the default RequestProcessor.
|
Sun, 03 Jul 2011 11:05:05 +0200 |
Gilles Duboscq |
Fix bug in peeling in updating the parent loops after peeling. Added verify to If
|
Sat, 02 Jul 2011 02:46:04 +0200 |
Thomas Wuerthinger |
Various fixes around escape analysis.
|
Fri, 01 Jul 2011 21:07:29 +0200 |
Thomas Wuerthinger |
Fixed an issue in the C++ code of the escape analysis (wrongly commented out code).
|
Fri, 01 Jul 2011 20:11:51 +0200 |
Thomas Wuerthinger |
Adjusted inlining decision (depend on max node size instead of max codeSize).
|
Fri, 01 Jul 2011 19:39:29 +0200 |
Thomas Wuerthinger |
Merge.
|
Fri, 01 Jul 2011 19:39:14 +0200 |
Thomas Wuerthinger |
Canonicalize RegisterFinalizer nodes.
|
Fri, 01 Jul 2011 18:28:26 +0200 |
Thomas Wuerthinger |
Merge fixes.
|
Fri, 01 Jul 2011 18:24:04 +0200 |
Thomas Wuerthinger |
Merge.
|
Fri, 01 Jul 2011 18:15:05 +0200 |
Thomas Wuerthinger |
checkcast fixes
|
Thu, 30 Jun 2011 18:53:02 +0200 |
Thomas Wuerthinger |
Do not move deopt point above ExceptionObject!
|
Thu, 30 Jun 2011 18:45:44 +0200 |
Thomas Wuerthinger |
fixed outdated asserts.
|
Thu, 30 Jun 2011 18:39:13 +0200 |
Thomas Wuerthinger |
must not gvn checkcast instructions.
|
Thu, 30 Jun 2011 18:03:43 +0200 |
Thomas Wuerthinger |
optimized genInstanceOf XIR snippet.
|
Thu, 30 Jun 2011 18:00:22 +0200 |
Thomas Wuerthinger |
Removed unnecessary jump.
|
Thu, 30 Jun 2011 17:53:23 +0200 |
Thomas Wuerthinger |
Introduced NotInstanceOf node. Optimize instanceof statements (i.e. do not materialize).
|
Thu, 30 Jun 2011 17:03:10 +0200 |
Thomas Wuerthinger |
Introduced Materialize node. InstanceOf no longer produces a value.
|
Thu, 30 Jun 2011 16:49:13 +0200 |
Thomas Wuerthinger |
Changed genInstanceOf such that it does not longer automatically materialize the result.
|
Thu, 30 Jun 2011 16:07:18 +0200 |
Thomas Wuerthinger |
Changed the way the compare instructions are generated in the LIRGenerator.
|
Wed, 29 Jun 2011 16:19:51 +0200 |
Thomas Wuerthinger |
Removed explicit reference to RiType object in TypeCheck node.
|
Wed, 29 Jun 2011 15:45:20 +0200 |
Thomas Wuerthinger |
Added canonicalization of boolean nodes and if conditions
|
Tue, 28 Jun 2011 16:59:56 +0200 |
Thomas Wuerthinger |
Replace If node with guard in case of deopt.
|
Tue, 28 Jun 2011 15:54:46 +0200 |
Thomas Wuerthinger |
Corrected valueEqual method of IsNonNull.
|
Tue, 28 Jun 2011 15:48:05 +0200 |
Thomas Wuerthinger |
Draft GVN.
|
Tue, 28 Jun 2011 15:28:30 +0200 |
Thomas Wuerthinger |
Added immediate gvn for LocationNode instances.
|
Fri, 01 Jul 2011 19:00:37 +0200 |
Lukas Stadler |
escape analysis debug info fixes
|
Fri, 01 Jul 2011 18:37:54 +0200 |
Gilles Duboscq |
Fixed various peeling bugs (can use nodes which are not Placeholders as loop exits)
|
Fri, 01 Jul 2011 12:57:10 +0200 |
Gilles Duboscq |
Merge
|
Fri, 01 Jul 2011 12:56:52 +0200 |
Gilles Duboscq |
Make NewInstance a FixedWithNext to avoid it from floating too much (could be hoisted out of loops for exemple). Fixes for loop peeling
|
Thu, 30 Jun 2011 10:07:49 +0200 |
Gilles Duboscq |
Merge
|
Thu, 30 Jun 2011 10:07:35 +0200 |
Gilles Duboscq |
Fix some coloring bug, fix to keep more Placeholders at loop exits, fix for loop nodes computation
|
Wed, 29 Jun 2011 12:23:13 +0200 |
Gilles Duboscq |
Fix loop peeling exit values fixup
|
Thu, 30 Jun 2011 17:02:04 +0200 |
Peter Hofer |
IdealGraphVisualizer: Fix selection of node for gotoFigure()
|
Thu, 30 Jun 2011 16:50:53 +0200 |
Peter Hofer |
IdealGraphVisualizer: ensure that input graphs are scheduled and all nodes are assigned to blocks before computing their difference. This fixes exceptions when creating a diff against a graph without blocks that was never viewed before (for instance, graphs from the server compiler).
|
Thu, 30 Jun 2011 13:07:09 +0200 |
Peter Hofer |
IdealGraphVisualizer: fix "Show Filter Window" menu entry
|
Thu, 30 Jun 2011 12:17:27 +0200 |
Peter Hofer |
IdealGraphVisualizer: Work around a problem with JSplitPane and the NetBeans editor: setDividerLocation() doesn't work when the split pane has not been layouted and painted yet. JSplitPane then initially uses a tiny width for the left editor component, which causes the editor to calculate invalid offsets and constantly throw exceptions, particularly on mouse events. Thus, defer adding the two components and setting the divider's location.
|
Wed, 29 Jun 2011 20:11:13 +0200 |
Lukas Stadler |
small inlining simplification
|
Wed, 29 Jun 2011 19:53:00 +0200 |
Lukas Stadler |
merge
|
Wed, 29 Jun 2011 19:52:51 +0200 |
Lukas Stadler |
fix for unresolved exception bug, exactType and declaredType logic for inlining, more on escape analysis
|
Wed, 29 Jun 2011 18:53:09 +0200 |
Peter Hofer |
IdealGraphVisualizer: Consider two nodes to be equal when node.vertex is null for both of them in nodeProcessingDownComparator and nodeProcessingUpComparator. This should fix transitivity issues when sorting.
|
Wed, 29 Jun 2011 18:27:14 +0200 |
Peter Hofer |
IdealGraphVisualizer: Rename predecessors to "Nodes Above" and successors to "Nodes Below" and actions "Expand Predecessors" and "Expand Successors" to "Expand Above" and "Expand Below" to avoid ambiguity with the Graal concept of successors and predecessors
|
Wed, 29 Jun 2011 17:33:35 +0200 |
Peter Hofer |
IdealGraphVisualizer: Enhance text view so it can display arbitrary properties from the active graph's group. For diff graphs, it shows the textual difference between the property strings using the NetBeans Diff module.
|
Wed, 29 Jun 2011 13:26:25 +0200 |
Peter Hofer |
IdealGraphVisualizer: remove files from C1XVisualizer text editor component that were erroneously checked in again
|
Wed, 29 Jun 2011 12:22:46 +0200 |
Peter Hofer |
IdealGraphVisualizer: add another filter that hides slots with no connections
|
Tue, 28 Jun 2011 19:54:51 +0200 |
Lukas Stadler |
fixes to escape analysis: propagation of VirtualObject
|
Tue, 28 Jun 2011 19:22:42 +0200 |
Lukas Stadler |
merge
|
Tue, 28 Jun 2011 19:14:28 +0200 |
Lukas Stadler |
more escape analysis work: debug info
|
Mon, 27 Jun 2011 17:15:12 +0200 |
Lukas Stadler |
merge
|
Mon, 27 Jun 2011 17:13:33 +0200 |
Lukas Stadler |
more escape analysis changes
|
Wed, 22 Jun 2011 11:56:15 +0200 |
Lukas Stadler |
merge
|
Wed, 22 Jun 2011 11:55:42 +0200 |
Lukas Stadler |
InliningPhase can take a hint on what to inline, initial work on EscapeAnalysisPhase
|
Tue, 28 Jun 2011 17:17:51 +0200 |
Gilles Duboscq |
Fix for dead Phis in loop nodes detection
|
Tue, 28 Jun 2011 17:08:45 +0200 |
Gilles Duboscq |
Added -G:+PlotOnError option to print graph to IGV even without -G:+Plot on error condition (verification failure or AssertionError/RuntimeException in a Phase)
|
Tue, 28 Jun 2011 16:45:48 +0200 |
Gilles Duboscq |
Merge
|
Tue, 28 Jun 2011 16:13:32 +0200 |
Gilles Duboscq |
Fix multiple bugs in loop peeling
|
Tue, 28 Jun 2011 10:10:47 +0200 |
Gilles Duboscq |
Loop peeling work
|
Tue, 28 Jun 2011 14:17:06 +0200 |
Thomas Wuerthinger |
Sync with maxine changes.
|
Tue, 28 Jun 2011 13:53:28 +0200 |
Thomas Wuerthinger |
Updated hgignore.
|
Tue, 28 Jun 2011 13:52:36 +0200 |
Thomas Wuerthinger |
Added read elimination phase.
|
Tue, 28 Jun 2011 12:20:31 +0200 |
Thomas Wuerthinger |
insert loop memory merging
|
Mon, 27 Jun 2011 17:38:43 +0200 |
Thomas Wuerthinger |
Removed locationToRead array.
|
Mon, 27 Jun 2011 13:29:53 +0200 |
Thomas Wuerthinger |
Towards new memory dependence graph.
|
Fri, 24 Jun 2011 15:39:54 +0200 |
Thomas Wuerthinger |
Added memory dependencies.
|
Fri, 24 Jun 2011 15:01:20 +0200 |
Thomas Wuerthinger |
Node class clean up.
|
Fri, 24 Jun 2011 14:59:27 +0200 |
Thomas Wuerthinger |
More clean up in the IR.
|