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

Side by Side Diff: src/stub-cache.cc

Issue 603028: Compile very thin code to access objects on which indexed interceptor is set. (Closed)
Patch Set: Created 10 years, 10 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
« no previous file with comments | « src/stub-cache.h ('k') | src/x64/ic-x64.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 2006-2009 the V8 project authors. All rights reserved. 1 // Copyright 2006-2009 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 902 matching lines...) Expand 10 before | Expand all | Expand 10 after
913 JSObject* recv = JSObject::cast(args[0]); 913 JSObject* recv = JSObject::cast(args[0]);
914 String* name = String::cast(args[1]); 914 String* name = String::cast(args[1]);
915 Object* value = args[2]; 915 Object* value = args[2];
916 ASSERT(recv->HasNamedInterceptor()); 916 ASSERT(recv->HasNamedInterceptor());
917 PropertyAttributes attr = NONE; 917 PropertyAttributes attr = NONE;
918 Object* result = recv->SetPropertyWithInterceptor(name, value, attr); 918 Object* result = recv->SetPropertyWithInterceptor(name, value, attr);
919 return result; 919 return result;
920 } 920 }
921 921
922 922
923 Object* KeyedLoadPropertyWithInterceptor(Arguments args) {
924 JSObject* receiver = JSObject::cast(args[0]);
925 uint32_t index = Smi::cast(args[1])->value();
926 return receiver->GetElementWithInterceptor(receiver, index);
927 }
928
929
923 Object* StubCompiler::CompileCallInitialize(Code::Flags flags) { 930 Object* StubCompiler::CompileCallInitialize(Code::Flags flags) {
924 HandleScope scope; 931 HandleScope scope;
925 int argc = Code::ExtractArgumentsCountFromFlags(flags); 932 int argc = Code::ExtractArgumentsCountFromFlags(flags);
926 CallIC::GenerateInitialize(masm(), argc); 933 CallIC::GenerateInitialize(masm(), argc);
927 Object* result = GetCodeWithFlags(flags, "CompileCallInitialize"); 934 Object* result = GetCodeWithFlags(flags, "CompileCallInitialize");
928 if (!result->IsFailure()) { 935 if (!result->IsFailure()) {
929 Counters::call_initialize_stubs.Increment(); 936 Counters::call_initialize_stubs.Increment();
930 Code* code = Code::cast(result); 937 Code* code = Code::cast(result);
931 USE(code); 938 USE(code);
932 LOG(CodeCreateEvent(Logger::CALL_INITIALIZE_TAG, 939 LOG(CodeCreateEvent(Logger::CALL_INITIALIZE_TAG,
(...skipping 179 matching lines...) Expand 10 before | Expand all | Expand 10 after
1112 if (!result->IsFailure()) { 1119 if (!result->IsFailure()) {
1113 Code* code = Code::cast(result); 1120 Code* code = Code::cast(result);
1114 USE(code); 1121 USE(code);
1115 LOG(CodeCreateEvent(Logger::STUB_TAG, code, "ConstructStub")); 1122 LOG(CodeCreateEvent(Logger::STUB_TAG, code, "ConstructStub"));
1116 } 1123 }
1117 return result; 1124 return result;
1118 } 1125 }
1119 1126
1120 1127
1121 } } // namespace v8::internal 1128 } } // namespace v8::internal
OLDNEW
« no previous file with comments | « src/stub-cache.h ('k') | src/x64/ic-x64.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698