@@ -73,6 +73,7 @@ typedef enum DisasJumpType {
* @max_insns: Maximum number of instructions to be translated in this TB.
* @singlestep_enabled: "Hardware" single stepping enabled.
* @saved_can_do_io: Known value of cpu->neg.can_do_io, or -1 for unknown.
+ * @plugin_enabled: TCG plugin enabled in this TB.
*
* Architecture-agnostic disassembly context.
*/
@@ -85,6 +86,7 @@ typedef struct DisasContextBase {
int max_insns;
bool singlestep_enabled;
int8_t saved_can_do_io;
+ bool plugin_enabled;
void *host_addr[2];
} DisasContextBase;
@@ -158,6 +158,7 @@ void translator_loop(CPUState *cpu, TranslationBlock *tb, int *max_insns,
} else {
plugin_enabled = plugin_gen_tb_start(cpu, db, false);
}
+ db->plugin_enabled = plugin_enabled;
while (true) {
*max_insns = ++db->num_insns;