Skip to content

Commit

Permalink
byteorder: use generic C version for value byteswapping
Browse files Browse the repository at this point in the history
This makes the new implementation of the byteorder helpers match the old
in how it degraded when an arch-defined version was not available:

1) swab()
	- look for arch defined
	- if not, use generic c version

2) swabp()
	- look for arch-defined
	- if not, deref pointer and use swab()

3) swabs()
	- look for arch defined
	- if not, use swabp

Signed-off-by: Harvey Harrison <[email protected]>
Cc: "David S. Miller" <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
  • Loading branch information
hharrison authored and torvalds committed Oct 20, 2008
1 parent b8e465f commit acf0108
Showing 1 changed file with 0 additions and 10 deletions.
10 changes: 0 additions & 10 deletions include/linux/swab.h
Original file line number Diff line number Diff line change
Expand Up @@ -47,8 +47,6 @@ static inline __attribute_const__ __u16 ___swab16(__u16 val)
{
#ifdef __arch_swab16
return __arch_swab16(val);
#elif defined(__arch_swab16p)
return __arch_swab16p(&val);
#else
return __const_swab16(val);
#endif
Expand All @@ -58,8 +56,6 @@ static inline __attribute_const__ __u32 ___swab32(__u32 val)
{
#ifdef __arch_swab32
return __arch_swab32(val);
#elif defined(__arch_swab32p)
return __arch_swab32p(&val);
#else
return __const_swab32(val);
#endif
Expand All @@ -69,8 +65,6 @@ static inline __attribute_const__ __u64 ___swab64(__u64 val)
{
#ifdef __arch_swab64
return __arch_swab64(val);
#elif defined(__arch_swab64p)
return __arch_swab64p(&val);
#elif defined(__SWAB_64_THRU_32__)
__u32 h = val >> 32;
__u32 l = val & ((1ULL << 32) - 1);
Expand All @@ -84,8 +78,6 @@ static inline __attribute_const__ __u32 ___swahw32(__u32 val)
{
#ifdef __arch_swahw32
return __arch_swahw32(val);
#elif defined(__arch_swahw32p)
return __arch_swahw32p(&val);
#else
return __const_swahw32(val);
#endif
Expand All @@ -95,8 +87,6 @@ static inline __attribute_const__ __u32 ___swahb32(__u32 val)
{
#ifdef __arch_swahb32
return __arch_swahb32(val);
#elif defined(__arch_swahb32p)
return __arch_swahb32p(&val);
#else
return __const_swahb32(val);
#endif
Expand Down

0 comments on commit acf0108

Please sign in to comment.