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.trud...@oracle.com> wrote: > Nice, although this is a big change to review. > > Michel > > On Apr 18, 2013, at 7:18 AM, Marcus Lagergren <marcus.lagerg...@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 >