![]() |
v8
V8 is Google’s open source high-performance JavaScript and WebAssembly engine, written in C++.
|
#include <loop-unrolling-reducer.h>
Public Member Functions | |
V< None > REDUCE_INPUT_GRAPH | Goto (V< None > ig_idx, const GotoOp >o) |
V< None > REDUCE_INPUT_GRAPH | Branch (V< None > ig_idx, const BranchOp &branch) |
V< AnyOrNone > REDUCE_INPUT_GRAPH | Call (V< AnyOrNone > ig_idx, const CallOp &call) |
V< None > REDUCE_INPUT_GRAPH | JSStackCheck (V< None > ig_idx, const JSStackCheckOp &check) |
Private Types | |
enum class | UnrollingStatus { kNotUnrolling , kUnrolling , kRemoveLoop } |
Private Member Functions | |
void | RemoveLoop (const Block *header) |
void | FullyUnrollLoop (const Block *header) |
void | PartiallyUnrollLoop (const Block *header) |
void | FixLoopPhis (const Block *input_graph_loop, Block *output_graph_loop, const Block *backedge_block) |
bool | IsRunningBuiltinPipeline () |
bool | StopUnrollingIfUnreachable (std::optional< Block * > output_graph_header=std::nullopt) |
Private Attributes | |
LoopUnrollingAnalyzer & | analyzer_ |
UnrollingStatus | unrolling_ = UnrollingStatus::kNotUnrolling |
bool | skip_next_stack_check_ = false |
const Block * | current_loop_header_ = nullptr |
JSHeapBroker * | broker_ = __ data() -> broker() |
Definition at line 372 of file loop-unrolling-reducer.h.
|
strongprivate |
Enumerator | |
---|---|
kNotUnrolling | |
kUnrolling | |
kRemoveLoop |
Definition at line 489 of file loop-unrolling-reducer.h.
|
inline |
|
inline |
|
private |
|
private |
Definition at line 671 of file loop-unrolling-reducer.h.
|
inline |
Definition at line 385 of file loop-unrolling-reducer.h.
|
inlineprivate |
Definition at line 507 of file loop-unrolling-reducer.h.
|
inline |
|
private |
Definition at line 543 of file loop-unrolling-reducer.h.
|
private |
Definition at line 657 of file loop-unrolling-reducer.h.
|
inlineprivate |
Definition at line 510 of file loop-unrolling-reducer.h.
|
private |
Definition at line 532 of file loop-unrolling-reducer.h.
|
private |
Definition at line 539 of file loop-unrolling-reducer.h.
|
private |
Definition at line 538 of file loop-unrolling-reducer.h.
|
private |
Definition at line 536 of file loop-unrolling-reducer.h.
|
private |
Definition at line 535 of file loop-unrolling-reducer.h.