This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: -msse producing sse2 instructions (test case included!)


> Hi all,
> 
> I managed to whittle it down to the place where the instruction is being
> generated.. and the resulting executable produces an Illegal Instruction if
> run on Athlon 4 machines, but not on Athlon MP/XP or Pentium 4s.
> 
> The line to compile with:
> 
> $>
> g++ -mcpu=pentium3 -march=pentium3 -msse -mfpmath=387 -mpreferred-stack-boun
> dary=4 -fno-implement-inlines -Werror -Wall  -Dstdext=__gnu_cxx -O2 -mno-cyg
> win -mwin32  test.cpp -o test.exe
> 
> Compiling with -march=athlon-4 -mcpu=athlon-4 also causes the same code to
> be generated.
> 
> On another note, I also get an illegal instruction error on this:
> 
> movss  0xfffffffc(%ebp),%xmm0
> 
> Seems to be in the integer->float conversion code tho. so I hope this helps.

You must have disabled SSE support on your Athlon machine. This happends
for out of date bioses.  I believe there should be BOIS update for you
and also there is kernel patch around to do the trick.

Honza


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]