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

Issue 7113012: Call a stub for the write barrier on ARM. This is a step (Closed)

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

Description

Call a stub for the write barrier on ARM. This is a step towards incremental marking on ARM. Committed: http://code.google.com/p/v8/source/detail?r=8195

Patch Set 1 #

Total comments: 8

Patch Set 2 : '' #

Unified diffs Side-by-side diffs Delta from patch set Stats (+285 lines, -76 lines) Patch
M src/arm/code-stubs-arm.cc View 3 chunks +15 lines, -0 lines 0 comments Download
M src/arm/full-codegen-arm.cc View 8 chunks +21 lines, -9 lines 0 comments Download
M src/arm/ic-arm.cc View 2 chunks +3 lines, -1 line 0 comments Download
M src/arm/lithium-codegen-arm.cc View 5 chunks +13 lines, -6 lines 0 comments Download
M src/arm/macro-assembler-arm.h View 1 8 chunks +71 lines, -9 lines 0 comments Download
M src/arm/macro-assembler-arm.cc View 1 6 chunks +111 lines, -12 lines 0 comments Download
M src/arm/stub-cache-arm.cc View 4 chunks +14 lines, -4 lines 0 comments Download
M src/ia32/code-stubs-ia32.h View 1 chunk +2 lines, -0 lines 0 comments Download
M src/ia32/code-stubs-ia32.cc View 1 1 chunk +1 line, -1 line 0 comments Download
M src/ia32/macro-assembler-ia32.h View 1 3 chunks +13 lines, -13 lines 0 comments Download
M src/ia32/macro-assembler-ia32.cc View 1 3 chunks +21 lines, -21 lines 0 comments Download

Messages

Total messages: 3 (0 generated)
Erik Corry
9 years, 6 months ago (2011-06-06 20:12:42 UTC) #1
Lasse Reichstein
LGTM http://codereview.chromium.org/7113012/diff/1/src/arm/macro-assembler-arm.cc File src/arm/macro-assembler-arm.cc (right): http://codereview.chromium.org/7113012/diff/1/src/arm/macro-assembler-arm.cc#newcode3142 src/arm/macro-assembler-arm.cc:3142: void MacroAssembler::HasColour(Register object, I think we generally use ...
9 years, 6 months ago (2011-06-07 08:48:37 UTC) #2
Erik Corry
9 years, 6 months ago (2011-06-08 10:31:29 UTC) #3
http://codereview.chromium.org/7113012/diff/1/src/arm/macro-assembler-arm.cc
File src/arm/macro-assembler-arm.cc (right):

http://codereview.chromium.org/7113012/diff/1/src/arm/macro-assembler-arm.cc#...
src/arm/macro-assembler-arm.cc:3142: void MacroAssembler::HasColour(Register
object,
On 2011/06/07 08:48:37, Lasse Reichstein wrote:
> I think we generally use the Bowdlerized US English spelling, however much it
> might hurt.
> Variables too.

Auch!  That hert!

http://codereview.chromium.org/7113012/diff/1/src/arm/macro-assembler-arm.cc#...
src/arm/macro-assembler-arm.cc:3150: MarkBits(object, bitmap_scratch,
mask_scratch);
On 2011/06/07 08:48:37, Lasse Reichstein wrote:
> Could MarkBits be named something that sounds less imperative? I get confused
as
> to whether it actually marks any bits, or just finds the address/mask of the
> mark-bits.
> Something like GetMarkBitAddressAndMask would perhaps be too long, but more
> readable.

GetMarkBits

http://codereview.chromium.org/7113012/diff/1/src/arm/macro-assembler-arm.cc#...
src/arm/macro-assembler-arm.cc:3158: b(eq, &word_boundary);
On 2011/06/07 08:48:37, Lasse Reichstein wrote:
> Should this be optimized for speed or size?
> If speed, you could probably detect the case where the color overlaps a word
> boundary earlier (mask is negative) and have a faster case that tests both
bits
> in one test if it doesn't.

I think there's room for experimentation here, but I'm going to leave that for
later.

http://codereview.chromium.org/7113012/diff/1/src/arm/macro-assembler-arm.h
File src/arm/macro-assembler-arm.h (right):

http://codereview.chromium.org/7113012/diff/1/src/arm/macro-assembler-arm.h#n...
src/arm/macro-assembler-arm.h:1145: // the position of the first bit.  Uses ecx
as scratch and leaves addr_reg
On 2011/06/07 08:48:37, Lasse Reichstein wrote:
> ecx?

Yeah, we had ARM add it to the architecture specially for V8 :-)

Powered by Google App Engine
This is Rietveld 408576698