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

Issue 1253273002: MIPS: Use allocatable registers for Interpreter. (Closed)

Created:
5 years, 5 months ago by paul.l...
Modified:
5 years, 1 month ago
CC:
v8-dev
Base URL:
https://chromium.googlesource.com/v8/v8.git@master
Target Ref:
refs/pending/heads/master
Project:
v8
Visibility:
Public.

Description

MIPS: Use allocatable registers for Interpreter. Registers s0, s1 were not in the pool of allocatable registers, so the assembler failed a DCHECK. Move them to allocatable, as on the other arches. TEST=unittests/InterpreterAssemblerTest.LoadRegisterFixed, others. BUG=

Patch Set 1 #

Unified diffs Side-by-side diffs Delta from patch set Stats (+4 lines, -4 lines) Patch
M src/compiler/mips/linkage-mips.cc View 1 chunk +2 lines, -2 lines 0 comments Download
M src/compiler/mips64/linkage-mips64.cc View 1 chunk +2 lines, -2 lines 0 comments Download

Messages

Total messages: 8 (2 generated)
paul.l...
PTAL. FWIW, I've opened an issue to increase the number of allocatable regs on MIPS ...
5 years, 5 months ago (2015-07-27 02:40:52 UTC) #2
rmcilroy
On 2015/07/27 02:40:52, paul.l... wrote: > PTAL. > > FWIW, I've opened an issue to ...
5 years, 5 months ago (2015-07-27 07:45:23 UTC) #3
paul.l...
On 2015/07/27 07:45:23, rmcilroy (OOO until 10th Aug) wrote: > Are t1 and t2 callee ...
5 years, 4 months ago (2015-07-27 15:56:13 UTC) #4
rmcilroy
On 2015/07/27 15:56:13, paul.l... wrote: > On 2015/07/27 07:45:23, rmcilroy (OOO until 10th Aug) wrote: ...
5 years, 4 months ago (2015-07-28 07:45:15 UTC) #5
paul.l...
On 2015/07/28 07:45:15, rmcilroy (OOO until 10th Aug) wrote: > I'm OOO but still working ...
5 years, 4 months ago (2015-07-29 04:34:46 UTC) #6
rmcilroy
5 years, 4 months ago (2015-07-29 07:58:56 UTC) #7
On 2015/07/29 04:34:46, paul.l... wrote:
> On 2015/07/28 07:45:15, rmcilroy (OOO until 10th Aug) wrote:
> > I'm OOO but still working from Munich until Friday :). Landing this to
unblock
> > you for now should be fine until you find a better solution - we won't be
> making
> > any calls from the interpreter for a while, so it won't matter whether they
> are
> > callee-saved or not until then.
> 
> I presume you're using callee-saved to preserve them thru runtime calls from
> interpreter.
> 
> Arm CEntryStub now now uses r4, r5, which will conflict with your use of r5
for
> InterpreterBytecodeOffsetReg() in https://codereview.chromium.org/1245133002/
> 
> It looks to me like the use of Call(r5) no longer needs to be callee-saved,
and
> any reg would work. There are a few stale comments there about callee saved,
> which were true before the old retry loop was removed in
> https://codereview.chromium.org/240053010. Only argc needs to use callee-saved
> now.
> 
> I'm removing related cruft in the mips CEntryStub to free up s0-s2 for
> interpreter use.

Actually after talking this over with folks in Munich, I realize that we are
always going to need to spill these registers when making any calls to stubs
even if they are callee-saved. As such, leaving these as s0-s2 should be fine.
I've done this in https://codereview.chromium.org/1254293006/, so this CL
shouldn't be needed any more (and no need to clean up your CEntryStub just for
this).

Powered by Google App Engine
This is Rietveld 408576698