src/share/vm/opto/graphKit.cpp

changeset 1462
39b01ab7035a
parent 1420
685e959d09ea
child 1515
7c57aead6d3e
     1.1 --- a/src/share/vm/opto/graphKit.cpp	Wed Oct 07 19:01:55 2009 -0400
     1.2 +++ b/src/share/vm/opto/graphKit.cpp	Fri Oct 16 02:05:46 2009 -0700
     1.3 @@ -3186,6 +3186,15 @@
     1.4        return;
     1.5    }
     1.6  
     1.7 +  if (use_ReduceInitialCardMarks()
     1.8 +      && obj == just_allocated_object(control())) {
     1.9 +    // We can skip marks on a freshly-allocated object in Eden.
    1.10 +    // Keep this code in sync with maybe_defer_card_mark() in runtime.cpp.
    1.11 +    // That routine informs GC to take appropriate compensating steps
    1.12 +    // so as to make this card-mark elision safe.
    1.13 +    return;
    1.14 +  }
    1.15 +
    1.16    if (!use_precise) {
    1.17      // All card marks for a (non-array) instance are in one place:
    1.18      adr = obj;

mercurial