// In the context of wasm, the OptimizedEncodingListener specifically is // listening for the completion of complete tier-2.
using CompleteTier2Listener = RefPtr<JS::OptimizedEncodingListener>;
// Report tier-2 compilation results off-thread. If `maybeFuncIndex` is // `Some`, this report is for a partial tier-2 compilation of the specified // function. Otherwise it's for a complete tier-2 compilation.
// A struct containing the typed, imported values that are harvested from the // import object and passed to Module::instantiate(). This struct must be // stored in a (Persistent)Rooted, not in the heap due to its use of TraceRoot() // and complete lack of barriers.
// Module represents a compiled wasm module and primarily provides three // operations: instantiation, tiered compilation, serialization. A Module can be // instantiated any number of times to produce new Instance objects. A Module // can have a single tier-2 task initiated to augment a Module's code with a // higher tier. A Module can have its optimized code serialized at any point // where the LinkData is also available, which is primarily (1) at the end of // module generation, (2) at the end of tier-2 compilation. // // Fully linked-and-instantiated code (represented by SharedCode) can be shared // between instances.
class Module : public JS::WasmModule { // This has the same lifetime end as Module itself -- it can be dropped when // Module itself is dropped. const SharedModuleMetadata moduleMeta_;
// This contains all compilation artifacts for the module. const SharedCode code_;
// This field is set during complete tier-2 compilation and cleared on // success or failure. These happen on different threads and are serialized // by the control flow of helper tasks.
// Tier-2 compilation may be initiated after the Module is constructed at // most once. When tier-2 compilation completes, ModuleGenerator calls // finishTier2() from a helper thread, passing tier-variant data which will // be installed and made visible.
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.