Some time ago, we discussed rules for headers, and these were generally liked:
1. Have a carefully curated header that's included everywhere first. We got that already thanks to Peter: osdep.h. 2. Headers should normally include everything they need beyond osdep.h. If exceptions are needed for some reason, they must be documented in the header. If all that's needed from a header is typedefs, put those into qemu/typedefs.h instead of including the header. 3. Cyclic inclusion is forbidden. Message-ID: <87h9g8j57d....@blackfin.pond.sub.org> http://lists.nongnu.org/archive/html/qemu-devel/2016-03/msg03345.html Trouble is we're not exactly close to obeying 2. This series demonstrates a possible path towards obeying it: enforce it in "make check", except for known-bad headers [PATCH 2]. We start with a large list of known-bad headers, then whittle it down. Some sample whittling in PATCH 4+5. Questions and known issues: * Makefile.target adds several -I depending on CONFIG_LINUX, CONFIG_LINUX_USER, TARGET_BASE_ARCH, TARGET_ABI_DIR, ARCH, CONFIG_BSD_USER, HOST_VARIANT_DIR. Headers that are only included by .c files compiled with these extra flags may need to be tested with these extra flags. How? * Likewise for the -Itests added by Makefile.include, and other -I elsewhere. * Should we exclude certain directories wholesale instead of plastering them with FIXME comments? * We may need additional magic comments in addition to /* FIXME Does not pass make check-headers, yet! */ and /* FIXME Does not pass make check-headers with CONFIG_WIN32, yet! */, such as /* NOTE: not expected to pass make check-headers */. Number of headers that fail out of all headers, per directory, with perfect directories omitted: 6 9 audio 3 5 block 2 4 bsd-user 2 2 bsd-user/i386 2 2 bsd-user/sparc 2 2 bsd-user/sparc64 2 2 bsd-user/x86_64 6 6 disas/libvixl/vixl 6 6 disas/libvixl/vixl/a64 2 2 fpu 2 6 hw/9pfs 3 8 hw/audio 2 2 hw/block 1 1 hw/cris 10 14 hw/display 1 3 hw/i386 1 3 hw/ide 3 3 hw/lm32 1 1 hw/microblaze 5 10 hw/net 5 7 hw/net/rocker 1 4 hw/ppc 3 5 hw/s390x 2 6 hw/scsi 2 3 hw/tpm 2 7 hw/usb 1 1 hw/xtensa 1 6 include 1 13 include/block 16 28 include/exec 2 2 include/exec/user 1 23 include/hw 2 13 include/hw/acpi 7 23 include/hw/arm 1 3 include/hw/block 2 10 include/hw/char 1 2 include/hw/cris 3 6 include/hw/i2c 3 9 include/hw/i386 1 3 include/hw/input 1 10 include/hw/intc 1 6 include/hw/isa 1 1 include/hw/kvm 2 4 include/hw/mips 3 19 include/hw/misc 1 4 include/hw/net 1 4 include/hw/nvram 2 16 include/hw/pci 1 6 include/hw/pci-host 6 10 include/hw/ppc 1 3 include/hw/sparc 1 3 include/hw/ssi 3 14 include/hw/timer 3 14 include/hw/virtio 1 5 include/libdecnumber 1 8 include/migration 1 3 include/monitor 2 59 include/qemu 9 31 include/sysemu 7 11 include/ui 1 3 linux-headers/asm-arm64 1 3 linux-headers/asm-mips 1 4 linux-headers/asm-powerpc 6 10 linux-user 4 6 linux-user/aarch64 5 6 linux-user/alpha 5 6 linux-user/arm 2 3 linux-user/arm/nwfpe 4 6 linux-user/cris 5 6 linux-user/i386 5 6 linux-user/m68k 4 6 linux-user/microblaze 5 6 linux-user/mips 6 6 linux-user/mips64 5 6 linux-user/openrisc 6 6 linux-user/ppc 5 6 linux-user/s390x 4 6 linux-user/sh4 5 6 linux-user/sparc 5 6 linux-user/sparc64 4 6 linux-user/tilegx 5 6 linux-user/unicore32 5 6 linux-user/x86_64 1 1 pc-bios/optionrom 7 8 pc-bios/s390-ccw 2 4 qga 2 2 qga/vss-win32 1 1 replay 1 1 scripts 15 21 slirp 2 3 target-alpha 8 11 target-arm 3 7 target-cris 9 10 target-i386 2 3 target-lm32 2 3 target-m68k 3 5 target-microblaze 5 5 target-mips 4 4 target-moxie 3 3 target-openrisc 8 8 target-ppc 2 3 target-s390x 2 3 target-sh4 3 3 target-sparc 2 4 target-tilegx 4 5 target-tricore 2 3 target-unicore32 3 4 target-xtensa 6 6 tcg 1 1 tcg/mips 1 4 tests 2 2 tests/multiboot 3 3 tests/tcg 2 2 tests/tcg/cris 1 1 tests/tcg/mips/mips64-dsp 1 1 tests/tcg/mips/mips64-dspr2 4 7 trace 12 20 ui ----------------------------------------------- 394 1034 total (including perfect directories) v2: * PATCH 2: - Use fixed-format FIXME comments in headers instead of a blacklist in the makefile [Paolo] - Make target check-source [Peter] - Special-case CONFIG_WIN32 * PATCH 3: - replaced by an unrelated one that makes actual sense (I hope) Markus Armbruster (5): Use #include "..." exactly for our own headers tests: New make target check-source tests: Make check-block a phony target include: Move typedef qemu_irq to qemu/typedefs.h include: Include exec/hwaddr.h where hwaddr is used audio/audio_int.h | 3 +++ audio/audio_template.h | 2 ++ audio/audio_win_int.h | 2 ++ audio/dsound_template.h | 3 +++ audio/mixeng_template.h | 2 ++ audio/rate_template.h | 2 ++ block/iscsi.c | 1 - block/qcow2.h | 2 ++ block/raw-aio.h | 3 +++ block/vhdx.h | 2 ++ bsd-user/i386/target_signal.h | 2 ++ bsd-user/i386/target_syscall.h | 2 ++ bsd-user/qemu.h | 3 +++ bsd-user/sparc/target_signal.h | 2 ++ bsd-user/sparc/target_syscall.h | 2 ++ bsd-user/sparc64/target_signal.h | 2 ++ bsd-user/sparc64/target_syscall.h | 2 ++ bsd-user/syscall_defs.h | 2 ++ bsd-user/x86_64/target_signal.h | 2 ++ bsd-user/x86_64/target_syscall.h | 2 ++ contrib/ivshmem-client/ivshmem-client.h | 2 ++ contrib/ivshmem-server/ivshmem-server.h | 2 ++ crypto/pbkdf-gcrypt.c | 2 +- crypto/pbkdf-nettle.c | 2 +- disas/libvixl/vixl/a64/assembler-a64.h | 2 ++ disas/libvixl/vixl/a64/constants-a64.h | 2 ++ disas/libvixl/vixl/a64/cpu-a64.h | 2 ++ disas/libvixl/vixl/a64/decoder-a64.h | 2 ++ disas/libvixl/vixl/a64/disasm-a64.h | 2 ++ disas/libvixl/vixl/a64/instructions-a64.h | 2 ++ disas/libvixl/vixl/code-buffer.h | 2 ++ disas/libvixl/vixl/compiler-intrinsics.h | 2 ++ disas/libvixl/vixl/globals.h | 2 ++ disas/libvixl/vixl/invalset.h | 2 ++ disas/libvixl/vixl/platform.h | 2 ++ disas/libvixl/vixl/utils.h | 2 ++ exec.c | 2 +- fpu/softfloat-macros.h | 2 ++ fpu/softfloat-specialize.h | 2 ++ fsdev/file-op-9p.h | 3 +++ fsdev/qemu-fsdev.h | 3 +++ hw/9pfs/9p-proxy.h | 3 +++ hw/9pfs/9p-synth.h | 3 +++ hw/9pfs/9p-xattr.h | 3 +++ hw/9pfs/9p.h | 2 ++ hw/9pfs/coth.h | 2 ++ hw/9pfs/virtio-9p.h | 2 ++ hw/audio/fmopl.h | 2 ++ hw/audio/hda-codec-common.h | 2 ++ hw/audio/lm4549.h | 3 +++ hw/block/nvme.h | 2 ++ hw/block/xen_blkif.h | 2 ++ hw/cris/boot.h | 4 ++++ hw/display/cirrus_vga_rop.h | 2 ++ hw/display/cirrus_vga_rop2.h | 2 ++ hw/display/milkymist-vgafb_template.h | 2 ++ hw/display/omap_lcd_template.h | 2 ++ hw/display/pl110_template.h | 2 ++ hw/display/pxa2xx_template.h | 2 ++ hw/display/qxl.h | 2 ++ hw/display/sm501_template.h | 2 ++ hw/display/tc6393xb_template.h | 2 ++ hw/display/vga-helpers.h | 2 ++ hw/display/vga_int.h | 3 +++ hw/i386/intel_iommu_internal.h | 6 ++++-- hw/ide/ahci.h | 2 ++ hw/lm32/lm32.h | 2 ++ hw/lm32/lm32_hwsetup.h | 2 ++ hw/lm32/milkymist-hw.h | 2 ++ hw/microblaze/boot.h | 2 ++ hw/net/e1000e_core.h | 9 +++++++++ hw/net/e1000x_common.h | 2 ++ hw/net/ne2000.h | 2 ++ hw/net/pcnet.h | 2 ++ hw/net/rocker/rocker_desc.h | 2 ++ hw/net/rocker/rocker_fp.h | 2 ++ hw/net/rocker/rocker_of_dpa.h | 2 ++ hw/net/rocker/rocker_tlv.h | 2 ++ hw/net/rocker/rocker_world.h | 2 ++ hw/net/vmware_utils.h | 3 +++ hw/ppc/ppc405.h | 2 ++ hw/s390x/ipl.h | 2 ++ hw/s390x/s390-pci-inst.h | 2 ++ hw/s390x/s390-virtio.h | 2 ++ hw/scsi/mptsas.h | 3 +++ hw/scsi/viosrp.h | 3 +++ hw/scsi/virtio-scsi-dataplane.c | 2 +- hw/scsi/virtio-scsi.c | 2 +- hw/tpm/tpm_int.h | 3 +++ hw/tpm/tpm_tis.h | 3 +++ hw/usb/desc.h | 2 ++ hw/usb/quirks.h | 2 ++ hw/vfio/pci.h | 3 +++ hw/xen/xen_pt.h | 2 ++ hw/xenpv/xen_domainbuild.h | 2 ++ hw/xtensa/bootparam.h | 2 ++ include/block/write-threshold.h | 3 +++ include/disas/disas.h | 1 + include/exec/cpu-all.h | 3 +++ include/exec/cpu-defs.h | 3 +++ include/exec/cpu_ldst.h | 2 ++ include/exec/cpu_ldst_template.h | 2 ++ include/exec/cpu_ldst_useronly_template.h | 2 ++ include/exec/cputlb.h | 3 +++ include/exec/exec-all.h | 2 ++ include/exec/gen-icount.h | 2 ++ include/exec/helper-gen.h | 2 ++ include/exec/helper-proto.h | 2 ++ include/exec/helper-tcg.h | 2 ++ include/exec/ioport.h | 2 ++ include/exec/memory-internal.h | 2 ++ include/exec/ram_addr.h | 2 ++ include/exec/softmmu-semi.h | 3 +++ include/exec/tb-hash.h | 2 ++ include/exec/user/abitypes.h | 2 ++ include/exec/user/thunk.h | 3 +++ include/hw/acpi/piix4.h | 2 ++ include/hw/acpi/tco.h | 3 +++ include/hw/arm/allwinner-a10.h | 2 ++ include/hw/arm/bcm2836.h | 2 ++ include/hw/arm/digic.h | 2 ++ include/hw/arm/fsl-imx25.h | 2 ++ include/hw/arm/fsl-imx31.h | 2 ++ include/hw/arm/fsl-imx6.h | 2 ++ include/hw/arm/sharpsl.h | 3 +++ include/hw/arm/xlnx-zynqmp.h | 2 ++ include/hw/block/fdc.h | 1 + include/hw/block/flash.h | 2 ++ include/hw/char/escc.h | 2 ++ include/hw/char/pl011.h | 4 ++++ include/hw/char/xilinx_uartlite.h | 4 ++++ include/hw/cris/etraxfs.h | 2 ++ include/hw/cris/etraxfs_dma.h | 2 ++ include/hw/elf_ops.h | 2 ++ include/hw/empty_slot.h | 2 ++ include/hw/i2c/aspeed_i2c.h | 3 +++ include/hw/i2c/i2c-ddc.h | 2 ++ include/hw/i2c/pm_smbus.h | 2 ++ include/hw/i386/apic_internal.h | 3 +++ include/hw/i386/intel_iommu.h | 6 ++++-- include/hw/i386/ioapic_internal.h | 2 ++ include/hw/input/hid.h | 2 ++ include/hw/intc/allwinner-a10-pic.h | 2 ++ include/hw/irq.h | 2 -- include/hw/isa/i8257.h | 2 ++ include/hw/kvm/clock.h | 2 ++ include/hw/mips/bios.h | 2 ++ include/hw/mips/cpudevs.h | 2 ++ include/hw/misc/mips_cmgcr.h | 3 +++ include/hw/misc/mips_cpc.h | 2 ++ include/hw/misc/mips_itu.h | 2 ++ include/hw/net/allwinner_emac.h | 3 +++ include/hw/nvram/openbios_firmware_abi.h | 2 ++ include/hw/pci-host/apb.h | 1 + include/hw/pci-host/spapr.h | 3 +++ include/hw/pci/pci_bus.h | 2 ++ include/hw/pci/pcie_aer.h | 2 ++ include/hw/ppc/ppc.h | 2 ++ include/hw/ppc/ppc4xx.h | 2 ++ include/hw/ppc/spapr.h | 2 ++ include/hw/ppc/spapr_cpu_core.h | 3 +++ include/hw/ppc/spapr_drc.h | 3 +++ include/hw/ppc/spapr_vio.h | 2 ++ include/hw/ppc/xics.h | 3 +++ include/hw/sparc/grlib.h | 2 ++ include/hw/sparc/sparc32_dma.h | 2 ++ include/hw/ssi/xilinx_spips.h | 2 ++ include/hw/timer/allwinner-a10-pit.h | 2 ++ include/hw/timer/aspeed_timer.h | 3 +++ include/hw/timer/i8254_internal.h | 2 ++ include/hw/timer/m48t59.h | 1 + include/hw/virtio/virtio-access.h | 3 +++ include/hw/virtio/virtio-input.h | 2 ++ include/hw/virtio/virtio-rng.h | 2 ++ include/hw/xen/xen_backend.h | 2 ++ include/hw/xen/xen_common.h | 2 ++ include/libdecnumber/decNumberLocal.h | 2 ++ include/migration/cpu.h | 3 +++ include/monitor/hmp-target.h | 3 +++ include/qemu/compatfd.h | 2 ++ include/qemu/ratelimit.h | 2 ++ include/qemu/thread-win32.h | 2 ++ include/qemu/typedefs.h | 4 +--- include/qemu/xattr.h | 3 +++ include/sysemu/balloon.h | 2 ++ include/sysemu/cpus.h | 2 ++ include/sysemu/dump.h | 2 ++ include/sysemu/iothread.h | 2 ++ include/sysemu/kvm_int.h | 2 ++ include/sysemu/memory_mapping.h | 2 ++ include/sysemu/os-posix.h | 2 ++ include/sysemu/os-win32.h | 2 ++ include/sysemu/seccomp.h | 3 +++ include/sysemu/tpm.h | 3 +++ include/sysemu/xen-mapcache.h | 3 +++ include/trace-tcg.h | 2 ++ include/ui/egl-context.h | 2 ++ include/ui/egl-helpers.h | 2 ++ include/ui/gtk.h | 2 ++ include/ui/input.h | 2 ++ include/ui/pixel_ops.h | 2 ++ include/ui/sdl2.h | 2 ++ include/ui/shader.h | 2 ++ include/ui/spice-display.h | 2 ++ linux-headers/asm-arm/kvm.h | 2 ++ linux-headers/asm-arm/kvm_para.h | 2 ++ linux-headers/asm-arm64/kvm.h | 2 ++ linux-headers/asm-arm64/kvm_para.h | 2 ++ linux-headers/asm-arm64/unistd.h | 2 ++ linux-headers/asm-mips/kvm.h | 2 ++ linux-headers/asm-mips/unistd.h | 3 +++ linux-headers/asm-powerpc/kvm.h | 2 ++ linux-headers/asm-powerpc/kvm_para.h | 2 ++ linux-headers/asm-s390/kvm.h | 2 ++ linux-headers/asm-x86/kvm.h | 2 ++ linux-headers/asm-x86/kvm_para.h | 2 ++ linux-headers/asm-x86/unistd.h | 2 ++ linux-headers/linux/kvm.h | 2 ++ linux-headers/linux/kvm_para.h | 2 ++ linux-headers/linux/userfaultfd.h | 2 ++ linux-headers/linux/vfio.h | 3 +++ linux-headers/linux/vhost.h | 2 ++ linux-user/aarch64/target_cpu.h | 3 +++ linux-user/aarch64/target_signal.h | 2 ++ linux-user/aarch64/target_structs.h | 3 +++ linux-user/aarch64/termbits.h | 2 ++ linux-user/alpha/target_cpu.h | 3 +++ linux-user/alpha/target_signal.h | 2 ++ linux-user/alpha/target_structs.h | 3 +++ linux-user/alpha/target_syscall.h | 2 ++ linux-user/alpha/termbits.h | 2 ++ linux-user/arm/nwfpe/fpa11.h | 2 ++ linux-user/arm/nwfpe/fpopcode.h | 2 ++ linux-user/arm/target_cpu.h | 3 +++ linux-user/arm/target_signal.h | 2 ++ linux-user/arm/target_structs.h | 3 +++ linux-user/arm/target_syscall.h | 2 ++ linux-user/arm/termbits.h | 2 ++ linux-user/cris/target_cpu.h | 3 +++ linux-user/cris/target_signal.h | 2 ++ linux-user/cris/target_structs.h | 3 +++ linux-user/cris/termbits.h | 2 ++ linux-user/flat.h | 2 ++ linux-user/flatload.c | 2 +- linux-user/host/x86_64/hostdep.h | 2 ++ linux-user/i386/target_cpu.h | 2 ++ linux-user/i386/target_signal.h | 2 ++ linux-user/i386/target_structs.h | 3 +++ linux-user/i386/target_syscall.h | 2 ++ linux-user/i386/termbits.h | 2 ++ linux-user/ioctls.h | 2 ++ linux-user/linux_loop.h | 3 +++ linux-user/m68k/target_cpu.h | 2 ++ linux-user/m68k/target_signal.h | 2 ++ linux-user/m68k/target_structs.h | 3 +++ linux-user/m68k/target_syscall.h | 2 ++ linux-user/m68k/termbits.h | 2 ++ linux-user/microblaze/target_cpu.h | 3 +++ linux-user/microblaze/target_signal.h | 2 ++ linux-user/microblaze/target_structs.h | 3 +++ linux-user/microblaze/termbits.h | 2 ++ linux-user/mips/target_cpu.h | 3 +++ linux-user/mips/target_signal.h | 2 ++ linux-user/mips/target_structs.h | 3 +++ linux-user/mips/target_syscall.h | 2 ++ linux-user/mips/termbits.h | 2 ++ linux-user/mips64/syscall_nr.h | 2 ++ linux-user/mips64/target_cpu.h | 3 +++ linux-user/mips64/target_signal.h | 2 ++ linux-user/mips64/target_structs.h | 2 ++ linux-user/mips64/target_syscall.h | 2 ++ linux-user/mips64/termbits.h | 2 ++ linux-user/openrisc/target_cpu.h | 2 ++ linux-user/openrisc/target_signal.h | 2 ++ linux-user/openrisc/target_structs.h | 3 +++ linux-user/openrisc/target_syscall.h | 2 ++ linux-user/openrisc/termbits.h | 2 ++ linux-user/ppc/syscall_nr.h | 3 +++ linux-user/ppc/target_cpu.h | 3 +++ linux-user/ppc/target_signal.h | 2 ++ linux-user/ppc/target_structs.h | 3 +++ linux-user/ppc/target_syscall.h | 2 ++ linux-user/ppc/termbits.h | 2 ++ linux-user/qemu.h | 2 ++ linux-user/s390x/target_cpu.h | 3 +++ linux-user/s390x/target_signal.h | 2 ++ linux-user/s390x/target_structs.h | 3 +++ linux-user/s390x/target_syscall.h | 2 ++ linux-user/s390x/termbits.h | 2 ++ linux-user/sh4/target_cpu.h | 3 +++ linux-user/sh4/target_signal.h | 2 ++ linux-user/sh4/target_structs.h | 3 +++ linux-user/sh4/termbits.h | 2 ++ linux-user/socket.h | 1 + linux-user/sparc/target_cpu.h | 3 +++ linux-user/sparc/target_signal.h | 2 ++ linux-user/sparc/target_structs.h | 3 +++ linux-user/sparc/target_syscall.h | 2 ++ linux-user/sparc/termbits.h | 2 ++ linux-user/sparc64/target_cpu.h | 2 ++ linux-user/sparc64/target_signal.h | 2 ++ linux-user/sparc64/target_structs.h | 3 +++ linux-user/sparc64/target_syscall.h | 2 ++ linux-user/sparc64/termbits.h | 2 ++ linux-user/syscall_defs.h | 2 ++ linux-user/syscall_types.h | 2 ++ linux-user/tilegx/target_cpu.h | 3 +++ linux-user/tilegx/target_signal.h | 2 ++ linux-user/tilegx/target_structs.h | 3 +++ linux-user/tilegx/target_syscall.h | 2 ++ linux-user/uname.h | 2 ++ linux-user/unicore32/target_cpu.h | 3 +++ linux-user/unicore32/target_signal.h | 3 +++ linux-user/unicore32/target_structs.h | 3 +++ linux-user/unicore32/target_syscall.h | 3 +++ linux-user/unicore32/termbits.h | 3 +++ linux-user/x86_64/target_cpu.h | 2 ++ linux-user/x86_64/target_signal.h | 2 ++ linux-user/x86_64/target_structs.h | 3 +++ linux-user/x86_64/target_syscall.h | 2 ++ linux-user/x86_64/termbits.h | 2 ++ monitor.c | 2 +- pc-bios/optionrom/optionrom.h | 2 ++ pc-bios/s390-ccw/bootmap.h | 3 +++ pc-bios/s390-ccw/cio.h | 2 ++ pc-bios/s390-ccw/iplb.h | 2 ++ pc-bios/s390-ccw/s390-ccw.h | 2 ++ pc-bios/s390-ccw/scsi.h | 2 ++ pc-bios/s390-ccw/virtio-scsi.h | 2 ++ pc-bios/s390-ccw/virtio.h | 2 ++ qemu-options-wrapper.h | 1 + qga/guest-agent-core.h | 3 +++ qga/service-win32.h | 3 +++ qga/vss-win32/requester.h | 2 ++ qga/vss-win32/vss-common.h | 2 ++ replay/replay-internal.h | 2 ++ scripts/cocci-macro-file.h | 2 ++ scripts/tracetool/format/tcg_h.py | 2 ++ slirp/bootp.c | 2 +- slirp/bootp.h | 3 +++ slirp/cksum.c | 2 +- slirp/if.c | 2 +- slirp/ip.h | 2 ++ slirp/ip6_icmp.h | 2 ++ slirp/ip_icmp.h | 2 ++ slirp/ip_input.c | 2 +- slirp/ip_output.c | 2 +- slirp/main.h | 3 +++ slirp/mbuf.c | 2 +- slirp/mbuf.h | 2 ++ slirp/misc.c | 5 ++--- slirp/misc.h | 2 ++ slirp/sbuf.c | 4 ++-- slirp/sbuf.h | 2 ++ slirp/socket.c | 2 +- slirp/socket.h | 2 ++ slirp/tcp.h | 2 ++ slirp/tcp_input.c | 2 +- slirp/tcp_output.c | 2 +- slirp/tcp_subr.c | 2 +- slirp/tcp_timer.c | 2 +- slirp/tcp_timer.h | 2 ++ slirp/tcp_var.h | 2 ++ slirp/tcpip.h | 2 ++ slirp/tftp.c | 2 +- slirp/tftp.h | 3 +++ slirp/udp.c | 2 +- slirp/udp.h | 2 ++ softmmu_template.h | 3 +++ target-alpha/cpu.h | 2 ++ target-alpha/helper.h | 2 ++ target-arm/arm-powerctl.c | 4 ++-- target-arm/arm_ldst.h | 2 ++ target-arm/cpu.h | 3 +++ target-arm/helper-a64.h | 3 +++ target-arm/helper.h | 2 ++ target-arm/internals.h | 2 ++ target-arm/kvm_arm.h | 2 ++ target-arm/op_addsub.h | 2 ++ target-arm/psci.c | 8 ++++---- target-arm/translate.h | 2 ++ target-cris/cpu.h | 3 +++ target-cris/helper.h | 2 ++ target-cris/mmu.h | 2 ++ target-i386/cc_helper_template.h | 2 ++ target-i386/cpu-qom.h | 3 +++ target-i386/cpu.h | 3 +++ target-i386/helper.h | 2 ++ target-i386/hyperv.h | 2 ++ target-i386/kvm_i386.h | 2 ++ target-i386/ops_sse.h | 2 ++ target-i386/ops_sse_header.h | 3 +++ target-i386/shift_helper_template.h | 2 ++ target-lm32/cpu.h | 2 ++ target-lm32/helper.h | 2 ++ target-m68k/cpu.h | 3 +++ target-m68k/helper.h | 2 ++ target-microblaze/cpu.h | 3 +++ target-microblaze/helper.h | 2 ++ target-microblaze/mmu.h | 2 ++ target-mips/cpu-qom.h | 3 +++ target-mips/cpu.h | 2 ++ target-mips/helper.h | 2 ++ target-mips/kvm_mips.h | 4 +++- target-mips/mips-defs.h | 2 ++ target-moxie/cpu.h | 3 +++ target-moxie/helper.h | 2 ++ target-moxie/machine.h | 2 ++ target-moxie/mmu.h | 2 ++ target-openrisc/cpu.h | 2 ++ target-openrisc/exception.h | 2 ++ target-openrisc/helper.h | 2 ++ target-ppc/cpu-models.h | 3 +++ target-ppc/cpu-qom.h | 3 +++ target-ppc/cpu.h | 3 +++ target-ppc/helper.h | 2 ++ target-ppc/helper_regs.h | 2 ++ target-ppc/kvm_ppc.h | 2 ++ target-ppc/mmu-hash32.h | 4 ++++ target-ppc/mmu-hash64.h | 2 ++ target-ppc/translate_init.c | 2 +- target-s390x/cpu.h | 5 ++++- target-s390x/helper.h | 2 ++ target-sh4/cpu.h | 3 +++ target-sh4/helper.h | 2 ++ target-sparc/cpu-qom.h | 3 +++ target-sparc/cpu.h | 2 ++ target-sparc/helper.h | 2 ++ target-tilegx/cpu.h | 3 +++ target-tilegx/helper.h | 2 ++ target-tricore/cpu.h | 3 +++ target-tricore/helper.h | 2 ++ target-tricore/tricore-defs.h | 2 ++ target-tricore/tricore-opcodes.h | 2 ++ target-unicore32/cpu.h | 3 +++ target-unicore32/helper.h | 2 ++ target-unicore32/softmmu.c | 2 +- target-xtensa/cpu.h | 2 ++ target-xtensa/helper.h | 2 ++ target-xtensa/overlay_tool.h | 2 ++ tcg/mips/tcg-target.h | 3 +++ tcg/tcg-be-ldst.h | 2 ++ tcg/tcg-be-null.h | 2 ++ tcg/tcg-op.h | 2 ++ tcg/tcg-opc.h | 2 ++ tcg/tcg-runtime.h | 2 ++ tcg/tcg.h | 2 ++ tests/Makefile.include | 27 +++++++++++++++++++++++++-- tests/crypto-tls-x509-helpers.h | 2 ++ tests/multiboot/libc.h | 2 ++ tests/multiboot/multiboot.h | 2 ++ tests/postcopy-test.c | 3 +-- tests/tcg/cris/crisutils.h | 2 ++ tests/tcg/cris/sys.h | 2 ++ tests/tcg/mips/mips64-dsp/io.h | 2 ++ tests/tcg/mips/mips64-dspr2/io.h | 2 ++ tests/tcg/test-i386-muldiv.h | 1 + tests/tcg/test-i386-shift.h | 1 + tests/tcg/test-i386.h | 1 + tests/vhost-user-bridge.c | 2 -- tests/vhost-user-test.c | 2 +- trace/control-internal.h | 2 ++ trace/mem-internal.h | 2 ++ trace/mem.h | 2 ++ trace/simple.h | 2 ++ translate-all.h | 3 +++ ui/curses_keys.h | 2 ++ ui/sdl2-keymap.h | 1 + ui/sdl_keysym.h | 1 + ui/sdl_zoom.h | 2 ++ ui/sdl_zoom_template.h | 2 ++ ui/vgafont.h | 2 ++ ui/vnc-auth-sasl.h | 2 ++ ui/vnc-auth-vencrypt.h | 2 ++ ui/vnc-enc-hextile-template.h | 2 ++ ui/vnc-jobs.h | 2 ++ ui/vnc-ws.h | 2 ++ ui/vnc_keysym.h | 1 + util/mmap-alloc.c | 3 ++- util/oslib-posix.c | 2 +- 480 files changed, 1068 insertions(+), 54 deletions(-) -- 2.5.5