Please review JDK-8010701 - Final part of immutable IR
Attila Szegedi
attila.szegedi at oracle.com
Fri Apr 19 00:20:50 PDT 2013
That's true - it's a big change, but sometimes you have tasks of this size… Marcus also uploaded <http://cr.openjdk.java.net/~lagergren/8010701/patches-immutable-ir.tar.gz>, which is a progression of 44 patches that makes it possible to review this with fairly fine granularity. The patches are actually a tarball of our Mercurial Queues .hg/patches, so you can just do this:
cd nashorn/.hg
# if you have your own patch queue:
qpop -a
mv patches patches.to.the.side
# then:
tar xzf patches-immutable-ir.tar.gz
rm patches/status
hg qpush -a
Now you can review them as 44 step-by-step MQ patches.
On Apr 19, 2013, at 2:53 AM, Michel Trudeau <michel.trudeau at oracle.com> wrote:
> Nice, although this is a big change to review.
>
> Michel
>
> On Apr 18, 2013, at 7:18 AM, Marcus Lagergren <marcus.lagergren at oracle.com> wrote:
>
> http://cr.openjdk.java.net/~lagergren/8010701/webrev/
>
> It is with great satisfaction that I can announce that Attila and I are done with the completely immutable IR. We have as a proof of concept also removed Node.CopyState altogether. There can now be copies of the same reference node in the IR and that is OK. This saves memory and ensures that we can clone code correctly (i.e. with a meaningless operation, rather than with the deep clone that was afflicted with literally dozens of bugs).
>
> All IR changes are now copy on write - which create new nodes. This is the responsibility of the caller.
>
> Everything runs.
>
> Individual patches are at http://cr.openjdk.java.net/~lagergren/8010701/ if the webrev is too much
>
> /M
>
More information about the nashorn-dev
mailing list