All of lore.kernel.org
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH 0/7] poison TARGET_xxx for compile once object and header file cleanups
@ 2010-06-25 12:52 Paolo Bonzini
  2010-06-25 12:52 ` [Qemu-devel] [PATCH 1/7] rtc: Remove TARGET_I386 from qemu-config.c, enables driftfix Paolo Bonzini
                   ` (8 more replies)
  0 siblings, 9 replies; 23+ messages in thread
From: Paolo Bonzini @ 2010-06-25 12:52 UTC (permalink / raw)
  To: qemu-devel; +Cc: Amit Shah, Isaku Yamahata

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(-)

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

end of thread, other threads:[~2010-06-29 13:52 UTC | newest]

Thread overview: 23+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-06-25 12:52 [Qemu-devel] [PATCH 0/7] poison TARGET_xxx for compile once object and header file cleanups Paolo Bonzini
2010-06-25 12:52 ` [Qemu-devel] [PATCH 1/7] rtc: Remove TARGET_I386 from qemu-config.c, enables driftfix Paolo Bonzini
2010-06-25 12:52 ` [Qemu-devel] [PATCH 2/7] include qemu-common.h when needed by the next patches Paolo Bonzini
2010-06-25 12:52 ` [Qemu-devel] [PATCH 3/7] include stdio.h freely, remove dyngen-exec.h hacks Paolo Bonzini
2010-06-25 12:52 ` [Qemu-devel] [PATCH 4/7] provide opaque CPUState to files that are compiled once Paolo Bonzini
2010-06-27 19:17   ` Blue Swirl
2010-06-28  8:04     ` Paolo Bonzini
2010-06-28 14:21       ` Blue Swirl
2010-06-25 12:52 ` [Qemu-devel] [PATCH 5/7] add qdev property type "cpu" Paolo Bonzini
2010-06-26  7:46   ` Markus Armbruster
2010-06-27 12:48     ` [Qemu-devel] " Paolo Bonzini
2010-06-29 11:42       ` Markus Armbruster
2010-06-29 13:52         ` Paolo Bonzini
2010-06-27 18:45   ` [Qemu-devel] " Blue Swirl
2010-06-25 12:52 ` [Qemu-devel] [PATCH 6/7] replace void* uses with opaque CPUState* Paolo Bonzini
2010-06-26  7:49   ` Markus Armbruster
2010-06-25 12:52 ` [Qemu-devel] [PATCH 7/7] poison TARGET_xxx for compile once object Paolo Bonzini
2010-06-25 22:47 ` [Qemu-devel] [PATCH 0/7] poison TARGET_xxx for compile once object and header file cleanups Richard Henderson
2010-06-27 12:39   ` [Qemu-devel] " Paolo Bonzini
2010-06-27 19:32 ` [Qemu-devel] " Blue Swirl
2010-06-28  8:20   ` Paolo Bonzini
2010-06-28 15:11     ` Blue Swirl
2010-06-28 16:21       ` Paolo Bonzini

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.