Mistake in PhaseCPP::analyze()?
    Roman Kennke 
    rkennke at redhat.com
       
    Mon Nov 19 16:16:00 UTC 2018
    
    
  
I see this code in PhaseCCP::analyze() in phaseX.cpp:
              if (has_load_barriers) {
                // Search for load barriers behind the load
                for (DUIterator_Fast i3max, i3 = u->fast_outs(i3max); i3
< i3max; i3++) {
                  Node* b = u->fast_out(i3);
                  if (bs->is_gc_barrier_node(b)) {
                    _worklist.push(b);
                  }
                }
              }
              worklist.push(u);
It pushes to _worklist in the inner case (ZGC), but to worklist in the
outer (general). worklist is the one that's iterated. Is this
intentional or a mistake?
Roman
    
    
More information about the zgc-dev
mailing list