Use arch_regs_set_retval in handler.c.
This saves some code duplication.
Change-Id: I08b7ca9885b45d7de757f3970aca412a0364ca79
diff --git a/src/arch/aarch64/hypervisor/handler.c b/src/arch/aarch64/hypervisor/handler.c
index a2c4bf4..c3c6f77 100644
--- a/src/arch/aarch64/hypervisor/handler.c
+++ b/src/arch/aarch64/hypervisor/handler.c
@@ -443,14 +443,7 @@
}
if (spci_handler(&args, &next)) {
- vcpu->regs.r[0] = args.func;
- vcpu->regs.r[1] = args.arg1;
- vcpu->regs.r[2] = args.arg2;
- vcpu->regs.r[3] = args.arg3;
- vcpu->regs.r[4] = args.arg4;
- vcpu->regs.r[5] = args.arg5;
- vcpu->regs.r[6] = args.arg6;
- vcpu->regs.r[7] = args.arg7;
+ arch_regs_set_retval(&vcpu->regs, args);
update_vi(next);
return next;
}
@@ -610,14 +603,7 @@
/* Skip the SMC instruction. */
vcpu->regs.pc = smc_pc + GET_NEXT_PC_INC(esr);
- vcpu->regs.r[0] = ret.func;
- vcpu->regs.r[1] = ret.arg1;
- vcpu->regs.r[2] = ret.arg2;
- vcpu->regs.r[3] = ret.arg3;
- vcpu->regs.r[4] = ret.arg4;
- vcpu->regs.r[5] = ret.arg5;
- vcpu->regs.r[6] = ret.arg6;
- vcpu->regs.r[7] = ret.arg7;
+ arch_regs_set_retval(&vcpu->regs, ret);
return next;
}