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

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

Issue 224903005: Reland "create a function call IC" (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Comments. Created 6 years, 8 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/debug.h » ('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 // Redistribution and use in source and binary forms, with or without 2 // Redistribution and use in source and binary forms, with or without
3 // modification, are permitted provided that the following conditions are 3 // modification, are permitted provided that the following conditions are
4 // met: 4 // met:
5 // 5 //
6 // * Redistributions of source code must retain the above copyright 6 // * Redistributions of source code must retain the above copyright
7 // notice, this list of conditions and the following disclaimer. 7 // notice, this list of conditions and the following disclaimer.
8 // * Redistributions in binary form must reproduce the above 8 // * Redistributions in binary form must reproduce the above
9 // copyright notice, this list of conditions and the following 9 // copyright notice, this list of conditions and the following
10 // disclaimer in the documentation and/or other materials provided 10 // disclaimer in the documentation and/or other materials provided
(...skipping 483 matching lines...) Expand 10 before | Expand all | Expand 10 after
494 494
495 495
496 Type* CompareNilICStub::GetInputType(Zone* zone, Handle<Map> map) { 496 Type* CompareNilICStub::GetInputType(Zone* zone, Handle<Map> map) {
497 Type* output_type = GetType(zone, map); 497 Type* output_type = GetType(zone, map);
498 Type* nil_type = 498 Type* nil_type =
499 nil_value_ == kNullValue ? Type::Null(zone) : Type::Undefined(zone); 499 nil_value_ == kNullValue ? Type::Null(zone) : Type::Undefined(zone);
500 return Type::Union(output_type, nil_type, zone); 500 return Type::Union(output_type, nil_type, zone);
501 } 501 }
502 502
503 503
504 void CallICStub::PrintState(StringStream* stream) {
505 state_.Print(stream);
506 }
507
508
504 void InstanceofStub::PrintName(StringStream* stream) { 509 void InstanceofStub::PrintName(StringStream* stream) {
505 const char* args = ""; 510 const char* args = "";
506 if (HasArgsInRegisters()) { 511 if (HasArgsInRegisters()) {
507 args = "_REGS"; 512 args = "_REGS";
508 } 513 }
509 514
510 const char* inline_check = ""; 515 const char* inline_check = "";
511 if (HasCallSiteInlineCheck()) { 516 if (HasCallSiteInlineCheck()) {
512 inline_check = "_INLINE"; 517 inline_check = "_INLINE";
513 } 518 }
(...skipping 62 matching lines...) Expand 10 before | Expand all | Expand 10 after
576 case READ_ELEMENT: stream->Add("ReadElement"); break; 581 case READ_ELEMENT: stream->Add("ReadElement"); break;
577 case NEW_SLOPPY_FAST: stream->Add("NewSloppyFast"); break; 582 case NEW_SLOPPY_FAST: stream->Add("NewSloppyFast"); break;
578 case NEW_SLOPPY_SLOW: stream->Add("NewSloppySlow"); break; 583 case NEW_SLOPPY_SLOW: stream->Add("NewSloppySlow"); break;
579 case NEW_STRICT: stream->Add("NewStrict"); break; 584 case NEW_STRICT: stream->Add("NewStrict"); break;
580 } 585 }
581 } 586 }
582 587
583 588
584 void CallFunctionStub::PrintName(StringStream* stream) { 589 void CallFunctionStub::PrintName(StringStream* stream) {
585 stream->Add("CallFunctionStub_Args%d", argc_); 590 stream->Add("CallFunctionStub_Args%d", argc_);
586 if (RecordCallTarget()) stream->Add("_Recording");
587 } 591 }
588 592
589 593
590 void CallConstructStub::PrintName(StringStream* stream) { 594 void CallConstructStub::PrintName(StringStream* stream) {
591 stream->Add("CallConstructStub"); 595 stream->Add("CallConstructStub");
592 if (RecordCallTarget()) stream->Add("_Recording"); 596 if (RecordCallTarget()) stream->Add("_Recording");
593 } 597 }
594 598
595 599
596 void ArrayConstructorStub::PrintName(StringStream* stream) { 600 void ArrayConstructorStub::PrintName(StringStream* stream) {
(...skipping 218 matching lines...) Expand 10 before | Expand all | Expand 10 after
815 InstallDescriptor(isolate, &stub3); 819 InstallDescriptor(isolate, &stub3);
816 } 820 }
817 821
818 InternalArrayConstructorStub::InternalArrayConstructorStub( 822 InternalArrayConstructorStub::InternalArrayConstructorStub(
819 Isolate* isolate) { 823 Isolate* isolate) {
820 InternalArrayConstructorStubBase::GenerateStubsAheadOfTime(isolate); 824 InternalArrayConstructorStubBase::GenerateStubsAheadOfTime(isolate);
821 } 825 }
822 826
823 827
824 } } // namespace v8::internal 828 } } // namespace v8::internal
OLDNEW
« no previous file with comments | « src/code-stubs.h ('k') | src/debug.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698