diff --git a/library/aes.c b/library/aes.c
index 968cd31..7a6f2d9 100644
--- a/library/aes.c
+++ b/library/aes.c
@@ -656,13 +656,6 @@
     }
 #endif
 
-/* When runtime detection enabled and plain C is disabled, compiler
-   reports `-Werror=return-type`. */
-#if defined(MBEDTLS_HAVE_X86) && defined(MBEDTLS_AES_USE_HARDWARE_ONLY) && \
-    defined(MBEDTLS_PADLOCK_C) && defined(MBEDTLS_AESNI_HAVE_CODE)
-    return MBEDTLS_ERR_PLATFORM_FEATURE_UNSUPPORTED;
-#endif
-
 #if !defined(MBEDTLS_AES_USE_HARDWARE_ONLY)
     for (i = 0; i < (keybits >> 5); i++) {
         RK[i] = MBEDTLS_GET_UINT32_LE(key, i << 2);
@@ -1109,13 +1102,6 @@
     }
 #endif
 
-/* When runtime detection enabled and plain C is disabled, compiler
-   reports `-Werror=return-type`. */
-#if defined(MBEDTLS_AES_USE_HARDWARE_ONLY) && \
-    defined(MBEDTLS_VIA_PADLOCK_HAVE_CODE) && defined(MBEDTLS_AESNI_HAVE_CODE)
-    return MBEDTLS_ERR_PLATFORM_FEATURE_UNSUPPORTED;
-#endif
-
 #if !defined(MBEDTLS_AES_USE_HARDWARE_ONLY)
     if (mode == MBEDTLS_AES_ENCRYPT) {
         return mbedtls_internal_aes_encrypt(ctx, input, output);
