Reviewers: Paul Lind, Jakob, danno, kisg, kilvadyb,
Description:
MIPS: Fix mjsunit/regress/regress-2653.
Insert proper padding after lazy deoptimization points. This change
makes sure, that patching does not overwrite the code after the
lazy deoptimization point.
TEST=mjsunit/regress/regress-2653
BUG=
Please review this at https://codereview.chromium.org/17587020/
SVN Base: https://v8.googlecode.com/svn/branches/bleeding_edge
Affected files:
M src/mips/lithium-codegen-mips.cc
Index: src/mips/lithium-codegen-mips.cc
diff --git a/src/mips/lithium-codegen-mips.cc
b/src/mips/lithium-codegen-mips.cc
index
ccf633b3a77fa84a455c0627a9483630847a23a6..9b371add2808f6f929af599047a0f26467b8180a
100644
--- a/src/mips/lithium-codegen-mips.cc
+++ b/src/mips/lithium-codegen-mips.cc
@@ -243,7 +243,6 @@ bool LCodeGen::GeneratePrologue() {
if (FLAG_trace && info()->IsOptimizing()) {
__ CallRuntime(Runtime::kTraceEnter, 0);
}
- EnsureSpaceForLazyDeopt();
return !is_aborted();
}
@@ -271,6 +270,7 @@ bool LCodeGen::GenerateBody() {
instr->CompileToNative(this);
}
+ EnsureSpaceForLazyDeopt();
return !is_aborted();
}
@@ -706,6 +706,7 @@ void LCodeGen::CallCodeGeneric(Handle<Code> code,
RelocInfo::Mode mode,
LInstruction* instr,
SafepointMode safepoint_mode) {
+ EnsureSpaceForLazyDeopt();
ASSERT(instr != NULL);
LPointerMap* pointers = instr->pointer_map();
RecordPosition(pointers->position());
--
--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev
---
You received this message because you are subscribed to the Google Groups "v8-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.