X87: Added vector-based loadic hydrogen stubs. Not yet callable.
authorweiliang.lin@intel.com <weiliang.lin@intel.com>
Wed, 27 Aug 2014 07:58:51 +0000 (07:58 +0000)
committerweiliang.lin@intel.com <weiliang.lin@intel.com>
Wed, 27 Aug 2014 07:58:51 +0000 (07:58 +0000)
port r23405.

original commit message:
  Added vector-based loadic hydrogen stubs. Not yet callable.
  The next step is to integrate the use of vector[slot] into the IC
  infrastructure so it can do the right thing for a vector-based ic.
   Then these stubs can be installed. For now, they immediately bail
   out to the miss handler.

BUG=
R=weiliang.lin@intel.com

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

Patch from Chunyang Dai <chunyang.dai@intel.com>.

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23433 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

src/x87/code-stubs-x87.cc

index 71dce15..d2b0237 100644 (file)
@@ -4140,6 +4140,20 @@ void StubFailureTrampolineStub::Generate(MacroAssembler* masm) {
 }
 
 
+void LoadICTrampolineStub::Generate(MacroAssembler* masm) {
+  EmitLoadTypeFeedbackVector(masm, FullVectorLoadConvention::VectorRegister());
+  VectorLoadStub stub(isolate(), state_);
+  __ jmp(stub.GetCode(), RelocInfo::CODE_TARGET);
+}
+
+
+void KeyedLoadICTrampolineStub::Generate(MacroAssembler* masm) {
+  EmitLoadTypeFeedbackVector(masm, FullVectorLoadConvention::VectorRegister());
+  VectorKeyedLoadStub stub(isolate());
+  __ jmp(stub.GetCode(), RelocInfo::CODE_TARGET);
+}
+
+
 void ProfileEntryHookStub::MaybeCallEntryHook(MacroAssembler* masm) {
   if (masm->isolate()->function_entry_hook() != NULL) {
     ProfileEntryHookStub stub(masm->isolate());