qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

qemu plugin exposure of register addresses


From: Robert Henry
Subject: qemu plugin exposure of register addresses
Date: Thu, 2 Apr 2020 16:52:14 +0000

There is now a qemu plugin interface function qemu_plugin_register_vcpu_mem_cb which registers a plugin-side callback. This callback is later invoked at the start of each emulated instruction, and it receives information about memory addresses and read/write indicators.

I'm wondering how hard it is to add a similar callback to expose register addresses and read/write indicators.  For example, executing `add r3, r1, $1` would generate two callbacks, one {write r3} and the other {read r1}. I'd like this for all kinds of registers such as simd regs, and, gulp, flags registers.

With this information ISA simulators could examine the data flow graph and register dependencies.

I'm not asking for register contents; we don't get memory contents either!

I gather there is some concern about exposing too much functionality to the plugin API, as a plugin might then be used to subvert some aspects of the GPL.  I don't understand the details of this concern, nor know where the "line in the sand" is.

Robert Henry

reply via email to

[Prev in Thread] Current Thread [Next in Thread]