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

Issue 11191029: Use VLDR instead of VMOVs from GPR when a 64-bit double can't be encoded as a VMOV immediate. (Closed)

Created:
8 years, 2 months ago by JF
Modified:
7 years, 12 months ago
CC:
v8-dev
Visibility:
Public.

Description

Use VLDR instead of VMOVs from GPR when a 64-bit double can't be encoded as a VMOV immediate. This requires constant blinding before it can be enabled. There are other interesting optimizations that can be added later, detailed in a TODO. BUG=optimization R=ulan@chromium.org,mstarzinger@chromium.org, hwennborg@google.com Committed: https://code.google.com/p/v8/source/detail?r=13286

Patch Set 1 #

Total comments: 1

Patch Set 2 : Revert Operand::Zero() change that came with the RelocInfo::NONE32 rename, both to be done later. #

Total comments: 6

Patch Set 3 : Update with ulan's comments. #

Total comments: 1

Patch Set 4 : Hide vldr imm behind a flag, defaults to false, add some comments to the TODO, and fix the size ass… #

Total comments: 2

Patch Set 5 : Fix comment by ulan: remove badly merged code (redundant). #

Total comments: 1
Unified diffs Side-by-side diffs Delta from patch set Stats (+233 lines, -60 lines) Patch
M src/arm/assembler-arm.h View 1 2 3 7 chunks +19 lines, -14 lines 0 comments Download
M src/arm/assembler-arm.cc View 1 2 3 4 16 chunks +190 lines, -42 lines 1 comment Download
M src/arm/constants-arm.h View 1 2 3 2 chunks +5 lines, -1 line 0 comments Download
M src/assembler.h View 1 2 3 5 chunks +13 lines, -2 lines 0 comments Download
M src/assembler.cc View 1 2 3 2 chunks +4 lines, -1 line 0 comments Download
M src/flag-definitions.h View 1 2 3 4 1 chunk +2 lines, -0 lines 0 comments Download

Messages

Total messages: 21 (0 generated)
JF
8 years, 2 months ago (2012-10-17 15:51:18 UTC) #1
ulan
I didn't look in depth yet, just one suggestion: it might worthwhile to extract the ...
8 years, 2 months ago (2012-10-18 13:36:53 UTC) #2
JF
Ah yes, sorry about that: I renamed RelocInfo::NONE32 and changed more than I though I ...
8 years, 2 months ago (2012-10-19 02:19:44 UTC) #3
ulan
Looks good overall, but I would like Michael to take a look too since I ...
8 years, 2 months ago (2012-10-22 09:18:25 UTC) #4
ulan
[+v8-dev]
8 years, 2 months ago (2012-10-22 14:33:21 UTC) #5
JF
> https://chromiumcodereview.appspot.com/11191029/diff/4001/src/arm/assembler-arm.cc#newcode462 > src/arm/assembler-arm.cc:462: > Functions should be separated by two empty lines. Done. > ...
8 years, 2 months ago (2012-10-22 17:11:46 UTC) #6
Michael Starzinger
LGTM (with a macro-nit). https://codereview.chromium.org/11191029/diff/11001/src/arm/assembler-arm.cc File src/arm/assembler-arm.cc (right): https://codereview.chromium.org/11191029/diff/11001/src/arm/assembler-arm.cc#newcode2806 src/arm/assembler-arm.cc:2806: GetLdrRegisterImmediateOffset(instr) == 0)); This change ...
8 years, 1 month ago (2012-10-25 13:03:37 UTC) #7
Michael Starzinger
So I am not sure if you want to landed right away or if you ...
8 years, 1 month ago (2012-10-25 13:20:08 UTC) #8
JF
On 2012/10/25 13:20:08, Michael Starzinger wrote: > So I am not sure if you want ...
8 years, 1 month ago (2012-10-25 14:59:40 UTC) #9
Michael Starzinger
You could add a flag for that in flag-definitions.h, default that flag to false and ...
8 years, 1 month ago (2012-10-25 15:11:33 UTC) #10
JF
On 2012/10/25 15:11:33, Michael Starzinger wrote: > You could add a flag for that in ...
8 years, 1 month ago (2012-10-25 15:46:33 UTC) #11
hans
Any update on this? I'm looking forward to seeing this patch landed, because the "synthesise ...
8 years ago (2012-11-26 11:59:10 UTC) #12
JF
Sorry for the delay, I've been trying to get something in for NaCl before our ...
8 years ago (2012-11-26 16:52:54 UTC) #13
JF
I've finally come back to this issue and put it behind a flag that defaults ...
8 years ago (2012-11-30 21:43:04 UTC) #14
ulan
Thanks, JF! It looks good with one comment. Do we land it behind the flag ...
8 years ago (2012-12-04 10:13:37 UTC) #15
JF
> Do we land it behind the flag and then land constant blinding? I am ...
8 years ago (2012-12-04 17:38:17 UTC) #16
JF
DO you want to check in the patch for now, to prevent it from being ...
8 years ago (2012-12-06 18:46:40 UTC) #17
hans
On 2012/12/06 18:46:40, JF wrote: > DO you want to check in the patch for ...
8 years ago (2012-12-06 18:52:26 UTC) #18
ulan
> DO you want to check in the patch for now, to prevent it from ...
8 years ago (2012-12-10 10:28:30 UTC) #19
JF
On 2012/12/10 10:28:30, ulan wrote: > > DO you want to check in the patch ...
8 years ago (2012-12-10 16:55:38 UTC) #20
ulan
7 years, 12 months ago (2012-12-28 13:12:48 UTC) #21
LGTM, I will fix the nit and land it for you.

https://chromiumcodereview.appspot.com/11191029/diff/20002/src/arm/assembler-...
File src/arm/assembler-arm.cc (right):

https://chromiumcodereview.appspot.com/11191029/diff/20002/src/arm/assembler-...
src/arm/assembler-arm.cc:2861: ASSERT(!IsVldrDPcImmediateOffset(instr));
I'll move this after the instr initialization, otherwise it doesn't compile in
debug mode.

Powered by Google App Engine
This is Rietveld 408576698