diff options
author | Linus Nielsen Feltzing <linus@haxx.se> | 2002-05-09 23:00:14 +0000 |
---|---|---|
committer | Linus Nielsen Feltzing <linus@haxx.se> | 2002-05-09 23:00:14 +0000 |
commit | 18826d2c8364d4422ab1dbf07c842f98a688d99b (patch) | |
tree | 5eb85d7b9b4cec93ff40e12c9b049b3aa9e00c9c | |
parent | 01ede91cbec4befeee1b7ea936e14576e75e3a69 (diff) | |
download | rockbox-18826d2c8364d4422ab1dbf07c842f98a688d99b.tar.gz rockbox-18826d2c8364d4422ab1dbf07c842f98a688d99b.zip |
SWAB32 is finally working
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@529 a1c6a512-1295-4272-9138-f99709370657
-rw-r--r-- | firmware/system.h | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/firmware/system.h b/firmware/system.h index 1191e59843..9b1df03217 100644 --- a/firmware/system.h +++ b/firmware/system.h @@ -194,7 +194,10 @@ static inline long SWAB32(long value) result[ 7.. 0] = value[31..24]; */ { - return SWAB16(SWAW32(SWAB16(value))); + asm volatile ("swap.b\t%0,%0\n" + "swap.w\t%0,%0\n" + "swap.b\t%0,%0\n" : "+r"(value)); + return value; } /* Test And Set - UNTESTED */ |