ROSE  0.9.10.103
Static Public Member Functions | Public Attributes | List of all members
Rose::BinaryAnalysis::Unparser::Settings Struct Reference

Description

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 17 of file BinaryUnparser.h.

#include <BinaryUnparser.h>

Inheritance diagram for Rose::BinaryAnalysis::Unparser::Settings:
Inheritance graph
[legend]
Collaboration diagram for Rose::BinaryAnalysis::Unparser::Settings:
Collaboration graph
[legend]

Static Public Member Functions

static Settings full ()
 
static Settings minimal ()
 

Public Attributes

struct {
   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?
 
   }   cg
 Settings for function call graphs. More...
 
   struct {
      bool   showing
 Show stack delta?
 
      bool   concrete
 Show concrete or symbolic deltas. More...
 
   }   stackDelta
 Settings for function stack deltas. More...
 
   struct {
      bool   showing
 Show calling convention?
 
   }   callconv
 Settings for function calling convention. More...
 
   struct {
      bool   showing
 Show no-op analysis results?
 
   }   noop
 Settings for no-op analysis. More...
 
   struct {
      bool   showing
 Show results of may-return analysis?
 
   }   mayReturn
 Settings for may-return analysis. More...
 
function
 Settings for functions. More...
 
struct {
   struct {
      bool   showingPredecessors
 Show basic block predecessors?
 
      bool   showingSuccessors
 Show basic block successors?
 
      bool   showingSharing
 Show functions when block is shared?
 
   }   cfg
 Settings for control flow graphs. More...
 
   struct {
      bool   showingReachability
 Show code reachability in the basic block prologue area. More...
 
   }   reach
 Reachability analysis results. More...
 
bblock
 Settings for basic blocks. More...
 
struct {
   struct {
      bool   showing
 Show instruction addresses?
 
      size_t   fieldWidth
 Min characters to use per insn address. More...
 
   }   address
 Settings for instruction starting addresses. More...
 
   struct {
      bool   showing
 Show instruction bytes?
 
      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...
 
   }   bytes
 Settings for the bytes that make up an instruction. More...
 
   struct {
      bool   showing
 Show stack deltas?
 
      size_t   fieldWidth
 Min characters to use for the stack delta field. More...
 
   }   stackDelta
 Settings for stack deltas. More...
 
   struct {
      size_t   fieldWidth
 Min characters to use for the instruction mnemonic. More...
 
   }   mnemonic
 Settings for instruction mnemonics. More...
 
   struct {
      std::string   separator
 How to separate one operand from another. More...
 
      size_t   fieldWidth
 Min characters to use for the operand list. More...
 
   }   operands
 Settings for the operand list. More...
 
   struct {
      bool   showing
 Show instruction comments?
 
      bool   usingDescription
 Lacking comment, use instruction description as comment?
 
      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. More...
 
   struct {
      bool   showing
 Show instruction semantics?
 
      InstructionSemantics2::BaseSemantics::Formatter   formatter
 How to format the semantic state output. More...
 
      bool   tracing
 Show instruction semantics traces when showing semantics. More...
 
   }   semantics
 
insn
 Settings for instructions. More...
 

Member Data Documentation

bool Rose::BinaryAnalysis::Unparser::Settings::showingReasons

Show reasons for function existing.

Definition at line 21 of file BinaryUnparser.h.

bool Rose::BinaryAnalysis::Unparser::Settings::showingDemangled

Show demangled name in preference to mangled name.

Definition at line 22 of file BinaryUnparser.h.

bool Rose::BinaryAnalysis::Unparser::Settings::showing

Show function call graph?

Show instruction semantics?

Show instruction comments?

Show stack deltas?

Show instruction bytes?

Show instruction addresses?

Show results of may-return analysis?

Show no-op analysis results?

Show calling convention?

Show stack delta?

Definition at line 24 of file BinaryUnparser.h.

struct { ... } Rose::BinaryAnalysis::Unparser::Settings::cg

Settings for function call graphs.

bool Rose::BinaryAnalysis::Unparser::Settings::concrete

Show concrete or symbolic deltas.

Definition at line 28 of file BinaryUnparser.h.

struct { ... } Rose::BinaryAnalysis::Unparser::Settings::stackDelta

Settings for function stack deltas.

struct { ... } Rose::BinaryAnalysis::Unparser::Settings::callconv

Settings for function calling convention.

struct { ... } Rose::BinaryAnalysis::Unparser::Settings::noop

Settings for no-op analysis.

struct { ... } Rose::BinaryAnalysis::Unparser::Settings::mayReturn

Settings for may-return analysis.

struct { ... } Rose::BinaryAnalysis::Unparser::Settings::function

Settings for functions.

struct { ... } Rose::BinaryAnalysis::Unparser::Settings::cfg

Settings for control flow graphs.

bool Rose::BinaryAnalysis::Unparser::Settings::showingReachability

Show code reachability in the basic block prologue area.

Definition at line 48 of file BinaryUnparser.h.

struct { ... } Rose::BinaryAnalysis::Unparser::Settings::reach

Reachability analysis results.

struct { ... } Rose::BinaryAnalysis::Unparser::Settings::bblock

Settings for basic blocks.

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 stack delta field.

Min characters to use for the bytes field.

Definition at line 55 of file BinaryUnparser.h.

struct { ... } Rose::BinaryAnalysis::Unparser::Settings::address

Settings for instruction starting addresses.

size_t Rose::BinaryAnalysis::Unparser::Settings::perLine

Max number of bytes to show per line of output.

Definition at line 60 of file BinaryUnparser.h.

struct { ... } Rose::BinaryAnalysis::Unparser::Settings::bytes

Settings for the bytes that make up an instruction.

struct { ... } Rose::BinaryAnalysis::Unparser::Settings::stackDelta

Settings for stack deltas.

struct { ... } Rose::BinaryAnalysis::Unparser::Settings::mnemonic

Settings for instruction mnemonics.

std::string Rose::BinaryAnalysis::Unparser::Settings::separator

How to separate one operand from another.

Definition at line 74 of file BinaryUnparser.h.

struct { ... } Rose::BinaryAnalysis::Unparser::Settings::operands

Settings for the operand list.

std::string Rose::BinaryAnalysis::Unparser::Settings::pre

String to introduce a comment.

Definition at line 81 of file BinaryUnparser.h.

std::string Rose::BinaryAnalysis::Unparser::Settings::post

String to terminate a comment.

Definition at line 82 of file BinaryUnparser.h.

struct { ... } Rose::BinaryAnalysis::Unparser::Settings::comment

Settings for instruction comments.

InstructionSemantics2::BaseSemantics::Formatter Rose::BinaryAnalysis::Unparser::Settings::formatter

How to format the semantic state output.

Definition at line 88 of file BinaryUnparser.h.

bool Rose::BinaryAnalysis::Unparser::Settings::tracing

Show instruction semantics traces when showing semantics.

Definition at line 89 of file BinaryUnparser.h.

struct { ... } Rose::BinaryAnalysis::Unparser::Settings::insn

Settings for instructions.


The documentation for this struct was generated from the following file: