vendor/v8/src/lithium-allocator.h in mustang-0.0.1 vs vendor/v8/src/lithium-allocator.h in mustang-0.1.0

- old
+ new

@@ -426,28 +426,12 @@ }; class LAllocator BASE_EMBEDDED { public: - explicit LAllocator(int first_virtual_register, HGraph* graph) - : chunk_(NULL), - live_in_sets_(0), - live_ranges_(16), - fixed_live_ranges_(8), - fixed_double_live_ranges_(8), - unhandled_live_ranges_(8), - active_live_ranges_(8), - inactive_live_ranges_(8), - reusable_slots_(8), - next_virtual_register_(first_virtual_register), - first_artificial_register_(first_virtual_register), - mode_(NONE), - num_registers_(-1), - graph_(graph), - has_osr_entry_(false) {} + LAllocator(int first_virtual_register, HGraph* graph); - static void Setup(); static void TraceAlloc(const char* msg, ...); // Lithium translation support. // Record a use of an input operand in the current instruction. void RecordUse(HValue* value, LUnallocated* operand); @@ -466,14 +450,14 @@ static int max_initial_value_ids(); void Allocate(LChunk* chunk); const ZoneList<LiveRange*>* live_ranges() const { return &live_ranges_; } - const ZoneList<LiveRange*>* fixed_live_ranges() const { + const Vector<LiveRange*>* fixed_live_ranges() const { return &fixed_live_ranges_; } - const ZoneList<LiveRange*>* fixed_double_live_ranges() const { + const Vector<LiveRange*>* fixed_double_live_ranges() const { return &fixed_double_live_ranges_; } LChunk* chunk() const { return chunk_; } HGraph* graph() const { return graph_; } @@ -614,11 +598,13 @@ // Liveness analysis results. ZoneList<LiveRange*> live_ranges_; // Lists of live ranges - ZoneList<LiveRange*> fixed_live_ranges_; - ZoneList<LiveRange*> fixed_double_live_ranges_; + EmbeddedVector<LiveRange*, Register::kNumAllocatableRegisters> + fixed_live_ranges_; + EmbeddedVector<LiveRange*, DoubleRegister::kNumAllocatableRegisters> + fixed_double_live_ranges_; ZoneList<LiveRange*> unhandled_live_ranges_; ZoneList<LiveRange*> active_live_ranges_; ZoneList<LiveRange*> inactive_live_ranges_; ZoneList<LiveRange*> reusable_slots_;