[all-commits] [llvm/llvm-project] 6fcb91: [BOLT] Use opcode name in hashBlock

Amir Ayupov via All-commits all-commits at lists.llvm.org
Mon May 8 18:54:42 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 6fcb91b2f756857f1295a28990738b5b6f924226
      https://github.com/llvm/llvm-project/commit/6fcb91b2f756857f1295a28990738b5b6f924226
  Author: Amir Ayupov <aaupov at fb.com>
  Date:   2023-05-08 (Mon, 08 May 2023)

  Changed paths:
    M bolt/lib/Core/HashUtilities.cpp

  Log Message:
  -----------
  [BOLT] Use opcode name in hashBlock

Use MCInst opcode name instead of opcode value in hashing.

Opcode values are unstable wrt changes to target tablegen definitions,
and we notice that as output mismatches in NFC testing. This makes BOLT YAML
profile tied to a particular LLVM revision which is less portable than
offset-based fdata profile.

Switch to using opcode names which have 1:1 mapping with opcode values for any
given LLVM revision, and are stable wrt modifications to .td files (except of
course modifications to names themselves).

Test Plan:
D150154 is a test commit adding new X86 instruction which shifts opcode values.
With current change, pre-aggregated-perf.test passes in nfc check mode.
Without current change, pre-aggregated-perf.test expectedly fails.

Reviewed By: #bolt, rafauler

Differential Revision: https://reviews.llvm.org/D150005




More information about the All-commits mailing list