arm: Delete the unused onKvmExitHypercall method.

The KVM_EXIT_HYPERCALL KVM exit is now unused, and so even if this
exit handler was plumbed to receive these exits, they would probably
never come.

Change-Id: Ic3ecc789102e761a6dbe80caaf57d61dd95f70a6
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/23746
Tested-by: kokoro <noreply+kokoro@google.com>
Reviewed-by: Bobby R. Bruce <bbruce@ucdavis.edu>
Maintainer: Gabe Black <gabeblack@google.com>
This commit is contained in:
Gabe Black
2019-12-10 18:56:46 -08:00
parent 05dbc1d171
commit bbe6571d3d
2 changed files with 0 additions and 22 deletions

View File

@@ -312,26 +312,6 @@ ArmKvmCPU::updateThreadContext()
updateTCStateMisc();
}
Tick
ArmKvmCPU::onKvmExitHypercall()
{
ThreadContext *tc(getContext(0));
const uint32_t reg_ip(tc->readIntRegFlat(INTREG_R12));
const uint8_t func((reg_ip >> 8) & 0xFF);
DPRINTF(Kvm, "KVM Hypercall: %#x/%#x\n", func, subfunc);
const uint64_t ret =
PseudoInst::pseudoInst<PseudoInstABI>(getContext(0), func);
// Just set the return value using the KVM API instead of messing
// with the context. We could have used the context, but that
// would have required us to request a full context sync.
setOneReg(REG_CORE32(usr_regs.ARM_r0), ret & 0xFFFFFFFF);
setOneReg(REG_CORE32(usr_regs.ARM_r1), (ret >> 32) & 0xFFFFFFFF);
return 0;
}
const ArmKvmCPU::RegIndexVector &
ArmKvmCPU::getRegList() const
{

View File

@@ -92,8 +92,6 @@ class ArmKvmCPU : public BaseKvmCPU
void updateKvmState();
void updateThreadContext();
Tick onKvmExitHypercall();
/**
* Get a list of registers supported by getOneReg() and setOneReg().
*/