diff options
author | Eric Biggers <ebiggers@google.com> | 2023-01-21 12:31:59 -0800 |
---|---|---|
committer | Theodore Ts'o <tytso@mit.edu> | 2023-01-27 12:33:59 -0500 |
commit | c49ed1fe5fae98fa6272fdb205f34cef4c63aeb3 (patch) | |
tree | 7fa1686dd605a1607af6f95e551777ee9d5bf58d | |
parent | 11f1e85ee3b96bdd08c69d8617cd82f5462e7f0b (diff) | |
download | e2fsprogs-c49ed1fe5fae98fa6272fdb205f34cef4c63aeb3.tar.gz |
lib/blkid: remove 32-bit x86 byteswap assembly
libblkid contains 32-bit x86 assembly language implementations of 16-bit
and 32-bit byteswaps. However, modern compilers can easily generate the
bswap instruction automatically from the corresponding C expression.
And no one ever bothered to add assembly for x86_64 or other
architectures, anyway. So let's just remove this outdated code, which
was maybe useful in the 90s, but is no longer useful.
Signed-off-by: Eric Biggers <ebiggers@google.com>
Reviewed-by: Andreas Dilger <adilger@dilger.ca>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
-rw-r--r-- | lib/blkid/probe.h | 43 |
1 files changed, 0 insertions, 43 deletions
diff --git a/lib/blkid/probe.h b/lib/blkid/probe.h index dea4081d0..063a5b5c0 100644 --- a/lib/blkid/probe.h +++ b/lib/blkid/probe.h @@ -814,46 +814,6 @@ struct exfat_entry_label { #define _INLINE_ static inline #endif -static __u16 blkid_swab16(__u16 val); -static __u32 blkid_swab32(__u32 val); -static __u64 blkid_swab64(__u64 val); - -#if ((defined __GNUC__) && \ - (defined(__i386__) || defined(__i486__) || defined(__i586__))) - -#define _BLKID_HAVE_ASM_BITOPS_ - -_INLINE_ __u32 blkid_swab32(__u32 val) -{ -#ifdef EXT2FS_REQUIRE_486 - __asm__("bswap %0" : "=r" (val) : "0" (val)); -#else - __asm__("xchgb %b0,%h0\n\t" /* swap lower bytes */ - "rorl $16,%0\n\t" /* swap words */ - "xchgb %b0,%h0" /* swap higher bytes */ - :"=q" (val) - : "0" (val)); -#endif - return val; -} - -_INLINE_ __u16 blkid_swab16(__u16 val) -{ - __asm__("xchgb %b0,%h0" /* swap bytes */ \ - : "=q" (val) \ - : "0" (val)); \ - return val; -} - -_INLINE_ __u64 blkid_swab64(__u64 val) -{ - return (blkid_swab32(val >> 32) | - (((__u64) blkid_swab32(val & 0xFFFFFFFFUL)) << 32)); -} -#endif - -#if !defined(_BLKID_HAVE_ASM_BITOPS_) - _INLINE_ __u16 blkid_swab16(__u16 val) { return (val >> 8) | (val << 8); @@ -870,9 +830,6 @@ _INLINE_ __u64 blkid_swab64(__u64 val) return (blkid_swab32(val >> 32) | (((__u64) blkid_swab32(val & 0xFFFFFFFFUL)) << 32)); } -#endif - - #ifdef WORDS_BIGENDIAN #define blkid_le16(x) blkid_swab16(x) |