x86linux.c

来自「基于4个mips核的noc设计」· C语言 代码 · 共 2,383 行 · 第 1/5 页

C
2,383
字号
	_nts_37,	/* 291 */	_nts_37,	/* 292 */	_nts_37,	/* 293 */	_nts_37,	/* 294 */	_nts_37,	/* 295 */	_nts_37,	/* 296 */	_nts_37,	/* 297 */	_nts_37,	/* 298 */	_nts_37,	/* 299 */	_nts_1,	/* 300 */	_nts_1,	/* 301 */	_nts_1,	/* 302 */	_nts_3,	/* 303 */	_nts_3,	/* 304 */};static char *_templates[] = {/* 0 */	0,/* 1 */	"# read register\n",	/* reg: INDIRI1(VREGP) *//* 2 */	"# read register\n",	/* reg: INDIRU1(VREGP) *//* 3 */	"# read register\n",	/* reg: INDIRI2(VREGP) *//* 4 */	"# read register\n",	/* reg: INDIRU2(VREGP) *//* 5 */	"# read register\n",	/* reg: INDIRI4(VREGP) *//* 6 */	"# read register\n",	/* reg: INDIRP4(VREGP) *//* 7 */	"# read register\n",	/* reg: INDIRU4(VREGP) *//* 8 */	"# read register\n",	/* reg: INDIRI8(VREGP) *//* 9 */	"# read register\n",	/* reg: INDIRP8(VREGP) *//* 10 */	"# read register\n",	/* reg: INDIRU8(VREGP) *//* 11 */	"# read register\n",	/* freg: INDIRF4(VREGP) *//* 12 */	"# read register\n",	/* freg: INDIRF8(VREGP) *//* 13 */	"# write register\n",	/* stmt: ASGNI1(VREGP,reg) *//* 14 */	"# write register\n",	/* stmt: ASGNU1(VREGP,reg) *//* 15 */	"# write register\n",	/* stmt: ASGNI2(VREGP,reg) *//* 16 */	"# write register\n",	/* stmt: ASGNU2(VREGP,reg) *//* 17 */	"# write register\n",	/* stmt: ASGNF4(VREGP,reg) *//* 18 */	"# write register\n",	/* stmt: ASGNI4(VREGP,reg) *//* 19 */	"# write register\n",	/* stmt: ASGNP4(VREGP,reg) *//* 20 */	"# write register\n",	/* stmt: ASGNU4(VREGP,reg) *//* 21 */	"# write register\n",	/* stmt: ASGNF8(VREGP,reg) *//* 22 */	"# write register\n",	/* stmt: ASGNI8(VREGP,reg) *//* 23 */	"# write register\n",	/* stmt: ASGNP8(VREGP,reg) *//* 24 */	"# write register\n",	/* stmt: ASGNU8(VREGP,reg) *//* 25 */	"%a",	/* cnst: CNSTI1 *//* 26 */	"%a",	/* cnst: CNSTU1 *//* 27 */	"%a",	/* cnst: CNSTI2 *//* 28 */	"%a",	/* cnst: CNSTU2 *//* 29 */	"%a",	/* cnst: CNSTI4 *//* 30 */	"%a",	/* cnst: CNSTU4 *//* 31 */	"%a",	/* cnst: CNSTP4 *//* 32 */	"%a",	/* cnst: CNSTI8 *//* 33 */	"%a",	/* cnst: CNSTU8 *//* 34 */	"%a",	/* cnst: CNSTP8 *//* 35 */	"$%0",	/* con: cnst *//* 36 */	"",	/* stmt: reg *//* 37 */	"",	/* stmt: freg *//* 38 */	"%a",	/* acon: ADDRGP4 *//* 39 */	"%a",	/* acon: ADDRGP8 *//* 40 */	"%0",	/* acon: cnst *//* 41 */	"%a",	/* baseaddr: ADDRGP4 *//* 42 */	"(%0)",	/* base: reg *//* 43 */	"%1(%0)",	/* base: ADDI4(reg,acon) *//* 44 */	"%1(%0)",	/* base: ADDP4(reg,acon) *//* 45 */	"%1(%0)",	/* base: ADDU4(reg,acon) *//* 46 */	"%a(%%ebp)",	/* base: ADDRFP4 *//* 47 */	"%a(%%ebp)",	/* base: ADDRLP4 *//* 48 */	"%0",	/* index: reg *//* 49 */	"%0,2",	/* index: LSHI4(reg,con1) *//* 50 */	"%0,4",	/* index: LSHI4(reg,con2) *//* 51 */	"%0,8",	/* index: LSHI4(reg,con3) *//* 52 */	"%0,2",	/* index: LSHU4(reg,con1) *//* 53 */	"%0,4",	/* index: LSHU4(reg,con2) *//* 54 */	"%0,8",	/* index: LSHU4(reg,con3) *//* 55 */	"1",	/* con0: CNSTI4 *//* 56 */	"1",	/* con0: CNSTU4 *//* 57 */	"1",	/* con1: CNSTI4 *//* 58 */	"1",	/* con1: CNSTU4 *//* 59 */	"2",	/* con2: CNSTI4 *//* 60 */	"2",	/* con2: CNSTU4 *//* 61 */	"3",	/* con3: CNSTI4 *//* 62 */	"3",	/* con3: CNSTU4 *//* 63 */	"%0",	/* addr: base *//* 64 */	"%0",	/* addr: baseaddr *//* 65 */	"%1(,%0)",	/* addr: ADDI4(index,baseaddr) *//* 66 */	"%1(,%0)",	/* addr: ADDP4(index,baseaddr) *//* 67 */	"%1(,%0)",	/* addr: ADDU4(index,baseaddr) *//* 68 */	"%1(%0)",	/* addr: ADDI4(reg,baseaddr) *//* 69 */	"%1(%0)",	/* addr: ADDP4(reg,baseaddr) *//* 70 */	"%1(%0)",	/* addr: ADDU4(reg,baseaddr) *//* 71 */	"(%1,%0)",	/* addr: ADDI4(index,reg) *//* 72 */	"(%1,%0)",	/* addr: ADDP4(index,reg) *//* 73 */	"(%1,%0)",	/* addr: ADDU4(index,reg) *//* 74 */	"(,%0)",	/* addr: index *//* 75 */	"%0",	/* mem1: INDIRI1(addr) *//* 76 */	"%0",	/* mem1: INDIRU1(addr) *//* 77 */	"%0",	/* mem2: INDIRI2(addr) *//* 78 */	"%0",	/* mem2: INDIRU2(addr) *//* 79 */	"%0",	/* mem4: INDIRI4(addr) *//* 80 */	"%0",	/* mem4: INDIRU4(addr) *//* 81 */	"%0",	/* mem4: INDIRP4(addr) *//* 82 */	"%0",	/* rc: reg *//* 83 */	"%0",	/* rc: con *//* 84 */	"%0",	/* mr: reg *//* 85 */	"%0",	/* mr: mem4 *//* 86 */	"%0",	/* mr1: reg *//* 87 */	"%0",	/* mr1: mem1 *//* 88 */	"%0",	/* mr2: reg *//* 89 */	"%0",	/* mr2: mem2 *//* 90 */	"%0",	/* mrc: mem4 *//* 91 */	"%0",	/* mrc: mem1 *//* 92 */	"%0",	/* mrc: mem2 *//* 93 */	"%0",	/* mrc: rc *//* 94 */	"leal %0,%c\n",	/* reg: addr *//* 95 */	"movl %0,%c\n",	/* reg: mr *//* 96 */	"movb %0,%c\n",	/* reg: mr1 *//* 97 */	"movw %0,%c\n",	/* reg: mr2 *//* 98 */	"movl %0,%c\n",	/* reg: con *//* 99 */	"# move\n",	/* reg: LOADI1(reg) *//* 100 */	"# move\n",	/* reg: LOADI2(reg) *//* 101 */	"# move\n",	/* reg: LOADI4(reg) *//* 102 */	"# move\n",	/* reg: LOADU1(reg) *//* 103 */	"# move\n",	/* reg: LOADU2(reg) *//* 104 */	"# move\n",	/* reg: LOADU4(reg) *//* 105 */	"# move\n",	/* reg: LOADP4(reg) *//* 106 */	"?movl %0,%c\naddl %1,%c\n",	/* reg: ADDI4(reg,mrc) *//* 107 */	"?movl %0,%c\naddl %1,%c\n",	/* reg: ADDP4(reg,mrc) *//* 108 */	"?movl %0,%c\naddl %1,%c\n",	/* reg: ADDU4(reg,mrc) *//* 109 */	"?movl %0,%c\nsubl %1,%c\n",	/* reg: SUBI4(reg,mrc) *//* 110 */	"?movl %0,%c\nsubl %1,%c\n",	/* reg: SUBP4(reg,mrc) *//* 111 */	"?movl %0,%c\nsubl %1,%c\n",	/* reg: SUBU4(reg,mrc) *//* 112 */	"?movl %0,%c\nandl %1,%c\n",	/* reg: BANDI4(reg,mrc) *//* 113 */	"?movl %0,%c\norl %1,%c\n",	/* reg: BORI4(reg,mrc) *//* 114 */	"?movl %0,%c\nxorl %1,%c\n",	/* reg: BXORI4(reg,mrc) *//* 115 */	"?movl %0,%c\nandl %1,%c\n",	/* reg: BANDU4(reg,mrc) *//* 116 */	"?movl %0,%c\norl %1,%c\n",	/* reg: BORU4(reg,mrc) *//* 117 */	"?movl %0,%c\nxorl %1,%c\n",	/* reg: BXORU4(reg,mrc) *//* 118 */	"incl %1\n",	/* stmt: ASGNI4(addr,ADDI4(mem4,con1)) *//* 119 */	"incl %1\n",	/* stmt: ASGNI4(addr,ADDU4(mem4,con1)) *//* 120 */	"incl %1\n",	/* stmt: ASGNP4(addr,ADDP4(mem4,con1)) *//* 121 */	"decl %1\n",	/* stmt: ASGNI4(addr,SUBI4(mem4,con1)) *//* 122 */	"decl %1\n",	/* stmt: ASGNI4(addr,SUBU4(mem4,con1)) *//* 123 */	"decl %1\n",	/* stmt: ASGNP4(addr,SUBP4(mem4,con1)) *//* 124 */	"addl %2,%1\n",	/* stmt: ASGNI4(addr,ADDI4(mem4,rc)) *//* 125 */	"sub %2,%1\n",	/* stmt: ASGNI4(addr,SUBI4(mem4,rc)) *//* 126 */	"add %2,%1\n",	/* stmt: ASGNU4(addr,ADDU4(mem4,rc)) *//* 127 */	"sub %2,%1\n",	/* stmt: ASGNU4(addr,SUBU4(mem4,rc)) *//* 128 */	"andl %2,%1\n",	/* stmt: ASGNI4(addr,BANDI4(mem4,rc)) *//* 129 */	"orl %2,%1\n",	/* stmt: ASGNI4(addr,BORI4(mem4,rc)) *//* 130 */	"xorl %2,%1\n",	/* stmt: ASGNI4(addr,BXORI4(mem4,rc)) *//* 131 */	"andl %2,%1\n",	/* stmt: ASGNU4(addr,BANDU4(mem4,rc)) *//* 132 */	"orl %2,%1\n",	/* stmt: ASGNU4(addr,BORU4(mem4,rc)) *//* 133 */	"xorl %2,%1\n",	/* stmt: ASGNU4(addr,BXORU4(mem4,rc)) *//* 134 */	"?movl %0,%c\nnotl %c\n",	/* reg: BCOMI4(reg) *//* 135 */	"?movl %0,%c\nnotl %c\n",	/* reg: BCOMU4(reg) *//* 136 */	"?movl %0,%c\nnegl %c\n",	/* reg: NEGI4(reg) *//* 137 */	"notl %1\n",	/* stmt: ASGNI4(addr,BCOMI4(mem4)) *//* 138 */	"notl %1\n",	/* stmt: ASGNU4(addr,BCOMU4(mem4)) *//* 139 */	"negl %1\n",	/* stmt: ASGNI4(addr,NEGI4(mem4)) *//* 140 */	"?movl %0,%c\nsall %1,%c\n",	/* reg: LSHI4(reg,rc5) *//* 141 */	"?movl %0,%c\nshll %1,%c\n",	/* reg: LSHU4(reg,rc5) *//* 142 */	"?movl %0,%c\nsarl %1,%c\n",	/* reg: RSHI4(reg,rc5) *//* 143 */	"?movl %0,%c\nshrl %1,%c\n",	/* reg: RSHU4(reg,rc5) *//* 144 */	"sall %2,%1\n",	/* stmt: ASGNI4(addr,LSHI4(mem4,rc5)) *//* 145 */	"shll %2,%1\n",	/* stmt: ASGNI4(addr,LSHU4(mem4,rc5)) *//* 146 */	"sarl %2,%1\n",	/* stmt: ASGNI4(addr,RSHI4(mem4,rc5)) *//* 147 */	"shrl %2,%1\n",	/* stmt: ASGNI4(addr,RSHU4(mem4,rc5)) *//* 148 */	"$%a",	/* rc5: CNSTI4 *//* 149 */	"%%cl",	/* rc5: reg *//* 150 */	"?movl %0,%c\nimull %1,%c\n",	/* reg: MULI4(reg,mrc) *//* 151 */	"imul %0,%1,%c\n",	/* reg: MULI4(con,mr) *//* 152 */	"mull %1\n",	/* reg: MULU4(reg,mr) *//* 153 */	"xorl %%edx,%%edx\ndivl %1\n",	/* reg: DIVU4(reg,reg) *//* 154 */	"xorl %%edx,%%edx\ndivl %1\n",	/* reg: MODU4(reg,reg) *//* 155 */	"cdq\nidivl %1\n",	/* reg: DIVI4(reg,reg) *//* 156 */	"cdq\nidivl %1\n",	/* reg: MODI4(reg,reg) *//* 157 */	"movl %0,%c\n",	/* reg: CVPU4(reg) *//* 158 */	"movl %0,%c\n",	/* reg: CVUP4(reg) *//* 159 */	"movsbl %0,%c\n",	/* reg: CVII4(INDIRI1(addr)) *//* 160 */	"movswl %0,%c\n",	/* reg: CVII4(INDIRI2(addr)) *//* 161 */	"movzbl %0,%c\n",	/* reg: CVUU4(INDIRU1(addr)) *//* 162 */	"movzwl %0,%c\n",	/* reg: CVUU4(INDIRU2(addr)) *//* 163 */	"# extend\n",	/* reg: CVII4(reg) *//* 164 */	"# extend\n",	/* reg: CVIU4(reg) *//* 165 */	"# extend\n",	/* reg: CVUI4(reg) *//* 166 */	"# extend\n",	/* reg: CVUU4(reg) *//* 167 */	"# truncate\n",	/* reg: CVII1(reg) *//* 168 */	"# truncate\n",	/* reg: CVII2(reg) *//* 169 */	"# truncate\n",	/* reg: CVUU1(reg) *//* 170 */	"# truncate\n",	/* reg: CVUU2(reg) *//* 171 */	"%0",	/* mrca: mem4 *//* 172 */	"%0",	/* mrca: rc *//* 173 */	"$%a",	/* mrca: ADDRGP4 *//* 174 */	"$%a",	/* mrca: ADDRGP8 *//* 175 */	"movb %1,%0\n",	/* stmt: ASGNI1(addr,rc) *//* 176 */	"movw %1,%0\n",	/* stmt: ASGNI2(addr,rc) *//* 177 */	"movl %1,%0\n",	/* stmt: ASGNI4(addr,rc) *//* 178 */	"movb %1,%0\n",	/* stmt: ASGNU1(addr,rc) *//* 179 */	"movw %1,%0\n",	/* stmt: ASGNU2(addr,rc) *//* 180 */	"movl %1,%0\n",	/* stmt: ASGNU4(addr,rc) *//* 181 */	"movl %1,%0\n",	/* stmt: ASGNP4(addr,rc) *//* 182 */	"pushl %0\n",	/* stmt: ARGI4(mrca) *//* 183 */	"pushl %0\n",	/* stmt: ARGU4(mrca) *//* 184 */	"pushl %0\n",	/* stmt: ARGP4(mrca) *//* 185 */	"movl $%a,%%ecx\nrep\nmovsb\n",	/* stmt: ASGNB(reg,INDIRB(reg)) *//* 186 */	"subl $%a,%%esp\nmovl %%esp,%%edi\nmovl $%a,%%ecx\nrep\nmovsb\n",	/* stmt: ARGB(INDIRB(reg)) *//* 187 */	"l %0",	/* memf: INDIRF8(addr) *//* 188 */	"s %0",	/* memf: INDIRF4(addr) *//* 189 */	"s %0",	/* memf: CVFF8(INDIRF4(addr)) *//* 190 */	"l %0",	/* memf: CVFF4(INDIRF8(addr)) *//* 191 */	"fld%0\n",	/* freg: memf *//* 192 */	"fstpl %0\n",	/* stmt: ASGNF8(addr,freg) *//* 193 */	"fstps %0\n",	/* stmt: ASGNF4(addr,freg) *//* 194 */	"fstps %0\n",	/* stmt: ASGNF4(addr,CVFF4(freg)) *//* 195 */	"subl $8,%%esp\nfstpl (%%esp)\n",	/* stmt: ARGF8(freg) *//* 196 */	"subl $4,%%esp\nfstps (%%esp)\n",	/* stmt: ARGF4(freg) *//* 197 */	"fchs\n",	/* freg: NEGF8(freg) *//* 198 */	"fchs\n",	/* freg: NEGF4(freg) *//* 199 */	"%0",	/* flt: memf *//* 200 */	"p %%st(1),%%st",	/* flt: freg *//* 201 */	"fadd%1\n",	/* freg: ADDF4(freg,flt) *//* 202 */	"fadd%1\n",	/* freg: ADDF8(freg,flt) *//* 203 */	"fdiv%1\n",	/* freg: DIVF4(freg,flt) *//* 204 */	"fdiv%1\n",	/* freg: DIVF8(freg,flt) *//* 205 */	"fmul%1\n",	/* freg: MULF4(freg,flt) *//* 206 */	"fmul%1\n",	/* freg: MULF8(freg,flt) *//* 207 */	"fsub%1\n",	/* freg: SUBF4(freg,flt) *//* 208 */	"fsub%1\n",	/* freg: SUBF8(freg,flt) *//* 209 */	"# CVFF8\n",	/* freg: CVFF8(freg) *//* 210 */	"sub $4,%%esp\nfstps (%%esp)\nflds (%%esp)\naddl $4,%%esp\n",	/* freg: CVFF4(freg) *//* 211 */	"fistpl %0\n",	/* stmt: ASGNI4(addr,CVFI4(freg)) *//* 212 */	"subl $4,%%esp\nfistpl 0(%%esp)\npopl %c\n",	/* reg: CVFI4(freg) *//* 213 */	"fildl %0\n",	/* freg: CVIF8(INDIRI4(addr)) *//* 214 */	"pushl %0\nfildl (%%esp)\naddl $4,%%esp\n",	/* freg: CVIF8(reg) *//* 215 */	"fildl %0\n",	/* freg: CVIF4(INDIRI4(addr)) *//* 216 */	"pushl %0\nfildl (%%esp)\naddl $4,%%esp\n",	/* freg: CVIF4(reg) *//* 217 */	"%a",	/* addrj: ADDRGP4 *//* 218 */	"*%0",	/* addrj: reg *//* 219 */	"*%0",	/* addrj: mem4 *//* 220 */	"%a:\n",	/* stmt: LABELV *//* 221 */	"jmp %0\n",	/* stmt: JUMPV(addrj) *//* 222 */	"cmpl %1,%0\nje %a\n",	/* stmt: EQI4(mem4,rc) *//* 223 */	"cmpl %1,%0\njge %a\n",	/* stmt: GEI4(mem4,rc) *//* 224 */	"cmpl %1,%0\njg %a\n",	/* stmt: GTI4(mem4,rc) *//* 225 */	"cmpl %1,%0\njle %a\n",	/* stmt: LEI4(mem4,rc) *//* 226 */	"cmpl %1,%0\njl %a\n",	/* stmt: LTI4(mem4,rc) *//* 227 */	"cmpl %1,%0\njne %a\n",	/* stmt: NEI4(mem4,rc) *//* 228 */	"cmpl %1,%0\njae %a\n",	/* stmt: GEU4(mem4,rc) *//* 229 */	"cmpl %1,%0\nja  %a\n",	/* stmt: GTU4(mem4,rc) *//* 230 */	"cmpl %1,%0\njbe %a\n",	/* stmt: LEU4(mem4,rc) *//* 231 */	"cmpl %1,%0\njb  %a\n",	/* stmt: LTU4(mem4,rc) *//* 232 */	"cmpl %1,%0\nje %a\n",	/* stmt: EQI4(reg,mrc) *//* 233 */	"cmpl %1,%0\njge %a\n",	/* stmt: GEI4(reg,mrc) *//* 234 */	"cmpl %1,%0\njg %a\n",	/* stmt: GTI4(reg,mrc) *//* 235 */	"cmpl %1,%0\njle %a\n",	/* stmt: LEI4(reg,mrc) *//* 236 */	"cmpl %1,%0\njl %a\n",	/* stmt: LTI4(reg,mrc) *//* 237 */	"cmpl %1,%0\njne %a\n",	/* stmt: NEI4(reg,mrc) *//* 238 */	"cmpl %1,%0\nje %a\n",	/* stmt: EQU4(reg,mrc) *//* 239 */	"cmpl %1,%0\njae %a\n",	/* stmt: GEU4(reg,mrc) *//* 240 */	"cmpl %1,%0\nja %a\n",	/* stmt: GTU4(reg,mrc) *//* 241 */	"cmpl %1,%0\njbe %a\n",	/* stmt: LEU4(reg,mrc) *//* 242 */	"cmpl %1,%0\njb %a\n",	/* stmt: LTU4(reg,mrc) *//* 243 */	"cmpl %1,%0\njne %a\n",	/* stmt: NEU4(reg,mrc) *//* 244 */	"testl %1,%0\nje %a\n",	/* stmt: EQI4(BANDU4(mr,con),con0) *//* 245 */	"testl %1,%0\njne %a\n",	/* stmt: NEI4(BANDU4(mr,con),con0) *//* 246 */	"testw %1,%0\nje %a\n",	/* stmt: EQI4(BANDU4(CVII2(INDIRI2(addr)),con),con0) *//* 247 */	"testw %1,%0\njne %a\n",	/* stmt: NEI4(BANDU4(CVII2(INDIRI2(addr)),con),con0) *//* 248 */	"testw %1,%0\nje %a\n",	/* stmt: EQI4(BANDU4(CVIU2(INDIRI2(addr)),con),con0) *//* 249 */	"testw %1,%0\njne %a\n",	/* stmt: NEI4(BANDU4(CVIU2(INDIRI2(addr)),con),con0) *//* 250 */	"testb %1,%0\nje %a\n",	/* stmt: EQI4(BANDU4(CVII1(INDIRI1(addr)),con),con0) *//* 251 */	"l %0",	/* cmpf: INDIRF8(addr) *//* 252 */	"s %0",	/* cmpf: INDIRF4(addr) *//* 253 */	"s %0",	/* cmpf: CVFF8(INDIRF4(addr)) *//* 254 */	"p",	/* cmpf: freg *//* 255 */	"fcomp%0\nfstsw %%ax\nsahf\nje %a\n",	/* stmt: EQF8(cmpf,freg) *//* 256 */	"fcomp%0\nfstsw %%ax\nsahf\njbe %a\n",	/* stmt: GEF8(cmpf,freg) *//* 257 */	"fcomp%0\nfstsw %%ax\nsahf\njb %a\n",	/* stmt: GTF8(cmpf,freg) *//* 258 */	"fcomp%0\nfstsw %%ax\nsahf\njae %a\n",	/* stmt: LEF8(cmpf,freg) *//* 259 */	"fcomp%0\nfstsw %%ax\nsahf\nja %a\n",	/* stmt: LTF8(cmpf,freg) *//* 260 */	"fcomp%0\nfstsw %%ax\nsahf\njne %a\n",	/* stmt: NEF8(cmpf,freg) *//* 261 */	"fcomp%0\nfstsw %%ax\nsahf\nje %a\n",	/* stmt: EQF4(cmpf,freg) *//* 262 */	"fcomp%0\nfstsw %%ax\nsahf\njbe %a\n",	/* stmt: GEF4(cmpf,freg) *//* 263 */	"fcomp%0\nfstsw %%ax\nsahf\njb %a\n",	/* stmt: GTF4(cmpf,freg) *//* 264 */	"fcomp%0\nfstsw %%ax\nsahf\njae %a\n",	/* stmt: LEF4(cmpf,freg) *//* 265 */	"fcomp%0\nfstsw %%ax\nsahf\nja %a\n",	/* stmt: LTF4(cmpf,freg) *//* 266 */	"fcomp%0\nfstsw %%ax\nsahf\njne %a\n",	/* stmt: NEF4(cmpf,freg) *//* 267 */	"fidivl %1\n",	/* freg: DIVF8(freg,CVIF8(INDIRI4(addr))) *//* 268 */	"fidivrl %0\n",	/* freg: DIVF8(CVIF8(INDIRI4(addr)),freg) *//* 269 */	"fidivs %1\n",	/* freg: DIVF8(freg,CVIF8(CVII2(INDIRI2(addr)))) *//* 270 */	"fidivrs %0\n",	/* freg: DIVF8(CVIF8(CVII2(INDIRI2(addr))),freg) *//* 271 */	"fimull %1\n",	/* freg: MULF8(freg,CVIF8(INDIRI4(addr))) *//* 272 */	"fimuls %1\n",	/* freg: MULF8(freg,CVIF8(CVII2(INDIRI2(addr)))) *//* 273 */	"fisubl %1\n",	/* freg: SUBF8(freg,CVIF8(INDIRI4(addr))) *//* 274 */	"fisubrl %0\n",	/* freg: SUBF8(CVIF8(INDIRI4(addr)),freg) *//* 275 */	"fisubs %1\n",	/* freg: SUBF8(freg,CVIF8(CVII2(INDIRI2(addr)))) *//* 276 */	"fisubrs %0\n",	/* freg: SUBF8(CVIF8(CVII2(INDIRI2(addr))),freg) *//* 277 */	"fiaddl %1\n",	/* freg: ADDF8(freg,CVIF8(INDIRI4(addr))) *//* 278 */	"fiadds %1\n",	/* freg: ADDF8(freg,CVIF8(CVII2(INDIRI2(addr)))) *//* 279 */	"fdivs %1\n",	/* freg: ADDF8(freg,CVFF8(INDIRF4(addr))) *//* 280 */	"fsubs %1\n",	/* freg: SUBF8(freg,CVFF8(INDIRF4(addr))) *//* 281 */	"fmuls %1\n",	/* freg: MULF8(freg,CVFF8(INDIRF4(addr))) *//* 282 */	"fdivs %1\n",	/* freg: DIVF8(freg,CVFF8(INDIRF4(addr))) *//* 283 */	"fld%0\n",	/* freg: LOADF8(memf) *//* 284 */	"call %0\naddl $%a,%%esp\n",	/* reg: CALLI4(addrj) *//* 285 */	"call %0\naddl $%a,%%esp\n",	/* reg: CALLU4(addrj) *//* 286 */	"call %0\naddl $%a,%%esp\n",	/* reg: CALLP4(addrj) *//* 287 */	"call %0\n",	/* reg: CALLI4(addrj) *//* 288 */	"call %0\n",	/* reg: CALLU4(addrj) *//* 289 */	"call %0\n",	/* reg: CALLP4(addrj) *//* 290 */	"call %0\naddl $%a,%%esp\n",	/* stmt: CALLV(addrj) *//* 291 */	"call %0\n",	/* stmt: CALLV(addrj) *//* 292 */	"call %0\naddl $%a,%%esp\n",	/* freg: CALLF4(addrj) *//* 293 */	"call %0\n",	/* freg: CALLF4(addrj) *//* 294 */	"call %0\naddl $%a,%%esp\nfstp %%st(0)\n",	/* stmt: CALLF4(addrj) *//* 295 */	"call %0\nfstp %%st(0)\n",	/* stmt: CALLF4(addrj) *//* 296 */	"call %0\naddl $%a,%%esp\n",	/* freg: CALLF8(addrj) *//* 297 */	"call %0\n",	/* freg: CALLF8(addrj) *//* 298 */	"call %0\naddl $%a,%%esp\nfstp %%st(0)\n",	/* stmt: CALLF8(addrj) *//* 299 */	"call %0\nfstp %%st(0)\n",	/* stmt: CALLF8(addrj) *//* 300 */	"# ret\n",	/* stmt: RETI4(reg) *//* 301 */	"# ret\n",	/* stmt: RETU4(reg) *//* 302 */	"# ret\n",	/* stmt: RETP4(reg) *//* 303 */	"# ret\n",	/* stmt: RETF4(freg) *//* 304 */	"# ret\n",	/* stmt: RETF8(freg) */};static char _isinstruction[] = {/* 0 */	0,/* 1 */	1,	/* # read register\n *//* 2 */	1,	/* # read register\n *//* 3 */	1,	/* # read register\n *//* 4 */	1,	/* # read register\n *//* 5 */	1,	/* # read register\n *//* 6 */	1,	/* # read register\n *//* 7 */	1,	/* # read register\n *//* 8 */	1,	/* # read register\n *//* 9 */	1,	/* # read register\n *//* 10 */	1,	/* # read register\n *//* 11 */	1,	/* # read register\n *//* 12 */	1,	/* # read register\n *//* 13 */	1,	/* # write register\n *//* 14 */	1,	/* # write register\n *//* 15 */	1,	/* # write register\n *//* 16 */	1,	/* # write register\n *//* 17 */	1,	/* # write register\n *//* 18 */	1,	/* # write register\n *//* 19 */	1,	/* # write register\n *//* 20 */	1,	/* # write register\n *//* 21 */	1,	/* # write register\n *//* 22 */	1,	/* # write register\n *//* 23 */	1,	/* # write register\n *//* 24 */	1,	/* # write register\n *//* 25 */	0,	/* %a *//* 26 */	0,	/* %a *//* 27 */	0,	/* %a *//* 28 */	0,	/* %a *//* 29 */	0,	/* %a *//* 30 */	0,	/* %a *//* 31 */	0,	/* %a *//* 32 */	0,	/* %a *//* 33 */	0,	/* %a *//* 34 */	0,	/* %a *//* 35 */	0,	/* $%0 *//* 36 */	0,	/*  *//* 37 */	0,	/*  *//* 38 */	0,	/* %a *//* 39 */	0,	/* %a *//* 40 */	0,	/* %0 *//* 41 */	0,	/* %a *//* 42 */	0,	/* (%0) *//* 43 */	0,	/* %1(%0) *//* 44 */	0,	/* %1(%0) *//* 45 */	0,	/* %1(%0) *//* 46 */	0,	/* %a(%%ebp) *//* 47 */	0,	/* %a(%%ebp) *//* 48 */	0,	/* %0 *//* 49 */	0,	/* %0,2 *//* 50 */	0,	/* %0,4 *//* 51 */	0,	/* %0,8 *//* 52 */	0,	/* %0,2 *//* 53 */	0,	/* %0,4 *//* 54 */	0,	/* %0,8 *//* 55 */	0,	/* 1 *//* 56 */	0,	/* 1 *//* 57 */	0,	/* 1 *//* 58 */	0,	/* 1 *//* 59 */	0,	/* 2 *//* 60 */	0,	/* 2 *//* 61 */	0,	/* 3 *//* 62 */	0,	/* 3 *//* 63 */	0,	/* %0 *//* 64 */	0,	/* %0 *//* 65 */	0,	/* %1(,%0) *//* 66 */	0,	/* %1(,%0) *//* 67 */	0,	/* %1(,%0) *//* 68 */	0,	/* %1(%0) *//* 69 */	0,	/* %1(%0) *//* 70 */	0,	/* %1(%0) *//* 71 */	0,	/* (%1,%0) *//* 72 */	0,	/* (%1,%0) *//* 73 */	0,	/* (%1,%0) *//* 74 */	0,	/* (,%0) *//* 75 */	0,	/* %0 *//* 76 */	0,	/* %0 *//* 77 */	0,	/* %0 *//* 78 */	0,	/* %0 *//* 79 */	0,	/* %0 *//* 80 */	0,	/* %0 *//* 81 */	0,	/* %0 *//* 82 */	0,	/* %0 *//* 83 */	0,	/* %0 *//* 84 */	0,	/* %0 *//* 85 */	0,	/* %0 *//* 86 */	0,	/* %0 *//* 87 */	0,	/* %0 *//* 88 */	0,	/* %0 *//* 89 */	0,	/* %0 *//* 90 */	0,	/* %0 *//* 91 */	0,	/* %0 *//* 92 */	0,	/* %0 *//* 93 */	0,	/* %0 *//* 94 */	1,	/* leal %0,%c\n *//* 95 */	1,	/* movl %0,%c\n *//* 96 */	1,	/* movb %0,%c\n *//* 97 */	1,	/* movw %0,%c\n *//* 98 */	1,	/* movl %0,%c\n *//* 99 */	1,	/* # move\n *//* 100 */	1,	/* # move\n *//* 101 */	1,	/* # move\n *//* 102 */	1,	/* # move\n *//* 103 */	1,	/* # move\n *//* 104 */	1,	/* # move\n *//* 105 */	1,	/* # move\n *//* 106 */	1,	/* ?movl %0,%c\naddl %1,%c\n *//* 107 */	1,	/* ?movl %0,%c\naddl %1,%c\n *//* 108 */	1,	/* ?movl %0,%c\naddl %1,%c\n *//* 109 */	1,	/* ?movl %0,%c\nsubl %1,%c\n *//* 110 */	1,	/* ?movl %0,%c\nsubl %1,%c\n *//* 111 */	1,	/* ?movl %0,%c\nsubl %1,%c\n *//* 112 */	1,	/* ?movl %0,%c\nandl %1,%c\n *//* 113 */	1,	/* ?movl %0,%c\norl %1,%c\n *//* 114 */	1,	/* ?movl %0,%c\nxorl %1,%c\n *//* 115 */	1,	/* ?movl %0,%c\nandl %1,%c\n *//* 116 */	1,	/* ?movl %0,%c\norl %1,%c\n *//* 117 */	1,	/* ?movl %0,%c\nxorl %1,%c\n *//* 118 */	1,	/* incl %1\n *//* 119 */	1,	/* incl %1\n *//* 120 */	1,	/* incl %1\n *//* 121 */	1,	/* decl %1\n *//* 122 */	1,	/* decl %1\n *//* 123 */	1,	/* decl %1\n *//* 124 */	1,	/* addl %2,%1\n *//* 125 */	1,	/* sub %2,%1\n *//* 126 */	1,	/* add %2,%1\n *//* 127 */	1,	/* sub %2,%1\n *//* 128 */	1,	/* andl %2,%1\n *//* 129 */	1,	/* orl %2,%1\n *//* 130 */	1,	/* xorl %2,%1\n *//* 131 */	1,	/* andl %2,%1\n *//* 132 */	1,	/* orl %2,%1\n *//* 133 */	1,	/* xorl %2,%1\n *//* 134 */	1,	/* ?movl %0,%c\nnotl %c\n *//* 135 */	1,	/* ?movl %0,%c\nnotl %c\n *//* 136 */	1,	/* ?movl %0,%c\nnegl %c\n *//* 137 */	1,	/* notl %1\n *//* 138 */	1,	/* notl %1\n *//* 139 */	1,	/* negl %1\n *//* 140 */	1,	/* ?movl %0,%c\nsall %1,%c\n *//* 141 */	1,	/* ?movl %0,%c\nshll %1,%c\n *//* 142 */	1,	/* ?movl %0,%c\nsarl %1,%c\n *//* 143 */	1,	/* ?movl %0,%c\nshrl %1,%c\n *//* 144 */	1,	/* sall %2,%1\n *//* 145 */	1,	/* shll %2,%1\n *//* 146 */	1,	/* sarl %2,%1\n *//* 147 */	1,	/* shrl %2,%1\n *//* 148 */	0,	/* $%a *//* 149 */	0,	/* %%cl *//* 150 */	1,	/* ?movl %0,%c\nimull %1,%c\n *//* 151 */	1,	/* imul %0,%1,%c\n */

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?