On Wed, Oct 5, 2022 at 12:14 PM Aldy Hernandez wrote: > However... I don't think I have the stomach to overhaul the allocators > this late in the release. For this release I may opt to put the > nonzero mask back in a tree, but have it always be set. The NULL == > -1 shortcut was very error prone. The rest of my fixes in this patch > still apply, as they keep better track of the masks, which we need. Here is the patch reverting the nonzero mask to trees. Unfortunately, having the mask always set caused a 10% regression in VRP, so that's a no go. I've gone back to keeping a NULL mask by default that semantically means -1. It's not as bad as I thought, since the code is much cleaner now. This is unfortunate, but a 10% regression in VRP plus a 1.5% regression in overall compilation is unacceptable. On the plus side, this is temporary as we're moving entirely to wide ints next release (with appropriate cache/allocator changes). I will commit after a final round of tests finishes. Thanks. Aldy