[PATCH] D131707: [analyzer][NFC] Cache the result of getLocationType in TypedValueRegion

Gábor Horváth via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Mon Aug 15 16:56:00 PDT 2022


xazax.hun added a comment.

In D131707#3724747 <https://reviews.llvm.org/D131707#3724747>, @NoQ wrote:

> So I think the most valuable optimizations are low-level optimizations to `ImmutableMap`. There were a few suggestions on the mailing list to use something more modern than the AVL trees under the hood but I don't think authors found much success with those.

I am not sure how optimized our `ImmutableMap` is, I would not be surprised if there were some small gains here and there. I don't remember the entire discussion, but I think some of the mentioned alternative data structures are:

- Patricia Trees, see C. Okasaki, A. Gill. Fast Mergeable Integer Maps. In Workshop on ML (1998)
- Fingre Trees, see https://en.wikipedia.org/wiki/Finger_tree
- Abandon the concept of trees and implement an immutable HashMap

Just wanted to dump all of this, in case there are some takers :)


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D131707/new/

https://reviews.llvm.org/D131707



More information about the cfe-commits mailing list