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

Issue 543161: Added support for MIPS in architecture independent files.... (Closed)

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

Description

Added support for MIPS in architecture independent files. Code for MIPS assembler, disassembler, simulator, and debugger. The simulator does not yet support all generated instructions and still needs some more tests.

Patch Set 1 #

Total comments: 109

Patch Set 2 : '' #

Total comments: 58

Patch Set 3 : '' #

Total comments: 61

Patch Set 4 : '' #

Patch Set 5 : '' #

Total comments: 40

Patch Set 6 : '' #

Total comments: 126

Patch Set 7 : '' #

Patch Set 8 : '' #

Patch Set 9 : '' #

Total comments: 1
Unified diffs Side-by-side diffs Delta from patch set Stats (+10785 lines, -8 lines) Patch
M SConstruct View 1 2 3 4 5 6 chunks +33 lines, -2 lines 0 comments Download
M src/SConscript View 1 2 3 4 5 6 7 8 2 chunks +19 lines, -0 lines 0 comments Download
M src/assembler.h View 1 2 3 4 5 6 7 8 2 chunks +14 lines, -1 line 0 comments Download
M src/codegen.h View 1 2 3 4 5 6 7 8 1 chunk +2 lines, -0 lines 0 comments Download
M src/codegen-inl.h View 1 2 3 4 5 6 7 8 1 chunk +2 lines, -0 lines 0 comments Download
M src/flag-definitions.h View 1 2 3 4 5 6 7 8 1 chunk +1 line, -1 line 0 comments Download
M src/frames-inl.h View 1 2 3 4 5 6 7 8 1 chunk +2 lines, -0 lines 0 comments Download
M src/globals.h View 1 2 3 4 5 6 7 8 2 chunks +4 lines, -0 lines 0 comments Download
M src/macro-assembler.h View 1 2 3 4 5 6 7 8 1 chunk +7 lines, -0 lines 0 comments Download
A src/mips/assembler-mips.h View 1 2 3 4 5 6 1 chunk +665 lines, -0 lines 0 comments Download
A src/mips/assembler-mips.cc View 1 2 3 4 5 6 1 chunk +1212 lines, -0 lines 0 comments Download
A src/mips/assembler-mips-inl.h View 1 2 3 4 5 6 1 chunk +215 lines, -0 lines 0 comments Download
A src/mips/builtins-mips.cc View 1 2 3 4 5 1 chunk +109 lines, -0 lines 0 comments Download
A src/mips/codegen-mips.h View 1 2 3 4 5 6 7 8 1 chunk +311 lines, -0 lines 0 comments Download
A src/mips/codegen-mips.cc View 1 2 3 4 5 6 7 8 1 chunk +501 lines, -0 lines 0 comments Download
A src/mips/codegen-mips-inl.h View 1 2 3 4 5 1 chunk +56 lines, -0 lines 0 comments Download
A src/mips/constants-mips.h View 1 2 3 4 5 6 1 chunk +529 lines, -0 lines 0 comments Download
A src/mips/constants-mips.cc View 1 2 3 4 5 6 1 chunk +324 lines, -0 lines 0 comments Download
A src/mips/cpu-mips.cc View 1 2 3 4 5 6 1 chunk +68 lines, -0 lines 0 comments Download
A src/mips/debug-mips.cc View 1 2 3 4 5 1 chunk +112 lines, -0 lines 0 comments Download
A src/mips/disasm-mips.cc View 1 2 3 4 5 6 1 chunk +784 lines, -0 lines 0 comments Download
A src/mips/fast-codegen-mips.cc View 1 2 3 4 5 1 chunk +56 lines, -0 lines 0 comments Download
A src/mips/frames-mips.h View 1 2 3 4 5 6 1 chunk +164 lines, -0 lines 0 comments Download
A src/mips/frames-mips.cc View 1 2 3 4 5 1 chunk +100 lines, -0 lines 0 comments Download
A src/mips/full-codegen-mips.cc View 7 8 1 chunk +268 lines, -0 lines 0 comments Download
A src/mips/ic-mips.cc View 1 2 3 4 5 6 7 8 1 chunk +187 lines, -0 lines 0 comments Download
A src/mips/jump-target-mips.cc View 1 2 3 4 5 1 chunk +89 lines, -0 lines 0 comments Download
A src/mips/macro-assembler-mips.h View 1 2 3 4 5 6 1 chunk +385 lines, -0 lines 1 comment Download
A src/mips/macro-assembler-mips.cc View 1 2 3 4 5 6 1 chunk +897 lines, -0 lines 0 comments Download
A src/mips/readme View 1 chunk +7 lines, -0 lines 0 comments Download
A src/mips/register-allocator-mips.h View 1 2 3 4 5 1 chunk +46 lines, -0 lines 0 comments Download
A src/mips/register-allocator-mips.cc View 1 2 3 4 5 6 1 chunk +60 lines, -0 lines 0 comments Download
A src/mips/register-allocator-mips-inl.h View 1 2 3 1 chunk +137 lines, -0 lines 0 comments Download
A src/mips/simulator-mips.h View 1 2 3 4 5 6 1 chunk +311 lines, -0 lines 0 comments Download
A src/mips/simulator-mips.cc View 1 2 3 4 5 6 1 chunk +1648 lines, -0 lines 0 comments Download
A src/mips/stub-cache-mips.cc View 1 2 3 4 5 6 1 chunk +384 lines, -0 lines 0 comments Download
A src/mips/virtual-frame-mips.h View 1 2 3 4 5 1 chunk +548 lines, -0 lines 0 comments Download
A src/mips/virtual-frame-mips.cc View 1 2 3 4 5 6 1 chunk +240 lines, -0 lines 0 comments Download
M src/objects.h View 1 2 3 4 5 6 7 8 2 chunks +2 lines, -1 line 0 comments Download
M src/platform-linux.cc View 1 2 3 4 5 6 7 8 5 chunks +10 lines, -3 lines 0 comments Download
M src/register-allocator.h View 1 2 3 4 5 6 7 8 1 chunk +2 lines, -0 lines 0 comments Download
M src/register-allocator-inl.h View 1 2 3 4 5 6 7 8 1 chunk +2 lines, -0 lines 0 comments Download
M src/simulator.h View 6 7 8 1 chunk +2 lines, -0 lines 0 comments Download
M src/virtual-frame.h View 1 2 3 4 5 6 7 8 1 chunk +2 lines, -0 lines 0 comments Download
M test/cctest/SConscript View 2 3 4 5 6 1 chunk +1 line, -0 lines 0 comments Download
A test/cctest/test-assembler-mips.cc View 1 2 3 4 5 6 7 1 chunk +265 lines, -0 lines 0 comments Download
M test/cctest/test-regexp.cc View 2 3 4 5 1 chunk +2 lines, -0 lines 0 comments Download

Messages

Total messages: 20 (0 generated)
Søren Thygesen Gjesse
I tried to compile the library using GCC 4.2 using (with the suggested changes to ...
10 years, 11 months ago (2010-01-22 20:22:32 UTC) #1
Alexandre
Hi, I have worked on your previous comments. Thanks again to the reviewers. This should ...
10 years, 11 months ago (2010-01-26 00:10:13 UTC) #2
Alexandre
Hi, Sorry I had a mistake in my script reseting default values in flag-definitions.h . ...
10 years, 11 months ago (2010-01-26 18:30:45 UTC) #3
Søren Thygesen Gjesse
Another round of comments, mainly on the MIPS assembler. http://codereview.chromium.org/543161/diff/4001/5005 File src/bootstrapper.cc (right): http://codereview.chromium.org/543161/diff/4001/5005#newcode901 src/bootstrapper.cc:901: ...
10 years, 11 months ago (2010-01-26 22:40:55 UTC) #4
Alexandre
Hi, I've worked on your comments. The big work in this change. was to move ...
10 years, 11 months ago (2010-01-27 23:28:20 UTC) #5
Alexandre
Removed a line forgotten. http://codereview.chromium.org/543161/diff/8002/9044 File src/mips/constants-mips.h (right): http://codereview.chromium.org/543161/diff/8002/9044#newcode456 src/mips/constants-mips.h:456: ASSERT(instrType() == kRegisterType || instrType() ...
10 years, 11 months ago (2010-01-27 23:40:42 UTC) #6
Søren Thygesen Gjesse
Thank you for addressing the changes from yesterday. I think it's starting to look good. ...
10 years, 11 months ago (2010-01-28 16:25:40 UTC) #7
antonm
http://codereview.chromium.org/543161/diff/8002/9042 File src/mips/assembler-mips.cc (right): http://codereview.chromium.org/543161/diff/8002/9042#newcode1234 src/mips/assembler-mips.cc:1234: // nop I think comments should be indented as ...
10 years, 10 months ago (2010-01-28 18:05:50 UTC) #8
Alexandre
Hi, I have done some fixes. I also removed the MIPS code in jump-target.* as ...
10 years, 10 months ago (2010-01-28 22:32:05 UTC) #9
antonm
Alexander, apparently you've updated svn and that rendered code review almost impossible---there are difference which ...
10 years, 10 months ago (2010-01-29 10:47:11 UTC) #10
Søren Thygesen Gjesse
Hi, Thanks for addressing the comments. The assembler is looking quite nice by now. Some ...
10 years, 10 months ago (2010-01-29 12:58:07 UTC) #11
Søren Thygesen Gjesse
One thing I forgot. Please change the year to 2010 in the header for all ...
10 years, 10 months ago (2010-01-29 13:06:22 UTC) #12
Alexandre
Hi, I worked on your comments. I also updated to revision 3749. I removed fast-codegen.* ...
10 years, 10 months ago (2010-01-30 00:31:38 UTC) #13
Alexandre
Hi, Just a little fix as I found a bug in debug mode. Alexandre http://codereview.chromium.org/543161/diff/9055/9091 ...
10 years, 10 months ago (2010-01-30 02:41:05 UTC) #14
antonm
LGTM, but please, wait for Søren's blessing. http://codereview.chromium.org/543161/diff/9055/9089 File src/mips/assembler-mips.cc (right): http://codereview.chromium.org/543161/diff/9055/9089#newcode998 src/mips/assembler-mips.cc:998: COP1 | ...
10 years, 10 months ago (2010-02-01 11:28:02 UTC) #15
Søren Thygesen Gjesse
Yet another round of comments. When they have been addressed there should not be much ...
10 years, 10 months ago (2010-02-01 22:31:23 UTC) #16
Alexandre
Hi, I have addressed your comments. Regards, Alexandre http://codereview.chromium.org/543161/diff/9055/9072 File src/mips/assembler-mips-inl.h (right): http://codereview.chromium.org/543161/diff/9055/9072#newcode76 src/mips/assembler-mips-inl.h:76: Operand::Operand(Object** ...
10 years, 10 months ago (2010-02-02 02:51:35 UTC) #17
Alexandre
http://codereview.chromium.org/543161/diff/13005/13028 File src/mips/macro-assembler-mips.h (right): http://codereview.chromium.org/543161/diff/13005/13028#newcode127 src/mips/macro-assembler-mips.h:127: // Sets the remembered set bit for [address+offset], where ...
10 years, 10 months ago (2010-02-04 02:30:39 UTC) #18
Søren Thygesen Gjesse
LGTM Thank you for this patch! I will try to land it in the repository, ...
10 years, 10 months ago (2010-02-04 12:11:36 UTC) #19
Søren Thygesen Gjesse
10 years, 10 months ago (2010-02-04 20:46:31 UTC) #20
This has been landed as r3799, see http://codereview.chromium.org/561072.

Closing this issue.

On 2010/02/04 12:11:36, Søren Gjesse wrote:
> LGTM
> 
> Thank you for this patch!
> 
> I will try to land it in the repository, see
> http://codereview.chromium.org/561072.
> 
> http://codereview.chromium.org/543161/diff/9055/9080
> File src/mips/frames-mips.h (right):
> 
> http://codereview.chromium.org/543161/diff/9055/9080#newcode41
> src/mips/frames-mips.h:41: static const RegList kJSCallerSaved =
> On 2010/02/02 02:51:35, alexandre.rames wrote:
> > The Register structure is declared in assembler-mips.h, and registers in
> > assembler-mips.cc, so it's not very convenient. 
> > On 2010/02/01 22:31:23, Søren Gjesse wrote:
> > > Is it possible to use the Register constants here, e.g. a0.bit() instead
of
> 4.
> > 
> > 
> 
> OK
> 
> http://codereview.chromium.org/543161/diff/9055/9080#newcode57
> src/mips/frames-mips.h:57: // Saved temporaries
> On 2010/02/02 02:51:35, alexandre.rames wrote:
> > See previous comment.
> > On 2010/02/01 22:31:23, Søren Gjesse wrote:
> > > Ditto.
> > 
> > 
> 
> OK
> 
> http://codereview.chromium.org/543161/diff/9055/9092
> File src/mips/simulator-mips.cc (right):
> 
> http://codereview.chromium.org/543161/diff/9055/9092#newcode244
> src/mips/simulator-mips.cc:244: 
> On 2010/02/02 02:51:35, alexandre.rames wrote:
> > These are used below for formatting purpose, that's why #define statements
are
> > used. It is quite convenient. However we could still change it to static
const
> > int and add some other defines or format manually below.
> > (This code is nearly copied line for line form ARM code.)
> > On 2010/02/01 22:31:23, Søren Gjesse wrote:
> > > Please use static const int kXxxYyy for these constants.
> > 
> > 
> 
> OK
> 
> http://codereview.chromium.org/543161/diff/9055/9095
> File src/mips/simulator-mips.h (right):
> 
> http://codereview.chromium.org/543161/diff/9055/9095#newcode205
> src/mips/simulator-mips.h:205: 
> On 2010/02/02 02:51:35, alexandre.rames wrote:
> > Yes it does, although I have not implemented half-word load and store
> > instructions yet. (lh, lhu, sh)
> > On 2010/02/01 22:31:23, Søren Gjesse wrote:
> > > Does these halfword read/writes make any sense on a MIPS platform? If not
> > please
> > > remove them.
> > 
> > 
> 
> Fine, we will keep them there.

Powered by Google App Engine
This is Rietveld 408576698