diff options
author | Joel Sherrill <joel.sherrill@OARcorp.com> | 1998-04-27 16:10:16 +0000 |
---|---|---|
committer | Joel Sherrill <joel.sherrill@OARcorp.com> | 1998-04-27 16:10:16 +0000 |
commit | b0aba4c46b14204f7de6471512136de7003877c4 (patch) | |
tree | c3128754275e49fb155f41a327d5938385395cb8 /c/src/exec/score/cpu/m68k | |
parent | Fixed spelling errors. (diff) | |
download | rtems-b0aba4c46b14204f7de6471512136de7003877c4.tar.bz2 |
Added swap of unsigned16
Diffstat (limited to 'c/src/exec/score/cpu/m68k')
-rw-r--r-- | c/src/exec/score/cpu/m68k/m68k.h | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/c/src/exec/score/cpu/m68k/m68k.h b/c/src/exec/score/cpu/m68k/m68k.h index 1336b581d1..a6d24562d2 100644 --- a/c/src/exec/score/cpu/m68k/m68k.h +++ b/c/src/exec/score/cpu/m68k/m68k.h @@ -243,6 +243,17 @@ static inline unsigned int m68k_swap_u32( return( swapped ); } +static inline unsigned int m68k_swap_u16( + unsigned int value +) +{ + unsigned short swapped = value; + + asm volatile( "rorw #8,%0" : "=d" (swapped) : "0" (swapped) ); + + return( swapped ); +} + /* XXX this is only valid for some m68k family members and should be fixed */ #define m68k_enable_caching() \ @@ -252,6 +263,7 @@ static inline unsigned int m68k_swap_u32( } #define CPU_swap_u32( value ) m68k_swap_u32( value ) +#define CPU_swap_u16( value ) m68k_swap_u16( value ) #endif /* !ASM */ |