* [Qemu-devel] [PULL v3] target/xtensa updates
@ 2018-01-09 18:17 Max Filippov
2018-01-11 9:53 ` Peter Maydell
2018-01-12 9:20 ` Paolo Bonzini
0 siblings, 2 replies; 5+ messages in thread
From: Max Filippov @ 2018-01-09 18:17 UTC (permalink / raw)
To: qemu-devel; +Cc: Peter Maydell, Max Filippov
Hi Peter,
please pull the following batch of updates for the target/xtensa.
Changes v2->v3:
- Don't use g_malloc_n, use g_new instead.
Changes v1->v2:
- Drop no longer used function option_bits_enabled.
The following changes since commit 0a0dc59d27527b78a195c2d838d28b7b49e5a639:
Update version for v2.11.0 release (2017-12-13 14:31:09 +0000)
are available in the git repository at:
git://github.com/OSLL/qemu-xtensa.git tags/20180109-xtensa
for you to fetch changes up to 5a6539e627faf9251e1db78238b9f9b870610518:
target/xtensa: implement disassembler (2018-01-09 09:55:39 -0800)
----------------------------------------------------------------
target/xtensa updates:
- add libisa to the xtensa target;
- change xtensa instruction translator to use it;
- switch existing xtensa cores to use it;
- add support for a number of instructions: salt/saltu, const16,
GPIO32 group, debug mode and MMU-related;
- add disassembler for Xtensa.
----------------------------------------------------------------
Max Filippov (16):
target/xtensa: pass actual frame size to the entry helper
target/xtensa: import libisa source
target/xtensa: extract core opcode translators
target/xtensa: extract FPU2000 opcode translators
target/xtensa: update import_core.sh script for libisa
target/xtensa: switch dc232b to libisa
target/xtensa: switch dc233c to libisa
target/xtensa: switch fsf to libisa
target/xtensa: use libisa for instruction decoding
target/xtensa: tests: fix memctl SR test
target/xtensa: drop DisasContext::litbase
target/xtensa: add internal/noop SRs and opcodes
target/xtensa: implement salt/saltu
target/xtensa: implement GPIO32
target/xtensa: implement const16
target/xtensa: implement disassembler
MAINTAINERS | 1 +
disas/Makefile.objs | 1 +
disas/xtensa.c | 133 +
include/disas/bfd.h | 1 +
include/hw/xtensa/xtensa-isa.h | 838 ++
target/xtensa/Makefile.objs | 1 +
target/xtensa/core-dc232b.c | 4 +
target/xtensa/core-dc232b/xtensa-modules.c | 14105 +++++++++++++++++++++++++
target/xtensa/core-dc233c.c | 4 +
target/xtensa/core-dc233c/xtensa-modules.c | 15232 +++++++++++++++++++++++++++
target/xtensa/core-fsf.c | 5 +
target/xtensa/core-fsf/xtensa-modules.c | 9841 +++++++++++++++++
target/xtensa/cpu.c | 9 +
target/xtensa/cpu.h | 31 +
target/xtensa/helper.c | 37 +
target/xtensa/import_core.sh | 15 +
target/xtensa/op_helper.c | 2 +-
target/xtensa/translate.c | 5900 +++++++----
target/xtensa/xtensa-isa-internal.h | 231 +
target/xtensa/xtensa-isa.c | 1745 +++
target/xtensa/xtensa-isa.h | 1 +
tests/tcg/xtensa/test_sr.S | 2 +-
22 files changed, 45955 insertions(+), 2184 deletions(-)
create mode 100644 disas/xtensa.c
create mode 100644 include/hw/xtensa/xtensa-isa.h
create mode 100644 target/xtensa/core-dc232b/xtensa-modules.c
create mode 100644 target/xtensa/core-dc233c/xtensa-modules.c
create mode 100644 target/xtensa/core-fsf/xtensa-modules.c
create mode 100644 target/xtensa/xtensa-isa-internal.h
create mode 100644 target/xtensa/xtensa-isa.c
create mode 100644 target/xtensa/xtensa-isa.h
--
Thanks.
-- Max
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [Qemu-devel] [PULL v3] target/xtensa updates
2018-01-09 18:17 [Qemu-devel] [PULL v3] target/xtensa updates Max Filippov
@ 2018-01-11 9:53 ` Peter Maydell
2018-01-12 9:20 ` Paolo Bonzini
1 sibling, 0 replies; 5+ messages in thread
From: Peter Maydell @ 2018-01-11 9:53 UTC (permalink / raw)
To: Max Filippov; +Cc: QEMU Developers
On 9 January 2018 at 18:17, Max Filippov <jcmvbkbc@gmail.com> wrote:
> Hi Peter,
>
> please pull the following batch of updates for the target/xtensa.
> Changes v2->v3:
> - Don't use g_malloc_n, use g_new instead.
> Changes v1->v2:
> - Drop no longer used function option_bits_enabled.
>
> The following changes since commit 0a0dc59d27527b78a195c2d838d28b7b49e5a639:
>
> Update version for v2.11.0 release (2017-12-13 14:31:09 +0000)
>
> are available in the git repository at:
>
> git://github.com/OSLL/qemu-xtensa.git tags/20180109-xtensa
>
> for you to fetch changes up to 5a6539e627faf9251e1db78238b9f9b870610518:
>
> target/xtensa: implement disassembler (2018-01-09 09:55:39 -0800)
>
> ----------------------------------------------------------------
> target/xtensa updates:
>
> - add libisa to the xtensa target;
> - change xtensa instruction translator to use it;
> - switch existing xtensa cores to use it;
> - add support for a number of instructions: salt/saltu, const16,
> GPIO32 group, debug mode and MMU-related;
> - add disassembler for Xtensa.
Applied, thanks.
-- PMM
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [Qemu-devel] [PULL v3] target/xtensa updates
2018-01-09 18:17 [Qemu-devel] [PULL v3] target/xtensa updates Max Filippov
2018-01-11 9:53 ` Peter Maydell
@ 2018-01-12 9:20 ` Paolo Bonzini
2018-01-12 17:36 ` [Qemu-devel] [PATCH] target/xtensa: don't typedef DisasContext twice Max Filippov
1 sibling, 1 reply; 5+ messages in thread
From: Paolo Bonzini @ 2018-01-12 9:20 UTC (permalink / raw)
To: Max Filippov, qemu-devel; +Cc: Peter Maydell
On 09/01/2018 19:17, Max Filippov wrote:
> Hi Peter,
>
> please pull the following batch of updates for the target/xtensa.
> Changes v2->v3:
> - Don't use g_malloc_n, use g_new instead.
> Changes v1->v2:
> - Drop no longer used function option_bits_enabled.
>
> The following changes since commit 0a0dc59d27527b78a195c2d838d28b7b49e5a639:
>
> Update version for v2.11.0 release (2017-12-13 14:31:09 +0000)
>
> are available in the git repository at:
>
> git://github.com/OSLL/qemu-xtensa.git tags/20180109-xtensa
>
> for you to fetch changes up to 5a6539e627faf9251e1db78238b9f9b870610518:
>
> target/xtensa: implement disassembler (2018-01-09 09:55:39 -0800)
This fails compilation on CentOS 6:
/tmp/qemu-test/src/target/xtensa/translate.c:81: error: redefinition of typedef 'DisasContext'
/tmp/qemu-test/src/target/xtensa/cpu.h:339: note: previous declaration of 'DisasContext' was here
make[1]: *** [target/xtensa/translate.o] Error 1
make[1]: *** Waiting for unfinished jobs....
Paolo
> ----------------------------------------------------------------
> target/xtensa updates:
>
> - add libisa to the xtensa target;
> - change xtensa instruction translator to use it;
> - switch existing xtensa cores to use it;
> - add support for a number of instructions: salt/saltu, const16,
> GPIO32 group, debug mode and MMU-related;
> - add disassembler for Xtensa.
>
> ----------------------------------------------------------------
> Max Filippov (16):
> target/xtensa: pass actual frame size to the entry helper
> target/xtensa: import libisa source
> target/xtensa: extract core opcode translators
> target/xtensa: extract FPU2000 opcode translators
> target/xtensa: update import_core.sh script for libisa
> target/xtensa: switch dc232b to libisa
> target/xtensa: switch dc233c to libisa
> target/xtensa: switch fsf to libisa
> target/xtensa: use libisa for instruction decoding
> target/xtensa: tests: fix memctl SR test
> target/xtensa: drop DisasContext::litbase
> target/xtensa: add internal/noop SRs and opcodes
> target/xtensa: implement salt/saltu
> target/xtensa: implement GPIO32
> target/xtensa: implement const16
> target/xtensa: implement disassembler
>
> MAINTAINERS | 1 +
> disas/Makefile.objs | 1 +
> disas/xtensa.c | 133 +
> include/disas/bfd.h | 1 +
> include/hw/xtensa/xtensa-isa.h | 838 ++
> target/xtensa/Makefile.objs | 1 +
> target/xtensa/core-dc232b.c | 4 +
> target/xtensa/core-dc232b/xtensa-modules.c | 14105 +++++++++++++++++++++++++
> target/xtensa/core-dc233c.c | 4 +
> target/xtensa/core-dc233c/xtensa-modules.c | 15232 +++++++++++++++++++++++++++
> target/xtensa/core-fsf.c | 5 +
> target/xtensa/core-fsf/xtensa-modules.c | 9841 +++++++++++++++++
> target/xtensa/cpu.c | 9 +
> target/xtensa/cpu.h | 31 +
> target/xtensa/helper.c | 37 +
> target/xtensa/import_core.sh | 15 +
> target/xtensa/op_helper.c | 2 +-
> target/xtensa/translate.c | 5900 +++++++----
> target/xtensa/xtensa-isa-internal.h | 231 +
> target/xtensa/xtensa-isa.c | 1745 +++
> target/xtensa/xtensa-isa.h | 1 +
> tests/tcg/xtensa/test_sr.S | 2 +-
> 22 files changed, 45955 insertions(+), 2184 deletions(-)
> create mode 100644 disas/xtensa.c
> create mode 100644 include/hw/xtensa/xtensa-isa.h
> create mode 100644 target/xtensa/core-dc232b/xtensa-modules.c
> create mode 100644 target/xtensa/core-dc233c/xtensa-modules.c
> create mode 100644 target/xtensa/core-fsf/xtensa-modules.c
> create mode 100644 target/xtensa/xtensa-isa-internal.h
> create mode 100644 target/xtensa/xtensa-isa.c
> create mode 100644 target/xtensa/xtensa-isa.h
>
^ permalink raw reply [flat|nested] 5+ messages in thread
* [Qemu-devel] [PATCH] target/xtensa: don't typedef DisasContext twice
2018-01-12 9:20 ` Paolo Bonzini
@ 2018-01-12 17:36 ` Max Filippov
2018-01-12 17:43 ` Max Filippov
0 siblings, 1 reply; 5+ messages in thread
From: Max Filippov @ 2018-01-12 17:36 UTC (permalink / raw)
To: qemu-devel; +Cc: Paolo Bonzini, Peter Maydell, Max Filippov
This fixes build on Centos 6.
Fixes: 168c12b02470 ("target/xtensa: extract core opcode translators").
Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
---
target/xtensa/translate.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/target/xtensa/translate.c b/target/xtensa/translate.c
index 4bdfcd24d09b..bec9efc4d86a 100644
--- a/target/xtensa/translate.c
+++ b/target/xtensa/translate.c
@@ -50,7 +50,7 @@
/* is_jmp field values */
#define DISAS_UPDATE DISAS_TARGET_0 /* cpu state was modified dynamically */
-typedef struct DisasContext {
+struct DisasContext {
const XtensaConfig *config;
TranslationBlock *tb;
uint32_t pc;
@@ -78,7 +78,7 @@ typedef struct DisasContext {
uint32_t *raw_arg;
xtensa_insnbuf insnbuf;
xtensa_insnbuf slotbuf;
-} DisasContext;
+};
static TCGv_i32 cpu_pc;
static TCGv_i32 cpu_R[16];
--
2.1.4
^ permalink raw reply related [flat|nested] 5+ messages in thread
end of thread, other threads:[~2018-01-12 17:43 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-01-09 18:17 [Qemu-devel] [PULL v3] target/xtensa updates Max Filippov
2018-01-11 9:53 ` Peter Maydell
2018-01-12 9:20 ` Paolo Bonzini
2018-01-12 17:36 ` [Qemu-devel] [PATCH] target/xtensa: don't typedef DisasContext twice Max Filippov
2018-01-12 17:43 ` Max Filippov
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).