OLD | NEW |
1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 the V8 project authors. All rights reserved. |
2 // Redistribution and use in source and binary forms, with or without | 2 // Redistribution and use in source and binary forms, with or without |
3 // modification, are permitted provided that the following conditions are | 3 // modification, are permitted provided that the following conditions are |
4 // met: | 4 // met: |
5 // | 5 // |
6 // * Redistributions of source code must retain the above copyright | 6 // * Redistributions of source code must retain the above copyright |
7 // notice, this list of conditions and the following disclaimer. | 7 // notice, this list of conditions and the following disclaimer. |
8 // * Redistributions in binary form must reproduce the above | 8 // * Redistributions in binary form must reproduce the above |
9 // copyright notice, this list of conditions and the following | 9 // copyright notice, this list of conditions and the following |
10 // disclaimer in the documentation and/or other materials provided | 10 // disclaimer in the documentation and/or other materials provided |
(...skipping 310 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
321 // the range. | 321 // the range. |
322 // All uses following the given position will be moved from this | 322 // All uses following the given position will be moved from this |
323 // live range to the result live range. | 323 // live range to the result live range. |
324 void SplitAt(LifetimePosition position, LiveRange* result, Zone* zone); | 324 void SplitAt(LifetimePosition position, LiveRange* result, Zone* zone); |
325 | 325 |
326 bool IsDouble() const { return is_double_; } | 326 bool IsDouble() const { return is_double_; } |
327 bool HasRegisterAssigned() const { | 327 bool HasRegisterAssigned() const { |
328 return assigned_register_ != kInvalidAssignment; | 328 return assigned_register_ != kInvalidAssignment; |
329 } | 329 } |
330 bool IsSpilled() const { return spilled_; } | 330 bool IsSpilled() const { return spilled_; } |
331 UsePosition* FirstPosWithHint() const; | |
332 | 331 |
333 LOperand* FirstHint() const { | 332 LOperand* FirstHint() const { |
334 UsePosition* pos = FirstPosWithHint(); | 333 UsePosition* pos = first_pos_; |
| 334 while (pos != NULL && !pos->HasHint()) pos = pos->next(); |
335 if (pos != NULL) return pos->hint(); | 335 if (pos != NULL) return pos->hint(); |
336 return NULL; | 336 return NULL; |
337 } | 337 } |
338 | 338 |
339 LifetimePosition Start() const { | 339 LifetimePosition Start() const { |
340 ASSERT(!IsEmpty()); | 340 ASSERT(!IsEmpty()); |
341 return first_interval()->start(); | 341 return first_interval()->start(); |
342 } | 342 } |
343 | 343 |
344 LifetimePosition End() const { | 344 LifetimePosition End() const { |
(...skipping 291 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
636 LifetimePosition allocation_finger_; | 636 LifetimePosition allocation_finger_; |
637 #endif | 637 #endif |
638 | 638 |
639 DISALLOW_COPY_AND_ASSIGN(LAllocator); | 639 DISALLOW_COPY_AND_ASSIGN(LAllocator); |
640 }; | 640 }; |
641 | 641 |
642 | 642 |
643 } } // namespace v8::internal | 643 } } // namespace v8::internal |
644 | 644 |
645 #endif // V8_LITHIUM_ALLOCATOR_H_ | 645 #endif // V8_LITHIUM_ALLOCATOR_H_ |
OLD | NEW |