CFV: New JDK8 Committer Marcus Lagergren (lagergren)

Staffan Larsen staffan.larsen at oracle.com
Tue Aug 13 04:19:27 PDT 2013


Vote: yes.

/Staffan

On 6 aug 2013, at 22:18, Mike Duigou <mike.duigou at oracle.com> wrote:

> I hereby nominate Marcus Lagergren to jdk8 Committer.
> 
> Marcus is a Reviewer on the Nashorn project with many contributed changesets which are now incorporated in the JDK8 repo. He has also completed many reviews of Nashorn changes by other committers. 
> 
> Changesets (in jdk8/nashorn repo):
> 
> hg log -M -u lagergren --template "{desc}\n" | grep "^[0-9]\{7,7\}: "
> 
> 8020124: In the case of an eval switch, we might need explicit conversions of the tag store, as it was not known in the surrounding environment.
> 8019983: Void returns combined with return with expression picked the wrong return type
> 8019821: allInteger switches were confused by boolean cases, as they are a narrower type than int
> 8019811: Static calls - self referential functions needed a return type conversion if they were specialized, as they can't use the same mechanism as indy calls
> 8019585: Sometimes a var declaration using itself in its init wasn't declared as canBeUndefined, causing erroneous bytecode
> 8017082: Long array literals were slightly broken
> 8016667: Wrong bytecode when testing/setting due to null check shortcut checking against primitive too
> 8016235: Use in catch block that may not have been executed in try block caused illegal byte code to be generated
> 8016226: backing out test without third party license approval
> 8015892: canBeUndefined too conservative for some use before declaration cases
> 8011023: Math round didn't conform to ECMAScript 5 spec
> 8015447: Octane harness fixes for rhino and entire test runs: ant octane, ant octane-v8, ant octane-rhino
> 8014219: Make the run-octane harness more deterministic by not measuring elapsed time every iteration. Also got rid of most of the run logic in base.js and call benchmarks directly for the same purpose
> 8012522: Clean up lexical contexts - split out stack based functionality in CodeGenerator and generify NodeVisitors based on their LexicalContext type to avoid casts
> 8012083: Array literal constant folding issue
> 8006069: Range analysis first iteration, runtime specializations
> 8013919: Original exception no longer thrown away when a finally rethrows
> 8014426: Original exception no longer thrown away when a finally rethrows
> 8014329: Slim down the label stack structure in CodeGenerator
> 8013914: Removed explicit LineNumberNodes that were too brittle when code moves around, and also introduced unnecessary footprint. Introduced the Statement node and fixed dead code elimination issues that were discovered by the absense of labels for LineNumberNodes.
> 8013913: Removed Source field from all nodes except FunctionNode in order to save footprint
> 8013871: mem usage histograms enabled with compiler logging level set to more specific than or equals to info when --print-mem-usage flag is used
> 8013477: Node.setSymbol needs to be copy on write - enable IR snapshots for recompilation based on callsite type specialization. 
> 8013533: Increase code coverage report for types and logging
> 8010701: Immutable nodes - final iteration
> 8010995: The bug ID 8010710 accidentally got two digits transposed in the checkin and unit test name
> 8010706: -Dnashorn.args system property to create command lines to wrapped nashorn.jar:s
> 8017010: index evaluation to a temporary location for index operator much change temporaries to slots, but never scoped vars
> 8010147: Forgot to add EXPECTED files for lazy and eager sunspider test
> 8009982: Lazy execution bugfix. Added lazy sunspider unit test. Added mandreel to compile-octane test. Fixed warnings
> 8009718: Lazy execution architecture continued - ScriptFunctionData is either final or recompilable. Moved ScriptFunctionData creation logic away from runtime to compile time. Prepared for method generation/specialization. Got rid of ScriptFunctionImplTrampoline whose semantics could be done as part of the relinking anyway. Merge with the lookup package change.
> 8007002: Replace implicit exception throwing methods with explicit throws - simplify control flow and remove useless code
> 8008575: Re-integrate code coverage
> 8008554: load was broken for URLs
> 8008648: Lazy JIT scope and callee semantics bugfixes. Broke out wallclock timer.
> 8008166: URL handling was broken on windows, causing "load" to malfunction
> 8008239: Unpublicized parts of the code generator package that were only package internal.
> 8008206: The allInteger case for SwitchNode generation in CodeGenerator assumes integer LITERALS only.
> 8008199: Lazy compilation and trampoline implementation
> 8007215: Varargs broken for the case of passing more than the arg limit arguments.
> 8007062: Split Lower up into Lower/Attr/FinalizeTypes. Integrate AccessSpecalizer into FinalizeTypes.
> 8005976: Break out AccessSpecializer into one pass before CodeGenerator instead of iterative applications from CodeGenerator
> 8005971: runsunspider.js should check results of benchmarks
> 8005842: Loops in ASTWriter. Corrected @Reference and @Ignore node annotation for IR nodes
> 8005843: refSymbols lookup of unbound variable could cause NullPointerException in Lower
> 8005788: Loggers and their corresponding system properties not working correctly
> 8005789: Forgot to document -Dnashorn.unstable.relink.threshold
> 
> Votes are due by 2359 PDT, August 20, 2013.
> 
> Only current jdk8 Committers [1] are eligible to vote on this nomination. Votes must be cast in the open by replying to this mailing list.
> 
> For Lazy Consensus voting instructions, see [2].
> 
> -Mike
> 
> [1] http://openjdk.java.net/census
> [2] http://openjdk.java.net/projects/#committer-vote



More information about the jdk8-dev mailing list