Cross gcc Mailing List Archive

[Prev][Next][Index][Thread]

Re: 68040 inline asm code problems




On Thu, 16 Jan 1997 dean@abraham.nellis.af.mil wrote:

> I'm having a problem either in compiling or undestanding the 
> gcc compiler. I'm running a 68k-rtems cross for my RTEMS project
> which works well. However, in adding some bus error handlers that
> I got from the HIDEOS MVME162 project, I ran into problems getting 
> them to compile. Here is an example:

What object format was the HIDEOS project using?  coff and a.out have 
different rules for leading underscrores on C symbols and using a % 
before register names.

>    asm  volatile ("movec vbr,%0" : "=g" (x)  );  

Here is the get_vbr macro from RTEMS, notice how it is careful to use % 
before register names (actually it uses two because of gcc inline 
assembler rules :) :

#define m68k_get_vbr( vbr ) \
  asm volatile ( "movec   %%vbr,%0 " : "=r" (vbr))
                          ^^

I am rustly on this but what does the "=g" mean?  I thought movec had to 
go into a register?

--joel
Joel Sherrill                    Sr. Computer Scientist
joel@OARcorp.com                 On-Line Applications Research
Ask me about RTEMS: a free RTOS  Huntsville AL 35805
   Support Available             (205) 722-9985


                          

References:

Home | Subject Index | Thread Index