[LLVMdev] llvm/test: suffix or operands invalid for `push'

Chris Lattner sabre at nondot.org
Sat Mar 1 10:57:54 PST 2008


> # Configure & install
> $ cd llvm-2.2
> # I'm trying the --build option, too.
> $ ./configure --prefix=$HOME CC=gcc-4.2 CXX=g++-4.2 \
>  --build=x86_64-pc-linux-gnu \
>  --host=i686-pc-linux-gnu --target=i686-pc-linux-gnu

This is probably the problem.  It sounds like you have llvm-gcc  
building for x86-64 (so the compiler defaults to emitting x86-64 code)  
but your assembler defaults to x86-32.  Thus, your assembler requires - 
m64 to be passed for it to grok 64-bit code, which isn't being passed  
by the test.

Does it work if you change the top of that test to:
...
// RUN: as -m64 NoCompileUnit.s -o NoCompileUnit.o
..
?

-Chris

>
> $ make
> $ make check
> # Host is still wrong.
> # Not sure whether the warnings are a problem.
> # The used description files might be for x86_64 though.
> ...
> Target is i686-pc-linux-gnu
> Host   is x86_64-unknown-linux-gnu
> ...
> Using /usr/share/dejagnu/baseboards/unix.exp as board description file
> for target.
> Using /usr/share/dejagnu/config/unix.exp as generic interface file for
> target.
> WARNING: Couldn't find tool config file for unix, using default.
> WARNING: Assuming target board is the local machine (which is probably
> wrong).
> You may need to set your DEJAGNU environment variable.
> ...FAIL: /home/jo/Delta/llvm-2.2/test/C
> ++Frontend/2006-11-30-NoCompileUnit.cpp
> Failed with exit(1) at line 2
> while running: as NoCompileUnit.s -o NoCompileUnit.o
> NoCompileUnit.s: Assembler messages:
> NoCompileUnit.s:33: Error: suffix or operands invalid for `push'
> NoCompileUnit.s:52: Error: suffix or operands invalid for `pop'
> NoCompileUnit.s:64: Error: suffix or operands invalid for `push'
> NoCompileUnit.s:83: Error: suffix or operands invalid for `pop'
> NoCompileUnit.s:95: Error: suffix or operands invalid for `push'
> NoCompileUnit.s:116: Error: suffix or operands invalid for `pop'
> NoCompileUnit.s:128: Error: suffix or operands invalid for `push'
> NoCompileUnit.s:225: Error: suffix or operands invalid for `pop'
> NoCompileUnit.s:237: Error: suffix or operands invalid for `push'
> NoCompileUnit.s:243: Error: suffix or operands invalid for `push'
> NoCompileUnit.s:268: Error: suffix or operands invalid for `pop'
> NoCompileUnit.s:269: Error: suffix or operands invalid for `pop'
> ...
>
> I'm not sure what to make of that "tool config file" warning.
>
> Regards,
> Jo
>
>
> _______________________________________________
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu         http://llvm.cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev




More information about the llvm-dev mailing list