diff --git a/Modules/_tracemalloc.c b/Modules/_tracemalloc.c
index 42dbeae..780e8ed 100644
--- a/Modules/_tracemalloc.c
+++ b/Modules/_tracemalloc.c
@@ -1052,7 +1052,7 @@
     PyObject *tracemalloc_obj;
     int res;
 
-    trace = (trace_t *)_PY_HASHTABLE_ENTRY_DATA(entry);
+    trace = (trace_t *)_Py_HASHTABLE_ENTRY_DATA(entry);
 
     tracemalloc_obj = trace_to_pyobject(trace, get_traces->tracebacks);
     if (tracemalloc_obj == NULL)
diff --git a/Modules/hashtable.c b/Modules/hashtable.c
index 221ed53..aaded46 100644
--- a/Modules/hashtable.c
+++ b/Modules/hashtable.c
@@ -326,7 +326,7 @@
     entry->key_hash = key_hash;
 
     assert(data_size == ht->data_size);
-    memcpy(_PY_HASHTABLE_ENTRY_DATA(entry), data, data_size);
+    memcpy(_Py_HASHTABLE_ENTRY_DATA(entry), data, data_size);
 
     _Py_slist_prepend(&ht->buckets[index], (_Py_slist_item_t*)entry);
     ht->entries++;
@@ -504,7 +504,7 @@
                     err = 1;
             }
             else {
-                data = _PY_HASHTABLE_ENTRY_DATA(entry);
+                data = _Py_HASHTABLE_ENTRY_DATA(entry);
                 err = _Py_hashtable_set(dst, entry->key, data, src->data_size);
             }
             if (err) {
diff --git a/Modules/hashtable.h b/Modules/hashtable.h
index 539e490..a9f9993 100644
--- a/Modules/hashtable.h
+++ b/Modules/hashtable.h
@@ -26,16 +26,16 @@
     /* data follows */
 } _Py_hashtable_entry_t;
 
-#define _PY_HASHTABLE_ENTRY_DATA(ENTRY) \
+#define _Py_HASHTABLE_ENTRY_DATA(ENTRY) \
         ((char *)(ENTRY) + sizeof(_Py_hashtable_entry_t))
 
 #define _Py_HASHTABLE_ENTRY_DATA_AS_VOID_P(ENTRY) \
-        (*(void **)_PY_HASHTABLE_ENTRY_DATA(ENTRY))
+        (*(void **)_Py_HASHTABLE_ENTRY_DATA(ENTRY))
 
 #define _Py_HASHTABLE_ENTRY_READ_DATA(TABLE, DATA, DATA_SIZE, ENTRY) \
     do { \
         assert((DATA_SIZE) == (TABLE)->data_size); \
-        memcpy(DATA, _PY_HASHTABLE_ENTRY_DATA(ENTRY), DATA_SIZE); \
+        memcpy(DATA, _Py_HASHTABLE_ENTRY_DATA(ENTRY), DATA_SIZE); \
     } while (0)
 
 typedef Py_uhash_t (*_Py_hashtable_hash_func) (const void *key);
