diff --git a/py/builtintables.c b/py/builtintables.c
index 391077d43401259dae982f17f8b852e6b1d78646..7b35207fa552f51b3c39e16b9725607a5c38a0b7 100644
--- a/py/builtintables.c
+++ b/py/builtintables.c
@@ -160,8 +160,15 @@ const mp_obj_dict_t mp_builtin_object_dict_obj = {
     },
 };
 
+STATIC const mp_obj_module_t mp_module_builtins = {
+    .base = { &mp_type_module },
+    .name = MP_QSTR_builtins,
+    .globals = (mp_obj_dict_t*)&mp_builtin_object_dict_obj,
+};
+
 STATIC const mp_map_elem_t mp_builtin_module_table[] = {
     { MP_OBJ_NEW_QSTR(MP_QSTR___main__), (mp_obj_t)&mp_module___main__ },
+    { MP_OBJ_NEW_QSTR(MP_QSTR_builtins), (mp_obj_t)&mp_module_builtins },
     { MP_OBJ_NEW_QSTR(MP_QSTR_micropython), (mp_obj_t)&mp_module_micropython },
 
 #if MICROPY_PY_ARRAY
diff --git a/py/qstrdefs.h b/py/qstrdefs.h
index 41ffa1d2016f20b73b79a75d1a4797eb100cbe78..a69ae1c691ad54f5e5b2d03f63d2676f58305f01 100644
--- a/py/qstrdefs.h
+++ b/py/qstrdefs.h
@@ -86,6 +86,8 @@ Q(align)
 Q(data)
 #endif
 
+Q(builtins)
+
 Q(Ellipsis)
 Q(StopIteration)