From ce6189f7a5adbf6ac88b95f78a6d5e9b5481faf9 Mon Sep 17 00:00:00 2001 From: Anup Patel Date: Tue, 19 Feb 2019 18:06:46 +0530 Subject: [PATCH] include: Add PRILX define to help print unsigned long The unsigned long is always machine word size. This means it is 4 bytes on 32bit system and 8 bytes on 64bit system. This patch adds PRILX define for sbi_printf() which will help us print unsigned long without worrying whether it is 32bit or 64bit system. Signed-off-by: Anup Patel --- include/sbi/sbi_types.h | 2 ++ lib/sbi_trap.c | 36 ++++++++++++++++++------------------ 2 files changed, 20 insertions(+), 18 deletions(-) diff --git a/include/sbi/sbi_types.h b/include/sbi/sbi_types.h index 9231dff9..40909f65 100644 --- a/include/sbi/sbi_types.h +++ b/include/sbi/sbi_types.h @@ -29,11 +29,13 @@ typedef long s64; typedef unsigned long u64; typedef long int64_t; typedef unsigned long uint64_t; +#define PRILX "016lx" #elif __riscv_xlen == 32 typedef long long s64; typedef unsigned long long u64; typedef long long int64_t; typedef unsigned long long uint64_t; +#define PRILX "08lx" #else #error "Unexpected __riscv_xlen" #endif diff --git a/lib/sbi_trap.c b/lib/sbi_trap.c index ba597d8e..ea5ba6b5 100644 --- a/lib/sbi_trap.c +++ b/lib/sbi_trap.c @@ -26,41 +26,41 @@ static void __noreturn sbi_trap_error(const char *msg, { sbi_printf("%s: hart%d: %s (error %d)\n", __func__, hartid, msg, rc); - sbi_printf("%s: hart%d: mcause=0x%lx mtval=0x%lx\n", + sbi_printf("%s: hart%d: mcause=0x%"PRILX" mtval=0x%"PRILX"\n", __func__, hartid, mcause, mtval); - sbi_printf("%s: hart%d: mepc=0x%lx mstatus=0x%lx\n", + sbi_printf("%s: hart%d: mepc=0x%"PRILX" mstatus=0x%"PRILX"\n", __func__, hartid, regs->mepc, regs->mstatus); - sbi_printf("%s: hart%d: %s=0x%lx %s=0x%lx\n", + sbi_printf("%s: hart%d: %s=0x%"PRILX" %s=0x%"PRILX"\n", __func__, hartid, "ra", regs->ra, "sp", regs->sp); - sbi_printf("%s: hart%d: %s=0x%lx %s=0x%lx\n", + sbi_printf("%s: hart%d: %s=0x%"PRILX" %s=0x%"PRILX"\n", __func__, hartid, "gp", regs->gp, "tp", regs->tp); - sbi_printf("%s: hart%d: %s=0x%lx %s=0x%lx\n", + sbi_printf("%s: hart%d: %s=0x%"PRILX" %s=0x%"PRILX"\n", __func__, hartid, "s0", regs->s0, "s1", regs->s1); - sbi_printf("%s: hart%d: %s=0x%lx %s=0x%lx\n", + sbi_printf("%s: hart%d: %s=0x%"PRILX" %s=0x%"PRILX"\n", __func__, hartid, "a0", regs->a0, "a1", regs->a1); - sbi_printf("%s: hart%d: %s=0x%lx %s=0x%lx\n", + sbi_printf("%s: hart%d: %s=0x%"PRILX" %s=0x%"PRILX"\n", __func__, hartid, "a2", regs->a2, "a3", regs->a3); - sbi_printf("%s: hart%d: %s=0x%lx %s=0x%lx\n", + sbi_printf("%s: hart%d: %s=0x%"PRILX" %s=0x%"PRILX"\n", __func__, hartid, "a4", regs->a4, "a5", regs->a5); - sbi_printf("%s: hart%d: %s=0x%lx %s=0x%lx\n", + sbi_printf("%s: hart%d: %s=0x%"PRILX" %s=0x%"PRILX"\n", __func__, hartid, "a6", regs->a6, "a7", regs->a7); - sbi_printf("%s: hart%d: %s=0x%lx %s=0x%lx\n", + sbi_printf("%s: hart%d: %s=0x%"PRILX" %s=0x%"PRILX"\n", __func__, hartid, "s2", regs->s2, "s3", regs->s3); - sbi_printf("%s: hart%d: %s=0x%lx %s=0x%lx\n", + sbi_printf("%s: hart%d: %s=0x%"PRILX" %s=0x%"PRILX"\n", __func__, hartid, "s4", regs->s4, "s5", regs->s5); - sbi_printf("%s: hart%d: %s=0x%lx %s=0x%lx\n", + sbi_printf("%s: hart%d: %s=0x%"PRILX" %s=0x%"PRILX"\n", __func__, hartid, "s6", regs->s6, "s7", regs->s7); - sbi_printf("%s: hart%d: %s=0x%lx %s=0x%lx\n", + sbi_printf("%s: hart%d: %s=0x%"PRILX" %s=0x%"PRILX"\n", __func__, hartid, "s8", regs->s8, "s9", regs->s9); - sbi_printf("%s: hart%d: %s=0x%lx %s=0x%lx\n", + sbi_printf("%s: hart%d: %s=0x%"PRILX" %s=0x%"PRILX"\n", __func__, hartid, "s10", regs->s10, "s11", regs->s11); - sbi_printf("%s: hart%d: %s=0x%lx %s=0x%lx\n", + sbi_printf("%s: hart%d: %s=0x%"PRILX" %s=0x%"PRILX"\n", __func__, hartid, "t0", regs->t0, "t1", regs->t1); - sbi_printf("%s: hart%d: %s=0x%lx %s=0x%lx\n", + sbi_printf("%s: hart%d: %s=0x%"PRILX" %s=0x%"PRILX"\n", __func__, hartid, "t2", regs->t2, "t3", regs->t3); - sbi_printf("%s: hart%d: %s=0x%lx %s=0x%lx\n", + sbi_printf("%s: hart%d: %s=0x%"PRILX" %s=0x%"PRILX"\n", __func__, hartid, "t4", regs->t4, "t5", regs->t5); - sbi_printf("%s: hart%d: %s=0x%lx\n", + sbi_printf("%s: hart%d: %s=0x%"PRILX"\n", __func__, hartid, "t6", regs->t6); sbi_hart_hang();