Version 3.4.8
Ensure 16-byte stack alignment on Solaris (issue 1505).
Fix "illegal access" when calling parseInt with a radix that is not a smi. (issue 1246).
git-svn-id: http://v8.googlecode.com/svn/trunk@8466 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
diff --git a/src/heap.cc b/src/heap.cc
index 0ce5e34..6bb0206 100644
--- a/src/heap.cc
+++ b/src/heap.cc
@@ -3932,7 +3932,6 @@
Context* context = reinterpret_cast<Context*>(result);
context->set_map(function_context_map());
context->set_closure(function);
- context->set_fcontext(context);
context->set_previous(function->context());
context->set_extension(NULL);
context->set_global(function->context()->global());
@@ -3940,7 +3939,8 @@
}
-MaybeObject* Heap::AllocateCatchContext(Context* previous,
+MaybeObject* Heap::AllocateCatchContext(JSFunction* function,
+ Context* previous,
String* name,
Object* thrown_object) {
STATIC_ASSERT(Context::MIN_CONTEXT_SLOTS == Context::THROWN_OBJECT_INDEX);
@@ -3951,8 +3951,7 @@
}
Context* context = reinterpret_cast<Context*>(result);
context->set_map(catch_context_map());
- context->set_closure(previous->closure());
- context->set_fcontext(previous->fcontext());
+ context->set_closure(function);
context->set_previous(previous);
context->set_extension(name);
context->set_global(previous->global());
@@ -3961,7 +3960,8 @@
}
-MaybeObject* Heap::AllocateWithContext(Context* previous,
+MaybeObject* Heap::AllocateWithContext(JSFunction* function,
+ Context* previous,
JSObject* extension) {
Object* result;
{ MaybeObject* maybe_result = AllocateFixedArray(Context::MIN_CONTEXT_SLOTS);
@@ -3969,8 +3969,7 @@
}
Context* context = reinterpret_cast<Context*>(result);
context->set_map(with_context_map());
- context->set_closure(previous->closure());
- context->set_fcontext(previous->fcontext());
+ context->set_closure(function);
context->set_previous(previous);
context->set_extension(extension);
context->set_global(previous->global());