Flutter Engine
The Flutter Engine
Classes | Namespaces | Macros | Enumerations | Functions
il_test_helper.h File Reference
#include <memory>
#include <type_traits>
#include <utility>
#include <vector>
#include "include/dart_api.h"
#include "platform/allocation.h"
#include "vm/compiler/backend/flow_graph.h"
#include "vm/compiler/backend/il.h"
#include "vm/compiler/backend/inliner.h"
#include "vm/compiler/compiler_pass.h"
#include "vm/compiler/compiler_state.h"
#include "vm/compiler/jit/compiler.h"
#include "vm/unit_test.h"

Go to the source code of this file.

Classes

class  dart::TestPipeline
 
class  dart::MatchCode
 
class  dart::ILMatcher
 
class  dart::FlowGraphBuilderHelper
 
class  dart::FlowGraphBuilderHelper::IncomingDef
 

Namespaces

namespace  dart
 

Macros

#define DEFINE_MATCH_OPCODES(Instruction, _)
 
#define DEFINE_TYPED_CONSTRUCTOR(Type, ignored)
 
#define ENTITY_TOCSTRING(v)   ((v)->ToCString())
 
#define EXPECT_PROPERTY(entity, property)
 

Enumerations

enum  dart::MatchOpCode {
  dart::kMatchAndMoveBranchTrue , dart::kMatchAndMoveBranchFalse , dart::kNop , dart::kMoveAny ,
  dart::kMoveParallelMoves , dart::kMoveGlob , dart::kMoveDebugStepChecks , dart::kInvalidMatchOpCode
}
 
enum class  dart::ParallelMovesHandling { dart::kDefault , dart::kSkip }
 

Functions

LibraryPtr dart::LoadTestScript (const char *script, Dart_NativeEntryResolver resolver, const char *lib_uri)
 
 dart::NOT_IN_PRODUCT (LibraryPtr ReloadTestScript(const char *script))
 
FunctionPtr dart::GetFunction (const Library &lib, const char *name)
 
ClassPtr dart::GetClass (const Library &lib, const char *name)
 
TypeParameterPtr dart::GetClassTypeParameter (const Class &klass, intptr_t index)
 
TypeParameterPtr dart::GetFunctionTypeParameter (const Function &fun, intptr_t index)
 
ObjectPtr dart::Invoke (const Library &lib, const char *name)
 
InstructionsPtr dart::BuildInstructions (std::function< void(compiler::Assembler *assembler)> fun)
 

Macro Definition Documentation

◆ DEFINE_MATCH_OPCODES

#define DEFINE_MATCH_OPCODES (   Instruction,
 
)
Value:
kMatch##Instruction, kMatchAndMove##Instruction, \
kMatchAndMoveOptional##Instruction,

Definition at line 136 of file il_test_helper.h.

◆ DEFINE_TYPED_CONSTRUCTOR

#define DEFINE_TYPED_CONSTRUCTOR (   Type,
  ignored 
)
Value:
MatchCode(MatchOpCode opcode, Type##Instr** capture) \
: opcode_(opcode), capture_(reinterpret_cast<Instruction**>(capture)) { \
RELEASE_ASSERT(opcode == kMatch##Type || opcode == kMatchAndMove##Type); \
}

Definition at line 178 of file il_test_helper.h.

◆ ENTITY_TOCSTRING

#define ENTITY_TOCSTRING (   v)    ((v)->ToCString())

Definition at line 268 of file il_test_helper.h.

◆ EXPECT_PROPERTY

#define EXPECT_PROPERTY (   entity,
  property 
)
Value:
do { \
auto& it = *entity; \
if (!(property)) { \
dart::Expect(__FILE__, __LINE__) \
.Fail("expected " #property " for " #entity " which is %s.\n", \
ENTITY_TOCSTRING(entity)); \
} \
} while (0)
#define ENTITY_TOCSTRING(v)

Definition at line 278 of file il_test_helper.h.