![]() |
v8
V8 is Google’s open source high-performance JavaScript and WebAssembly engine, written in C++.
|
#include <map-inference.h>
Public Member Functions | |
| MapInference (JSHeapBroker *broker, Node *object, Effect effect) | |
| ~MapInference () | |
| V8_WARN_UNUSED_RESULT bool | HaveMaps () const |
| V8_WARN_UNUSED_RESULT bool | AllOfInstanceTypesAreJSReceiver () const |
| V8_WARN_UNUSED_RESULT bool | AllOfInstanceTypesAre (InstanceType type) const |
| V8_WARN_UNUSED_RESULT bool | AnyOfInstanceTypesAre (InstanceType type) const |
| V8_WARN_UNUSED_RESULT ZoneRefSet< Map > const & | GetMaps () |
| V8_WARN_UNUSED_RESULT bool | AllOfInstanceTypes (std::function< bool(InstanceType)> f) |
| V8_WARN_UNUSED_RESULT bool | Is (MapRef expected_map) |
| V8_WARN_UNUSED_RESULT bool | RelyOnMapsViaStability (CompilationDependencies *dependencies) |
| bool | RelyOnMapsPreferStability (CompilationDependencies *dependencies, JSGraph *jsgraph, Effect *effect, Control control, const FeedbackSource &feedback) |
| void | InsertMapChecks (JSGraph *jsgraph, Effect *effect, Control control, const FeedbackSource &feedback) |
| V8_WARN_UNUSED_RESULT Reduction | NoChange () |
Private Types | |
| enum | { kReliableOrGuarded , kUnreliableDontNeedGuard , kUnreliableNeedGuard } |
Private Member Functions | |
| bool | Safe () const |
| void | SetNeedGuardIfUnreliable () |
| void | SetGuarded () |
| V8_WARN_UNUSED_RESULT bool | AllOfInstanceTypesUnsafe (std::function< bool(InstanceType)> f) const |
| V8_WARN_UNUSED_RESULT bool | AnyOfInstanceTypesUnsafe (std::function< bool(InstanceType)> f) const |
| V8_WARN_UNUSED_RESULT bool | RelyOnMapsHelper (CompilationDependencies *dependencies, JSGraph *jsgraph, Effect *effect, Control control, const FeedbackSource &feedback) |
Private Attributes | |
| JSHeapBroker *const | broker_ |
| Node *const | object_ |
| ZoneRefSet< Map > | maps_ |
| enum v8::internal::compiler::MapInference:: { ... } | maps_state_ |
Definition at line 33 of file map-inference.h.
|
private |
| Enumerator | |
|---|---|
| kReliableOrGuarded | |
| kUnreliableDontNeedGuard | |
| kUnreliableNeedGuard | |
Definition at line 85 of file map-inference.h.
| v8::internal::compiler::MapInference::MapInference | ( | JSHeapBroker * | broker, |
| Node * | object, | ||
| Effect | effect ) |
| v8::internal::compiler::MapInference::~MapInference | ( | ) |
| bool v8::internal::compiler::MapInference::AllOfInstanceTypes | ( | std::function< bool(InstanceType)> | f | ) |
| bool v8::internal::compiler::MapInference::AllOfInstanceTypesAre | ( | InstanceType | type | ) | const |
Definition at line 47 of file map-inference.cc.
| bool v8::internal::compiler::MapInference::AllOfInstanceTypesAreJSReceiver | ( | ) | const |
Definition at line 42 of file map-inference.cc.
|
private |
Definition at line 64 of file map-inference.cc.
| bool v8::internal::compiler::MapInference::AnyOfInstanceTypesAre | ( | InstanceType | type | ) | const |
Definition at line 53 of file map-inference.cc.
|
private |
Definition at line 72 of file map-inference.cc.
| ZoneRefSet< Map > const & v8::internal::compiler::MapInference::GetMaps | ( | ) |
Definition at line 81 of file map-inference.cc.
| bool v8::internal::compiler::MapInference::HaveMaps | ( | ) | const |
| void v8::internal::compiler::MapInference::InsertMapChecks | ( | JSGraph * | jsgraph, |
| Effect * | effect, | ||
| Control | control, | ||
| const FeedbackSource & | feedback ) |
Definition at line 92 of file map-inference.cc.
Definition at line 86 of file map-inference.cc.
| Reduction v8::internal::compiler::MapInference::NoChange | ( | ) |
Definition at line 141 of file map-inference.cc.
|
private |
Definition at line 119 of file map-inference.cc.
| bool v8::internal::compiler::MapInference::RelyOnMapsPreferStability | ( | CompilationDependencies * | dependencies, |
| JSGraph * | jsgraph, | ||
| Effect * | effect, | ||
| Control | control, | ||
| const FeedbackSource & | feedback ) |
Definition at line 109 of file map-inference.cc.
| bool v8::internal::compiler::MapInference::RelyOnMapsViaStability | ( | CompilationDependencies * | dependencies | ) |
Definition at line 103 of file map-inference.cc.
|
private |
|
private |
|
private |
Definition at line 31 of file map-inference.cc.
|
private |
Definition at line 81 of file map-inference.h.
|
private |
Definition at line 84 of file map-inference.h.
| enum { ... } v8::internal::compiler::MapInference::maps_state_ |
|
private |
Definition at line 82 of file map-inference.h.