[Lldb-commits] [lldb] [lldb/Target] Add SyntheticFrameProvider class (PR #166664)

Med Ismail Bennani via lldb-commits lldb-commits at lists.llvm.org
Wed Nov 5 18:06:17 PST 2025


================
@@ -0,0 +1,133 @@
+
+//===------------------------------------------------------------*- C++ -*-===//
+//
+// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
+// See https://llvm.org/LICENSE.txt for license information.
+// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
+//
+//===----------------------------------------------------------------------===//
+
+#ifndef LLDB_TARGET_SYNTHETICFRAMEPROVIDER_H
+#define LLDB_TARGET_SYNTHETICFRAMEPROVIDER_H
+
+#include "lldb/Core/PluginInterface.h"
+#include "lldb/Target/StackFrameList.h"
+#include "lldb/Target/ThreadSpec.h"
+#include "lldb/Utility/ScriptedMetadata.h"
+#include "lldb/Utility/Status.h"
+#include "lldb/lldb-forward.h"
+#include "llvm/Support/Error.h"
+
+#include <optional>
+#include <vector>
+
+namespace lldb_private {
+
+/// Descriptor for configuring a synthetic frame provider.
+///
+/// This struct contains the metadata needed to instantiate a frame provider
+/// and optional filters to control which threads it applies to.
----------------
medismailben wrote:

Ok, I made a different callback for "native" frame providers that doesn't require SyntheticFrameProviderDescriptor. However I still need this in lldb core since the targets needs to hold them, in case it doesn't have a process (and threads) yet. I left it here but I could move it to Utility next to ScriptedMetadata if you prefer.

https://github.com/llvm/llvm-project/pull/166664


More information about the lldb-commits mailing list