| 358 | } |
| 359 | |
| 360 | inline int64_t |
| 361 | dir_to_offset(const Dir *d, const Dir *seg) |
| 362 | { |
| 363 | #if DIR_DEPTH < 5 |
| 364 | return (reinterpret_cast<const char *>(d) - reinterpret_cast<const char *>(seg)) / SIZEOF_DIR; |
| 365 | #else |
| 366 | int64_t i = static_cast<int64_t>((reinterpret_cast<const char *>(d) - reinterpret_cast<const char *>(seg)) / SIZEOF_DIR); |
| 367 | i = i - (i / DIR_DEPTH); |
| 368 | return i; |
| 369 | #endif |
| 370 | } |
| 371 | |
| 372 | inline Dir * |
| 373 | dir_bucket(int64_t b, Dir *seg) |
no outgoing calls