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

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

Issue 133683002: Retry "Templatise type representation" after making clang happy (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Created 6 years, 11 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/ast.cc ('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 // 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 462 matching lines...) Expand 10 before | Expand all | Expand 10 after
473 if (Contains(MONOMORPHIC_MAP)) printer.Add("MonomorphicMap"); 473 if (Contains(MONOMORPHIC_MAP)) printer.Add("MonomorphicMap");
474 if (Contains(GENERIC)) printer.Add("Generic"); 474 if (Contains(GENERIC)) printer.Add("Generic");
475 stream->Add(")"); 475 stream->Add(")");
476 } 476 }
477 477
478 478
479 Handle<Type> CompareNilICStub::GetType( 479 Handle<Type> CompareNilICStub::GetType(
480 Isolate* isolate, 480 Isolate* isolate,
481 Handle<Map> map) { 481 Handle<Map> map) {
482 if (state_.Contains(CompareNilICStub::GENERIC)) { 482 if (state_.Contains(CompareNilICStub::GENERIC)) {
483 return handle(Type::Any(), isolate); 483 return Type::Any(isolate);
484 } 484 }
485 485
486 Handle<Type> result(Type::None(), isolate); 486 Handle<Type> result = Type::None(isolate);
487 if (state_.Contains(CompareNilICStub::UNDEFINED)) { 487 if (state_.Contains(CompareNilICStub::UNDEFINED)) {
488 result = handle(Type::Union(result, handle(Type::Undefined(), isolate)), 488 result = Type::Union(result, Type::Undefined(isolate), isolate);
489 isolate);
490 } 489 }
491 if (state_.Contains(CompareNilICStub::NULL_TYPE)) { 490 if (state_.Contains(CompareNilICStub::NULL_TYPE)) {
492 result = handle(Type::Union(result, handle(Type::Null(), isolate)), 491 result = Type::Union(result, Type::Null(isolate), isolate);
493 isolate);
494 } 492 }
495 if (state_.Contains(CompareNilICStub::MONOMORPHIC_MAP)) { 493 if (state_.Contains(CompareNilICStub::MONOMORPHIC_MAP)) {
496 Type* type = map.is_null() ? Type::Detectable() : Type::Class(map); 494 Handle<Type> type = map.is_null()
497 result = handle(Type::Union(result, handle(type, isolate)), isolate); 495 ? Type::Detectable(isolate) : Type::Class(map, isolate);
496 result = Type::Union(result, type, isolate);
498 } 497 }
499 498
500 return result; 499 return result;
501 } 500 }
502 501
503 502
504 Handle<Type> CompareNilICStub::GetInputType( 503 Handle<Type> CompareNilICStub::GetInputType(
505 Isolate* isolate, 504 Isolate* isolate,
506 Handle<Map> map) { 505 Handle<Map> map) {
507 Handle<Type> output_type = GetType(isolate, map); 506 Handle<Type> output_type = GetType(isolate, map);
508 Handle<Type> nil_type = handle(nil_value_ == kNullValue 507 Handle<Type> nil_type = nil_value_ == kNullValue
509 ? Type::Null() : Type::Undefined(), isolate); 508 ? Type::Null(isolate) : Type::Undefined(isolate);
510 return handle(Type::Union(output_type, nil_type), isolate); 509 return Type::Union(output_type, nil_type, isolate);
511 } 510 }
512 511
513 512
514 void InstanceofStub::PrintName(StringStream* stream) { 513 void InstanceofStub::PrintName(StringStream* stream) {
515 const char* args = ""; 514 const char* args = "";
516 if (HasArgsInRegisters()) { 515 if (HasArgsInRegisters()) {
517 args = "_REGS"; 516 args = "_REGS";
518 } 517 }
519 518
520 const char* inline_check = ""; 519 const char* inline_check = "";
(...skipping 293 matching lines...) Expand 10 before | Expand all | Expand 10 after
814 InstallDescriptor(isolate, &stub3); 813 InstallDescriptor(isolate, &stub3);
815 } 814 }
816 815
817 InternalArrayConstructorStub::InternalArrayConstructorStub( 816 InternalArrayConstructorStub::InternalArrayConstructorStub(
818 Isolate* isolate) { 817 Isolate* isolate) {
819 InternalArrayConstructorStubBase::GenerateStubsAheadOfTime(isolate); 818 InternalArrayConstructorStubBase::GenerateStubsAheadOfTime(isolate);
820 } 819 }
821 820
822 821
823 } } // namespace v8::internal 822 } } // namespace v8::internal
OLDNEW
« no previous file with comments | « src/ast.cc ('k') | src/code-stubs-hydrogen.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698