diff options
author | Ralf Corsepius <ralf.corsepius@rtems.org> | 2005-02-15 14:09:27 +0000 |
---|---|---|
committer | Ralf Corsepius <ralf.corsepius@rtems.org> | 2005-02-15 14:09:27 +0000 |
commit | 1b6e9b7eab3d27fcd4edd927eef63b080863b039 (patch) | |
tree | f6ba79afe06c68eb03288f9460a0532c2f28394e /cpukit/score/cpu/powerpc/rtems/old-exceptions/cpu.h | |
parent | 2005-02-15 Ralf Corsepius <ralf.corsepius@rtems.org> (diff) | |
download | rtems-1b6e9b7eab3d27fcd4edd927eef63b080863b039.tar.bz2 |
(CPU_swap_u32, CPU_swap_u16): Remove.
Diffstat (limited to 'cpukit/score/cpu/powerpc/rtems/old-exceptions/cpu.h')
-rw-r--r-- | cpukit/score/cpu/powerpc/rtems/old-exceptions/cpu.h | 38 |
1 files changed, 0 insertions, 38 deletions
diff --git a/cpukit/score/cpu/powerpc/rtems/old-exceptions/cpu.h b/cpukit/score/cpu/powerpc/rtems/old-exceptions/cpu.h index 3657f3e4f7..557d3578b2 100644 --- a/cpukit/score/cpu/powerpc/rtems/old-exceptions/cpu.h +++ b/cpukit/score/cpu/powerpc/rtems/old-exceptions/cpu.h @@ -1104,44 +1104,6 @@ void _CPU_Fatal_error( uint32_t _error ); -/* The following routine swaps the endian format of an unsigned int. - * It must be static because it is referenced indirectly. - * - * This version will work on any processor, but if there is a better - * way for your CPU PLEASE use it. The most common way to do this is to: - * - * swap least significant two bytes with 16-bit rotate - * swap upper and lower 16-bits - * swap most significant two bytes with 16-bit rotate - * - * Some CPUs have special instructions which swap a 32-bit quantity in - * a single instruction (e.g. i486). It is probably best to avoid - * an "endian swapping control bit" in the CPU. One good reason is - * that interrupts would probably have to be disabled to insure that - * an interrupt does not try to access the same "chunk" with the wrong - * endian. Another good reason is that on some CPUs, the endian bit - * endianness for ALL fetches -- both code and data -- so the code - * will be fetched incorrectly. - */ - -static inline uint32_t CPU_swap_u32( - uint32_t value -) -{ - uint32_t swapped; - - asm volatile("rlwimi %0,%1,8,24,31;" - "rlwimi %0,%1,24,16,23;" - "rlwimi %0,%1,8,8,15;" - "rlwimi %0,%1,24,0,7;" : - "=&r" ((swapped)) : "r" ((value))); - - return( swapped ); -} - -#define CPU_swap_u16( value ) \ - (((value&0xff) << 8) | ((value >> 8)&0xff)) - /* * Routines to access the decrementer register */ |