lkml.org 
[lkml]   [2016]   [Apr]   [5]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 09/25] arm64: ensure the kernel is compiled for LP64
    Date
    From: Andrew Pinski <apinski@cavium.com>

    The kernel needs to be compiled as a LP64 binary for ARM64, even when
    using a compiler that defaults to code-generation for the ILP32 ABI.
    Consequently, we need to explicitly pass '-mabi=lp64' (supported on
    gcc-4.9 and newer).

    Signed-off-by: Andrew Pinski <Andrew.Pinski@caviumnetworks.com>
    Signed-off-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
    Signed-off-by: Christoph Muellner <christoph.muellner@theobroma-systems.com>
    Signed-off-by: Yury Norov <ynorov@caviumnetworks.com>
    Reviewed-by: David Daney <ddaney@caviumnetworks.com>
    ---
    arch/arm64/Makefile | 5 +++++
    1 file changed, 5 insertions(+)

    diff --git a/arch/arm64/Makefile b/arch/arm64/Makefile
    index 354d754..29ebf23 100644
    --- a/arch/arm64/Makefile
    +++ b/arch/arm64/Makefile
    @@ -35,14 +35,19 @@ KBUILD_CFLAGS += -fno-asynchronous-unwind-tables
    KBUILD_CFLAGS += $(call cc-option, -mpc-relative-literal-loads)
    KBUILD_AFLAGS += $(lseinstr)

    +KBUILD_CFLAGS += $(call cc-option,-mabi=lp64)
    +KBUILD_AFLAGS += $(call cc-option,-mabi=lp64)
    +
    ifeq ($(CONFIG_CPU_BIG_ENDIAN), y)
    KBUILD_CPPFLAGS += -mbig-endian
    AS += -EB
    LD += -EB
    +LDFLAGS += -maarch64linuxb
    else
    KBUILD_CPPFLAGS += -mlittle-endian
    AS += -EL
    LD += -EL
    +LDFLAGS += -maarch64linux
    endif

    CHECKFLAGS += -D__aarch64__
    --
    2.5.0
    \
     
     \ /
      Last update: 2016-04-06 00:21    [W:4.092 / U:0.008 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site