[all-commits] [llvm/llvm-project] adabdc: Use an abbrev to reduce size of VALUE_GUID records...

Jan Voung via All-commits all-commits at lists.llvm.org
Tue Apr 30 06:26:31 PDT 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: adabdc12f995b0af74c866201899e738796d0d5e
      https://github.com/llvm/llvm-project/commit/adabdc12f995b0af74c866201899e738796d0d5e
  Author: Jan Voung <jvoung at gmail.com>
  Date:   2024-04-30 (Tue, 30 Apr 2024)

  Changed paths:
    M llvm/include/llvm/IR/ModuleSummaryIndex.h
    M llvm/lib/Bitcode/Reader/BitcodeReader.cpp
    M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
    M llvm/test/Assembler/thinlto-summary.ll
    M llvm/test/Bitcode/summary_version.ll
    M llvm/test/Bitcode/thinlto-alias.ll
    M llvm/test/Bitcode/thinlto-func-summary-vtableref-pgo.ll
    M llvm/test/Bitcode/thinlto-function-summary-callgraph-partial-sample-profile-summary.ll
    M llvm/test/Bitcode/thinlto-function-summary-callgraph-pgo.ll
    M llvm/test/Bitcode/thinlto-function-summary-callgraph-profile-summary.ll
    M llvm/test/Bitcode/thinlto-function-summary-callgraph-sample-profile-summary.ll
    M llvm/test/Bitcode/thinlto-function-summary-callgraph.ll
    M llvm/test/Bitcode/thinlto-function-summary-originalnames.ll
    M llvm/test/Bitcode/thinlto-function-summary-paramaccess.ll
    M llvm/test/ThinLTO/X86/distributed_indexes.ll
    M llvm/test/tools/llvm-lto/thinlto.ll

  Log Message:
  -----------
  Use an abbrev to reduce size of VALUE_GUID records in ThinLTO summaries (#90497)

GUID often have content in the higher bits of a 64-bit entry so using
the unabbrev encoding is inefficient (lots of VBR control bits).
Instead, use an abbrev with two 32-bit fixed width chunks.
The abbrev also helps encode the "count" in one place instead of
in every record.

Reduces size of distributed backend summary files by 8.7% in one
example app.

Co-authored-by: Jan Voung <jvoung at google.com>



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list