[LLVMdev] llvm-gcc build fail on RHEL v4 x86_64

Chandler Carruth chandlerc at gmail.com
Thu Jan 11 22:56:45 PST 2007


I do all my LLVM stuff on x86_64 without trouble... I have a nightly tester
up, and its only getting a few regressions currently, and I think some of
those have to do with the radical changes going on in LLVM-land currently,
and others with no one having done support for x86-64 in debugging output.
(this is at least most of what I've seen, ymmv).

Also, for the record, I have found both gcc 3.4 and 4.1 to miscompile things
with x86-64 and Linux. I think Chris had added this to a readme at one
point, but I'm not sure. I do everything with 4.0 and its working fairly
well, if not quite as well as x86 / ppc is. =]

-Chandler Carruth

On 1/11/07, Jeff Cohen <jeffc at jolt-lang.org> wrote:
>
> Already have concerning gcc 3.4: http://llvm.org/bugs/show_bug.cgi?id=1056
>
> As for llvm-test issues, quite frankly I don't know how well they're
> expected to work on x86_64.  No one has jumped in and said they run fine
> on their x86_64 system.  Maybe they're code generator bugs, or maybe
> they're portability issues for FreeBSD (though I never saw such massive
> problems with 32-bit FreeBSD when I last ran that).  I already fixed one
> problem I found with some shell scripts.  The remaining failures do not
> have an obvious cause, or even clear if it's a single cause.  There are
> 280 "FAILED!" messages altogether.
>
> It's also not clear if gcc 4.0 could still be a source of problems.  4.1
> is known to be bad also, after all.  Is there a version known to be
> good?  4.2, 4.3?
>
> Evan Cheng wrote:
> >
> > On Jan 9, 2007, at 9:48 PM, Jeff Cohen wrote:
> >
> >> gcc 3.4.x builds LLVM incorrectly on x86_64.
> >>
> >> gcc 4.0 will get you much farther, but the llvm-test regression tests
> >> still have massive problems.
> >
> > Please file bug reports on these. Thanks!
> >
> > Evan
> >
> >>
> >> Zhongxing Xu wrote:
> >>> The machine is a Dell workstation with xeon processors. The OS is RHEL
> >>> 4 AS x86_64
> >>> gcc version is 3.4.6
> >>>
> >>> I checked out the llvm-gcc from svn, configured with
> >>> ../llvm-gcc/configure --prefix=$HOME/llvm-gcc-install
> >>> --enable-llvm=$HOME/llvmobj/ --enable-languages=c,c++
> >>> --enable-checking --disable-shared --disable-multilib
> >>>
> >>> and get the following error message:
> >>>
> >>> make GCC_FOR_TARGET="/home/xzx/llvm-gcc-obj/gcc/xgcc
> >>> -B/home/xzx/llvm-gcc-obj/gcc/
> >>> -B/home/xzx/llvm-gcc-install/x86_64-unknown-linux-gnu/bin/
> >>> -B/home/xzx/llvm-gcc-install/x86_64-unknown-linux-gnu/lib/ -isystem
> >>> /home/xzx/llvm-gcc-install/x86_64-unknown-linux-gnu/include -isystem
> >>> /home/xzx/llvm-gcc-install/x86_64-unknown-linux-gnu/sys-include" \
> >>>   AR_FOR_TARGET="ar" \
> >>>   AR_CREATE_FOR_TARGET="ar  rc" \
> >>>   AR_EXTRACT_FOR_TARGET="ar  x" \
> >>>   AR_FLAGS_FOR_TARGET="" \
> >>>   CC="gcc" CFLAGS="-g -O2 -W -Wall -Wwrite-strings -Wstrict-prototypes
> >>> -Wmissing-prototypes -Wold-style-definition -fno-common " \
> >>>   BUILD_PREFIX="" \
> >>>   BUILD_PREFIX_1="loser-" \
> >>>   LANGUAGES="" \
> >>>   LIBGCC2_CFLAGS="-O2  -DIN_GCC    -W -Wall -Wwrite-strings
> >>> -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition
> >>> -isystem ./include  -fPIC -g -DHAVE_GTHR_DEFAULT -DIN_LIBGCC2
> >>> -D__GCC_FLOAT_NOT_NEEDED  "  \
> >>>   MULTILIB_CFLAGS="" T= crtbegin.o crtend.o crtbeginS.o crtendS.o
> >>> crtbeginT.o
> >>> make[3]: Entering directory `/home/xzx/llvm-gcc-obj/gcc'
> >>> make[3]: `crtbegin.o' is up to date.
> >>> make[3]: `crtend.o' is up to date.
> >>> make[3]: `crtbeginS.o' is up to date.
> >>> make[3]: `crtendS.o' is up to date.
> >>> make[3]: `crtbeginT.o' is up to date.
> >>> make[3]: Leaving directory `/home/xzx/llvm-gcc-obj/gcc'
> >>> /home/xzx/llvm-gcc-obj/gcc/xgcc -B/home/xzx/llvm-gcc-obj/gcc/
> >>> -B/home/xzx/llvm-gcc-install/x86_64-unknown-linux-gnu/bin/
> >>> -B/home/xzx/llvm-gcc-install/x86_64-unknown-linux-gnu/lib/ -isystem
> >>> /home/xzx/llvm-gcc-install/x86_64-unknown-linux-gnu/include -isystem
> >>> /home/xzx/llvm-gcc-install/x86_64-unknown-linux-gnu/sys-include -O2
> >>> -DIN_GCC    -W -Wall -Wwrite-strings -Wstrict-prototypes
> >>> -Wmissing-prototypes -Wold-style-definition  -isystem ./include  -fPIC
> >>> -g -DHAVE_GTHR_DEFAULT -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED  -I. -I.
> >>> -I../../llvm-gcc/gcc -I../../llvm-gcc/gcc/.
> >>> -I../../llvm-gcc/gcc/../include
> >>> -I../../llvm-gcc/gcc/../libcpp/include  -I/home/xzx/llvm/include
> >>> -I/home/xzx/llvmobj//include -DL_lshrdi3 -c
> >>> ../../llvm-gcc/gcc/libgcc2.c -o libgcc/./_lshrdi3.o
> >>> WARNING: 128-bit integers not supported!
> >>> ../../llvm-gcc/gcc/libgcc2.c: In function '__lshrti3':
> >>> ../../llvm-gcc/gcc/libgcc2.c:412: internal compiler error:
> >>> Segmentation fault
> >>> Please submit a full bug report,
> >>> with preprocessed source if appropriate.
> >>> See <URL:http://llvm.org/bugs <http://llvm.org/bugs>> for
> instructions.
> >>> make[2]: *** [libgcc/./_lshrdi3.o] Error 1
> >>> make[2]: Leaving directory `/home/xzx/llvm-gcc-obj/gcc'
> >>> make[1]: *** [stmp-multilib] Error 2
> >>> make[1]: Leaving directory `/home/xzx/llvm-gcc-obj/gcc'
> >>> make: *** [install-gcc] Error 2
> >>>
> >>> And after I run
> >>> make install
> >>> I get only c++ and g++ in my llvm-gcc-install directory.
> >>>
> ------------------------------------------------------------------------
> >>>
> >>>
> >>> _______________________________________________
> >>> LLVM Developers mailing list
> >>> LLVMdev at cs.uiuc.edu         http://llvm.cs.uiuc.edu
> >>> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
> >>>
> >>
> >> _______________________________________________
> >> LLVM Developers mailing list
> >> LLVMdev at cs.uiuc.edu         http://llvm.cs.uiuc.edu
> >> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
> >
> >
> >
> >
>
> _______________________________________________
> 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/20070112/e98e948b/attachment.html>


More information about the llvm-dev mailing list