@@ -324,8 +324,7 @@ class HashMappedTrieHandle;
324
324
// / Subtrie layout:
325
325
// / - 2-bytes: StartBit
326
326
// / - 1-bytes: NumBits=lg(num-slots)
327
- // / - 1-bytes: NumUnusedBits=lg(num-slots-unused)
328
- // / - 4-bytes: 0-pad
327
+ // / - 5-bytes: 0-pad
329
328
// / - <slots>
330
329
class SubtrieHandle {
331
330
public:
@@ -336,11 +335,8 @@ class SubtrieHandle {
336
335
// / The number of bits this subtrie handles. It has 2^NumBits slots.
337
336
uint8_t NumBits;
338
337
339
- // / The number of extra bits this allocation *could* handle, due to
340
- // / over-allocation. It has 2^NumUnusedBits unused slots.
341
- uint8_t NumUnusedBits;
342
-
343
338
// / 0-pad to 8B.
339
+ uint8_t ZeroPad1B;
344
340
uint32_t ZeroPad4B;
345
341
};
346
342
@@ -408,11 +404,9 @@ class SubtrieHandle {
408
404
Header &getHeader () const { return *H; }
409
405
uint32_t getStartBit () const { return H->StartBit ; }
410
406
uint32_t getNumBits () const { return H->NumBits ; }
411
- uint32_t getNumUnusedBits () const { return H->NumUnusedBits ; }
412
407
413
408
static Expected<SubtrieHandle> create (MappedFileRegionBumpPtr &Alloc,
414
- uint32_t StartBit, uint32_t NumBits,
415
- uint32_t NumUnusedBits = 0 );
409
+ uint32_t StartBit, uint32_t NumBits);
416
410
417
411
static SubtrieHandle getFromFileOffset (MappedFileRegion &Region,
418
412
FileOffset Offset) {
@@ -558,19 +552,17 @@ struct OnDiskHashMappedTrie::ImplType {
558
552
559
553
Expected<SubtrieHandle> SubtrieHandle::create (MappedFileRegionBumpPtr &Alloc,
560
554
uint32_t StartBit,
561
- uint32_t NumBits,
562
- uint32_t NumUnusedBits) {
555
+ uint32_t NumBits) {
563
556
assert (StartBit <= HashMappedTrieHandle::MaxNumHashBits);
564
557
assert (NumBits <= UINT8_MAX);
565
- assert (NumUnusedBits <= UINT8_MAX);
566
- assert (NumBits + NumUnusedBits <= HashMappedTrieHandle::MaxNumRootBits);
558
+ assert (NumBits <= HashMappedTrieHandle::MaxNumRootBits);
567
559
568
- auto Mem = Alloc.allocate (getSize (NumBits + NumUnusedBits ));
560
+ auto Mem = Alloc.allocate (getSize (NumBits));
569
561
if (LLVM_UNLIKELY (!Mem))
570
562
return Mem.takeError ();
571
563
auto *H =
572
564
new (*Mem) SubtrieHandle::Header{(uint16_t )StartBit, (uint8_t )NumBits,
573
- ( uint8_t )NumUnusedBits , /* ZeroPad4B=*/ 0 };
565
+ /* ZeroPad1B= */ 0 , /* ZeroPad4B=*/ 0 };
574
566
SubtrieHandle S (Alloc.getRegion (), *H);
575
567
for (auto I = S.Slots .begin (), E = S.Slots .end (); I != E; ++I)
576
568
new (I) SlotT (0 );
0 commit comments