Mercurial > hg > truffle
diff CHANGELOG.md @ 14850:fbae9be45c95
Merge.
author | Josef Eisl <josef.eisl@jku.at> |
---|---|
date | Wed, 26 Mar 2014 20:44:11 +0100 |
parents | 7608c74e14b6 |
children | 45045ab19008 |
line wrap: on
line diff
--- a/CHANGELOG.md Wed Mar 26 17:02:45 2014 +0100 +++ b/CHANGELOG.md Wed Mar 26 20:44:11 2014 +0100 @@ -2,30 +2,42 @@ ## `tip` ### Graal -* New methods for querying memory usage of individual objects and object graphs in Graal API (MetaAccessProvider#getMemorySize, MetaUtil#getMemorySizeRecursive). -* New (tested) invariant that equality comparisons for JavaType/JavaMethod/JavaField values use .equals() instead of '=='. +* ... +### Truffle +* ... + +## Version 0.2 +25-Mar-2014, [Repository Revision](http://hg.openjdk.java.net/graal/graal/rev/graal-0.2) + +### Graal +* Use HotSpot stubs for certain array copy operations. +* New methods for querying memory usage of individual objects and object graphs in Graal API (`MetaAccessProvider#getMemorySize`, `MetaUtil#getMemorySizeRecursive`). +* Added tiered configuration (C1 + Graal). +* Initial security model for Graal [GRAAL-22](https://bugs.openjdk.java.net/browse/GRAAL-22). +* New (tested) invariant that equality comparisons for `JavaType`/`JavaMethod`/`JavaField` values use `.equals()` instead of `==`. * Made graph caching compilation-local. +* Added AllocSpy tool for analyzing allocation in Graal using the [Java Allocation Instrumenter](https://code.google.com/p/java-allocation-instrumenter/). +* Initial support for memory arithmetic operations on x86 ### Truffle -* New API TruffleRuntime#createCallNode to create call nodes and to give the runtime system control over its implementation. -* New API RootNode#getCachedCallNodes to get a weak set of CallNodes that have registered to call the RootNode. -* New API to split the AST of a call-site context sensitively. CallNode#split, CallNode#isSplittable, CallNode#getSplitCallTarget, CallNode#getCurrentCallTarget, RootNode#isSplittable, RootNode#split. -* New API to inline a call-site into the call-graph. CallNode#isInlinable, CallNode#inline, CallNode#isInlined. -* New API for the runtime environment to register CallTargets as caller to the RootNode. CallNode#registerCallTarget. -* Improved API for counting nodes in Truffle ASTS. NodeUtil#countNodes can be used with a NodeFilter filter Nodes. -* New API to declare the cost of a Node for use in runtime environment specific heuristics. See NodeCost, Node#getCost() and NodeInfo#cost(). -* Removed old API for NodeInfo#Kind and NodeInfo#kind(). As a replacement the new Node cost API can be used. -* Changed Node#replace reason parameter type to CharSequence (to allow for lazy string building) -* Deprecated Node#adoptChild and Node#adoptChild, no longer needed in node constructor -* New Node#insert method for inserting new nodes into the tree (formerly adoptChild) -* New Node#adoptChildren() helper method that adopts all (direct and indirect) children of a node -* New API Node#atomic for atomic tree operations -* Made Node#replace thread-safe - +* New API `TruffleRuntime#createCallNode` to create call nodes and to give the runtime system control over its implementation. +* New API `RootNode#getCachedCallNodes` to get a weak set of `CallNode`s that have registered to call the `RootNode`. +* New API to split the AST of a call-site context sensitively. `CallNode#split`, `CallNode#isSplittable`, `CallNode#getSplitCallTarget`, `CallNode#getCurrentCallTarget`, `RootNode#isSplittable`, `RootNode#split`. +* New API to inline a call-site into the call-graph. `CallNode#isInlinable`, `CallNode#inline`, `CallNode#isInlined`. +* New API for the runtime environment to register `CallTarget`s as caller to the `RootNode`. `CallNode#registerCallTarget`. +* Improved API for counting nodes in Truffle ASTs. `NodeUtil#countNodes` can be used with a `NodeFilter`. +* New API to declare the cost of a Node for use in runtime environment specific heuristics. See `NodeCost`, `Node#getCost` and `NodeInfo#cost`. +* Removed old API for `NodeInfo#Kind` and `NodeInfo#kind`. As a replacement the new `NodeCost` API can be used. +* Changed `Node#replace` reason parameter type to `CharSequence` (to enable lazy string building) +* Deprecated `Node#adoptChild` and `Node#adoptChild`, no longer needed in node constructor +* New `Node#insert` method for inserting new nodes into the tree (formerly `adoptChild`) +* New `Node#adoptChildren` helper method that adopts all (direct and indirect) children of a node +* New API `Node#atomic` for atomic tree operations +* Made `Node#replace` thread-safe ## Version 0.1 -5-Feb-2014, [Repository Revision](http://hg.openjdk.java.net/graal/graal/rev/b124e22eb772) +5-Feb-2014, [Repository Revision](http://hg.openjdk.java.net/graal/graal/rev/graal-0.1) ### Graal