📄 optab.c
字号:
#include "l.h"uchar ynone[] ={ Ynone, Ynone, Zlit, 1, 0};uchar ytext[] ={ Ymb, Yi32, Zpseudo,1, 0};uchar ynop[] ={ Ynone, Ynone, Zpseudo,1, Ynone, Yml, Zpseudo,1, Ynone, Yrf, Zpseudo,1, Yml, Ynone, Zpseudo,1, Yrf, Ynone, Zpseudo,1, 0};uchar yxorb[] ={ Yi32, Yal, Zib_, 1, Yi32, Ymb, Zibo_m, 2, Yrb, Ymb, Zr_m, 1, Ymb, Yrb, Zm_r, 1, 0};uchar yxorl[] ={ Yi8, Yml, Zibo_m, 2, Yi32, Yax, Zil_, 1, Yi32, Yml, Zilo_m, 2, Yrl, Yml, Zr_m, 1, Yml, Yrl, Zm_r, 1, 0};uchar yaddl[] ={ Yi8, Yml, Zibo_m, 2, Yi32, Yax, Zil_, 1, Yi32, Yml, Zilo_m, 2, Yrl, Yml, Zr_m, 1, Yml, Yrl, Zm_r, 1, 0};uchar yincb[] ={ Ynone, Ymb, Zo_m, 2, 0};uchar yincl[] ={ Ynone, Yrl, Z_rp, 1, Ynone, Yml, Zo_m, 2, 0};uchar ycmpb[] ={ Yal, Yi32, Z_ib, 1, Ymb, Yi32, Zm_ibo, 2, Ymb, Yrb, Zm_r, 1, Yrb, Ymb, Zr_m, 1, 0};uchar ycmpl[] ={ Yml, Yi8, Zm_ibo, 2, Yax, Yi32, Z_il, 1, Yml, Yi32, Zm_ilo, 2, Yml, Yrl, Zm_r, 1, Yrl, Yml, Zr_m, 1, 0};uchar yshb[] ={ Yi1, Ymb, Zo_m, 2, Yi32, Ymb, Zibo_m, 2, Ycx, Ymb, Zo_m, 2, 0};uchar yshl[] ={ Yi1, Yml, Zo_m, 2, Yi32, Yml, Zibo_m, 2, Ycl, Yml, Zo_m, 2, Ycx, Yml, Zo_m, 2, 0};uchar ytestb[] ={ Yi32, Yal, Zib_, 1, Yi32, Ymb, Zibo_m, 2, Yrb, Ymb, Zr_m, 1, Ymb, Yrb, Zm_r, 1, 0};uchar ytestl[] ={ Yi32, Yax, Zil_, 1, Yi32, Yml, Zilo_m, 2, Yrl, Yml, Zr_m, 1, Yml, Yrl, Zm_r, 1, 0};uchar ymovb[] ={ Yrb, Ymb, Zr_m, 1, Ymb, Yrb, Zm_r, 1, Yi32, Yrb, Zib_rp, 1, Yi32, Ymb, Zibo_m, 2, 0};uchar ymovl[] ={ Yrl, Yml, Zr_m, 1, Yml, Yrl, Zm_r, 1, Yi0, Yrl, Zclr, 1+2,// Yi0, Yml, Zibo_m, 2, // shorter but slower AND $0,dst Yi32, Yrl, Zil_rp, 1, Yi32, Yml, Zilo_m, 2, Yiauto, Yrl, Zaut_r, 2, 0};uchar ym_rl[] ={ Ym, Yrl, Zm_r, 1, 0};uchar yrl_m[] ={ Yrl, Ym, Zr_m, 1, 0};uchar ymb_rl[] ={ Ymb, Yrl, Zm_r, 1, 0};uchar yml_rl[] ={ Yml, Yrl, Zm_r, 1, 0};uchar yrl_ml[] ={ Yrl, Yml, Zr_m, 1, 0};uchar yml_mb[] ={ Yrb, Ymb, Zr_m, 1, Ymb, Yrb, Zm_r, 1, 0};uchar yml_ml[] ={ Yrl, Yml, Zr_m, 1, Yml, Yrl, Zm_r, 1, 0};uchar ydivl[] ={ Yml, Ynone, Zm_o, 2, 0};uchar ydivb[] ={ Ymb, Ynone, Zm_o, 2, 0};uchar yimul[] ={ Yml, Ynone, Zm_o, 2, Yi8, Yrl, Zib_rr, 1, Yi32, Yrl, Zil_rr, 1, 0};uchar ybyte[] ={ Yi32, Ynone, Zbyte, 1, 0};uchar yin[] ={ Yi32, Ynone, Zib_, 1, Ynone, Ynone, Zlit, 1, 0};uchar yint[] ={ Yi32, Ynone, Zib_, 1, 0};uchar ypushl[] ={ Yrl, Ynone, Zrp_, 1, Ym, Ynone, Zm_o, 2, Yi8, Ynone, Zib_, 1, Yi32, Ynone, Zil_, 1, 0};uchar ypopl[] ={ Ynone, Yrl, Z_rp, 1, Ynone, Ym, Zo_m, 2, 0};uchar yscond[] ={ Ynone, Ymb, Zo_m, 2, 0};uchar yjcond[] ={ Ynone, Ybr, Zbr, 1, 0};uchar yloop[] ={ Ynone, Ybr, Zloop, 1, 0};uchar ycall[] ={ Ynone, Yml, Zo_m, 2, Ynone, Ybr, Zcall, 1, 0};uchar yjmp[] ={ Ynone, Yml, Zo_m, 2, Ynone, Ybr, Zjmp, 1, 0};uchar yfmvd[] ={ Ym, Yf0, Zm_o, 2, Yf0, Ym, Zo_m, 2, Yrf, Yf0, Zm_o, 2, Yf0, Yrf, Zo_m, 2, 0};uchar yfmvdp[] ={ Yf0, Ym, Zo_m, 2, Yf0, Yrf, Zo_m, 2, 0};uchar yfmvf[] ={ Ym, Yf0, Zm_o, 2, Yf0, Ym, Zo_m, 2, 0};uchar yfmvx[] ={ Ym, Yf0, Zm_o, 2, 0};uchar yfmvp[] ={ Yf0, Ym, Zo_m, 2, 0};uchar yfadd[] ={ Ym, Yf0, Zm_o, 2, Yrf, Yf0, Zm_o, 2, Yf0, Yrf, Zo_m, 2, 0};uchar yfaddp[] ={ Yf0, Yrf, Zo_m, 2, 0};uchar yfxch[] ={ Yf0, Yrf, Zo_m, 2, Yrf, Yf0, Zm_o, 2, 0};uchar ycompp[] ={ Yf0, Yrf, Zo_m, 2, /* botch is really f0,f1 */ 0};uchar ystsw[] ={ Ynone, Ym, Zo_m, 2, Ynone, Yax, Zlit, 1, 0};uchar ystcw[] ={ Ynone, Ym, Zo_m, 2, Ym, Ynone, Zm_o, 2, 0};uchar ysvrs[] ={ Ynone, Ym, Zo_m, 2, Ym, Ynone, Zm_o, 2, 0};Optab optab[] =/* as, ytab, andproto, opcode */{ { AXXX }, { AAAA, ynone, Px, 0x37 }, { AAAD, ynone, Px, 0xd5,0x0a }, { AAAM, ynone, Px, 0xd4,0x0a }, { AAAS, ynone, Px, 0x3f }, { AADCB, yxorb, Pb, 0x14,0x80,(02),0x10,0x10 }, { AADCL, yxorl, Px, 0x83,(02),0x15,0x81,(02),0x11,0x13 }, { AADCW, yxorl, Pe, 0x83,(02),0x15,0x81,(02),0x11,0x13 }, { AADDB, yxorb, Px, 0x04,0x80,(00),0x00,0x02 }, { AADDL, yaddl, Px, 0x83,(00),0x05,0x81,(00),0x01,0x03 }, { AADDW, yaddl, Pe, 0x83,(00),0x05,0x81,(00),0x01,0x03 }, { AADJSP }, { AANDB, yxorb, Pb, 0x24,0x80,(04),0x20,0x22 }, { AANDL, yxorl, Px, 0x83,(04),0x25,0x81,(04),0x21,0x23 }, { AANDW, yxorl, Pe, 0x83,(04),0x25,0x81,(04),0x21,0x23 }, { AARPL, yrl_ml, Px, 0x63 },
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -