diff options
Diffstat (limited to 'deps/v8/src/x87/builtins-x87.cc')
-rw-r--r-- | deps/v8/src/x87/builtins-x87.cc | 19 |
1 files changed, 9 insertions, 10 deletions
diff --git a/deps/v8/src/x87/builtins-x87.cc b/deps/v8/src/x87/builtins-x87.cc index 861ec7ed02..51bb3a7c65 100644 --- a/deps/v8/src/x87/builtins-x87.cc +++ b/deps/v8/src/x87/builtins-x87.cc @@ -160,18 +160,17 @@ static void Generate_JSConstructStubHelper(MacroAssembler* masm, if (!is_api_function) { Label allocate; // The code below relies on these assumptions. - STATIC_ASSERT(JSFunction::kNoSlackTracking == 0); - STATIC_ASSERT(Map::ConstructionCount::kShift + - Map::ConstructionCount::kSize == 32); + STATIC_ASSERT(Map::Counter::kShift + Map::Counter::kSize == 32); // Check if slack tracking is enabled. __ mov(esi, FieldOperand(eax, Map::kBitField3Offset)); - __ shr(esi, Map::ConstructionCount::kShift); - __ j(zero, &allocate); // JSFunction::kNoSlackTracking + __ shr(esi, Map::Counter::kShift); + __ cmp(esi, Map::kSlackTrackingCounterEnd); + __ j(less, &allocate); // Decrease generous allocation count. __ sub(FieldOperand(eax, Map::kBitField3Offset), - Immediate(1 << Map::ConstructionCount::kShift)); + Immediate(1 << Map::Counter::kShift)); - __ cmp(esi, JSFunction::kFinishSlackTracking); + __ cmp(esi, Map::kSlackTrackingCounterEnd); __ j(not_equal, &allocate); __ push(eax); @@ -182,7 +181,7 @@ static void Generate_JSConstructStubHelper(MacroAssembler* masm, __ pop(edi); __ pop(eax); - __ xor_(esi, esi); // JSFunction::kNoSlackTracking + __ mov(esi, Map::kSlackTrackingCounterEnd - 1); __ bind(&allocate); } @@ -219,8 +218,8 @@ static void Generate_JSConstructStubHelper(MacroAssembler* masm, Label no_inobject_slack_tracking; // Check if slack tracking is enabled. - __ cmp(esi, JSFunction::kNoSlackTracking); - __ j(equal, &no_inobject_slack_tracking); + __ cmp(esi, Map::kSlackTrackingCounterEnd); + __ j(less, &no_inobject_slack_tracking); // Allocate object with a slack. __ movzx_b(esi, |