From patchwork Tue May 11 15:38:17 2010 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: Fix leul_to_cpu on big endian hosts From: Alexander Graf X-Patchwork-Id: 52297 Message-Id: <1273592297-18370-1-git-send-email-agraf@suse.de> To: qemu-devel@nongnu.org Cc: Marcelo Tosatti Date: Tue, 11 May 2010 17:38:17 +0200 Commit 213acd2e introduced leul_to_cpu with a special code path for big endian hosts. Unfortunately that code used preprocessor magic that didn't work. This patch replaces the explicit ##s by glue() which is proven to work reliably, enabling me to compile qemu on ppc again. Signed-off-by: Alexander Graf --- bswap.h | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/bswap.h b/bswap.h index 956f3fa..20caae6 100644 --- a/bswap.h +++ b/bswap.h @@ -205,7 +205,7 @@ static inline void cpu_to_be32wu(uint32_t *p, uint32_t v) #ifdef HOST_WORDS_BIGENDIAN #define cpu_to_32wu cpu_to_be32wu -#define leul_to_cpu(v) le ## HOST_LONG_BITS ## _to_cpu(v) +#define leul_to_cpu(v) glue(glue(le,HOST_LONG_BITS),_to_cpu)(v) #else #define cpu_to_32wu cpu_to_le32wu #define leul_to_cpu(v) (v)