From 7afc6da566a8f3a65562f0a897a94d9195d44219 Mon Sep 17 00:00:00 2001 From: Nathaniel Filardo Date: Tue, 26 Nov 2019 18:13:22 +0000 Subject: [PATCH] pagemap: cast to size_t then do bit manip Makes the CHERI compiler happier --- src/mem/pagemap.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/mem/pagemap.h b/src/mem/pagemap.h index 94f5c1c..ce2aa5e 100644 --- a/src/mem/pagemap.h +++ b/src/mem/pagemap.h @@ -387,7 +387,7 @@ namespace snmalloc */ size_t index_for_address(uintptr_t p) { - return reinterpret_cast((p >> SHIFT) & (OS_PAGE_SIZE - 1)); + return bits::align_down(static_cast(p) >> SHIFT, OS_PAGE_SIZE); } /**