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

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

Issue 546683003: Make KeyedLoads from a sloppy arguments array use a handler. (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Webkit test found bug, updating. Created 6 years, 3 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 | « src/code-stubs.h ('k') | src/code-stubs-hydrogen.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 #include "src/bootstrapper.h" 7 #include "src/bootstrapper.h"
8 #include "src/code-stubs.h" 8 #include "src/code-stubs.h"
9 #include "src/cpu-profiler.h" 9 #include "src/cpu-profiler.h"
10 #include "src/factory.h" 10 #include "src/factory.h"
(...skipping 568 matching lines...) Expand 10 before | Expand all | Expand 10 after
579 void KeyedLoadGenericStub::InitializeDescriptor( 579 void KeyedLoadGenericStub::InitializeDescriptor(
580 CodeStubDescriptor* descriptor) { 580 CodeStubDescriptor* descriptor) {
581 descriptor->Initialize( 581 descriptor->Initialize(
582 Runtime::FunctionForId(Runtime::kKeyedGetProperty)->entry); 582 Runtime::FunctionForId(Runtime::kKeyedGetProperty)->entry);
583 } 583 }
584 584
585 585
586 void HandlerStub::InitializeDescriptor(CodeStubDescriptor* descriptor) { 586 void HandlerStub::InitializeDescriptor(CodeStubDescriptor* descriptor) {
587 if (kind() == Code::STORE_IC) { 587 if (kind() == Code::STORE_IC) {
588 descriptor->Initialize(FUNCTION_ADDR(StoreIC_MissFromStubFailure)); 588 descriptor->Initialize(FUNCTION_ADDR(StoreIC_MissFromStubFailure));
589 } else if (kind() == Code::KEYED_LOAD_IC) {
590 descriptor->Initialize(FUNCTION_ADDR(KeyedLoadIC_MissFromStubFailure));
589 } 591 }
590 } 592 }
591 593
592 594
593 CallInterfaceDescriptor HandlerStub::GetCallInterfaceDescriptor() { 595 CallInterfaceDescriptor HandlerStub::GetCallInterfaceDescriptor() {
594 if (kind() == Code::LOAD_IC) { 596 if (kind() == Code::LOAD_IC || kind() == Code::KEYED_LOAD_IC) {
595 return LoadDescriptor(isolate()); 597 return LoadDescriptor(isolate());
596 } else { 598 } else {
597 DCHECK_EQ(Code::STORE_IC, kind()); 599 DCHECK_EQ(Code::STORE_IC, kind());
598 return StoreDescriptor(isolate()); 600 return StoreDescriptor(isolate());
599 } 601 }
600 } 602 }
601 603
602 604
603 void StoreFastElementStub::InitializeDescriptor( 605 void StoreFastElementStub::InitializeDescriptor(
604 CodeStubDescriptor* descriptor) { 606 CodeStubDescriptor* descriptor) {
(...skipping 347 matching lines...) Expand 10 before | Expand all | Expand 10 after
952 } 954 }
953 955
954 956
955 InternalArrayConstructorStub::InternalArrayConstructorStub( 957 InternalArrayConstructorStub::InternalArrayConstructorStub(
956 Isolate* isolate) : PlatformCodeStub(isolate) { 958 Isolate* isolate) : PlatformCodeStub(isolate) {
957 InternalArrayConstructorStubBase::GenerateStubsAheadOfTime(isolate); 959 InternalArrayConstructorStubBase::GenerateStubsAheadOfTime(isolate);
958 } 960 }
959 961
960 962
961 } } // namespace v8::internal 963 } } // namespace v8::internal
OLDNEW
« no previous file with comments | « src/code-stubs.h ('k') | src/code-stubs-hydrogen.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698