[10] RFR(M): 8176506: C2: loop unswitching and unsafe accesses cause crash

Vladimir Kozlov vladimir.kozlov at oracle.com
Sat Jun 3 03:20:47 UTC 2017


Roland,

please, send latest changeset to me.

Vladimir

On 6/2/17 3:08 PM, Volker Simonis wrote:
> Hi,
> 
> 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!
> 
> Regards,
> Volker
> 
> 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.
> 
>     Thanks.
> 
>      > 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?
> 
>     Roland.
> 


More information about the hotspot-compiler-dev mailing list