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

Unified Diff: src/ic/arm64/access-compiler-arm64.cc

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 | « src/ic/arm/access-compiler-arm.cc ('k') | src/ic/ia32/access-compiler-ia32.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: src/ic/arm64/access-compiler-arm64.cc
diff --git a/src/ic/arm64/access-compiler-arm64.cc b/src/ic/arm64/access-compiler-arm64.cc
index 62736338226f6401825591f0856901d3f8d10b7c..8cbb5278ea3fba02e0bf9b533d6585b203918756 100644
--- a/src/ic/arm64/access-compiler-arm64.cc
+++ b/src/ic/arm64/access-compiler-arm64.cc
@@ -25,23 +25,22 @@ void PropertyAccessCompiler::GenerateTailCall(MacroAssembler* masm,
// registers are actually scratch registers, and which are important. For now,
// we use the same assignments as ARM to remain on the safe side.
-Register* PropertyAccessCompiler::load_calling_convention() {
- // receiver, name, scratch1, scratch2, scratch3.
+void PropertyAccessCompiler::InitializePlatformSpecific(
+ AccessCompilerData* data) {
Register receiver = LoadDescriptor::ReceiverRegister();
Register name = LoadDescriptor::NameRegister();
- static Register registers[] = {receiver, name, x3, x0, x4};
- return registers;
-}
+ // Load calling convention.
+ // receiver, name, scratch1, scratch2, scratch3.
+ Register load_registers[] = {receiver, name, x3, x0, x4};
-Register* PropertyAccessCompiler::store_calling_convention() {
- // receiver, value, scratch1, scratch2.
- Register receiver = StoreDescriptor::ReceiverRegister();
- Register name = StoreDescriptor::NameRegister();
- static Register registers[] = {receiver, name, x3, x4};
- return registers;
-}
+ // Store calling convention.
+ // receiver, name, scratch1, scratch2.
+ Register store_registers[] = {receiver, name, x3, x4};
+ data->Initialize(arraysize(load_registers), load_registers,
+ arraysize(store_registers), store_registers);
+}
#undef __
} // namespace internal
« no previous file with comments | « src/ic/arm/access-compiler-arm.cc ('k') | src/ic/ia32/access-compiler-ia32.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698