More opcodes.

This commit is contained in:
David Given 2016-10-24 12:08:40 +02:00
parent b22780c075
commit a4644dee4d

View file

@ -810,6 +810,19 @@ static void insn_ivalue(int opcode, arith value)
break; break;
} }
case op_ldf:
{
struct ir* ptr = pop(EM_pointersize);
push(
load(
EM_wordsize*2,
ptr, value
)
);
break;
}
case op_sti: case op_sti:
{ {
struct ir* ptr = pop(EM_pointersize); struct ir* ptr = pop(EM_pointersize);
@ -840,6 +853,21 @@ static void insn_ivalue(int opcode, arith value)
break; break;
} }
case op_sdf:
{
struct ir* ptr = pop(EM_pointersize);
struct ir* val = pop(EM_wordsize*2);
appendir(
store(
EM_wordsize*2,
ptr, value,
val
)
);
break;
}
case op_ads: case op_ads:
{ {
struct ir* off = pop(value); struct ir* off = pop(value);