diff --git a/include/sm_io_mod_dispatch.h b/include/sm_io_mod_dispatch.h
index 165c2d61121437cc5aef1ced97cc7ef7fe36d86e..ab8eef0b9867a6ae681e04eb78a21f7a0abccdf8 100644
--- a/include/sm_io_mod_dispatch.h
+++ b/include/sm_io_mod_dispatch.h
@@ -41,6 +41,8 @@ extern const smio_mod_dispatch_t _esmio_mod_dispatch;
             .bootstrap_ops = &mod_bootstrap_ops                                 \
         };
 
+#define for_each_smio(s) for ((s) = &_smio_mod_dispatch; (s) < &_esmio_mod_dispatch; (s)++)
+
 #ifdef __cplusplus
 }
 #endif