aboutsummaryrefslogtreecommitdiff
path: root/clang/lib/ExtractAPI/Serialization/SymbolGraphSerializer.cpp
diff options
context:
space:
mode:
authorTeresa Johnson <tejohnson@google.com>2024-06-06 11:04:45 -0700
committerGitHub <noreply@github.com>2024-06-06 11:04:45 -0700
commit9eac38a000d510e9b162d6996816ef298019b553 (patch)
treea52709f4453ee7dd6711b9044ad1190a96e70895 /clang/lib/ExtractAPI/Serialization/SymbolGraphSerializer.cpp
parent3a95c688cc427b2971cb69abb9bd322b5a449fb4 (diff)
downloadllvm-9eac38a000d510e9b162d6996816ef298019b553.zip
llvm-9eac38a000d510e9b162d6996816ef298019b553.tar.gz
llvm-9eac38a000d510e9b162d6996816ef298019b553.tar.bz2
[MemProf] Remove context id set from nodes and recompute on demand (#94415)
The ContextIds set on the ContextNode struct is not technically needed as we can compute it from either the callee or caller edge context ids. Remove it and add a helper to recompute from the edges on demand. Also add helpers to compute the node allocation type and whether the context ids are empty from the edges without needing to first compute the node's context id set, to minimize the runtime cost increase. This yielded a 20% reduction in peak memory for a large thin link, for about a 2% time increase (which is more than offset by some other recent time efficiency improvements).
Diffstat (limited to 'clang/lib/ExtractAPI/Serialization/SymbolGraphSerializer.cpp')
0 files changed, 0 insertions, 0 deletions