diff options
| author | 2016-04-13 16:55:11 +0000 | |
|---|---|---|
| committer | 2016-04-13 16:55:11 +0000 | |
| commit | 8d4b37ed048487561358e13e2a18ad9ca0dab3c0 (patch) | |
| tree | f1d50e29322a92b66727a2a350731e11e32677bf /compiler/utils/arm/assembler_arm.h | |
| parent | de76960329b18f5330a9a08f24ba661516a93ac3 (diff) | |
| parent | 93205e395f777c1dd81d3f164cf9a4aec4bde45f (diff) | |
Merge "Move Assemblers to the Arena."
Diffstat (limited to 'compiler/utils/arm/assembler_arm.h')
| -rw-r--r-- | compiler/utils/arm/assembler_arm.h | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/compiler/utils/arm/assembler_arm.h b/compiler/utils/arm/assembler_arm.h index a894565425..ffbe786bf4 100644 --- a/compiler/utils/arm/assembler_arm.h +++ b/compiler/utils/arm/assembler_arm.h @@ -20,6 +20,8 @@ #include <type_traits> #include <vector> +#include "base/arena_allocator.h" +#include "base/arena_containers.h" #include "base/bit_utils.h" #include "base/logging.h" #include "base/stl_util.h" @@ -1078,6 +1080,9 @@ class ArmAssembler : public Assembler { } protected: + explicit ArmAssembler(ArenaAllocator* arena) + : Assembler(arena), tracked_labels_(arena->Adapter(kArenaAllocAssembler)) {} + // Returns whether or not the given register is used for passing parameters. static int RegisterCompare(const Register* reg1, const Register* reg2) { return *reg1 - *reg2; @@ -1086,7 +1091,7 @@ class ArmAssembler : public Assembler { void FinalizeTrackedLabels(); // Tracked labels. Use a vector, as we need to sort before adjusting. - std::vector<Label*> tracked_labels_; + ArenaVector<Label*> tracked_labels_; }; // Slowpath entered when Thread::Current()->_exception is non-null |