diff options
Diffstat (limited to 'compiler/optimizing/optimizing_unit_test.h')
| -rw-r--r-- | compiler/optimizing/optimizing_unit_test.h | 21 | 
1 files changed, 21 insertions, 0 deletions
diff --git a/compiler/optimizing/optimizing_unit_test.h b/compiler/optimizing/optimizing_unit_test.h index 67c4850ca5..36a6a21d01 100644 --- a/compiler/optimizing/optimizing_unit_test.h +++ b/compiler/optimizing/optimizing_unit_test.h @@ -17,6 +17,10 @@  #ifndef ART_COMPILER_OPTIMIZING_OPTIMIZING_UNIT_TEST_H_  #define ART_COMPILER_OPTIMIZING_OPTIMIZING_UNIT_TEST_H_ +#include "ssa_liveness_analysis.h" + +namespace art { +  #define NUM_INSTRUCTIONS(...)  \    (sizeof((uint16_t[]) {__VA_ARGS__}) /sizeof(uint16_t)) @@ -29,4 +33,21 @@  #define TWO_REGISTERS_CODE_ITEM(...)                                       \      { 2, 0, 0, 0, 0, 0, NUM_INSTRUCTIONS(__VA_ARGS__), 0, __VA_ARGS__ } +#define THREE_REGISTERS_CODE_ITEM(...)                                     \ +    { 3, 0, 0, 0, 0, 0, NUM_INSTRUCTIONS(__VA_ARGS__), 0, __VA_ARGS__ } + +LiveInterval* BuildInterval(const size_t ranges[][2], +                            size_t number_of_ranges, +                            ArenaAllocator* allocator, +                            int reg = -1) { +  LiveInterval* interval = new (allocator) LiveInterval(allocator, Primitive::kPrimInt); +  for (size_t i = number_of_ranges; i > 0; --i) { +    interval->AddRange(ranges[i - 1][0], ranges[i - 1][1]); +  } +  interval->SetRegister(reg); +  return interval; +} + +}  // namespace art +  #endif  // ART_COMPILER_OPTIMIZING_OPTIMIZING_UNIT_TEST_H_  |