[PATCH 0/1] KVX architecture support

Clement Leger cleger at kalray.eu
Wed Apr 22 13:08:15 UTC 2020


This commit adds strace support for Kalray VLIW family (kvx)

Kalray kv3 core is embedded in Kalray Coolidge SoC. This core which is the 
third of the KV family has the following features:
 - 32/64 bits execution mode
 - 6-issue VLIW architecture
 - 64 x 64bits general purpose registers
 - SIMD instructions
 - little-endian

The kvx Linux kernel port is a 64 bits port only and syscall interface uses the
following convention:
 - r0 -> r5: syscall arguments
 - r6 syscall number
 - r0: syscall return value
 
A syscall is viewed as a standard KVX ABI call and thus, caller-saved registers
must be saved before executing the syscall.

In order to build a usable toolchain, build scripts are provided at the
following address: https://github.com/kalray/build-scripts.

Kalray uses FOSS which is available at https://github.com/kalray
This includes Linux kernel, uClibc-ng, gcc, binutils, etc.

Clement Leger (1):
  Add kvx architecture support

 Makefile.am                  | 10 +++++++++
 NEWS                         |  1 +
 clone.c                      |  3 ++-
 configure.ac                 |  4 ++++
 linux/kvx/arch_regs.c        | 11 ++++++++++
 linux/kvx/get_error.c        | 19 ++++++++++++++++
 linux/kvx/get_scno.c         | 14 ++++++++++++
 linux/kvx/get_syscall_args.c | 20 +++++++++++++++++
 linux/kvx/ioctls_arch0.h     |  1 +
 linux/kvx/ioctls_inc0.h      |  1 +
 linux/kvx/raw_syscall.h      | 42 ++++++++++++++++++++++++++++++++++++
 linux/kvx/set_error.c        | 20 +++++++++++++++++
 linux/kvx/set_scno.c         | 13 +++++++++++
 linux/kvx/syscallent.h       |  8 +++++++
 14 files changed, 166 insertions(+), 1 deletion(-)
 create mode 100644 linux/kvx/arch_regs.c
 create mode 100644 linux/kvx/get_error.c
 create mode 100644 linux/kvx/get_scno.c
 create mode 100644 linux/kvx/get_syscall_args.c
 create mode 100644 linux/kvx/ioctls_arch0.h
 create mode 100644 linux/kvx/ioctls_inc0.h
 create mode 100644 linux/kvx/raw_syscall.h
 create mode 100644 linux/kvx/set_error.c
 create mode 100644 linux/kvx/set_scno.c
 create mode 100644 linux/kvx/syscallent.h

-- 
2.17.1



More information about the Strace-devel mailing list