Add function prototypes.
This commit is contained in:
parent
053c509fc9
commit
ef3a6b3cc4
|
@ -42,3 +42,21 @@ char dr_m[8][8] = {
|
|||
-1, -1, -1, -1, -1, -1, -1, -1
|
||||
};
|
||||
#endif
|
||||
|
||||
/* 8086 specific routines */
|
||||
void ea_1(int param);
|
||||
void ea_2(int param);
|
||||
void reverse(void);
|
||||
void badsyntax(void);
|
||||
void regsize(register int sz);
|
||||
void indexed(void);
|
||||
void branch(register int opc,expr_t exp);
|
||||
void pushop(register int opc);
|
||||
void addop(register int opc);
|
||||
void rolop(register int opc);
|
||||
void incop(register int opc);
|
||||
void callop(register int opc);
|
||||
void xchg(register int opc);
|
||||
void test(register int opc);
|
||||
void mov(register int opc);
|
||||
void imul(int opc);
|
||||
|
|
|
@ -8,7 +8,8 @@
|
|||
* INTEL 8086 special routines
|
||||
*/
|
||||
|
||||
ea_1(param) {
|
||||
void ea_1(int param)
|
||||
{
|
||||
|
||||
if ((mrg_1 & 070) || (param & ~070)) {
|
||||
serror("bad operand");
|
||||
|
@ -41,7 +42,7 @@ ea_1(param) {
|
|||
}
|
||||
}
|
||||
|
||||
ea_2(param) {
|
||||
void ea_2(int param) {
|
||||
|
||||
mrg_1 = mrg_2;
|
||||
exp_1 = exp_2;
|
||||
|
@ -49,8 +50,10 @@ ea_2(param) {
|
|||
ea_1(param);
|
||||
}
|
||||
|
||||
reverse() {
|
||||
register m, r; expr_t e;
|
||||
void reverse(void)
|
||||
{
|
||||
register int m, r;
|
||||
expr_t e;
|
||||
|
||||
m = mrg_1; mrg_1 = mrg_2; mrg_2 = m;
|
||||
e = exp_1; exp_1 = exp_2; exp_2 = e;
|
||||
|
@ -59,13 +62,15 @@ reverse() {
|
|||
#endif
|
||||
}
|
||||
|
||||
badsyntax() {
|
||||
void badsyntax(void)
|
||||
{
|
||||
|
||||
serror("bad operands");
|
||||
}
|
||||
|
||||
regsize(sz) register sz; {
|
||||
register bit;
|
||||
void regsize(register int sz)
|
||||
{
|
||||
register int bit;
|
||||
|
||||
sz <<= 3;
|
||||
bit = 010;
|
||||
|
@ -77,7 +82,8 @@ regsize(sz) register sz; {
|
|||
mrg_2 &= ~bit;
|
||||
}
|
||||
|
||||
indexed() {
|
||||
void indexed(void)
|
||||
{
|
||||
int sm1, sm2;
|
||||
|
||||
if (mrg_2 & ~7)
|
||||
|
@ -98,8 +104,9 @@ indexed() {
|
|||
}
|
||||
}
|
||||
|
||||
branch(opc,exp) register opc; expr_t exp; {
|
||||
register sm,dist;
|
||||
void branch(register int opc,expr_t exp)
|
||||
{
|
||||
register int sm,dist;
|
||||
int saving = opc == 0353 ? 1 : 3;
|
||||
|
||||
dist = exp.val - (DOTVAL + 2);
|
||||
|
@ -132,7 +139,8 @@ branch(opc,exp) register opc; expr_t exp; {
|
|||
emit1(dist);
|
||||
}
|
||||
|
||||
pushop(opc) register opc; {
|
||||
void pushop(register int opc)
|
||||
{
|
||||
|
||||
regsize(1);
|
||||
if (mrg_1 & 020) {
|
||||
|
@ -161,8 +169,8 @@ pushop(opc) register opc; {
|
|||
}
|
||||
}
|
||||
|
||||
addop(opc) register opc; {
|
||||
|
||||
void addop(register int opc)
|
||||
{
|
||||
regsize(opc);
|
||||
if (mrg_2 >= 0300) {
|
||||
emit1(opc); ea_1((mrg_2&7)<<3);
|
||||
|
@ -197,8 +205,9 @@ addop(opc) register opc; {
|
|||
badsyntax();
|
||||
}
|
||||
|
||||
rolop(opc) register opc; {
|
||||
register cmrg;
|
||||
void rolop(register int opc)
|
||||
{
|
||||
register int cmrg;
|
||||
|
||||
cmrg = mrg_2;
|
||||
mrg_2 = mrg_1;
|
||||
|
@ -217,7 +226,8 @@ rolop(opc) register opc; {
|
|||
badsyntax();
|
||||
}
|
||||
|
||||
incop(opc) register opc; {
|
||||
void incop(register int opc)
|
||||
{
|
||||
|
||||
regsize(opc);
|
||||
if ((opc&1) && mrg_1>=0300) {
|
||||
|
@ -228,8 +238,8 @@ incop(opc) register opc; {
|
|||
}
|
||||
}
|
||||
|
||||
callop(opc) register opc; {
|
||||
|
||||
void callop(register int opc)
|
||||
{
|
||||
regsize(1);
|
||||
if (mrg_1 & 040) {
|
||||
if (opc == (040+(0351<<8))) {
|
||||
|
@ -249,8 +259,8 @@ callop(opc) register opc; {
|
|||
}
|
||||
}
|
||||
|
||||
xchg(opc) register opc; {
|
||||
|
||||
void xchg(register int opc)
|
||||
{
|
||||
regsize(opc);
|
||||
if (mrg_2 == 0300 || mrg_1 < 0300)
|
||||
reverse();
|
||||
|
@ -262,8 +272,8 @@ xchg(opc) register opc; {
|
|||
badsyntax();
|
||||
}
|
||||
|
||||
test(opc) register opc; {
|
||||
|
||||
void test(register int opc)
|
||||
{
|
||||
regsize(opc);
|
||||
if ((mrg_1 & 040) || mrg_2 >= 0300)
|
||||
reverse();
|
||||
|
@ -288,8 +298,8 @@ test(opc) register opc; {
|
|||
badsyntax();
|
||||
}
|
||||
|
||||
mov(opc) register opc; {
|
||||
|
||||
void mov(register int opc)
|
||||
{
|
||||
regsize(opc);
|
||||
if (mrg_1 & 020) {
|
||||
emit1(0216); ea_2((mrg_1&3)<<3);
|
||||
|
@ -334,8 +344,7 @@ mov(opc) register opc; {
|
|||
}
|
||||
}
|
||||
|
||||
imul(opc)
|
||||
int opc;
|
||||
void imul(int opc)
|
||||
{
|
||||
regsize(opc);
|
||||
if (exp_2.typ != S_ABS || ((mrg_2 & 040) == 0)) {
|
||||
|
|
Loading…
Reference in a new issue