# HG changeset patch # User Bernhard Urban # Date 1380024694 -7200 # Node ID 427cbe2bd61521d20bf40a3f5a9378751eb2f17a # Parent e53399f1b2cdb98ebfcababa4ee8e29c7a529659 SerialWriteBarrier: use GC_CARD_LOCATION instead of ANY_LOCATION diff -r e53399f1b2cd -r 427cbe2bd615 graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/WriteBarrierSnippets.java --- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/WriteBarrierSnippets.java Tue Sep 24 14:11:33 2013 +0200 +++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/WriteBarrierSnippets.java Tue Sep 24 14:11:34 2013 +0200 @@ -62,6 +62,8 @@ private static final SnippetCounter g1EffectiveRefFieldBarrierCounter = new SnippetCounter(countersWriteBarriers, "g1EffectiveRefFieldBarrierCounter", "Number of G1 effective Ref Field Read Barriers"); + private static final LocationIdentity GC_CARD_LOCATION = new NamedLocationIdentity("GC-Card"); + @Snippet public static void serialWriteBarrier(Object object, Object location, @ConstantParameter boolean usePrecise, @ConstantParameter boolean alwaysNull) { // No barriers are added if we are always storing a null. @@ -85,7 +87,7 @@ } else { base = base.add(Word.unsigned(cardTableStart())); } - base.writeByte(displacement, (byte) 0); + base.writeByte(displacement, (byte) 0, GC_CARD_LOCATION); } @Snippet