I'm seeing this new build failure, starting some time yesterday on ARM:
make[3]: Entering directory `/home/nlewycky/llvm/tools/llvmc/driver'
llvm[3]: Linking Debug executable llvmc
g++ -DLLVMC_BUILTIN_PLUGIN_1=Base -DLLVMC_BUILTIN_PLUGIN_2=Clang
-I/home/nlewycky/llvm/include -I/home/nlewycky/llvm/tools/llvmc/driver
-D_DEBUG -D_GNU_SOURCE -D__STDC_LIMIT_MACROS
-D__STDC_CONSTANT_MACROS -g -fPIC -Woverloaded-virtual -pedantic
-Wno-long-long -Wall -W -Wno-unused-parameter -Wwrite-strings
-lCompilerDriver -g -Wl,-R -Wl,/home/nlewycky/llvm/Debug/bin
-Wl,-export-dynamic -L/home/nlewycky/llvm/Debug/lib
-L/home/nlewycky/llvm/Debug/lib -o
/home/nlewycky/llvm/Debug/bin/llvmc
/home/nlewycky/llvm/tools/llvmc/driver/Debug/Main.o
-lplugin_llvmc_Base -lplugin_llvmc_Clang \
-lpthread -ldl -lm
/usr/bin/ld: /home/nlewycky/llvm/Debug/bin/llvmc: hidden symbol
`__sync_val_compare_and_swap_4' in
/usr/lib/gcc/arm-linux-gnueabi/4.3.3/libgcc.a(linux-atomic.o) is
referenced by DSO
/usr/bin/ld: final link failed: Nonrepresentable section on output
collect2: ld returned 1 exit status
make[3]: *** [/home/nlewycky/llvm/Debug/bin/llvmc] Error 1
This is with LLVM being built by the system compiler (GCC 4.3.3-10 Debian).
I'm not sure what to make of this. Would it be due to the atomics used for
mutexes?
Nick
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
<http://lists.llvm.org/pipermail/llvm-dev/attachments/20090630/b2c4b768/attachment.html>
Nick Lewycky wrote:> I'm seeing this new build failure, starting some time yesterday on ARM: > > make[3]: Entering directory `/home/nlewycky/llvm/tools/llvmc/driver' > llvm[3]: Linking Debug executable llvmc > g++ -DLLVMC_BUILTIN_PLUGIN_1=Base -DLLVMC_BUILTIN_PLUGIN_2=Clang -I/home/nlewycky/llvm/include -I/home/nlewycky/llvm/tools/llvmc/driver -D_DEBUG -D_GNU_SOURCE -D__STDC_LIMIT_MACROS -D__STDC_CONSTANT_MACROS -g -fPIC -Woverloaded-virtual -pedantic -Wno-long-long -Wall -W -Wno-unused-parameter -Wwrite-strings -lCompilerDriver -g -Wl,-R -Wl,/home/nlewycky/llvm/Debug/bin -Wl,-export-dynamic -L/home/nlewycky/llvm/Debug/lib -L/home/nlewycky/llvm/Debug/lib -o /home/nlewycky/llvm/Debug/bin/llvmc /home/nlewycky/llvm/tools/llvmc/driver/Debug/Main.o -lplugin_llvmc_Base -lplugin_llvmc_Clang \ > -lpthread -ldl -lm > /usr/bin/ld: /home/nlewycky/llvm/Debug/bin/llvmc: hidden symbol `__sync_val_compare_and_swap_4' in /usr/lib/gcc/arm-linux-gnueabi/4.3.3/libgcc.a(linux-atomic.o) is referenced by DSO > /usr/bin/ld: final link failed: Nonrepresentable section on output > collect2: ld returned 1 exit status > make[3]: *** [/home/nlewycky/llvm/Debug/bin/llvmc] Error 1 > > This is with LLVM being built by the system compiler (GCC 4.3.3-10 > Debian). I'm not sure what to make of this. Would it be due to the > atomics used for mutexes?Yes. It's just a matter of defining __sync_val_compare_and_swap_4: http://gcc.gnu.org/svn/gcc/trunk/gcc/config/arm/linux-atomic.c Andrew.
I'm getting a different failure in llvmc link on Leopard mac builds (Debug
and Release):
llvm[1]: Linking Release executable llvmc (without symbols)
g++ -DLLVMC_BUILTIN_PLUGIN_1=Base -DLLVMC_BUILTIN_PLUGIN_2=Clang
-I/Users/john/work/projects/comp/llvm-work/exp/build/llvm-check/include
-I/Users/john/work/projects/comp/llvm-work/exp/build/llvm-check/tools/llvmc/driver
-I/Users/john/work/projects/comp/llvm-work/llvm/include
-I/Users/john/work/projects/comp/llvm-work/llvm/tools/llvmc/driver -D_DEBUG
-D_GNU_SOURCE -D__STDC_LIMIT_MACROS -D__STDC_CONSTANT_MACROS -O3
-fno-common -Woverloaded-virtual -m32 -pedantic -Wno-long-long -Wall -W
-Wno-unused-parameter -Wwrite-strings -lCompilerDriver -O3
-L/Users/john/work/projects/comp/llvm-work/exp/build/llvm-check/Release/lib
-L/Users/john/work/projects/comp/llvm-work/exp/build/llvm-check/Release/lib
-o
/Users/john/work/projects/comp/llvm-work/exp/build/llvm-check/Release/bin/llvmc
/Users/john/work/projects/comp/llvm-work/exp/build/llvm-check/tools/llvmc/driver/Release/Main.o
-lplugin_llvmc_Base -lplugin_llvmc_Clang \
-lpthread -lffi -lm
Undefined symbols:
"llvmc::ForceLinkageClang()", referenced from:
llvmc::ForceLinkage() in Main.o
_main in Main.o
"llvmc::ForceLinkageBase()", referenced from:
llvmc::ForceLinkage() in Main.o
_main in Main.o
ld: symbol(s) not found
collect2: ld returned 1 exit status
make[1]: ***
[/Users/john/work/projects/comp/llvm-work/exp/build/llvm-check/Release/bin/llvmc]
Error 1
make: *** [all] Error 1
On Tue, Jun 30, 2009 at 12:29 PM, Nick Lewycky <nlewycky at google.com>
wrote:
> I'm seeing this new build failure, starting some time yesterday on ARM:
>
> make[3]: Entering directory `/home/nlewycky/llvm/tools/llvmc/driver'
> llvm[3]: Linking Debug executable llvmc
>
> g++ -DLLVMC_BUILTIN_PLUGIN_1=Base -DLLVMC_BUILTIN_PLUGIN_2=Clang
-I/home/nlewycky/llvm/include -I/home/nlewycky/llvm/tools/llvmc/driver -D_DEBUG
-D_GNU_SOURCE -D__STDC_LIMIT_MACROS -D__STDC_CONSTANT_MACROS -g -fPIC
-Woverloaded-virtual -pedantic -Wno-long-long -Wall -W -Wno-unused-parameter
-Wwrite-strings -lCompilerDriver -g -Wl,-R -Wl,/home/nlewycky/llvm/Debug/bin
-Wl,-export-dynamic -L/home/nlewycky/llvm/Debug/lib
-L/home/nlewycky/llvm/Debug/lib -o /home/nlewycky/llvm/Debug/bin/llvmc
/home/nlewycky/llvm/tools/llvmc/driver/Debug/Main.o -lplugin_llvmc_Base
-lplugin_llvmc_Clang \
> -lpthread -ldl -lm
>
> /usr/bin/ld: /home/nlewycky/llvm/Debug/bin/llvmc: hidden symbol
`__sync_val_compare_and_swap_4' in
/usr/lib/gcc/arm-linux-gnueabi/4.3.3/libgcc.a(linux-atomic.o) is referenced by
DSO
> /usr/bin/ld: final link failed: Nonrepresentable section on output
> collect2: ld returned 1 exit status
> make[3]: *** [/home/nlewycky/llvm/Debug/bin/llvmc] Error 1
>
> This is with LLVM being built by the system compiler (GCC 4.3.3-10 Debian).
> I'm not sure what to make of this. Would it be due to the atomics used
for
> mutexes?
>
> Nick
>
>
> _______________________________________________
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
<http://lists.llvm.org/pipermail/llvm-dev/attachments/20090630/0618f2f9/attachment.html>
2009/6/30 Andrew Haley <aph at redhat.com>> Nick Lewycky wrote: > > I'm seeing this new build failure, starting some time yesterday on ARM: > > > > make[3]: Entering directory `/home/nlewycky/llvm/tools/llvmc/driver' > > llvm[3]: Linking Debug executable llvmc > > g++ -DLLVMC_BUILTIN_PLUGIN_1=Base -DLLVMC_BUILTIN_PLUGIN_2=Clang > -I/home/nlewycky/llvm/include -I/home/nlewycky/llvm/tools/llvmc/driver > -D_DEBUG -D_GNU_SOURCE -D__STDC_LIMIT_MACROS -D__STDC_CONSTANT_MACROS -g > -fPIC -Woverloaded-virtual -pedantic -Wno-long-long -Wall -W > -Wno-unused-parameter -Wwrite-strings -lCompilerDriver -g -Wl,-R > -Wl,/home/nlewycky/llvm/Debug/bin -Wl,-export-dynamic > -L/home/nlewycky/llvm/Debug/lib -L/home/nlewycky/llvm/Debug/lib -o > /home/nlewycky/llvm/Debug/bin/llvmc > /home/nlewycky/llvm/tools/llvmc/driver/Debug/Main.o -lplugin_llvmc_Base > -lplugin_llvmc_Clang \ > > -lpthread -ldl -lm > > /usr/bin/ld: /home/nlewycky/llvm/Debug/bin/llvmc: hidden symbol > `__sync_val_compare_and_swap_4' in > /usr/lib/gcc/arm-linux-gnueabi/4.3.3/libgcc.a(linux-atomic.o) is referenced > by DSO > > /usr/bin/ld: final link failed: Nonrepresentable section on output > > collect2: ld returned 1 exit status > > make[3]: *** [/home/nlewycky/llvm/Debug/bin/llvmc] Error 1 > > > > This is with LLVM being built by the system compiler (GCC 4.3.3-10 > > Debian). I'm not sure what to make of this. Would it be due to the > > atomics used for mutexes? > > Yes. It's just a matter of defining __sync_val_compare_and_swap_4: > > http://gcc.gnu.org/svn/gcc/trunk/gcc/config/arm/linux-atomic.c >The program is supposed to define it? LLVM doesn't directly call __sync_val_compare_and_swap_4, so either the system headers #define something else to it or gcc lowers another call to that. In either case, why is it declared HIDDEN? Nick> > Andrew. > _______________________________________________ > LLVM Developers mailing list > LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu > http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev >-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20090630/c3faa29b/attachment.html>