Revision: 21471
Author: [email protected]
Date: Fri May 23 19:32:48 2014 UTC
Log: MIPS: Fix r21470 "Reland r21442 Inobject slack tracking is done
on a per-closure basis instead of per-shared info basis."
BUG=
[email protected]
Review URL: https://codereview.chromium.org/297093002
Patch from Balazs Kilvady <[email protected]>.
http://code.google.com/p/v8/source/detail?r=21471
Modified:
/branches/bleeding_edge/src/mips/builtins-mips.cc
=======================================
--- /branches/bleeding_edge/src/mips/builtins-mips.cc Fri May 23 18:05:40
2014 UTC
+++ /branches/bleeding_edge/src/mips/builtins-mips.cc Fri May 23 19:32:48
2014 UTC
@@ -379,9 +379,6 @@
__ lbu(a3, FieldMemOperand(a2, Map::kInstanceTypeOffset));
__ Branch(&rt_call, eq, a3, Operand(JS_FUNCTION_TYPE));
- // Use t7 to hold undefined, which is used in several places below.
- __ LoadRoot(t7, Heap::kUndefinedValueRootIndex);
-
if (!is_api_function) {
Label allocate;
MemOperand bit_field3 = FieldMemOperand(a2, Map::kBitField3Offset);
@@ -399,6 +396,9 @@
__ CallRuntime(Runtime::kHiddenFinalizeInstanceSize, 1);
__ Pop(a1, a2);
+ // Slack tracking counter is kNoSlackTracking after runtime call.
+ ASSERT(JSFunction::kNoSlackTracking == 0);
+ __ mov(t2, zero_reg);
__ bind(&allocate);
}
@@ -438,6 +438,9 @@
// t2: slack tracking counter (non-API function case)
ASSERT_EQ(3 * kPointerSize, JSObject::kHeaderSize);
+ // Use t7 to hold undefined, which is used in several places below.
+ __ LoadRoot(t7, Heap::kUndefinedValueRootIndex);
+
if (!is_api_function) {
Label no_inobject_slack_tracking;
--
--
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/d/optout.