Chromium Code Reviews

Issue 9699071: MIPS: Branch delay slot and other optimizations. (Closed)

Created:
8 years, 9 months ago by kalmard
Modified:
8 years, 9 months ago
Reviewers:
kisg, Paul Lind, danno
CC:
v8-dev
Visibility:
Public.

Description

MIPS: Branch delay slot and other optimizations. List of changes: -added a minor optimization to the Simulator that quickly skips nops in the delay slot -slightly re-worked CEntryStub to save a few instructions CEntryStub now expects the following values: -s0: number of arguments including receiver -s1: size of arguments excluding receiver -s2: pointer to builtin function Two new MacroAssembler functions were added to make usage more convenient: -PrepareCEntryArgs(int num_args) to set up s0 and s1 -PrepareCEntryFunction(const ExternalReference&) to set up s2 -removed branch delay slot nops from the most frequently used code areas -reorganized some code to execute fewer instructions -utilized the delay slot of most Ret instructions This does not cover all Rets, only the most obvious cases. Also added a special version of DropAndRet that utilizes the delay slot. -added some comments to code areas where explanation of the register/delay slot usage may be needed -added an optimization to Jump so it doesn't always pre-load the target register BUG= TEST= Committed: https://code.google.com/p/v8/source/detail?r=11099

Patch Set 1 #

Unified diffs Side-by-side diffs Stats (+203 lines, -154 lines)
M src/mips/builtins-mips.cc View 1 chunk +4 lines, -2 lines 0 comments
M src/mips/code-stubs-mips.cc View 47 chunks +95 lines, -99 lines 0 comments
M src/mips/debug-mips.cc View 1 chunk +2 lines, -2 lines 0 comments
M src/mips/ic-mips.cc View 3 chunks +4 lines, -4 lines 0 comments
M src/mips/lithium-codegen-mips.cc View 1 chunk +3 lines, -7 lines 0 comments
M src/mips/macro-assembler-mips.h View 5 chunks +30 lines, -9 lines 0 comments
M src/mips/macro-assembler-mips.cc View 13 chunks +51 lines, -26 lines 0 comments
M src/mips/simulator-mips.h View 1 chunk +8 lines, -0 lines 0 comments
M src/mips/stub-cache-mips.cc View 4 chunks +6 lines, -5 lines 0 comments

Messages

Total messages: 2 (0 generated)
kalmard
8 years, 9 months ago (2012-03-15 12:01:17 UTC) #1
danno
8 years, 9 months ago (2012-03-21 08:39:45 UTC) #2
lgtm

Powered by Google App Engine