OLD | NEW |
1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 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_UTILS_H_ | 5 #ifndef V8_UTILS_H_ |
6 #define V8_UTILS_H_ | 6 #define V8_UTILS_H_ |
7 | 7 |
8 #include <limits.h> | 8 #include <limits.h> |
9 #include <stdlib.h> | 9 #include <stdlib.h> |
10 #include <string.h> | 10 #include <string.h> |
(...skipping 1107 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1118 | 1118 |
1119 // Every FunctionState starts with this id. | 1119 // Every FunctionState starts with this id. |
1120 static const int kFirstUsableId = 5; | 1120 static const int kFirstUsableId = 5; |
1121 | 1121 |
1122 // Every compiled stub starts with this id. | 1122 // Every compiled stub starts with this id. |
1123 static const int kStubEntryId = 6; | 1123 static const int kStubEntryId = 6; |
1124 | 1124 |
1125 int id_; | 1125 int id_; |
1126 }; | 1126 }; |
1127 | 1127 |
| 1128 class TokenDispenserForFinally { |
| 1129 public: |
| 1130 int GetBreakContinueToken() { return next_token_++; } |
| 1131 static const int kFallThroughToken = 0; |
| 1132 static const int kThrowToken = 1; |
| 1133 static const int kReturnToken = 2; |
| 1134 |
| 1135 static const int kFirstBreakContinueToken = 3; |
| 1136 static const int kInvalidToken = -1; |
| 1137 |
| 1138 private: |
| 1139 int next_token_ = kFirstBreakContinueToken; |
| 1140 }; |
1128 | 1141 |
1129 // ---------------------------------------------------------------------------- | 1142 // ---------------------------------------------------------------------------- |
1130 // I/O support. | 1143 // I/O support. |
1131 | 1144 |
1132 #if __GNUC__ >= 4 | 1145 #if __GNUC__ >= 4 |
1133 // On gcc we can ask the compiler to check the types of %d-style format | 1146 // On gcc we can ask the compiler to check the types of %d-style format |
1134 // specifiers and their associated arguments. TODO(erikcorry) fix this | 1147 // specifiers and their associated arguments. TODO(erikcorry) fix this |
1135 // so it works on MacOSX. | 1148 // so it works on MacOSX. |
1136 #if defined(__MACH__) && defined(__APPLE__) | 1149 #if defined(__MACH__) && defined(__APPLE__) |
1137 #define PRINTF_CHECKING | 1150 #define PRINTF_CHECKING |
(...skipping 617 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1755 } | 1768 } |
1756 | 1769 |
1757 static inline void WriteUnalignedUInt32(void* p, uint32_t value) { | 1770 static inline void WriteUnalignedUInt32(void* p, uint32_t value) { |
1758 WriteUnalignedValue(p, value); | 1771 WriteUnalignedValue(p, value); |
1759 } | 1772 } |
1760 | 1773 |
1761 } // namespace internal | 1774 } // namespace internal |
1762 } // namespace v8 | 1775 } // namespace v8 |
1763 | 1776 |
1764 #endif // V8_UTILS_H_ | 1777 #endif // V8_UTILS_H_ |
OLD | NEW |