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

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

Issue 1304633002: Correctify instanceof and make it optimizable. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Add arm64 port. Created 5 years, 4 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
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/code-stubs.h" 5 #include "src/code-stubs.h"
6 6
7 #include <sstream> 7 #include <sstream>
8 8
9 #include "src/bootstrapper.h" 9 #include "src/bootstrapper.h"
10 #include "src/cpu-profiler.h" 10 #include "src/cpu-profiler.h"
(...skipping 585 matching lines...) Expand 10 before | Expand all | Expand 10 after
596 void CallIC_ArrayStub::PrintState(std::ostream& os) const { // NOLINT 596 void CallIC_ArrayStub::PrintState(std::ostream& os) const { // NOLINT
597 os << state() << " (Array)"; 597 os << state() << " (Array)";
598 } 598 }
599 599
600 600
601 void CallICStub::PrintState(std::ostream& os) const { // NOLINT 601 void CallICStub::PrintState(std::ostream& os) const { // NOLINT
602 os << state(); 602 os << state();
603 } 603 }
604 604
605 605
606 void InstanceofStub::PrintName(std::ostream& os) const { // NOLINT
607 os << "InstanceofStub";
608 if (HasArgsInRegisters()) os << "_REGS";
609 if (HasCallSiteInlineCheck()) os << "_INLINE";
610 if (ReturnTrueFalseObject()) os << "_TRUEFALSE";
611 }
612
613
614 void JSEntryStub::FinishCode(Handle<Code> code) { 606 void JSEntryStub::FinishCode(Handle<Code> code) {
615 Handle<FixedArray> handler_table = 607 Handle<FixedArray> handler_table =
616 code->GetIsolate()->factory()->NewFixedArray(1, TENURED); 608 code->GetIsolate()->factory()->NewFixedArray(1, TENURED);
617 handler_table->set(0, Smi::FromInt(handler_offset_)); 609 handler_table->set(0, Smi::FromInt(handler_offset_));
618 code->set_handler_table(*handler_table); 610 code->set_handler_table(*handler_table);
619 } 611 }
620 612
621 613
622 void LoadDictionaryElementStub::InitializeDescriptor( 614 void LoadDictionaryElementStub::InitializeDescriptor(
623 CodeStubDescriptor* descriptor) { 615 CodeStubDescriptor* descriptor) {
(...skipping 446 matching lines...) Expand 10 before | Expand all | Expand 10 after
1070 1062
1071 if (type->Is(Type::UntaggedPointer())) { 1063 if (type->Is(Type::UntaggedPointer())) {
1072 return Representation::External(); 1064 return Representation::External();
1073 } 1065 }
1074 1066
1075 DCHECK(!type->Is(Type::Untagged())); 1067 DCHECK(!type->Is(Type::Untagged()));
1076 return Representation::Tagged(); 1068 return Representation::Tagged();
1077 } 1069 }
1078 } // namespace internal 1070 } // namespace internal
1079 } // namespace v8 1071 } // namespace v8
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698