Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(789)

Issue 6092007: Write buffer based write barrier for IA32 and Crankshaft. Currently... (Closed)

Created:
9 years, 11 months ago by Erik Corry
Modified:
9 years, 7 months ago
CC:
v8-dev
Visibility:
Public.

Description

Write buffer based write barrier for IA32 and Crankshaft. Currently coverage is untested, but believed to be complete. Committed: http://code.google.com/p/v8/source/detail?r=6184

Patch Set 1 #

Patch Set 2 : '' #

Total comments: 2

Patch Set 3 : '' #

Unified diffs Side-by-side diffs Delta from patch set Stats (+173 lines, -135 lines) Patch
M src/assembler.h View 1 2 1 chunk +3 lines, -0 lines 0 comments Download
M src/code-stubs.h View 1 2 3 chunks +5 lines, -4 lines 0 comments Download
M src/codegen.cc View 1 2 1 chunk +3 lines, -2 lines 0 comments Download
M src/ia32/code-stubs-ia32.h View 1 2 1 chunk +15 lines, -0 lines 0 comments Download
M src/ia32/code-stubs-ia32.cc View 1 2 4 chunks +39 lines, -8 lines 0 comments Download
M src/ia32/codegen-ia32.cc View 1 2 13 chunks +24 lines, -32 lines 0 comments Download
M src/ia32/full-codegen-ia32.cc View 1 2 8 chunks +9 lines, -23 lines 0 comments Download
M src/ia32/ic-ia32.cc View 1 2 2 chunks +2 lines, -6 lines 0 comments Download
M src/ia32/lithium-codegen-ia32.cc View 1 2 2 chunks +3 lines, -9 lines 0 comments Download
M src/ia32/macro-assembler-ia32.h View 1 2 5 chunks +6 lines, -7 lines 0 comments Download
M src/ia32/macro-assembler-ia32.cc View 1 2 8 chunks +44 lines, -24 lines 0 comments Download
M src/ia32/stub-cache-ia32.cc View 1 2 5 chunks +4 lines, -16 lines 0 comments Download
M src/runtime.h View 1 2 1 chunk +2 lines, -1 line 0 comments Download
M src/runtime.cc View 1 2 1 chunk +6 lines, -0 lines 0 comments Download
M src/serialize.cc View 1 2 1 chunk +4 lines, -0 lines 0 comments Download
M src/write-buffer.h View 1 2 2 chunks +2 lines, -2 lines 0 comments Download
M src/write-buffer.cc View 1 2 1 chunk +1 line, -0 lines 0 comments Download
M test/cctest/test-alloc.cc View 1 2 1 chunk +1 line, -1 line 0 comments Download

Messages

Total messages: 3 (0 generated)
Erik Corry
9 years, 11 months ago (2011-01-04 12:24:48 UTC) #1
Vyacheslav Egorov (Chromium)
LGTM http://codereview.chromium.org/6092007/diff/19001/src/ia32/macro-assembler-ia32.cc File src/ia32/macro-assembler-ia32.cc (right): http://codereview.chromium.org/6092007/diff/19001/src/ia32/macro-assembler-ia32.cc#newcode67 src/ia32/macro-assembler-ia32.cc:67: mov(Operand(scratch, 0), addr); some of the addresses that ...
9 years, 11 months ago (2011-01-05 13:40:43 UTC) #2
Erik Corry
9 years, 11 months ago (2011-01-05 13:47:01 UTC) #3
http://codereview.chromium.org/6092007/diff/19001/src/ia32/macro-assembler-ia...
File src/ia32/macro-assembler-ia32.cc (right):

http://codereview.chromium.org/6092007/diff/19001/src/ia32/macro-assembler-ia...
src/ia32/macro-assembler-ia32.cc:67: mov(Operand(scratch, 0), addr);
On 2011/01/05 13:40:43, Vyacheslav Egorov wrote:
> some of the addresses that come here can have rogue heap object tag at the end
> 
> this is usually caused by passing a tagged address and an offset from the
> untagged address.
> 
> please document or fix it otherwise we might be surprised during write buffer
> decoding.

WriteBuffer::Compact already masks out these bits.

Powered by Google App Engine
This is Rietveld 408576698