Commit Graph

97076 Commits

Author SHA1 Message Date
Denis Drakhnia 6633770b16 e2k: Fix operands order in icomb. 2022-06-10 11:48:16 +03:00
Denis Drakhnia 7a667b7ba5 target: e2k: Add short, ext, ext1, ext2 alops table. 2022-06-10 11:48:16 +03:00
Alibek Omarov 3607137905 e2k: add fcmp{op} instructions that write into normal register 2022-06-10 11:48:16 +03:00
Denis Drakhnia 1c16338c6d target: e2k: Correctly save/restore wdbl. 2022-06-10 11:48:16 +03:00
Denis Drakhnia 94f7599a54 target: e2k: Execute load on flush cache MAS. 2022-06-10 11:48:16 +03:00
Alibek Omarov ed20953a35 e2k: fpu: implement float combined instrs 2022-06-10 11:48:16 +03:00
Alibek Omarov 66293fd843 e2k: helper_fpu: fix various compiler warnings 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
Alibek Omarov 5bef8e4450 qemu-binfmt-conf: add e2k elf header, 64-bit only as we only support it at this time 2022-06-10 11:48:16 +03:00
Denis Drakhnia 797c661d91 target: e2k: Rename alc execute fns. 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
Denis Drakhnia 3796f54bad target: e2k: Add movfi/movif instrs. 2022-06-10 11:48:15 +03:00
Denis Drakhnia 5883b53088 target: e2k: Move fpcr/fpsr to state reg helpers. 2022-06-10 11:48:15 +03:00
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 1a52b6054b target: e2k: Add temps for FX/SIMD ops. 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 c52d9f9af9 target: e2k: set disas isa version 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
Alibek Omarov 222940f0c5 fpu: assuming e2k fp behave like x86 2022-06-10 11:48:15 +03:00
Denis Drakhnia 21b39b8206 target: e2k: Delete hack for saving USD registers on proc call/ret. 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 6496153694 target: e2k: Impl restore_state_to_opc. 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 4646e43803 target: e2k: Add tlb_fill handler. 2022-06-10 11:48:15 +03:00
Denis Drakhnia 8143c8c7e8 target: e2k: Clear registers in new allocated range of window. 2022-06-10 11:48:15 +03:00
Denis Drakhnia 4a13be8f68 target: e2k: Fix incorrect registers view in gdb after exception. 2022-06-10 11:48:15 +03:00
Denis Drakhnia 8cac70df0e target: e2k: Fix gdb run till exit from func. 2022-06-10 11:48:15 +03:00
Denis Drakhnia d402c52f4a target: e2k: %cr0 must hold pregs and ip of previous procedure. 2022-06-10 11:48:15 +03:00
Denis Drakhnia 37b4ee19b0 target: e2k: Remove unneeded regs array in TCG state. 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 381868f71a target: e2k: Return aligned pointer from getsp. 2022-06-10 11:48:15 +03:00
Denis Drakhnia 83e2503867 target: e2k: HACK: Add stack for USD registers.
CPU must restore `USD` after calls but I don't know how it should be implemented.
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 bd027ff219 target: e2k: Force ps pop in FX mode. 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