ThreadContext *tc(getContext(0));
const uint32_t reg_ip(tc->readIntRegFlat(INTREG_R12));
const uint8_t func((reg_ip >> 8) & 0xFF);
- const uint8_t subfunc(reg_ip & 0xFF);
DPRINTF(Kvm, "KVM Hypercall: %#x/%#x\n", func, subfunc);
const uint64_t ret =
- PseudoInst::pseudoInst<PseudoInstABI>(getContext(0), func, subfunc);
+ 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
{
const Addr offset(pkt->getAddr() & IPR_IN_CLASS_MASK);
const uint8_t func((offset >> 8) & 0xFF);
- const uint8_t subfunc(offset & 0xFF);
uint64_t ret;
assert((offset >> 16) == 0);
- ret = PseudoInst::pseudoInst<PseudoInstABI>(xc, func, subfunc);
+ ret = PseudoInst::pseudoInst<PseudoInstABI>(xc, func);
if (pkt->isRead())
pkt->set(ret, TheISA::GuestByteOrder);
}
* manner using the ISA-specific getArguments functions.
*
* @param func M5 pseudo op major function number (see utility/m5/m5ops.h)
- * @param subfunc M5 minor function number. Mainly used for annotations.
*/
template <typename ABI>
uint64_t
-pseudoInst(ThreadContext *tc, uint8_t func, uint8_t subfunc)
+pseudoInst(ThreadContext *tc, uint8_t func)
{
- DPRINTF(PseudoInst, "PseudoInst::pseudoInst(%i, %i)\n", func, subfunc);
+ DPRINTF(PseudoInst, "PseudoInst::pseudoInst(%i)\n", func);
switch (func) {
case M5OP_ARM: