target/xtensa: add internal/noop SRs and opcodes
authorMax Filippov <jcmvbkbc@gmail.com>
Sun, 29 Jan 2017 11:50:25 +0000 (03:50 -0800)
committerMax Filippov <jcmvbkbc@gmail.com>
Tue, 9 Jan 2018 17:55:39 +0000 (09:55 -0800)
commit13f6a7cd3a736b40e14b28d7e4df45ec9333f155
treec6aef36b2a03812bc65d28b50cfd8944a5f0f158
parent5b9b27639e4af3e957da1959ad51f94e53c2e6f1
target/xtensa: add internal/noop SRs and opcodes

Add two special registers: MMID and DDR:
- MMID is write-only and the only side effect of writing to it is output
  to the trace port, which is not emulated;
- DDR is only accessible in debug mode, which is not emulated.

Add two debug-mode-only opcodes:
- rfdd and rfdo do return from the debug mode, which is not emulated.

Add three internal opcodes for full MMU:
- hwwdtlba and hwwitlba are the internal opcodes that write a value into
  autoupdate DTLB or ITLB entry.
- ldpte is internal opcode that loads PTE entry that covers the most
  recent page fault address.
None of these three opcodes may appear in a valid instruction.

Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
target/xtensa/cpu.h
target/xtensa/translate.c