[uClibc]byteswap

Ilguiz Latypov ilatypov at superbt.com
Tue May 14 21:43:37 UTC 2002


The libs/sysdeps/linux/m68k/bits/byteswap.h has a code block with the 
assembler instructions not available to MCF 5307 processor.  The compiler 
gives this error:

  main.s: Assembler messages:
  main.s:1093: Error: invalid instruction for this architecture; needs 68000 
  or higher -- statement `ror.w #8,%d0' ignored
  main.s:1093: Error: invalid instruction for this architecture; needs 68000 
  or higher -- statement `ror.w #8,%d0' ignored

Does it make sense to kill the conditional use of assembler instructions?
I couldn't find the code of the __builtin_constant_p(x) function which
comes into play besides the tests of the __GNUC__ symbol.

The only relevant bit shifting instruction I was able to find in the
Coldfire Programming Manual was "asr.l" with a long operand only. Is there
any bit rotating instruction in Coldfire processors?

Ilguiz




More information about the uClibc mailing list