[LLVMdev] Build(s) broken? (was: Re: Buildbots: Apology and Explanation)

Jim Grosbach grosbach at apple.com
Mon Aug 31 09:14:02 PDT 2009


On Aug 31, 2009, at 6:48 AM, Paul Melis wrote:

> Paul Melis wrote:
>> Jim Grosbach wrote:
>>>
>>> On Aug 30, 2009, at 10:18 AM, Paul Melis wrote:
>>>
>>>> Hello,
>>>>
>>>> Bill Wendling wrote:
>>>>> Before we had buildbots, a random patch would break the system. It
>>>>> would sometimes take a whole day to determine which patch broke  
>>>>> it.
>>>> I see the buildbots are currently showing no problem on 32-bit  
>>>> linux
>>>> but
>>>> I get the following build error with TOT (out-of-source autoconf
>>>> build):
>>>>
>>>> [...]
>>>> make[1]: Leaving directory `/home/melis/c/llvm-svn-release/tools'
>>>> make[1]: Entering directory `/home/melis/c/llvm-svn-release/ 
>>>> runtime'
>>>> make[2]: Entering directory
>>>> `/home/melis/c/llvm-svn-release/runtime/libprofile'
>>>> llvm[2]: Compiling BasicBlockTracing.ll to BasicBlockTracing.bc for
>>>> Release build (bytecode)
>>>> /home/melis/c/llvm-svn-release/Release/bin/llvm-as:
>>>> /home/melis/c/llvm-svn-release/runtime/libprofile/Release/
>>>> BasicBlockTracing.ll:1:2:
>>>> error: expected top-level entity
>>>>   .file    "BasicBlockTracing.c"
>>>>   ^
>>>> /home/melis/c/llvm-svn-release/Release/bin/opt: Invalid bitcode
>>>> signature
>>>> make[2]: ***
>>>> [/home/melis/c/llvm-svn-release/runtime/libprofile/Release/
>>>> BasicBlockTracing.bc]
>>>> Error 1
>>>> make[2]: Leaving directory
>>>> `/home/melis/c/llvm-svn-release/runtime/libprofile'
>>>> make[1]: *** [libprofile/.makeall] Error 2
>>>> make[1]: Leaving directory `/home/melis/c/llvm-svn-release/runtime'
>>>> make: *** [all] Error 1
>>>>
>>>> It seems BasicBlockTracing.ll contains assembly instead of LLVM IR.
>>>>
>>>>
>>>> Also, llvm-gcc also doesn't build for me. Here the error is  
>>>> related to
>>>> exception handling:
>>>>
>>>> make[3]: Leaving directory `/home/melis/c/llvm-gcc-svn-build/
>>>> libdecnumber'
>>>> make[3]: Entering directory `/home/melis/c/llvm-gcc-svn-build/gcc'
>>>> /home/melis/local/bin/gcc -c   -g -DIN_GCC   -W -Wall -Wwrite- 
>>>> strings
>>>> -Wstrict-prototypes -Wmissing-prototypes -pedantic -Wno-long-long
>>>> -Wno-variadic-macros -Wno-overlength-strings -Wold-style-definition
>>>> -Wmissing-format-attribute -fno-common   -DHAVE_CONFIG_H -I. -I.
>>>> -I../../llvm-gcc-svn/gcc -I../../llvm-gcc-svn/gcc/.
>>>> -I../../llvm-gcc-svn/gcc/../include
>>>> -I../../llvm-gcc-svn/gcc/../libcpp/include
>>>> -I../../llvm-gcc-svn/gcc/../libdecnumber -I../libdecnumber
>>>> gtype-desc.c -o gtype-desc.o
>>>> gtype-desc.c:5862: error: 'sjlj_fc_type_node' undeclared here (not
>>>> in a
>>>> function)
>>>> make[3]: *** [gtype-desc.o] Error 1
>>>> make[3]: Leaving directory `/home/melis/c/llvm-gcc-svn-build/gcc'
>>>> make[2]: *** [all-stage1-gcc] Error 2
>>>> make[2]: Leaving directory `/home/melis/c/llvm-gcc-svn-build'
>>>> make[1]: *** [stage1-bubble] Error 2
>>>> make[1]: Leaving directory `/home/melis/c/llvm-gcc-svn-build'
>>>> make: *** [all] Error 2
>>>>
>>>> Is there something suddenly wrong with my system (which hasn't  
>>>> changed
>>>> in any way)? I used to be able to build LLVM(GCC) without  
>>>> problems a
>>>> few
>>>> weeks ago...
>>>>
>>>
>>> SJLJ exception handling is only implemented on ARM Darwin. It looks
>>> like your target is pulling in bits of that?
>>
>> Well, I don't know what changed to make this suddenly happen. FYI,  
>> here is
>> the configure line I have been using for quite some time:
>>
>> ../llvm-gcc-svn/configure \
>>    --prefix=/home/melis/llvm \
>>    --program-prefix=llvm- \
>>    --with-llvm=/home/melis/c/llvm-svn \
>>    --enable-languages=c,c++ \
>>    --target=i686-pc-linux-gnu \
>>    --with-tune=generic \
>>    --with-arch=pentium4
>
> It seems my installed version of llvm-gcc had lost its ability to  
> generate
> LLVM IR (-c -emit-llvm was ignored, it simply produced assembly in  
> that
> case). That caused LLVM itself not to build, as the stuff in runtime/
> picked up the flaky llvm-gcc.
>
> Cleaning out my LLVM install and completely rebuilding from scratch  
> fixed
> the LLVM build. However, llvm-gcc still has the SJLJ error.

Please try pulling in the changes from r80588. I suspect that'll take  
care of your issue. Unfortunately, I can't reproduce the failure here  
to verify directly.

-Jim



More information about the llvm-dev mailing list