Index: src/mips/builtins-mips.cc |
diff --git a/src/mips/builtins-mips.cc b/src/mips/builtins-mips.cc |
index df6dc534be4abd1a9605c32d86fa66e6864b6b03..100195b58d48bb6a97871ce9238369cd4d7c7ad9 100644 |
--- a/src/mips/builtins-mips.cc |
+++ b/src/mips/builtins-mips.cc |
@@ -382,21 +382,21 @@ static void Generate_JSConstructStubHelper(MacroAssembler* masm, |
MemOperand bit_field3 = FieldMemOperand(a2, Map::kBitField3Offset); |
// Check if slack tracking is enabled. |
__ lw(t0, bit_field3); |
- __ DecodeField<Map::ConstructionCount>(t2, t0); |
- __ Branch(&allocate, eq, t2, Operand(JSFunction::kNoSlackTracking)); |
+ __ DecodeField<Map::Counter>(t2, t0); |
+ __ Branch(&allocate, lt, t2, Operand(Map::kSlackTrackingCounterEnd)); |
// Decrease generous allocation count. |
- __ Subu(t0, t0, Operand(1 << Map::ConstructionCount::kShift)); |
- __ Branch(USE_DELAY_SLOT, |
- &allocate, ne, t2, Operand(JSFunction::kFinishSlackTracking)); |
+ __ Subu(t0, t0, Operand(1 << Map::Counter::kShift)); |
+ __ Branch(USE_DELAY_SLOT, &allocate, ne, t2, |
+ Operand(Map::kSlackTrackingCounterEnd)); |
__ sw(t0, bit_field3); // In delay slot. |
__ Push(a1, a2, a1); // a1 = Constructor. |
__ CallRuntime(Runtime::kFinalizeInstanceSize, 1); |
__ Pop(a1, a2); |
- // Slack tracking counter is kNoSlackTracking after runtime call. |
- DCHECK(JSFunction::kNoSlackTracking == 0); |
- __ mov(t2, zero_reg); |
+ // Slack tracking counter is Map::kSlackTrackingCounterEnd after runtime |
+ // call. |
+ __ li(t2, Map::kSlackTrackingCounterEnd); |
__ bind(&allocate); |
} |
@@ -443,8 +443,8 @@ static void Generate_JSConstructStubHelper(MacroAssembler* masm, |
Label no_inobject_slack_tracking; |
// Check if slack tracking is enabled. |
- __ Branch(&no_inobject_slack_tracking, |
- eq, t2, Operand(JSFunction::kNoSlackTracking)); |
+ __ Branch(&no_inobject_slack_tracking, lt, t2, |
+ Operand(Map::kSlackTrackingCounterEnd)); |
// Allocate object with a slack. |
__ lbu(a0, FieldMemOperand(a2, Map::kPreAllocatedPropertyFieldsOffset)); |