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

Issue 7122003: Make x64 to use the RecordWrite stub. This is a step towards getting (Closed)

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

Description

Make x64 to use the RecordWrite stub. This is a step towards getting incremental GC working on x64. Committed: http://code.google.com/p/v8/source/detail?r=8221

Patch Set 1 #

Total comments: 24

Patch Set 2 : '' #

Patch Set 3 : '' #

Total comments: 2

Patch Set 4 : '' #

Patch Set 5 : '' #

Unified diffs Side-by-side diffs Delta from patch set Stats (+376 lines, -247 lines) Patch
M src/arm/macro-assembler-arm.h View 1 2 3 chunks +7 lines, -9 lines 0 comments Download
M src/arm/macro-assembler-arm.cc View 1 2 3 3 chunks +3 lines, -3 lines 0 comments Download
M src/ia32/assembler-ia32.h View 1 2 3 4 3 chunks +3 lines, -14 lines 0 comments Download
M src/ia32/code-stubs-ia32.h View 1 2 3 2 chunks +5 lines, -5 lines 0 comments Download
M src/ia32/code-stubs-ia32.cc View 1 2 3 4 1 chunk +9 lines, -3 lines 0 comments Download
M src/ia32/lithium-codegen-ia32.cc View 1 1 chunk +8 lines, -8 lines 0 comments Download
M src/ia32/lithium-ia32.h View 1 1 chunk +0 lines, -4 lines 0 comments Download
M src/ia32/macro-assembler-ia32.h View 1 2 4 chunks +11 lines, -10 lines 0 comments Download
M src/ia32/macro-assembler-ia32.cc View 1 2 3 7 chunks +7 lines, -7 lines 0 comments Download
M src/x64/assembler-x64.h View 1 2 3 4 1 chunk +3 lines, -2 lines 0 comments Download
M src/x64/code-stubs-x64.cc View 1 2 3 4 2 chunks +40 lines, -8 lines 0 comments Download
M src/x64/full-codegen-x64.cc View 1 8 chunks +24 lines, -17 lines 0 comments Download
M src/x64/ic-x64.cc View 1 chunk +4 lines, -1 line 0 comments Download
M src/x64/lithium-codegen-x64.cc View 1 5 chunks +31 lines, -20 lines 0 comments Download
M src/x64/lithium-x64.h View 1 1 chunk +4 lines, -3 lines 0 comments Download
M src/x64/lithium-x64.cc View 1 1 chunk +3 lines, -1 line 0 comments Download
M src/x64/macro-assembler-x64.h View 1 2 3 chunks +73 lines, -36 lines 0 comments Download
M src/x64/macro-assembler-x64.cc View 1 2 6 chunks +135 lines, -91 lines 0 comments Download
M src/x64/stub-cache-x64.cc View 3 chunks +6 lines, -5 lines 0 comments Download

Messages

Total messages: 7 (0 generated)
Erik Corry
9 years, 6 months ago (2011-06-07 13:12:55 UTC) #1
Vyacheslav Egorov (Chromium)
LGTM http://codereview.chromium.org/7122003/diff/1/src/x64/full-codegen-x64.cc File src/x64/full-codegen-x64.cc (right): http://codereview.chromium.org/7122003/diff/1/src/x64/full-codegen-x64.cc#newcode197 src/x64/full-codegen-x64.cc:197: // Update the write barrier. This clobbers rax ...
9 years, 6 months ago (2011-06-07 14:01:27 UTC) #2
Lasse Reichstein
Partial comments only. http://codereview.chromium.org/7122003/diff/1/src/x64/assembler-x64.h File src/x64/assembler-x64.h (right): http://codereview.chromium.org/7122003/diff/1/src/x64/assembler-x64.h#newcode1378 src/x64/assembler-x64.h:1378: inline byte get_opcode(int offset) { Rename ...
9 years, 6 months ago (2011-06-07 14:02:53 UTC) #3
Erik Corry
http://codereview.chromium.org/7122003/diff/1/src/x64/assembler-x64.h File src/x64/assembler-x64.h (right): http://codereview.chromium.org/7122003/diff/1/src/x64/assembler-x64.h#newcode1378 src/x64/assembler-x64.h:1378: inline byte get_opcode(int offset) { On 2011/06/07 14:02:53, Lasse ...
9 years, 6 months ago (2011-06-08 10:38:55 UTC) #4
Lasse Reichstein
LGTM http://codereview.chromium.org/7122003/diff/1/src/x64/assembler-x64.h File src/x64/assembler-x64.h (right): http://codereview.chromium.org/7122003/diff/1/src/x64/assembler-x64.h#newcode1378 src/x64/assembler-x64.h:1378: inline byte get_opcode(int offset) { I don't see ...
9 years, 6 months ago (2011-06-08 10:58:45 UTC) #5
Vyacheslav Egorov (Chromium)
still LGTM
9 years, 6 months ago (2011-06-08 11:02:19 UTC) #6
Erik Corry
9 years, 6 months ago (2011-06-08 11:27:11 UTC) #7
http://codereview.chromium.org/7122003/diff/1/src/x64/assembler-x64.h
File src/x64/assembler-x64.h (right):

http://codereview.chromium.org/7122003/diff/1/src/x64/assembler-x64.h#newcode...
src/x64/assembler-x64.h:1378: inline byte get_opcode(int offset) {
On 2011/06/08 10:58:46, Lasse Reichstein wrote:
> The call site can make its own local functions by any name, which call the
> generic method on the assembler.
> 
> The generic method is there now, and public, for anyone to use at any time.
> For that reason alone, I think it should be less bound to the current
use-case.
> E.g., I think it should take a zero-based index, not a pc-based index. It's
easy
> to convert between the two (using pc_offset()).
> 
> Or, preferably, replace it with a macro like:
>  PatchableNearJump(byte opcode, Label* label) {
>    db(opcode);
>    emit_near_disp(label);
>  }
> 
> but there is a visibility issue to work around with that, since MacroAssembler
> cant see emit_near_disp. Perhaps make a db_near_disp(Label*) method for that.

I now use set_byte_at and pc_offset instead.

http://codereview.chromium.org/7122003/diff/1/src/x64/assembler-x64.h#newcode...
src/x64/assembler-x64.h:1378: inline byte get_opcode(int offset) {
On 2011/06/08 10:58:46, Lasse Reichstein wrote:
> I don't see us using get_opcode anywhere. Just remove it.

It was used in an assert

Powered by Google App Engine
This is Rietveld 408576698