RFR(M): 8176506: C2: loop unswitching and unsafe accesses cause crash
vladimir.kozlov at oracle.com
Sat Jun 3 03:20:47 UTC 2017
please, send latest changeset to me.
On 6/2/17 3:08 PM, Volker Simonis wrote:
> the latest webrev was fine for ppc64/s390 (and also Sparc). No changes
> are needed for these platforms because they all produced SIGILL already.
> So thumbs up from my side!
> Roland Westrelin <rwestrel at redhat.com <mailto:rwestrel at redhat.com>>
> schrieb am Fr. 2. Juni 2017 um 21:25:
> > Our internal testing of webrev.04 version of changes passed.
> > http://cr.openjdk.java.net/~roland/8176506/webrev.04/
> > One thing. I don't see changes for ppc64/s390x which Volker
> promised to
> > provide. Do we need them in this latest version? What about SPARC?
> Volker said:
> > I've also looked at your change and I think it works fine on
> > ppc64/s390x because we've always implemented the HaltNode by
> issuing a
> > trap instructions. So with your change (and your modified test) we
> > will just crash in the generates C2 method which I think is fine:
> > # SIGTRAP (0x5) at pc=0x00003fff47b12bd8, pid=19883, tid=19964
> > J 215 c2 TestMaybeNullUnsafeAccess.test2(Ljava/lang/Object;)I (34
> > bytes) @ 0x00003fff47b12bd8 [0x00003fff47b12b80+0x0000000000000058]
> > j TestMaybeNullUnsafeAccess.main([Ljava/lang/String;)V+49
> > v ~StubRoutines::call_stub
> So my understanding is that nothing needs to be done on ppc.
> On sparc, doesn't the current implementation of Halt:
> __ illtrap(0);
> cause a SIGILL as well?
More information about the hotspot-compiler-dev