Add shortcuts to SwapEndian_16() and SwapEndian_32() internal functions to improve...
[pub/lufa.git] / LUFA / Common / Endianness.h
index 123ad42..e263149 100644 (file)
                        static inline uint16_t SwapEndian_16(const uint16_t Word) ATTR_WARN_UNUSED_RESULT ATTR_CONST;
                        static inline uint16_t SwapEndian_16(const uint16_t Word)
                        {
+                               if (GCC_IS_COMPILE_CONST(Word))
+                                 return SWAPENDIAN_16(Word);
+                       
                                uint8_t Temp;
 
                                union
                        static inline uint32_t SwapEndian_32(const uint32_t DWord) ATTR_WARN_UNUSED_RESULT ATTR_CONST;
                        static inline uint32_t SwapEndian_32(const uint32_t DWord)
                        {
+                               if (GCC_IS_COMPILE_CONST(DWord))
+                                 return SWAPENDIAN_32(DWord);
+
                                uint8_t Temp;
 
                                union