RFR: Fix dangling write-barrier in acmp

Aleksey Shipilev shade at redhat.com
Wed Dec 12 12:07:15 UTC 2018


On 12/12/18 1:06 PM, Aleksey Shipilev wrote:
> On 12/12/18 1:00 PM, Roman Kennke wrote:
>> This is needed to fix the recent failure that we have observed with
>> new-shaped acmp code in jdk8u:
>>
>> http://cr.openjdk.java.net/~rkennke/fixacmp-jdk11/webrev.00/
> 
> This is shared code path, needs to be protected with INCLUDE_SHENANDOAHGC and UseShenandoahGC?
> 
> For example:
> 
> #ifdef INCLUDE_SHENANDOAHGC
>       if (UseShenandoahGC && igvn != NULL) {
>         set_req_X(1, lhs, igvn);
>         set_req_X(2, rhs, igvn);
>       } else
> #endif
>       {
>         set_req(1, lhs);
>         set_req(2, rhs);
>       }

Sorry, should be #if:

      PhaseIterGVN* igvn = phase->is_IterGVN();
#if INCLUDE_SHENANDOAHGC
      if (UseShenandoahGC && igvn != NULL) {
        set_req_X(1, lhs, igvn);
        set_req_X(2, rhs, igvn);
      } else
#endif
      {
        set_req(1, lhs);
        set_req(2, rhs);
      }

-Aleksey



More information about the shenandoah-dev mailing list