[all-commits] [llvm/llvm-project] fb7028: [MC] Move some bool members to MCFragment. NFC

Fangrui Song via All-commits all-commits at lists.llvm.org
Mon Jul 29 11:52:14 PDT 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: fb7028237bac1dccd328b6c3150e50e222a0879b
      https://github.com/llvm/llvm-project/commit/fb7028237bac1dccd328b6c3150e50e222a0879b
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M llvm/include/llvm/MC/MCFragment.h
    M llvm/lib/MC/MCFragment.cpp

  Log Message:
  -----------
  [MC] Move some bool members to MCFragment. NFC

Move `AllowAutoPadding` to MCFragment, which reduce the
MCRelaxableFragment size by 8 bytes. While here, also move
`AlignToBundleEnd` next to `HasInstructions`. Functions that create
fragments are slightly shorter due to fewer byte zeroing instructions.

Although fewer in number than MCDataFragments, MCRelaxableFragment
objects still constitute a significant proportion warranting
optimization.
```
% clang -c sqlite3.i -w -g -Xclang -print-stats
...
   2206 assembler             - Number of emitted assembler fragments - align
  83980 assembler             - Number of emitted assembler fragments - data
     84 assembler             - Number of emitted assembler fragments - fill
 169462 assembler             - Number of emitted assembler fragments - total
  11396 assembler             - Number of emitted assembler fragments - relaxable
```

Pull Request: https://github.com/llvm/llvm-project/pull/100976



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