• Namhyung Kim's avatar
    perf tools: Fix building error in x86_64 when dwarf unwind is on · c6e5e9fb
    Namhyung Kim authored
    When build with 'make ARCH=x86' and dwarf unwind is on, there is a
    compiling error:
    
       CC       /home/wn/perf/arch/x86/util/unwind-libdw.o
       CC       /home/wn/perf/arch/x86/tests/regs_load.o
     arch/x86/tests/regs_load.S: Assembler messages:
     arch/x86/tests/regs_load.S:65: Error: operand type mismatch for `push'
     arch/x86/tests/regs_load.S:72: Error: operand type mismatch for `pop'
     make[1]: *** [/home/wn/perf/arch/x86/tests/regs_load.o] Error 1
     make[1]: INTERNAL: Exiting with 25 jobserver tokens available; should be 24!
     make: *** [all] Error 2
     ...
    
    Which is caused by incorrectly undefine macro HAVE_ARCH_X86_64_SUPPORT.
    'config/Makefile.arch' tests __x86_64__ only when 'ARCH=x86_64'.
    However, when building x86_64 kernel, ARCH=x86 is valid and commonly
    used. Build systems, such as yocto, uses x86_64 compiler with 'ARCH=x86'
    to build x86_64 perf, which causes mismatching.
    
    As __LP64__ is defined for x86_64 as well, we can consolidate the
    __x86_64__ check to the __LP64__ check and get rid of the IS_X86_64
    IMHO.
    
    (This patch is made by Namhyung Kim when replying my v1 patch:
    
    https://lkml.org/lkml/2015/1/7/17
    
    I modified the code to remove dependency on RAW_ARCH:
    
    https://lkml.org/lkml/2015/1/7/865
    
    Namhyung Kim didn't provide his SOB in his original email. I add
    mine only for my modification.)
    Signed-off-by: default avatarNamhyung Kim <namhyung@kernel.org>
    Signed-off-by: default avatarWang Nan <wangnan0@huawei.com>
    Acked-by: default avatarJiri Olsa <jolsa@kernel.org>
    Cc: Jiri Olsa <jolsa@redhat.com>
    Cc: Li Zefan <lizefan@huawei.com>
    Cc: Ingo Molnar <mingo@redhat.com>
    Cc: Namhyung Kim <namhyung@kernel.org>
    Link: http://lkml.kernel.org/r/1421029255-23039-1-git-send-email-wangnan0@huawei.com
    [ Namhyung provided his S-o-B on a followup to this patch thread on lkml ]
    Signed-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
    c6e5e9fb
Makefile 21.7 KB