Project Home
Project Home
Source Code
Source Code
Documents
Documents
Wiki
Wiki
Discussion Forums
Discussions
Project Information
Project Info
Forum Topic - Apparently I'm compiling for the Old McDonald microprocessor: (4 Items)
   
Apparently I'm compiling for the Old McDonald microprocessor  
I just installed QNX on an Intel-based SBC that sits in a PCI Express card cage. I'm using that platform both to build 
and run, no cross-compiling. Everything compiles, but then I get an error from the assembler that says "No such 
instruction: eieio." WTH is that?! I also got a mystery error when I tried to activate my license at install-time. The 
guy who handles our account is hopefully working on it. Are these two events related?
Re: Apparently I'm compiling for the Old McDonald microprocessor  
eieio is a PPC memory/io sync instruction - not sure how you are getting an eieio in your instruction stream?

Jonathan Juniman wrote:
> I just installed QNX on an Intel-based SBC that sits in a PCI Express card cage. I'm using that platform both to build
 and run, no cross-compiling. Everything compiles, but then I get an error from the assembler that says "No such 
instruction: eieio." WTH is that?! I also got a mystery error when I tried to activate my license at install-time. The 
guy who handles our account is hopefully working on it. Are these two events related?
> 
> _______________________________________________
> General
> http://community.qnx.com/sf/go/post15258
> 

-- 
cburgess@qnx.com
Re: Apparently I'm compiling for the Old McDonald microprocessor  
I have no idea. Ive selected x86. I was previously cross-compiling this project on a Linux host for a PPC target, but I 
imported it by (1) creating a new project on the x86 SBC, (2) copying the source files to a temp directory, (3) 
importing the source files into my new project. I can't imagine how it would know that I was previously building for the
 PPC.
Re: Apparently I'm compiling for the Old McDonald microprocessor  
Well, it seems like you might have a bit of inline assembly somewhere, or a macro which expands to that.

 From $QNX_TARGET/usr/include/ppc/inout.h

#define eieio() __asm__ __volatile__( "eieio" )

Jonathan Juniman wrote:
> I have no idea. Ive selected x86. I was previously cross-compiling this project on a Linux host for a PPC target, but 
I imported it by (1) creating a new project on the x86 SBC, (2) copying the source files to a temp directory, (3) 
importing the source files into my new project. I can't imagine how it would know that I was previously building for the
 PPC.
> 
> _______________________________________________
> General
> http://community.qnx.com/sf/go/post15266
> 

-- 
cburgess@qnx.com