X87: Introduce code stub constructors for stub keys.
authorweiliang.lin@intel.com <weiliang.lin@intel.com>
Wed, 10 Sep 2014 02:44:43 +0000 (02:44 +0000)
committerweiliang.lin@intel.com <weiliang.lin@intel.com>
Wed, 10 Sep 2014 02:44:43 +0000 (02:44 +0000)
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

src/x87/code-stubs-x87.h

index 9939bab..b500364 100644 (file)
@@ -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);