Flutter Engine
The Flutter Engine
|
#include <stub_code_compiler.h>
Public Types | |
enum | Optimized { kUnoptimized , kOptimized } |
enum | CallType { kInstanceCall , kStaticCall } |
enum | Exactness { kCheckExactness , kIgnoreExactness } |
using | STCSearchExitGenerator = std::function< void(Assembler *, int)> |
Public Member Functions | |
StubCodeCompiler (Assembler *assembler_, DescriptorList *pc_descriptors_list) | |
void | EnsureIsNewOrRemembered () |
void | GenerateAllocationStubForClass (UnresolvedPcRelativeCalls *unresolved_calls, const Class &cls, const dart::Code &allocate_object, const dart::Code &allocat_object_parametrized) |
void | GenerateNArgsCheckInlineCacheStub (intptr_t num_args, const RuntimeEntry &handle_ic_miss, Token::Kind kind, Optimized optimized, CallType type, Exactness exactness) |
void | GenerateNArgsCheckInlineCacheStubForEntryKind (intptr_t num_args, const RuntimeEntry &handle_ic_miss, Token::Kind kind, Optimized optimized, CallType type, Exactness exactness, CodeEntryKind entry_kind) |
void | GenerateUsageCounterIncrement (Register temp_reg) |
void | GenerateOptimizedUsageCounterIncrement () |
Static Public Member Functions | |
static ArrayPtr | BuildStaticCallsTable (Zone *zone, compiler::UnresolvedPcRelativeCalls *unresolved_calls) |
static intptr_t | WordOffsetFromFpToCpuRegister (Register cpu_register) |
Public Attributes | |
Assembler * | assembler |
Definition at line 53 of file stub_code_compiler.h.
using dart::compiler::StubCodeCompiler::STCSearchExitGenerator = std::function<void(Assembler*, int)> |
Definition at line 119 of file stub_code_compiler.h.
Enumerator | |
---|---|
kInstanceCall | |
kStaticCall |
Definition at line 79 of file stub_code_compiler.h.
Enumerator | |
---|---|
kCheckExactness | |
kIgnoreExactness |
Definition at line 83 of file stub_code_compiler.h.
Enumerator | |
---|---|
kUnoptimized | |
kOptimized |
Definition at line 75 of file stub_code_compiler.h.
|
inline |
Definition at line 55 of file stub_code_compiler.h.
|
static |
Definition at line 147 of file stub_code.cc.
void dart::compiler::StubCodeCompiler::EnsureIsNewOrRemembered | ( | ) |
void dart::compiler::StubCodeCompiler::GenerateAllocationStubForClass | ( | UnresolvedPcRelativeCalls * | unresolved_calls, |
const Class & | cls, | ||
const dart::Code & | allocate_object, | ||
const dart::Code & | allocat_object_parametrized | ||
) |
void dart::compiler::StubCodeCompiler::GenerateNArgsCheckInlineCacheStub | ( | intptr_t | num_args, |
const RuntimeEntry & | handle_ic_miss, | ||
Token::Kind | kind, | ||
Optimized | optimized, | ||
CallType | type, | ||
Exactness | exactness | ||
) |
void dart::compiler::StubCodeCompiler::GenerateNArgsCheckInlineCacheStubForEntryKind | ( | intptr_t | num_args, |
const RuntimeEntry & | handle_ic_miss, | ||
Token::Kind | kind, | ||
Optimized | optimized, | ||
CallType | type, | ||
Exactness | exactness, | ||
CodeEntryKind | entry_kind | ||
) |
void dart::compiler::StubCodeCompiler::GenerateOptimizedUsageCounterIncrement | ( | ) |
void dart::compiler::StubCodeCompiler::GenerateUsageCounterIncrement | ( | Register | temp_reg | ) |
|
static |
Definition at line 27 of file stub_code_compiler.cc.
Assembler* dart::compiler::StubCodeCompiler::assembler |
Definition at line 58 of file stub_code_compiler.h.