diff --git a/libavcodec/alpha/asm.h b/libavcodec/alpha/asm.h
index 4df9a2af3e2cc90a80c9be323a2c32e79627a8ce..827721e777fc161f18d5d249290c9838065334da 100644
--- a/libavcodec/alpha/asm.h
+++ b/libavcodec/alpha/asm.h
@@ -24,14 +24,9 @@
 
 #include <inttypes.h>
 
-#if defined __GNUC__
-# define GNUC_PREREQ(maj, min) \
-        ((__GNUC__ << 16) + __GNUC_MINOR__ >= ((maj) << 16) + (min))
-#else
-# define GNUC_PREREQ(maj, min) 0
-#endif
+#include "libavutil/common.h"
 
-#if GNUC_PREREQ(2,96)
+#if AV_GCC_VERSION_AT_LEAST(2,96)
 # define likely(x)      __builtin_expect((x) != 0, 1)
 # define unlikely(x)    __builtin_expect((x) != 0, 0)
 #else
@@ -89,7 +84,7 @@ struct unaligned_long { uint64_t l; } __attribute__((packed));
 #define ldq_u(p)        (*(const uint64_t *) (((uint64_t) (p)) & ~7ul))
 #define uldq(a)         (((const struct unaligned_long *) (a))->l)
 
-#if GNUC_PREREQ(3,3)
+#if AV_GCC_VERSION_AT_LEAST(3,3)
 #define prefetch(p)     __builtin_prefetch((p), 0, 1)
 #define prefetch_en(p)  __builtin_prefetch((p), 0, 0)
 #define prefetch_m(p)   __builtin_prefetch((p), 1, 1)
@@ -121,7 +116,7 @@ struct unaligned_long { uint64_t l; } __attribute__((packed));
 #endif
 #define wh64(p) __asm__ volatile("wh64 (%0)" : : "r"(p) : "memory")
 
-#if GNUC_PREREQ(3,3) && defined(__alpha_max__)
+#if AV_GCC_VERSION_AT_LEAST(3,3) && defined(__alpha_max__)
 #define minub8  __builtin_alpha_minub8
 #define minsb8  __builtin_alpha_minsb8
 #define minuw4  __builtin_alpha_minuw4