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

Issue 115707: Add unit test for 64-bit assembler (Closed)

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

Description

Add a unit test for V8's 64-bit assembler. Committed: http://code.google.com/p/v8/source/detail?r=2051

Patch Set 1 #

Patch Set 2 : '' #

Total comments: 3

Patch Set 3 : '' #

Total comments: 7

Patch Set 4 : '' #

Patch Set 5 : '' #

Patch Set 6 : '' #

Patch Set 7 : '' #

Patch Set 8 : '' #

Unified diffs Side-by-side diffs Delta from patch set Stats (+128 lines, -3 lines) Patch
M src/x64/assembler-x64.h View 1 2 3 4 5 6 7 2 chunks +8 lines, -1 line 0 comments Download
M src/x64/assembler-x64.cc View 1 2 3 4 5 6 7 1 chunk +35 lines, -2 lines 0 comments Download
M test/cctest/SConscript View 1 2 3 4 5 6 7 1 chunk +1 line, -0 lines 0 comments Download
A test/cctest/test-assembler-x64.cc View 1 2 3 4 1 chunk +84 lines, -0 lines 0 comments Download

Messages

Total messages: 7 (0 generated)
William Hesse
11 years, 7 months ago (2009-05-22 12:57:21 UTC) #1
Kevin Millikin (Chromium)
Change the commit message to say "Add unit test for the 64-bit assembler." I'm concerned ...
11 years, 7 months ago (2009-05-22 13:20:54 UTC) #2
William Hesse
Comments addressed. Windows platform is currently not implemented. http://codereview.chromium.org/115707/diff/11/12 File test/cctest/test-assembler-x64.cc (right): http://codereview.chromium.org/115707/diff/11/12#newcode57 Line 57: ...
11 years, 7 months ago (2009-05-22 15:09:21 UTC) #3
iposva
http://codereview.chromium.org/115707/diff/18/1006 File test/cctest/test-assembler-x64.cc (right): http://codereview.chromium.org/115707/diff/18/1006#newcode46 Line 46: // This calling convention is used on Linux, ...
11 years, 7 months ago (2009-05-22 16:02:32 UTC) #4
William Hesse
http://codereview.chromium.org/115707/diff/18/1006 File test/cctest/test-assembler-x64.cc (right): http://codereview.chromium.org/115707/diff/18/1006#newcode46 Line 46: // This calling convention is used on Linux, ...
11 years, 7 months ago (2009-05-25 10:54:32 UTC) #5
William Hesse
I need an LGTM, or more comments to address.
11 years, 7 months ago (2009-05-26 07:18:37 UTC) #6
Lasse Reichstein
11 years, 7 months ago (2009-05-26 07:49:21 UTC) #7
LGTM

http://codereview.chromium.org/115707/diff/18/1006
File test/cctest/test-assembler-x64.cc (right):

http://codereview.chromium.org/115707/diff/18/1006#newcode43
Line 43: // The AMD64 calling convention is used, with the first five arguments
"first six arguments"

http://codereview.chromium.org/115707/diff/18/1006#newcode45
Line 45: // the XMM registers.  The return value is in RAX.
To be pedantic, if one of the first six arguments is a floating point value,
it's put in the XMM register, and the seventh argument ends up in R9.
I think it's safer to just say that we don't use floating point arguments,
exclamation point.

http://codereview.chromium.org/115707/diff/18/1006#newcode47
Line 47: // convention is used on 64-bit windows.
The MSVC calling convention uses RCX, RDX, R8 and R9 for arguments - meaning the
test below will not work there.
Add a TODO saying that until we fix on a way to specify parameters.

http://codereview.chromium.org/115707/diff/18/1006#newcode56
Line 56: TEST(AssemblerX640) {
X640 sounds large. Try giving it a more meaningful name than "0".

http://codereview.chromium.org/115707/diff/18/1006#newcode59
Line 59: byte* buffer =
static_cast<byte*>(OS::Allocate(Assembler::kMinimalBufferSize,
Don't use "minimal buffer size" here without asserting that it's large enough
for what you plan to do. 
It's better to use some arbitrary, but large enough, size, since the assembler
can't grow it anyway.
And test that the actual size is large enough too.

Powered by Google App Engine
This is Rietveld 408576698