On Monday 15 March 2010 19:33:41, Danny Backx wrote:
> > 3) with -mcpu=cortex-a8 (Assembler messages: Error: cannot represent 
> > BFD_RELOC_ARM_MOVW relocation in this object file format)
> > 
> > Does it mean that there is no proper support for newer cpu's in the version 
> > of binutils that come with cegcc? Is it easier for me to upgrade?
> > 
> > PS: Cmd line used: arm-mingw32ce-gcc -c /tmp/test.c   -mcpu=cortex-a8
> 

This device is a thumb-2 device.  Those are new relocations for forming
constants from immediates (usually using the movw/movt instruction
pair), rather than loading the data from the constant pool.  Although
these are static relocations, PE/COFF doesn't support
representing them in the .o files.  The easiest way around this is
disabling these instructions in gcc.  A better solution would be
to extend bfd and to have a way to represent these relocations,
as a GNU extension.  Perhaps a new section, or perhaps extend
the pseudo-relocs concept to static relocations (if we
need extra relocations in final images, new pseudo-reloc
kinds are the obvious choice).  An even better solution
would be for Microsoft to define and officialize new
relocations for Thumb2, but, probably not going to happen.

There are simple hooks for disabling those instructions under
gcc/config/arm.  That said, which that issue out of the way,
MSFT's compilers doesn't support thumb2 AFAIK.  So, even if the
code compiles, you're probably going to run into kernel
issues running it.

-- 
Pedro Alves

------------------------------------------------------------------------------
Download Intel® Parallel Studio Eval
Try the new software tools for yourself. Speed compiling, find bugs
proactively, and fine-tune applications for parallel performance.
See why Intel Parallel Studio got high marks during beta.
http://p.sf.net/sfu/intel-sw-dev
_______________________________________________
Cegcc-devel mailing list
Cegcc-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cegcc-devel

Reply via email to