1*8244fc50SMichał Górny //===-- NativeProcessSoftwareSingleStep.h -----------------------*- C++ -*-===//
2*8244fc50SMichał Górny //
3*8244fc50SMichał Górny // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4*8244fc50SMichał Górny // See https://llvm.org/LICENSE.txt for license information.
5*8244fc50SMichał Górny // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6*8244fc50SMichał Górny //
7*8244fc50SMichał Górny //===----------------------------------------------------------------------===//
8*8244fc50SMichał Górny 
9*8244fc50SMichał Górny #ifndef lldb_NativeProcessSoftwareSingleStep_h
10*8244fc50SMichał Górny #define lldb_NativeProcessSoftwareSingleStep_h
11*8244fc50SMichał Górny 
12*8244fc50SMichał Górny #include "lldb/Host/common/NativeProcessProtocol.h"
13*8244fc50SMichał Górny #include "lldb/Host/common/NativeThreadProtocol.h"
14*8244fc50SMichał Górny 
15*8244fc50SMichał Górny #include <map>
16*8244fc50SMichał Górny 
17*8244fc50SMichał Górny namespace lldb_private {
18*8244fc50SMichał Górny 
19*8244fc50SMichał Górny class NativeProcessSoftwareSingleStep {
20*8244fc50SMichał Górny public:
21*8244fc50SMichał Górny   Status SetupSoftwareSingleStepping(NativeThreadProtocol &thread);
22*8244fc50SMichał Górny 
23*8244fc50SMichał Górny protected:
24*8244fc50SMichał Górny   // List of thread ids stepping with a breakpoint with the address of
25*8244fc50SMichał Górny   // the relevan breakpoint
26*8244fc50SMichał Górny   std::map<lldb::tid_t, lldb::addr_t> m_threads_stepping_with_breakpoint;
27*8244fc50SMichał Górny };
28*8244fc50SMichał Górny 
29*8244fc50SMichał Górny } // namespace lldb_private
30*8244fc50SMichał Górny 
31*8244fc50SMichał Górny #endif // #ifndef lldb_NativeProcessSoftwareSingleStep_h
32