Commit 00bf6778e2 for qemu.org
commit 00bf6778e23d97ef712c157641dfe761395cb675
Author: Richard Henderson <richard.henderson@linaro.org>
Date: Tue Oct 27 18:07:51 2026 -0500
tcg: Adjust NONNULL annotation on *_diff functions
In tcg/sparc64 we use tcg_tbrel_diff with NULL as a negative
addend in a relocation.
Fixes: b0b6701a4018 ("tcg: Annotate functions in tcg.h with QEMU_*_NONNULL")
Reported-by: Philippe Mathieu-Daudé <philmd@oss.qualcomm.com>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Reviewed-by: Pierrick Bouvier <pierrick.bouvier@oss.qualcomm.com>
Tested-by: Pierrick Bouvier <pierrick.bouvier@oss.qualcomm.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@oss.qualcomm.com>
diff --git a/include/tcg/tcg.h b/include/tcg/tcg.h
index 8f409b23b7..3dc26b919d 100644
--- a/include/tcg/tcg.h
+++ b/include/tcg/tcg.h
@@ -881,7 +881,6 @@ static inline TCGLabel *arg_label(TCGArg i)
* This version relies on GCC's void pointer arithmetic to get the
* correct result.
*/
-QEMU_ARG_NONNULL
static inline ptrdiff_t tcg_ptr_byte_diff(const void *a, const void *b)
{
return a - b;
@@ -895,7 +894,7 @@ static inline ptrdiff_t tcg_ptr_byte_diff(const void *a, const void *b)
* Produce a pc-relative difference, from the current code_ptr
* to the destination address.
*/
-QEMU_ARG_NONNULL
+QEMU_ARG_LIST_NONNULL(1)
static inline ptrdiff_t tcg_pcrel_diff(TCGContext *s, const void *target)
{
return tcg_ptr_byte_diff(target, tcg_splitwx_to_rx(s->code_ptr));
@@ -909,7 +908,7 @@ static inline ptrdiff_t tcg_pcrel_diff(TCGContext *s, const void *target)
* Produce a difference, from the beginning of the current TB code
* to the destination address.
*/
-QEMU_ARG_NONNULL
+QEMU_ARG_LIST_NONNULL(1)
static inline ptrdiff_t tcg_tbrel_diff(TCGContext *s, const void *target)
{
return tcg_ptr_byte_diff(target, tcg_splitwx_to_rx(s->code_buf));