src/share/vm/gc_implementation/parallelScavenge/psCompactionManager.cpp

changeset 4037
da91efe96a93
parent 3900
d2a62e0f25eb
child 4142
d8ce2825b193
     1.1 --- a/src/share/vm/gc_implementation/parallelScavenge/psCompactionManager.cpp	Fri Aug 31 16:39:35 2012 -0700
     1.2 +++ b/src/share/vm/gc_implementation/parallelScavenge/psCompactionManager.cpp	Sat Sep 01 13:25:18 2012 -0400
     1.3 @@ -1,5 +1,5 @@
     1.4  /*
     1.5 - * Copyright (c) 2005, 2011, Oracle and/or its affiliates. All rights reserved.
     1.6 + * Copyright (c) 2005, 2012, Oracle and/or its affiliates. All rights reserved.
     1.7   * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
     1.8   *
     1.9   * This code is free software; you can redistribute it and/or modify it
    1.10 @@ -32,7 +32,6 @@
    1.11  #include "gc_implementation/parallelScavenge/psOldGen.hpp"
    1.12  #include "gc_implementation/parallelScavenge/psParallelCompact.hpp"
    1.13  #include "oops/objArrayKlass.inline.hpp"
    1.14 -#include "oops/oop.hpp"
    1.15  #include "oops/oop.inline.hpp"
    1.16  #include "oops/oop.pcgc.inline.hpp"
    1.17  #include "utilities/stack.inline.hpp"
    1.18 @@ -175,13 +174,6 @@
    1.19    return _manager_array[index];
    1.20  }
    1.21  
    1.22 -void ParCompactionManager::reset() {
    1.23 -  for(uint i = 0; i < ParallelGCThreads + 1; i++) {
    1.24 -    assert(manager_array(i)->revisit_klass_stack()->is_empty(), "sanity");
    1.25 -    assert(manager_array(i)->revisit_mdo_stack()->is_empty(), "sanity");
    1.26 -  }
    1.27 -}
    1.28 -
    1.29  void ParCompactionManager::follow_marking_stacks() {
    1.30    do {
    1.31      // Drain the overflow stack first, to allow stealing from the marking stack.
    1.32 @@ -196,10 +188,10 @@
    1.33      // Process ObjArrays one at a time to avoid marking stack bloat.
    1.34      ObjArrayTask task;
    1.35      if (_objarray_stack.pop_overflow(task)) {
    1.36 -      objArrayKlass* const k = (objArrayKlass*)task.obj()->blueprint();
    1.37 +      objArrayKlass* const k = (objArrayKlass*)task.obj()->klass();
    1.38        k->oop_follow_contents(this, task.obj(), task.index());
    1.39      } else if (_objarray_stack.pop_local(task)) {
    1.40 -      objArrayKlass* const k = (objArrayKlass*)task.obj()->blueprint();
    1.41 +      objArrayKlass* const k = (objArrayKlass*)task.obj()->klass();
    1.42        k->oop_follow_contents(this, task.obj(), task.index());
    1.43      }
    1.44    } while (!marking_stacks_empty());

mercurial