1*0b57cec5SDimitry Andric //===-- SBReproducer.cpp --------------------------------------------------===//
2*0b57cec5SDimitry Andric //
3*0b57cec5SDimitry Andric // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4*0b57cec5SDimitry Andric // See https://llvm.org/LICENSE.txt for license information.
5*0b57cec5SDimitry Andric // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6*0b57cec5SDimitry Andric //
7*0b57cec5SDimitry Andric //===----------------------------------------------------------------------===//
8*0b57cec5SDimitry Andric
9*0b57cec5SDimitry Andric #include "lldb/API/SBReproducer.h"
10*0b57cec5SDimitry Andric #include "lldb/API/LLDB.h"
11*0b57cec5SDimitry Andric #include "lldb/API/SBAddress.h"
12*0b57cec5SDimitry Andric #include "lldb/API/SBAttachInfo.h"
13*0b57cec5SDimitry Andric #include "lldb/API/SBBlock.h"
14*0b57cec5SDimitry Andric #include "lldb/API/SBBreakpoint.h"
15*0b57cec5SDimitry Andric #include "lldb/API/SBCommandInterpreter.h"
16*0b57cec5SDimitry Andric #include "lldb/API/SBCommandInterpreterRunOptions.h"
17*0b57cec5SDimitry Andric #include "lldb/API/SBData.h"
18*0b57cec5SDimitry Andric #include "lldb/API/SBDebugger.h"
19*0b57cec5SDimitry Andric #include "lldb/API/SBDeclaration.h"
20*0b57cec5SDimitry Andric #include "lldb/API/SBError.h"
21*0b57cec5SDimitry Andric #include "lldb/API/SBFileSpec.h"
22*0b57cec5SDimitry Andric #include "lldb/API/SBHostOS.h"
23*0b57cec5SDimitry Andric #include "lldb/Host/FileSystem.h"
24*0b57cec5SDimitry Andric #include "lldb/Utility/Instrumentation.h"
25*0b57cec5SDimitry Andric #include "lldb/Version/Version.h"
26*0b57cec5SDimitry Andric
27*0b57cec5SDimitry Andric using namespace lldb;
28*0b57cec5SDimitry Andric using namespace lldb_private;
29*0b57cec5SDimitry Andric using namespace lldb_private::repro;
30*0b57cec5SDimitry Andric
SBReplayOptions()31*0b57cec5SDimitry Andric SBReplayOptions::SBReplayOptions() {}
32*0b57cec5SDimitry Andric
SBReplayOptions(const SBReplayOptions & rhs)33*0b57cec5SDimitry Andric SBReplayOptions::SBReplayOptions(const SBReplayOptions &rhs) {}
34*0b57cec5SDimitry Andric
35*0b57cec5SDimitry Andric SBReplayOptions::~SBReplayOptions() = default;
36*0b57cec5SDimitry Andric
operator =(const SBReplayOptions & rhs)37*0b57cec5SDimitry Andric SBReplayOptions &SBReplayOptions::operator=(const SBReplayOptions &rhs) {
38*0b57cec5SDimitry Andric LLDB_INSTRUMENT_VA(this, rhs)
39*0b57cec5SDimitry Andric return *this;
40*0b57cec5SDimitry Andric }
41*0b57cec5SDimitry Andric
SetVerify(bool verify)42*0b57cec5SDimitry Andric void SBReplayOptions::SetVerify(bool verify) {
43*0b57cec5SDimitry Andric LLDB_INSTRUMENT_VA(this, verify);
44*0b57cec5SDimitry Andric }
45*0b57cec5SDimitry Andric
GetVerify() const46*0b57cec5SDimitry Andric bool SBReplayOptions::GetVerify() const {
47*0b57cec5SDimitry Andric LLDB_INSTRUMENT_VA(this);
48*0b57cec5SDimitry Andric return false;
49*0b57cec5SDimitry Andric }
50*0b57cec5SDimitry Andric
SetCheckVersion(bool check)51*0b57cec5SDimitry Andric void SBReplayOptions::SetCheckVersion(bool check) {
52*0b57cec5SDimitry Andric LLDB_INSTRUMENT_VA(this, check);
53*0b57cec5SDimitry Andric }
54*0b57cec5SDimitry Andric
GetCheckVersion() const55*0b57cec5SDimitry Andric bool SBReplayOptions::GetCheckVersion() const {
56*0b57cec5SDimitry Andric LLDB_INSTRUMENT_VA(this);
57*0b57cec5SDimitry Andric return false;
58*0b57cec5SDimitry Andric }
59*0b57cec5SDimitry Andric
Capture()60*0b57cec5SDimitry Andric const char *SBReproducer::Capture() {
61*0b57cec5SDimitry Andric LLDB_INSTRUMENT()
62*0b57cec5SDimitry Andric return "Reproducer capture has been removed";
63*0b57cec5SDimitry Andric }
64*0b57cec5SDimitry Andric
Capture(const char * path)65*0b57cec5SDimitry Andric const char *SBReproducer::Capture(const char *path) {
66*0b57cec5SDimitry Andric LLDB_INSTRUMENT_VA(path)
67*0b57cec5SDimitry Andric return "Reproducer capture has been removed";
68*0b57cec5SDimitry Andric }
69*0b57cec5SDimitry Andric
PassiveReplay(const char * path)70*0b57cec5SDimitry Andric const char *SBReproducer::PassiveReplay(const char *path) {
71*0b57cec5SDimitry Andric LLDB_INSTRUMENT_VA(path)
72*0b57cec5SDimitry Andric return "Reproducer replay has been removed";
73*0b57cec5SDimitry Andric }
74*0b57cec5SDimitry Andric
Replay(const char * path)75*0b57cec5SDimitry Andric const char *SBReproducer::Replay(const char *path) {
76*0b57cec5SDimitry Andric LLDB_INSTRUMENT_VA(path)
77*0b57cec5SDimitry Andric return "Reproducer replay has been removed";
78*0b57cec5SDimitry Andric }
79*0b57cec5SDimitry Andric
Replay(const char * path,bool skip_version_check)80*0b57cec5SDimitry Andric const char *SBReproducer::Replay(const char *path, bool skip_version_check) {
81*0b57cec5SDimitry Andric LLDB_INSTRUMENT_VA(path, skip_version_check)
82*0b57cec5SDimitry Andric return "Reproducer replay has been removed";
83*0b57cec5SDimitry Andric }
84*0b57cec5SDimitry Andric
Replay(const char * path,const SBReplayOptions & options)85*0b57cec5SDimitry Andric const char *SBReproducer::Replay(const char *path,
86*0b57cec5SDimitry Andric const SBReplayOptions &options) {
87*0b57cec5SDimitry Andric LLDB_INSTRUMENT_VA(path, options)
88*0b57cec5SDimitry Andric return "Reproducer replay has been removed";
89*0b57cec5SDimitry Andric }
90*0b57cec5SDimitry Andric
Finalize(const char * path)91*0b57cec5SDimitry Andric const char *SBReproducer::Finalize(const char *path) {
92*0b57cec5SDimitry Andric LLDB_INSTRUMENT_VA(path)
93*0b57cec5SDimitry Andric return "Reproducer finalize has been removed";
94*0b57cec5SDimitry Andric }
95*0b57cec5SDimitry Andric
Generate()96*0b57cec5SDimitry Andric bool SBReproducer::Generate() {
97*0b57cec5SDimitry Andric LLDB_INSTRUMENT()
98*0b57cec5SDimitry Andric return false;
99*0b57cec5SDimitry Andric }
100*0b57cec5SDimitry Andric
SetAutoGenerate(bool b)101*0b57cec5SDimitry Andric bool SBReproducer::SetAutoGenerate(bool b) {
102*0b57cec5SDimitry Andric LLDB_INSTRUMENT_VA(b)
103*0b57cec5SDimitry Andric return false;
104*0b57cec5SDimitry Andric }
105*0b57cec5SDimitry Andric
GetPath()106*0b57cec5SDimitry Andric const char *SBReproducer::GetPath() {
107*0b57cec5SDimitry Andric LLDB_INSTRUMENT()
108*0b57cec5SDimitry Andric return "Reproducer GetPath has been removed";
109*0b57cec5SDimitry Andric }
110*0b57cec5SDimitry Andric
SetWorkingDirectory(const char * path)111*0b57cec5SDimitry Andric void SBReproducer::SetWorkingDirectory(const char *path) {
112*0b57cec5SDimitry Andric LLDB_INSTRUMENT_VA(path)
113*0b57cec5SDimitry Andric }
114*0b57cec5SDimitry Andric