On 4 December 2015 at 12:36, Paolo Bonzini <pbonz...@redhat.com> wrote: > > > On 04/12/2015 13:33, Peter Maydell wrote: >> On 4 December 2015 at 12:28, Paolo Bonzini <pbonz...@redhat.com> wrote: >>> This is a first baby step towards removing widespread inclusion of >>> cpu.h and compiling more devices once (so that arm, aarch64 and >>> in the future target-multi can share the object files). >>> >>> Signed-off-by: Paolo Bonzini <pbonz...@redhat.com> >>> --- >>> hw/dma/soc_dma.c | 37 ++++++++++++++++--------------------- >>> 1 file changed, 16 insertions(+), 21 deletions(-) >>> >>> diff --git a/hw/dma/soc_dma.c b/hw/dma/soc_dma.c >>> index c06aabb..ac395c5 100644 >>> --- a/hw/dma/soc_dma.c >>> +++ b/hw/dma/soc_dma.c >>> @@ -269,11 +269,10 @@ void soc_dma_port_add_fifo(struct soc_dma_s *soc, >>> hwaddr virt_base, >>> if (entry->type == soc_dma_port_mem) { >>> if (entry->addr <= virt_base && >>> entry->addr + entry->u.mem.size > virt_base) { >>> - fprintf(stderr, "%s: FIFO at " TARGET_FMT_lx >>> - " collides with RAM region at " >>> TARGET_FMT_lx >>> - "-" TARGET_FMT_lx "\n", __FUNCTION__, >>> - (target_ulong) virt_base, >>> - (target_ulong) entry->addr, (target_ulong) >>> + fprintf(stderr, "%s: FIFO at %"PRIx64 >>> + " collides with RAM region at %"PRIx64 >>> + "-%"PRIx64 "\n", __FUNCTION__, >>> + virt_base, entry->addr, >>> (entry->addr + entry->u.mem.size)); >> >> Is using the HWADDR_PRI* macros for printing hwaddrs deprecated now? > > It's the first time I hear about them. :) There are still 130-odd > usages of HWADDR_PRIx and friends, so at least it's an incomplete > transition. So I can use them if the maintainer tells me to.
Well, we needed HWADDR_PRI* when hwaddr wasn't unconditionally 64-bits (that changed back in 2012 with commit 4be403c8158e1b6, back when it was still called target_phys_addr_t and the macros were TARGET_PRI*). So back in 2012 we'd have noticed uses of PRIx64 to print hwaddrs because it would have meant a compile failure (at least in some bits of code). But these days we probably wouldn't catch uses in code review and they wouldn't be compile time failures. I don't think we've ever said "we should transition away from HWADDR_*", but whether we should is an interesting question, which is why I asked. Does retaining the format macros to go with the typedef give us useful flexibility, or is it just confusing? (Also TARGET_FMT_plx, which is even more heavily used and now rather out of step with the type name.) thanks -- PMM