diff options
| author | Marco Elver <elver@google.com> | 2025-10-02 12:05:43 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-10-02 12:05:43 +0200 |
| commit | 7ccb5c08f0685d4787f12c3224a72f0650c5865e (patch) | |
| tree | 6c79abda0fee5c2595040319d787cce37a4f5826 /llvm/lib/CodeGen/StackFrameLayoutAnalysisPass.cpp | |
| parent | 3c391877c10b5fea24b4c44cb8631a15d4cb809c (diff) | |
| download | llvm-7ccb5c08f0685d4787f12c3224a72f0650c5865e.zip llvm-7ccb5c08f0685d4787f12c3224a72f0650c5865e.tar.gz llvm-7ccb5c08f0685d4787f12c3224a72f0650c5865e.tar.bz2 | |
Thread Safety Analysis: Optimize LocalVariableMap's canonical reference computation (#161600)
We observed slowdowns in auto-generated million+ line C++ source files
due to recent fixes to LocalVariableMap.
Rather than recompute the canonical underlying non-reference
VarDefinition every time we need to perform variable definition
intersection at CFG merge points, pre-compute the canonical references
once on construction. Ensure to
maintain the invariant that if both the direct and canonical reference
are being invalidated, both become 0.
Reported-by: Bogdan Graur <bgraur@google.com>
Diffstat (limited to 'llvm/lib/CodeGen/StackFrameLayoutAnalysisPass.cpp')
0 files changed, 0 insertions, 0 deletions
