Commit Graph

96734 Commits

Author SHA1 Message Date
Denis Drakhnia 54c4312744 e2k: Add packed float simple and combined ops. 2022-06-10 11:48:18 +03:00
Denis Drakhnia f73e828f75 e2k: Fix fcomb_check. 2022-06-10 11:48:18 +03:00
Denis Drakhnia 8a56f792b7 e2k: Probe AAU read access once per page. 2022-06-10 11:48:18 +03:00
Denis Drakhnia 00502466f2 e2k: Always ignore lock load. 2022-06-10 11:48:18 +03:00
Denis Drakhnia b692d4c596 e2k: Fix decoding fcomb and pshufb. 2022-06-10 11:48:18 +03:00
Denis Drakhnia 177922ca64 e2k: Split ALC decode/generate stages. 2022-06-10 11:48:18 +03:00
Denis Drakhnia 99280ddade e2k: Fix movxc. 2022-06-10 11:48:18 +03:00
Denis Drakhnia 00a4284abb e2k: Reorg fcomb ops. 2022-06-10 11:48:18 +03:00
Denis Drakhnia 1caf8cf356 e2k: Reorg icomb ops. 2022-06-10 11:48:18 +03:00
Alibek Omarov dd64dfa134 e2k: %pfpfr write stubs 2022-06-10 11:48:18 +03:00
Alibek Omarov 400947bba3 e2k: implement fsqrttd/fxsqrttxx through ignoring what fsqrtid/fxsqrt{i,u}xx does 2022-06-10 11:48:18 +03:00
Denis Drakhnia 65675ac1cf e2k: Check address before MOVA memory read. 2022-06-10 11:48:18 +03:00
Denis Drakhnia cf04412feb e2k: Do not align mova addr. 2022-06-10 11:48:18 +03:00
Denis Drakhnia a37964a9d3 e2k: Fix fcomb operand ordering. 2022-06-10 11:48:18 +03:00
Denis Drakhnia b166b260da e2k: Impl neg src2 in fscale{s,d} and fxscalesx. 2022-06-10 11:48:18 +03:00
Denis Drakhnia 399416a0d7 e2k: Allow to execute frcps, fsqrts, frsqrts. 2022-06-10 11:48:18 +03:00
Denis Drakhnia 861a2b6fb6 e2k: Init CRs, make gcc happy. 2022-06-10 11:48:18 +03:00
Denis Drakhnia f018f02a5b e2k: Add movt{,c}{s,d,q} ops. 2022-06-10 11:48:18 +03:00
Denis Drakhnia 6277820c04 e2k: Add fscale{s,d} and fxscalesx ops. 2022-06-10 11:48:18 +03:00
Denis Drakhnia 7c4ff94e5f e2k: Impl basic init thread support. 2022-06-10 11:48:18 +03:00
Alibek Omarov 73b99e75c2 e2k: add fxtoi{s,d}{,tr} and i{s,d}tofx instructions 2022-06-10 11:48:18 +03:00
Alibek Omarov ac964b4826 e2k: add stringified opcodes 2022-06-10 11:48:18 +03:00
Denis Drakhnia 732033c341 e2k: Fix mova{b,h,w} reg tag write. 2022-06-10 11:48:18 +03:00
Denis Drakhnia 9354896d9c e2k: Fix insfd. 2022-06-10 11:48:18 +03:00
Denis Drakhnia 2536956da6 e2k: Fix getf{s,d}. 2022-06-10 11:48:18 +03:00
Denis Drakhnia 7dde6cc100 e2k: ecnt must not decrement if vlc is not set. 2022-06-10 11:48:18 +03:00
Denis Drakhnia 38ef61024d e2k: Fix incorrect epilogue counter decrement. 2022-06-10 11:48:18 +03:00
Denis Drakhnia 9e8c927036 e2k: Add delayed window bounds static/dynamic checks. 2022-06-10 11:48:18 +03:00
Alibek Omarov f56cad7923 e2k: implement detecting ISA version by ELF flags, throw an error for protected mode and x86 recompiled binaries for now 2022-06-10 11:48:18 +03:00
Denis Drakhnia 23a0139ee6 e2k: Remove control.c 2022-06-10 11:48:17 +03:00
Denis Drakhnia 0b7f461be7 e2k: Remove pshtp and window base. 2022-06-10 11:48:17 +03:00
Denis Drakhnia 9e79810b32 e2k: Fix incorrect restore from a breakpoint. 2022-06-10 11:48:17 +03:00
Alibek Omarov 9f39901e0a e2k: implement plog_* instructions 2022-06-10 11:48:17 +03:00
Alibek Omarov 380a6384e0 e2k: add pf{mul,add,sub,div,min,max}d instructions 2022-06-10 11:48:17 +03:00
Denis Drakhnia 3b03e60115 e2k: Disable debug restore checks if not needed.
Do not check illtag if not needed.
2022-06-10 11:48:17 +03:00
Denis Drakhnia 89aa3a80c1 e2k: Remove {GET,SET}_FIELD macros. 2022-06-10 11:48:17 +03:00
Denis Drakhnia 53bb2d49eb e2k: Small performance improvements.
Do not initialize alops_map for every tb.
Reduced alops size.
Delayed window bounds checks.
2022-06-10 11:48:17 +03:00
Denis Drakhnia 5aa3d47668 e2k: Fix decoding of ALES2/5. 2022-06-10 11:48:17 +03:00
Denis Drakhnia 562df00e27 e2k: Aaincr must be executed outside of the staa pred cond. 2022-06-10 11:48:17 +03:00
Denis Drakhnia 28aafb053c e2k: Restore usage of env CRs.
Fixes syscall e2k_longjmp2.
2022-06-10 11:48:17 +03:00
Denis Drakhnia ce88afe251 e2k: Add movx{,a,c} instr. 2022-06-10 11:48:17 +03:00
Denis Drakhnia d37ee639b1 e2k: Add {u,s}{div,mod}x instrs. 2022-06-10 11:48:17 +03:00
Denis Drakhnia acc2f18f97 e2k: Add mpsadbh instr. 2022-06-10 11:48:17 +03:00
Denis Drakhnia d2b6bb3f9c e2k: Add phminposuh instr. 2022-06-10 11:48:17 +03:00
Denis Drakhnia 2e0f2dce66 e2k: Add pmulhrsh instr. 2022-06-10 11:48:17 +03:00
Denis Drakhnia 9440e28b68 e2k: Add psign{b,h,w} instrs. 2022-06-10 11:48:17 +03:00
Denis Drakhnia 780ccf14ab e2k: Add phadd{,s}{h,w} and phsub{,s}{h,w} instrs. 2022-06-10 11:48:17 +03:00
Denis Drakhnia e33a9d258b e2k: Add packuswh instr. 2022-06-10 11:48:17 +03:00
Denis Drakhnia 8c318f6306 e2k: Add pmulubhh instr. 2022-06-10 11:48:17 +03:00
Denis Drakhnia 0b7c8d2650 e2k: Add pshufh instr. 2022-06-10 11:48:17 +03:00