You've already forked linux-packaging-mono
							
							
		
			
	
	
		
			49 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
		
		
			
		
	
	
			49 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
|   | //===-- HistoryUnwind.h -----------------------------------------*- C++ -*-===//
 | ||
|  | //
 | ||
|  | //                     The LLVM Compiler Infrastructure
 | ||
|  | //
 | ||
|  | // This file is distributed under the University of Illinois Open Source
 | ||
|  | // License. See LICENSE.TXT for details.
 | ||
|  | //
 | ||
|  | //===----------------------------------------------------------------------===//
 | ||
|  | 
 | ||
|  | #ifndef liblldb_HistoryUnwind_h_
 | ||
|  | #define liblldb_HistoryUnwind_h_
 | ||
|  | 
 | ||
|  | // C Includes
 | ||
|  | // C++ Includes
 | ||
|  | #include <vector>
 | ||
|  | 
 | ||
|  | // Other libraries and framework includes
 | ||
|  | // Project includes
 | ||
|  | #include "lldb/Target/Unwind.h"
 | ||
|  | #include "lldb/lldb-private.h"
 | ||
|  | 
 | ||
|  | namespace lldb_private { | ||
|  | 
 | ||
|  | class HistoryUnwind : public lldb_private::Unwind { | ||
|  | public: | ||
|  |   HistoryUnwind(Thread &thread, std::vector<lldb::addr_t> pcs, | ||
|  |                 bool stop_id_is_valid); | ||
|  | 
 | ||
|  |   ~HistoryUnwind() override; | ||
|  | 
 | ||
|  | protected: | ||
|  |   void DoClear() override; | ||
|  | 
 | ||
|  |   lldb::RegisterContextSP | ||
|  |   DoCreateRegisterContextForFrame(StackFrame *frame) override; | ||
|  | 
 | ||
|  |   bool DoGetFrameInfoAtIndex(uint32_t frame_idx, lldb::addr_t &cfa, | ||
|  |                              lldb::addr_t &pc) override; | ||
|  |   uint32_t DoGetFrameCount() override; | ||
|  | 
 | ||
|  | private: | ||
|  |   std::vector<lldb::addr_t> m_pcs; | ||
|  |   bool m_stop_id_is_valid; | ||
|  | }; | ||
|  | 
 | ||
|  | } // namespace lldb_private
 | ||
|  | 
 | ||
|  | #endif // liblldb_HistoryUnwind_h_
 |