Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

x86regs.h

Go to the documentation of this file.
00001 /*
00002 PeRdr - PE file disassembler
00003 Copyright (C) 1999-2002 Frediano Ziglio
00004 -----
00005 
00006 This program is free software; you can redistribute it and/or modify
00007 it under the terms of the GNU General Public License as published by
00008 the Free Software Foundation; either version 2 of the License, or
00009 (at your option) any later version.
00010 
00011 This program is distributed in the hope that it will be useful,
00012 but WITHOUT ANY WARRANTY; without even the implied warranty of
00013 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00014 GNU General Public License for more details.
00015 
00016 You should have received a copy of the GNU General Public License
00017 along with this program; if not, write to the Free Software
00018 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
00019 -----
00020 
00021 INFORMATION
00022   www: https://freddy77.tripod.com/perdr/
00023   e-mail: freddy77@angelfire.com
00024 */
00025 //DEFINE_REG(size,type,name,string,complete,mask)
00026 DEFINE_REG(byte,   byte_low_low,   al,    "al",  REG(eax), 1 )
00027 DEFINE_REG(byte,   byte_low_low,   cl,    "cl",  REG(ecx), 1 )
00028 DEFINE_REG(byte,   byte_low_low,   dl,    "dl",  REG(edx), 1 )
00029 DEFINE_REG(byte,   byte_low_low,   bl,    "bl",  REG(ebx), 1 )
00030 DEFINE_REG(byte,  byte_low_high,   ah,    "ah",  REG(eax), 2 )
00031 DEFINE_REG(byte,  byte_low_high,   ch,    "ch",  REG(ecx), 2 )
00032 DEFINE_REG(byte,  byte_low_high,   dh,    "dh",  REG(edx), 2 )
00033 DEFINE_REG(byte,  byte_low_high,   bh,    "bh",  REG(ebx), 2 )
00034 
00035 DEFINE_REG(word,       word_low,   ax,    "ax",  REG(eax), 3 )
00036 DEFINE_REG(word,       word_low,   cx,    "cx",  REG(ecx), 3 )
00037 DEFINE_REG(word,       word_low,   dx,    "dx",  REG(edx), 3 )
00038 DEFINE_REG(word,       word_low,   bx,    "bx",  REG(ebx), 3 )
00039 DEFINE_REG(word,       word_low,   sp,    "sp",  REG(esp), 1 )
00040 DEFINE_REG(word,       word_low,   bp,    "bp",  REG(ebp), 1 )
00041 DEFINE_REG(word,       word_low,   si,    "si",  REG(esi), 1 )
00042 DEFINE_REG(word,       word_low,   di,    "di",  REG(edi), 1 )
00043 
00044 DEFINE_REG(dword,       general,  eax,   "eax",  REG(eax), 7 )
00045 DEFINE_REG(dword,       general,  ecx,   "ecx",  REG(ecx), 7 )
00046 DEFINE_REG(dword,       general,  edx,   "edx",  REG(edx), 7 )
00047 DEFINE_REG(dword,       general,  ebx,   "ebx",  REG(ebx), 7 )
00048 DEFINE_REG(dword,       general,  esp,   "esp",  REG(esp), 3 ) //  special ??
00049 DEFINE_REG(dword,       general,  ebp,   "ebp",  REG(ebp), 3 )
00050 DEFINE_REG(dword,       general,  esi,   "esi",  REG(esi), 3 )
00051 DEFINE_REG(dword,       general,  edi,   "edi",  REG(edi), 3 )
00052 
00053 DEFINE_REG(packetI,     general,  mm0,   "mm0",  REG(mm0), 1 )
00054 DEFINE_REG(packetI,     general,  mm1,   "mm1",  REG(mm1), 1 )
00055 DEFINE_REG(packetI,     general,  mm2,   "mm2",  REG(mm2), 1 )
00056 DEFINE_REG(packetI,     general,  mm3,   "mm3",  REG(mm3), 1 )
00057 DEFINE_REG(packetI,     general,  mm4,   "mm4",  REG(mm4), 1 )
00058 DEFINE_REG(packetI,     general,  mm5,   "mm5",  REG(mm5), 1 )
00059 DEFINE_REG(packetI,     general,  mm6,   "mm6",  REG(mm6), 1 )
00060 DEFINE_REG(packetI,     general,  mm7,   "mm7",  REG(mm7), 1 )
00061 
00062 DEFINE_REG(packetF,     general, xmm0,  "xmm0", REG(xmm0), 1 )
00063 DEFINE_REG(packetF,     general, xmm1,  "xmm1", REG(xmm1), 1 )
00064 DEFINE_REG(packetF,     general, xmm2,  "xmm2", REG(xmm2), 1 )
00065 DEFINE_REG(packetF,     general, xmm3,  "xmm3", REG(xmm3), 1 )
00066 DEFINE_REG(packetF,     general, xmm4,  "xmm4", REG(xmm4), 1 )
00067 DEFINE_REG(packetF,     general, xmm5,  "xmm5", REG(xmm5), 1 )
00068 DEFINE_REG(packetF,     general, xmm6,  "xmm6", REG(xmm6), 1 )
00069 DEFINE_REG(packetF,     general, xmm7,  "xmm7", REG(xmm7), 1 )
00070 
00071 DEFINE_REG(dword,       special,  eip,   "eip",  REG(eip), 3 )
00072 DEFINE_REG(word,        special,   ip,    "ip",  REG(eip), 1 )
00073 
00074 DEFINE_REG(word,        segment,   es,    "es",  REG(es), 1 )
00075 DEFINE_REG(word,        segment,   cs,    "cs",  REG(cs), 1 )
00076 DEFINE_REG(word,        segment,   ss,    "ss",  REG(ss), 1 )
00077 DEFINE_REG(word,        segment,   ds,    "ds",  REG(ds), 1 )
00078 DEFINE_REG(word,        segment,   fs,    "fs",  REG(fs), 1 )
00079 DEFINE_REG(word,        segment,   gs,    "gs",  REG(gs), 1 )
00080 
00081 DEFINE_REG(floating,    general,  st0, "st(0)",  REG(st0), 1 )
00082 DEFINE_REG(floating,    general,  st1, "st(1)",  REG(st1), 1 )
00083 DEFINE_REG(floating,    general,  st2, "st(2)",  REG(st2), 1 )
00084 DEFINE_REG(floating,    general,  st3, "st(3)",  REG(st3), 1 )
00085 DEFINE_REG(floating,    general,  st4, "st(4)",  REG(st4), 1 )
00086 DEFINE_REG(floating,    general,  st5, "st(5)",  REG(st5), 1 )
00087 DEFINE_REG(floating,    general,  st6, "st(6)",  REG(st6), 1 )
00088 DEFINE_REG(floating,    general,  st7, "st(7)",  REG(st7), 1 )
00089 
00090 DEFINE_REG(dword,       special,  cr0,   "cr0",  REG(cr0), 1 )
00091 DEFINE_REG(dword,       special,  cr1,   "cr1",  REG(cr1), 1 )
00092 DEFINE_REG(dword,       special,  cr2,   "cr2",  REG(cr2), 1 )
00093 DEFINE_REG(dword,       special,  cr3,   "cr3",  REG(cr3), 1 )
00094 DEFINE_REG(dword,       special,  cr4,   "cr4",  REG(cr4), 1 )
00095 DEFINE_REG(dword,       special,  cr5,   "cr5",  REG(cr5), 1 )
00096 DEFINE_REG(dword,       special,  cr6,   "cr6",  REG(cr6), 1 )
00097 DEFINE_REG(dword,       special,  cr7,   "cr7",  REG(cr7), 1 )
00098 
00099 DEFINE_REG(dword,       special,  dr0,   "dr0",  REG(dr0), 1 )
00100 DEFINE_REG(dword,       special,  dr1,   "dr1",  REG(dr1), 1 )
00101 DEFINE_REG(dword,       special,  dr2,   "dr2",  REG(dr2), 1 )
00102 DEFINE_REG(dword,       special,  dr3,   "dr3",  REG(dr3), 1 )
00103 DEFINE_REG(dword,       special,  dr4,   "dr4",  REG(dr4), 1 )
00104 DEFINE_REG(dword,       special,  dr5,   "dr5",  REG(dr5), 1 )
00105 DEFINE_REG(dword,       special,  dr6,   "dr6",  REG(dr6), 1 )
00106 DEFINE_REG(dword,       special,  dr7,   "dr7",  REG(dr7), 1 )
00107 
00108 DEFINE_REG(dword,       special,  tr0,   "tr0",  REG(tr0), 1 )
00109 DEFINE_REG(dword,       special,  tr1,   "tr1",  REG(tr1), 1 )
00110 DEFINE_REG(dword,       special,  tr2,   "tr2",  REG(tr2), 1 )
00111 DEFINE_REG(dword,       special,  tr3,   "tr3",  REG(tr3), 1 )
00112 DEFINE_REG(dword,       special,  tr4,   "tr4",  REG(tr4), 1 )
00113 DEFINE_REG(dword,       special,  tr5,   "tr5",  REG(tr5), 1 )
00114 DEFINE_REG(dword,       special,  tr6,   "tr6",  REG(tr6), 1 )
00115 DEFINE_REG(dword,       special,  tr7,   "tr7",  REG(tr7), 1 )
00116 
00117 

Generated on Mon Jan 13 22:20:35 2003 for perdr by doxygen1.2.15