lkml.org 
[lkml]   [2018]   [Apr]   [8]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH AUTOSEL for 4.4 072/162] arm64: pass endianness info to sparse
    Date
    From: Luc Van Oostenryck <luc.vanoostenryck@gmail.com>

    [ Upstream commit bcde519e8c325f3cc1fcf443eb6466e6bb3a3aca ]

    ARM64 depends on the macro __AARCH64EB__ being defined or not
    to correctly select or define endian-specific macros, structures
    or pieces of code.

    This macro is predefined by the compiler but sparse knows nothing
    about it and thus may pre-process files differently from what
    gcc would.

    Fix this by passing '-D__AARCH64EL__' or '-D__AARCH64EB__' to
    sparse depending of the endianness of the kernel, like defined
    by GCC.

    Note: In most case it won't change anything since most arm64 use
    little-endian (but an allyesconfig would use big-endian!).

    CC: Catalin Marinas <catalin.marinas@arm.com>
    CC: Will Deacon <will.deacon@arm.com>
    CC: linux-arm-kernel@lists.infradead.org
    Signed-off-by: Luc Van Oostenryck <luc.vanoostenryck@gmail.com>
    Signed-off-by: Will Deacon <will.deacon@arm.com>
    Signed-off-by: Sasha Levin <alexander.levin@microsoft.com>
    ---
    arch/arm64/Makefile | 2 ++
    1 file changed, 2 insertions(+)

    diff --git a/arch/arm64/Makefile b/arch/arm64/Makefile
    index 119d1885a3c0..95c667328b5d 100644
    --- a/arch/arm64/Makefile
    +++ b/arch/arm64/Makefile
    @@ -32,10 +32,12 @@ KBUILD_AFLAGS += $(lseinstr)

    ifeq ($(CONFIG_CPU_BIG_ENDIAN), y)
    KBUILD_CPPFLAGS += -mbig-endian
    +CHECKFLAGS += -D__AARCH64EB__
    AS += -EB
    LD += -EB
    else
    KBUILD_CPPFLAGS += -mlittle-endian
    +CHECKFLAGS += -D__AARCH64EL__
    AS += -EL
    LD += -EL
    endif
    --
    2.15.1
    \
     
     \ /
      Last update: 2018-04-09 03:25    [W:4.856 / U:0.136 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site