Patches 1-9 & 11 are your already reviewed non-decoding patches, with the fixes for application to mainline folded in.
Patch 10 is a new framework for decoding the tilegx bundle that doesn't have nearly so much redundant code. The patch is still large, over 1000 lines, but over 500 of those are simply listing the insns from opcode_tilegx.h. Patches 12-14 begin implementing groups of instructions. This is the size I expect each of your patches to be, somewhere near 100 lines and implementing a limited number of instructions. Call this patch set version 13. For convenience, the tree is pushed to git://github.com/rth7680/qemu.git tilegx-r13 r~ Chen Gang (9): linux-user: tilegx: Firstly add architecture related features linux-user: Support tilegx architecture in linux-user linux-user: Conditionalize syscalls which are not defined in tilegx target-tilegx: Add opcode basic implementation from Tilera Corporation target-tilegx: Modify opcode_tilegx.h to fit QEMU usage target-tilegx: Add special register information from Tilera Corporation target-tilegx: Add cpu basic features for linux-user target-tilegx: Add several helpers for instructions translation target-tilegx: Add TILE-Gx building files Richard Henderson (5): target-tilegx: Modify _SPECIAL_ opcodes target-tilegx: Framework for decoding bundles target-tilegx: Handle simple logical operations target-tilegx: Handle arithmetic instructions target-tilegx: Handle most bit manipulation instructions configure | 2 + default-configs/tilegx-linux-user.mak | 1 + include/elf.h | 2 + linux-user/elfload.c | 23 + linux-user/main.c | 295 +++++++ linux-user/syscall.c | 50 +- linux-user/syscall_defs.h | 14 +- linux-user/tilegx/syscall.h | 40 + linux-user/tilegx/syscall_nr.h | 324 ++++++++ linux-user/tilegx/target_cpu.h | 35 + linux-user/tilegx/target_signal.h | 28 + linux-user/tilegx/target_structs.h | 46 ++ linux-user/tilegx/termbits.h | 274 +++++++ target-tilegx/Makefile.objs | 1 + target-tilegx/cpu.c | 143 ++++ target-tilegx/cpu.h | 175 ++++ target-tilegx/helper.c | 93 +++ target-tilegx/helper.h | 6 + target-tilegx/opcode_tilegx.h | 1406 +++++++++++++++++++++++++++++++++ target-tilegx/spr_def_64.h | 216 +++++ target-tilegx/translate.c | 1358 +++++++++++++++++++++++++++++++ 21 files changed, 4526 insertions(+), 6 deletions(-) create mode 100644 default-configs/tilegx-linux-user.mak create mode 100644 linux-user/tilegx/syscall.h create mode 100644 linux-user/tilegx/syscall_nr.h create mode 100644 linux-user/tilegx/target_cpu.h create mode 100644 linux-user/tilegx/target_signal.h create mode 100644 linux-user/tilegx/target_structs.h create mode 100644 linux-user/tilegx/termbits.h create mode 100644 target-tilegx/Makefile.objs create mode 100644 target-tilegx/cpu.c create mode 100644 target-tilegx/cpu.h create mode 100644 target-tilegx/helper.c create mode 100644 target-tilegx/helper.h create mode 100644 target-tilegx/opcode_tilegx.h create mode 100644 target-tilegx/spr_def_64.h create mode 100644 target-tilegx/translate.c -- 2.4.3