883f2c591f
The 'hwaddr' type is defined in "exec/hwaddr.h" as:
hwaddr is the type of a physical address
(its size can be different from 'target_ulong').
All definitions use the 'HWADDR_' prefix, except TARGET_FMT_plx:
$ fgrep define include/exec/hwaddr.h
#define HWADDR_H
#define HWADDR_BITS 64
#define HWADDR_MAX UINT64_MAX
#define TARGET_FMT_plx "%016" PRIx64
^^^^^^
#define HWADDR_PRId PRId64
#define HWADDR_PRIi PRIi64
#define HWADDR_PRIo PRIo64
#define HWADDR_PRIu PRIu64
#define HWADDR_PRIx PRIx64
#define HWADDR_PRIX PRIX64
Since hwaddr's size can be *different* from target_ulong, it is
very confusing to read one of its format using the 'TARGET_FMT_'
prefix, normally used for the target_long / target_ulong types:
$ fgrep TARGET_FMT_ include/exec/cpu-defs.h
#define TARGET_FMT_lx "%08x"
#define TARGET_FMT_ld "%d"
#define TARGET_FMT_lu "%u"
#define TARGET_FMT_lx "%016" PRIx64
#define TARGET_FMT_ld "%" PRId64
#define TARGET_FMT_lu "%" PRIu64
Apparently this format was missed during commit
|
||
---|---|---|
.. | ||
sysemu | ||
dsp_helper.c | ||
exception.c | ||
fpu_helper.c | ||
ldst_helper.c | ||
lmmi_helper.c | ||
meson.build | ||
micromips_translate.c.inc | ||
mips16e_translate.c.inc | ||
msa_helper.c | ||
msa_helper.h.inc | ||
msa_translate.c | ||
msa.decode | ||
mxu_translate.c | ||
nanomips_translate.c.inc | ||
octeon_translate.c | ||
octeon.decode | ||
op_helper.c | ||
rel6_translate.c | ||
rel6.decode | ||
sysemu_helper.h.inc | ||
tcg-internal.h | ||
trace-events | ||
trace.h | ||
translate_addr_const.c | ||
translate.c | ||
translate.h | ||
tx79_translate.c | ||
tx79.decode | ||
txx9_translate.c | ||
vr54xx_helper.c | ||
vr54xx_helper.h.inc | ||
vr54xx_translate.c | ||
vr54xx.decode |