Request for reviews (XS): 6866651: Regression: simple int sum crashes jvm (build 1.6.0_14-b08 and 1.7.0-ea-b59)
Vladimir Kozlov
Vladimir.Kozlov at Sun.COM
Fri Aug 14 15:09:29 PDT 2009
Looks good.
I would remove -server from the test options to run it with tested
(client) VM instead of default VM.
Thanks,
Vladimir
changpeng fang - Sun Microsystems - Santa Clara United States wrote:
> http://cr.openjdk.java.net/~cfang/6866651/webrev.00/
>
> Fixed 6866651: Regression: simple int sum crashes jvm (build
> 1.6.0_14-b08 and 1.7.0-ea-b59)
>
> Problem:
> set_req_X will do dead code elimination if the original input has no
> other use. However, it is possible to
> have the current node (this) removed if a dead loop exists. So, dead
> code elimination in set_req_X is not
> safe, and may cause undesired consequences (like the segfault in 6866651)
>
> Solution:
> Instead of doing dead code elimination immediately in set_req_X, we put
> the dead node (original input) into
> the worklist, and the dead node will eventually be eliminated when it is
> its turn to be processed.
>
> In addition, before ideal transformations, we replace a node with a
> constant if we know it computes a constant
> to skip unneeded optimizations on this node.
> Tests: JPRT, CompileTheWorld, Test case in bug report (Test.java in webrev)
>
> Thanks,
>
> Changpeng
More information about the hotspot-compiler-dev
mailing list