--- a/main/utils.c
+++ b/main/utils.c
@@ -1666,7 +1666,7 @@ ast_string_field __ast_string_field_allo
 	}
 
 	result = (*pool_head)->base + (*pool_head)->used;
-#ifdef __sparc__
+#if defined(__sparc__) || defined(__arm__)
 	/* SPARC requires that the allocation field be aligned. */
 	if ((long) result % sizeof(ast_string_field_allocation)) {
 		result++;
@@ -1747,7 +1747,7 @@ void __ast_string_field_ptr_build_va(str
 		}
 	} else {
 		target = (*pool_head)->base + (*pool_head)->used + sizeof(ast_string_field_allocation);
-#ifdef __sparc__
+#if defined(__sparc__) || defined(__arm__)
 		if ((long) target % sizeof(ast_string_field_allocation)) {
 			target++;
 			space--;