[all-commits] [llvm/llvm-project] ff1a4d: [TableGen] Pool duplicate code-emitter base encodi...

David Zbarsky via All-commits all-commits at lists.llvm.org
Wed Jul 15 17:22:16 PDT 2026


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: ff1a4d3c197c6210941caaa639edfa722fc8896c
      https://github.com/llvm/llvm-project/commit/ff1a4d3c197c6210941caaa639edfa722fc8896c
  Author: David Zbarsky <dzbarsky at gmail.com>
  Date:   2026-07-15 (Wed, 15 Jul 2026)

  Changed paths:
    A llvm/test/TableGen/CodeEmitterBaseEncodingPool.td
    M llvm/test/TableGen/HwModeEncodeAPInt.td
    M llvm/utils/TableGen/CodeEmitterGen.cpp

  Log Message:
  -----------
  [TableGen] Pool duplicate code-emitter base encodings (#202619)

Pool duplicate multiword instruction base encodings across the default
encoding table and all hardware-mode encoding tables as unique `APInt`
rows, then emit a pointer-free fixed-width `uint64_t` row table and one
smallest-width opcode-to-row index table per mode. Use the pooled
representation only when the combined values and indices are smaller
than the original tables.

On a Release build, the AMDGPU base-encoding payload shrinks by 440,888
bytes, `llvm-mc` and `llc` each shrink by 445,632 bytes, and the LLVM
driver shrinks by 429,120 bytes.

All 421 TableGen tests passed.

Work towards #202616

AI tool disclosure: Co-authored with OpenAI Codex.



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