[all-commits] [llvm/llvm-project] 0544ae: [KeyInstr][Clang] Add ApplyAtomGroup

Orlando Cazalet-Hyams via All-commits all-commits at lists.llvm.org
Thu May 15 03:11:44 PDT 2025


  Branch: refs/heads/users/OCHyams/ki-clang-scoped-setter
  Home:   https://github.com/llvm/llvm-project
  Commit: 0544aed12dd76bd64c42ce186c586702d3e01589
      https://github.com/llvm/llvm-project/commit/0544aed12dd76bd64c42ce186c586702d3e01589
  Author: Orlando Cazalet-Hyams <orlando.hyams at sony.com>
  Date:   2025-05-15 (Thu, 15 May 2025)

  Changed paths:
    M clang/lib/CodeGen/CGDebugInfo.cpp
    M clang/lib/CodeGen/CGDebugInfo.h
    M clang/lib/CodeGen/CodeGenFunction.h

  Log Message:
  -----------
  [KeyInstr][Clang] Add ApplyAtomGroup

This is a scoped helper similar to ApplyDebugLocation that creates a new source
atom group which instructions can be added to.

A source atom is a source construct that is "interesting" for debug stepping
purposes. We use an atom group number to track the instruction(s) that implement
the functionality for the atom, plus backup instructions/source locations.

---

This patch is part of a stack that teaches Clang to generate Key Instructions
metadata for C and C++.

The Key Instructions project is introduced, including a "quick summary" section
at the top which adds context for this PR, here:
https://discourse.llvm.org/t/rfc-improving-is-stmt-placement-for-better-interactive-debugging/82668

The feature is only functional in LLVM if LLVM is built with CMake flag
LLVM_EXPERIMENTAL_KEY_INSTRUCTIONs. Eventually that flag will be removed.

The Clang-side work is demoed here:
https://github.com/llvm/llvm-project/pull/130943



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