From 836325e74b97f8cef4b5207e46263426418ce010 Mon Sep 17 00:00:00 2001 From: Horst Schirmeier Date: Tue, 11 Feb 2014 15:27:32 +0100 Subject: [PATCH] generic-tracing: cleanups Change-Id: I5c3d1131248910228cb4fee44cf107c750c01e21 --- src/experiments/generic-tracing/experiment.cc | 59 ++++++++++--------- .../generic-tracing/experiment.hpp | 4 +- 2 files changed, 31 insertions(+), 32 deletions(-) diff --git a/src/experiments/generic-tracing/experiment.cc b/src/experiments/generic-tracing/experiment.cc index 5d7b0619..4bf78f7f 100644 --- a/src/experiments/generic-tracing/experiment.cc +++ b/src/experiments/generic-tracing/experiment.cc @@ -25,26 +25,26 @@ void GenericTracing::parseOptions() { cmd.addOption("", "", Arg::None, "USAGE: fail-client -Wf,[option] -Wf,[option] ... \n\n"); CommandLine::option_handle HELP = cmd.addOption("h", "help", Arg::None, "-h,--help \tPrint usage and exit"); - CommandLine::option_handle ELF_FILE = cmd.addOption("", "elf-file", Arg::Required, - "--elf-file \tELF Binary File (default: $FAIL_ELF_PATH)"); + "--elf-file \tELF Binary File (default: $FAIL_ELF_PATH)"); CommandLine::option_handle START_SYMBOL = cmd.addOption("s", "start-symbol", Arg::Required, - "-s,--start-symbol \tELF symbol to start tracing (default: main)"); + "-s,--start-symbol \tELF symbol to start tracing (default: main)"); CommandLine::option_handle STOP_SYMBOL = cmd.addOption("e", "end-symbol", Arg::Required, - "-e,--end-symbol \tELF symbol to end tracing"); + "-e,--end-symbol \tELF symbol to end tracing"); CommandLine::option_handle SAVE_SYMBOL = cmd.addOption("S", "save-symbol", Arg::Required, - "-S,--save-symbol \tELF symbol to save the state of the machine (default: main)\n"); + "-S,--save-symbol \tELF symbol to save the state of the machine (default: main)\n"); CommandLine::option_handle STATE_FILE = cmd.addOption("f", "state-file", Arg::Required, - "-f,--state-file \tFile/dir to save the state to (default: state)"); + "-f,--state-file \tFile/dir to save the state to (default: state)"); CommandLine::option_handle TRACE_FILE = cmd.addOption("t", "trace-file", Arg::Required, - "-t,--trace-file \tFile to save the execution trace to (default: trace.pb)\n"); + "-t,--trace-file \tFile to save the execution trace to (default: trace.pb)\n"); - CommandLine::option_handle FULL_TRACE = cmd.addOption("", "full-trace", Arg::None, "--full-trace \tDo a full trace (more data, default: off)"); + CommandLine::option_handle FULL_TRACE = cmd.addOption("", "full-trace", Arg::None, + "--full-trace \tDo a full trace (more data, default: off)"); CommandLine::option_handle MEM_SYMBOL = cmd.addOption("m", "memory-symbol", Arg::Required, - "-m,--memory-symbol \tELF symbol(s) to trace accesses (default: all mem read/writes are traced)"); + "-m,--memory-symbol \tELF symbol(s) to trace accesses (default: all mem read/writes are traced)"); CommandLine::option_handle MEM_REGION = cmd.addOption("M", "memory-region", Arg::Required, - "-M,--memory-region \trestrict memory region which is traced" - " (Possible formats: 0x
, 0x
:0x
, 0x
:)"); + "-M,--memory-region \trestrict memory region which is traced" + " (Possible formats: 0x
, 0x
:0x
, 0x
:)"); if (!cmd.parse()) { cerr << "Error parsing arguments." << endl; @@ -56,10 +56,10 @@ void GenericTracing::parseOptions() { exit(0); } - if (cmd[ELF_FILE].count() > 0) + if (cmd[ELF_FILE]) { elf_file = cmd[ELF_FILE].first()->arg; - else { - char * elfpath = getenv("FAIL_ELF_PATH"); + } else { + char *elfpath = getenv("FAIL_ELF_PATH"); if (elfpath == NULL) { m_log << "FAIL_ELF_PATH not set :( (alternative: --elf-file) " << std::endl; exit(-1); @@ -69,36 +69,40 @@ void GenericTracing::parseOptions() { } m_elf = new ElfReader(elf_file.c_str()); - if (cmd[START_SYMBOL].count() > 0) + if (cmd[START_SYMBOL]) { start_symbol = cmd[START_SYMBOL].first()->arg; - else + } else { start_symbol = "main"; + } - if (cmd[STOP_SYMBOL].count() > 0) + if (cmd[STOP_SYMBOL]) { stop_symbol = std::string(cmd[STOP_SYMBOL].first()->arg); - else { + } else { m_log << "You have to give an end symbol (-e,--end-symbol)!" << std::endl; exit(EXIT_FAILURE); } - if (cmd[SAVE_SYMBOL].count() > 0) + if (cmd[SAVE_SYMBOL]) { save_symbol = std::string(cmd[SAVE_SYMBOL].first()->arg); - else + } else { save_symbol = "main"; + } - if (cmd[STATE_FILE].count() > 0) + if (cmd[STATE_FILE]) { state_file = std::string(cmd[STATE_FILE].first()->arg); - else + } else { state_file = "state"; + } - if (cmd[TRACE_FILE].count() > 0) + if (cmd[TRACE_FILE]) { trace_file = std::string(cmd[TRACE_FILE].first()->arg); - else + } else { trace_file = "trace.pb"; + } use_memory_map = false; - if (cmd[MEM_SYMBOL].count() > 0) { + if (cmd[MEM_SYMBOL]) { use_memory_map = true; option::Option *opt = cmd[MEM_SYMBOL].first(); @@ -114,7 +118,7 @@ void GenericTracing::parseOptions() { } } - if (cmd[MEM_REGION].count() > 0) { + if (cmd[MEM_REGION]) { use_memory_map = true; option::Option *opt = cmd[MEM_REGION].first(); @@ -173,8 +177,6 @@ void GenericTracing::parseOptions() { m_log << "state file: " << state_file << std::endl; m_log << "trace file: " << trace_file << std::endl; m_log << "full-trace: " << this->full_trace << std::endl; - - } bool GenericTracing::run() @@ -217,7 +219,6 @@ bool GenericTracing::run() m_log << start_symbol << " reached, save state" << std::endl; simulator.save(state_file); - //////////////////////////////////////////////////////////////// // Step 3: Continue to the stop point simulator.addListener(&l_stop_symbol); diff --git a/src/experiments/generic-tracing/experiment.hpp b/src/experiments/generic-tracing/experiment.hpp index 6c08d12f..ebae4fc7 100644 --- a/src/experiments/generic-tracing/experiment.hpp +++ b/src/experiments/generic-tracing/experiment.hpp @@ -8,8 +8,6 @@ #include #include - - class GenericTracing : public fail::ExperimentFlow { std::string start_symbol; std::string stop_symbol; @@ -31,7 +29,7 @@ public: void parseOptions(); bool run(); - GenericTracing() : full_trace(false), m_log("GenericTracing", false) {}; + GenericTracing() : full_trace(false), m_log("GenericTracing", false) {} }; #endif // __TRACING_TEST_HPP__