[lug] povray on fedora core 4

Zan Lynx zlynx at acm.org
Tue Sep 13 11:04:04 MDT 2005


On Tue, 2005-09-13 at 10:47 -0600, D. Stimits wrote:
[snip]
> Povray is an autoconf project. I could not possibly be at fault by using 
> "./configure". It isn't possible. This is plain vanilla pentium 3, I 
> didn't write any of the povray code, I'm just an end user. This same 
> code works perfectly fine on compat gcc 3.2, it only fails under gcc 4. 
> I've found other bugs in gcc4 which are verified bugs that did not exist 
> in earlier releases, but those bugs came up with internal compiler error 
> (which is a lot easier to report).
> 
> > Actually, just post what CFLAGS were used to build, what the CPU is, and
> > the disassembly of the instruction where it dies.
> 
> I used ./configure, I didn't adjust anything...but 64 bit systems are 
> not valid for the test, it needs to be 32 bit, preferably P3. An illegal 
> instruction really sounds like either someone hand coded asm and it 
> isn't portable, or else the compiler itself is buggy...since I traced 
> the line down to a simple variable initialization, it almost has to be a 
> gcc 4 bug, initializing a floating point variable to "0.0" is trivial.
[snip]
> Program received signal SIGILL, Illegal instruction.
> 0x0806750f in pov::init_vars ()
> (gdb) disas
> Dump of assembler code for function _ZN3pov9init_varsEv:
[snip]
> 0x0806750f <_ZN3pov9init_varsEv+15>:    movsd  %xmm0,0x817f0e8
[snip]

Okay, that is the problem there.  That is an SSE2 instruction.  I looked
at the autoconf script for povray, and it does some fancy stuff,
grepping /proc/cpuinfo and testing the compiler for options it can use.
I suggest getting a clean povray directory again, run ./configure and
start make, then Control-C or Control-S and look at the GCC commands
that are being run.  Are they defining -march=pentium4 or -msse2?

If it is only defining i686, pentium, pentium3 or the like, and -msse,
-mfpmath=sse and NOT -msse2, then it is a GCC bug.  But if it is
defining -msse2, march or mcpu pentium4, athlon-xp/mp or anything else
like that, it is a bug in povray's autoconf script.
-- 
Zan Lynx <zlynx at acm.org>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 189 bytes
Desc: This is a digitally signed message part
URL: <http://lists.lug.boulder.co.us/pipermail/lug/attachments/20050913/1a2280e3/attachment.pgp>


More information about the LUG mailing list