statement.cpp File Reference

#include <assert.h>
#include <iomanip>
#include <sstream>
#include <algorithm>
#include "statement.h"
#include "exp.h"
#include "cfg.h"
#include "proc.h"
#include "prog.h"
#include "boomerang.h"
#include "rtl.h"
#include "util.h"
#include "signature.h"
#include "visitor.h"
#include "dataflow.h"
#include "log.h"

Go to the source code of this file.

Classes

class  ArgSourceProvider

Defines

#define my_advance(aa, n)   advance(aa, n);
#define RETSTMT_COLS   120

Functions

bool condToRelational (Exp *&pCond, BRANCH_TYPE jtCond)
void dumpDestCounts (std::map< Exp *, int, lessExpStar > *destCounts)
bool hasSetFlags (Exp *e)
std::ostream & operator<< (std::ostream &os, Statement *s)
ExpprocessConstant (Exp *e, Type *t, Prog *prog, UserProc *proc, ADDRESS stmt)

Variables

char debug_buffer []
 For prints functions.
static int progress = 0


Define Documentation

#define my_advance aa,
 )     advance(aa, n);
 

Definition at line 52 of file statement.cpp.

Referenced by CallStatement::getArgumentExp(), CallStatement::getArgumentType(), CallStatement::removeArgument(), CallStatement::setArgumentExp(), and CallStatement::setNumArguments().

#define RETSTMT_COLS   120
 

Definition at line 4284 of file statement.cpp.

Referenced by ReturnStatement::print().


Function Documentation

bool condToRelational Exp *&  pCond,
BRANCH_TYPE  jtCond
 

Definition at line 1533 of file statement.cpp.

References BRANCH_JE, BRANCH_JMI, BRANCH_JNE, BRANCH_JNOF, BRANCH_JOF, BRANCH_JPAR, BRANCH_JPOS, BRANCH_JSG, BRANCH_JSGE, BRANCH_JSL, BRANCH_JSLE, BRANCH_JUG, BRANCH_JUGE, BRANCH_JUL, BRANCH_JULE, Exp::clone(), Exp::getOper(), Exp::getSubExp1(), Exp::getSubExp2(), Exp::isSubscript(), Exp::isTemp(), LOG, opBitAnd, opEquals, opFlagCall, opGtr, opGtrEq, opGtrEqUns, opGtrUns, opLess, opLessEq, opLessEqUns, opLessUns, opNotEqual, Exp::print(), Exp::simplify(), and Exp::simplifyArith().

Referenced by BoolAssign::simplify(), and BranchStatement::simplify().

void dumpDestCounts std::map< Exp *, int, lessExpStar > *  destCounts  ) 
 

Definition at line 5035 of file statement.cpp.

bool hasSetFlags Exp e  ) 
 

Definition at line 665 of file statement.cpp.

References Exp::getOper(), Exp::isFlagCall(), Exp::isIntConst(), opBitAnd, and opBitXor.

std::ostream& operator<< std::ostream &  os,
Statement s
 

Definition at line 630 of file statement.cpp.

Exp* processConstant Exp e,
Type t,
Prog prog,
UserProc proc,
ADDRESS  stmt
 

Definition at line 2512 of file statement.cpp.

References Type::isNamed(), and NULL.


Variable Documentation

char debug_buffer[]
 

For prints functions.

Definition at line 285 of file basicblock.cpp.

int progress = 0 [static]
 

Definition at line 716 of file statement.cpp.


Generated on Tue Sep 19 21:18:38 2006 for Boomerang by  doxygen 1.4.6