On 8/3/25 20:59, Peter Maydell wrote:
On Sun, 3 Aug 2025 at 00:20, Richard Henderson
<richard.hender...@linaro.org> wrote:

This typedef is synonymous with target_ulong.

Signed-off-by: Richard Henderson <richard.hender...@linaro.org>
---
  linux-user/elfload.c | 29 +++++++++++++----------------
  1 file changed, 13 insertions(+), 16 deletions(-)

diff --git a/linux-user/elfload.c b/linux-user/elfload.c
index fce4c05674..70a1e402d3 100644
--- a/linux-user/elfload.c
+++ b/linux-user/elfload.c
@@ -131,10 +131,8 @@ int info_is_fdpic(struct image_info *info)
  #endif

  #ifdef TARGET_ABI_MIPSN32
-typedef abi_ullong      target_elf_greg_t;
  #define tswapreg(ptr)   tswap64(ptr)
  #else
-typedef abi_ulong       target_elf_greg_t;
  #define tswapreg(ptr)   tswapal(ptr)
  #endif

Previously we had target_elf_greg_t:
  * for MIPSN32: abi_ullong, which is 64 bits

MIPSN32 is a mips64 target.

  * for other TARGET_ABI32: abi_ulong, which is 32 bits
  * for 64-bit archs: abi_ulong, which is 64 bits
  * for 32-bit archs: abi_ulong, which is 32 bits

Now we have target_ulong, which is:
  * for 64-bit archs: 64 bits
  * for 32-bit archs: 32 bits

So the two TARGET_ABI32 which weren't special cased
(hppa and sparc32plus) will go from a 32-bit type to a 64-bit
type, won't they ?

It wouldn't surprise me if this is a bug in the hppa and
sparc32plus cases, but if so we should say in the commit
message that we're fixing it.

Neither sparc nor hppa implement core dumps so far,
so we can put off considering them.

Perhaps the commit message can simply be expanded to

  For the set of targets which support core dumps,
  target_elf_greg_t is synonymous with target_ulong.

?

r~

Reply via email to