emit_x64: EmitX64::Emit doesn't need descriptor argument

This commit is contained in:
MerryMage 2016-08-26 19:14:25 +01:00
parent 32c24d2cb3
commit 4f6ea715b2
3 changed files with 9 additions and 4 deletions

View file

@ -45,7 +45,9 @@ static void EraseInstruction(IR::Block& block, IR::Inst* inst) {
block.Instructions().erase(block.Instructions().iterator_to(*inst)); block.Instructions().erase(block.Instructions().iterator_to(*inst));
} }
EmitX64::BlockDescriptor EmitX64::Emit(const Arm::LocationDescriptor descriptor, Dynarmic::IR::Block& block) { EmitX64::BlockDescriptor EmitX64::Emit(IR::Block& block) {
const Arm::LocationDescriptor& descriptor = block.Location();
reg_alloc.Reset(); reg_alloc.Reset();
code->int3(); code->int3();

View file

@ -34,8 +34,11 @@ public:
size_t size; ///< Length in bytes of emitted code size_t size; ///< Length in bytes of emitted code
}; };
/// Emit host machine code for a basic block starting at `descriptor` with intermediate representation `ir`. /**
BlockDescriptor Emit(const Arm::LocationDescriptor descriptor, IR::Block& ir); * Emit host machine code for a basic block with intermediate representation `ir`.
* @note ir is modified.
*/
BlockDescriptor Emit(IR::Block& ir);
/// Looks up an emitted host block in the cache. /// Looks up an emitted host block in the cache.
boost::optional<BlockDescriptor> GetBasicBlock(Arm::LocationDescriptor descriptor) { boost::optional<BlockDescriptor> GetBasicBlock(Arm::LocationDescriptor descriptor) {

View file

@ -100,7 +100,7 @@ private:
Optimization::GetSetElimination(ir_block); Optimization::GetSetElimination(ir_block);
Optimization::DeadCodeElimination(ir_block); Optimization::DeadCodeElimination(ir_block);
Optimization::VerificationPass(ir_block); Optimization::VerificationPass(ir_block);
return emitter.Emit(descriptor, ir_block); return emitter.Emit(ir_block);
} }
}; };