RTEMS 4.7.99.2 Available -- PowerPC/virtex feedback

Ralf Corsepius ralf.corsepius at rtems.org
Fri Aug 10 15:34:21 UTC 2007


On Fri, 2007-08-10 at 10:04 -0500, Joel Sherrill wrote:
> Keith Robertson wrote:
> > Joel Sherrill wrote:
> >> Robert S. Grimes wrote:
> >>> gregory.menke at gsfc.nasa.gov wrote:
> >>>  
> >>>> You'll have to apply -msoft-float to more than the RTEMS kernel, 
> >>>> newlib
> >>>> (being part of the toolchain) needed to be compiled with it as well.
> >>>>       
> >>> Does this mean rebuilding gcc?  Or can newlib be built separately?
> >>>
> >>> I assume I'll need to reconfigure gcc, right?  What switch to I add 
> >>> to the configure command?
> >>>   
> >> If you are using the RTEMS RPMs or standard configure
> >> command, then you have a lot of multilib variants.
> >>
> >> GCC has some differences for 403, 405, and 405fp.
> >> Is the virtex CPU really a 403 like the CPU_CFLAGS indicates?
> >>
> >> This is the difference from gcc's viewpoint:
> >>
> >>     = {{"401", PROCESSOR_PPC403, POWERPC_BASE_MASK | MASK_SOFT_FLOAT},
> >>          {"403", PROCESSOR_PPC403,
> >>           POWERPC_BASE_MASK | MASK_SOFT_FLOAT | MASK_STRICT_ALIGN},
> >>          {"405", PROCESSOR_PPC405,
> >>           POWERPC_BASE_MASK | MASK_SOFT_FLOAT | MASK_MULHW | 
> >> MASK_DLMZB},
> >>          {"405fp", PROCESSOR_PPC405,
> >>           POWERPC_BASE_MASK | MASK_MULHW | MASK_DLMZB},
> >>          {"440", PROCESSOR_PPC440,
> >>           POWERPC_BASE_MASK | MASK_SOFT_FLOAT | MASK_MULHW | 
> >> MASK_DLMZB},
> >>          {"440fp", PROCESSOR_PPC440,
> >
> > The xilinx virtex 4fx is a ppc405 with no floating point unit.  It is 
> > definitely not a ppc403.
> >
> Then the custom file needs to change to reflect that and Robert needs
> a fresh RTEMS compile with the new CPU flag to try that. :)
> 
> For the libraries, the t-rtems says:
> 
> MULTILIB_MATCHES        += mcpu?403=mcpu?405
> 
> Is this OK?
In my understanding yes.

This lets the mcpu=405 variant use mcpu=403, which should have a
backward compatible ABI.

Problems might arise if compiling rtems with -mcpu=405 and using
-mcpu=403 compiled libs.

So, the solution might be to use -mcpu=403 to compile the BSP.


Ralf






More information about the users mailing list