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

Side by Side Diff: src/hydrogen.cc

Issue 7356013: Implement Object.prototype.hasOwnProperty in generated code. (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Created 9 years, 5 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
OLDNEW
1 // Copyright 2011 the V8 project authors. All rights reserved. 1 // Copyright 2011 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 6125 matching lines...) Expand 10 before | Expand all | Expand 10 after
6136 Drop(1); 6136 Drop(1);
6137 return ast_context()->ReturnInstruction(result, call->id()); 6137 return ast_context()->ReturnInstruction(result, call->id());
6138 } 6138 }
6139 6139
6140 6140
6141 void HGraphBuilder::GenerateMathSqrt(CallRuntime* call) { 6141 void HGraphBuilder::GenerateMathSqrt(CallRuntime* call) {
6142 return Bailout("inlined runtime function: MathSqrt"); 6142 return Bailout("inlined runtime function: MathSqrt");
6143 } 6143 }
6144 6144
6145 6145
6146 void HGraphBuilder::GenerateHasOwnProperty(CallRuntime* call) {
6147 ASSERT_EQ(2, call->arguments()->length());
6148 CHECK_ALIVE(VisitArgumentList(call->arguments()));
6149 HValue* context = environment()->LookupContext();
6150 HCallStub* result = new(zone()) HCallStub(
Mads Ager (chromium) 2011/07/15 09:04:45 I would prefer HCallStub* result = new(zone()
6151 context, CodeStub::HasOwnProperty, 2);
6152 Drop(2);
6153 ast_context()->ReturnInstruction(result, call->id());
6154 }
6155
6156
6146 // Check whether two RegExps are equivalent 6157 // Check whether two RegExps are equivalent
6147 void HGraphBuilder::GenerateIsRegExpEquivalent(CallRuntime* call) { 6158 void HGraphBuilder::GenerateIsRegExpEquivalent(CallRuntime* call) {
6148 return Bailout("inlined runtime function: IsRegExpEquivalent"); 6159 return Bailout("inlined runtime function: IsRegExpEquivalent");
6149 } 6160 }
6150 6161
6151 6162
6152 void HGraphBuilder::GenerateGetCachedArrayIndex(CallRuntime* call) { 6163 void HGraphBuilder::GenerateGetCachedArrayIndex(CallRuntime* call) {
6153 ASSERT(call->arguments()->length() == 1); 6164 ASSERT(call->arguments()->length() == 1);
6154 CHECK_ALIVE(VisitForValue(call->arguments()->at(0))); 6165 CHECK_ALIVE(VisitForValue(call->arguments()->at(0)));
6155 HValue* value = Pop(); 6166 HValue* value = Pop();
(...skipping 536 matching lines...) Expand 10 before | Expand all | Expand 10 after
6692 } 6703 }
6693 } 6704 }
6694 6705
6695 #ifdef DEBUG 6706 #ifdef DEBUG
6696 if (graph_ != NULL) graph_->Verify(); 6707 if (graph_ != NULL) graph_->Verify();
6697 if (allocator_ != NULL) allocator_->Verify(); 6708 if (allocator_ != NULL) allocator_->Verify();
6698 #endif 6709 #endif
6699 } 6710 }
6700 6711
6701 } } // namespace v8::internal 6712 } } // namespace v8::internal
OLDNEW
« no previous file with comments | « src/code-stubs.h ('k') | src/ia32/code-stubs-ia32.h » ('j') | src/ia32/code-stubs-ia32.h » ('J')

Powered by Google App Engine
This is Rietveld 408576698