qemu-devel
[Top][All Lists]
Advanced

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

[Qemu-devel] [PATCH] HPPA (PA-RISC) host support


From: Stuart Brady
Subject: [Qemu-devel] [PATCH] HPPA (PA-RISC) host support
Date: Sun, 23 Mar 2008 11:32:27 +0000
User-agent: Mutt/1.5.13 (2006-08-11)

Hi,

The attached patch adds preliminary HPPA (PA-RISC) Linux host support.
It is currently capable of running the 'mips-test-0.2' test image, and
it can run simple programs under qemu-i386.

The 'use spinlock_t for interrupt_lock' patch should be applied first.
I have tried to avoid any invasive changes that could affect other
hosts, but please tell me if there's anything that can be improved.

I am not yet sure that the 'stack-grows-up' handling that I have added
to tcg_reg_alloc_call() is correct -- however, HPPA is almost alone[1] 
in using a stack that grows upwards, so this should not be a problem.

Many thanks to Randolph Chung for much of the work on the earlier
version of this patch[2], which applies to QEMU 0.9.1.

I've attached hppa-dis.c separately (as it's 2834 lines taken from
GNU binutils) to make it easier to review the rest of the changes.
hppa-dis.c was retrieved prior to the switch to the GPL v3.

Here's a diffstat of the changes, excluding hppa-dis.c:

 Makefile.target         |    8 
 configure               |    8 
 cpu-all.h               |   11 
 cpu-exec.c              |   29 ++
 dis-asm.h               |    4 
 disas.c                 |    2 
 dyngen-exec.h           |    7 
 dyngen.c                |  129 ++++++++-
 exec-all.h              |   54 +++
 hppa.ld                 |  214 +++++++++++++++
 tcg/hppa/relocs.h       |  116 ++++++++
 tcg/hppa/tcg-target.c   |  678 ++++++++++++++++++++++++++++++++++++++++++++++++
 tcg/hppa/tcg-target.h   |  146 ++++++++++
 tcg/i386/tcg-target.c   |    3 
 tcg/sparc/tcg-target.c  |    3 
 tcg/tcg-dyngen.c        |    9 
 tcg/tcg.c               |   30 +-
 tcg/x86_64/tcg-target.c |    3 
 18 files changed, 1431 insertions(+), 23 deletions(-)

Cheers,
-- 
Stuart Brady

[1] IA64 also has a register stack, similar to SPARC's register windows,
which grows upwards.

[2] http://hppaqemu.sourceforge.net/qemu-0.9.1-hppa.diff

Attachment: qemu-host-hppa.diff
Description: Text Data

Attachment: hppa-dis.c
Description: Text Data


reply via email to

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