qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] [PATCH v14 00/33] TileGX basic instructions


From: Richard Henderson
Subject: [Qemu-devel] [PATCH v14 00/33] TileGX basic instructions
Date: Mon, 24 Aug 2015 09:17:26 -0700

I've flushed out the v13 I posted last Thursday to handle all the
instructions required to execute Hello World.  In the process I
found a number of bugs and design flaws in v13, and reshaped the
translation a bit to better handle insns with no register outputs.

Please review.

After this, I would hope that Chen Gang will follow up to implement
the rest of the instructions that he has identified running the
gcc testsuite, and then start in on the floating point.


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 (24):
  target-tilegx: Modify _SPECIAL_ opcodes
  target-tilegx: Fix LDNA_ADD_IMM8_OPCODE_X1
  target-tilegx: Framework for decoding bundles
  target-tilegx: Generate SEGV properly
  target-tilegx: Handle simple logical operations
  target-tilegx: Handle arithmetic instructions
  target-tilegx: Handle most bit manipulation instructions
  target-tilegx: Handle basic load and store instructions
  target-tilegx: Handle post-increment load and store instructions
  target-tilegx: Handle unconditional jump instructions
  target-tilegx: Handle conditional branch instructions
  target-tilegx: Handle comparison instructions
  target-tilegx: Implement system and memory management instructions
  target-tilegx: Handle bitfield instructions
  target-tilegx: Handle shift instructions
  target-tilegx: Handle conditional move instructions
  target-tilegx: Handle scalar multiply instructions
  target-tilegx: Handle mask instructions
  target-tilegx: Handle v1cmpeq, v1cmpne
  target-tilegx: Handle mtspr, mfspr
  target-tilegx: Handle atomic instructions
  target-tilegx: Handle v4int_l/h
  target-tilegx: Handle v1shli, v1shrui
  target-tilegx: Handle v1shl, v1shru, v1shrs

 configure                             |    2 +
 default-configs/tilegx-linux-user.mak |    1 +
 include/elf.h                         |    2 +
 linux-user/elfload.c                  |   23 +
 linux-user/main.c                     |  298 +++++
 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                   |  173 +++
 target-tilegx/cpu.h                   |  177 +++
 target-tilegx/helper.c                |   93 ++
 target-tilegx/helper.h                |   10 +
 target-tilegx/opcode_tilegx.h         | 1406 ++++++++++++++++++++++
 target-tilegx/simd_helper.c           |   63 +
 target-tilegx/spr_def_64.h            |  216 ++++
 target-tilegx/translate.c             | 2135 +++++++++++++++++++++++++++++++++
 22 files changed, 5405 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/simd_helper.c
 create mode 100644 target-tilegx/spr_def_64.h
 create mode 100644 target-tilegx/translate.c

-- 
2.4.3




reply via email to

[Prev in Thread] Current Thread [Next in Thread]