Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
FSharp.Compiler.Service: update tagged collections with new implement…
…ation from FSharp.Core (#10192) Copied implementation from FSharp.Core Differences are: * TaggedCollections used fat leaves (Left/Right/Height present always). There are 2xN objects in the tree, of which N are leaves. Fat leaves give 20 (24 aligned) x N. More memory, worse memory locality, more GC are not good for perf. * TaggedCollections did not use optimized closures. Not sure if they are useful, but in many cases it's noop if f' was already in the right shape. Copying the source opens the possibility to move MapTree and SetTree code to separate files and reuse a single implementation in both places.
- Loading branch information