Commit Graph

113 Commits

Author SHA1 Message Date
Denis Drakhnia d5737b0927 target: e2k: Add get_src{1,2}_i80 funcs. 2022-06-10 11:48:15 +03:00
Denis Drakhnia c05dcc12d4 target: e2k: Add xreg read/write functions. 2022-06-10 11:48:15 +03:00
Denis Drakhnia 8881486b62 target: e2k: Remove rptr and tptr from state. 2022-06-10 11:48:15 +03:00
Alibek Omarov 2c4f847a0f target: e2k: fdiv has opc2 == 1, as well as additional fadd, fsub, fmul on e2k-v4. Fix SIGILL not generated when opce2 unrecognized for float conversion instructions 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 245359c6f6 target: e2k: Add psubd instr. 2022-06-10 11:48:15 +03:00
Denis Drakhnia a2ac544dde target: e2k: Fix address generation in staa. 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 1dd030c321 target: e2k: Add e2k_todo{,_illop} macros. 2022-06-10 11:48:15 +03:00
Denis Drakhnia ad6bc687e4 target: e2k: HACK: Tag storage for procedure stack. 2022-06-10 11:48:15 +03:00
Denis Drakhnia 728e400620 target: e2k: Save PC before reading it in rr{s,d}. 2022-06-10 11:48:15 +03:00
Denis Drakhnia 8028167de5 target: e2k: Select tag for taken source in merge{s,d}. 2022-06-10 11:48:15 +03:00
Denis Drakhnia 5b444c9356 target: e2k: Add dbl window modifier. 2022-06-10 11:48:15 +03:00
Denis Drakhnia 2446fbf44c target: e2k: mova{b,h,w} must write to reg64. 2022-06-10 11:48:15 +03:00
Denis Drakhnia 3497bb27c2 target: e2k: Impl multiple pred for ALC exec. 2022-06-10 11:48:15 +03:00
Denis Drakhnia 42776dbe37 target: e2k: Add cmp{o,s,p}{s,d} instrs.
Fix cmpandp{s,d}b.
2022-06-10 11:48:15 +03:00
Denis Drakhnia 5bdd9dcd3d target: e2k: Do not account %predN for ct in loop prologue. 2022-06-10 11:48:15 +03:00
Denis Drakhnia 64ac87f915 target: e2k: Add %pcntN condition. 2022-06-10 11:48:15 +03:00
Denis Drakhnia 9e1baaca2a target: e2k: Ignore unimplemented mas opc in store. 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 b979c52ac5 target: e2k: Add staaq instr. 2022-06-10 11:48:14 +03:00
Denis Drakhnia 2d0cb97529 target: e2k: Execute ALES2/5 together with others channels. 2022-06-10 11:48:14 +03:00
Denis Drakhnia 9e88287e16 target: e2k: Fix setting ctpr.ipd for *disp instr. 2022-06-10 11:48:14 +03:00
Denis Drakhnia d66487e181 target: e2k: Dec store rem in loop mode. 2022-06-10 11:48:14 +03:00
Denis Drakhnia 1c03415d9e target: e2k: Restricted loop_mode implementation. 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 7578f94f7c target: e2k: Remove merge condition from Instr. 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 7bdf849174 target: e2k: Add clarification to gen_tag funcs. 2022-06-10 11:48:14 +03:00
Alibek Omarov e19c72c5df target: e2k: add umulx/smulx 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 8e033a839e target: e2k: Hack delay %rN index gen for result. 2022-06-10 11:48:14 +03:00
Denis Drakhnia 1ad7988e9a target: e2k: Fix based preg. 2022-06-10 11:48:14 +03:00
Denis Drakhnia 6aeee516f3 target: e2k: Add {u,s}mulhd instrs. 2022-06-10 11:48:14 +03:00
Denis Drakhnia 7ff1f54b8f target: e2k: Add mova stubs. 2022-06-10 11:48:14 +03:00
Denis Drakhnia 250a648edf target: e2k: Fix uninit plu_result.reg bug. 2022-06-10 11:48:14 +03:00
Denis Drakhnia 5017d6fa5d target: e2k: Add combined int instructions. 2022-06-10 11:48:14 +03:00
Denis Drakhnia d2518af194 target: e2k: Add Instr struct to alc. 2022-06-10 11:48:14 +03:00
Denis Drakhnia 39bb97e24e target: e2k: Reorganize tag usage. 2022-06-10 11:48:14 +03:00
Denis Drakhnia 5a1e118992 target: e2k: Fix icont bug. 2022-06-10 11:48:14 +03:00
Denis Drakhnia aa93b81f40 target: e2k: Fix bitrev{s,d} instrs. 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
Alibek Omarov a410422f9a target: e2k: add lzcnt and popcnt instrs (untested!) 2022-06-10 11:48:14 +03:00
Alibek Omarov 990976cf99 target: e2k: add bitrev instr 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 1c1db1a395 target: e2k: Replace some panics with messages. 2022-06-10 11:48:14 +03:00
Denis Drakhnia b14ca9755f target: e2k: Impl write AL result to ctpr. 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