9 FILE_LICENCE ( GPL2_OR_LATER );
13 static inline __attribute__ (( always_inline )) uint32_t
14 rol32 ( uint32_t data, unsigned int rotation ) {
15 return ( ( data << rotation ) | ( data >> ( 32 - rotation ) ) );
18 static inline __attribute__ (( always_inline )) uint32_t
19 ror32 ( uint32_t data, unsigned int rotation ) {
20 return ( ( data >> rotation ) | ( data << ( 32 - rotation ) ) );
23 static inline __attribute__ (( always_inline )) uint64_t
24 rol64 ( uint64_t data, unsigned int rotation ) {
25 return ( ( data << rotation ) | ( data >> ( 64 - rotation ) ) );
28 static inline __attribute__ (( always_inline )) uint64_t
29 ror64 ( uint64_t data, unsigned int rotation ) {
30 return ( ( data >> rotation ) | ( data << ( 64 - rotation ) ) );
33 #endif /* _IPXE_ROTATE_H */