Chris Lattner
2008-Mar-06 07:03 UTC
[LLVMdev] llvm/test: suffix or operands invalid for `push'
On Mar 3, 2008, at 2:49 AM, Joachim Durchholz wrote:> Hi all, > > I found enough to explain the behaviour that I encountered. If I'm > correct, the bugs are just in the dejagnu-based test machinery, not in > LLVM itself.Yep, I believe that. I haven't been following the whole thread very closely, what specific tests are affected here? Before making any significant and widespread changes to llvm/test, please change one test and propose it as a model for other tests. Thanks for working on this! -Chris> > There seem to be two issues: > > > Issue 1 is that the CC, CFLAGS, CXX, and CXXFLAGS settings are not > reflected in the site.exp file. I had > CC=gcc-4.2 > CFLAGS="-m32 -Wl,-melf_i386" > CXX=g++-4.2 > CXXFLAGS=$CFLAGS > ARCH=i686-pc-linux-gnu > ./configure --prefix=$HOME --target=$ARCH --host=$ARCH --build=$ARCH > but site.exp still has > set gccpath "gcc" > set gxxpath "g++" > and no mention of -m32 or -Wl,elf_i386 (these options are required to > force a 64-bit GNU toolchain into 32-bit mode). > > I don't know where these options are lost; I did a little looking > around > in the configure scripts, but didn't find any obvious problems and > decided to leave this kind of issue to the autoconf experts :-) > > > Issue 2 is that the RUN: lines in the dejagnu tests ignore $CC, $CXX, > $CFLAGS and $CXXFLAGS when calling gcc, g++, or as (and possibly > ld). In > most cases things will happen to not fail, but the assembler choked on > 32-bit opcodes when running in default mode (which is 64 bits on an > amd64 machine, of course). > > If I'm correct, this is a bug in the tests, not in LLVM. > Proposed bug fix would then be to replace in all test case files > (hopefully I got the dejagnu macro syntax right): > gcc -> %gccpath > g++ -> %gxxpath > as -> %gccpath (don't call 'as' directly, gcc knows how to call it!) > ld -> %gccpath (just as with 'as') > > > Can anybody confirm or correct these findings? > > Regards, > Jo > > _______________________________________________ > LLVM Developers mailing list > LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu > http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
Joachim Durchholz
2008-Mar-06 08:08 UTC
[LLVMdev] llvm/test: suffix or operands invalid for `push'
Am Mittwoch, den 05.03.2008, 23:03 -0800 schrieb Chris Lattner:> On Mar 3, 2008, at 2:49 AM, Joachim Durchholz wrote: > > > Hi all, > > > > I found enough to explain the behaviour that I encountered. If I'm > > correct, the bugs are just in the dejagnu-based test machinery, not in > > LLVM itself. > > Yep, I believe that. I haven't been following the whole thread very > closely, what specific tests are affected here?test/C++Frontend/2006-11-06-StackTrace.cpp test/C++Frontend/2006-11-30-NoCompileUnit.cpp test/C++Frontend/2006-11-30-Pubnames.cpp> Before making any significant and widespread changes to llvm/test, > please change one test and propose it as a model for other tests.The changes were actually very local: replace calls to gcc/g++/as with calls to %compile_c and %compile_cxx. I submitted bug reports with patches recently (look for bugs submitted by jo at durchholz.org). The patches are tiny, so it's not a real problem if they need to be modified, and I'm willing to try out any needed modifications and resubmit the patches. (%compile_cxx wouldn't work because %compile_c would be substituted before, so the first patch corrects that.)> Thanks for working on this!You're welcome :-) Regards, Jo
Chris Lattner
2008-Mar-10 06:57 UTC
[LLVMdev] llvm/test: suffix or operands invalid for `push'
On Mar 6, 2008, at 12:08 AM, Joachim Durchholz wrote:> > Am Mittwoch, den 05.03.2008, 23:03 -0800 schrieb Chris Lattner: >> On Mar 3, 2008, at 2:49 AM, Joachim Durchholz wrote: >> >>> Hi all, >>> >>> I found enough to explain the behaviour that I encountered. If I'm >>> correct, the bugs are just in the dejagnu-based test machinery, >>> not in >>> LLVM itself. >> >> Yep, I believe that. I haven't been following the whole thread very >> closely, what specific tests are affected here? > > test/C++Frontend/2006-11-06-StackTrace.cpp > test/C++Frontend/2006-11-30-NoCompileUnit.cpp > test/C++Frontend/2006-11-30-Pubnames.cpp > >> Before making any significant and widespread changes to llvm/test, >> please change one test and propose it as a model for other tests. > > The changes were actually very local: replace calls to gcc/g++/as with > calls to %compile_c and %compile_cxx. > I submitted bug reports with patches recently (look for bugs submitted > by jo at durchholz.org). The patches are tiny, so it's not a real problem > if they need to be modified, and I'm willing to try out any needed > modifications and resubmit the patches. > (%compile_cxx wouldn't work because %compile_c would be substituted > before, so the first patch corrects that.)Makes sense! I applied your patch, thanks! -Chris
Reasonably Related Threads
- [LLVMdev] llvm/test: suffix or operands invalid for `push'
- [LLVMdev] llvm/test: suffix or operands invalid for `push'
- [LLVMdev] llvm/test: suffix or operands invalid for `push'
- [LLVMdev] llvm/test: suffix or operands invalid for `push'
- [LLVMdev] llvm/test: suffix or operands invalid for `push'