Lines Matching defs:shared

50     = "Cannot modify shared string table in hv_%s";
113 But for the shared string table (the private "hash" that manages shared hash
118 However, regular hashes (now) can have a mix of shared and unshared keys.
121 the shared string table - existing keys remain shared, to avoid makework.)
124 ignored for hash lookups) but must always be clear in the keys in the shared
126 regular hashes - this is how shared keys work.)
141 in the shared string table, hence we create this mask for the shared string
143 change if we add a flag bit that matters to the shared string table but not
221 HEK *shared;
229 shared = (HEK*)ptr_table_fetch(PL_ptr_table, source);
230 if (shared) {
231 /* We already shared this hash key. */
232 (void)share_hek_hek(shared);
235 shared
238 ptr_table_store(PL_ptr_table, source, shared);
240 return shared;
244 Perl_he_dup(pTHX_ const HE *e, bool shared, CLONE_PARAMS* param)
252 "shared" from this function. */
255 PERL_UNUSED_ARG(shared);
278 HEK *shared = (HEK*)ptr_table_fetch(PL_ptr_table, source);
280 if (shared) {
281 /* We already shared this hash key. */
282 (void)share_hek_hek(shared);
285 shared
288 ptr_table_store(PL_ptr_table, source, shared);
290 HeKEY_hek(ret) = shared;
530 and if that HEK is not shared, then it has the relevant flag bit set,
847 need. As keys are shared we can't just write to the
1594 shared hash keys benefit the first two greatly, because keys are likely
1598 unlikely to be re-used. Hence having those keys in the shared string table as
1599 well as the hash is a memory hit, if they are never actually shared with a
1600 second hash. Hence we turn off shared hash keys if a (regular) hash gets
3215 If no one has access to shared string C<str> with length C<len>, free it.
3236 /* possibly free a shared string if no one has access to it
3252 /* Find the shared he which is just before us in memory. */
3258 shared hek */
3318 "Attempt to free nonexistent shared string '%s'%s"
3380 Can't rehash the shared string table, so not sure if it's worth