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

Side by Side Diff: src/ia32/deoptimizer-ia32.cc

Issue 908883002: new classes: implement new.target passing to superclass constructor. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Fix x64 arithmetic Created 5 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/ia32/code-stubs-ia32.cc ('k') | src/ia32/full-codegen-ia32.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 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "src/v8.h" 5 #include "src/v8.h"
6 6
7 #if V8_TARGET_ARCH_IA32 7 #if V8_TARGET_ARCH_IA32
8 8
9 #include "src/codegen.h" 9 #include "src/codegen.h"
10 #include "src/deoptimizer.h" 10 #include "src/deoptimizer.h"
(...skipping 194 matching lines...) Expand 10 before | Expand all | Expand 10 after
205 205
206 void Deoptimizer::CopyDoubleRegisters(FrameDescription* output_frame) { 206 void Deoptimizer::CopyDoubleRegisters(FrameDescription* output_frame) {
207 for (int i = 0; i < XMMRegister::kMaxNumAllocatableRegisters; ++i) { 207 for (int i = 0; i < XMMRegister::kMaxNumAllocatableRegisters; ++i) {
208 double double_value = input_->GetDoubleRegister(i); 208 double double_value = input_->GetDoubleRegister(i);
209 output_frame->SetDoubleRegister(i, double_value); 209 output_frame->SetDoubleRegister(i, double_value);
210 } 210 }
211 } 211 }
212 212
213 213
214 bool Deoptimizer::HasAlignmentPadding(JSFunction* function) { 214 bool Deoptimizer::HasAlignmentPadding(JSFunction* function) {
215 int parameter_count = function->shared()->formal_parameter_count() + 1; 215 int parameter_count =
216 function->shared()->internal_formal_parameter_count() + 1;
216 unsigned input_frame_size = input_->GetFrameSize(); 217 unsigned input_frame_size = input_->GetFrameSize();
217 unsigned alignment_state_offset = 218 unsigned alignment_state_offset =
218 input_frame_size - parameter_count * kPointerSize - 219 input_frame_size - parameter_count * kPointerSize -
219 StandardFrameConstants::kFixedFrameSize - 220 StandardFrameConstants::kFixedFrameSize -
220 kPointerSize; 221 kPointerSize;
221 DCHECK(JavaScriptFrameConstants::kDynamicAlignmentStateOffset == 222 DCHECK(JavaScriptFrameConstants::kDynamicAlignmentStateOffset ==
222 JavaScriptFrameConstants::kLocal0Offset); 223 JavaScriptFrameConstants::kLocal0Offset);
223 int32_t alignment_state = input_->GetFrameSlot(alignment_state_offset); 224 int32_t alignment_state = input_->GetFrameSlot(alignment_state_offset);
224 return (alignment_state == kAlignmentPaddingPushed); 225 return (alignment_state == kAlignmentPaddingPushed);
225 } 226 }
(...skipping 200 matching lines...) Expand 10 before | Expand all | Expand 10 after
426 UNREACHABLE(); 427 UNREACHABLE();
427 } 428 }
428 429
429 430
430 #undef __ 431 #undef __
431 432
432 433
433 } } // namespace v8::internal 434 } } // namespace v8::internal
434 435
435 #endif // V8_TARGET_ARCH_IA32 436 #endif // V8_TARGET_ARCH_IA32
OLDNEW
« no previous file with comments | « src/ia32/code-stubs-ia32.cc ('k') | src/ia32/full-codegen-ia32.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698