Index: src/ia32/macro-assembler-ia32.cc |
diff --git a/src/ia32/macro-assembler-ia32.cc b/src/ia32/macro-assembler-ia32.cc |
index c4b26cd1bf5d7002a2762ddfd77e45c4fbd4fb0d..2eb0fe4b5006f48afc7b09bd488b62c39824ceba 100644 |
--- a/src/ia32/macro-assembler-ia32.cc |
+++ b/src/ia32/macro-assembler-ia32.cc |
@@ -900,26 +900,27 @@ void MacroAssembler::AssertNotSmi(Register object) { |
} |
-void MacroAssembler::Prologue(CompilationInfo* info) { |
- if (info->IsStub()) { |
+void MacroAssembler::StubPrologue() { |
+ push(ebp); // Caller's frame pointer. |
+ mov(ebp, esp); |
+ push(esi); // Callee's context. |
+ push(Immediate(Smi::FromInt(StackFrame::STUB))); |
+} |
+ |
+ |
+void MacroAssembler::Prologue(bool code_pre_aging) { |
+ PredictableCodeSizeScope predictible_code_size_scope(this, |
+ kNoCodeAgeSequenceLength); |
+ if (code_pre_aging) { |
+ // Pre-age the code. |
+ call(isolate()->builtins()->MarkCodeAsExecutedOnce(), |
+ RelocInfo::CODE_AGE_SEQUENCE); |
+ Nop(kNoCodeAgeSequenceLength - Assembler::kCallInstructionLength); |
+ } else { |
push(ebp); // Caller's frame pointer. |
mov(ebp, esp); |
push(esi); // Callee's context. |
- push(Immediate(Smi::FromInt(StackFrame::STUB))); |
- } else { |
- PredictableCodeSizeScope predictible_code_size_scope(this, |
- kNoCodeAgeSequenceLength); |
- if (info->IsCodePreAgingActive()) { |
- // Pre-age the code. |
- call(isolate()->builtins()->MarkCodeAsExecutedOnce(), |
- RelocInfo::CODE_AGE_SEQUENCE); |
- Nop(kNoCodeAgeSequenceLength - Assembler::kCallInstructionLength); |
- } else { |
- push(ebp); // Caller's frame pointer. |
- mov(ebp, esp); |
- push(esi); // Callee's context. |
- push(edi); // Callee's JS function. |
- } |
+ push(edi); // Callee's JS function. |
} |
} |