summaryrefslogtreecommitdiff
path: root/include/test_util.h
diff options
context:
space:
mode:
authorDaisuke Nojiri <dnojiri@chromium.org>2014-02-28 16:03:04 -0800
committerchrome-internal-fetch <chrome-internal-fetch@google.com>2014-03-01 20:15:59 +0000
commite381585619778c4952ada5f3118ec4fcf304eb66 (patch)
tree412fadab6f9d52a25fe328bc5f6e34cddbf88d04 /include/test_util.h
parenta35bfd69e9a749fbaa152937dd91a6ed407a9005 (diff)
downloadchrome-ec-e381585619778c4952ada5f3118ec4fcf304eb66.tar.gz
Optimize memset
This speeds up memset by copying a word at a time. Ran the unit test on Peppy: > runtest ... Running test_memset... (speed gain: 141532 -> 32136 us) OK ... Ran make buildall: ... Running test_memset... (speed gain: 1338 -> 280 us) OK ... TEST=Described above. BUG=chrome-os-partner:23720 BRANCH=none Signed-off-by: Daisuke Nojiri <dnojiri@chromium.org> Change-Id: If34b06ad70f448d950535a4bea4f6556627a9b6f Tested-by: Daisuke Nojiri <dnojiri@google.com> Reviewed-on: https://chromium-review.googlesource.com/185936 Reviewed-by: Randall Spangler <rspangler@chromium.org> Commit-Queue: Daisuke Nojiri <dnojiri@google.com>
Diffstat (limited to 'include/test_util.h')
-rw-r--r--include/test_util.h13
1 files changed, 13 insertions, 0 deletions
diff --git a/include/test_util.h b/include/test_util.h
index 4f76a200c4..f8f50fcc76 100644
--- a/include/test_util.h
+++ b/include/test_util.h
@@ -58,6 +58,19 @@
} \
} while (0)
+#define TEST_ASSERT_MEMSET(d, c, n) \
+ do { \
+ int __i; \
+ for (__i = 0; __i < n; ++__i) \
+ if ((d)[__i] != (c)) { \
+ ccprintf("%d: ASSERT_MEMSET failed at " \
+ "index=%d: %d != %d\n", __LINE__, \
+ __i, (int)(d)[__i], (c)); \
+ task_dump_trace(); \
+ return EC_ERROR_UNKNOWN; \
+ } \
+ } while (0)
+
#define TEST_CHECK(n) \
do { \
if (n) \