qemu-devel
[Top][All Lists]
Advanced

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

[Qemu-devel] [PATCH 0/7] poison TARGET_xxx for compile once object and h


From: Paolo Bonzini
Subject: [Qemu-devel] [PATCH 0/7] poison TARGET_xxx for compile once object and header file cleanups
Date: Fri, 25 Jun 2010 14:52:15 +0200

This is a different way to achieve the same objective as Isamu's patch.
Basically, his patch becomes the (much simpler) patch 7 of this series,
and everything else is something I had had lying around for a while. :)

Patch 1 is simply Amit's patch, included here for convenience as it's
not been applied yet.

Patches 2 and 3 remove some dyngen-exec.h hacks at the price of requiring
qemu-common.h included in more places.  I don't see this as a big price;
all of these files were already including qemu-common.h indirectly,
e.g. via cpu-all.h, just not early enough.

Patches 4 provides a CPUState type, albeit an opaque one, to files that
are not compiled per-target.  The advantage of this are apparent in 
patches 5 and 6: opaque pointers that are actually CPUState pointers
are now type-safe, and it is even possible to define a cpu property type
for the occasional device that has to be connected to a particular CPU
(the PC APICs in particular).

Finally, patch 7 "redoes" Isamu's patch just by moving five lines of
code into qemu-common.h.


Amit Shah (1):
  rtc: Remove TARGET_I386 from qemu-config.c, enables driftfix

Paolo Bonzini (6):
  include qemu-common.h when needed by the next patches
  include stdio.h freely, remove dyngen-exec.h hacks
  provide opaque CPUState to files that are compiled once
  add qdev property type "cpu"
  replace void* uses with opaque CPUState*
  poison TARGET_xxx for compile once object

 arm-semi.c                    |    2 +-
 bsd-user/qemu.h               |    1 +
 cpu-common.h                  |    6 +---
 cpu-defs.h                    |    1 +
 cpu-exec.c                    |    1 +
 cpus.c                        |   39 ++++++++++++++++++++++--------------
 cpus.h                        |    2 +
 darwin-user/qemu.h            |    1 +
 disas.c                       |    1 +
 disas.h                       |    5 +---
 dyngen-exec.h                 |   16 --------------
 exec.c                        |    2 +-
 hw/apic.c                     |    4 +-
 hw/pc.c                       |    4 +-
 hw/qdev-properties.c          |   44 +++++++++++++++++++++++++++++++++++++++++
 hw/qdev.h                     |    5 ++++
 linux-user/arm/nwfpe/fpa11.h  |    3 +-
 linux-user/main.c             |    1 -
 linux-user/qemu.h             |    1 +
 m68k-semi.c                   |    2 +-
 poison.h                      |    3 --
 qemu-common.h                 |   19 ++++-------------
 qemu-config.c                 |    2 -
 target-alpha/cpu.h            |    4 +--
 target-alpha/exec.h           |    6 +---
 target-alpha/helper.c         |    1 +
 target-alpha/op_helper.c      |    1 +
 target-alpha/translate.c      |    2 +-
 target-arm/cpu.h              |    6 ++--
 target-arm/exec.h             |    5 +--
 target-arm/helper.c           |    2 +-
 target-arm/iwmmxt_helper.c    |    1 +
 target-arm/neon_helper.c      |    1 +
 target-arm/op_helper.c        |    1 +
 target-arm/translate.c        |    1 +
 target-cris/cpu.h             |    6 ++--
 target-cris/exec.h            |    6 ++--
 target-cris/helper.c          |    1 +
 target-cris/mmu.c             |    1 +
 target-cris/op_helper.c       |    1 +
 target-cris/translate.c       |    2 +-
 target-i386/cpu.h             |    6 ++--
 target-i386/cpuid.c           |    1 +
 target-i386/exec.h            |    7 +----
 target-i386/helper.c          |    2 +-
 target-i386/op_helper.c       |    1 +
 target-i386/translate.c       |    1 +
 target-m68k/cpu.h             |    6 ++--
 target-m68k/exec.h            |    6 ++--
 target-m68k/helper.c          |    2 +-
 target-m68k/op_helper.c       |    1 +
 target-m68k/translate.c       |    1 +
 target-microblaze/cpu.h       |    7 ++---
 target-microblaze/exec.h      |    6 ++--
 target-microblaze/helper.c    |    1 +
 target-microblaze/mmu.c       |    1 +
 target-microblaze/op_helper.c |    1 +
 target-microblaze/translate.c |    2 +-
 target-mips/cpu.h             |    5 +---
 target-mips/exec.h            |    6 +---
 target-mips/helper.c          |    1 +
 target-mips/op_helper.c       |    1 +
 target-mips/translate.c       |    2 +-
 target-ppc/cpu.h              |    3 +-
 target-ppc/exec.h             |    2 -
 target-ppc/helper.c           |    2 +-
 target-ppc/op_helper.c        |    1 +
 target-ppc/translate.c        |    2 +-
 target-s390x/cpu.h            |    6 ++--
 target-s390x/exec.h           |    7 ++---
 target-s390x/helper.c         |    2 +-
 target-s390x/op_helper.c      |    1 +
 target-sh4/cpu.h              |    6 ++--
 target-sh4/exec.h             |    5 +--
 target-sh4/helper.c           |    1 +
 target-sh4/op_helper.c        |    2 +
 target-sh4/translate.c        |    2 +-
 target-sparc/cpu.h            |    6 ++--
 target-sparc/exec.h           |    3 ++
 target-sparc/helper.c         |    2 +-
 target-sparc/op_helper.c      |    1 +
 target-sparc/translate.c      |    1 +
 translate-all.c               |    1 +
 83 files changed, 189 insertions(+), 147 deletions(-)




reply via email to

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