Index: src/ia32/deoptimizer-ia32.cc |
=================================================================== |
--- src/ia32/deoptimizer-ia32.cc (revision 6765) |
+++ src/ia32/deoptimizer-ia32.cc (working copy) |
@@ -137,39 +137,39 @@ |
void Deoptimizer::PatchStackCheckCodeAt(Address pc_after, |
Code* check_code, |
Code* replacement_code) { |
- Address call_target_address = pc_after - kPointerSize; |
- ASSERT(check_code->entry() == |
- Assembler::target_address_at(call_target_address)); |
- // The stack check code matches the pattern: |
- // |
- // cmp esp, <limit> |
- // jae ok |
- // call <stack guard> |
- // test eax, <loop nesting depth> |
- // ok: ... |
- // |
- // We will patch away the branch so the code is: |
- // |
- // cmp esp, <limit> ;; Not changed |
- // nop |
- // nop |
- // call <on-stack replacment> |
- // test eax, <loop nesting depth> |
- // ok: |
- ASSERT(*(call_target_address - 3) == 0x73 && // jae |
- *(call_target_address - 2) == 0x07 && // offset |
- *(call_target_address - 1) == 0xe8); // call |
- *(call_target_address - 3) = 0x90; // nop |
- *(call_target_address - 2) = 0x90; // nop |
- Assembler::set_target_address_at(call_target_address, |
- replacement_code->entry()); |
+ Address call_target_address = pc_after - kIntSize; |
+ ASSERT(check_code->entry() == |
+ Assembler::target_address_at(call_target_address)); |
+ // The stack check code matches the pattern: |
+ // |
+ // cmp esp, <limit> |
+ // jae ok |
+ // call <stack guard> |
+ // test eax, <loop nesting depth> |
+ // ok: ... |
+ // |
+ // We will patch away the branch so the code is: |
+ // |
+ // cmp esp, <limit> ;; Not changed |
+ // nop |
+ // nop |
+ // call <on-stack replacment> |
+ // test eax, <loop nesting depth> |
+ // ok: |
+ ASSERT(*(call_target_address - 3) == 0x73 && // jae |
+ *(call_target_address - 2) == 0x07 && // offset |
+ *(call_target_address - 1) == 0xe8); // call |
+ *(call_target_address - 3) = 0x90; // nop |
+ *(call_target_address - 2) = 0x90; // nop |
+ Assembler::set_target_address_at(call_target_address, |
+ replacement_code->entry()); |
} |
void Deoptimizer::RevertStackCheckCodeAt(Address pc_after, |
Code* check_code, |
Code* replacement_code) { |
- Address call_target_address = pc_after - kPointerSize; |
+ Address call_target_address = pc_after - kIntSize; |
ASSERT(replacement_code->entry() == |
Assembler::target_address_at(call_target_address)); |
// Replace the nops from patching (Deoptimizer::PatchStackCheckCode) to |