<br>Hi Warren,<br>you can try to configure with the following<br><br>export CFLAGS="-m64"<br>export LDFLAGS="-L/usr/lib64"<br><br>LLVM:<br>../src/configure --prefix=`pwd`../install --enable-optimized --enable-jit --enable-targets=host-only
<br>make<br><br>LLVM-GCC:<br>../llvm-gcc4-2.0.source/configure --prefix=`pwd`../install --program-prefix=llvm- --enable-llvm=/home/warren/llvm/obj/ --enable-languages=c,c++ --disable-shared --disable-multilib<br><br>make
<br><br>Sometimes the gcc you use to compile matters. I wasn't able to compile with 4.1.* for example. I use 4.0.4 right now.<br><br>Regards,<br>Ferad Zyulkyarov<br><br><br><div><span class="gmail_quote">On 5/26/07, <b class="gmail_sendername">
Bill Wendling</b> <<a href="mailto:isanbard@gmail.com">isanbard@gmail.com</a>> wrote:</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Hi Warren,<br><br>You have the -m32 flag set, but it's still giving you this:<br><br>> Warning: Generation of 64-bit code for a 32-bit processor requested.<br>> Warning: 64-bit processors all have at least SSE2.
<br><br>But are you sure you want to compile the LLVM-GCC source? You should<br>use the binaries unless absolutely necessary.<br><br>-bw<br><br>On May 24, 2007, at 10:34 PM, Warren Armstrong wrote:<br><br>> Hi all,<br>
><br>> I've run into problems compiling the llvm-gcc frontend on x86_64.<br>> Is this<br>> not supported, or am I making an error somewhere?<br>><br>> The procedure I followed was:<br>><br>> 1. Download LLVM
2.0 source as a tarball (from a few days ago, during<br>> the testing phase).<br>> 2. Download the llvm-gcc4 source today, as a tarball.<br>> 3. Extract both.<br>><br>> 4. Configure LLVM as: ../src/configure --prefix=`pwd`../install
<br>> --enable-optimized --enable-jit --enable-targets=host-only<br>> (There is no llvm-gcc in the path)<br>> 5. make ENABLE_OPTIMIZED=1<br>><br>> 6. Configure the frontend as:<br>> ../llvm-gcc4-2.0.source
/configure --prefix=`pwd`../install<br>> --program-prefix=llvm- --enable-llvm=/home/warren/llvm/obj/<br>> --enable-languages=c,c++ --disable-shared<br>><br>> 7. make LLVM_VERSION_INFO=2.0<br>><br>> This produced errors from the assembler. I reran the failing command
<br>> with -v, and got the output below.<br>> I then changed the command to use -S instead of -c, the resulting<br>> assembler is attached.<br>><br>> Any advice gratefully received.<br>><br>> Cheers,<br>
> Warren<br>><br>> --------------<br>><br>> Failing command:<br>><br>><br>> warren@sunnyvale:~/llvm-gcc/obj/gcc> /home/warren/llvm-gcc/obj/gcc/<br>> xgcc<br>> -v -B/home/warren/llvm-gcc/obj/gcc/
<br>> -B/home/warren/llvm-gcc/obj../install/x86_64-unknown-linux-gnu/bin/<br>> -B/home/warren/llvm-gcc/obj../install/x86_64-unknown-linux-gnu/lib/<br>> -isystem<br>> /home/warren/llvm-gcc/obj../install/x86_64-unknown-linux-gnu/include
<br>> -isystem<br>> /home/warren/llvm-gcc/obj../install/x86_64-unknown-linux-gnu/sys-<br>> include<br>> -O2 -DIN_GCC -W -Wall -Wwrite-strings -Wstrict-prototypes<br>> -Wmissing-prototypes -Wold-style-definition -isystem ./include -I.
<br>> -I32 -I../../llvm-gcc4-2.0.source/gcc<br>> -I../../llvm-gcc4-2.0.source/gcc/32<br>> -I../../llvm-gcc4-2.0.source/gcc/../include<br>> -I../../llvm-gcc4-2.0.source/gcc/../libcpp/include<br>> -I/home/warren/llvm/llvm-
2.0/include -I/home/warren/llvm/obj//include<br>> -m32 -g0 -finhibit-size-directive -fno-inline-functions -fno-<br>> exceptions<br>> -fno-zero-initialized-in-bss -fno-unit-at-a-time -fno-omit-frame-<br>> pointer
<br>> -fno-asynchronous-unwind-tables -c<br>> ../../llvm-gcc4-2.0.source/gcc/crtstuff.c -DCRT_BEGIN -o 32/<br>> crtbegin.o<br>> Reading specs from /home/warren/llvm-gcc/obj/gcc/specs<br>> Target: x86_64-unknown-linux-gnu
<br>> Configured with: ../llvm-gcc4-2.0.source/configure<br>> --prefix=/home/warren/llvm-gcc/obj../install --program-prefix=llvm-<br>> --enable-llvm=/home/warren/llvm/obj/ --enable-languages=c,c++<br>> --disable-shared
<br>> Thread model: posix<br>> gcc version 4.0.1 LLVM (Apple Computer, Inc. build 2.0)<br>> /home/warren/llvm-gcc/obj/gcc/cc1 -quiet -v -I. -I32<br>> -I../../llvm-gcc4-2.0.source/gcc -I../../llvm-gcc4-2.0.source
/gcc/32<br>> -I../../llvm-gcc4-2.0.source/gcc/../include<br>> -I../../llvm-gcc4-2.0.source/gcc/../libcpp/include<br>> -I/home/warren/llvm/llvm-2.0/include -I/home/warren/llvm/obj//include<br>> -iprefix<br>> /home/warren/llvm-gcc/obj/gcc/../lib/gcc/x86_64-unknown-linux-gnu/
<br>> 4.0.1/<br>> -isystem /home/warren/llvm-gcc/obj/gcc/include -DIN_GCC -DCRT_BEGIN<br>> -isystem<br>> /home/warren/llvm-gcc/obj../install/x86_64-unknown-linux-gnu/include<br>> -isystem<br>> /home/warren/llvm-gcc/obj../install/x86_64-unknown-linux-gnu/sys-
<br>> include<br>> -isystem ./include ../../llvm-gcc4-2.0.source/gcc/crtstuff.c -quiet<br>> -dumpbase crtstuff.c -m32 -mtune=generic -auxbase-strip 32/crtbegin.o<br>> -g0 -O2 -W -Wall -Wwrite-strings -Wstrict-prototypes
<br>> -Wmissing-prototypes -Wold-style-definition -version<br>> -finhibit-size-directive -fno-inline-functions -fno-exceptions<br>> -fno-zero-initialized-in-bss -fno-unit-at-a-time -fno-omit-frame-<br>> pointer
<br>> -fno-asynchronous-unwind-tables -o /tmp/ccBy56Wo.s<br>> ignoring nonexistent directory<br>> "/home/warren/llvm-gcc/obj../install/x86_64-unknown-linux-gnu/include"<br>> ignoring nonexistent directory
<br>> "/home/warren/llvm-gcc/obj../install/x86_64-unknown-linux-gnu/sys-<br>> include"<br>> ignoring duplicate directory "./include"<br>> ignoring nonexistent directory<br>> "/home/warren/llvm-gcc/obj/gcc/../lib/gcc/x86_64-unknown-linux-gnu/
<br>> 4.0.1/include"<br>> ignoring nonexistent directory<br>> "/home/warren/llvm-gcc/obj/gcc/../lib/gcc/x86_64-unknown-linux-gnu/<br>> 4.0.1/../../../../x86_64-unknown-linux-gnu/include"<br>> ignoring nonexistent directory "/home/warren/llvm-gcc/obj../install/
<br>> include"<br>> ignoring nonexistent directory<br>> "/home/warren/llvm-gcc/obj../install/lib/gcc/x86_64-unknown-linux-<br>> gnu/4.0.1/include"<br>> ignoring nonexistent directory<br>> "/home/warren/llvm-gcc/obj../install/x86_64-unknown-linux-gnu/include"
<br>> ignoring nonexistent directory "../../llvm-gcc4-2.0.source/gcc/32"<br>> #include "..." search starts here:<br>> #include <...> search starts here:<br>> .<br>> 32<br>> ../../llvm-
gcc4-2.0.source/gcc<br>> ../../llvm-gcc4-2.0.source/gcc/../include<br>> ../../llvm-gcc4-2.0.source/gcc/../libcpp/include<br>> /home/warren/llvm/llvm-2.0/include<br>> /home/warren/llvm/obj//include<br>> /home/warren/llvm-gcc/obj/gcc/include
<br>> /usr/local/include<br>> /usr/include<br>> End of search list.<br>> GNU C version 4.0.1 LLVM (Apple Computer, Inc. build 2.0)<br>> (x86_64-unknown-linux-gnu)<br>> compiled by GNU C version
4.0.2 20050901 (prerelease) (SUSE<br>> Linux).<br>> GGC heuristics: --param ggc-min-expand=100 --param ggc-min-<br>> heapsize=131072<br>> Warning: Generation of 64-bit code for a 32-bit processor requested.<br>
> Warning: 64-bit processors all have at least SSE2.<br>> Compiler executable checksum: efa2a522e5a08a9a5e39009754b845ec<br>> as --traditional-format -V -Qy --32 -o 32/crtbegin.o /tmp/ccBy56Wo.s<br>> GNU assembler version
2.16.91.0.2 (x86_64-suse-linux) using BFD<br>> version<br>> 2.16.91.0.2 20050720 (SuSE Linux)<br>> /tmp/ccBy56Wo.s: Assembler messages:<br>> /tmp/ccBy56Wo.s:15: Error: bad register name `%rsp'<br>> /tmp/ccBy56Wo.s:16: Error: bad register name `%rbp'
<br>> /tmp/ccBy56Wo.s:17: Error: bad register name `%rsp'<br>> /tmp/ccBy56Wo.s:18: Error: `completed.4705(%rip)' is not a valid<br>> base/index expression<br>> /tmp/ccBy56Wo.s:21: Error: `p.4704(%rip)' is not a valid base/index
<br>> expression<br>> /tmp/ccBy56Wo.s:22: Error: bad register name `%rax)'<br>> /tmp/ccBy56Wo.s:23: Error: bad register name `%rax'<br>> /tmp/ccBy56Wo.s:26: Error: `p.4704(%rip)' is not a valid base/index
<br>> expression<br>> /tmp/ccBy56Wo.s:27: Error: bad register name `%rax'<br>> /tmp/ccBy56Wo.s:28: Error: `p.4704(%rip)' is not a valid base/index<br>> expression<br>> /tmp/ccBy56Wo.s:29: Error: bad register name `%rax)'
<br>> /tmp/ccBy56Wo.s:30: Error: bad register name `%rax'<br>> /tmp/ccBy56Wo.s:33: Error: `completed.4705(%rip)' is not a valid<br>> base/index expression<br>> /tmp/ccBy56Wo.s:34: Error: bad register name `%rbp'
<br>> /tmp/ccBy56Wo.s:35: Error: bad register name `%rbp'<br>> /tmp/ccBy56Wo.s:38: Error: bad register name `%rbp'<br>> /tmp/ccBy56Wo.s:39: Error: bad register name `%rbp'<br>> /tmp/ccBy56Wo.s:47: Error: bad register name `%rsp'
<br>> /tmp/ccBy56Wo.s:48: Error: bad register name `%rbp'<br>> /tmp/ccBy56Wo.s:49: Error: bad register name `%rsp'<br>> /tmp/ccBy56Wo.s:50: Error: `__JCR_LIST__(%rip)' is not a valid<br>> base/index expression
<br>> /tmp/ccBy56Wo.s:53: Error: `_Jv_RegisterClasses(%rip)' is not a valid<br>> base/index expression<br>> /tmp/ccBy56Wo.s:55: Error: bad register name `%rax'<br>> /tmp/ccBy56Wo.s:58: Error: `__JCR_LIST__(%rip)' is not a valid
<br>> base/index expression<br>> /tmp/ccBy56Wo.s:59: Error: bad register name `%rax'<br>> /tmp/ccBy56Wo.s:60: Error: bad register name `%rbp'<br>> /tmp/ccBy56Wo.s:61: Error: bad register name `%rbp'
<br>> /tmp/ccBy56Wo.s:64: Error: bad register name `%rbp'<br>> /tmp/ccBy56Wo.s:65: Error: bad register name `%rbp'<br>><br>> # Start of file scope inline assembly<br>> .section .fini<br>
> call __do_global_dtors_aux<br>> .text<br>> .section .init<br>> call frame_dummy<br>> .text<br>> # End of file scope inline assembly<br>><br>><br>> .text
<br>> .align 16<br>> .type __do_global_dtors_aux,@function<br>> __do_global_dtors_aux:<br>> subq $8, %rsp<br>> movq %rbp, (%rsp)<br>> movq %rsp, %rbp<br>> cmpb $0,
completed.4705(%rip)<br>> jne .LBB1_4 #UnifiedReturnBlock<br>> .LBB1_1: #bb9.preheader<br>> movq p.4704(%rip), %rax<br>> movq (%rax), %rax<br>> cmpq $0, %rax<br>> je .LBB1_3 #bb16
<br>> .LBB1_2: #bb<br>> addq $4, p.4704(%rip)<br>> call *%rax<br>> movq p.4704(%rip), %rax<br>> movq (%rax), %rax<br>> cmpq $0, %rax<br>> jne .LBB1_2 #bb<br>
> .LBB1_3: #bb16<br>> movb $1, completed.4705(%rip)<br>> movq %rbp, %rsp<br>> popq %rbp<br>> ret<br>> .LBB1_4: #UnifiedReturnBlock<br>> movq %rbp, %rsp<br>> popq %rbp
<br>> ret<br>> .size __do_global_dtors_aux, .-__do_global_dtors_aux<br>><br>><br>> .align 16<br>> .type frame_dummy,@function<br>> frame_dummy:<br>> subq $8, %rsp<br>
> movq %rbp, (%rsp)<br>> movq %rsp, %rbp<br>> cmpq $0, __JCR_LIST__(%rip)<br>> je .LBB2_3 #UnifiedReturnBlock<br>> .LBB2_1: #cond_true<br>> leaq _Jv_RegisterClasses(%rip), %rax
<br>><br>> cmpq $0, %rax<br>> je .LBB2_3 #UnifiedReturnBlock<br>> .LBB2_2: #cond_true10<br>> leaq __JCR_LIST__(%rip), %rdi<br>> call *%rax<br>> movq %rbp, %rsp<br>
> popq %rbp<br>> ret<br>> .LBB2_3: #UnifiedReturnBlock<br>> movq %rbp, %rsp<br>> popq %rbp<br>> ret<br>> .size frame_dummy, .-frame_dummy<br>> .type __CTOR_LIST__,@object
<br>> .section .ctors,"aw",@progbits<br>> .align 8<br>> __CTOR_LIST__: # __CTOR_LIST__<br>> .size __CTOR_LIST__, 8<br>> .quad 4294967295<br>>
<br>> .type __DTOR_LIST__,@object<br>> .section .dtors,"aw",@progbits<br>> .align 8<br>> __DTOR_LIST__: # __DTOR_LIST__<br>> .size __DTOR_LIST__, 8
<br>> .quad 4294967295<br>><br>> .type __JCR_LIST__,@object<br>> .section .jcr<br>> .align 8<br>> __JCR_LIST__: # __JCR_LIST__<br>> .size __JCR_LIST__, 0
<br>><br>> .hidden __dso_handle<br>> .type __dso_handle,@object<br>> .globl __dso_handle<br>> .data<br>> .align 8<br>> __dso_handle: # __dso_handle
<br>> .size __dso_handle, 8<br>> .zero 8<br>><br>> .type p.4704,@object<br>> .align 8<br>> p.4704: # p.4704<br>> .size p.4704, 8<br>> .quad (__DTOR_LIST__) + 8
<br>><br>> .type completed.4705,@object<br>> .local completed.4705<br>> .comm completed.4705,1,1 # completed.4705<br>> .weak _Jv_RegisterClasses<br>><br>> .ident "GCC: (GNU)
4.0.1 LLVM (Apple Computer, Inc. build 2.0)"<br>> _______________________________________________<br>> LLVM Developers mailing list<br>> <a href="mailto:LLVMdev@cs.uiuc.edu">LLVMdev@cs.uiuc.edu</a> <a href="http://llvm.cs.uiuc.edu">
http://llvm.cs.uiuc.edu</a><br>> <a href="http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev">http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev</a><br><br>_______________________________________________<br>LLVM Developers mailing list
<br><a href="mailto:LLVMdev@cs.uiuc.edu">LLVMdev@cs.uiuc.edu</a> <a href="http://llvm.cs.uiuc.edu">http://llvm.cs.uiuc.edu</a><br><a href="http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev">http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
</a><br></blockquote></div><br><br clear="all"><br>