From fbfaaa780fa21c5953f40228df4aca3dda149b27 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20F=C3=A4rber?= Date: Sun, 24 Oct 2010 18:55:59 +0000 Subject: [PATCH] Move cell2pointer and pointer2cell macros MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit These will be needed elsewhere for ppc64. Cc: Blue Swirl Signed-off-by: Andreas Färber git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@917 f158a5a8-5612-0410-a976-696ce0be7e32 --- include/kernel/stack.h | 12 ++++++++++++ kernel/cross.h | 6 ------ 2 files changed, 12 insertions(+), 6 deletions(-) diff --git a/include/kernel/stack.h b/include/kernel/stack.h index 9fe52ce..809ffe9 100644 --- a/include/kernel/stack.h +++ b/include/kernel/stack.h @@ -30,6 +30,18 @@ typedef ucell phandle_t; +#ifdef NATIVE_BITWIDTH_EQUALS_HOST_BITWIDTH +#define pointer2cell(x) ((ucell)(x)) +#define cell2pointer(x) ((u8 *)(x)) +#endif +#ifdef NATIVE_BITWIDTH_SMALLER_THAN_HOST_BITWIDTH +#define pointer2cell(x) ((ucell)(((unsigned long)(x))-base_address)) +#define cell2pointer(x) ((u8 *)(((unsigned long)(x))+base_address)) +#endif +#ifdef NATIVE_BITWIDTH_LARGER_THAN_HOST_BITWIDTH +#define pointer2cell(x) ((ucell)(unsigned long)(x)) +#define cell2pointer(x) ((u8 *)((unsigned long)(x)&0xFFFFFFFFUL)) +#endif static inline void PUSH(ucell value) { dstack[++dstackcnt] = (value); diff --git a/kernel/cross.h b/kernel/cross.h index d4cfff1..1b7d448 100644 --- a/kernel/cross.h +++ b/kernel/cross.h @@ -103,8 +103,6 @@ /* bit width handling */ #ifdef NATIVE_BITWIDTH_EQUALS_HOST_BITWIDTH -#define pointer2cell(x) ((ucell)(x)) -#define cell2pointer(x) ((u8 *)(x)) #if BITS==32 #define FMT_CELL_x "x" #define FMT_CELL_d "d" @@ -116,15 +114,11 @@ #ifdef NATIVE_BITWIDTH_SMALLER_THAN_HOST_BITWIDTH extern unsigned long base_address; -#define pointer2cell(x) ((ucell)(((unsigned long)(x))-base_address)) -#define cell2pointer(x) ((u8 *)(((unsigned long)(x))+base_address)) #define FMT_CELL_x "x" #define FMT_CELL_d "d" #endif #ifdef NATIVE_BITWIDTH_LARGER_THAN_HOST_BITWIDTH -#define pointer2cell(x) ((ucell)(unsigned long)(x)) -#define cell2pointer(x) ((u8 *)((unsigned long)(x)&0xFFFFFFFFUL)) #define FMT_CELL_x "llx" #define FMT_CELL_d "lld" #endif