diff --git a/pc/instrs/INSTRS b/pc/instrs/INSTRS index 7f59214..c4f7fe2 100644 --- a/pc/instrs/INSTRS +++ b/pc/instrs/INSTRS @@ -185,28 +185,22 @@ cmulnz i # rax = rax / $0 div r div i - cdivz r cdivz i - cdivnz r cdivnz i inc r inc m - cincz r cincz m - cincnz r cincnz m dec r dec m - cdecz r cdecz m - cdecnz r cdecnz m @@ -265,10 +259,8 @@ jcxnz i loop r loop i - cloopz r cloopz i - cloopnz r cloopnz i @@ -282,14 +274,12 @@ mov r m mov m r mov m i mov m m - cmovz r r cmovz r i cmovz r m cmovz m r cmovz m i cmovz m m - cmovnz r r cmovnz r i cmovnz r m @@ -303,14 +293,12 @@ xchg r m xchg m r xchg m i xchg m m - cxchgz r r cxchgz r i cxchgz r m cxchgz m r cxchgz m i cxchgz m m - cxchgnz r r cxchgnz r i cxchgnz r m @@ -320,10 +308,8 @@ cxchgnz m m lea r m lea m m - cleaz r m cleaz m m - cleanz r m cleanz m m @@ -334,13 +320,29 @@ cleanz m m push i push r push m +cpushz i +cpushz r +cpushz m +cpushnz i +cpushnz r +cpushnz m pop r pop m +cpopz r +cpopz m +cpopnz r +cpopnz m call r call i call m +ccallz r +ccallz i +ccallz m +ccallnz r +ccallnz i +ccallnz m ret cretz @@ -349,6 +351,8 @@ cretnz # push rbp # mov rbp, rsp enter +centerz +centernz # mov rbp, [rsp+8] # add rsp, 8 diff --git a/pc/instrs/stack.c b/pc/instrs/stack.c index 245c42a..6686d71 100644 --- a/pc/instrs/stack.c +++ b/pc/instrs/stack.c @@ -4,7 +4,11 @@ #include "instrs.h" #include "arch_i.h" +IMPL_COND(push); +IMPL_COND(pop); +IMPL_COND(call); IMPL_COND(ret); +IMPL_COND(enter); IMPL_COND(leave); //