OLD | NEW |
1 // Copyright 2015 the V8 project authors. All rights reserved. | 1 // Copyright 2015 the V8 project authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef V8_OBJECTS_H_ | 5 #ifndef V8_OBJECTS_H_ |
6 #define V8_OBJECTS_H_ | 6 #define V8_OBJECTS_H_ |
7 | 7 |
8 #include <iosfwd> | 8 #include <iosfwd> |
9 #include <memory> | 9 #include <memory> |
10 | 10 |
(...skipping 4464 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
4475 inline int GetRangeData(int index) const; | 4475 inline int GetRangeData(int index) const; |
4476 | 4476 |
4477 // Setters for handler table based on ranges. | 4477 // Setters for handler table based on ranges. |
4478 inline void SetRangeStart(int index, int value); | 4478 inline void SetRangeStart(int index, int value); |
4479 inline void SetRangeEnd(int index, int value); | 4479 inline void SetRangeEnd(int index, int value); |
4480 inline void SetRangeHandler(int index, int offset, CatchPrediction pred); | 4480 inline void SetRangeHandler(int index, int offset, CatchPrediction pred); |
4481 inline void SetRangeData(int index, int value); | 4481 inline void SetRangeData(int index, int value); |
4482 | 4482 |
4483 // Setters for handler table based on return addresses. | 4483 // Setters for handler table based on return addresses. |
4484 inline void SetReturnOffset(int index, int value); | 4484 inline void SetReturnOffset(int index, int value); |
4485 inline void SetReturnHandler(int index, int offset, CatchPrediction pred); | 4485 inline void SetReturnHandler(int index, int offset); |
4486 | 4486 |
4487 // Lookup handler in a table based on ranges. | 4487 // Lookup handler in a table based on ranges. |
4488 int LookupRange(int pc_offset, int* data, CatchPrediction* prediction); | 4488 int LookupRange(int pc_offset, int* data, CatchPrediction* prediction); |
4489 | 4489 |
4490 // Lookup handler in a table based on return addresses. | 4490 // Lookup handler in a table based on return addresses. |
4491 int LookupReturn(int pc_offset); | 4491 int LookupReturn(int pc_offset); |
4492 | 4492 |
4493 // Returns the conservative catch predication. | |
4494 inline CatchPrediction GetRangePrediction(int index) const; | |
4495 | |
4496 // Returns the number of entries in the table. | 4493 // Returns the number of entries in the table. |
4497 inline int NumberOfRangeEntries() const; | 4494 inline int NumberOfRangeEntries() const; |
4498 | 4495 |
4499 // Returns the required length of the underlying fixed array. | 4496 // Returns the required length of the underlying fixed array. |
4500 static int LengthForRange(int entries) { return entries * kRangeEntrySize; } | 4497 static int LengthForRange(int entries) { return entries * kRangeEntrySize; } |
4501 static int LengthForReturn(int entries) { return entries * kReturnEntrySize; } | 4498 static int LengthForReturn(int entries) { return entries * kReturnEntrySize; } |
4502 | 4499 |
4503 DECLARE_CAST(HandlerTable) | 4500 DECLARE_CAST(HandlerTable) |
4504 | 4501 |
4505 #ifdef ENABLE_DISASSEMBLER | 4502 #ifdef ENABLE_DISASSEMBLER |
(...skipping 6554 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
11060 } | 11057 } |
11061 return value; | 11058 return value; |
11062 } | 11059 } |
11063 }; | 11060 }; |
11064 | 11061 |
11065 | 11062 |
11066 } // NOLINT, false-positive due to second-order macros. | 11063 } // NOLINT, false-positive due to second-order macros. |
11067 } // NOLINT, false-positive due to second-order macros. | 11064 } // NOLINT, false-positive due to second-order macros. |
11068 | 11065 |
11069 #endif // V8_OBJECTS_H_ | 11066 #endif // V8_OBJECTS_H_ |
OLD | NEW |