Index: src/arm/fast-codegen-arm.cc |
=================================================================== |
--- src/arm/fast-codegen-arm.cc (revision 3148) |
+++ src/arm/fast-codegen-arm.cc (working copy) |
@@ -63,28 +63,25 @@ |
if (locals_count > 0) { |
__ LoadRoot(ip, Heap::kUndefinedValueRootIndex); |
} |
- if (FLAG_check_stack) { |
- __ LoadRoot(r2, Heap::kStackLimitRootIndex); |
- } |
+ __ LoadRoot(r2, Heap::kStackLimitRootIndex); |
for (int i = 0; i < locals_count; i++) { |
__ push(ip); |
} |
} |
- if (FLAG_check_stack) { |
- // Put the lr setup instruction in the delay slot. The kInstrSize is |
- // added to the implicit 8 byte offset that always applies to operations |
- // with pc and gives a return address 12 bytes down. |
- Comment cmnt(masm_, "[ Stack check"); |
- __ add(lr, pc, Operand(Assembler::kInstrSize)); |
- __ cmp(sp, Operand(r2)); |
- StackCheckStub stub; |
- __ mov(pc, |
- Operand(reinterpret_cast<intptr_t>(stub.GetCode().location()), |
- RelocInfo::CODE_TARGET), |
- LeaveCC, |
- lo); |
- } |
+ // Check the stack for overflow or break request. |
+ // Put the lr setup instruction in the delay slot. The kInstrSize is |
+ // added to the implicit 8 byte offset that always applies to operations |
+ // with pc and gives a return address 12 bytes down. |
+ Comment cmnt(masm_, "[ Stack check"); |
+ __ add(lr, pc, Operand(Assembler::kInstrSize)); |
+ __ cmp(sp, Operand(r2)); |
+ StackCheckStub stub; |
+ __ mov(pc, |
+ Operand(reinterpret_cast<intptr_t>(stub.GetCode().location()), |
+ RelocInfo::CODE_TARGET), |
+ LeaveCC, |
+ lo); |
{ Comment cmnt(masm_, "[ Declarations"); |
VisitDeclarations(fun->scope()->declarations()); |