[aarch64-port-dev ] Aarch64 port for ZGC, so far

Stuart Monteith stuart.monteith at linaro.org
Fri Nov 23 13:48:24 UTC 2018


Hi,
   I get different errors - with UseBarriersForVolatile I get:
    #  assert(C->node_arena()->contains(s->_leaf) ||
!has_new_node(s->_leaf)) failed: duplicating node that's already been
matched

without I get:
  #  assert(ldst->trailing_membar() != __null) failed: expected trailing membar

BR,
 Stuart

On Fri, 23 Nov 2018 at 13:00, Andrew Haley <aph at redhat.com> wrote:
>
> On 11/23/18 11:46 AM, Stuart Monteith wrote:
> > This is due to a combination of the graph generated in
> > ZBarrierSetC2::make_cas_loadbarrier and apparently the memory barrier
> > handling in aarch64.ad that Roland recently changed in "8209420: Track
> > membars for volatile accesses so they can be properly optimized". This
> > is easily triggered in the C2Example.java file I've linked to above,
> > where calls to Unsafe.compareAndSwapObject provoke the issue.
>
> Does it work with UseBarriersForVolatile?
>
> --
> Andrew Haley
> Java Platform Lead Engineer
> Red Hat UK Ltd. <https://www.redhat.com>
> EAC8 43EB D3EF DB98 CC77 2FAD A5CD 6035 332F A671


More information about the zgc-dev mailing list