All of lore.kernel.org
 help / color / mirror / Atom feed
* [Qemu-devel] [PULL 00/26] New hppa-linux target support
@ 2017-01-23  2:17 Richard Henderson
  2017-01-23  2:17 ` [Qemu-devel] [PULL 01/26] Revert "Remove remainders of HPPA backend" Richard Henderson
                   ` (25 more replies)
  0 siblings, 26 replies; 32+ messages in thread
From: Richard Henderson @ 2017-01-23  2:17 UTC (permalink / raw)
  To: qemu-devel; +Cc: peter.maydell

This is a linux-user only port, emulating a 32-bit only version of a
pa-2.0 cpu.  This is good enough to do well with both the gcc and glibc
testsuites.  Helge Deller has provided invaluable assistance testing 
with a more complete debian chroot.

What's missing:
  * Space registers.  Since Linux sets them all equal (for a flat
    address space) and uses them like address-space identifiers,
    we can simply set them all to 0 and ignore them.

  * Architecture subsets.  There's no markup for running a pure pa1.0
    or pa1.1 cpu.  I happily accept everything up to pa2.0 at the moment.

  * Wide mode.  While I have pa2.0 instructions, I don't support running
    in 64-bit mode.  Since neither the linux kernel nor glibc support a
    64-bit userland, it would be a lot more work than just adding the insns.

  * Multimedia instructions.  These are tied to wide mode, so...

When squashing the patches down from my development tree, I wanted to
preserve Helge's contributions, so the linux-user part is more patches
than I would normally have preserved.


r~



The following changes since commit d1c82f7cc34443841095f490345f86c9d8baca34:

  Merge remote-tracking branch 'remotes/cohuck/tags/s390x-20170120-v2' into staging (2017-01-20 15:53:58 +0000)

are available in the git repository at:

  git://github.com/rth7680/qemu.git tags/pull-hppa-20170122

for you to fetch changes up to 0ce588d6c60c338c0856b0dac78d19fc7e698477:

  target-hppa: Implement floating-point insns (2017-01-22 18:14:12 -0800)

----------------------------------------------------------------
hppa-linux target support

----------------------------------------------------------------
Helge Deller (3):
      linux-user: Handle TIOCSTART and TIOCSTOP
      linux-user: Add SIOCGPGRP, SIOCGSTAMP, SIOCGSTAMPNS
      linux-user: Add some hppa ioctls

Richard Henderson (23):
      Revert "Remove remainders of HPPA backend"
      linux-user: Support stack-grows-up in elfload.c
      linux-user: Handle ERFKILL and EHWPOISON
      linux-user: Handle more IPV6 sockopts
      linux-user: Add HPPA socket.h definitions
      linux-user: Add HPPA syscall numbers
      linux-user: Add HPPA termbits.h
      linux-user: Add HPPA target_syscall.h
      linux-user: Add HPPA definitions to syscall_defs.h
      linux-user: Add HPPA target_structs.h
      linux-user: Add HPPA target_signal.h and target_cpu.h
      linux-user: Add HPPA signal handling
      linux-user: Add HPPA startup and main loop
      target-hppa: Add softfloat specializations
      target-hppa: Add framework and enable compilation
      target-hppa: Add nullification framework
      target-hppa: Implement basic arithmetic
      target-hppa: Implement branches
      target-hppa: Implement linux-user gateway page
      target-hppa: Implement shifts and deposits
      target-hppa: Implement loads and stores
      target-hppa: Implement system and memory-management insns
      target-hppa: Implement floating-point insns

 MAINTAINERS                         |    6 +
 configure                           |    7 +-
 default-configs/hppa-linux-user.mak |    1 +
 disas.c                             |    2 +
 disas/Makefile.objs                 |    1 +
 disas/hppa.c                        | 2832 +++++++++++++++++++++++++
 fpu/softfloat-specialize.h          |   20 +-
 linux-user/alpha/target_syscall.h   |    2 +
 linux-user/elfload.c                |  259 ++-
 linux-user/errno_defs.h             |    3 +
 linux-user/hppa/sockbits.h          |   97 +
 linux-user/hppa/syscall_nr.h        |  353 ++++
 linux-user/hppa/target_cpu.h        |   35 +
 linux-user/hppa/target_signal.h     |   29 +
 linux-user/hppa/target_structs.h    |   54 +
 linux-user/hppa/target_syscall.h    |  237 +++
 linux-user/hppa/termbits.h          |  219 ++
 linux-user/ioctls.h                 |    8 +
 linux-user/main.c                   |  185 +-
 linux-user/mips/target_syscall.h    |    5 +
 linux-user/mips64/target_syscall.h  |    5 +
 linux-user/qemu.h                   |    3 +
 linux-user/signal.c                 |  191 +-
 linux-user/socket.h                 |    2 +
 linux-user/syscall.c                |   41 +-
 linux-user/syscall_defs.h           |  154 +-
 linux-user/syscall_types.h          |    6 +
 target/hppa/Makefile.objs           |    1 +
 target/hppa/cpu-qom.h               |   52 +
 target/hppa/cpu.c                   |  164 ++
 target/hppa/cpu.h                   |  144 ++
 target/hppa/gdbstub.c               |  111 +
 target/hppa/helper.c                |  137 ++
 target/hppa/helper.h                |   66 +
 target/hppa/op_helper.c             |  570 +++++
 target/hppa/translate.c             | 3946 +++++++++++++++++++++++++++++++++++
 36 files changed, 9869 insertions(+), 79 deletions(-)
 create mode 100644 default-configs/hppa-linux-user.mak
 create mode 100644 disas/hppa.c
 create mode 100644 linux-user/hppa/sockbits.h
 create mode 100644 linux-user/hppa/syscall_nr.h
 create mode 100644 linux-user/hppa/target_cpu.h
 create mode 100644 linux-user/hppa/target_signal.h
 create mode 100644 linux-user/hppa/target_structs.h
 create mode 100644 linux-user/hppa/target_syscall.h
 create mode 100644 linux-user/hppa/termbits.h
 create mode 100644 target/hppa/Makefile.objs
 create mode 100644 target/hppa/cpu-qom.h
 create mode 100644 target/hppa/cpu.c
 create mode 100644 target/hppa/cpu.h
 create mode 100644 target/hppa/gdbstub.c
 create mode 100644 target/hppa/helper.c
 create mode 100644 target/hppa/helper.h
 create mode 100644 target/hppa/op_helper.c
 create mode 100644 target/hppa/translate.c

^ permalink raw reply	[flat|nested] 32+ messages in thread

end of thread, other threads:[~2017-06-27 16:54 UTC | newest]

Thread overview: 32+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-01-23  2:17 [Qemu-devel] [PULL 00/26] New hppa-linux target support Richard Henderson
2017-01-23  2:17 ` [Qemu-devel] [PULL 01/26] Revert "Remove remainders of HPPA backend" Richard Henderson
2017-01-23  2:17 ` [Qemu-devel] [PULL 02/26] linux-user: Support stack-grows-up in elfload.c Richard Henderson
2017-06-27 16:32   ` Peter Maydell
2017-01-23  2:17 ` [Qemu-devel] [PULL 03/26] linux-user: Handle TIOCSTART and TIOCSTOP Richard Henderson
2017-01-23  2:17 ` [Qemu-devel] [PULL 04/26] linux-user: Add SIOCGPGRP, SIOCGSTAMP, SIOCGSTAMPNS Richard Henderson
2017-01-23  2:17 ` [Qemu-devel] [PULL 05/26] linux-user: Handle ERFKILL and EHWPOISON Richard Henderson
2017-01-23  2:17 ` [Qemu-devel] [PULL 06/26] linux-user: Handle more IPV6 sockopts Richard Henderson
2017-01-23  2:17 ` [Qemu-devel] [PULL 08/26] linux-user: Add HPPA socket.h definitions Richard Henderson
2017-01-23  2:17 ` [Qemu-devel] [PULL 09/26] linux-user: Add HPPA syscall numbers Richard Henderson
2017-01-23  2:17 ` [Qemu-devel] [PULL 10/26] linux-user: Add HPPA termbits.h Richard Henderson
2017-01-23  2:17 ` [Qemu-devel] [PULL 11/26] linux-user: Add HPPA target_syscall.h Richard Henderson
2017-01-23  2:17 ` [Qemu-devel] [PULL 12/26] linux-user: Add HPPA definitions to syscall_defs.h Richard Henderson
2017-01-23  2:17 ` [Qemu-devel] [PULL 13/26] linux-user: Add HPPA target_structs.h Richard Henderson
2017-01-23  2:17 ` [Qemu-devel] [PULL 14/26] linux-user: Add HPPA target_signal.h and target_cpu.h Richard Henderson
2017-01-23  2:17 ` [Qemu-devel] [PULL 15/26] linux-user: Add HPPA signal handling Richard Henderson
2017-01-23  2:17 ` [Qemu-devel] [PULL 16/26] linux-user: Add HPPA startup and main loop Richard Henderson
2017-01-23  2:17 ` [Qemu-devel] [PULL 17/26] target-hppa: Add softfloat specializations Richard Henderson
2017-01-23  2:17 ` [Qemu-devel] [PULL 18/26] target-hppa: Add framework and enable compilation Richard Henderson
2017-01-30 13:49   ` Peter Maydell
2017-02-07  2:27     ` Richard Henderson
2017-01-23  2:17 ` [Qemu-devel] [PULL 19/26] target-hppa: Add nullification framework Richard Henderson
2017-01-23  2:17 ` [Qemu-devel] [PULL 20/26] target-hppa: Implement basic arithmetic Richard Henderson
2017-01-23  2:17 ` [Qemu-devel] [PULL 21/26] target-hppa: Implement branches Richard Henderson
2017-01-26 12:14   ` Paolo Bonzini
2017-01-26 17:18     ` Richard Henderson
2017-01-23  2:17 ` [Qemu-devel] [PULL 22/26] target-hppa: Implement linux-user gateway page Richard Henderson
2017-01-23  2:17 ` [Qemu-devel] [PULL 23/26] target-hppa: Implement shifts and deposits Richard Henderson
2017-01-23  2:17 ` [Qemu-devel] [PULL 24/26] target-hppa: Implement loads and stores Richard Henderson
2017-01-23  2:17 ` [Qemu-devel] [PULL 25/26] target-hppa: Implement system and memory-management insns Richard Henderson
2017-01-23  2:17 ` [Qemu-devel] [PULL 26/26] target-hppa: Implement floating-point insns Richard Henderson
2017-01-23 10:31 ` [Qemu-devel] [PULL 00/26] New hppa-linux target support Peter Maydell

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.