Manta Interactive Ray Tracer Development Mailing List

Text archives Help


Re: [MANTA] asm in trunk.


Chronological Thread 
  • From: Solomon Boulos <boulos@cs.utah.edu>
  • To: Abe Stephens <abe@sci.utah.edu>
  • Cc: "'manta@sci.utah.edu'" <manta@sci.utah.edu>
  • Subject: Re: [MANTA] asm in trunk.
  • Date: Fri, 5 Aug 2005 17:33:45 -0600

I noticed there is a good faith effort in evil.h to set the EVIL_LEVEL variable to avoid the ASM if __sgi is defined. These checks should probably just be modified to be more robust towards ensuring that it's a gnu compiler on IA32.

On Aug 5, 2005, at 5:21 PM, Abe Stephens wrote:

Hey,

I've noticed that there is some gnu style IA32 assembly in the trunk.

/store/abe/Manta-trunk/Engine/ImageTraversers/AFR/evil.h(248): error: asm statements not supported in this environment
     asm("bsr %1,%0;" : "=a" (eax) : "m" (n));
     ^

/store/abe/Manta-trunk/Engine/ImageTraversers/AFR/evil.h(248): error: expected a ")"
     asm("bsr %1,%0;" : "=a" (eax) : "m" (n));
                      ^

/store/abe/Manta-trunk/Engine/ImageTraversers/AFR/evil.h(303): error: asm statements not supported in this environment
     asm ("movl %1,%0;"            /* copy f into i */
     ^

/store/abe/Manta-trunk/Engine/ImageTraversers/AFR/evil.h(306): error: expected a ")"
: "=a" (i) /* output: register int i is in % eax *


This is a problem for two reasons, first we don't have an IA-32 processor and second, Intel doesn't support gnu syntax for assembly instructions.

How necessary is this assembly? I am guessing it doesn't work well on PowerPC either. I suspect we can handle this in a similar way to the SCIRun/Threads code via cmake. Any concerns?

Abe









Archive powered by MHonArc 2.6.16.

Top of page