[all-commits] [llvm/llvm-project] 3b4f9c: [NFC][KeyInstr] Add Atom Group (re)mapping (#133479)

Orlando Cazalet-Hyams via All-commits all-commits at lists.llvm.org
Tue May 6 05:04:31 PDT 2025


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 3b4f9c544274392198de084b84a5f2e5506e4703
      https://github.com/llvm/llvm-project/commit/3b4f9c544274392198de084b84a5f2e5506e4703
  Author: Orlando Cazalet-Hyams <orlando.hyams at sony.com>
  Date:   2025-05-06 (Tue, 06 May 2025)

  Changed paths:
    M llvm/include/llvm/IR/ValueMap.h
    M llvm/include/llvm/Transforms/Utils/Cloning.h
    M llvm/include/llvm/Transforms/Utils/ValueMapper.h
    M llvm/lib/Transforms/Utils/CloneFunction.cpp
    M llvm/lib/Transforms/Utils/ValueMapper.cpp
    M llvm/unittests/Transforms/Utils/CloningTest.cpp

  Log Message:
  -----------
  [NFC][KeyInstr] Add Atom Group (re)mapping (#133479)

Add:
mapAtomInstance - map the atom group number to a new group.
RemapSourceAtom - apply the mapped atom group number to this instruction.

Modify:
CloneBasicBlock - Call mapAtomInstance on cloned instruction's DebugLocs
if MapAtoms is true (default). Setting to false could
lead to a degraded debugging experience. See code comment.

Optimisations like loop unroll that duplicate instructions need to remap source
atom groups so that each duplicated source construct instance is considered
distinct when determining is_stmt locations.

This commit adds the remapping functionality and a unittest.

RFC:
https://discourse.llvm.org/t/rfc-improving-is-stmt-placement-for-better-interactive-debugging/82668



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