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 7199 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
7210 | 7210 |
7211 // Indicates that the the shared function info is deserialized from cache. | 7211 // Indicates that the the shared function info is deserialized from cache. |
7212 DECL_BOOLEAN_ACCESSORS(deserialized) | 7212 DECL_BOOLEAN_ACCESSORS(deserialized) |
7213 | 7213 |
7214 // Indicates that the the shared function info has never been compiled before. | 7214 // Indicates that the the shared function info has never been compiled before. |
7215 DECL_BOOLEAN_ACCESSORS(never_compiled) | 7215 DECL_BOOLEAN_ACCESSORS(never_compiled) |
7216 | 7216 |
7217 // Whether this function was created from a FunctionDeclaration. | 7217 // Whether this function was created from a FunctionDeclaration. |
7218 DECL_BOOLEAN_ACCESSORS(is_declaration) | 7218 DECL_BOOLEAN_ACCESSORS(is_declaration) |
7219 | 7219 |
| 7220 // Indicates that asm->wasm conversion failed and should not be re-attempted. |
| 7221 DECL_BOOLEAN_ACCESSORS(is_asm_wasm_broken) |
| 7222 |
7220 inline FunctionKind kind(); | 7223 inline FunctionKind kind(); |
7221 inline void set_kind(FunctionKind kind); | 7224 inline void set_kind(FunctionKind kind); |
7222 | 7225 |
7223 // Indicates whether or not the code in the shared function support | 7226 // Indicates whether or not the code in the shared function support |
7224 // deoptimization. | 7227 // deoptimization. |
7225 inline bool has_deoptimization_support(); | 7228 inline bool has_deoptimization_support(); |
7226 | 7229 |
7227 // Enable deoptimization support through recompiled code. | 7230 // Enable deoptimization support through recompiled code. |
7228 void EnableDeoptimizationSupport(Code* recompiled); | 7231 void EnableDeoptimizationSupport(Code* recompiled); |
7229 | 7232 |
(...skipping 252 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
7482 kIsConciseMethod, | 7485 kIsConciseMethod, |
7483 kIsDefaultConstructor, | 7486 kIsDefaultConstructor, |
7484 kIsSubclassConstructor, | 7487 kIsSubclassConstructor, |
7485 kIsBaseConstructor, | 7488 kIsBaseConstructor, |
7486 kIsGetterFunction, | 7489 kIsGetterFunction, |
7487 kIsSetterFunction, | 7490 kIsSetterFunction, |
7488 // byte 3 | 7491 // byte 3 |
7489 kIsAsyncFunction, | 7492 kIsAsyncFunction, |
7490 kDeserialized, | 7493 kDeserialized, |
7491 kIsDeclaration, | 7494 kIsDeclaration, |
| 7495 kIsAsmWasmBroken, |
7492 kCompilerHintsCount, // Pseudo entry | 7496 kCompilerHintsCount, // Pseudo entry |
7493 }; | 7497 }; |
7494 // Add hints for other modes when they're added. | 7498 // Add hints for other modes when they're added. |
7495 STATIC_ASSERT(LANGUAGE_END == 3); | 7499 STATIC_ASSERT(LANGUAGE_END == 3); |
7496 // kFunctionKind has to be byte-aligned | 7500 // kFunctionKind has to be byte-aligned |
7497 STATIC_ASSERT((kFunctionKind % kBitsPerByte) == 0); | 7501 STATIC_ASSERT((kFunctionKind % kBitsPerByte) == 0); |
7498 // Make sure that FunctionKind and byte 2 are in sync: | 7502 // Make sure that FunctionKind and byte 2 are in sync: |
7499 #define ASSERT_FUNCTION_KIND_ORDER(functionKind, compilerFunctionKind) \ | 7503 #define ASSERT_FUNCTION_KIND_ORDER(functionKind, compilerFunctionKind) \ |
7500 STATIC_ASSERT(FunctionKind::functionKind == \ | 7504 STATIC_ASSERT(FunctionKind::functionKind == \ |
7501 1 << (compilerFunctionKind - kFunctionKind)) | 7505 1 << (compilerFunctionKind - kFunctionKind)) |
(...skipping 3572 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
11074 } | 11078 } |
11075 return value; | 11079 return value; |
11076 } | 11080 } |
11077 }; | 11081 }; |
11078 | 11082 |
11079 | 11083 |
11080 } // NOLINT, false-positive due to second-order macros. | 11084 } // NOLINT, false-positive due to second-order macros. |
11081 } // NOLINT, false-positive due to second-order macros. | 11085 } // NOLINT, false-positive due to second-order macros. |
11082 | 11086 |
11083 #endif // V8_OBJECTS_H_ | 11087 #endif // V8_OBJECTS_H_ |
OLD | NEW |