Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(496)

Unified Diff: src/ic/access-compiler.h

Issue 2389313002: Avoid static initializers in PropertyAccessCompiler (Closed)
Patch Set: Ports Created 4 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « BUILD.gn ('k') | src/ic/access-compiler.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: src/ic/access-compiler.h
diff --git a/src/ic/access-compiler.h b/src/ic/access-compiler.h
index ecc5c08a599931d16458812bd8c40e40b5b4e1c1..3d488e82ea9d0b765514cb601174d4955bc4c881 100644
--- a/src/ic/access-compiler.h
+++ b/src/ic/access-compiler.h
@@ -6,13 +6,13 @@
#define V8_IC_ACCESS_COMPILER_H_
#include "src/code-stubs.h"
+#include "src/ic/access-compiler-data.h"
#include "src/macro-assembler.h"
#include "src/objects.h"
namespace v8 {
namespace internal {
-
class PropertyAccessCompiler BASE_EMBEDDED {
public:
static Builtins::Name MissBuiltin(Code::Kind kind) {
@@ -36,7 +36,7 @@ class PropertyAccessCompiler BASE_EMBEDDED {
protected:
PropertyAccessCompiler(Isolate* isolate, Code::Kind kind,
CacheHolderFlag cache_holder)
- : registers_(GetCallingConvention(kind)),
+ : registers_(GetCallingConvention(isolate, kind)),
kind_(kind),
cache_holder_(cache_holder),
isolate_(isolate),
@@ -59,11 +59,6 @@ class PropertyAccessCompiler BASE_EMBEDDED {
Register scratch1() const { return registers_[2]; }
Register scratch2() const { return registers_[3]; }
- static Register* GetCallingConvention(Code::Kind);
- static Register* load_calling_convention();
- static Register* store_calling_convention();
- static Register* keyed_store_calling_convention();
-
Register* registers_;
static void GenerateTailCall(MacroAssembler* masm, Handle<Code> code);
@@ -72,6 +67,9 @@ class PropertyAccessCompiler BASE_EMBEDDED {
Handle<Code> GetCodeWithFlags(Code::Flags flags, Handle<Name> name);
private:
+ static Register* GetCallingConvention(Isolate* isolate, Code::Kind kind);
+ static void InitializePlatformSpecific(AccessCompilerData* data);
+
Code::Kind kind_;
CacheHolderFlag cache_holder_;
« no previous file with comments | « BUILD.gn ('k') | src/ic/access-compiler.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698