aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/CodeGen/MachineScheduler.cpp
diff options
context:
space:
mode:
authorKazu Hirata <kazu@google.com>2024-08-29 09:45:19 -0700
committerGitHub <noreply@github.com>2024-08-29 09:45:19 -0700
commitbd6531b9508624df83f84d9bc687a7339df452e9 (patch)
treefa4cdd7cac94cf37119b64943fa741eb8bc236ef /llvm/lib/CodeGen/MachineScheduler.cpp
parenta777a93118a0ca71e19ac764a57a94f1be227dbb (diff)
downloadllvm-bd6531b9508624df83f84d9bc687a7339df452e9.zip
llvm-bd6531b9508624df83f84d9bc687a7339df452e9.tar.gz
llvm-bd6531b9508624df83f84d9bc687a7339df452e9.tar.bz2
[LTO] Introduce a new class ImportIDTable (#106503)
The new class implements a deduplication table to convert import list elements: {SourceModule, GUID, Definition/Declaration} into 32-bit integers, and vice versa. This patch adds a unit test but does not add a use yet. To be precise, the deduplication table holds {SourceModule, GUID} pairs. We use the bottom one bit of the 32-bit integers to indicate whether we have a definition or declaration. A subsequent patch will collapse the import list hierarchy -- FunctionsToImportTy holding many instances of FunctionsToImportTy -- down to DenseSet<uint32_t> with each element indexing into the deduplication table above. This will address multiple sources of space inefficiency.
Diffstat (limited to 'llvm/lib/CodeGen/MachineScheduler.cpp')
0 files changed, 0 insertions, 0 deletions