This is an archive of the discontinued LLVM Phabricator instance.

[SanitizerBinaryMetadata] Emit constants as ULEB128
ClosedPublic

Authored by melver on Feb 7 2023, 2:11 AM.

Details

Summary

Emit all constant integers produced by SanitizerBinaryMetadata as
ULEB128 to further reduce binary space used. Increasing the version is
not necessary given this change depends on (and will land) along with
the bump to v2.

To support this, the !pcsections metadata format is extended to allow
for per-section options, encoded in the first MD operator which must
always be a string and contain the section: "<section>!<options>".

Depends on D143482

Diff Detail

Event Timeline

melver created this revision.Feb 7 2023, 2:11 AM
Herald added a project: Restricted Project. · View Herald TranscriptFeb 7 2023, 2:11 AM
melver requested review of this revision.Feb 7 2023, 2:11 AM
Herald added projects: Restricted Project, Restricted Project, Restricted Project. · View Herald TranscriptFeb 7 2023, 2:11 AM
Herald added subscribers: llvm-commits, Restricted Project, cfe-commits. · View Herald Transcript
melver updated this revision to Diff 495442.Feb 7 2023, 2:31 AM

Move AsmPrinter LEB128 helpers to AsmPrinter.cpp and use them.

dvyukov accepted this revision.Feb 8 2023, 2:14 AM
This revision is now accepted and ready to land.Feb 8 2023, 2:14 AM
This revision was automatically updated to reflect the committed changes.