diff --git a/contrib/loaders/erase_check/armv7m_erase_check.inc b/contrib/loaders/erase_check/armv7m_erase_check.inc
new file mode 100644
index 0000000000000000000000000000000000000000..1fe25cd5193f13c2538955e1b53dcacf4f15cf6d
--- /dev/null
+++ b/contrib/loaders/erase_check/armv7m_erase_check.inc
@@ -0,0 +1,2 @@
+/* Autogenerated with ../../../src/helper/bin2char.sh */
+0x03,0x78,0x01,0x30,0x1a,0x40,0x01,0x39,0xfa,0xd1,0x00,0xbe,
diff --git a/src/target/armv7m.c b/src/target/armv7m.c
index 15de8cd9c71e3b7d2aff2d8d1496c2fe4cf5cc37..52b394cf96ca61298dec58287433af5998101533 100644
--- a/src/target/armv7m.c
+++ b/src/target/armv7m.c
@@ -769,16 +769,8 @@ int armv7m_blank_check_memory(struct target *target,
 	struct armv7m_algorithm armv7m_info;
 	int retval;
 
-	/* see contrib/loaders/erase_check/armv7m_erase_check.s for src */
-
 	static const uint8_t erase_check_code[] = {
-		/* loop: */
-		0x03, 0x78,		/* ldrb	r3, [r0] */
-		0x01, 0x30,		/* adds	r0, #1 */
-		0x1A, 0x40,		/* ands	r2, r2, r3 */
-		0x01, 0x39,		/* subs	r1, r1, #1 */
-		0xFA, 0xD1,		/* bne	loop */
-		0x00, 0xBE		/* bkpt	#0 */
+#include "../../contrib/loaders/erase_check/armv7m_erase_check.inc"
 	};
 
 	/* make sure we have a working area */