Changeset 66 in dev for BasicCompiler32/NumOpe_Arithmetic.cpp
- Timestamp:
- Mar 9, 2007, 4:59:13 AM (18 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
BasicCompiler32/NumOpe_Arithmetic.cpp
r3 r66 11 11 12 12 //fistp qword ptr[esp] 13 fpu_cast(); 14 OpBuffer[obp++]=(char)0xDF; 15 OpBuffer[obp++]=(char)0x3C; 16 OpBuffer[obp++]=(char)0x24; 17 fpu_cast_end(); 13 op_fistp_ptr_esp( sizeof(_int64) ); 18 14 19 15 //pop ebx … … 31 27 32 28 //fistp qword ptr[esp] 33 fpu_cast(); 34 OpBuffer[obp++]=(char)0xDF; 35 OpBuffer[obp++]=(char)0x3C; 36 OpBuffer[obp++]=(char)0x24; 37 fpu_cast_end(); 29 op_fistp_ptr_esp( sizeof(_int64) ); 38 30 39 31 //pop ebx … … 84 76 85 77 //fistp qword ptr[esp] 86 fpu_cast(); 87 OpBuffer[obp++]=(char)0xDF; 88 OpBuffer[obp++]=(char)0x3C; 89 OpBuffer[obp++]=(char)0x24; 90 fpu_cast_end(); 78 op_fistp_ptr_esp( sizeof(_int64) ); 91 79 92 80 //pop eax … … 104 92 105 93 //fistp qword ptr[esp] 106 fpu_cast(); 107 OpBuffer[obp++]=(char)0xDF; 108 OpBuffer[obp++]=(char)0x3C; 109 OpBuffer[obp++]=(char)0x24; 110 fpu_cast_end(); 94 op_fistp_ptr_esp( sizeof(_int64) ); 111 95 112 96 //pop eax … … 510 494 511 495 //fistp dword ptr[esp] 512 fpu_cast(); 513 OpBuffer[obp++]=(char)0xDB; 514 OpBuffer[obp++]=(char)0x1C; 515 OpBuffer[obp++]=(char)0x24; 516 fpu_cast_end(); 496 op_fistp_ptr_esp( sizeof(long) ); 517 497 } 518 498 else if(type[sp-1]==DEF_SINGLE){ … … 521 501 522 502 //fistp dword ptr[esp] 523 fpu_cast(); 524 OpBuffer[obp++]=(char)0xDB; 525 OpBuffer[obp++]=(char)0x1C; 526 OpBuffer[obp++]=(char)0x24; 527 fpu_cast_end(); 503 op_fistp_ptr_esp( sizeof(long) ); 528 504 } 529 505 … … 539 515 540 516 //fistp dword ptr[esp] 541 fpu_cast(); 542 OpBuffer[obp++]=(char)0xDB; 543 OpBuffer[obp++]=(char)0x1C; 544 OpBuffer[obp++]=(char)0x24; 545 fpu_cast_end(); 517 op_fistp_ptr_esp( sizeof(long) ); 546 518 } 547 519 else if(type[sp-2]==DEF_SINGLE){ … … 550 522 551 523 //fistp dword ptr[esp] 552 fpu_cast(); 553 OpBuffer[obp++]=(char)0xDB; 554 OpBuffer[obp++]=(char)0x1C; 555 OpBuffer[obp++]=(char)0x24; 556 fpu_cast_end(); 524 op_fistp_ptr_esp( sizeof(long) ); 557 525 } 558 526 … … 786 754 787 755 //fistp dword ptr[esp] 788 fpu_cast(); 789 OpBuffer[obp++]=(char)0xDB; 790 OpBuffer[obp++]=(char)0x1C; 791 OpBuffer[obp++]=(char)0x24; 792 fpu_cast_end(); 756 op_fistp_ptr_esp( sizeof(long) ); 793 757 } 794 758 else if(type[sp-1]==DEF_SINGLE){ … … 797 761 798 762 //fistp dword ptr[esp] 799 fpu_cast(); 800 OpBuffer[obp++]=(char)0xDB; 801 OpBuffer[obp++]=(char)0x1C; 802 OpBuffer[obp++]=(char)0x24; 803 fpu_cast_end(); 763 op_fistp_ptr_esp( sizeof(long) ); 804 764 } 805 765 … … 815 775 816 776 //fistp dword ptr[esp] 817 fpu_cast(); 818 OpBuffer[obp++]=(char)0xDB; 819 OpBuffer[obp++]=(char)0x1C; 820 OpBuffer[obp++]=(char)0x24; 821 fpu_cast_end(); 777 op_fistp_ptr_esp( sizeof(long) ); 822 778 } 823 779 else if(type[sp-2]==DEF_SINGLE){ … … 826 782 827 783 //fistp dword ptr[esp] 828 fpu_cast(); 829 OpBuffer[obp++]=(char)0xDB; 830 OpBuffer[obp++]=(char)0x1C; 831 OpBuffer[obp++]=(char)0x24; 832 fpu_cast_end(); 784 op_fistp_ptr_esp( sizeof(long) ); 833 785 } 834 786 … … 1119 1071 1120 1072 //fistp dword ptr[esp] 1121 fpu_cast(); 1122 OpBuffer[obp++]=(char)0xDB; 1123 OpBuffer[obp++]=(char)0x1C; 1124 OpBuffer[obp++]=(char)0x24; 1125 fpu_cast_end(); 1073 op_fistp_ptr_esp( sizeof(long) ); 1126 1074 1127 1075 //pop ecx … … 1133 1081 1134 1082 //fistp dword ptr[esp] 1135 fpu_cast(); 1136 OpBuffer[obp++]=(char)0xDB; 1137 OpBuffer[obp++]=(char)0x1C; 1138 OpBuffer[obp++]=(char)0x24; 1139 fpu_cast_end(); 1083 op_fistp_ptr_esp( sizeof(long) ); 1140 1084 1141 1085 //pop ecx … … 1160 1104 1161 1105 //fistp qword ptr[esp] 1162 fpu_cast(); 1163 OpBuffer[obp++]=(char)0xDF; 1164 OpBuffer[obp++]=(char)0x3C; 1165 OpBuffer[obp++]=(char)0x24; 1166 fpu_cast_end(); 1106 op_fistp_ptr_esp( sizeof(_int64) ); 1167 1107 1168 1108 //pop eax … … 1180 1120 1181 1121 //fistp qword ptr[esp] 1182 fpu_cast(); 1183 OpBuffer[obp++]=(char)0xDF; 1184 OpBuffer[obp++]=(char)0x3C; 1185 OpBuffer[obp++]=(char)0x24; 1186 fpu_cast_end(); 1122 op_fistp_ptr_esp( sizeof(_int64) ); 1187 1123 1188 1124 //pop eax … … 1245 1181 1246 1182 //fistp dword ptr[esp] 1247 fpu_cast(); 1248 OpBuffer[obp++]=(char)0xDB; 1249 OpBuffer[obp++]=(char)0x1C; 1250 OpBuffer[obp++]=(char)0x24; 1251 fpu_cast_end(); 1183 op_fistp_ptr_esp( sizeof(long) ); 1252 1184 1253 1185 //pop ecx … … 1259 1191 1260 1192 //fistp dword ptr[esp] 1261 fpu_cast(); 1262 OpBuffer[obp++]=(char)0xDB; 1263 OpBuffer[obp++]=(char)0x1C; 1264 OpBuffer[obp++]=(char)0x24; 1265 fpu_cast_end(); 1193 op_fistp_ptr_esp( sizeof(long) ); 1266 1194 1267 1195 //pop ecx … … 1288 1216 1289 1217 //fistp dword ptr[esp] 1290 fpu_cast(); 1291 OpBuffer[obp++]=(char)0xDB; 1292 OpBuffer[obp++]=(char)0x1C; 1293 OpBuffer[obp++]=(char)0x24; 1294 fpu_cast_end(); 1218 op_fistp_ptr_esp( sizeof(long) ); 1295 1219 } 1296 1220 else if(type[sp-2]==DEF_SINGLE){ … … 1299 1223 1300 1224 //fistp dword ptr[esp] 1301 fpu_cast(); 1302 OpBuffer[obp++]=(char)0xDB; 1303 OpBuffer[obp++]=(char)0x1C; 1304 OpBuffer[obp++]=(char)0x24; 1305 fpu_cast_end(); 1225 op_fistp_ptr_esp( sizeof(long) ); 1306 1226 } 1307 1227 … … 1353 1273 1354 1274 //fistp dword ptr[esp] 1355 fpu_cast(); 1356 OpBuffer[obp++]=(char)0xDB; 1357 OpBuffer[obp++]=(char)0x1C; 1358 OpBuffer[obp++]=(char)0x24; 1359 fpu_cast_end(); 1275 op_fistp_ptr_esp( sizeof(long) ); 1360 1276 1361 1277 //pop ecx … … 1367 1283 1368 1284 //fistp dword ptr[esp] 1369 fpu_cast(); 1370 OpBuffer[obp++]=(char)0xDB; 1371 OpBuffer[obp++]=(char)0x1C; 1372 OpBuffer[obp++]=(char)0x24; 1373 fpu_cast_end(); 1285 op_fistp_ptr_esp( sizeof(long) ); 1374 1286 1375 1287 //pop ecx … … 1394 1306 1395 1307 //fistp qword ptr[esp] 1396 fpu_cast(); 1397 OpBuffer[obp++]=(char)0xDF; 1398 OpBuffer[obp++]=(char)0x3C; 1399 OpBuffer[obp++]=(char)0x24; 1400 fpu_cast_end(); 1308 op_fistp_ptr_esp( sizeof(_int64) ); 1401 1309 1402 1310 //pop eax … … 1414 1322 1415 1323 //fistp qword ptr[esp] 1416 fpu_cast(); 1417 OpBuffer[obp++]=(char)0xDF; 1418 OpBuffer[obp++]=(char)0x3C; 1419 OpBuffer[obp++]=(char)0x24; 1420 fpu_cast_end(); 1324 op_fistp_ptr_esp( sizeof(_int64) ); 1421 1325 1422 1326 //pop eax … … 1490 1394 1491 1395 //fistp dword ptr[esp] 1492 fpu_cast(); 1493 OpBuffer[obp++]=(char)0xDB; 1494 OpBuffer[obp++]=(char)0x1C; 1495 OpBuffer[obp++]=(char)0x24; 1496 fpu_cast_end(); 1396 op_fistp_ptr_esp( sizeof(long) ); 1497 1397 1498 1398 //pop ecx … … 1504 1404 1505 1405 //fistp dword ptr[esp] 1506 fpu_cast(); 1507 OpBuffer[obp++]=(char)0xDB; 1508 OpBuffer[obp++]=(char)0x1C; 1509 OpBuffer[obp++]=(char)0x24; 1510 fpu_cast_end(); 1406 op_fistp_ptr_esp( sizeof(long) ); 1511 1407 1512 1408 //pop ecx … … 1533 1429 1534 1430 //fistp dword ptr[esp] 1535 fpu_cast(); 1536 OpBuffer[obp++]=(char)0xDB; 1537 OpBuffer[obp++]=(char)0x1C; 1538 OpBuffer[obp++]=(char)0x24; 1539 fpu_cast_end(); 1431 op_fistp_ptr_esp( sizeof(long) ); 1540 1432 } 1541 1433 else if(type[sp-2]==DEF_SINGLE){ … … 1544 1436 1545 1437 //fistp dword ptr[esp] 1546 fpu_cast(); 1547 OpBuffer[obp++]=(char)0xDB; 1548 OpBuffer[obp++]=(char)0x1C; 1549 OpBuffer[obp++]=(char)0x24; 1550 fpu_cast_end(); 1438 op_fistp_ptr_esp( sizeof(long) ); 1551 1439 } 1552 1440
Note:
See TracChangeset
for help on using the changeset viewer.