From 2d27c8e338af7262dbd4aaa66127bb8fa1758b86 Mon Sep 17 00:00:00 2001 From: Roland Levillain Date: Tue, 28 Apr 2015 15:48:45 +0100 Subject: Refactor InvokeDexCallingConventionVisitor in Optimizing. Change-Id: I7ede0f59d5109644887bf5d39201d4e1bf043f34 --- compiler/optimizing/code_generator.h | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) (limited to 'compiler/optimizing/code_generator.h') diff --git a/compiler/optimizing/code_generator.h b/compiler/optimizing/code_generator.h index 6342f91684..beaff5cc4c 100644 --- a/compiler/optimizing/code_generator.h +++ b/compiler/optimizing/code_generator.h @@ -105,6 +105,25 @@ class SlowPathCode : public ArenaObject { DISALLOW_COPY_AND_ASSIGN(SlowPathCode); }; +class InvokeDexCallingConventionVisitor { + public: + virtual Location GetNextLocation(Primitive::Type type) = 0; + + protected: + InvokeDexCallingConventionVisitor() {} + virtual ~InvokeDexCallingConventionVisitor() {} + + // The current index for core registers. + uint32_t gp_index_ = 0u; + // The current index for floating-point registers. + uint32_t float_index_ = 0u; + // The current stack index. + uint32_t stack_index_ = 0u; + + private: + DISALLOW_COPY_AND_ASSIGN(InvokeDexCallingConventionVisitor); +}; + class CodeGenerator { public: // Compiles the graph to executable instructions. Returns whether the compilation -- cgit v1.2.3