X87: Introduce code stub constructors for stub keys.

port r23716.

original commit message:

  Introduce code stub constructors for stub keys.

BUG=
R=weiliang.lin@intel.com

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

Patch from Jing Bao <jing.bao@intel.com>.

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23815 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
parent a57c7ab6
......@@ -5,8 +5,6 @@
#ifndef V8_X87_CODE_STUBS_X87_H_
#define V8_X87_CODE_STUBS_X87_H_
#include "src/code-stubs.h"
namespace v8 {
namespace internal {
......@@ -99,8 +97,6 @@ class NameDictionaryLookupStub: public PlatformCodeStub {
NameDictionary::kHeaderSize +
NameDictionary::kElementsStartIndex * kPointerSize;
virtual inline Major MajorKey() const FINAL OVERRIDE;
Register dictionary() const {
return Register::from_code(DictionaryBits::decode(minor_key_));
}
......@@ -120,7 +116,7 @@ class NameDictionaryLookupStub: public PlatformCodeStub {
class IndexBits: public BitField<int, 6, 3> {};
class LookupModeBits: public BitField<LookupMode, 9, 1> {};
DISALLOW_COPY_AND_ASSIGN(NameDictionaryLookupStub);
DEFINE_CODE_STUB(NameDictionaryLookup, PlatformCodeStub);
};
......@@ -141,6 +137,9 @@ class RecordWriteStub: public PlatformCodeStub {
RememberedSetActionBits::encode(remembered_set_action);
}
RecordWriteStub(uint32_t key, Isolate* isolate)
: PlatformCodeStub(key, isolate), regs_(object(), address(), value()) {}
enum Mode {
STORE_BUFFER_ONLY,
INCREMENTAL,
......@@ -323,7 +322,7 @@ class RecordWriteStub: public PlatformCodeStub {
kUpdateRememberedSetOnNoNeedToInformIncrementalMarker
};
virtual inline Major MajorKey() const FINAL OVERRIDE;
virtual inline Major MajorKey() const FINAL OVERRIDE { return RecordWrite; }
void Generate(MacroAssembler* masm);
void GenerateIncremental(MacroAssembler* masm, Mode mode);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment