Module Name: src Committed By: matt Date: Fri Aug 21 17:29:42 UTC 2009
Modified Files: src/sys/arch/mips/include [matt-nb5-mips64]: types.h Log Message: Adapt to ABI variations. Make sure mips_reg_t == register_t. Add PRIx{{P,V}{ADDR,SIZE}} and PRIxREGISTER{,32} macros to assist printing out above types. To generate a diff of this commit: cvs rdiff -u -r1.43.36.1 -r1.43.36.2 src/sys/arch/mips/include/types.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/sys/arch/mips/include/types.h diff -u src/sys/arch/mips/include/types.h:1.43.36.1 src/sys/arch/mips/include/types.h:1.43.36.2 --- src/sys/arch/mips/include/types.h:1.43.36.1 Sun Aug 16 03:33:58 2009 +++ src/sys/arch/mips/include/types.h Fri Aug 21 17:29:42 2009 @@ -1,4 +1,4 @@ -/* $NetBSD: types.h,v 1.43.36.1 2009/08/16 03:33:58 matt Exp $ */ +/* $NetBSD: types.h,v 1.43.36.2 2009/08/21 17:29:42 matt Exp $ */ /*- * Copyright (c) 1992, 1993 @@ -47,18 +47,18 @@ * the rest of the operating system as possible. */ -#if !defined(__mips_o32) +#if defined(__mips_n32) typedef long long mips_reg_t; typedef unsigned long long mips_ureg_t; -#if defined(__mips_o64) +typedef long long mips_fpreg_t; +#else +#if defined(__mips_o64) || defined(__mips_o32) typedef int mips_fpreg_t; #else -typedef long long mips_fpreg_t; +typedef long mips_fpreg_t; #endif -#else typedef long mips_reg_t; typedef unsigned long mips_ureg_t; -typedef long mips_fpreg_t; #endif /* NB: This should probably be if defined(_KERNEL) */ @@ -66,18 +66,32 @@ #if defined(_MIPS_PADDR_T_64BIT) && !defined(_LP64) typedef unsigned long long paddr_t; typedef unsigned long long psize_t; +#define PRIxPADDR "llx" +#define PRIxPSIZE "llx" #else typedef unsigned long paddr_t; typedef unsigned long psize_t; +#define PRIxPADDR "lx" +#define PRIxPSIZE "lx" #endif typedef unsigned long vaddr_t; typedef unsigned long vsize_t; +#define PRIxVADDR "lx" +#define PRIxVSIZE "lx" #endif /* Make sure this is signed; we need pointers to be sign-extended. */ #if defined(__mips_n32) +typedef long register32_t; typedef long long register_t; +#define PRIxREGISTER32 "lx" +#define PRIxREGISTER "llx" #else +#if !defined(__mips_o32) +typedef int register32_t; +#define PRIxREGISTER32 "x" +#endif +#define PRIxREGISTER "lx" typedef long register_t; #endif /* __mips_n32 */