Adjust contents of kAheadOfTime to match write-barrier stub called from CompileArrayP...
authorvegorov@chromium.org <vegorov@chromium.org@ce2b1a6d-e550-0410-aec6-3dcde31c8c00>
Tue, 4 Oct 2011 11:38:12 +0000 (11:38 +0000)
committervegorov@chromium.org <vegorov@chromium.org@ce2b1a6d-e550-0410-aec6-3dcde31c8c00>
Tue, 4 Oct 2011 11:38:12 +0000 (11:38 +0000)
R=erik.corry@gmail.com
BUG=v8:1729

Review URL: http://codereview.chromium.org/8113034

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9513 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

src/ia32/code-stubs-ia32.cc
tools/gcmole/gccause.lua

index 5b5b05c..76089dc 100644 (file)
@@ -6665,6 +6665,7 @@ struct AheadOfTimeWriteBarrierStubList kAheadOfTime[] = {
   { ebx, eax, edi, EMIT_REMEMBERED_SET },
   // Used in CompileArrayPushCall.
   { ebx, ecx, edx, EMIT_REMEMBERED_SET },
+  { ebx, edi, edx, OMIT_REMEMBERED_SET },
   // Used in CompileStoreGlobal and CallFunctionStub.
   { ebx, ecx, edx, OMIT_REMEMBERED_SET },
   // Used in StoreStubCompiler::CompileStoreField and
@@ -6673,7 +6674,7 @@ struct AheadOfTimeWriteBarrierStubList kAheadOfTime[] = {
   // GenerateStoreField calls the stub with two different permutations of
   // registers.  This is the second.
   { ebx, ecx, edx, EMIT_REMEMBERED_SET },
-  // StoreIC::GenerateNormal via GenerateDictionaryStore, CompileArrayPushCall
+  // StoreIC::GenerateNormal via GenerateDictionaryStore
   { ebx, edi, edx, EMIT_REMEMBERED_SET },
   // KeyedStoreIC::GenerateGeneric.
   { ebx, edx, ecx, EMIT_REMEMBERED_SET},
index a6fe542..b989176 100644 (file)
@@ -48,6 +48,8 @@ local function TrackCause(name, lvl)
            T[f] = true
            TrackCause(f, (lvl or 0) + 1)
         end
+
+        if f == '<GC>' then break end
       end
    end
 end