diff options
author | Jeremy Morse <jeremy.morse@sony.com> | 2025-07-06 22:30:31 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2025-07-06 22:30:31 +0100 |
commit | 51f4e2cda2b3af853734b83aa523063afdd7bd46 (patch) | |
tree | 2b27cff742678e0a0e18e5c5c60e0efa23af4ce9 /llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp | |
parent | 5ccbea9f480d5c387c7f21aa101e72774c91f1d3 (diff) | |
download | llvm-51f4e2cda2b3af853734b83aa523063afdd7bd46.zip llvm-51f4e2cda2b3af853734b83aa523063afdd7bd46.tar.gz llvm-51f4e2cda2b3af853734b83aa523063afdd7bd46.tar.bz2 |
[Bitcode][NFC] Add abbrev for FUNC_CODE_DEBUG_LOC (#147211)
DILocations that are not attached to instructions are encoded using
METADATA_LOCATION records which have an abbrev. DILocations attached to
instructions are interleaved with instruction records as FUNC_CODE_DEBUG_LOC
records, which do not have an abbrev (and FUNC_CODE_DEBUG_LOC_AGAIN
which have no operands).
Add a new FUNCTION_BLOCK abbrev FUNCTION_DEBUG_LOC_ABBREV for
FUNC_CODE_DEBUG_LOC records.
This reduces the bc file size by up to 7% in CTMark, with many between 2-4%
smaller.
[per-file file size
compile-time-tracker](https://llvm-compile-time-tracker.com/compare.php?from=75cf826849713c00829cdf657e330e24c1a2fd03&to=1e268ebd0a581016660d9d7e942495c1be041f7d&stat=size-file&details=on)
(go to stage1-ReleaseLTO-g).
This optimisation is motivated by #144102, which adds the new Key Instructions
fields to bitcode records. The combined patches still overall look to be a
slight improvement over the base.
(Originally reviewed in PR #146497)
Co-authored-by: Orlando Cazalet-Hyams <orlando.hyams@sony.com>
Diffstat (limited to 'llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp')
0 files changed, 0 insertions, 0 deletions