Searched refs:lir (Results 1 – 15 of 15) sorted by relevance
/tools/dexter/dexter/ |
D | disassembler.h | 27 class PrintCodeIrVisitor : public lir::Visitor { 29 PrintCodeIrVisitor(std::shared_ptr<ir::DexFile> dex_ir, lir::ControlFlowGraph* cfg) in PrintCodeIrVisitor() 33 virtual bool Visit(lir::Bytecode* bytecode) override; 34 virtual bool Visit(lir::PackedSwitchPayload* packed_switch) override; 35 virtual bool Visit(lir::SparseSwitchPayload* sparse_switch) override; 36 virtual bool Visit(lir::ArrayData* array_data) override; 37 virtual bool Visit(lir::Label* label) override; 38 virtual bool Visit(lir::CodeLocation* location) override; 39 virtual bool Visit(lir::Const32* const32) override; 40 virtual bool Visit(lir::Const64* const64) override; [all …]
|
D | disassembler.cc | 41 void PrintCodeIrVisitor::StartInstruction(const lir::Instruction* instr) { in StartInstruction() 45 const lir::BasicBlock& current_block = cfg_->basic_blocks[current_block_index_]; in StartInstruction() 51 void PrintCodeIrVisitor::EndInstruction(const lir::Instruction* instr) { in EndInstruction() 55 const lir::BasicBlock& current_block = cfg_->basic_blocks[current_block_index_]; in EndInstruction() 62 bool PrintCodeIrVisitor::Visit(lir::Bytecode* bytecode) { in Visit() 76 bool PrintCodeIrVisitor::Visit(lir::PackedSwitchPayload* packed_switch) { in Visit() 89 bool PrintCodeIrVisitor::Visit(lir::SparseSwitchPayload* sparse_switch) { in Visit() 101 bool PrintCodeIrVisitor::Visit(lir::ArrayData* array_data) { in Visit() 108 bool PrintCodeIrVisitor::Visit(lir::CodeLocation* target) { in Visit() 113 bool PrintCodeIrVisitor::Visit(lir::Const32* const32) { in Visit() [all …]
|
D | experimental.cc | 37 lir::CodeIr code_ir(ir_method.get(), dex_ir); in FullRewrite() 38 lir::ControlFlowGraph cfg_compact(&code_ir, false); in FullRewrite() 39 lir::ControlFlowGraph cfg_verbose(&code_ir, true); in FullRewrite() 56 lir::CodeIr code_ir(ir_method.get(), dex_ir); in StressWrapInvoke() 69 auto bytecode = dynamic_cast<lir::Bytecode*>(instr); in StressWrapInvoke() 88 auto orig_method = bytecode->CastOperand<lir::Method>(1)->ir_method; in StressWrapInvoke() 105 auto wraper_method = code_ir.Alloc<lir::Method>(ir_method_decl, ir_method_decl->orig_index); in StressWrapInvoke() 108 auto new_call = code_ir.Alloc<lir::Bytecode>(); in StressWrapInvoke() 146 lir::CodeIr code_ir(ir_method.get(), dex_ir); in StressEntryHook() 166 auto target_method = code_ir.Alloc<lir::Method>(ir_method_decl, ir_method_decl->orig_index); in StressEntryHook() [all …]
|
/tools/dexter/slicer/ |
D | instrumentation.cc | 28 struct BytecodeConvertingVisitor : public lir::Visitor { 29 lir::Bytecode* out = nullptr; 30 bool Visit(lir::Bytecode* bytecode) { in Visit() 36 void BoxValue(lir::Bytecode* bytecode, in BoxValue() 37 lir::CodeIr* code_ir, in BoxValue() 83 auto boxing_method = code_ir->Alloc<lir::Method>(ir_method_decl, ir_method_decl->orig_index); in BoxValue() 85 auto args = code_ir->Alloc<lir::VRegRange>(src_reg, 1 + is_wide); in BoxValue() 86 auto boxing_invoke = code_ir->Alloc<lir::Bytecode>(); in BoxValue() 92 auto move_result = code_ir->Alloc<lir::Bytecode>(); in BoxValue() 94 move_result->operands.push_back(code_ir->Alloc<lir::VReg>(dst_reg)); in BoxValue() [all …]
|
D | tryblocks_encoder.cc | 22 namespace lir { namespace
|
D | control_flow_graph.cc | 19 namespace lir { namespace
|
D | debuginfo_encoder.cc | 26 namespace lir { namespace
|
D | code_ir.cc | 33 namespace lir { namespace
|
D | bytecode_encoder.cc | 26 namespace lir { namespace
|
/tools/dexter/slicer/export/slicer/ |
D | instrumentation.h | 35 virtual bool Apply(lir::CodeIr* code_ir) = 0; 72 virtual bool Apply(lir::CodeIr* code_ir) override; 78 bool InjectArrayParamsHook(lir::CodeIr* code_ir, lir::Bytecode* bytecode); 105 virtual bool Apply(lir::CodeIr* code_ir) override; 134 virtual bool Apply(lir::CodeIr* code_ir) override; 176 virtual bool Apply(lir::CodeIr* code_ir) override; 184 void RegsRenumbering(lir::CodeIr* code_ir); 185 void ShiftParams(lir::CodeIr* code_ir); 186 void Allocate(lir::CodeIr* code_ir, dex::u4 first_reg, int count);
|
D | tryblocks_encoder.h | 25 namespace lir {
|
D | debuginfo_encoder.h | 27 namespace lir {
|
D | control_flow_graph.h | 24 namespace lir {
|
D | bytecode_encoder.h | 27 namespace lir {
|
D | code_ir.h | 44 namespace lir {
|