From 4ebb5ba5514befe146f77666173a8a8bd98c4727 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Date: Tue, 17 Feb 2026 17:28:50 +0100 Subject: [PATCH] gdbstub/helpers: Convert gdb_get_regl() macro to inlined helper MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Rather than checking TARGET_LONG_BITS at build time, check target_long_bits() at runtime. Reviewed-by: Pierrick Bouvier Signed-off-by: Philippe Mathieu-Daudé Message-ID: <20260219191955.83815-38-philmd@linaro.org> --- include/gdbstub/helpers.h | 22 ++++++++++++++-------- 1 file changed, 14 insertions(+), 8 deletions(-) diff --git a/include/gdbstub/helpers.h b/include/gdbstub/helpers.h index 402514716d..b2f41d6d28 100644 --- a/include/gdbstub/helpers.h +++ b/include/gdbstub/helpers.h @@ -88,6 +88,20 @@ static inline int gdb_get_zeroes(GByteArray *array, size_t len) return len; } +/** + * gdb_get_regl: append @val in @buf using 32 or 64-bit, depending on target + * + * This function is legacy and deprecated, thus should not be used in new code. + */ +static inline int gdb_get_regl(GByteArray *buf, uint64_t val) +{ + if (target_long_bits() == 64) { + return gdb_get_reg64(buf, val); + } else { + return gdb_get_reg32(buf, val); + } +} + /** * gdb_get_reg_ptr: get pointer to start of last element * @len: length of element @@ -101,12 +115,4 @@ static inline uint8_t *gdb_get_reg_ptr(GByteArray *buf, int len) return buf->data + buf->len - len; } -#ifdef COMPILING_PER_TARGET -#if TARGET_LONG_BITS == 64 -#define gdb_get_regl(buf, val) gdb_get_reg64(buf, val) -#else -#define gdb_get_regl(buf, val) gdb_get_reg32(buf, val) -#endif -#endif /* COMPILING_PER_TARGET */ - #endif /* _GDBSTUB_HELPERS_H_ */