X87: Reshuffle registers in JSConstructStub to avoid trashing costructor and new.target on fast path (so we don't need to push/pop them).

port 0ef5ad5ab9 (r32219)

  original commit message:
  This CL also fixed register usages in MacroAssembler::Allocate() broken by 2fc2cb99 (r32144).

BUG=

Review URL: https://codereview.chromium.org/1473763003

Cr-Commit-Position: refs/heads/master@{#32245}
This commit is contained in:
zhengxing.li 2015-11-24 22:05:21 -08:00 committed by Commit bot
parent 08071597ce
commit 4a514c77ad

View File

@ -258,8 +258,10 @@ static void Generate_JSConstructStubHelper(MacroAssembler* masm,
kUnexpectedNumberOfPreAllocatedPropertyFields);
}
__ InitializeFieldsWithFiller(ecx, esi, edx);
// To allow truncation fill the remaining fields with one pointer
// filler map.
__ mov(edx, factory->one_pointer_filler_map());
// Fill the remaining fields with one pointer filler map.
__ bind(&no_inobject_slack_tracking);
}