| 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 7397 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 7408 | 7408 |
| 7409 // Is this a function or top-level/eval code. | 7409 // Is this a function or top-level/eval code. |
| 7410 DECL_BOOLEAN_ACCESSORS(is_function) | 7410 DECL_BOOLEAN_ACCESSORS(is_function) |
| 7411 | 7411 |
| 7412 // Indicates that code for this function cannot be compiled with Crankshaft. | 7412 // Indicates that code for this function cannot be compiled with Crankshaft. |
| 7413 DECL_BOOLEAN_ACCESSORS(dont_crankshaft) | 7413 DECL_BOOLEAN_ACCESSORS(dont_crankshaft) |
| 7414 | 7414 |
| 7415 // Indicates that code for this function cannot be flushed. | 7415 // Indicates that code for this function cannot be flushed. |
| 7416 DECL_BOOLEAN_ACCESSORS(dont_flush) | 7416 DECL_BOOLEAN_ACCESSORS(dont_flush) |
| 7417 | 7417 |
| 7418 // Indicates that this function is a generator. | |
| 7419 DECL_BOOLEAN_ACCESSORS(is_generator) | |
| 7420 | |
| 7421 // Indicates that this function is an async function. | |
| 7422 DECL_BOOLEAN_ACCESSORS(is_async) | |
| 7423 | |
| 7424 // Indicates that this function can be suspended, either via YieldExpressions | |
| 7425 // or AwaitExpressions. | |
| 7426 inline bool is_resumable() const; | |
| 7427 | |
| 7428 // Indicates that this function is an arrow function. | |
| 7429 DECL_BOOLEAN_ACCESSORS(is_arrow) | |
| 7430 | |
| 7431 // Indicates that this function is a concise method. | |
| 7432 DECL_BOOLEAN_ACCESSORS(is_concise_method) | |
| 7433 | |
| 7434 // Indicates that this function is a getter. | |
| 7435 DECL_BOOLEAN_ACCESSORS(is_getter_function) | |
| 7436 | |
| 7437 // Indicates that this function is a setter. | |
| 7438 DECL_BOOLEAN_ACCESSORS(is_setter_function) | |
| 7439 | |
| 7440 // Indicates that this function is a default constructor. | |
| 7441 DECL_BOOLEAN_ACCESSORS(is_default_constructor) | |
| 7442 | |
| 7443 // Indicates that this is a constructor for a base class with instance fields. | 7418 // Indicates that this is a constructor for a base class with instance fields. |
| 7444 DECL_BOOLEAN_ACCESSORS(requires_class_field_init) | 7419 DECL_BOOLEAN_ACCESSORS(requires_class_field_init) |
| 7445 // Indicates that this is a synthesized function to set up class instance | 7420 // Indicates that this is a synthesized function to set up class instance |
| 7446 // fields. | 7421 // fields. |
| 7447 DECL_BOOLEAN_ACCESSORS(is_class_field_initializer) | 7422 DECL_BOOLEAN_ACCESSORS(is_class_field_initializer) |
| 7448 | 7423 |
| 7449 // Indicates that this function is an asm function. | 7424 // Indicates that this function is an asm function. |
| 7450 DECL_BOOLEAN_ACCESSORS(asm_function) | 7425 DECL_BOOLEAN_ACCESSORS(asm_function) |
| 7451 | 7426 |
| 7452 // Indicates that the the shared function info is deserialized from cache. | 7427 // Indicates that the the shared function info is deserialized from cache. |
| 7453 DECL_BOOLEAN_ACCESSORS(deserialized) | 7428 DECL_BOOLEAN_ACCESSORS(deserialized) |
| 7454 | 7429 |
| 7455 // Indicates that the the shared function info has never been compiled before. | 7430 // Indicates that the the shared function info has never been compiled before. |
| 7456 DECL_BOOLEAN_ACCESSORS(never_compiled) | 7431 DECL_BOOLEAN_ACCESSORS(never_compiled) |
| 7457 | 7432 |
| 7458 // Whether this function was created from a FunctionDeclaration. | 7433 // Whether this function was created from a FunctionDeclaration. |
| 7459 DECL_BOOLEAN_ACCESSORS(is_declaration) | 7434 DECL_BOOLEAN_ACCESSORS(is_declaration) |
| 7460 | 7435 |
| 7461 // Indicates that asm->wasm conversion failed and should not be re-attempted. | 7436 // Indicates that asm->wasm conversion failed and should not be re-attempted. |
| 7462 DECL_BOOLEAN_ACCESSORS(is_asm_wasm_broken) | 7437 DECL_BOOLEAN_ACCESSORS(is_asm_wasm_broken) |
| 7463 | 7438 |
| 7464 inline FunctionKind kind(); | 7439 inline FunctionKind kind() const; |
| 7465 inline void set_kind(FunctionKind kind); | 7440 inline void set_kind(FunctionKind kind); |
| 7466 | 7441 |
| 7467 // Indicates whether or not the code in the shared function support | 7442 // Indicates whether or not the code in the shared function support |
| 7468 // deoptimization. | 7443 // deoptimization. |
| 7469 inline bool has_deoptimization_support(); | 7444 inline bool has_deoptimization_support(); |
| 7470 | 7445 |
| 7471 // Enable deoptimization support through recompiled code. | 7446 // Enable deoptimization support through recompiled code. |
| 7472 void EnableDeoptimizationSupport(Code* recompiled); | 7447 void EnableDeoptimizationSupport(Code* recompiled); |
| 7473 | 7448 |
| 7474 // Disable (further) attempted optimization of all functions sharing this | 7449 // Disable (further) attempted optimization of all functions sharing this |
| (...skipping 3976 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 11451 } | 11426 } |
| 11452 return value; | 11427 return value; |
| 11453 } | 11428 } |
| 11454 }; | 11429 }; |
| 11455 | 11430 |
| 11456 | 11431 |
| 11457 } // NOLINT, false-positive due to second-order macros. | 11432 } // NOLINT, false-positive due to second-order macros. |
| 11458 } // NOLINT, false-positive due to second-order macros. | 11433 } // NOLINT, false-positive due to second-order macros. |
| 11459 | 11434 |
| 11460 #endif // V8_OBJECTS_H_ | 11435 #endif // V8_OBJECTS_H_ |
| OLD | NEW |