summaryrefslogtreecommitdiffstats
path: root/compiler/optimizing/register_allocator.h
diff options
context:
space:
mode:
authorNicolas Geoffray <ngeoffray@google.com>2015-03-06 16:10:14 +0000
committerNicolas Geoffray <ngeoffray@google.com>2015-03-06 16:10:14 +0000
commit154552e666347d41d95d7619c6ee56249ff4feca (patch)
treeb8bdb820be33317f23ef1d3e43d13b2b6bfb3ba5 /compiler/optimizing/register_allocator.h
parentb4ba354cf8d22b261205494875cc014f18587b50 (diff)
downloadart-154552e666347d41d95d7619c6ee56249ff4feca.tar.gz
art-154552e666347d41d95d7619c6ee56249ff4feca.tar.bz2
art-154552e666347d41d95d7619c6ee56249ff4feca.zip
Revert "[optimizing] Enable x86 long support."
Few libcore failures. This reverts commit b4ba354cf8d22b261205494875cc014f18587b50. Change-Id: I4a28d853e730dff9b69aec9555505803cf2fcd63
Diffstat (limited to 'compiler/optimizing/register_allocator.h')
-rw-r--r--compiler/optimizing/register_allocator.h24
1 files changed, 10 insertions, 14 deletions
diff --git a/compiler/optimizing/register_allocator.h b/compiler/optimizing/register_allocator.h
index fcc61128a6..579f069f5e 100644
--- a/compiler/optimizing/register_allocator.h
+++ b/compiler/optimizing/register_allocator.h
@@ -66,6 +66,13 @@ class RegisterAllocator {
bool log_fatal_on_failure);
static bool CanAllocateRegistersFor(const HGraph& graph, InstructionSet instruction_set);
+ static bool Supports(InstructionSet instruction_set) {
+ return instruction_set == kArm
+ || instruction_set == kArm64
+ || instruction_set == kThumb2
+ || instruction_set == kX86
+ || instruction_set == kX86_64;
+ }
size_t GetNumberOfSpillSlots() const {
return int_spill_slots_.Size()
@@ -114,21 +121,12 @@ class RegisterAllocator {
Location source,
Location destination) const;
void InsertMoveAfter(HInstruction* instruction, Location source, Location destination) const;
- void AddInputMoveFor(HInstruction* input,
- HInstruction* user,
- Location source,
- Location destination) const;
+ void AddInputMoveFor(HInstruction* user, Location source, Location destination) const;
void InsertParallelMoveAt(size_t position,
HInstruction* instruction,
Location source,
Location destination) const;
- void AddMove(HParallelMove* move,
- Location source,
- Location destination,
- HInstruction* instruction,
- Primitive::Type type) const;
-
// Helper methods.
void AllocateRegistersInternal();
void ProcessInstruction(HInstruction* instruction);
@@ -138,11 +136,9 @@ class RegisterAllocator {
int FindAvailableRegisterPair(size_t* next_use, size_t starting_at) const;
int FindAvailableRegister(size_t* next_use) const;
- // Try splitting an active non-pair or unaligned pair interval at the given `position`.
+ // Try splitting an active non-pair interval at the given `position`.
// Returns whether it was successful at finding such an interval.
- bool TrySplitNonPairOrUnalignedPairIntervalAt(size_t position,
- size_t first_register_use,
- size_t* next_use);
+ bool TrySplitNonPairIntervalAt(size_t position, size_t first_register_use, size_t* next_use);
ArenaAllocator* const allocator_;
CodeGenerator* const codegen_;