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

Issue 11275184: First draft of the sh4 port

Created:
8 years, 1 month ago by remi.duraffort
Modified:
8 years, 1 month ago
Reviewers:
Jakob Kummerow
CC:
v8-dev
Base URL:
http://github.com/v8/v8.git@master
Visibility:
Public.

Description

First draft of the sh4 port BUG= TEST=

Patch Set 1 #

Total comments: 11

Patch Set 2 : Use GYP and fixe some typos #

Unified diffs Side-by-side diffs Delta from patch set Stats (+19071 lines, -4675 lines) Patch
M Makefile View 1 1 chunk +1 line, -1 line 0 comments Download
M build/common.gypi View 1 1 chunk +6 lines, -0 lines 0 comments Download
M src/assembler.cc View 1 3 chunks +6 lines, -0 lines 0 comments Download
M src/atomicops.h View 1 1 chunk +2 lines, -0 lines 0 comments Download
A + src/atomicops_internals_sh4_gcc.h View 1 2 chunks +19 lines, -48 lines 0 comments Download
M src/code-stubs.h View 1 2 chunks +13 lines, -1 line 0 comments Download
M src/codegen.h View 1 1 chunk +2 lines, -0 lines 0 comments Download
M src/flag-definitions.h View 1 2 chunks +5 lines, -1 line 0 comments Download
M src/frames-inl.h View 1 1 chunk +2 lines, -0 lines 0 comments Download
M src/full-codegen.h View 1 1 chunk +3 lines, -0 lines 0 comments Download
M src/globals.h View 1 4 chunks +11 lines, -1 line 0 comments Download
M src/hydrogen.cc View 1 1 chunk +2 lines, -0 lines 0 comments Download
M src/hydrogen-instructions.cc View 1 1 chunk +2 lines, -0 lines 0 comments Download
M src/jsregexp.cc View 1 2 chunks +5 lines, -0 lines 0 comments Download
M src/lithium.cc View 1 1 chunk +3 lines, -0 lines 0 comments Download
M src/lithium-allocator.cc View 1 1 chunk +2 lines, -0 lines 0 comments Download
M src/lithium-allocator-inl.h View 1 1 chunk +2 lines, -0 lines 0 comments Download
M src/log.cc View 1 1 chunk +2 lines, -0 lines 0 comments Download
M src/macro-assembler.h View 1 1 chunk +6 lines, -0 lines 0 comments Download
M src/platform.h View 1 1 chunk +3 lines, -0 lines 0 comments Download
M src/platform-linux.cc View 1 4 chunks +25 lines, -2 lines 0 comments Download
M src/platform-posix.cc View 1 1 chunk +12 lines, -0 lines 0 comments Download
M src/regexp-macro-assembler.h View 1 1 chunk +1 line, -0 lines 0 comments Download
M src/regexp-macro-assembler-tracer.cc View 1 1 chunk +2 lines, -2 lines 0 comments Download
A src/sh4/assembler-sh4.h View 1 1 chunk +1217 lines, -0 lines 0 comments Download
A src/sh4/assembler-sh4.cc View 1 1 chunk +1602 lines, -0 lines 0 comments Download
A src/sh4/assembler-sh4-inl.h View 1 1 chunk +508 lines, -0 lines 0 comments Download
A + src/sh4/builtins-sh4.cc View 1 61 chunks +166 lines, -159 lines 0 comments Download
A src/sh4/checks-sh4.h View 1 1 chunk +181 lines, -0 lines 0 comments Download
A + src/sh4/code-stubs-sh4.h View 1 14 chunks +29 lines, -79 lines 0 comments Download
A + src/sh4/code-stubs-sh4.cc View 1 231 chunks +1204 lines, -1308 lines 0 comments Download
A + src/sh4/codegen-sh4.h View 1 3 chunks +4 lines, -4 lines 0 comments Download
A src/sh4/codegen-sh4.cc View 1 1 chunk +106 lines, -0 lines 0 comments Download
A src/sh4/constants-sh4.h View 1 1 chunk +164 lines, -0 lines 0 comments Download
A + src/sh4/constants-sh4.cc View 1 2 chunks +49 lines, -26 lines 0 comments Download
A + src/sh4/cpu-sh4.cc View 1 2 chunks +25 lines, -6 lines 0 comments Download
A src/sh4/debug-sh4.cc View 1 1 chunk +149 lines, -0 lines 0 comments Download
A src/sh4/deoptimizer-sh4.cc View 1 1 chunk +124 lines, -0 lines 0 comments Download
A src/sh4/disasm-sh4.cc View 1 1 chunk +838 lines, -0 lines 0 comments Download
A + src/sh4/frames-sh4.h View 1 5 chunks +47 lines, -23 lines 0 comments Download
A + src/sh4/frames-sh4.cc View 1 3 chunks +3 lines, -3 lines 0 comments Download
A + src/sh4/full-codegen-sh4.cc View 1 90 chunks +269 lines, -215 lines 0 comments Download
A + src/sh4/ic-sh4.cc View 1 36 chunks +147 lines, -112 lines 0 comments Download
A + src/sh4/lithium-codegen-sh4.h View 1 6 chunks +12 lines, -47 lines 0 comments Download
A src/sh4/lithium-codegen-sh4.cc View 1 1 chunk +1272 lines, -0 lines 0 comments Download
A + src/sh4/lithium-gap-resolver-sh4.h View 1 3 chunks +4 lines, -4 lines 0 comments Download
A + src/sh4/lithium-gap-resolver-sh4.cc View 1 2 chunks +40 lines, -8 lines 0 comments Download
A + src/sh4/lithium-sh4.h View 1 2 chunks +3 lines, -3 lines 0 comments Download
A src/sh4/lithium-sh4.cc View 1 1 chunk +1296 lines, -0 lines 0 comments Download
A + src/sh4/macro-assembler-sh4.h View 1 33 chunks +382 lines, -515 lines 0 comments Download
A + src/sh4/macro-assembler-sh4.cc View 1 116 chunks +997 lines, -1321 lines 0 comments Download
A + src/sh4/map-sh4.h View 1 2 chunks +31 lines, -20 lines 0 comments Download
A src/sh4/opcodes-disasm-sh4.c View 1 1 chunk +586 lines, -0 lines 0 comments Download
A src/sh4/opcodes-sh4.h View 1 1 chunk +526 lines, -0 lines 0 comments Download
A src/sh4/opcodes-sh4.cc View 1 1 chunk +1897 lines, -0 lines 0 comments Download
A + src/sh4/regexp-macro-assembler-sh4.h View 1 9 chunks +19 lines, -24 lines 0 comments Download
A + src/sh4/regexp-macro-assembler-sh4.cc View 1 51 chunks +264 lines, -285 lines 0 comments Download
A + src/sh4/simulator-sh4.h View 1 3 chunks +16 lines, -15 lines 0 comments Download
A + src/sh4/stub-cache-sh4.cc View 1 81 chunks +354 lines, -441 lines 0 comments Download
M src/simulator.h View 1 1 chunk +2 lines, -0 lines 0 comments Download
M src/v8globals.h View 1 1 chunk +1 line, -1 line 0 comments Download
M test/cctest/cctest.gyp View 1 1 chunk +9 lines, -0 lines 0 comments Download
A test/cctest/test-assembler-sh4.cc View 1 1 chunk +2157 lines, -0 lines 0 comments Download
A test/cctest/test-code-stub-sh4.cc View 1 1 chunk +719 lines, -0 lines 0 comments Download
A test/cctest/test-macro-assembler-sh4.cc View 1 1 chunk +1153 lines, -0 lines 0 comments Download
M test/cctest/test-regexp.cc View 1 2 chunks +7 lines, -0 lines 0 comments Download
A test/cctest/test-regressions-sh4.cc View 1 1 chunk +202 lines, -0 lines 0 comments Download
A test/cctest/test-sh4.cc View 1 1 chunk +115 lines, -0 lines 0 comments Download
M tools/gyp/v8.gyp View 1 1 chunk +38 lines, -0 lines 0 comments Download

Messages

Total messages: 10 (0 generated)
remi.duraffort
This is the first draft of a port of v8 for sh4 processors. The work ...
8 years, 1 month ago (2012-11-07 10:13:49 UTC) #1
Jakob Kummerow
I have some comments on changes to the platform-independent files. I haven't looked at the ...
8 years, 1 month ago (2012-11-07 11:18:24 UTC) #2
remi.duraffort
Answer to comments. Updated patch will follow. https://codereview.chromium.org/11275184/diff/1/SConstruct File SConstruct (right): https://codereview.chromium.org/11275184/diff/1/SConstruct#newcode183 SConstruct:183: 'arch:sh4': { ...
8 years, 1 month ago (2012-11-07 11:59:26 UTC) #3
Jakob Kummerow
https://codereview.chromium.org/11275184/diff/1/SConstruct File SConstruct (right): https://codereview.chromium.org/11275184/diff/1/SConstruct#newcode183 SConstruct:183: 'arch:sh4': { On 2012/11/07 11:59:26, remi.duraffort wrote: > OK. ...
8 years, 1 month ago (2012-11-07 13:25:12 UTC) #4
remi.duraffort
> I've updated the wiki page to make cross-compilation instructions clearer. Thanks for the update ...
8 years, 1 month ago (2012-11-07 15:10:51 UTC) #5
remi.duraffort
Second patch: * now using GYP for building * some typos fixed
8 years, 1 month ago (2012-11-07 15:11:27 UTC) #6
remi.duraffort
Hello, do you have any comment on this (really) big patch. Any comments, questions dans ...
8 years, 1 month ago (2012-11-08 15:52:54 UTC) #7
remi.duraffort
Hello everyone, I'm wondering who is the right reviewer for this patch and what to ...
8 years, 1 month ago (2012-11-12 13:42:55 UTC) #8
Jakob Kummerow
The platform-independent changes in patch set 2 look good. I don't think anyone is planning ...
8 years, 1 month ago (2012-11-12 15:35:47 UTC) #9
remi.duraffort
8 years, 1 month ago (2012-11-14 14:23:51 UTC) #10
> I don't think anyone is planning to review the SH4-specific changes in detail,
> as AFAIK nobody on the team knows the SH4 architecture well enough to spot any
> mistakes.

The sounds logical.


> The team has discussed this topic, and before we land SH4 support, it would be
> nice to understand the motivation behind the port in order for us to be able
to
> decide to what extent we should support it. 

We ported v8 on sh4 because that's something that some of our clients want. This
is mainly for a faster WebKit or just to run node.js.

I don't think the first support level is the right one for sh4 as I will stay as
maintainer of the port. So "basic support" look appropriate.



> [...]. For the latter to work, the platform port must be in a shape where
> it fits into our infrastructure and workflow: we must at least be able to
> compile it and run the test suite, which means it must have a simulator and
the
> test expectations must be up to date so that the test suite passes. We're not
> willing to introduce dependencies on third-party tools for this, e.g. QEmu.

I guess that providing a tar file with everythind that you need in order to
build and test v8 for sh4 is not enought to change this?


> Once you have all of the code in place (simulator, anything missing to make
the
> majority of the tests work, expectation file for the others), we will review
the
> style and general structure of the SH4 specific code. This may take a few
weeks.
> To be clear, once the patch is approved, we will land it into the V8 tree, but
> it will continue to be your responsibility to make sure it keeps working and
> stays up to date, and we reserve the right to remove the port at a future date
> if you are no longer able to maintain it.

Sound ok too.


I will come back to you when I have the simulator for sh4.

Thanks for the review.

-- 
Rémi Duraffort

Powered by Google App Engine
This is Rietveld 408576698