[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v2 12/37] contrib/plugins/howvec: ensure we don't regress if this
From: |
Alex Bennée |
Subject: |
[PATCH v2 12/37] contrib/plugins/howvec: ensure we don't regress if this plugin is extended |
Date: |
Tue, 14 Jan 2025 11:37:56 +0000 |
From: Pierrick Bouvier <pierrick.bouvier@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Signed-off-by: Pierrick Bouvier <pierrick.bouvier@linaro.org>
Message-Id: <20241217224306.2900490-3-pierrick.bouvier@linaro.org>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
---
contrib/plugins/howvec.c | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)
diff --git a/contrib/plugins/howvec.c b/contrib/plugins/howvec.c
index 9be67f7453..2aa9029c3f 100644
--- a/contrib/plugins/howvec.c
+++ b/contrib/plugins/howvec.c
@@ -253,6 +253,8 @@ static struct qemu_plugin_scoreboard *find_counter(
int i;
uint64_t *cnt = NULL;
uint32_t opcode = 0;
+ /* if opcode is greater than 32 bits, we should refactor insn hash table.
*/
+ G_STATIC_ASSERT(sizeof(opcode) == sizeof(uint32_t));
InsnClassExecCount *class = NULL;
/*
@@ -284,7 +286,7 @@ static struct qemu_plugin_scoreboard *find_counter(
g_mutex_lock(&lock);
icount = (InsnExecCount *) g_hash_table_lookup(insns,
-
GUINT_TO_POINTER(opcode));
+ (gpointer)(intptr_t)
opcode);
if (!icount) {
icount = g_new0(InsnExecCount, 1);
@@ -295,8 +297,7 @@ static struct qemu_plugin_scoreboard *find_counter(
qemu_plugin_scoreboard_new(sizeof(uint64_t));
icount->count = qemu_plugin_scoreboard_u64(score);
- g_hash_table_insert(insns, GUINT_TO_POINTER(opcode),
- (gpointer) icount);
+ g_hash_table_insert(insns, (gpointer)(intptr_t) opcode, icount);
}
g_mutex_unlock(&lock);
--
2.39.5
- [PATCH v2 00/37] maintainer updates for jan '25 (semihosting, gdb, plugins, docs) pre-PR, Alex Bennée, 2025/01/14
- [PATCH v2 04/37] semihosting/uaccess: Include missing 'exec/cpu-all.h' header, Alex Bennée, 2025/01/14
- [PATCH v2 03/37] semihosting/syscalls: Include missing 'exec/cpu-defs.h' header, Alex Bennée, 2025/01/14
- [PATCH v2 02/37] semihosting/uaccess: Briefly document returned values, Alex Bennée, 2025/01/14
- [PATCH v2 01/37] semihosting: add guest_error logging for failed opens, Alex Bennée, 2025/01/14
- [PATCH v2 07/37] semihosting/meson: Build config.o and console.o once, Alex Bennée, 2025/01/14
- [PATCH v2 08/37] system/vl: more error exit into config enumeration code, Alex Bennée, 2025/01/14
- [PATCH v2 05/37] semihosting/arm-compat: Include missing 'cpu.h' header, Alex Bennée, 2025/01/14
- [PATCH v2 12/37] contrib/plugins/howvec: ensure we don't regress if this plugin is extended,
Alex Bennée <=
- [PATCH v2 17/37] contrib/plugins/hotblocks: fix 32-bit build, Alex Bennée, 2025/01/14
- [PATCH v2 15/37] contrib/plugins/stoptrigger: fix 32-bit build, Alex Bennée, 2025/01/14
- [PATCH v2 09/37] system: squash usb_parse into a single function, Alex Bennée, 2025/01/14
- [PATCH v2 34/37] docs/devel: add information on how to setup build environments, Alex Bennée, 2025/01/14
- [PATCH v2 06/37] semihosting/console: Avoid including 'cpu.h', Alex Bennée, 2025/01/14
- [PATCH v2 25/37] plugins: enable linking with clang/lld, Alex Bennée, 2025/01/14
- [PATCH v2 26/37] plugins: fix kdoc annotation, Alex Bennée, 2025/01/14
- [PATCH v2 35/37] docs: add a codebase section, Alex Bennée, 2025/01/14
- [PATCH v2 10/37] system: propagate Error to gdbserver_start (and other device setups), Alex Bennée, 2025/01/14