First pass at adding 'seergdb --bfs'.

This commit is contained in:
Ernie Pasveer
2023-11-25 09:21:39 -06:00
parent 813acd28cc
commit 49c8cb45e4
8 changed files with 286 additions and 155 deletions
+13
View File
@@ -96,6 +96,9 @@ int main (int argc, char* argv[]) {
QCommandLineOption breakfunctionOption(QStringList() << "bf" << "break-function", "", "breakpointfunction");
parser.addOption(breakfunctionOption);
QCommandLineOption breaksourceOption(QStringList() << "bs" << "break-source", "", "breakpointsource");
parser.addOption(breaksourceOption);
QCommandLineOption showAssemblyTabOption(QStringList() << "sat" << "show-assembly-tab");
parser.addOption(showAssemblyTabOption);
@@ -155,6 +158,7 @@ int main (int argc, char* argv[]) {
QString executableSymbolFilename;
QString executableBreakpointsFilename;
QString executableBreakpointFunctionName;
QString executableBreakpointSourceName;
QString executableShowAssemblyTab;
QString executableStartAddressRandomize;
QString executableNonStopMode;
@@ -186,6 +190,11 @@ int main (int argc, char* argv[]) {
breakMode = "infunction";
}
if (parser.isSet(breakfunctionOption)) {
executableBreakpointSourceName = parser.value(breaksourceOption);
breakMode = "insource";
}
if (parser.isSet(showAssemblyTabOption)) {
executableShowAssemblyTab = parser.value(showAssemblyTabOption);
}
@@ -268,6 +277,10 @@ int main (int argc, char* argv[]) {
seer.setExecutableBreakpointFunctionName(executableBreakpointFunctionName);
}
if (executableBreakpointSourceName != "") {
seer.setExecutableBreakpointSourceName(executableBreakpointSourceName);
}
if (executableShowAssemblyTab != "") {
if (executableShowAssemblyTab == "yes") {
seer.setExecutableShowAssemblyTab(true);