From: Arnaldo Carvalho de Melo <acme@kernel.org>
To: Guilherme Amadio <amadio@gentoo.org>
Cc: Jiri Olsa <jolsa@kernel.org>, Namhyung Kim <namhyung@kernel.org>,
Adrian Hunter <adrian.hunter@intel.com>,
Nathan Chancellor <nathan@kernel.org>,
Nick Desaulniers <ndesaulniers@google.com>,
Sedat Dilek <sedat.dilek@gmail.com>,
linux-kernel@vger.kernel.org
Subject: Re: [PATCH] perf clang: Fix header include for LLVM >= 14
Date: Sat, 16 Apr 2022 16:56:24 -0300 [thread overview]
Message-ID: <YlsfaBgLZvOLAmvD@kernel.org> (raw)
In-Reply-To: <Ylp0M/VYgHOxtcnF@gentoo.org>
Em Sat, Apr 16, 2022 at 09:45:55AM +0200, Guilherme Amadio escreveu:
> The header TargetRegistry.h has moved in LLVM/clang 14.
>
> Signed-off-by: Guilherme Amadio <amadio@gentoo.org>
Applied and ammended the commit log message with some extra info
about the problem, this is the end result:
perf clang: Fix header include for LLVM >= 14
The header TargetRegistry.h has moved in LLVM/clang 14.
Committer notes:
The problem as noticed when building in ubuntu:20.04 with this command
line:
$ make LIBCLANGLLVM=1 -C tools/perf O=/tmp/build/perf
/usr/bin/ld: /usr/lib/llvm-10/lib/libclangCodeGen.a(BackendUtil.cpp.o): in function `(anonymous namespace)::EmitAssemblyHelper::EmitAssemblyWithNewPassManager(clang::BackendAction, std::unique_ptr<llvm::raw_pwrite_stream, std::default_delete<llvm::raw_pwrite_stream> >)':
(.text._ZN12_GLOBAL__N_118EmitAssemblyHelper30EmitAssemblyWithNewPassManagerEN5clang13BackendActionESt10unique_ptrIN4llvm17raw_pwrite_streamESt14default_deleteIS5_EE+0x1f15): undefined reference to `getPollyPluginInfo()'
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[2]: *** [Makefile.perf:677: /tmp/build/perf/perf] Error 1
make[1]: *** [Makefile.perf:240: sub-make] Error 2
make: *** [Makefile:70: all] Error 2
Fixed after applying this patch.
Reported-by: Arnaldo Carvalho de Melo <acme@kernel.org>
Signed-off-by: Guilherme Amadio <amadio@gentoo.org>
Tested-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Link: https://twitter.com/GuilhermeAmadio/status/1514970524232921088
Link: http://lore.kernel.org/lkml/Ylp0M/VYgHOxtcnF@gentoo.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
But then the container build just finished and the problem is still
there :-\
+ make ARCH= CROSS_COMPILE= EXTRA_CFLAGS= LIBCLANGLLVM=1 -C tools/perf O=/tmp/build/perf CC=clang
<SNIP>
LD /tmp/build/perf/perf-in.o
LINK /tmp/build/perf/perf
/usr/bin/ld: /usr/lib/llvm-10/lib/libclangCodeGen.a(BackendUtil.cpp.o): in function `(anonymous namespace)::EmitAssemblyHelper::EmitAssemblyWithNewPassManager(clang::BackendAction, std::unique_ptr<llvm::raw_pwrite_stream, std::default_delete<llvm::raw_pwrite_stream> >)':
(.text._ZN12_GLOBAL__N_118EmitAssemblyHelper30EmitAssemblyWithNewPassManagerEN5clang13BackendActionESt10unique_ptrIN4llvm17raw_pwrite_streamESt14default_deleteIS5_EE+0x1f15): undefined reference to `getPollyPluginInfo()'
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[2]: *** [Makefile.perf:677: /tmp/build/perf/perf] Error 1
make[1]: *** [Makefile.perf:240: sub-make] Error 2
make: *** [Makefile:70: all] Error 2
make: Leaving directory '/git/perf-5.18.0-rc2/tools/perf'
+ exit 1
[perfbuilder@five ~]$
[perfbuilder@five ~]$
And that part : /usr/bin/ld: /usr/lib/llvm-10/lib/libclangCodeGen.a
seems to imply its llvm 10 that is installed, lemme check:
[perfbuilder@five ~]$ dsh ubuntu:20.04
$ bash
perfbuilder@7cfe87e48135:/$ dpkg -l | grep llvm
ii libllvm10:amd64 1:10.0.0-4ubuntu1 amd64 Modular compiler and toolchain technologies, runtime library
ii libllvm12:amd64 1:12.0.0-3ubuntu1~20.04.5 amd64 Modular compiler and toolchain technologies, runtime library
ii llvm 1:10.0-50~exp1 amd64 Low-Level Virtual Machine (LLVM)
ii llvm-10 1:10.0.0-4ubuntu1 amd64 Modular compiler and toolchain technologies
ii llvm-10-dev 1:10.0.0-4ubuntu1 amd64 Modular compiler and toolchain technologies, libraries and headers
ii llvm-10-runtime 1:10.0.0-4ubuntu1 amd64 Modular compiler and toolchain technologies, IR interpreter
ii llvm-10-tools 1:10.0.0-4ubuntu1 amd64 Modular compiler and toolchain technologies, tools
ii llvm-dev 1:10.0-50~exp1 amd64 Low-Level Virtual Machine (LLVM), libraries and headers
ii llvm-runtime 1:10.0-50~exp1 amd64 Low-Level Virtual Machine (LLVM), bytecode interpreter
perfbuilder@7cfe87e48135:/$ dpkg -l | grep clang
ii clang 1:10.0-50~exp1 amd64 C, C++ and Objective-C compiler (LLVM based)
ii clang-10 1:10.0.0-4ubuntu1 amd64 C, C++ and Objective-C compiler
ii libclang-10-dev 1:10.0.0-4ubuntu1 amd64 Clang library - Development package
ii libclang-common-10-dev 1:10.0.0-4ubuntu1 amd64 Clang library - Common development package
ii libclang-cpp10 1:10.0.0-4ubuntu1 amd64 C++ interface to the Clang library
ii libclang-dev 1:10.0-50~exp1 amd64 clang library - Development package
ii libclang1-10 1:10.0.0-4ubuntu1 amd64 C interface to the Clang library
perfbuilder@7cfe87e48135:/$
Yeah, so I'll try making it test >= 10, lets see...
- Arnaldo
next prev parent reply other threads:[~2022-04-16 19:56 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-04-16 7:45 [PATCH] perf clang: Fix header include for LLVM >= 14 Guilherme Amadio
2022-04-16 19:56 ` Arnaldo Carvalho de Melo [this message]
2022-04-16 19:58 ` Arnaldo Carvalho de Melo
2022-04-16 20:00 ` Arnaldo Carvalho de Melo
2022-04-16 20:05 ` Arnaldo Carvalho de Melo
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=YlsfaBgLZvOLAmvD@kernel.org \
--to=acme@kernel.org \
--cc=adrian.hunter@intel.com \
--cc=amadio@gentoo.org \
--cc=jolsa@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=namhyung@kernel.org \
--cc=nathan@kernel.org \
--cc=ndesaulniers@google.com \
--cc=sedat.dilek@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.