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

Issue 164793003: A64: Use a scope utility to allocate scratch registers. (Closed)

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

Description

A64: Use a scope utility to allocate scratch registers. This replaces Tmp0() and Tmp1() with a more flexible scratch register pool. A scope-based utility can temporarily acquire registers from this pool as needed. We no longer have to worry about whether to use Tmp0(), Tmp1() or something else; the scope can just get the next available scratch register. BUG= R=jochen@chromium.org, rmcilroy@chromium.org Committed: https://code.google.com/p/v8/source/detail?r=19768

Patch Set 1 #

Total comments: 15

Patch Set 2 : Remove Include() and Release(). #

Total comments: 3

Patch Set 3 : Modify Printf (as discussed) and remove Exclude(). #

Total comments: 8

Patch Set 4 : Address the latest review comments. #

Patch Set 5 : Address _all_ of the latest review comments. #

Total comments: 20

Patch Set 6 : Fix latest issues. #

Patch Set 7 : Rebase. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+556 lines, -411 lines) Patch
M src/a64/assembler-a64.h View 1 2 3 4 5 6 3 chunks +20 lines, -4 lines 0 comments Download
M src/a64/assembler-a64-inl.h View 1 2 3 4 5 6 2 chunks +11 lines, -7 lines 0 comments Download
M src/a64/code-stubs-a64.cc View 1 2 3 4 5 6 7 chunks +13 lines, -11 lines 0 comments Download
M src/a64/debug-a64.cc View 1 chunk +1 line, -2 lines 0 comments Download
M src/a64/deoptimizer-a64.cc View 1 2 3 4 5 6 2 chunks +5 lines, -4 lines 0 comments Download
M src/a64/full-codegen-a64.cc View 1 2 3 4 5 6 1 chunk +4 lines, -4 lines 0 comments Download
M src/a64/ic-a64.cc View 3 chunks +3 lines, -0 lines 0 comments Download
M src/a64/lithium-codegen-a64.cc View 1 2 3 4 5 6 2 chunks +10 lines, -5 lines 0 comments Download
M src/a64/macro-assembler-a64.h View 1 2 3 4 5 6 14 chunks +65 lines, -86 lines 0 comments Download
M src/a64/macro-assembler-a64.cc View 1 2 3 4 5 6 63 chunks +343 lines, -224 lines 0 comments Download
M src/a64/macro-assembler-a64-inl.h View 1 2 3 4 5 6 5 chunks +21 lines, -11 lines 0 comments Download
M src/a64/stub-cache-a64.cc View 1 2 3 4 5 6 2 chunks +3 lines, -2 lines 0 comments Download
M test/cctest/test-assembler-a64.cc View 1 2 3 1 chunk +51 lines, -44 lines 0 comments Download
M test/cctest/test-utils-a64.cc View 1 2 2 chunks +6 lines, -7 lines 0 comments Download

Messages

Total messages: 25 (0 generated)
jbramley
6 years, 10 months ago (2014-02-20 12:01:36 UTC) #1
rmcilroy
Looks good overall to me, just one minor suggestion. https://codereview.chromium.org/164793003/diff/1/src/a64/macro-assembler-a64.cc File src/a64/macro-assembler-a64.cc (right): https://codereview.chromium.org/164793003/diff/1/src/a64/macro-assembler-a64.cc#newcode5178 src/a64/macro-assembler-a64.cc:5178: ...
6 years, 10 months ago (2014-02-20 13:05:59 UTC) #2
jbramley
https://codereview.chromium.org/164793003/diff/1/src/a64/macro-assembler-a64.cc File src/a64/macro-assembler-a64.cc (right): https://codereview.chromium.org/164793003/diff/1/src/a64/macro-assembler-a64.cc#newcode5178 src/a64/macro-assembler-a64.cc:5178: include &= ~(xzr.Bit() | csp.Bit()); On 2014/02/20 13:06:00, rmcilroy ...
6 years, 10 months ago (2014-02-20 13:23:12 UTC) #3
rmcilroy
https://codereview.chromium.org/164793003/diff/1/src/a64/macro-assembler-a64.cc File src/a64/macro-assembler-a64.cc (right): https://codereview.chromium.org/164793003/diff/1/src/a64/macro-assembler-a64.cc#newcode2335 src/a64/macro-assembler-a64.cc:2335: Csel(output.W(), output.W(), 255, le); Could you pull out the ...
6 years, 10 months ago (2014-02-24 11:04:48 UTC) #4
jbramley
Thanks for the review! I realise that the patch is rather large. https://codereview.chromium.org/164793003/diff/1/src/a64/macro-assembler-a64.cc File src/a64/macro-assembler-a64.cc ...
6 years, 10 months ago (2014-02-24 11:59:27 UTC) #5
rmcilroy
https://codereview.chromium.org/164793003/diff/1/src/a64/macro-assembler-a64.cc File src/a64/macro-assembler-a64.cc (right): https://codereview.chromium.org/164793003/diff/1/src/a64/macro-assembler-a64.cc#newcode5172 src/a64/macro-assembler-a64.cc:5172: void UseScratchRegisterScope::Include(const CPURegList& regs) { > They're useful in ...
6 years, 10 months ago (2014-02-24 13:12:48 UTC) #6
jbramley
On 2014/02/24 13:12:48, rmcilroy wrote: > https://codereview.chromium.org/164793003/diff/1/src/a64/macro-assembler-a64.cc > File src/a64/macro-assembler-a64.cc (right): > > https://codereview.chromium.org/164793003/diff/1/src/a64/macro-assembler-a64.cc#newcode5172 > ...
6 years, 10 months ago (2014-02-24 13:53:13 UTC) #7
rmcilroy
On 2014/02/24 13:53:13, jbramley wrote: > On 2014/02/24 13:12:48, rmcilroy wrote: > > > https://codereview.chromium.org/164793003/diff/1/src/a64/macro-assembler-a64.cc ...
6 years, 10 months ago (2014-02-24 14:29:47 UTC) #8
jbramley
On 2014/02/24 14:29:47, rmcilroy wrote: > On 2014/02/24 13:53:13, jbramley wrote: > > On 2014/02/24 ...
6 years, 10 months ago (2014-02-24 14:51:43 UTC) #9
jbramley
6 years, 10 months ago (2014-02-24 14:52:40 UTC) #10
rmcilroy
Sorry - I didn't realize that you had submitted another patch set and was waiting ...
6 years, 9 months ago (2014-02-27 11:17:31 UTC) #11
jbramley
https://codereview.chromium.org/164793003/diff/190001/src/a64/macro-assembler-a64.cc File src/a64/macro-assembler-a64.cc (right): https://codereview.chromium.org/164793003/diff/190001/src/a64/macro-assembler-a64.cc#newcode4993 src/a64/macro-assembler-a64.cc:4993: FPTmpList()->Combine(kCallerSavedFP); On 2014/02/27 11:17:32, rmcilroy wrote: > Do we ...
6 years, 9 months ago (2014-02-27 11:27:15 UTC) #12
rmcilroy
https://codereview.chromium.org/164793003/diff/190001/src/a64/macro-assembler-a64.cc File src/a64/macro-assembler-a64.cc (right): https://codereview.chromium.org/164793003/diff/190001/src/a64/macro-assembler-a64.cc#newcode4993 src/a64/macro-assembler-a64.cc:4993: FPTmpList()->Combine(kCallerSavedFP); On 2014/02/27 11:27:16, jbramley wrote: > On 2014/02/27 ...
6 years, 9 months ago (2014-02-27 11:49:28 UTC) #13
jbramley
On 2014/02/27 11:49:28, rmcilroy wrote: > https://codereview.chromium.org/164793003/diff/190001/src/a64/macro-assembler-a64.cc > File src/a64/macro-assembler-a64.cc (right): > > https://codereview.chromium.org/164793003/diff/190001/src/a64/macro-assembler-a64.cc#newcode4993 > ...
6 years, 9 months ago (2014-02-27 12:11:00 UTC) #14
rmcilroy
On 2014/02/27 12:11:00, jbramley wrote: > On 2014/02/27 11:49:28, rmcilroy wrote: > > > https://codereview.chromium.org/164793003/diff/190001/src/a64/macro-assembler-a64.cc ...
6 years, 9 months ago (2014-02-27 13:53:30 UTC) #15
jbramley
On 2014/02/27 13:53:30, rmcilroy wrote: > On 2014/02/27 12:11:00, jbramley wrote: > > On 2014/02/27 ...
6 years, 9 months ago (2014-02-27 14:03:43 UTC) #16
rmcilroy
Looks much better to me, just a couple more small nits. One thing - could ...
6 years, 9 months ago (2014-02-28 13:44:30 UTC) #17
jbramley
On 2014/02/28 13:44:30, rmcilroy wrote: > Looks much better to me, just a couple more ...
6 years, 9 months ago (2014-02-28 15:13:11 UTC) #18
jbramley
The new patch set is ready. https://codereview.chromium.org/164793003/diff/250001/src/a64/macro-assembler-a64.cc File src/a64/macro-assembler-a64.cc (right): https://codereview.chromium.org/164793003/diff/250001/src/a64/macro-assembler-a64.cc#newcode4828 src/a64/macro-assembler-a64.cc:4828: ASSERT(!TmpList()->IncludesAliasOf(arg0)); On 2014/02/28 ...
6 years, 9 months ago (2014-02-28 16:56:36 UTC) #19
rmcilroy
Found a few more nits, but once these are addressed lgtm. https://codereview.chromium.org/164793003/diff/290001/src/a64/code-stubs-a64.cc File src/a64/code-stubs-a64.cc (right): ...
6 years, 9 months ago (2014-02-28 17:13:33 UTC) #20
jbramley
https://codereview.chromium.org/164793003/diff/290001/src/a64/code-stubs-a64.cc File src/a64/code-stubs-a64.cc (right): https://codereview.chromium.org/164793003/diff/290001/src/a64/code-stubs-a64.cc#newcode4718 src/a64/code-stubs-a64.cc:4718: UseScratchRegisterScope temps(masm); On 2014/02/28 17:13:34, rmcilroy wrote: > You ...
6 years, 9 months ago (2014-02-28 17:36:23 UTC) #21
rmcilroy
lgtm
6 years, 9 months ago (2014-03-03 10:57:40 UTC) #22
jbramley
On 2014/03/03 10:57:40, rmcilroy wrote: > lgtm I need an lgtm from an owner of ...
6 years, 9 months ago (2014-03-10 12:07:47 UTC) #23
jochen (gone - plz use gerrit)
lgtm
6 years, 9 months ago (2014-03-10 15:16:13 UTC) #24
jbramley
6 years, 9 months ago (2014-03-10 16:26:55 UTC) #25
Message was sent while issue was closed.
Committed patchset #7 manually as r19768 (presubmit successful).

Powered by Google App Engine
This is Rietveld 408576698