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 | 9 |
10 #include "src/assert-scope.h" | 10 #include "src/assert-scope.h" |
(...skipping 7281 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
7292 | 7292 |
7293 public: | 7293 public: |
7294 // Constants for optimizing codegen for strict mode function and | 7294 // Constants for optimizing codegen for strict mode function and |
7295 // native tests when using integer-width instructions. | 7295 // native tests when using integer-width instructions. |
7296 static const int kStrictModeBit = | 7296 static const int kStrictModeBit = |
7297 kStrictModeFunction + kCompilerHintsSmiTagSize; | 7297 kStrictModeFunction + kCompilerHintsSmiTagSize; |
7298 static const int kNativeBit = kNative + kCompilerHintsSmiTagSize; | 7298 static const int kNativeBit = kNative + kCompilerHintsSmiTagSize; |
7299 static const int kHasDuplicateParametersBit = | 7299 static const int kHasDuplicateParametersBit = |
7300 kHasDuplicateParameters + kCompilerHintsSmiTagSize; | 7300 kHasDuplicateParameters + kCompilerHintsSmiTagSize; |
7301 | 7301 |
| 7302 static const int kIsArrowBit = kIsArrow + kCompilerHintsSmiTagSize; |
| 7303 static const int kIsGeneratorBit = kIsGenerator + kCompilerHintsSmiTagSize; |
| 7304 static const int kIsConciseMethodBit = |
| 7305 kIsConciseMethod + kCompilerHintsSmiTagSize; |
| 7306 static const int kIsAsyncFunctionBit = |
| 7307 kIsAsyncFunction + kCompilerHintsSmiTagSize; |
| 7308 |
| 7309 static const int kAccessorFunctionBits = |
| 7310 FunctionKind::kAccessorFunction |
| 7311 << (kFunctionKind + kCompilerHintsSmiTagSize); |
7302 static const int kClassConstructorBits = | 7312 static const int kClassConstructorBits = |
7303 FunctionKind::kClassConstructor | 7313 FunctionKind::kClassConstructor |
7304 << (kFunctionKind + kCompilerHintsSmiTagSize); | 7314 << (kFunctionKind + kCompilerHintsSmiTagSize); |
| 7315 static const int kFunctionKindMaskBits = FunctionKindBits::kMask |
| 7316 << kCompilerHintsSmiTagSize; |
7305 | 7317 |
7306 // Constants for optimizing codegen for strict mode function and | 7318 // Constants for optimizing codegen for strict mode function and |
7307 // native tests. | 7319 // native tests. |
7308 // Allows to use byte-width instructions. | 7320 // Allows to use byte-width instructions. |
7309 static const int kStrictModeBitWithinByte = kStrictModeBit % kBitsPerByte; | 7321 static const int kStrictModeBitWithinByte = kStrictModeBit % kBitsPerByte; |
7310 static const int kNativeBitWithinByte = kNativeBit % kBitsPerByte; | 7322 static const int kNativeBitWithinByte = kNativeBit % kBitsPerByte; |
7311 static const int kHasDuplicateParametersBitWithinByte = | 7323 static const int kHasDuplicateParametersBitWithinByte = |
7312 kHasDuplicateParametersBit % kBitsPerByte; | 7324 kHasDuplicateParametersBit % kBitsPerByte; |
7313 | 7325 |
7314 static const int kClassConstructorBitsWithinByte = | 7326 static const int kClassConstructorBitsWithinByte = |
(...skipping 3500 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
10815 } | 10827 } |
10816 return value; | 10828 return value; |
10817 } | 10829 } |
10818 }; | 10830 }; |
10819 | 10831 |
10820 | 10832 |
10821 } // NOLINT, false-positive due to second-order macros. | 10833 } // NOLINT, false-positive due to second-order macros. |
10822 } // NOLINT, false-positive due to second-order macros. | 10834 } // NOLINT, false-positive due to second-order macros. |
10823 | 10835 |
10824 #endif // V8_OBJECTS_H_ | 10836 #endif // V8_OBJECTS_H_ |
OLD | NEW |