| 342 | } |
| 343 | |
| 344 | JEMALLOC_ALWAYS_INLINE tsd_t * |
| 345 | tsd_fetch_impl(bool init, bool minimal) { |
| 346 | tsd_t *tsd = tsd_get(init); |
| 347 | |
| 348 | if (!init && tsd_get_allocates() && tsd == NULL) { |
| 349 | return NULL; |
| 350 | } |
| 351 | assert(tsd != NULL); |
| 352 | |
| 353 | if (unlikely(tsd_state_get(tsd) != tsd_state_nominal)) { |
| 354 | return tsd_fetch_slow(tsd, minimal); |
| 355 | } |
| 356 | assert(tsd_fast(tsd)); |
| 357 | tsd_assert_fast(tsd); |
| 358 | |
| 359 | return tsd; |
| 360 | } |
| 361 | |
| 362 | /* Get a minimal TSD that requires no cleanup. See comments in free(). */ |
| 363 | JEMALLOC_ALWAYS_INLINE tsd_t * |
no test coverage detected