#include <il_test_helper.h>
Definition at line 288 of file il_test_helper.h.
◆ IncomingDefKind
Enumerator |
---|
kImmediate | |
kDelayed | |
Definition at line 341 of file il_test_helper.h.
341 {
342 kImmediate,
343 kDelayed,
344 };
◆ FlowGraphBuilderHelper()
dart::FlowGraphBuilderHelper::FlowGraphBuilderHelper |
( |
intptr_t |
num_parameters = 0 , |
|
|
const std::function< void(const Function &)> & |
configure_function = [](const Function&) {} |
|
) |
| |
|
inlineexplicit |
Definition at line 290 of file il_test_helper.h.
293 {})
296 num_parameters,
298 configure_function)) {
300 }
bool is_optimizing() const
static CompilerState & Current()
void CreateCommonConstants()
static Thread * Current()
◆ AddVariable()
void dart::FlowGraphBuilderHelper::AddVariable |
( |
const char * |
name, |
|
|
const AbstractType & |
static_type, |
|
|
CompileType * |
inferred_arg_type = nullptr |
|
) |
| |
|
inline |
Definition at line 326 of file il_test_helper.h.
328 {
329 LocalVariable* v =
330 new LocalVariable(TokenPosition::kNoSource, TokenPosition::kNoSource,
336 inferred_arg_type);
339 }
static constexpr bool kCannotBeSentinel
static constexpr bool kCanBeNull
static CompileType FromAbstractType(const AbstractType &type, bool can_be_null, bool can_be_sentinel)
const ParsedFunction & parsed_function() const
bool AddVariable(LocalVariable *variable)
static constexpr intptr_t kNoKernelOffset
LocalScope * scope() const
static StringPtr New(Thread *thread, const char *cstr)
◆ DoubleConstant()
ConstantInstr * dart::FlowGraphBuilderHelper::DoubleConstant |
( |
double |
value | ) |
|
|
inline |
Definition at line 320 of file il_test_helper.h.
320 {
322 }
static DoublePtr NewCanonical(double d)
ConstantInstr * GetConstant(const Object &object, Representation representation=kTagged)
◆ FinishGraph()
void dart::FlowGraphBuilderHelper::FinishGraph |
( |
| ) |
|
|
inline |
Definition at line 387 of file il_test_helper.h.
387 {
389 GrowableArray<BitVector*> dominance_frontier;
391
392 for (auto& pending : pending_phis_) {
393 auto join = pending.phi->block();
394 EXPECT(pending.phi->InputCount() ==
join->PredecessorCount());
395 auto pred_index =
join->IndexOfPredecessor(pending.incoming.from());
397 pending.phi->InputAt(pred_index)->BindTo(pending.incoming.defn());
398 }
399 }
void ComputeDominators(GrowableArray< BitVector * > *dominance_frontier)
static SkString join(const CommandLineFlags::StringArray &)
◆ flow_graph()
FlowGraph * dart::FlowGraphBuilderHelper::flow_graph |
( |
| ) |
|
|
inline |
◆ IntConstant()
Definition at line 312 of file il_test_helper.h.
313 {
314 ASSERT(representation == kTagged ||
318 }
static IntegerPtr NewCanonical(const String &str)
static constexpr bool IsUnboxedInteger(Representation rep)
◆ JoinEntry()
Definition at line 307 of file il_test_helper.h.
307 {
310 }
intptr_t GetNextDeoptId()
intptr_t allocate_block_id()
◆ Phi()
Definition at line 373 of file il_test_helper.h.
374 {
375 auto phi =
new PhiInstr(
join, incoming.
size());
376 for (
size_t i = 0;
i < incoming.size();
i++) {
378 phi->SetInputAt(
i, input);
379 input->definition()->AddInputUse(input);
380 }
381 for (auto def : incoming) {
382 pending_phis_.
Add({phi, def});
383 }
384 return phi;
385 }
ConstantInstr * constant_dead() const
◆ TargetEntry()
The documentation for this class was generated from the following file: