From: Bastian Koppelmann <kbastian@mail.uni-paderborn.de>
To: qemu-devel@nongnu.org
Cc: peter.maydell@linaro.org, rth@twiddle.net
Subject: [Qemu-devel] [PATCH v4 00/15] TriCore architecture guest implementation
Date: Thu, 7 Aug 2014 15:34:26 +0100 [thread overview]
Message-ID: <1407422081-9468-1-git-send-email-kbastian@mail.uni-paderborn.de> (raw)
Hi,
my aim is to add Infineon's TriCore architecture to QEMU. This series of patches adds the target stubs, a basic testboard and a softmmu for system mode emulation. Furthermore it adds all the 16 bit long instructions of the architecture grouped by opcode format.
After this series of patches. Another one will follow, which adds a lot of the 32 bit long instructions.
All the best
Bastian
v3 -> v4:
- tricore_cpu_type_info changed to abstract.
- Change documentation of PSW_USB_AV and PSW_USB_SAV bit to only use bit 31.
- Change psw_read/_write to only use bit 31 for PSW_USB_AV and PSW_USB_SAV.
- Remove gen_calc_psw_sv, gen_calc_psw_av, gen_calc_psw_sav functions.
- Rename gen_add_i32 to gen_add_d.
- Remove psw calculation from ADD_A.
- Replace makro OP_COND with function gen_cond_add, gen_cond_addi.
- gen_shaci now uses only 32 bit tcg shifts and implments special case of exactly 32 bit long shift.
- gen_cond_add now sets V and AV bits conditionaly through temp registers.
- Rename gen_sub_i32 to gen_sub_d.
- Fix V bit calculation in gen_sub_d and gen_mul_i32s.
- helper_add/sub_ssov now uses sign extended arguments.
- Remove unnecessary temp register in gen_adds/_subs.
- Add missing break in gen_compute_branch at CALL insn.
- Replace movcond with setcond at RSUB insn.
- Add AV, SAV calculation to RSUB insn.
Bastian Koppelmann (15):
target-tricore: Add target stubs and qom-cpu
target-tricore: Add board for systemmode
target-tricore: Add softmmu support
target-tricore: Add initialization for translation and activate target
target-tricore: Add masks and opcodes for decoding
target-tricore: Add instructions of SRC opcode format
target-tricore: Add instructions of SRR opcode format
target-tricore: Add instructions of SSR opcode format
target-tricore: Add instructions of SRRS and SLRO opcode format
target-tricore: Add instructions of SB opcode format
target-tricore: Add instructions of SBC and SBRN opcode format
target-tricore: Add instructions of SBR opcode format
target-tricore: Add instructions of SC opcode format
target-tricore: Add instructions of SLR, SSRO and SRO opcode format
target-tricore: Add instructions of SR opcode format
arch_init.c | 2 +
configure | 5 +
cpu-exec.c | 11 +-
cpus.c | 6 +
default-configs/tricore-softmmu.mak | 3 +
hw/tricore/Makefile.objs | 1 +
hw/tricore/tricore_testboard.c | 129 ++++
include/elf.h | 2 +
include/hw/tricore/tricore.h | 54 ++
include/sysemu/arch_init.h | 1 +
target-tricore/Makefile.objs | 1 +
target-tricore/cpu-qom.h | 71 ++
target-tricore/cpu.c | 191 +++++
target-tricore/cpu.h | 401 ++++++++++
target-tricore/helper.c | 144 ++++
target-tricore/helper.h | 25 +
target-tricore/op_helper.c | 392 ++++++++++
target-tricore/translate.c | 1222 ++++++++++++++++++++++++++++++
target-tricore/tricore-defs.h | 28 +
target-tricore/tricore-opcodes.h | 1406 +++++++++++++++++++++++++++++++++++
20 files changed, 4094 insertions(+), 1 deletion(-)
create mode 100644 default-configs/tricore-softmmu.mak
create mode 100644 hw/tricore/Makefile.objs
create mode 100644 hw/tricore/tricore_testboard.c
create mode 100644 include/hw/tricore/tricore.h
create mode 100644 target-tricore/Makefile.objs
create mode 100644 target-tricore/cpu-qom.h
create mode 100644 target-tricore/cpu.c
create mode 100644 target-tricore/cpu.h
create mode 100644 target-tricore/helper.c
create mode 100644 target-tricore/helper.h
create mode 100644 target-tricore/op_helper.c
create mode 100644 target-tricore/translate.c
create mode 100644 target-tricore/tricore-defs.h
create mode 100644 target-tricore/tricore-opcodes.h
--
2.0.4
next reply other threads:[~2014-08-07 13:31 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-08-07 14:34 Bastian Koppelmann [this message]
2014-08-07 14:34 ` [Qemu-devel] [PATCH v4 01/15] target-tricore: Add target stubs and qom-cpu Bastian Koppelmann
2014-08-08 2:28 ` Richard Henderson
2014-08-08 10:40 ` Bastian Koppelmann
2014-08-08 11:35 ` Bastian Koppelmann
2014-08-11 16:06 ` Bastian Koppelmann
2014-08-07 14:34 ` [Qemu-devel] [PATCH v4 02/15] target-tricore: Add board for systemmode Bastian Koppelmann
2014-08-07 14:34 ` [Qemu-devel] [PATCH v4 03/15] target-tricore: Add softmmu support Bastian Koppelmann
2014-08-07 14:34 ` [Qemu-devel] [PATCH v4 04/15] target-tricore: Add initialization for translation and activate target Bastian Koppelmann
2014-08-07 14:34 ` [Qemu-devel] [PATCH v4 05/15] target-tricore: Add masks and opcodes for decoding Bastian Koppelmann
2014-08-07 14:34 ` [Qemu-devel] [PATCH v4 06/15] target-tricore: Add instructions of SRC opcode format Bastian Koppelmann
2014-08-08 2:58 ` Richard Henderson
2014-08-07 14:34 ` [Qemu-devel] [PATCH v4 07/15] target-tricore: Add instructions of SRR " Bastian Koppelmann
2014-08-07 14:34 ` [Qemu-devel] [PATCH v4 08/15] target-tricore: Add instructions of SSR " Bastian Koppelmann
2014-08-07 14:34 ` [Qemu-devel] [PATCH v4 09/15] target-tricore: Add instructions of SRRS and SLRO " Bastian Koppelmann
2014-08-07 14:34 ` [Qemu-devel] [PATCH v4 10/15] target-tricore: Add instructions of SB " Bastian Koppelmann
2014-08-07 14:34 ` [Qemu-devel] [PATCH v4 11/15] target-tricore: Add instructions of SBC and SBRN " Bastian Koppelmann
2014-08-07 14:34 ` [Qemu-devel] [PATCH v4 12/15] target-tricore: Add instructions of SBR " Bastian Koppelmann
2014-08-07 14:34 ` [Qemu-devel] [PATCH v4 13/15] target-tricore: Add instructions of SC " Bastian Koppelmann
2014-08-07 14:34 ` [Qemu-devel] [PATCH v4 14/15] target-tricore: Add instructions of SLR, SSRO and SRO " Bastian Koppelmann
2014-08-07 14:34 ` [Qemu-devel] [PATCH v4 15/15] target-tricore: Add instructions of SR " Bastian Koppelmann
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1407422081-9468-1-git-send-email-kbastian@mail.uni-paderborn.de \
--to=kbastian@mail.uni-paderborn.de \
--cc=peter.maydell@linaro.org \
--cc=qemu-devel@nongnu.org \
--cc=rth@twiddle.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).