comparison CHANGELOG.md @ 17180:ae5b66255083 graal-0.5

changelog: graal-0.5
author Bernhard Urban <bernhard.urban@jku.at>
date Tue, 23 Sep 2014 10:55:35 +0200
parents 2476180699f6
children 7169e42f7e1b
comparison
equal deleted inserted replaced
17179:6d8ae4c6725f 17180:ae5b66255083
3 ## `tip` 3 ## `tip`
4 ### Graal 4 ### Graal
5 * ... 5 * ...
6 6
7 ### Truffle 7 ### Truffle
8 * Added TruffleRuntime#getCallTargets() to get all call targets that were created and are still referenced. 8 * ...
9
10 ## Version 0.5
11 23-Sep-2014, [Repository Revision](http://hg.openjdk.java.net/graal/graal/shortlog/graal-0.5)
12 ### Graal
13 * New register allocator optimization: `-G:+ConstantLoadOptimization`.
14 * SPARC backend is able to run benchmark and passing most of the JTTs.
15 * Fix: Stamp: interface types can not be trusted except after explicit runtime checks.
16
17 ### Truffle
18 * Added `TruffleRuntime#getCallTargets()` to get all call targets that were created and are still referenced.
9 * Added `NeverValidAssumption` to complement `AlwaysValidAssumption`. 19 * Added `NeverValidAssumption` to complement `AlwaysValidAssumption`.
10 * Fixed a bug in `AssumedValue` that may not invalidate correctly. 20 * Fixed a bug in `AssumedValue` that may not invalidate correctly.
11 * New option, TruffleCompilationExceptionsAreThrown, that will throw a OptimizationFailedException for compiler errors. 21 * New option, `-G:+/-TruffleCompilationExceptionsAreThrown`, that will throw an `OptimizationFailedException` for compiler errors.
12 22
13 ## Version 0.4 23 ## Version 0.4
14 19-Aug-2014, [Repository Revision](http://hg.openjdk.java.net/graal/graal/rev/graal-0.4) 24 19-Aug-2014, [Repository Revision](http://hg.openjdk.java.net/graal/graal/shortlog/graal-0.4)
15 ### Graal 25 ### Graal
16 * Made initialization of Graal runtime lazy in hosted mode. 26 * Made initialization of Graal runtime lazy in hosted mode.
17 * Added supported for new `jrelibrary` dependency type in `mx/projects`. 27 * Added supported for new `jrelibrary` dependency type in `mx/projects`.
18 * Java projects with compliance level higher than the JDKs specified by `JAVA_HOME` and `EXTRA_JAVA_HOMES` are ignored once `mx/projects` has been processed. 28 * Java projects with compliance level higher than the JDKs specified by `JAVA_HOME` and `EXTRA_JAVA_HOMES` are ignored once `mx/projects` has been processed.
19 * `ResolvedJavaType.resolveMethod` now takes a context type used to perform access checks. It now works correctly regarding default methods. 29 * `ResolvedJavaType.resolveMethod` now takes a context type used to perform access checks. It now works correctly regarding default methods.
34 * New flag `-G:-TruffleSplittingAggressive` if enabled splits every function call. 44 * New flag `-G:-TruffleSplittingAggressive` if enabled splits every function call.
35 * Added `isVisited` method for `BranchProfile`. 45 * Added `isVisited` method for `BranchProfile`.
36 * Added new `ConditionProfile`, `BinaryConditionProfile` and `CountingConditionProfile` utility classes to profile if conditions. 46 * Added new `ConditionProfile`, `BinaryConditionProfile` and `CountingConditionProfile` utility classes to profile if conditions.
37 47
38 ## Version 0.3 48 ## Version 0.3
39 9-May-2014, [Repository Revision](http://hg.openjdk.java.net/graal/graal/rev/graal-0.3) 49 9-May-2014, [Repository Revision](http://hg.openjdk.java.net/graal/graal/shortlog/graal-0.3)
40 50
41 ### Graal 51 ### Graal
42 * Explicit support for oop compression/uncompression in high level graph. 52 * Explicit support for oop compression/uncompression in high level graph.
43 * LIRGenerator refactoring. 53 * LIRGenerator refactoring.
44 * Explicit types for inputs (InputType enum). 54 * Explicit types for inputs (InputType enum).
56 * Added `TruffleRuntime#createIndirectCallNode` to create an `IndirectCallNode`. 66 * Added `TruffleRuntime#createIndirectCallNode` to create an `IndirectCallNode`.
57 * `DirectCallNode#inline` was renamed to `DirectCallNode#forceInlining()`. 67 * `DirectCallNode#inline` was renamed to `DirectCallNode#forceInlining()`.
58 * Removed deprecated `Node#adoptChild`. 68 * Removed deprecated `Node#adoptChild`.
59 69
60 ## Version 0.2 70 ## Version 0.2
61 25-Mar-2014, [Repository Revision](http://hg.openjdk.java.net/graal/graal/rev/graal-0.2) 71 25-Mar-2014, [Repository Revision](http://hg.openjdk.java.net/graal/graal/shortlog/graal-0.2)
62 72
63 ### Graal 73 ### Graal
64 * Use HotSpot stubs for certain array copy operations. 74 * Use HotSpot stubs for certain array copy operations.
65 * New methods for querying memory usage of individual objects and object graphs in Graal API (`MetaAccessProvider#getMemorySize`, `MetaUtil#getMemorySizeRecursive`). 75 * New methods for querying memory usage of individual objects and object graphs in Graal API (`MetaAccessProvider#getMemorySize`, `MetaUtil#getMemorySizeRecursive`).
66 * Added tiered configuration (C1 + Graal). 76 * Added tiered configuration (C1 + Graal).
87 * New API `Node#atomic` for atomic tree operations 97 * New API `Node#atomic` for atomic tree operations
88 * Made `Node#replace` thread-safe 98 * Made `Node#replace` thread-safe
89 99
90 100
91 ## Version 0.1 101 ## Version 0.1
92 5-Feb-2014, [Repository Revision](http://hg.openjdk.java.net/graal/graal/rev/graal-0.1) 102 5-Feb-2014, [Repository Revision](http://hg.openjdk.java.net/graal/graal/shortlog/graal-0.1)
93 103
94 ### Graal 104 ### Graal
95 105
96 * Initial version of a dynamic Java compiler written in Java. 106 * Initial version of a dynamic Java compiler written in Java.
97 * Support for multiple co-existing GPU backends ([GRAAL-1](https://bugs.openjdk.java.net/browse/GRAAL-1)). 107 * Support for multiple co-existing GPU backends ([GRAAL-1](https://bugs.openjdk.java.net/browse/GRAAL-1)).