Mercurial > repos > blastem
diff gen_x86.h @ 51:937b47c9b79b
Implement shift instructions (asl, lsl, asr, lsr). Add flags to register printout. Fix minor bug in shift/rotate instruction decoding.
author | Mike Pavone <pavone@retrodev.com> |
---|---|
date | Sat, 15 Dec 2012 23:01:32 -0800 |
parents | d2e43d64e999 |
children | 918468c623e9 |
line wrap: on
line diff
--- a/gen_x86.h Thu Dec 13 09:47:40 2012 -0800 +++ b/gen_x86.h Sat Dec 15 23:01:32 2012 -0800 @@ -79,6 +79,20 @@ uint8_t * shl_irdisp8(uint8_t * out, uint8_t val, uint8_t dst_base, int8_t disp, uint8_t size); uint8_t * shr_irdisp8(uint8_t * out, uint8_t val, uint8_t dst_base, int8_t disp, uint8_t size); uint8_t * sar_irdisp8(uint8_t * out, uint8_t val, uint8_t dst_base, int8_t disp, uint8_t size); +uint8_t * rol_clr(uint8_t * out, uint8_t dst, uint8_t size); +uint8_t * ror_clr(uint8_t * out, uint8_t dst, uint8_t size); +uint8_t * rcl_clr(uint8_t * out, uint8_t dst, uint8_t size); +uint8_t * rcr_clr(uint8_t * out, uint8_t dst, uint8_t size); +uint8_t * shl_clr(uint8_t * out, uint8_t dst, uint8_t size); +uint8_t * shr_clr(uint8_t * out, uint8_t dst, uint8_t size); +uint8_t * sar_clr(uint8_t * out, uint8_t dst, uint8_t size); +uint8_t * rol_clrdisp8(uint8_t * out, uint8_t dst_base, int8_t disp, uint8_t size); +uint8_t * ror_clrdisp8(uint8_t * out, uint8_t dst_base, int8_t disp, uint8_t size); +uint8_t * rcl_clrdisp8(uint8_t * out, uint8_t dst_base, int8_t disp, uint8_t size); +uint8_t * rcr_clrdisp8(uint8_t * out, uint8_t dst_base, int8_t disp, uint8_t size); +uint8_t * shl_clrdisp8(uint8_t * out, uint8_t dst_base, int8_t disp, uint8_t size); +uint8_t * shr_clrdisp8(uint8_t * out, uint8_t dst_base, int8_t disp, uint8_t size); +uint8_t * sar_clrdisp8(uint8_t * out, uint8_t dst_base, int8_t disp, uint8_t size); uint8_t * add_rr(uint8_t * out, uint8_t src, uint8_t dst, uint8_t size); uint8_t * or_rr(uint8_t * out, uint8_t src, uint8_t dst, uint8_t size); uint8_t * xor_rr(uint8_t * out, uint8_t src, uint8_t dst, uint8_t size);