aboutsummaryrefslogtreecommitdiff
path: root/contrib/plugins/howvec.c
diff options
context:
space:
mode:
authorRichard Henderson <richard.henderson@linaro.org>2024-04-02 21:24:52 -1000
committerRichard Henderson <richard.henderson@linaro.org>2024-05-15 08:55:18 +0200
commit4abc892362f8282450f18c4e45c5b0534461d01e (patch)
tree7f0f046c1ec6f7e04e975f134645cb2fe62f626d /contrib/plugins/howvec.c
parentbf4bb074b72a7dc6c9ee5379a1d6b693dcd0a5a6 (diff)
downloadqemu-4abc892362f8282450f18c4e45c5b0534461d01e.zip
qemu-4abc892362f8282450f18c4e45c5b0534461d01e.tar.gz
qemu-4abc892362f8282450f18c4e45c5b0534461d01e.tar.bz2
plugins: Copy memory in qemu_plugin_insn_data
Instead of returning a host pointer, copy the data into storage provided by the caller. Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Diffstat (limited to 'contrib/plugins/howvec.c')
-rw-r--r--contrib/plugins/howvec.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/contrib/plugins/howvec.c b/contrib/plugins/howvec.c
index 94bbc53..9be67f7 100644
--- a/contrib/plugins/howvec.c
+++ b/contrib/plugins/howvec.c
@@ -252,7 +252,7 @@ static struct qemu_plugin_scoreboard *find_counter(
{
int i;
uint64_t *cnt = NULL;
- uint32_t opcode;
+ uint32_t opcode = 0;
InsnClassExecCount *class = NULL;
/*
@@ -261,7 +261,7 @@ static struct qemu_plugin_scoreboard *find_counter(
* They would probably benefit from a more tailored plugin.
* However we can fall back to individual instruction counting.
*/
- opcode = *((uint32_t *)qemu_plugin_insn_data(insn));
+ qemu_plugin_insn_data(insn, &opcode, sizeof(opcode));
for (i = 0; !cnt && i < class_table_sz; i++) {
class = &class_table[i];