Deal with malformed mes instructions emitted by ego.
This commit is contained in:
parent
a3cfe6047f
commit
3474e20274
1 changed files with 12 additions and 5 deletions
|
@ -328,11 +328,18 @@ static void parse_mes(void)
|
||||||
|
|
||||||
case 3: /* register variable */
|
case 3: /* register variable */
|
||||||
{
|
{
|
||||||
arith offset = mes_get_cst();
|
/* ego will sometimes generate 'mes 3' pseudos with no actual
|
||||||
|
* parameters. Detect and ignore these. */
|
||||||
|
|
||||||
|
EM_getinstr(&em);
|
||||||
|
if (em.em_type == EM_MESARG)
|
||||||
|
{
|
||||||
|
arith offset = em.em_cst;
|
||||||
int size = mes_get_cst();
|
int size = mes_get_cst();
|
||||||
int type = mes_get_cst();
|
int type = mes_get_cst();
|
||||||
int priority = mes_get_cst();
|
int priority = mes_get_cst();
|
||||||
tb_regvar(offset, size, type, priority);
|
tb_regvar(offset, size, type, priority);
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Reference in a new issue