RFR(M) 8058744: Crash in C1 OSRed method w/ Unsafe usage
igor.veresov at oracle.com
Sat Sep 20 03:22:52 UTC 2014
C1 tries to pattern-match argument computation for UnsafeRawOp nodes in order to fold it into an address expression. The original problem is that it had a bug that made it match any shift, instead of only a left shift. But many aspects of this optimization was not entirely correct for 64-bit. It had a bunch of point-fixes in the LIR emitter, but I found a bunch of other problems. I also refactored it a bit, to make it more easier to reason about.
More information about the hotspot-compiler-dev