diff options
author | Tom Hughes <tomhughes@chromium.org> | 2020-05-14 10:16:37 -0700 |
---|---|---|
committer | Commit Bot <commit-bot@chromium.org> | 2020-05-15 03:03:15 +0000 |
commit | f21e39083c70a3a04aed865cef65ce4ef95d78b8 (patch) | |
tree | 88488d70442770d1db63805532902eefaf5f4e99 /test/utils.c | |
parent | bca6d843094cbc8bc49aea01c87b8338b529fd7b (diff) | |
download | chrome-ec-f21e39083c70a3a04aed865cef65ce4ef95d78b8.tar.gz |
common/util: Add is_aligned
Helper function to check power-of-two alignment.
BRANCH=none
BUG=b:155229277, b:156501835
TEST=make buildall -j
TEST=make run-utils
Signed-off-by: Tom Hughes <tomhughes@chromium.org>
Change-Id: Iadcdaeb59e496f10035bd6c7f9660a3cc33a4898
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2202849
Commit-Queue: Ting Shen <phoenixshen@chromium.org>
Reviewed-by: Ting Shen <phoenixshen@chromium.org>
Diffstat (limited to 'test/utils.c')
-rw-r--r-- | test/utils.c | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/test/utils.c b/test/utils.c index 201f607f0c..292b2c84c7 100644 --- a/test/utils.c +++ b/test/utils.c @@ -424,6 +424,23 @@ static int test_bytes_are_trivial(void) return EC_SUCCESS; } +test_static int test_is_aligned(void) +{ + TEST_EQ(is_aligned(2, 0), false, "%d"); + TEST_EQ(is_aligned(2, 1), true, "%d"); + TEST_EQ(is_aligned(2, 2), true, "%d"); + TEST_EQ(is_aligned(2, 3), false, "%d"); + TEST_EQ(is_aligned(2, 4), false, "%d"); + + TEST_EQ(is_aligned(3, 0), false, "%d"); + TEST_EQ(is_aligned(3, 1), true, "%d"); + TEST_EQ(is_aligned(3, 2), false, "%d"); + TEST_EQ(is_aligned(3, 3), false, "%d"); + TEST_EQ(is_aligned(3, 4), false, "%d"); + + return EC_SUCCESS; +} + void run_test(void) { test_reset(); @@ -442,6 +459,7 @@ void run_test(void) RUN_TEST(test_mula32); RUN_TEST(test_swap); RUN_TEST(test_bytes_are_trivial); + RUN_TEST(test_is_aligned); test_print_result(); } |