-static int hti_copy_entry (hash_table_i_t *old_hti, volatile entry_t *old_e, uint32_t key_hash,
- hash_table_i_t *new_hti) {
- TRACE("h0", "hti_copy_entry(copy entry from %p to %p)", old_hti, new_hti);
- assert(old_hti);
- assert(old_hti->next);
- assert(new_hti);
- assert(old_e >= old_hti->table && old_e < old_hti->table + (1 << old_hti->scale));
-
- int64_t old_e_value = old_e->value;
- TRACE("h0", "hti_copy_entry: entry %p current value %p", old_e, old_e_value);
- if (EXPECT_FALSE(old_e_value == COPIED_VALUE))
+static int hti_copy_entry (hash_table_i_t *ht1, volatile entry_t *ht1_e, uint32_t key_hash,
+ hash_table_i_t *ht2) {
+ TRACE("h0", "hti_copy_entry(copy entry from %p to %p)", ht1, ht2);
+ assert(ht1);
+ assert(ht1->next);
+ assert(ht2);
+ assert(ht1_e >= ht1->table && ht1_e < ht1->table + (1 << ht1->scale));
+ assert(key_hash == 0 || (key_hash >> 16) == (ht1_e->key >> 48));
+
+ uint64_t ht1_e_value = ht1_e->value;
+ TRACE("h0", "hti_copy_entry: entry %p current value %p", ht1_e, ht1_e_value);
+ if (EXPECT_FALSE(ht1_e_value == COPIED_VALUE))