+#
+# U-Boot style memory compare functions
+#
+
+define _cmp
+ set $$base = (unsigned long)$arg0
+ set $$addr1 = $arg0
+ set $$addr2 = $arg1
+ set $$count = $arg2
+ while $$count-- > 0
+ if (*$$addr1 != *$$addr2)
+ printf "Data mismatch at %#x units (@%#x != @%#x)\n", $arg2, $$addr1, $$addr2
+ set $$count = -100
+ end
+ set $$addr1 += 1
+ set $$addr2 += 1
+ end
+ if $$count == -1
+ printf "Data matches for %#x units\n", $arg2
+ end
+ dont-repeat
+end
+document _cmp
+Usage: cmp[bwl] <address> <address> <count>
+Compare <count> <bytes|words|longs> between <address> and <address>.