Commit Graph

72 Commits

Author SHA1 Message Date
Denis Drakhnia e440ebc3db e2k: Basic impl of e2k32-linux-user.
Fix target_stat64 field types in 32-bit mode.
Basic impl of getpl.
Basic impl of ldgd{b,h,w,d}.
Basic impl of stgd{b,h,w,d}.
Add e2k exceptions.
Add Dynamic hw stacks expansion.

Signed-off-by: Denis Drakhnya <numas13@gmail.com>
2022-06-10 11:48:19 +03:00
Denis Drakhnia 26b9e9a1e4 e2k: Impl basic unix signals support. 2022-06-10 11:48:19 +03:00
Denis Drakhnia 54c4312744 e2k: Add packed float simple and combined ops. 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
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 399416a0d7 e2k: Allow to execute frcps, fsqrts, frsqrts. 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
Alibek Omarov 73b99e75c2 e2k: add fxtoi{s,d}{,tr} and i{s,d}tofx instructions 2022-06-10 11:48:18 +03:00
Denis Drakhnia 23a0139ee6 e2k: Remove control.c 2022-06-10 11:48:17 +03:00
Alibek Omarov 9f39901e0a e2k: implement plog_* instructions 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
Denis Drakhnia 8606e02150 e2k: Add punpck{l,h}{bh,hw,wd} instrs. 2022-06-10 11:48:17 +03:00
Denis Drakhnia 06471fe869 e2k: Add pshufw instr. 2022-06-10 11:48:17 +03:00
Denis Drakhnia dc9b17e91a e2k: Add packsshb, packushb and packsswh instrs. 2022-06-10 11:48:17 +03:00
Denis Drakhnia b9d7c5874a e2k: Add pmovmskps and pmovmskpd instrs. 2022-06-10 11:48:17 +03:00
Denis Drakhnia 7fa077d557 e2k: Add pmulhh, pmulhuh and pmullh instrs. 2022-06-10 11:48:17 +03:00
Denis Drakhnia e777b64356 e2k: Add pavgus{b,h} instrs. 2022-06-10 11:48:17 +03:00
Denis Drakhnia 83c06a7807 e2k: Add psadbw instr. 2022-06-10 11:48:17 +03:00
Denis Drakhnia 0a7e3625e9 e2k: Add pmadd{h,ubsh} instrs. 2022-06-10 11:48:17 +03:00
Denis Drakhnia 7cb77dbe33 e2k: Add psra{h,w} instrs. 2022-06-10 11:48:16 +03:00
Denis Drakhnia a074d1d1ad e2k: Add packed shift inters. 2022-06-10 11:48:16 +03:00
Denis Drakhnia d233d8afa5 e2k: Add packed add and sub using saturation. 2022-06-10 11:48:16 +03:00
Denis Drakhnia 3fb4bcec13 e2k: Add pcmp{eq,gt}{b,h,w,d} instrs. 2022-06-10 11:48:16 +03:00
Alibek Omarov 1a73a97771 e2k: add fstoifs and fdtoifd instrs 2022-06-10 11:48:16 +03:00
Alibek Omarov 3e98a47b0a e2k: add whole class of packed min & max 2022-06-10 11:48:16 +03:00
Alibek Omarov 27defe956a e2k: partially refactor helper header 2022-06-10 11:48:16 +03:00
Alibek Omarov 6f463100cc e2k: implement f{,x}cmp{op}{s,d,x}f instructions 2022-06-10 11:48:16 +03:00
Alibek Omarov cee5be3c9c e2k: add fxcmp{op}{type}b instructions 2022-06-10 11:48:16 +03:00
Denis Drakhnia 60faf17466 target: e2k: HACK: Unlock mem addr forces %MLOCK condition. 2022-06-10 11:48:16 +03:00
Denis Drakhnia 126b8b310c target: e2k: Add basic FX instrs. 2022-06-10 11:48:15 +03:00
Alibek Omarov b888c75194 target: e2k: add conversion instructions, handle float comparison with predicate result instrs 2022-06-10 11:48:15 +03:00
Alibek Omarov ebb2b2485f target: e2k: add basic fpu instructions 2022-06-10 11:48:15 +03:00
Denis Drakhnia bcc311b773 target: e2k: Fix udivs exception hack. 2022-06-10 11:48:15 +03:00
Denis Drakhnia db78528419 target: e2k: Add pmovmskb instr. 2022-06-10 11:48:14 +03:00
Denis Drakhnia 2543a5cc12 target: e2k: Add p{min,max}{ub,sh} instrs. 2022-06-10 11:48:14 +03:00
Denis Drakhnia 31e084720a target: e2k: Add basic mova{b,h,w,d} impl. 2022-06-10 11:48:14 +03:00
Denis Drakhnia 93acd43783 target: e2k: Add staa{b,h} instrs. 2022-06-10 11:48:14 +03:00
Denis Drakhnia 9dc320f574 target: e2k: Fix sxt/st operand sizes. 2022-06-10 11:48:14 +03:00
Denis Drakhnia 0ac9e690a2 target: e2k: Fix getsp src2 size. 2022-06-10 11:48:14 +03:00
Denis Drakhnia 6a0a45602b target: e2k: Impl pcmpeqb. 2022-06-10 11:48:14 +03:00
Denis Drakhnia 683d96b8fa target: e2k: Partial staa{d,w} implementation. 2022-06-10 11:48:13 +03:00
Denis Drakhnia 72bcbbabb0 target: e2k: Add pshufb instr. 2022-06-10 11:48:13 +03:00
Denis Drakhnia 57b3469cda target: e2k: Impl speculative execution. 2022-06-10 11:48:13 +03:00