comparison CHANGELOG.md @ 21154:271eee87201c

Update readme and changelog
author Gilles Duboscq <gilles.m.duboscq@oracle.com>
date Wed, 29 Apr 2015 15:27:00 +0200
parents 38b39b75500c
children a394890fd474
comparison
equal deleted inserted replaced
21153:1621af5cb444 21154:271eee87201c
3 This changelog summarizes major changes between Graal versions relevant to languages implementors building upon the Truffle framework and developers building technology on top of Graal. The main focus is on APIs exported by Graal and Truffle. 3 This changelog summarizes major changes between Graal versions relevant to languages implementors building upon the Truffle framework and developers building technology on top of Graal. The main focus is on APIs exported by Graal and Truffle.
4 4
5 5
6 ## `tip` 6 ## `tip`
7 ### Graal 7 ### Graal
8 * By default the Graal code is now only compiled by C1 which should improve application start-up.
8 * Merged with jdk8u40-b25. 9 * Merged with jdk8u40-b25.
10 * The Graal class loader now loads all lib/graal/graal*.jar jars.
11 * Fast Graal services (see com.oracle.graal.api.runtime.Service) are now looked up using service files in lib/graal/services
9 * Add utilities ModifiersProvider#isConcrete, ResolvedJavaMethod#hasBytecodes, ResolvedJavaMethod#hasReceiver to Graal API. 12 * Add utilities ModifiersProvider#isConcrete, ResolvedJavaMethod#hasBytecodes, ResolvedJavaMethod#hasReceiver to Graal API.
10 * Add `GraalDirectives` API, containing methods to influence compiler behavior for unittests and microbenchmarks. 13 * Add `GraalDirectives` API, containing methods to influence compiler behavior for unittests and microbenchmarks.
11 * Introduce `LIRSuites`, an extensible configuration for the low-level compiler pipeline. 14 * Introduce `LIRSuites`, an extensible configuration for the low-level compiler pipeline.
12 * The Graal class loader now loads all lib/graal/graal*.jar jars.
13 * ... 15 * ...
14 16
15 ### Truffle 17 ### Truffle
18 * New, faster partial evaluation (no more TruffleCache).
19 * If a method is annotated with @ExplodeLoop and contains a loop that can not be exploded, partial evaluation will fail.
20 * Truffle background compilation is now multi-threaded.
21 * Experimental merge=true flag for @ExplodeLoop allows building bytecode-based interpreters (see BytecodeInterpreterPartialEvaluationTest).
16 * Added Node#deepCopy as primary method to copy ASTs. 22 * Added Node#deepCopy as primary method to copy ASTs.
17 * Disable inlining across Truffle boundary by default. New option TruffleInlineAcrossTruffleBoundary default false. 23 * Disable inlining across Truffle boundary by default. New option TruffleInlineAcrossTruffleBoundary default false.
18 * Node.replace(Node) now guards against non-assignable replacement, and Node.isReplacementSafe(Node) checks in advance. 24 * Node.replace(Node) now guards against non-assignable replacement, and Node.isReplacementSafe(Node) checks in advance.
19 * Instrumentation: AST "probing" is now safe and implemented by Node.probe(); language implementors need only implement Node.isInstrumentable() and Node.createWrapperNode(). 25 * Instrumentation: AST "probing" is now safe and implemented by Node.probe(); language implementors need only implement Node.isInstrumentable() and Node.createWrapperNode().
20 * Instrumentation: A new framework defines a category of simple "instrumentation tools" that can be created, configured, and installed, after which they autonomously collect execution data of some kind. 26 * Instrumentation: A new framework defines a category of simple "instrumentation tools" that can be created, configured, and installed, after which they autonomously collect execution data of some kind.