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

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: Make this thing work with snapshots. Created 7 years, 9 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 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 1197 matching lines...) Expand 10 before | Expand all | Expand 10 after
1208 1208
1209 ASSERT(compiled_code_->kind() == Code::COMPILED_STUB); 1209 ASSERT(compiled_code_->kind() == Code::COMPILED_STUB);
1210 int major_key = compiled_code_->major_key(); 1210 int major_key = compiled_code_->major_key();
1211 CodeStubInterfaceDescriptor* descriptor = 1211 CodeStubInterfaceDescriptor* descriptor =
1212 isolate_->code_stub_interface_descriptor(major_key); 1212 isolate_->code_stub_interface_descriptor(major_key);
1213 1213
1214 // The output frame must have room for all pushed register parameters 1214 // The output frame must have room for all pushed register parameters
1215 // and the standard stack frame slots. Include space for an argument 1215 // and the standard stack frame slots. Include space for an argument
1216 // object to the callee and optionally the space to pass the argument 1216 // object to the callee and optionally the space to pass the argument
1217 // object to the stub failure handler. 1217 // object to the stub failure handler.
1218 ASSERT(descriptor->register_param_count_ >= 0);
1218 int height_in_bytes = kPointerSize * descriptor->register_param_count_ + 1219 int height_in_bytes = kPointerSize * descriptor->register_param_count_ +
1219 sizeof(Arguments) + kPointerSize; 1220 sizeof(Arguments) + kPointerSize;
1220 int fixed_frame_size = StandardFrameConstants::kFixedFrameSize; 1221 int fixed_frame_size = StandardFrameConstants::kFixedFrameSize;
1221 int input_frame_size = input_->GetFrameSize(); 1222 int input_frame_size = input_->GetFrameSize();
1222 int output_frame_size = height_in_bytes + fixed_frame_size; 1223 int output_frame_size = height_in_bytes + fixed_frame_size;
1223 if (trace_) { 1224 if (trace_) {
1224 PrintF(" translating %s => StubFailureTrampolineStub, height=%d\n", 1225 PrintF(" translating %s => StubFailureTrampolineStub, height=%d\n",
1225 CodeStub::MajorName(static_cast<CodeStub::Major>(major_key), false), 1226 CodeStub::MajorName(static_cast<CodeStub::Major>(major_key), false),
1226 height_in_bytes); 1227 height_in_bytes);
1227 } 1228 }
(...skipping 1456 matching lines...) Expand 10 before | Expand all | Expand 10 after
2684 2685
2685 void DeoptimizedFrameInfo::Iterate(ObjectVisitor* v) { 2686 void DeoptimizedFrameInfo::Iterate(ObjectVisitor* v) {
2686 v->VisitPointer(BitCast<Object**>(&function_)); 2687 v->VisitPointer(BitCast<Object**>(&function_));
2687 v->VisitPointers(parameters_, parameters_ + parameters_count_); 2688 v->VisitPointers(parameters_, parameters_ + parameters_count_);
2688 v->VisitPointers(expression_stack_, expression_stack_ + expression_count_); 2689 v->VisitPointers(expression_stack_, expression_stack_ + expression_count_);
2689 } 2690 }
2690 2691
2691 #endif // ENABLE_DEBUGGER_SUPPORT 2692 #endif // ENABLE_DEBUGGER_SUPPORT
2692 2693
2693 } } // namespace v8::internal 2694 } } // namespace v8::internal
OLDNEW
« no previous file with comments | « src/code-stubs-hydrogen.cc ('k') | src/hydrogen.h » ('j') | src/hydrogen.cc » ('J')

Powered by Google App Engine
This is Rietveld 408576698