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

Side by Side Diff: src/deoptimizer.cc

Issue 12521011: Compile FastCloneShallowArrayStub using Crankshaft. (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Rebased. Created 7 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-hydrogen.cc ('k') | src/hydrogen.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 2013 the V8 project authors. All rights reserved. 1 // Copyright 2013 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 1186 matching lines...) Expand 10 before | Expand all | Expand 10 after
1197 1197
1198 ASSERT(compiled_code_->kind() == Code::COMPILED_STUB); 1198 ASSERT(compiled_code_->kind() == Code::COMPILED_STUB);
1199 int major_key = compiled_code_->major_key(); 1199 int major_key = compiled_code_->major_key();
1200 CodeStubInterfaceDescriptor* descriptor = 1200 CodeStubInterfaceDescriptor* descriptor =
1201 isolate_->code_stub_interface_descriptor(major_key); 1201 isolate_->code_stub_interface_descriptor(major_key);
1202 1202
1203 // The output frame must have room for all pushed register parameters 1203 // The output frame must have room for all pushed register parameters
1204 // and the standard stack frame slots. Include space for an argument 1204 // and the standard stack frame slots. Include space for an argument
1205 // object to the callee and optionally the space to pass the argument 1205 // object to the callee and optionally the space to pass the argument
1206 // object to the stub failure handler. 1206 // object to the stub failure handler.
1207 ASSERT(descriptor->register_param_count_ >= 0);
1207 int height_in_bytes = kPointerSize * descriptor->register_param_count_ + 1208 int height_in_bytes = kPointerSize * descriptor->register_param_count_ +
1208 sizeof(Arguments) + kPointerSize; 1209 sizeof(Arguments) + kPointerSize;
1209 int fixed_frame_size = StandardFrameConstants::kFixedFrameSize; 1210 int fixed_frame_size = StandardFrameConstants::kFixedFrameSize;
1210 int input_frame_size = input_->GetFrameSize(); 1211 int input_frame_size = input_->GetFrameSize();
1211 int output_frame_size = height_in_bytes + fixed_frame_size; 1212 int output_frame_size = height_in_bytes + fixed_frame_size;
1212 if (trace_) { 1213 if (trace_) {
1213 PrintF(" translating %s => StubFailureTrampolineStub, height=%d\n", 1214 PrintF(" translating %s => StubFailureTrampolineStub, height=%d\n",
1214 CodeStub::MajorName(static_cast<CodeStub::Major>(major_key), false), 1215 CodeStub::MajorName(static_cast<CodeStub::Major>(major_key), false),
1215 height_in_bytes); 1216 height_in_bytes);
1216 } 1217 }
(...skipping 1509 matching lines...) Expand 10 before | Expand all | Expand 10 after
2726 2727
2727 void DeoptimizedFrameInfo::Iterate(ObjectVisitor* v) { 2728 void DeoptimizedFrameInfo::Iterate(ObjectVisitor* v) {
2728 v->VisitPointer(BitCast<Object**>(&function_)); 2729 v->VisitPointer(BitCast<Object**>(&function_));
2729 v->VisitPointers(parameters_, parameters_ + parameters_count_); 2730 v->VisitPointers(parameters_, parameters_ + parameters_count_);
2730 v->VisitPointers(expression_stack_, expression_stack_ + expression_count_); 2731 v->VisitPointers(expression_stack_, expression_stack_ + expression_count_);
2731 } 2732 }
2732 2733
2733 #endif // ENABLE_DEBUGGER_SUPPORT 2734 #endif // ENABLE_DEBUGGER_SUPPORT
2734 2735
2735 } } // namespace v8::internal 2736 } } // namespace v8::internal
OLDNEW
« no previous file with comments | « src/code-stubs-hydrogen.cc ('k') | src/hydrogen.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698