Commit Graph

25 Commits

Author SHA1 Message Date
Denis Drakhnia 8f4de9d485 e2k: Implement basic v5 support.
Add gdb xml files for e2k.
Tags are partially disabled for better performance.

Signed-off-by: Denis Drakhnya <numas13@gmail.com>
2022-06-10 11:48:19 +03:00
Denis Drakhnia 6fb98e718e e2k: Move TCG translation parts into single file.
The TCG translation was splitted into multiple files and
it was painful because it has a lot of cross references.

Reorg FX helpers.

Signed-off-by: Denis Drakhnya <numas13@gmail.com>
2022-06-10 11:48:19 +03:00
Denis Drakhnia bed634d944 e2k: Use %pfpfr for f32 and f64 operations.
%fpcr and %fpsr have been used for the operations but
%pfpfr must be used instead.

Signed-off-by: Denis Drakhnya <numas13@gmail.com>
2022-06-10 11:48:19 +03:00
Denis Drakhnia 374e658eb1 e2k: Add access_hw_stacks and backtrace syscalls.
Special system calls for managing hardware stacks.
Required for C++ exceptions.

Signed-off-by: Denis Drakhnya <numas13@gmail.com>
2022-06-10 11:48:19 +03:00
Denis Drakhnia 5bcc8d7383 e2k: Add reading of %lsr in rr{s,d}.
Signed-off-by: Denis Drakhnya <numas13@gmail.com>
2022-06-10 11:48:19 +03:00
Denis Drakhnia ab620f7a2b e2k: Delete redundant unimplemented messages.
DAM has not been yet implemented. We always generate
a jump to a fixing code. All these messages are redundant.

Signed-off-by: Denis Drakhnya <numas13@gmail.com>
2022-06-10 11:48:19 +03:00
Denis Drakhnia 5e66da5f7d e2k: Delete top CRs from cpu state.
Signed-off-by: Denis Drakhnya <numas13@gmail.com>
2022-06-10 11:48:19 +03:00
Alibek Omarov dd64dfa134 e2k: %pfpfr write stubs 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 06df1e9168 e2k: Impl e2k_longjmp2 syscall. 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 5883b53088 target: e2k: Move fpcr/fpsr to state reg helpers. 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 21b39b8206 target: e2k: Delete hack for saving USD registers on proc call/ret. 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 9dc320f574 target: e2k: Fix sxt/st operand sizes. 2022-06-10 11:48:14 +03:00
Denis Drakhnia 80b3909fb0 target: e2k: Read %idr in rrd. 2022-06-10 11:48:14 +03:00
Denis Drakhnia e5126b32d4 target: e2k: Impl reading some regs through rrd.
%wd, %pcsp.lo, %pcsp.hi, %pcshtp, %cr1.hi, %cr1.lo.
2022-06-10 11:48:14 +03:00
Alibek Omarov 4d88941e0a target: e2k: add reading %ip register through rrd 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 a6d8edd30f target: e2k: Add %cr1.{lo,hi} to rr{s,d}/rw{s,d}. 2022-06-10 11:48:14 +03:00
Denis Drakhnia db10b6d8a4 target: e2k: Reorg reg file. 2022-06-10 11:48:13 +03:00
Denis Drakhnia 0b4a9728dc target: e2k: Move int helpers to separate file. 2022-06-10 11:48:13 +03:00
Denis Drakhnia 38497f952b target: e2k: Basic instruction execution. 2022-06-10 11:48:10 +03:00