[llvm-dev] Problem with Polly build

Michael Kruse via llvm-dev llvm-dev at lists.llvm.org
Thu May 4 01:35:37 PDT 2017


2017-05-02 0:50 GMT+02:00 Eugene Zelenko via llvm-dev <llvm-dev at lists.llvm.org>:
> On Mon, May 1, 2017 at 3:27 PM, Michael Kruse <llvmdev at meinersbur.de> wrote:
>> 2017-05-01 20:16 GMT+02:00 Eugene Zelenko via llvm-dev
>> <llvm-dev at lists.llvm.org>:
>>> Hi, Hongbin!
>>>
>>> On Mon, May 1, 2017 at 11:06 AM, Hongbin Zheng <etherzhhb at gmail.com> wrote:
>>>> Hi Eugene,
>>>>
>>>> It is strange, I also do a clean build with CMake+make with r301734 and it
>>>> is ok. Could you provide more details?
>>>>
>>>> Thanks
>>>> Hongbin
>>>
>>> My CMake parameters:
>>>
>>> ${CMake}                        \
>>>     -DCMAKE_BUILD_TYPE="Release"            \
>>>     -DCMAKE_INSTALL_PREFIX:PATH=${InstallDir}    \
>>>     -DCMAKE_C_COMPILER=${GCCDir}/bin/gcc        \
>>>     -DCMAKE_C_FLAGS="-m64"                \
>>>     -DCMAKE_CXX_COMPILER=${GCCDir}/bin/g++        \
>>>     -DCMAKE_CXX_FLAGS="-m64"            \
>>>     -DPYTHON_EXECUTABLE=${PythonDir}/bin/python    \
>>>     -DLLVM_INSTALL_TOOLCHAIN_ONLY=ON        \
>>>     -DLLVM_LIBDIR_SUFFIX=64                \
>>>     -DLLVM_TARGETS_TO_BUILD="X86"            \
>>>     ${LLVMSourceDir}
>>>
>>> I build LLVM, Clang, Clang extra tools, Compiler-RT and Polly together.
>>
>> I tried this configuration (I have lld, lldb, libcxx etc in my source
>> tree as well). Neither "make LLVMPolly -j8" nor "make Polly -j8"
>> resulted in an error on a clean build.
>>
>> Can you try "make intrinsics_gen" before building anything else? The
>> should generate the missing "llvm/IR/Attributes.gen".
>>
>> You could also try "-DLLVM_POLLY_LINK_INTO_TOOLS=OFF".
>>
>> Michael
>
> Yes, my build proceeded after make intrinsics_gen.
>
> But originally I run make -j 4 for entire source tree (clean build),
> not particular Polly target. In such proper solution is that Polly
> should depend on intrinsics_gen.

I try to diagnose the problem because I cannot reproduce it. I also
tried "make -j4" (that is: make all -j4) on a clean build dir which
built successfully.

Polly does depend on intrinsics_gen. The dependency is added by the
following line in polly/lib/CMakeLists.txt

if (TARGET intrinsics_gen)
  # Check if we are building as part of an LLVM build
  add_dependencies(PollyCore intrinsics_gen)
endif()

The artifacts Polly and LLVMPolly depend on PollyCore. If you want to
help to diagnose the problem, you could add a "message()" command to
see whether the add_dependencies above is executed. It would also be
interesting whether "make Polly -j4","make LLVMPolly -j4" and "make
opt -j4" works for you on a clean build.

Could it also be one of the other projects not properly depending on
intrinsics_gen?

Michael


More information about the llvm-dev mailing list