[LLVMdev] Compiling llvm-gcc on amd64 with 32 bits: assembler still carps

Joachim Durchholz jo at durchholz.org
Sun Mar 30 12:39:05 PDT 2008


Am Sonntag, den 30.03.2008, 10:28 -0700 schrieb Tanya Lattner:
> On Mar 30, 2008, at 10:07 AM, Joachim Durchholz wrote:
> > Look at how $LLVM_CONFIGURE is built, the final value is
> >
> > --prefix=/home/jo --enable-optimized --build=i686-pc-linux-gnu
> > --host=i686-pc-linux-gnu --target=i686-pc-linux-gnu"
> >
> 
> This looks likes its missing some stuff. Make sure the configure line  
> is exactly as what is in README.LLVM.

OK, I now have

LLVM_VERSION_INFO=kurier-bootstrap /home/jo/llvm-gcc-src/configure
--prefix=/home/jo --enable-optimized --build=i686-pc-linux-gnu
--host=i686-pc-linux-gnu --target=i686-pc-linux-gnu
--enable-llvm=/home/jo --enable-languages=c,c++

The --enable-llvm directory is the same as --prefix, I hope that's right
(the actual binaries are in the 'bin' subdirectory).

I don't think --enable-checking should be necessary, I had
llvm ./configure'd with --enable-optimized (I hope that's the same as
specifying ENABLE_OPTIMIZED=1 during the 'make' run for LLVM proper).

Trying with OPTIMIZE_OPTION=-O2 didn't help.

Anything else I may have overlooked?

Regards,
Jo


P.S.: Rerunning the failing command with -v gave me

GNU C version 4.2.1 (Based on Apple Inc. build 5555) (LLVM build)
(i686-pc-linux-gnu)
        compiled by GNU C version 4.2.1 (Ubuntu 4.2.1-5ubuntu4).

so it seems to call the right compiler, but I still get

 /home/jo/llvm-gcc-wrk/./gcc/as --traditional-format -V -Qy -o
crtbegin.o crtstuff.s
GNU assembler version 2.18 (x86_64-linux-gnu) using BFD version (GNU
Binutils for Ubuntu) 2.18
crtstuff.s: Assembler messages:
crtstuff.s:15: Error: suffix or operands invalid for `push'
crtstuff.s:29: Error: suffix or operands invalid for `call'
crtstuff.s:36: Error: suffix or operands invalid for `pop'
crtstuff.s:39: Error: suffix or operands invalid for `pop'
crtstuff.s:47: Error: suffix or operands invalid for `push'
crtstuff.s:60: Error: suffix or operands invalid for `call'
crtstuff.s:63: Error: suffix or operands invalid for `pop'

(As noted in one of my previous mails, .../gcc/as is just a shellscript
calling the installed as, which happens to be GNU as.)




More information about the llvm-dev mailing list