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

Side by Side Diff: src/arm/code-stubs-arm.cc

Issue 352583008: Rollback to Version 3.28.4 (based on bleeding_edge revision r22031) (Closed) Base URL: https://v8.googlecode.com/svn/trunk
Patch Set: Created 6 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « include/v8-debug.h ('k') | src/arm/debug-arm.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2012 the V8 project authors. All rights reserved. 1 // Copyright 2012 the V8 project authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "src/v8.h" 5 #include "src/v8.h"
6 6
7 #if V8_TARGET_ARCH_ARM 7 #if V8_TARGET_ARCH_ARM
8 8
9 #include "src/bootstrapper.h" 9 #include "src/bootstrapper.h"
10 #include "src/code-stubs.h" 10 #include "src/code-stubs.h"
(...skipping 69 matching lines...) Expand 10 before | Expand all | Expand 10 after
80 80
81 void RegExpConstructResultStub::InitializeInterfaceDescriptor( 81 void RegExpConstructResultStub::InitializeInterfaceDescriptor(
82 CodeStubInterfaceDescriptor* descriptor) { 82 CodeStubInterfaceDescriptor* descriptor) {
83 Register registers[] = { r2, r1, r0 }; 83 Register registers[] = { r2, r1, r0 };
84 descriptor->Initialize( 84 descriptor->Initialize(
85 ARRAY_SIZE(registers), registers, 85 ARRAY_SIZE(registers), registers,
86 Runtime::FunctionForId(Runtime::kRegExpConstructResult)->entry); 86 Runtime::FunctionForId(Runtime::kRegExpConstructResult)->entry);
87 } 87 }
88 88
89 89
90 void LoadFieldStub::InitializeInterfaceDescriptor(
91 CodeStubInterfaceDescriptor* descriptor) {
92 Register registers[] = { r0 };
93 descriptor->Initialize(ARRAY_SIZE(registers), registers);
94 }
95
96
97 void KeyedLoadFieldStub::InitializeInterfaceDescriptor(
98 CodeStubInterfaceDescriptor* descriptor) {
99 Register registers[] = { r1 };
100 descriptor->Initialize(ARRAY_SIZE(registers), registers);
101 }
102
103
104 void StringLengthStub::InitializeInterfaceDescriptor(
105 CodeStubInterfaceDescriptor* descriptor) {
106 Register registers[] = { r0, r2 };
107 descriptor->Initialize(ARRAY_SIZE(registers), registers);
108 }
109
110
111 void KeyedStringLengthStub::InitializeInterfaceDescriptor(
112 CodeStubInterfaceDescriptor* descriptor) {
113 Register registers[] = { r1, r0 };
114 descriptor->Initialize(ARRAY_SIZE(registers), registers);
115 }
116
117
90 void KeyedStoreFastElementStub::InitializeInterfaceDescriptor( 118 void KeyedStoreFastElementStub::InitializeInterfaceDescriptor(
91 CodeStubInterfaceDescriptor* descriptor) { 119 CodeStubInterfaceDescriptor* descriptor) {
92 Register registers[] = { r2, r1, r0 }; 120 Register registers[] = { r2, r1, r0 };
93 descriptor->Initialize( 121 descriptor->Initialize(
94 ARRAY_SIZE(registers), registers, 122 ARRAY_SIZE(registers), registers,
95 FUNCTION_ADDR(KeyedStoreIC_MissFromStubFailure)); 123 FUNCTION_ADDR(KeyedStoreIC_MissFromStubFailure));
96 } 124 }
97 125
98 126
99 void TransitionElementsKindStub::InitializeInterfaceDescriptor( 127 void TransitionElementsKindStub::InitializeInterfaceDescriptor(
(...skipping 2161 matching lines...) Expand 10 before | Expand all | Expand 10 after
2261 __ bind(&runtime); 2289 __ bind(&runtime);
2262 __ TailCallRuntime(Runtime::kNewStrictArguments, 3, 1); 2290 __ TailCallRuntime(Runtime::kNewStrictArguments, 3, 1);
2263 } 2291 }
2264 2292
2265 2293
2266 void RegExpExecStub::Generate(MacroAssembler* masm) { 2294 void RegExpExecStub::Generate(MacroAssembler* masm) {
2267 // Just jump directly to runtime if native RegExp is not selected at compile 2295 // Just jump directly to runtime if native RegExp is not selected at compile
2268 // time or if regexp entry in generated code is turned off runtime switch or 2296 // time or if regexp entry in generated code is turned off runtime switch or
2269 // at compilation. 2297 // at compilation.
2270 #ifdef V8_INTERPRETED_REGEXP 2298 #ifdef V8_INTERPRETED_REGEXP
2271 __ TailCallRuntime(Runtime::kRegExpExecRT, 4, 1); 2299 __ TailCallRuntime(Runtime::kRegExpExec, 4, 1);
2272 #else // V8_INTERPRETED_REGEXP 2300 #else // V8_INTERPRETED_REGEXP
2273 2301
2274 // Stack frame on entry. 2302 // Stack frame on entry.
2275 // sp[0]: last_match_info (expected JSArray) 2303 // sp[0]: last_match_info (expected JSArray)
2276 // sp[4]: previous index 2304 // sp[4]: previous index
2277 // sp[8]: subject string 2305 // sp[8]: subject string
2278 // sp[12]: JSRegExp object 2306 // sp[12]: JSRegExp object
2279 2307
2280 const int kLastMatchInfoOffset = 0 * kPointerSize; 2308 const int kLastMatchInfoOffset = 0 * kPointerSize;
2281 const int kPreviousIndexOffset = 1 * kPointerSize; 2309 const int kPreviousIndexOffset = 1 * kPointerSize;
(...skipping 2800 matching lines...) Expand 10 before | Expand all | Expand 10 after
5082 MemOperand(fp, 6 * kPointerSize), 5110 MemOperand(fp, 6 * kPointerSize),
5083 NULL); 5111 NULL);
5084 } 5112 }
5085 5113
5086 5114
5087 #undef __ 5115 #undef __
5088 5116
5089 } } // namespace v8::internal 5117 } } // namespace v8::internal
5090 5118
5091 #endif // V8_TARGET_ARCH_ARM 5119 #endif // V8_TARGET_ARCH_ARM
OLDNEW
« no previous file with comments | « include/v8-debug.h ('k') | src/arm/debug-arm.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698