PostgreSQL Source Code git master
hashfn_unstable.h File Reference
#include "port/pg_bitutils.h"
#include "port/pg_bswap.h"
Include dependency graph for hashfn_unstable.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  fasthash_state
 

Macros

#define FH_SIZEOF_ACCUM   sizeof(uint64)
 
#define haszero64(v)    (((v) - 0x0101010101010101) & ~(v) & 0x8080808080808080)
 
#define firstbyte64(v)   ((v) & 0xFF)
 

Typedefs

typedef struct fasthash_state fasthash_state
 

Functions

static void fasthash_init (fasthash_state *hs, uint64 seed)
 
static uint64 fasthash_mix (uint64 h, uint64 tweak)
 
static void fasthash_combine (fasthash_state *hs)
 
static void fasthash_accum (fasthash_state *hs, const char *k, size_t len)
 
static size_t fasthash_accum_cstring_unaligned (fasthash_state *hs, const char *str)
 
 pg_attribute_no_sanitize_address () static inline size_t fasthash_accum_cstring_aligned(fasthash_state *hs
 
 Assert (PointerIsAligned(start, uint64))
 
 for (;;)
 
 if (firstbyte64(chunk) !=0)
 
static size_t fasthash_accum_cstring (fasthash_state *hs, const char *str)
 
static uint64 fasthash_final64 (fasthash_state *hs, uint64 tweak)
 
static uint32 fasthash_reduce32 (uint64 h)
 
static uint32 fasthash_final32 (fasthash_state *hs, uint64 tweak)
 
static uint64 fasthash64 (const char *k, size_t len, uint64 seed)
 
static uint32 fasthash32 (const char *k, size_t len, uint64 seed)
 
static uint32 hash_string (const char *s)
 

Variables

const char * str
 
uint64 chunk
 
uint64 zero_byte_low
 
return str start
 

Macro Definition Documentation

◆ FH_SIZEOF_ACCUM

#define FH_SIZEOF_ACCUM   sizeof(uint64)

Definition at line 103 of file hashfn_unstable.h.

◆ firstbyte64

#define firstbyte64 (   v)    ((v) & 0xFF)

Definition at line 226 of file hashfn_unstable.h.

◆ haszero64

#define haszero64 (   v)     (((v) - 0x0101010101010101) & ~(v) & 0x8080808080808080)

Definition at line 219 of file hashfn_unstable.h.

Typedef Documentation

◆ fasthash_state

Function Documentation

◆ Assert()

◆ fasthash32()

static uint32 fasthash32 ( const char *  k,
size_t  len,
uint64  seed 
)
inlinestatic

Definition at line 428 of file hashfn_unstable.h.

429{
430 return fasthash_reduce32(fasthash64(k, len, seed));
431}
static uint32 fasthash_reduce32(uint64 h)
static uint64 fasthash64(const char *k, size_t len, uint64 seed)
const void size_t len

References fasthash64(), fasthash_reduce32(), and len.

Referenced by pgstat_hash_hash_key().

◆ fasthash64()

static uint64 fasthash64 ( const char *  k,
size_t  len,
uint64  seed 
)
inlinestatic

Definition at line 406 of file hashfn_unstable.h.

407{
409
410 fasthash_init(&hs, 0);
411
412 /* re-initialize the seed according to input length */
413 hs.hash = seed ^ (len * 0x880355f21e6d1965);
414
415 while (len >= FH_SIZEOF_ACCUM)
416 {
418 k += FH_SIZEOF_ACCUM;
420 }
421
422 fasthash_accum(&hs, k, len);
423 return fasthash_final64(&hs, 0);
424}
#define FH_SIZEOF_ACCUM
static void fasthash_accum(fasthash_state *hs, const char *k, size_t len)
static uint64 fasthash_final64(fasthash_state *hs, uint64 tweak)
static void fasthash_init(fasthash_state *hs, uint64 seed)

References fasthash_accum(), fasthash_final64(), fasthash_init(), FH_SIZEOF_ACCUM, fasthash_state::hash, and len.

Referenced by fasthash32().

◆ fasthash_accum()

static void fasthash_accum ( fasthash_state hs,
const char *  k,
size_t  len 
)
inlinestatic

Definition at line 138 of file hashfn_unstable.h.

139{
140 uint32 lower_four;
141
143 hs->accum = 0;
144
145 /*
146 * For consistency, bytewise loads must match the platform's endianness.
147 */
148#ifdef WORDS_BIGENDIAN
149 switch (len)
150 {
151 case 8:
152 memcpy(&hs->accum, k, 8);
153 break;
154 case 7:
155 hs->accum |= (uint64) k[6] << 8;
156 /* FALLTHROUGH */
157 case 6:
158 hs->accum |= (uint64) k[5] << 16;
159 /* FALLTHROUGH */
160 case 5:
161 hs->accum |= (uint64) k[4] << 24;
162 /* FALLTHROUGH */
163 case 4:
164 memcpy(&lower_four, k, sizeof(lower_four));
165 hs->accum |= (uint64) lower_four << 32;
166 break;
167 case 3:
168 hs->accum |= (uint64) k[2] << 40;
169 /* FALLTHROUGH */
170 case 2:
171 hs->accum |= (uint64) k[1] << 48;
172 /* FALLTHROUGH */
173 case 1:
174 hs->accum |= (uint64) k[0] << 56;
175 break;
176 case 0:
177 return;
178 }
179#else
180 switch (len)
181 {
182 case 8:
183 memcpy(&hs->accum, k, 8);
184 break;
185 case 7:
186 hs->accum |= (uint64) k[6] << 48;
187 /* FALLTHROUGH */
188 case 6:
189 hs->accum |= (uint64) k[5] << 40;
190 /* FALLTHROUGH */
191 case 5:
192 hs->accum |= (uint64) k[4] << 32;
193 /* FALLTHROUGH */
194 case 4:
195 memcpy(&lower_four, k, sizeof(lower_four));
196 hs->accum |= lower_four;
197 break;
198 case 3:
199 hs->accum |= (uint64) k[2] << 16;
200 /* FALLTHROUGH */
201 case 2:
202 hs->accum |= (uint64) k[1] << 8;
203 /* FALLTHROUGH */
204 case 1:
205 hs->accum |= (uint64) k[0];
206 break;
207 case 0:
208 return;
209 }
210#endif
211
213}
uint64_t uint64
Definition: c.h:489
uint32_t uint32
Definition: c.h:488
Assert(PointerIsAligned(start, uint64))
static void fasthash_combine(fasthash_state *hs)

References fasthash_state::accum, Assert(), fasthash_combine(), FH_SIZEOF_ACCUM, and len.

Referenced by fasthash64(), and fasthash_accum_cstring_unaligned().

◆ fasthash_accum_cstring()

static size_t fasthash_accum_cstring ( fasthash_state hs,
const char *  str 
)
inlinestatic

Definition at line 335 of file hashfn_unstable.h.

336{
337#if SIZEOF_VOID_P >= 8
338
339 size_t len;
340#ifdef USE_ASSERT_CHECKING
341 size_t len_check;
342 fasthash_state hs_check;
343
344 memcpy(&hs_check, hs, sizeof(fasthash_state));
345 len_check = fasthash_accum_cstring_unaligned(&hs_check, str);
346#endif
348 {
349 len = fasthash_accum_cstring_aligned(hs, str);
350 Assert(len_check == len);
351 Assert(hs_check.hash == hs->hash);
352 return len;
353 }
354#endif /* SIZEOF_VOID_P */
355
356 /*
357 * It's not worth it to try to make the word-at-a-time optimization work
358 * on 32-bit platforms.
359 */
361}
#define PointerIsAligned(pointer, type)
Definition: c.h:726
static size_t fasthash_accum_cstring_unaligned(fasthash_state *hs, const char *str)
const char * str

References Assert(), fasthash_accum_cstring_unaligned(), fasthash_state::hash, len, PointerIsAligned, and str.

Referenced by hash_string(), and spcachekey_hash().

◆ fasthash_accum_cstring_unaligned()

static size_t fasthash_accum_cstring_unaligned ( fasthash_state hs,
const char *  str 
)
inlinestatic

Definition at line 233 of file hashfn_unstable.h.

234{
235 const char *const start = str;
236
237 while (*str)
238 {
239 size_t chunk_len = 0;
240
241 while (chunk_len < FH_SIZEOF_ACCUM && str[chunk_len] != '\0')
242 chunk_len++;
243
244 fasthash_accum(hs, str, chunk_len);
245 str += chunk_len;
246 }
247
248 return str - start;
249}
return str start

References fasthash_accum(), FH_SIZEOF_ACCUM, start, and str.

Referenced by fasthash_accum_cstring().

◆ fasthash_combine()

static void fasthash_combine ( fasthash_state hs)
inlinestatic

Definition at line 130 of file hashfn_unstable.h.

131{
132 hs->hash ^= fasthash_mix(hs->accum, 0);
133 hs->hash *= 0x880355f21e6d1965;
134}
static uint64 fasthash_mix(uint64 h, uint64 tweak)

References fasthash_state::accum, fasthash_mix(), and fasthash_state::hash.

Referenced by fasthash_accum(), for(), if(), and spcachekey_hash().

◆ fasthash_final32()

static uint32 fasthash_final32 ( fasthash_state hs,
uint64  tweak 
)
inlinestatic

Definition at line 394 of file hashfn_unstable.h.

395{
396 return fasthash_reduce32(fasthash_final64(hs, tweak));
397}

References fasthash_final64(), and fasthash_reduce32().

Referenced by hash_string(), and spcachekey_hash().

◆ fasthash_final64()

static uint64 fasthash_final64 ( fasthash_state hs,
uint64  tweak 
)
inlinestatic

Definition at line 371 of file hashfn_unstable.h.

372{
373 return fasthash_mix(hs->hash, tweak);
374}

References fasthash_mix(), and fasthash_state::hash.

Referenced by fasthash64(), and fasthash_final32().

◆ fasthash_init()

static void fasthash_init ( fasthash_state hs,
uint64  seed 
)
inlinestatic

Definition at line 112 of file hashfn_unstable.h.

113{
114 memset(hs, 0, sizeof(fasthash_state));
115 hs->hash = seed ^ 0x880355f21e6d1965;
116}

References fasthash_state::hash.

Referenced by fasthash64(), hash_string(), and spcachekey_hash().

◆ fasthash_mix()

static uint64 fasthash_mix ( uint64  h,
uint64  tweak 
)
inlinestatic

Definition at line 120 of file hashfn_unstable.h.

121{
122 h ^= (h >> 23) + tweak;
123 h *= 0x2127599bf4325c37;
124 h ^= h >> 47;
125 return h;
126}

Referenced by fasthash_combine(), and fasthash_final64().

◆ fasthash_reduce32()

static uint32 fasthash_reduce32 ( uint64  h)
inlinestatic

Definition at line 383 of file hashfn_unstable.h.

384{
385 /*
386 * Convert the 64-bit hashcode to Fermat residue, which shall retain
387 * information from both the higher and lower parts of hashcode.
388 */
389 return h - (h >> 32);
390}

Referenced by fasthash32(), and fasthash_final32().

◆ for()

◆ hash_string()

static uint32 hash_string ( const char *  s)
inlinestatic

Definition at line 437 of file hashfn_unstable.h.

438{
440 size_t s_len;
441
442 fasthash_init(&hs, 0);
443
444 /*
445 * Combine string into the hash and save the length for tweaking the final
446 * mix.
447 */
448 s_len = fasthash_accum_cstring(&hs, s);
449
450 return fasthash_final32(&hs, s_len);
451}
static size_t fasthash_accum_cstring(fasthash_state *hs, const char *str)
static uint32 fasthash_final32(fasthash_state *hs, uint64 tweak)

References fasthash_accum_cstring(), fasthash_final32(), and fasthash_init().

◆ if()

if ( firstbyte64(chunk) !  = 0)

Definition at line 300 of file hashfn_unstable.h.

301 {
302 size_t remainder;
303 uint64 mask;
304
305 /*
306 * The byte corresponding to the NUL will be 0x80, so the rightmost
307 * bit position will be in the range 15, 23, ..., 63. Turn this into
308 * byte position by dividing by 8.
309 */
311
312 /*
313 * Create a mask for the remaining bytes so we can combine them into
314 * the hash. This must have the same result as mixing the remaining
315 * bytes with fasthash_accum().
316 */
317#ifdef WORDS_BIGENDIAN
318 mask = ~UINT64CONST(0) << BITS_PER_BYTE * (FH_SIZEOF_ACCUM - remainder);
319#else
320 mask = ~UINT64CONST(0) >> BITS_PER_BYTE * (FH_SIZEOF_ACCUM - remainder);
321#endif
322 hs->accum = chunk & mask;
324
325 str += remainder;
326 }
static int pg_rightmost_one_pos64(uint64 word)
Definition: pg_bitutils.h:145
#define BITS_PER_BYTE

References BITS_PER_BYTE, chunk, fasthash_combine(), FH_SIZEOF_ACCUM, pg_rightmost_one_pos64(), str, and zero_byte_low.

◆ pg_attribute_no_sanitize_address()

pg_attribute_no_sanitize_address ( )

Variable Documentation

◆ chunk

uint64 chunk

Definition at line 265 of file hashfn_unstable.h.

Referenced by afterTriggerAddEvent(), AfterTriggerEndSubXact(), afterTriggerFreeEventList(), afterTriggerInvokeEvents(), afterTriggerMarkEvents(), AfterTriggerPendingOnRel(), afterTriggerRestoreEventList(), AlignedAllocFree(), AllocSetAlloc(), AllocSetAllocChunkFromBlock(), AllocSetAllocFromNewBlock(), AllocSetAllocLarge(), AllocSetFree(), AllocSetGetChunkContext(), AllocSetGetChunkSpace(), AllocSetRealloc(), AllocSetStats(), BlockRefTableEntryMarkBlockModified(), build_dummy_expanded_header(), BumpAllocChunkFromBlock(), BumpAllocLarge(), cancel_prior_stmt_triggers(), check_toast_tuple(), convert_any_priv_string(), deconstruct_expanded_record(), dir_write(), escape_json_with_len(), exec_move_row(), exec_move_row_from_fields(), ExecHashIncreaseNumBuckets(), ExecHashTableDetachBatch(), ExecParallelHashIncreaseNumBuckets(), ExecParallelHashPopChunkQueue(), ExecParallelHashRepartitionFirst(), ExecParallelHashTupleAlloc(), for(), GenerationAllocChunkFromBlock(), GenerationAllocLarge(), GenerationFree(), GenerationGetChunkContext(), GenerationGetChunkSpace(), GenerationRealloc(), heap_fetch_toast_slice(), if(), is_valid_ascii(), json_parse_manifest_incremental_chunk(), make_expanded_record_from_exprecord(), make_expanded_record_from_tupdesc(), make_expanded_record_from_typeid(), MemoryChunkGetBlock(), MemoryChunkGetValue(), MemoryChunkIsExternal(), MemoryChunkSetHdrMask(), MemoryChunkSetHdrMaskExternal(), pg_lfind8(), pg_lfind8_le(), pgstat_init_entry(), process_queued_fetch_requests(), ReorderBufferToastAppendChunk(), ReorderBufferToastReplace(), RT_ADD_CHILD_16(), RT_ADD_CHILD_256(), RT_ADD_CHILD_4(), RT_ADD_CHILD_48(), RT_GET_SLOT_RECURSIVE(), RT_GROW_NODE_16(), RT_GROW_NODE_4(), RT_GROW_NODE_48(), RT_NODE_16_GET_INSERTPOS(), RT_NODE_16_SEARCH_EQ(), RT_NODE_256_GET_CHILD(), RT_NODE_256_IS_CHUNK_USED(), RT_NODE_48_GET_CHILD(), RT_NODE_48_IS_CHUNK_USED(), RT_NODE_4_GET_INSERTPOS(), RT_NODE_INSERT(), RT_NODE_ITERATE_NEXT(), RT_NODE_SEARCH(), SlabAlloc(), SlabAllocFromNewBlock(), SlabAllocSetupNewChunk(), SlabFree(), SlabGetChunkContext(), SlabGetChunkSpace(), SlabGetNextFreeChunk(), SlabRealloc(), tbm_advance_schunkbit(), tbm_private_iterate(), and tbm_shared_iterate().

◆ start

return str start

Definition at line 328 of file hashfn_unstable.h.

Referenced by _bt_endpoint(), _bt_getstackbuf(), advanceConnectionState(), AssertCheckRanges(), big52euc_tw(), big52mic(), bt_leftmost_ignoring_half_dead(), check_pghost_envvar(), conninfo_uri_parse_options(), CopyAttributeOutCSV(), CopyAttributeOutText(), dfa_backref(), dumpRoleMembership(), dupnfa(), ECPGmake_struct_member(), euc_cn2mic(), euc_jis_20042shift_jis_2004(), euc_jp2mic(), euc_jp2sjis(), euc_kr2mic(), euc_tw2big5(), euc_tw2mic(), fasthash_accum_cstring_unaligned(), find_word(), findwrd(), FreeSpaceMapVacuumRange(), fsm_vacuum_page(), generate_combinations_recurse(), generate_dependencies_recurse(), generate_series_int4_support(), generate_series_int8_support(), generate_series_numeric_support(), generate_series_step_int4(), generate_series_step_int8(), generate_series_timestamp(), generate_series_timestamp_support(), generate_series_timestamptz_internal(), get_array_element_end(), get_array_end(), get_object_end(), get_object_field_end(), get_scalar(), get_steps_using_prefix_recurse(), getlexeme(), GETTEMP(), getvacant(), has_matching_range(), heap_fill_tuple(), init_span(), initialize(), InitializeParallelDSM(), initPopulateTable(), initStats(), inner_subltree(), internal_flush_buffer(), internal_putbytes(), iso8859_1_to_utf8(), issue_xlog_fsync(), latin2mic(), latin2mic_with_table(), local2local(), LocalToUtf(), longest(), lseg_inside_poly(), ltree_index(), mic2big5(), mic2euc_cn(), mic2euc_jp(), mic2euc_kr(), mic2euc_tw(), mic2latin(), mic2latin_with_table(), mic2sjis(), miss(), mkVoidAffix(), multi_sort_compare_dims(), MultiXactOffsetWouldWrap(), numst(), overwrite(), pg_big5_verifystr(), pg_eucjp_verifystr(), pg_euckr_verifystr(), pg_euctw_verifystr(), pg_gb18030_verifystr(), pg_gbk_verifystr(), pg_johab_verifystr(), pg_mule_verifystr(), pg_sjis_verifystr(), pg_uhc_verifystr(), pg_utf8_verifystr(), pgss_planner(), pgss_ProcessUtility(), pgstat_index(), pickout(), pickss(), pr_comment(), range_deduplicate_values(), recompose_code(), regexp_count(), regexp_instr(), regexp_substr(), ReinitializeParallelDSM(), removeconstraints(), runInitSteps(), SampleHeapTupleVisible(), serializeAnalyzeReceive(), shift_jis_20042euc_jis_2004(), shortest(), sjis2euc_jp(), sjis2mic(), skip(), statext_mcv_deserialize(), statext_mcv_serialize(), StringAt(), strlen_max_width(), strtokx(), subarray(), subpath(), text_substring(), textregexreplace_extended(), threadRun(), touched_lseg_inside_poly(), tzparse(), utf8_to_iso8859_1(), UtfToLocal(), and XLogWrite().

◆ str

const char* str
Initial value:
{
const char *const start = str

Definition at line 262 of file hashfn_unstable.h.

Referenced by _add(), _outA_Const(), _outA_Expr(), _outBitString(), _outBoolean(), _outBoolExpr(), _outConst(), _outExtensibleNode(), _outFloat(), _outForeignKeyOptInfo(), _outInteger(), _outList(), _outString(), add_role_attribute(), add_stringlist_item(), add_typedefs_from_file(), AddToDataDirLockFile(), append_with_tabs(), appendArrayEscapedString(), appendBinaryPQExpBuffer(), appendBinaryStringInfo(), appendBinaryStringInfoNT(), appendByteaLiteral(), appendConnStrVal(), appendContextKeyword(), appendPQExpBuffer(), appendPQExpBufferChar(), appendPQExpBufferStr(), appendPQExpBufferVA(), appendShellString(), appendShellStringNoError(), appendStringInfo(), appendStringInfoChar(), appendStringInfoRegexpSubstr(), appendStringInfoSpaces(), appendStringInfoString(), appendStringInfoStringQuoted(), appendStringInfoText(), appendStringInfoVA(), appendStringLiteral(), appendStringLiteralConn(), appendStringLiteralDQ(), ASN1_STRING_to_text(), assign_text_var(), be_lo_from_bytea(), be_lo_put(), bitposition(), bits_to_text(), bmsToString(), boolin(), booltext(), box_in(), bpcharrecv(), brin_bloom_summary_out(), brin_minmax_multi_summary_out(), byleng(), bytea_substring(), bytealike(), byteanlike(), byteaoctetlen(), cash_in(), char2wchar(), check_final_sigma(), check_recovery_target_time(), check_special_conditions(), cidin(), circle_in(), circle_out(), citext_hash(), citext_hash_extended(), cliplen(), compact_trigram(), complex_in(), concat_internal(), conninfo_uri_decode(), CopyLimitPrintoutLength(), CopySendString(), cpstrdup(), create_logical_replication_slot(), create_publication(), create_subscription(), croak_cstr(), cstr2sv(), cstring_in(), cstring_out(), cstring_recv(), cstring_send(), csv_escaped_print(), csv_print_field(), cube_in(), cube_scanner_init(), date_in(), DateTimeParseError(), db_encoding_convert(), DCH_cache_fetch(), DCH_cache_getnew(), DCH_cache_search(), DCH_to_char(), deccvasc(), DecodeDate(), DecodeISO8601Interval(), DecodeNumber(), DecodeNumberField(), DecodePosixTimezone(), DecodeTextArrayToBitmapset(), DecodeTime(), DecodeTimeCommon(), DecodeTimeForInterval(), DecodeTimezone(), DecodeTimezoneAbbrevPrefix(), dectoasc(), defGetStringList(), deparseFromExprForRel(), dequote_downcase_identifier(), destroyPQExpBuffer(), destroyStringInfo(), DirectInputFunctionCallSafe(), dostr(), DoubleMetaphone(), drop_publication(), drop_replication_slot(), dtcvasc(), ean13_in(), ecpg_build_params(), ecpg_get_data(), ecpg_raise(), ecpg_store_input(), ecpg_strndup(), ECPGconnect(), ECPGdump_a_type(), ecpyalloc(), enable_subscription(), EncodeDateOnly(), EncodeDateTime(), EncodeInterval(), EncodeSpecialDate(), EncodeSpecialInterval(), EncodeSpecialTimestamp(), EncodeTimeOnly(), EncodeTimezone(), enlargePQExpBuffer(), enlargeStringInfo(), err_generic_string(), err_gettext(), err_sendstring(), errdetail_params(), escape_json(), escape_json_text(), escape_json_with_len(), escape_param_str(), escape_xml(), escape_yaml(), exec_assign_c_string(), ExecEvalCoerceViaIOSafe(), ExecGetJsonValueItemString(), ExecInterpExpr(), executeLikeRegex(), ExecuteSqlCommandBuf(), ExplainPrintSettings(), ExplainProperty(), ExplainPropertyList(), ExplainQueryParameters(), fasthash_accum_cstring(), fasthash_accum_cstring_unaligned(), fetch_function_defaults(), fill_str(), fillTrgm(), filter_read_item(), find_end_token(), find_str(), find_struct_member(), find_word(), findchar(), findchar2(), flush_pipe_input(), for(), forkname_chars(), format_node_dump(), func_get_detail(), generate_trgm(), generate_trgm_only(), generate_wildcard_trgm(), Generic_Text_IC_like(), get_nextfield(), get_str_from_var(), get_str_from_var_sci(), get_string_attr(), get_wildcard_part(), getRightMostDot(), hstore_in(), hstore_to_json_loose(), if(), indent_lines(), index_seq_search(), init_libpq_conn(), initPQExpBuffer(), initReadOnlyStringInfo(), initStringInfo(), initStringInfoExt(), initStringInfoFromString(), initStringInfoInternal(), InputFunctionCall(), InputFunctionCallSafe(), interpret_func_parallel(), interpret_func_volatility(), interval_in(), intoasc(), is_an_int(), is_separator_char(), isbn_in(), ismn_in(), issn_in(), IsValidJsonNumber(), json_populate_type(), json_recv(), jsonb_object(), jsonb_object_two_arg(), jsonb_pretty(), jsonb_recv(), JsonbValue_to_SV(), JsonItemFromDatum(), jsonpath_recv(), line_decode(), line_in(), lquery_recv(), lseg_in(), ltree_recv(), ltxtq_recv(), macaddr8_in(), macaddr_in(), main(), make_text_key(), make_trigrams(), make_tsvector(), makeBitString(), makeitem(), makeString(), makeStringConst(), map_sql_value_to_xml_value(), markPQExpBufferBroken(), mb_strchr(), mxid_to_string(), my_pv_pretty(), nameiclike(), nameicnlike(), namelike(), namenlike(), namerecv(), namestrcmp(), namestrcpy(), nodeToStringInternal(), NUM_cache(), NUM_cache_fetch(), NUM_cache_getnew(), NUM_cache_search(), numeric_in(), numeric_normalize(), numeric_out(), numeric_out_sci(), object_to_string(), OidInputFunctionCall(), outBitmapset(), outChar(), outDatum(), outDouble(), outNode(), output_escaped_str(), outToken(), pair_decode(), pair_encode(), parse_affentry(), parse_args(), parse_format(), parse_hba_line(), parse_ooaffentry(), parse_snapshot(), ParseISO8601Number(), parsejsonpath(), parseOidArray(), parseTypeString(), path_decode(), path_encode(), path_in(), pg_clean_ascii(), pg_dependencies_out(), pg_get_expr_worker(), pg_get_function_arg_default(), pg_get_indexdef_worker(), pg_get_partkeydef_worker(), pg_get_statisticsobj_worker(), pg_get_statisticsobjdef_expressions(), pg_GSS_error_int(), pg_input_is_valid_common(), pg_is_ascii(), pg_lsn_in(), pg_lsn_in_internal(), pg_ndistinct_out(), pg_parse_query(), pg_plan_query(), pg_rewrite_query(), pg_size_bytes(), pg_snapshot_in(), pg_snapshot_out(), pg_snprintf(), pg_sprintf(), pg_str_endswith(), pg_strerror_r(), pg_strfromd(), pg_strip_crlf(), pg_ultostr(), pg_ultostr_zeropad(), pg_vsnprintf(), pg_vsprintf(), pg_wchar_strlen(), pgtypes_strdup(), PGTYPESdate_defmt_asc(), PGTYPESdate_from_asc(), PGTYPESinterval_from_asc(), PGTYPESnumeric_from_asc(), PGTYPEStimestamp_defmt_asc(), PGTYPEStimestamp_defmt_scan(), PGTYPEStimestamp_from_asc(), placeChar(), plperl_sv_to_datum(), plpgsql_scanner_init(), PLy_quote_ident(), PLy_quote_literal(), PLy_quote_nullable(), PLyBytes_FromBytea(), PLyDecimal_FromNumeric(), PLyNumber_ToJsonbValue(), PLyObject_FromJsonbValue(), PLyObject_ToScalar(), PLyUnicode_ToComposite(), point_in(), poly_in(), populate_scalar(), pq_getmsgrawstring(), pq_getmsgstring(), pq_getmsgtext(), pq_puttextmessage(), pq_send_ascii_string(), pq_sendcountedtext(), pq_sendstring(), pq_sendtext(), pq_writestring(), PQenv2encoding(), PQescapeIdentifier(), PQescapeInternal(), PQescapeLiteral(), pqResultStrdup(), pretty_format_node_dump(), print_function_arguments(), printfPQExpBuffer(), printJsonPathItem(), printsimple(), process_pipe_input(), pset_quoted_string(), pts_error_callback(), quote_ident(), raw_parser(), rdatestr(), rdefmtdate(), read_char(), read_letter(), read_pattern(), read_quoted_string(), read_tablespace_map(), read_valid_char(), regexp_count(), regexp_fixed_prefix(), regexp_instr(), regexp_like(), regexp_substr(), removeStringInfoSpaces(), replace_text(), replication_scanner_init(), resetPQExpBuffer(), resetStringInfo(), rfmtdate(), RS_compile(), RS_execute(), RS_isRegis(), rstrdate(), rupshift(), sanitize_line(), ScanKeywordLookup(), scanner_init(), seg_in(), seg_scanner_init(), sendMessageToLeader(), sendMessageToWorker(), set_errdata_field(), set_replication_progress(), set_string_attr(), set_var_from_non_decimal_integer_str(), set_var_from_str(), ShowTransactionState(), ShowTransactionStateRec(), ShowUsage(), single_encode(), str2uint(), str_udeescape(), string2ean(), string_matches_pattern(), string_to_bytea_const(), string_to_const(), string_to_datum(), string_to_text(), stringToNode(), stringToNodeInternal(), strlen_max_width(), strnlen(), strspace_len(), strtodouble(), strtoint(), strtoint64(), suff_search(), syncrep_scanner_init(), termPQExpBuffer(), text_format(), text_format_append_string(), text_format_string_conversion(), text_left(), text_length(), text_reverse(), text_right(), text_substring(), text_to_bits(), texticlike(), texticnlike(), textlen(), textlike(), textnlike(), textoctetlen(), textpos(), textrecv(), tidin(), time_in(), timestamp_in(), timestamptz_in(), timetz_in(), TParserInit(), TrimTrailingZeros(), typeStringToTypeName(), unaccent_dict(), unistr(), unknownin(), unknownout(), unknownrecv(), unknownsend(), upc_in(), utf_e2u(), uuid_generate_internal(), varcharrecv(), verify_cb(), wait_result_to_str(), widget_in(), widget_out(), writeNodeArray(), xid8in(), xidin(), xml_out_internal(), xml_recv(), xmlconcat(), xmlelement(), xmlroot(), XmlTableGetValue(), XmlTableSetDocument(), and xmltotext_with_options().

◆ zero_byte_low

uint64 zero_byte_low

Definition at line 266 of file hashfn_unstable.h.

Referenced by for(), and if().