[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20151203113157.GI10747@e104818-lin.cambridge.arm.com>
Date: Thu, 3 Dec 2015 11:31:58 +0000
From: Catalin Marinas <catalin.marinas@....com>
To: Yury Norov <ynorov@...iumnetworks.com>
Cc: arnd@...db.de, linux-arm-kernel@...ts.infradead.org,
linux-kernel@...r.kernel.org, pinskia@...il.com,
Prasun.Kapoor@...iumnetworks.com, schwab@...e.de,
Nathan_Lynch@...tor.com, agraf@...e.de, klimov.linux@...il.com,
broonie@...nel.org, jan.dakinevich@...il.com,
ddaney.cavm@...il.com, bamvor.zhangjian@...wei.com,
philipp.tomsich@...obroma-systems.com, andrey.konovalov@...aro.org,
joseph@...esourcery.com, christoph.muellner@...obroma-systems.com
Subject: Re: [PATCH v6 05/19] arm64:uapi: set __BITS_PER_LONG correctly for
ILP32 and LP64
On Wed, Nov 18, 2015 at 12:16:45AM +0300, Yury Norov wrote:
> diff --git a/arch/arm64/include/uapi/asm/bitsperlong.h b/arch/arm64/include/uapi/asm/bitsperlong.h
> index fce9c29..4265243 100644
> --- a/arch/arm64/include/uapi/asm/bitsperlong.h
> +++ b/arch/arm64/include/uapi/asm/bitsperlong.h
> @@ -16,7 +16,14 @@
> #ifndef __ASM_BITSPERLONG_H
> #define __ASM_BITSPERLONG_H
>
> -#define __BITS_PER_LONG 64
> +#if defined(__LP64__)
> +/* Assuming __LP64__ will be defined for native ELF64's and not for ILP32. */
> +# define __BITS_PER_LONG 64
> +#elif defined(__ILP32__)
> +# define __BITS_PER_LONG 32
> +#else
> +# error "Neither LP64 nor ILP32: unsupported ABI in asm/bitsperlong.h"
> +#endif
Quick question: IIRC, earlier aarch64 gcc versions did not generate
__ILP32__ when -mabi=ilp32, they only removed __LP64__. When did the
change happen? Could we assume that all compiler versions used to
generate ILP32 would define this?
--
Catalin
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists