[all-commits] [llvm/llvm-project] b8f122: [docs][coroutines] Revamp "Debugging C++ coroutine...

Adrian Vogelsgesang via All-commits all-commits at lists.llvm.org
Sat Jun 28 06:28:17 PDT 2025


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: b8f122812e0ac4f262e98cf2661f4495553791e6
      https://github.com/llvm/llvm-project/commit/b8f122812e0ac4f262e98cf2661f4495553791e6
  Author: Adrian Vogelsgesang <avogelsgesang at salesforce.com>
  Date:   2025-06-28 (Sat, 28 Jun 2025)

  Changed paths:
    M clang/docs/DebuggingCoroutines.rst
    A clang/docs/coro-async-task-continuations.png
    A clang/docs/coro-generator-suspended.png
    A clang/docs/coro-generator-variables.png

  Log Message:
  -----------
  [docs][coroutines] Revamp "Debugging C++ coroutines" (#142651)

This commit is a major overhaul of the documentation on debugging C++
coroutines with the following goals:

* Make it more accessible to casual C++ programmers, i.e. non-toolchain
  developers. Move the low-level details around ABI further down, and
  instead start with real-life examples and copy-paste-friendly code,
  first.
* Cover LLDB in addition to GCC. Provide copy-pasteable scripts for LLDB
  and not only GCC.
* Cover additional topics, such as:
  * single-stepping into a coroutine
  * using `__builtin_return_address` for tracking suspension points
    (inspired by Folly's blog series on coroutine debugging)
* Document LLDB's support for devirtualization of
  `std::coroutine_handle`, both from an end user perspective as well as
  its internal implementation



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