From 3049492de8b26cd87a6ad0e492949388fd368800 Mon Sep 17 00:00:00 2001 From: Roland Conybeare Date: Wed, 7 Jan 2026 18:11:55 -0500 Subject: [PATCH] xo-arena: verify SM3.1 in DArenaHashMap.verify_ok --- xo-arena/include/xo/arena/DArenaHashMap.hpp | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/xo-arena/include/xo/arena/DArenaHashMap.hpp b/xo-arena/include/xo/arena/DArenaHashMap.hpp index 153d6394..981e4e01 100644 --- a/xo-arena/include/xo/arena/DArenaHashMap.hpp +++ b/xo-arena/include/xo/arena/DArenaHashMap.hpp @@ -484,6 +484,17 @@ namespace xo { xtag("c_max_load_factor", c_max_load_factor)); } + /* SM3.1: control_[N+i] = control_[i] for i in [0, c_group_size) */ + for (size_type i = 0; i < c_group_size; ++i) { + if (control_[n_slot_ + i] != control_[i]) { + return policy.report_error(log, + c_self, ": expect control_[N+i] = control_[i]", + xtag("i", i), + xtag("control_[i]", control_[i]), + xtag("control_[N+i]", control_[n_slot_ + i])); + } + } + return true; } }