aboutsummaryrefslogtreecommitdiffstats
path: root/LUFA/Common/Endianness.h
diff options
context:
space:
mode:
Diffstat (limited to 'LUFA/Common/Endianness.h')
-rw-r--r--LUFA/Common/Endianness.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/LUFA/Common/Endianness.h b/LUFA/Common/Endianness.h
index 123ad425f..e26314975 100644
--- a/LUFA/Common/Endianness.h
+++ b/LUFA/Common/Endianness.h
@@ -394,6 +394,9 @@
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
@@ -420,6 +423,9 @@
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