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

Side by Side Diff: src/full-codegen/arm/full-codegen-arm.cc

Issue 1262613002: Speed up cctest/test-debug/DebugBreakLoop. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Created 5 years, 4 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 | « no previous file | src/full-codegen/arm64/full-codegen-arm64.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_ARM 7 #if V8_TARGET_ARCH_ARM
8 8
9 #include "src/code-factory.h" 9 #include "src/code-factory.h"
10 #include "src/code-stubs.h" 10 #include "src/code-stubs.h"
(...skipping 391 matching lines...) Expand 10 before | Expand all | Expand 10 after
402 #endif 402 #endif
403 403
404 404
405 void FullCodeGenerator::EmitProfilingCounterReset() { 405 void FullCodeGenerator::EmitProfilingCounterReset() {
406 Assembler::BlockConstPoolScope block_const_pool(masm_); 406 Assembler::BlockConstPoolScope block_const_pool(masm_);
407 PredictableCodeSizeScope predictable_code_size_scope( 407 PredictableCodeSizeScope predictable_code_size_scope(
408 masm_, kProfileCounterResetSequenceLength); 408 masm_, kProfileCounterResetSequenceLength);
409 Label start; 409 Label start;
410 __ bind(&start); 410 __ bind(&start);
411 int reset_value = FLAG_interrupt_budget; 411 int reset_value = FLAG_interrupt_budget;
412 if (info_->is_debug()) {
413 // Detect debug break requests as soon as possible.
414 reset_value = FLAG_interrupt_budget >> 4;
415 }
416 __ mov(r2, Operand(profiling_counter_)); 412 __ mov(r2, Operand(profiling_counter_));
417 // The mov instruction above can be either 1 to 3 (for ARMv7) or 1 to 5 413 // The mov instruction above can be either 1 to 3 (for ARMv7) or 1 to 5
418 // instructions (for ARMv6) depending upon whether it is an extended constant 414 // instructions (for ARMv6) depending upon whether it is an extended constant
419 // pool - insert nop to compensate. 415 // pool - insert nop to compensate.
420 int expected_instr_count = 416 int expected_instr_count =
421 (kProfileCounterResetSequenceLength / Assembler::kInstrSize) - 2; 417 (kProfileCounterResetSequenceLength / Assembler::kInstrSize) - 2;
422 DCHECK(masm_->InstructionsGeneratedSince(&start) <= expected_instr_count); 418 DCHECK(masm_->InstructionsGeneratedSince(&start) <= expected_instr_count);
423 while (masm_->InstructionsGeneratedSince(&start) != expected_instr_count) { 419 while (masm_->InstructionsGeneratedSince(&start) != expected_instr_count) {
424 __ nop(); 420 __ nop();
425 } 421 }
(...skipping 5043 matching lines...) Expand 10 before | Expand all | Expand 10 after
5469 DCHECK(interrupt_address == 5465 DCHECK(interrupt_address ==
5470 isolate->builtins()->OsrAfterStackCheck()->entry()); 5466 isolate->builtins()->OsrAfterStackCheck()->entry());
5471 return OSR_AFTER_STACK_CHECK; 5467 return OSR_AFTER_STACK_CHECK;
5472 } 5468 }
5473 5469
5474 5470
5475 } // namespace internal 5471 } // namespace internal
5476 } // namespace v8 5472 } // namespace v8
5477 5473
5478 #endif // V8_TARGET_ARCH_ARM 5474 #endif // V8_TARGET_ARCH_ARM
OLDNEW
« no previous file with comments | « no previous file | src/full-codegen/arm64/full-codegen-arm64.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698