On Thu, Sep 1, 2011 at 8:45 PM, Max Filippov <jcmvb...@gmail.com> wrote: > This series adds support for Tensilica Xtensa target. > Port status: Linux for DC232B works in the qemu. > Not implemented xtensa options: MAC16, floating point coprocessor, > boolean option, cache option, debug option.
I had minor comments to a few patches, otherwise this looks nice to me. Does anyone object to merging this? > v3 -> v4 changes: > - fix usage of type names ending with _t; > - fix usage of identifiers starting with _[A-Z]. > > Git tree is available at git://jcmvbkbc.spb.ru/dumb/qemu-xtensa.git xtensa > > Max Filippov (32): > target-xtensa: add target stubs > target-xtensa: add target to the configure script > target-xtensa: implement disas_xtensa_insn > target-xtensa: implement narrow instructions > target-xtensa: implement RT0 group > target-xtensa: add sample board > target-xtensa: implement conditional jumps > target-xtensa: implement JX/RET0/CALLX > target-xtensa: add special and user registers > target-xtensa: implement RST3 group > target-xtensa: implement shifts (ST1 and RST1 groups) > target-xtensa: implement LSAI group > target-xtensa: mark reserved and TBD opcodes > target-xtensa: implement SYNC group > target-xtensa: implement CACHE group > target-xtensa: add PS register and access control > target-xtensa: implement exceptions > target-xtensa: implement RST2 group (32 bit mul/div/rem) > target-xtensa: implement windowed registers > target-xtensa: implement loop option > target-xtensa: implement extended L32R > target-xtensa: implement unaligned exception option > target-xtensa: implement SIMCALL > target-xtensa: implement interrupt option > target-xtensa: implement accurate window check > target-xtensa: implement CPENABLE and PRID SRs > target-xtensa: implement relocatable vectors > target-xtensa: add gdb support > target-xtensa: implement memory protection options > target-xtensa: add dc232b core and board > MAINTAINERS: add xtensa maintainer > target-xtensa: add regression testsuite > > MAINTAINERS | 13 + > Makefile.target | 5 + > arch_init.c | 2 + > arch_init.h | 1 + > configure | 12 +- > cpu-exec.c | 8 + > default-configs/xtensa-softmmu.mak | 1 + > default-configs/xtensaeb-softmmu.mak | 1 + > elf.h | 2 + > gdbstub.c | 96 + > hw/xtensa_dc232b.c | 112 ++ > hw/xtensa_pic.c | 134 ++ > hw/xtensa_sample.c | 106 ++ > qemu-options.hx | 4 +- > target-xtensa/cpu.h | 424 +++++ > target-xtensa/gdb-config-dc232b.c | 261 +++ > target-xtensa/gdb-config-sample-xtensa-core.c | 375 ++++ > target-xtensa/helper.c | 763 ++++++++ > target-xtensa/helpers.h | 32 + > target-xtensa/machine.c | 38 + > target-xtensa/op_helper.c | 668 +++++++ > target-xtensa/translate.c | 2349 > +++++++++++++++++++++++++ > tests/xtensa/Makefile | 72 + > tests/xtensa/crt.S | 24 + > tests/xtensa/linker.ld | 113 ++ > tests/xtensa/macros.inc | 68 + > tests/xtensa/test_b.S | 221 +++ > tests/xtensa/test_bi.S | 103 ++ > tests/xtensa/test_bz.S | 57 + > tests/xtensa/test_clamps.S | 42 + > tests/xtensa/test_fail.S | 9 + > tests/xtensa/test_interrupt.S | 194 ++ > tests/xtensa/test_loop.S | 77 + > tests/xtensa/test_max.S | 81 + > tests/xtensa/test_min.S | 81 + > tests/xtensa/test_mmu.S | 318 ++++ > tests/xtensa/test_mul16.S | 83 + > tests/xtensa/test_mul32.S | 20 + > tests/xtensa/test_nsa.S | 59 + > tests/xtensa/test_pipeline.S | 157 ++ > tests/xtensa/test_quo.S | 147 ++ > tests/xtensa/test_rem.S | 147 ++ > tests/xtensa/test_rst0.S | 148 ++ > tests/xtensa/test_sar.S | 111 ++ > tests/xtensa/test_sext.S | 69 + > tests/xtensa/test_shift.S | 206 +++ > tests/xtensa/test_timer.S | 115 ++ > tests/xtensa/test_windowed.S | 302 ++++ > tests/xtensa/vectors.S | 39 + > xtensa-semi.c | 224 +++ > 50 files changed, 8691 insertions(+), 3 deletions(-) > create mode 100644 default-configs/xtensa-softmmu.mak > create mode 100644 default-configs/xtensaeb-softmmu.mak > create mode 100644 hw/xtensa_dc232b.c > create mode 100644 hw/xtensa_pic.c > create mode 100644 hw/xtensa_sample.c > create mode 100644 target-xtensa/cpu.h > create mode 100644 target-xtensa/gdb-config-dc232b.c > create mode 100644 target-xtensa/gdb-config-sample-xtensa-core.c > create mode 100644 target-xtensa/helper.c > create mode 100644 target-xtensa/helpers.h > create mode 100644 target-xtensa/machine.c > create mode 100644 target-xtensa/op_helper.c > create mode 100644 target-xtensa/translate.c > create mode 100644 tests/xtensa/Makefile > create mode 100644 tests/xtensa/crt.S > create mode 100644 tests/xtensa/linker.ld > create mode 100644 tests/xtensa/macros.inc > create mode 100644 tests/xtensa/test_b.S > create mode 100644 tests/xtensa/test_bi.S > create mode 100644 tests/xtensa/test_bz.S > create mode 100644 tests/xtensa/test_clamps.S > create mode 100644 tests/xtensa/test_fail.S > create mode 100644 tests/xtensa/test_interrupt.S > create mode 100644 tests/xtensa/test_loop.S > create mode 100644 tests/xtensa/test_max.S > create mode 100644 tests/xtensa/test_min.S > create mode 100644 tests/xtensa/test_mmu.S > create mode 100644 tests/xtensa/test_mul16.S > create mode 100644 tests/xtensa/test_mul32.S > create mode 100644 tests/xtensa/test_nsa.S > create mode 100644 tests/xtensa/test_pipeline.S > create mode 100644 tests/xtensa/test_quo.S > create mode 100644 tests/xtensa/test_rem.S > create mode 100644 tests/xtensa/test_rst0.S > create mode 100644 tests/xtensa/test_sar.S > create mode 100644 tests/xtensa/test_sext.S > create mode 100644 tests/xtensa/test_shift.S > create mode 100644 tests/xtensa/test_timer.S > create mode 100644 tests/xtensa/test_windowed.S > create mode 100644 tests/xtensa/vectors.S > create mode 100644 xtensa-semi.c > > -- > 1.7.6 > > >