struct GroupSse2Impl

Defined at line 645 of file ../../third_party/abseil-cpp/absl/container/internal/raw_hash_set.h

Public Members

__m128i ctrl
static const size_t kWidth

Public Methods

void GroupSse2Impl (const ctrl_t * pos)

Defined at line 648 of file ../../third_party/abseil-cpp/absl/container/internal/raw_hash_set.h

BitMask<uint16_t, kWidth> Match (h2_t hash)

Returns a bitmask representing the positions of slots that match hash.

Defined at line 653 of file ../../third_party/abseil-cpp/absl/container/internal/raw_hash_set.h

NonIterableBitMask<uint16_t, kWidth> MaskEmpty ()

Returns a bitmask representing the positions of empty slots.

Defined at line 662 of file ../../third_party/abseil-cpp/absl/container/internal/raw_hash_set.h

BitMask<uint16_t, kWidth> MaskFull ()

Returns a bitmask representing the positions of full slots.

Note: for `is_small()` tables group may contain the "same" slot twice:

original and mirrored.

Defined at line 677 of file ../../third_party/abseil-cpp/absl/container/internal/raw_hash_set.h

BitMask<uint16_t, kWidth> MaskNonFull ()

Returns a bitmask representing the positions of non full slots.

Note: this includes: kEmpty, kDeleted, kSentinel.

It is useful in contexts when kSentinel is not present.

Defined at line 685 of file ../../third_party/abseil-cpp/absl/container/internal/raw_hash_set.h

NonIterableBitMask<uint16_t, kWidth> MaskEmptyOrDeleted ()

Returns a bitmask representing the positions of empty or deleted slots.

Defined at line 691 of file ../../third_party/abseil-cpp/absl/container/internal/raw_hash_set.h

uint32_t CountLeadingEmptyOrDeleted ()

Returns the number of trailing empty or deleted elements in the group.

Defined at line 698 of file ../../third_party/abseil-cpp/absl/container/internal/raw_hash_set.h

void ConvertSpecialToEmptyAndFullToDeleted (ctrl_t * dst)

Defined at line 704 of file ../../third_party/abseil-cpp/absl/container/internal/raw_hash_set.h