ROSE 0.11.145.272
|
Settings that control unparsing.
This struct holds all settings that control the output of the binary instruction unparser. Particular subclasses of the basic unparser may have settings that derive from these base settings. The commandLineSwitches function can be used to control these settings from a command-line.
Definition at line 37 of file Unparser/Settings.h.
#include <Rose/BinaryAnalysis/Unparser/Settings.h>
Static Public Member Functions | |
static Settings | full () |
static Settings | minimal () |
Public Attributes | ||
Color::Colorization | colorization | |
Overrides for global color settings. | ||
struct { | ||
struct { | ||
Style style | ||
} line | ||
Comment occupying an entire line. | ||
struct { | ||
Style style | ||
} trailing | ||
Comment extending to the end of the line. | ||
} | comment | |
struct { | ||
Style separatorStyle | ||
Style of the line separating functions. More... | ||
Style titleStyle | ||
Style for title line of function. More... | ||
bool showingSourceLocation | ||
Show source file name and line number when available. More... | ||
bool showingReasons | ||
Show reasons for function existing. More... | ||
bool showingDemangled | ||
Show demangled name in preference to mangled name. More... | ||
struct { | ||
bool showing | ||
Show function call graph? More... | ||
} cg | ||
Settings for function call graphs. | ||
struct { | ||
bool showing | ||
Show stack delta? More... | ||
bool concrete | ||
Show concrete or symbolic deltas. More... | ||
} stackDelta | ||
Settings for function stack deltas. | ||
struct { | ||
bool showing | ||
Show calling convention? More... | ||
} callconv | ||
Settings for function calling convention. | ||
struct { | ||
bool showing | ||
Show no-op analysis results? More... | ||
} noop | ||
Settings for no-op analysis. | ||
struct { | ||
bool showing | ||
Show results of may-return analysis? More... | ||
} mayReturn | ||
Settings for may-return analysis. | ||
} | function | |
Settings for functions. | ||
struct { | ||
bool showingSourceLocation | ||
Show source file name and line number when available. More... | ||
struct { | ||
bool showingPredecessors | ||
Show basic block predecessors? More... | ||
bool showingSuccessors | ||
Show basic block successors? More... | ||
bool showingSharing | ||
Show functions when block is shared? More... | ||
bool showingArrows | ||
Draw arrows from one block to another. More... | ||
Style arrowStyle | ||
Arrow style. More... | ||
bool showingNormalFallThroughEdges | ||
Show normal fall through edges from one block to the next. More... | ||
bool showingCallReturnFallThroughEdges | ||
Show call-return fall through edges from one block to the next. More... | ||
} cfg | ||
Settings for control flow graphs. | ||
struct { | ||
bool showingReachability | ||
Show code reachability in the basic block prologue area. More... | ||
} reach | ||
Reachability analysis results. | ||
bool showingPostBlock | ||
Show info about what happens after the last instruction. More... | ||
} | bblock | |
Settings for basic blocks. | ||
struct { | ||
bool showingSourceLocation | ||
Show source file ane line number when available. More... | ||
} | dblock | |
struct { | ||
struct { | ||
bool showing | ||
Show instruction addresses or labels? More... | ||
bool useLabels | ||
Generate labels and use them instead of addresses? More... | ||
size_t fieldWidth | ||
Min characters to use per insn address. More... | ||
Style style | ||
Style for printing the address. More... | ||
} address | ||
Settings for instruction starting addresses. | ||
struct { | ||
bool showing | ||
Show instruction bytes? More... | ||
size_t perLine | ||
Max number of bytes to show per line of output. More... | ||
size_t fieldWidth | ||
Min characters to use for the bytes field. More... | ||
Style style | ||
Style for printing the insn bytes. More... | ||
} bytes | ||
Settings for the bytes that make up an instruction. | ||
struct { | ||
bool showing | ||
Show stack deltas? More... | ||
size_t fieldWidth | ||
Min characters to use for the stack delta field. More... | ||
Style style | ||
Style for the stack delta. More... | ||
} stackDelta | ||
Settings for stack deltas. | ||
struct { | ||
bool showing | ||
Show frame pointer w.r.t. More... | ||
size_t fieldWidth | ||
Min characters to use for the frame delta field. More... | ||
Style style | ||
Style for the frame delta. More... | ||
} frameDelta | ||
Settings for frame deltas. | ||
struct { | ||
size_t fieldWidth | ||
Min characters to use for the instruction mnemonic. More... | ||
std::string semanticFailureMarker | ||
Mark instruction if it had semantic failures. More... | ||
Style semanticFailureStyle | ||
Style for the semantic failure indicator. More... | ||
Style style | ||
Style for mnemonic. More... | ||
} mnemonic | ||
Settings for instruction mnemonics. | ||
struct { | ||
std::string separator | ||
How to separate one operand from another. More... | ||
size_t fieldWidth | ||
Min characters to use for the operand list. More... | ||
bool showingWidth | ||
Show width of all expression terms in square brackets. More... | ||
Style style | ||
Output style for instruction operands. More... | ||
} operands | ||
Settings for the operand list. | ||
struct { | ||
bool showing | ||
Show instruction comments? More... | ||
bool usingDescription | ||
Lacking comment, use instruction description as comment? More... | ||
std::string pre | ||
String to introduce a comment. More... | ||
std::string post | ||
String to terminate a comment. More... | ||
size_t fieldWidth | ||
Min characters to use for the comment field. More... | ||
} comment | ||
Settings for instruction comments. | ||
struct { | ||
bool showing | ||
Show instruction semantics? More... | ||
InstructionSemantics::BaseSemantics::Formatter formatter | ||
How to format the semantic state output. More... | ||
bool tracing | ||
Show instruction semantics traces when showing semantics. More... | ||
Style style | ||
Style for showing instruction semantics. More... | ||
} semantics | ||
} | insn | |
Settings for instructions. | ||
struct { | ||
EdgeArrows::ArrowStylePreset style | ||
One of the arrow style presets. More... | ||
} | arrow | |
How to render arrows along the left margin. | ||
std::string | linePrefix | |
|
inlinevirtual |
Definition at line 38 of file Unparser/Settings.h.
Color::Colorization Rose::BinaryAnalysis::Unparser::Settings::colorization |
Overrides for global color settings.
Definition at line 40 of file Unparser/Settings.h.
Style Rose::BinaryAnalysis::Unparser::Settings::style |
Style Rose::BinaryAnalysis::Unparser::Settings::separatorStyle |
Style of the line separating functions.
Definition at line 52 of file Unparser/Settings.h.
Style Rose::BinaryAnalysis::Unparser::Settings::titleStyle |
Style for title line of function.
Definition at line 53 of file Unparser/Settings.h.
bool Rose::BinaryAnalysis::Unparser::Settings::showingSourceLocation |
Show source file name and line number when available.
Show source file ane line number when available.
Definition at line 54 of file Unparser/Settings.h.
bool Rose::BinaryAnalysis::Unparser::Settings::showingReasons |
Show reasons for function existing.
Definition at line 55 of file Unparser/Settings.h.
bool Rose::BinaryAnalysis::Unparser::Settings::showingDemangled |
Show demangled name in preference to mangled name.
Definition at line 56 of file Unparser/Settings.h.
bool Rose::BinaryAnalysis::Unparser::Settings::showing |
Show function call graph?
Show instruction semantics?
Show instruction comments?
Show frame pointer w.r.t.
Show stack deltas?
Show instruction bytes?
Show instruction addresses or labels?
Show results of may-return analysis?
Show no-op analysis results?
Show calling convention?
Show stack delta?
stack pointer.
Definition at line 58 of file Unparser/Settings.h.
bool Rose::BinaryAnalysis::Unparser::Settings::concrete |
Show concrete or symbolic deltas.
Definition at line 62 of file Unparser/Settings.h.
bool Rose::BinaryAnalysis::Unparser::Settings::showingPredecessors |
Show basic block predecessors?
Definition at line 78 of file Unparser/Settings.h.
bool Rose::BinaryAnalysis::Unparser::Settings::showingSuccessors |
Show basic block successors?
Definition at line 79 of file Unparser/Settings.h.
bool Rose::BinaryAnalysis::Unparser::Settings::showingSharing |
Show functions when block is shared?
Definition at line 80 of file Unparser/Settings.h.
bool Rose::BinaryAnalysis::Unparser::Settings::showingArrows |
Draw arrows from one block to another.
Definition at line 81 of file Unparser/Settings.h.
Style Rose::BinaryAnalysis::Unparser::Settings::arrowStyle |
Arrow style.
Definition at line 82 of file Unparser/Settings.h.
bool Rose::BinaryAnalysis::Unparser::Settings::showingNormalFallThroughEdges |
Show normal fall through edges from one block to the next.
Definition at line 83 of file Unparser/Settings.h.
bool Rose::BinaryAnalysis::Unparser::Settings::showingCallReturnFallThroughEdges |
Show call-return fall through edges from one block to the next.
Definition at line 84 of file Unparser/Settings.h.
bool Rose::BinaryAnalysis::Unparser::Settings::showingReachability |
Show code reachability in the basic block prologue area.
Definition at line 87 of file Unparser/Settings.h.
bool Rose::BinaryAnalysis::Unparser::Settings::showingPostBlock |
Show info about what happens after the last instruction.
Definition at line 89 of file Unparser/Settings.h.
bool Rose::BinaryAnalysis::Unparser::Settings::useLabels |
Generate labels and use them instead of addresses?
Definition at line 99 of file Unparser/Settings.h.
size_t Rose::BinaryAnalysis::Unparser::Settings::fieldWidth |
Min characters to use per insn address.
Min characters to use for the comment field.
Min characters to use for the operand list.
Min characters to use for the instruction mnemonic.
Min characters to use for the frame delta field.
Min characters to use for the stack delta field.
Min characters to use for the bytes field.
Definition at line 100 of file Unparser/Settings.h.
size_t Rose::BinaryAnalysis::Unparser::Settings::perLine |
Max number of bytes to show per line of output.
Definition at line 106 of file Unparser/Settings.h.
std::string Rose::BinaryAnalysis::Unparser::Settings::semanticFailureMarker |
Mark instruction if it had semantic failures.
Definition at line 125 of file Unparser/Settings.h.
Style Rose::BinaryAnalysis::Unparser::Settings::semanticFailureStyle |
Style for the semantic failure indicator.
Definition at line 126 of file Unparser/Settings.h.
std::string Rose::BinaryAnalysis::Unparser::Settings::separator |
How to separate one operand from another.
Definition at line 131 of file Unparser/Settings.h.
bool Rose::BinaryAnalysis::Unparser::Settings::showingWidth |
Show width of all expression terms in square brackets.
Definition at line 133 of file Unparser/Settings.h.
bool Rose::BinaryAnalysis::Unparser::Settings::usingDescription |
Lacking comment, use instruction description as comment?
Definition at line 139 of file Unparser/Settings.h.
std::string Rose::BinaryAnalysis::Unparser::Settings::pre |
String to introduce a comment.
Definition at line 140 of file Unparser/Settings.h.
std::string Rose::BinaryAnalysis::Unparser::Settings::post |
String to terminate a comment.
Definition at line 141 of file Unparser/Settings.h.
InstructionSemantics::BaseSemantics::Formatter Rose::BinaryAnalysis::Unparser::Settings::formatter |
How to format the semantic state output.
Definition at line 148 of file Unparser/Settings.h.
bool Rose::BinaryAnalysis::Unparser::Settings::tracing |
Show instruction semantics traces when showing semantics.
Definition at line 149 of file Unparser/Settings.h.
EdgeArrows::ArrowStylePreset Rose::BinaryAnalysis::Unparser::Settings::style |
One of the arrow style presets.
Definition at line 155 of file Unparser/Settings.h.
std::string Rose::BinaryAnalysis::Unparser::Settings::linePrefix |
Definition at line 158 of file Unparser/Settings.h.