comparison gen_x86.h @ 49:d2e43d64e999

Add untested support for and, eor, or, swap, tst and nop instructions. Add call to m68k_save_result for add and sub so that they will properly save results for memory destinations
author Mike Pavone <pavone@retrodev.com>
date Wed, 12 Dec 2012 23:21:11 -0800
parents 3e7bfde7606e
children 937b47c9b79b
comparison
equal deleted inserted replaced
48:0bdda50c7364 49:d2e43d64e999
63 //"phony" mode 63 //"phony" mode
64 MODE_IMMED = 0xFF 64 MODE_IMMED = 0xFF
65 } x86_modes; 65 } x86_modes;
66 66
67 67
68 uint8_t * rol_ir(uint8_t * out, uint8_t val, uint8_t dst, uint8_t size);
69 uint8_t * ror_ir(uint8_t * out, uint8_t val, uint8_t dst, uint8_t size);
70 uint8_t * rcl_ir(uint8_t * out, uint8_t val, uint8_t dst, uint8_t size);
71 uint8_t * rcr_ir(uint8_t * out, uint8_t val, uint8_t dst, uint8_t size);
72 uint8_t * shl_ir(uint8_t * out, uint8_t val, uint8_t dst, uint8_t size);
73 uint8_t * shr_ir(uint8_t * out, uint8_t val, uint8_t dst, uint8_t size);
74 uint8_t * sar_ir(uint8_t * out, uint8_t val, uint8_t dst, uint8_t size);
75 uint8_t * rol_irdisp8(uint8_t * out, uint8_t val, uint8_t dst_base, int8_t disp, uint8_t size);
76 uint8_t * ror_irdisp8(uint8_t * out, uint8_t val, uint8_t dst_base, int8_t disp, uint8_t size);
77 uint8_t * rcl_irdisp8(uint8_t * out, uint8_t val, uint8_t dst_base, int8_t disp, uint8_t size);
78 uint8_t * rcr_irdisp8(uint8_t * out, uint8_t val, uint8_t dst_base, int8_t disp, uint8_t size);
79 uint8_t * shl_irdisp8(uint8_t * out, uint8_t val, uint8_t dst_base, int8_t disp, uint8_t size);
80 uint8_t * shr_irdisp8(uint8_t * out, uint8_t val, uint8_t dst_base, int8_t disp, uint8_t size);
81 uint8_t * sar_irdisp8(uint8_t * out, uint8_t val, uint8_t dst_base, int8_t disp, uint8_t size);
68 uint8_t * add_rr(uint8_t * out, uint8_t src, uint8_t dst, uint8_t size); 82 uint8_t * add_rr(uint8_t * out, uint8_t src, uint8_t dst, uint8_t size);
69 uint8_t * or_rr(uint8_t * out, uint8_t src, uint8_t dst, uint8_t size); 83 uint8_t * or_rr(uint8_t * out, uint8_t src, uint8_t dst, uint8_t size);
70 uint8_t * xor_rr(uint8_t * out, uint8_t src, uint8_t dst, uint8_t size); 84 uint8_t * xor_rr(uint8_t * out, uint8_t src, uint8_t dst, uint8_t size);
71 uint8_t * and_rr(uint8_t * out, uint8_t src, uint8_t dst, uint8_t size); 85 uint8_t * and_rr(uint8_t * out, uint8_t src, uint8_t dst, uint8_t size);
72 uint8_t * sub_rr(uint8_t * out, uint8_t src, uint8_t dst, uint8_t size); 86 uint8_t * sub_rr(uint8_t * out, uint8_t src, uint8_t dst, uint8_t size);