diff --git a/crypto/cipher_extra/e_aesgcmsiv.c b/crypto/cipher_extra/e_aesgcmsiv.c
index fe43633..bf6c530 100644
--- a/crypto/cipher_extra/e_aesgcmsiv.c
+++ b/crypto/cipher_extra/e_aesgcmsiv.c
@@ -40,10 +40,10 @@
 // aligns to 16 bytes itself.
 OPENSSL_COMPILE_ASSERT(sizeof(((EVP_AEAD_CTX *)NULL)->state) + 8 >=
                            sizeof(struct aead_aes_gcm_siv_asm_ctx),
-                       AEAD_state_too_small);
+                       AEAD_state_too_small_opt);
 #if defined(__GNUC__) || defined(__clang__)
 OPENSSL_COMPILE_ASSERT(alignof(union evp_aead_ctx_st_state) >= 8,
-                       AEAD_state_insufficient_alignment);
+                       AEAD_state_insufficient_alignment_opt);
 #endif
 
 // asm_ctx_from_ctx returns a 16-byte aligned context pointer from |ctx|.
diff --git a/crypto/fipsmodule/cipher/e_aes.c b/crypto/fipsmodule/cipher/e_aes.c
index 32b51a1..a24515a 100644
--- a/crypto/fipsmodule/cipher/e_aes.c
+++ b/crypto/fipsmodule/cipher/e_aes.c
@@ -1081,11 +1081,11 @@
 
 OPENSSL_COMPILE_ASSERT(sizeof(((EVP_AEAD_CTX *)NULL)->state) >=
                            sizeof(struct aead_aes_gcm_tls12_ctx),
-                       AEAD_state_too_small);
+                       AEAD_state_too_small_tls12);
 #if defined(__GNUC__) || defined(__clang__)
 OPENSSL_COMPILE_ASSERT(alignof(union evp_aead_ctx_st_state) >=
                            alignof(struct aead_aes_gcm_tls12_ctx),
-                       AEAD_state_insufficient_alignment);
+                       AEAD_state_insufficient_alignment_tls12);
 #endif
 
 static int aead_aes_gcm_tls12_init(EVP_AEAD_CTX *ctx, const uint8_t *key,
@@ -1175,11 +1175,11 @@
 
 OPENSSL_COMPILE_ASSERT(sizeof(((EVP_AEAD_CTX *)NULL)->state) >=
                            sizeof(struct aead_aes_gcm_tls13_ctx),
-                       AEAD_state_too_small);
+                       AEAD_state_too_small_tls13);
 #if defined(__GNUC__) || defined(__clang__)
 OPENSSL_COMPILE_ASSERT(alignof(union evp_aead_ctx_st_state) >=
                            alignof(struct aead_aes_gcm_tls13_ctx),
-                       AEAD_state_insufficient_alignment);
+                       AEAD_state_insufficient_alignment_tls13);
 #endif
 
 static int aead_aes_gcm_tls13_init(EVP_AEAD_CTX *ctx, const uint8_t *key,
