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

Issue 15085026: ARM: Smi refactoring and improvements. (Closed)

Created:
7 years, 7 months ago by Rodolph Perfetta
Modified:
7 years, 7 months ago
Reviewers:
ulan, danno
CC:
v8-dev
Visibility:
Public.

Description

ARM: Smi refactoring and improvements. Refactoring: * consistent use of SmiTag/Untag * added a few Smi macros and helpers Improvements * small optimisations (e.g. merging untag and cmp #0) * added fixed point to double conversion instructions for simpler conversions More on the last point: a Smi can be seen as a fixed point number with the a one bit fractional part. Fixed to double instructions allow us to convert a Smi to a double without untagging. BUG=none TEST=none Committed: https://code.google.com/p/v8/source/detail?r=14724

Patch Set 1 #

Total comments: 2
Unified diffs Side-by-side diffs Delta from patch set Stats (+221 lines, -316 lines) Patch
M src/arm/assembler-arm.h View 3 chunks +20 lines, -0 lines 0 comments Download
M src/arm/assembler-arm.cc View 1 chunk +17 lines, -0 lines 0 comments Download
M src/arm/builtins-arm.cc View 22 chunks +19 lines, -25 lines 0 comments Download
M src/arm/code-stubs-arm.cc View 39 chunks +44 lines, -67 lines 0 comments Download
M src/arm/codegen-arm.cc View 3 chunks +5 lines, -5 lines 0 comments Download
M src/arm/debug-arm.cc View 2 chunks +2 lines, -2 lines 0 comments Download
M src/arm/disasm-arm.cc View 2 chunks +8 lines, -0 lines 0 comments Download
M src/arm/full-codegen-arm.cc View 8 chunks +8 lines, -20 lines 0 comments Download
M src/arm/ic-arm.cc View 6 chunks +6 lines, -10 lines 0 comments Download
M src/arm/lithium-codegen-arm.cc View 15 chunks +17 lines, -20 lines 0 comments Download
M src/arm/macro-assembler-arm.h View 5 chunks +19 lines, -47 lines 2 comments Download
M src/arm/macro-assembler-arm.cc View 11 chunks +21 lines, -77 lines 0 comments Download
M src/arm/simulator-arm.cc View 2 chunks +8 lines, -0 lines 0 comments Download
M src/arm/stub-cache-arm.cc View 21 chunks +16 lines, -43 lines 0 comments Download
M test/cctest/test-assembler-arm.cc View 4 chunks +9 lines, -0 lines 0 comments Download
M test/cctest/test-disasm-arm.cc View 1 chunk +2 lines, -0 lines 0 comments Download

Messages

Total messages: 4 (0 generated)
Rodolph Perfetta
7 years, 7 months ago (2013-05-16 15:41:32 UTC) #1
ulan
LGTM https://codereview.chromium.org/15085026/diff/1/src/arm/macro-assembler-arm.h File src/arm/macro-assembler-arm.h (right): https://codereview.chromium.org/15085026/diff/1/src/arm/macro-assembler-arm.h#newcode1196 src/arm/macro-assembler-arm.h:1196: void TrySmiTag(Register reg, Register src, Label* not_a_smi) { ...
7 years, 7 months ago (2013-05-17 09:57:14 UTC) #2
Rodolph Perfetta
https://codereview.chromium.org/15085026/diff/1/src/arm/macro-assembler-arm.h File src/arm/macro-assembler-arm.h (right): https://codereview.chromium.org/15085026/diff/1/src/arm/macro-assembler-arm.h#newcode1196 src/arm/macro-assembler-arm.h:1196: void TrySmiTag(Register reg, Register src, Label* not_a_smi) { If ...
7 years, 7 months ago (2013-05-17 11:44:55 UTC) #3
ulan
7 years, 7 months ago (2013-05-17 11:56:12 UTC) #4
> If you prefer the flexibility of controlling the scratch register let 
> me know and I'll upload a new patch.
I don't have strong preference. I was concerned that ip gets aliased with other
scratch registers of the caller. If only masm can use ip, then it looks good.

Powered by Google App Engine
This is Rietveld 408576698