Simplify the representation of `NullableWalker.LocalState` to a `BitVector` (#34769)
Fixes #34766 Previously, every instance of `LocalState` required allocation. Now we use `BitVector`, which stores state information inline in the bits of a primitive. With the previous implementation of `BitVector` (32 bits inline), only about 1.3% of our nullable tests require allocating any memory at all for nullable states. However, I've updated `BitVector` to have 64 bits inline, and now only three of our tests require allocating memory for states. Those three tests heavily exercise tuple conversions.
Showing
想要评论请 注册 或 登录