Implement stack_addr for AArch64

This commit is contained in:
bjorn3
2020-04-15 18:28:31 +02:00
parent d2eb56c607
commit 1bee1af755
6 changed files with 95 additions and 3 deletions

View File

@@ -31,6 +31,8 @@ pub trait LowerCtx {
fn data(&self, ir_inst: Inst) -> &InstructionData;
/// Get the controlling type for a polymorphic IR instruction.
fn ty(&self, ir_inst: Inst) -> Type;
/// Get the `ABIBody`.
fn abi(&mut self) -> &dyn ABIBody<I = Self::I>;
/// Emit a machine instruction.
fn emit(&mut self, mach_inst: Self::I);
/// Indicate that an IR instruction has been merged, and so one of its
@@ -527,6 +529,10 @@ impl<'a, I: VCodeInst> LowerCtx for Lower<'a, I> {
self.f.dfg.ctrl_typevar(ir_inst)
}
fn abi(&mut self) -> &dyn ABIBody<I = I> {
self.vcode.abi()
}
/// Emit a machine instruction.
fn emit(&mut self, mach_inst: I) {
self.vcode.push(mach_inst);