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

Issue 23530066: Lazily save double registers for HCallRuntime instructions within Hydrogen code stubs. (Closed)

Created:
7 years, 3 months ago by Benedikt Meurer
Modified:
7 years, 2 months ago
Reviewers:
danno
CC:
v8-dev
Visibility:
Public.

Description

Lazily save double registers for HCallRuntime instructions within Hydrogen code stubs. Right now we eagerly save all allocatable double registers upon entry to every Hydrogen code stub that uses HCallRuntime, and restore them when we return. Since the HCallRuntime is on the fallback path for code stubs, this is both a waste of time and stack space in almost every case. This patch adds a flag to the HCallRuntime, which controls whether the instruction saves the double register itself (using the save doubles flag for the CEntryStub), or whether its up the surrounding code to handle the clobbering of double registers. R=danno@chromium.org Committed: https://code.google.com/p/v8/source/detail?r=17044

Patch Set 1 #

Unified diffs Side-by-side diffs Delta from patch set Stats (+115 lines, -75 lines) Patch
M src/arm/lithium-arm.h View 2 chunks +6 lines, -1 line 0 comments Download
M src/arm/lithium-arm.cc View 2 chunks +4 lines, -1 line 0 comments Download
M src/arm/lithium-codegen-arm.h View 1 chunk +2 lines, -1 line 0 comments Download
M src/arm/lithium-codegen-arm.cc View 1 chunk +4 lines, -2 lines 0 comments Download
M src/arm/macro-assembler-arm.h View 1 chunk +10 lines, -3 lines 0 comments Download
M src/arm/macro-assembler-arm.cc View 2 chunks +3 lines, -16 lines 0 comments Download
M src/hydrogen.h View 1 chunk +17 lines, -0 lines 0 comments Download
M src/hydrogen-instructions.h View 2 chunks +7 lines, -1 line 0 comments Download
M src/hydrogen-instructions.cc View 1 chunk +3 lines, -0 lines 0 comments Download
M src/ia32/lithium-codegen-ia32.h View 1 chunk +2 lines, -1 line 0 comments Download
M src/ia32/lithium-codegen-ia32.cc View 2 chunks +4 lines, -3 lines 0 comments Download
M src/ia32/lithium-ia32.h View 1 chunk +5 lines, -0 lines 0 comments Download
M src/ia32/lithium-ia32.cc View 2 chunks +4 lines, -1 line 0 comments Download
M src/ia32/macro-assembler-ia32.h View 1 chunk +10 lines, -3 lines 0 comments Download
M src/ia32/macro-assembler-ia32.cc View 2 chunks +4 lines, -17 lines 0 comments Download
M src/x64/lithium-codegen-x64.h View 1 chunk +2 lines, -1 line 0 comments Download
M src/x64/lithium-codegen-x64.cc View 2 chunks +5 lines, -3 lines 0 comments Download
M src/x64/lithium-x64.h View 2 chunks +6 lines, -1 line 0 comments Download
M src/x64/lithium-x64.cc View 2 chunks +4 lines, -1 line 0 comments Download
M src/x64/macro-assembler-x64.h View 1 chunk +10 lines, -3 lines 0 comments Download
M src/x64/macro-assembler-x64.cc View 2 chunks +3 lines, -16 lines 0 comments Download

Messages

Total messages: 3 (0 generated)
Benedikt Meurer
Hey Danno, This is the patch we're talking about, that avoids saving all allocatable double ...
7 years, 3 months ago (2013-09-19 12:19:30 UTC) #1
danno
lgtm
7 years, 2 months ago (2013-10-01 11:55:02 UTC) #2
Benedikt Meurer
7 years, 2 months ago (2013-10-01 11:57:39 UTC) #3
Message was sent while issue was closed.
Committed patchset #1 manually as r17044 (presubmit successful).

Powered by Google App Engine
This is Rietveld 408576698