ColdFire CVS Build Error with 4.0.0

Joel Sherrill <joel@OARcorp.com> joel.sherrill at OARcorp.com
Wed Jun 1 21:36:02 UTC 2005


Ralf Corsepius wrote:
> On Wed, 2005-06-01 at 13:42 -0600, Brett Swimley wrote:
> 
>>Hi All -
>>
>>I'm working on moving to RTEMS 4.7.x and have the current CVS sources.  
>>I'm building the csb360 BSP to test the tool chain prior to moving my 
>>BSP over to 4.7.  I've just built gcc-4.0.0 but had the same problems 
>>with gcc-3.4.2.
>>
>>When compiling, the macro:
>>
>>m68k_set_vbr
>>
>>fails with a gcc error:
>>
>>'_VBR' has an incomplete type'
>>
>>The pertinent code from /cpukit/score/cpu/m68k/rtems/score/m68k.h is 
>>shown below.  The asterisked line appears to be where the problem occurs.
>>
>>#elif ( M68K_COLDFIRE_ARCH == 1 )
>>extern uint32_t                     _VBR[];
>>#define m68k_get_vbr( _vbr ) _vbr = _VBR
>>
>>#define m68k_set_vbr( vbr ) \
>>  do { \
>>    asm volatile ( "movec   %0,%%vbr " : : "r" (vbr)); \
>>***    _VBR = (void *)vbr; \
>>  } while(0)
>>
>>CVS indicates that _VBR was changed fairly recently from
>>void* _VBR;
>>to
>>uint32_t   _VBR[];
>>
>>I'm guessing that a typecast is required, but I'm not sure what the cast 
>>should be.
>>
>>Any suggestions?
> 
> Known bug, Joel had promised to fix.

I've been trying to resolve this but can't seem to find the magic 
combination which works.  The uC5282 does compile.

I would like a hint if some ColdFire person could help.

--joel



More information about the users mailing list