pentiumdecoder.cpp File Reference

#include <assert.h>
#include "rtl.h"
#include "decoder.h"
#include "pentiumdecoder.h"
#include "prog.h"
#include "exp.h"
#include "proc.h"
#include "boomerang.h"
#include "statement.h"

Go to the source code of this file.

Defines

#define DIS_COUNT   (new Const(count))
#define DIS_EADDR16   (dis_Eaddr(Eaddr, 16))
#define DIS_EADDR32   (dis_Eaddr(Eaddr, 32))
#define DIS_EADDR8   (dis_Eaddr(Eaddr, 8))
#define DIS_I16   (new Const(i16))
#define DIS_I32   (addReloc(new Const(i32)))
#define DIS_I8   (new Const(i8))
#define DIS_IDX   (dis_Reg(idx+32))
#define DIS_IDXP1   (dis_Reg((idx+1)%7+32))
#define DIS_MEM   (dis_Mem(Mem))
#define DIS_MEM16   (dis_Mem(Mem16))
#define DIS_MEM32   (dis_Mem(Mem32))
#define DIS_MEM64   (dis_Mem(Mem64))
#define DIS_MEM80   (dis_Mem(Mem80))
#define DIS_OFF   (addReloc(new Const(off)))
#define DIS_R16   (dis_Reg(r16+0))
#define DIS_R32   (dis_Reg(r32+24))
#define DIS_R8   (dis_Reg(r8+8))
#define DIS_REG16   (dis_Reg(reg+0))
#define DIS_REG32   (dis_Reg(reg+24))
#define DIS_REG8   (dis_Reg(reg+8))
#define DIS_SR16   (dis_Reg(sr16+16))
#define sign_extend(N, SIZE)   (((int)((N) << (sizeof(unsigned)*8-(SIZE)))) >> (sizeof(unsigned)*8-(SIZE)))

Functions

void genBSFR (ADDRESS pc, Exp *reg, Exp *modrm, int init, int size, OPER incdec, int numBytes)

Variables

static int BSFRstate = 0
static DecodeResult result


Define Documentation

#define DIS_COUNT   (new Const(count))
 

Definition at line 68 of file pentiumdecoder.cpp.

Referenced by PentiumDecoder::decodeInstruction().

#define DIS_EADDR16   (dis_Eaddr(Eaddr, 16))
 

Definition at line 57 of file pentiumdecoder.cpp.

Referenced by PentiumDecoder::decodeInstruction().

#define DIS_EADDR32   (dis_Eaddr(Eaddr, 32))
 

Definition at line 56 of file pentiumdecoder.cpp.

Referenced by PentiumDecoder::decodeInstruction().

#define DIS_EADDR8   (dis_Eaddr(Eaddr, 8))
 

Definition at line 58 of file pentiumdecoder.cpp.

Referenced by PentiumDecoder::decodeInstruction().

#define DIS_I16   (new Const(i16))
 

Definition at line 66 of file pentiumdecoder.cpp.

Referenced by PentiumDecoder::decodeInstruction().

#define DIS_I32   (addReloc(new Const(i32)))
 

Definition at line 65 of file pentiumdecoder.cpp.

Referenced by PentiumDecoder::decodeInstruction().

#define DIS_I8   (new Const(i8))
 

Definition at line 67 of file pentiumdecoder.cpp.

Referenced by PentiumDecoder::decodeInstruction().

#define DIS_IDX   (dis_Reg(idx+32))
 

Definition at line 53 of file pentiumdecoder.cpp.

Referenced by PentiumDecoder::decodeInstruction().

#define DIS_IDXP1   (dis_Reg((idx+1)%7+32))
 

Definition at line 54 of file pentiumdecoder.cpp.

Referenced by PentiumDecoder::decodeInstruction().

#define DIS_MEM   (dis_Mem(Mem))
 

Definition at line 59 of file pentiumdecoder.cpp.

Referenced by PentiumDecoder::decodeInstruction().

#define DIS_MEM16   (dis_Mem(Mem16))
 

Definition at line 60 of file pentiumdecoder.cpp.

Referenced by PentiumDecoder::decodeInstruction().

#define DIS_MEM32   (dis_Mem(Mem32))
 

Definition at line 61 of file pentiumdecoder.cpp.

Referenced by PentiumDecoder::decodeInstruction().

#define DIS_MEM64   (dis_Mem(Mem64))
 

Definition at line 62 of file pentiumdecoder.cpp.

Referenced by PentiumDecoder::decodeInstruction().

#define DIS_MEM80   (dis_Mem(Mem80))
 

Definition at line 63 of file pentiumdecoder.cpp.

Referenced by PentiumDecoder::decodeInstruction().

#define DIS_OFF   (addReloc(new Const(off)))
 

Definition at line 69 of file pentiumdecoder.cpp.

Referenced by PentiumDecoder::decodeInstruction().

#define DIS_R16   (dis_Reg(r16+0))
 

Definition at line 47 of file pentiumdecoder.cpp.

Referenced by PentiumDecoder::decodeInstruction().

#define DIS_R32   (dis_Reg(r32+24))
 

Definition at line 48 of file pentiumdecoder.cpp.

Referenced by PentiumDecoder::decodeInstruction().

#define DIS_R8   (dis_Reg(r8+8))
 

Definition at line 46 of file pentiumdecoder.cpp.

Referenced by PentiumDecoder::decodeInstruction().

#define DIS_REG16   (dis_Reg(reg+0))
 

Definition at line 50 of file pentiumdecoder.cpp.

Referenced by PentiumDecoder::decodeInstruction().

#define DIS_REG32   (dis_Reg(reg+24))
 

Definition at line 51 of file pentiumdecoder.cpp.

Referenced by PentiumDecoder::decodeInstruction().

#define DIS_REG8   (dis_Reg(reg+8))
 

Definition at line 49 of file pentiumdecoder.cpp.

Referenced by PentiumDecoder::decodeInstruction().

#define DIS_SR16   (dis_Reg(sr16+16))
 

Definition at line 52 of file pentiumdecoder.cpp.

#define sign_extend N,
SIZE   )     (((int)((N) << (sizeof(unsigned)*8-(SIZE)))) >> (sizeof(unsigned)*8-(SIZE)))
 

Definition at line 1 of file pentiumdecoder.cpp.


Function Documentation

void genBSFR ADDRESS  pc,
Exp reg,
Exp modrm,
int  init,
int  size,
OPER  incdec,
int  numBytes
 


Variable Documentation

int BSFRstate = 0 [static]
 

Definition at line 61983 of file pentiumdecoder.cpp.

DecodeResult result [static]
 

Definition at line 104 of file pentiumdecoder.cpp.


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