diff --git a/libavcodec/common.h b/libavcodec/common.h
index 203579ac5ed14622e3b012dec075513f82ad00ca..b0a3db526dd05527997a01cdaf755238e9d75191 100644
--- a/libavcodec/common.h
+++ b/libavcodec/common.h
@@ -76,17 +76,21 @@ extern const struct AVOption avoptions_workaround_bug[11];
 #    define restrict
 #endif
 
+#ifndef always_inline
 #if defined(__GNUC__) && (__GNUC__ > 3 || __GNUC__ == 3 && __GNUC_MINOR__ > 0)
 #    define always_inline __attribute__((always_inline)) inline
 #else
 #    define always_inline inline
 #endif
+#endif
 
+#ifndef attribute_used
 #if defined(__GNUC__) && (__GNUC__ > 3 || __GNUC__ == 3 && __GNUC_MINOR__ > 0)
 #    define attribute_used __attribute__((used))
 #else
 #    define attribute_used
 #endif
+#endif
 
 #ifndef EMULATE_INTTYPES
 #   include <inttypes.h>