[all-commits] [llvm/llvm-project] 6bd33d: [Option] Shrink Info from 24 to 16 bytes (#227582)

Fangrui Song via All-commits all-commits at lists.llvm.org
Wed Sep 30 10:31:24 PDT 2026


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 6bd33ddfc3cc0cb2278b7f30d349b38475a3e607
      https://github.com/llvm/llvm-project/commit/6bd33ddfc3cc0cb2278b7f30d349b38475a3e607
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-09-30 (Wed, 30 Sep 2026)

  Changed paths:
    M llvm/include/llvm/Option/OptTable.h
    M llvm/include/llvm/Option/Option.h
    M llvm/lib/Option/OptTable.cpp
    M llvm/utils/TableGen/OptionParserEmitter.cpp

  Log Message:
  -----------
  [Option] Shrink Info from 24 to 16 bytes (#227582)

Move Flags, Visibility, and Param (getNumArgs() for `MultiArg`) into
`InfoExtra` and narrow `PrefixesOffset` to 8 bits. Outside clang, Flags
and Visibility take a handful of values per table; clang has 436
distinct InfoExtra rows for 3871 options.

clang's Info and InfoExtra tables shrink from 96,968 to 72,400 bytes.

LLM-aided



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