]> Git Repo - qemu.git/log
qemu.git
11 years agokvmvapic: Make dependency on sysbus.h explicit
Igor Mammedov [Thu, 25 Apr 2013 14:05:30 +0000 (16:05 +0200)]
kvmvapic: Make dependency on sysbus.h explicit

Allows kvmvapic to compile if sysbus.h is removed from apic_internal.h,
from which it is indirectly included.
sysbus.h will be removed from apic_internal.h after converting
APICs to ICCDevice.

Signed-off-by: Igor Mammedov <[email protected]>
Signed-off-by: Andreas Färber <[email protected]>
11 years agotarget-i386: Replace MSI_SPACE_SIZE with APIC_SPACE_SIZE
Igor Mammedov [Thu, 25 Apr 2013 14:05:29 +0000 (16:05 +0200)]
target-i386: Replace MSI_SPACE_SIZE with APIC_SPACE_SIZE

Put APIC_SPACE_SIZE in a public header so that it can be
reused elsewhere later.

Signed-off-by: Igor Mammedov <[email protected]>
Signed-off-by: Andreas Färber <[email protected]>
11 years agotarget-i386: Do not allow to set apic-id once CPU is realized
Igor Mammedov [Fri, 26 Apr 2013 17:51:52 +0000 (19:51 +0200)]
target-i386: Do not allow to set apic-id once CPU is realized

Signed-off-by: Igor Mammedov <[email protected]>
Reviewed-by: Eduardo Habkost <[email protected]>
Signed-off-by: Andreas Färber <[email protected]>
11 years agotarget-i386: Introduce apic-id CPU property
Igor Mammedov [Thu, 25 Apr 2013 14:05:26 +0000 (16:05 +0200)]
target-i386: Introduce apic-id CPU property

The property is used from board level to set APIC ID for CPUs it
creates. Do so in a new pc_new_cpu() helper, to be reused for hot-plug.

Signed-off-by: Igor Mammedov <[email protected]>
Reviewed-by: Eduardo Habkost <[email protected]>
Signed-off-by: Andreas Färber <[email protected]>
11 years agotarget-i386: Introduce feat2prop() for CPU properties
Igor Mammedov [Fri, 26 Apr 2013 16:04:32 +0000 (18:04 +0200)]
target-i386: Introduce feat2prop() for CPU properties

This helper replaces '_' with '-' in a uniform way.
As a side effect, even custom mappings must use '-' now.

Signed-off-by: Igor Mammedov <[email protected]>
[AF: Split off; operate on NUL-terminated string rather than '=' delimiter]
Signed-off-by: Andreas Färber <[email protected]>
11 years agoacpi_piix4: Add infrastructure to send CPU hot-plug GPE to guest
Igor Mammedov [Thu, 25 Apr 2013 14:05:25 +0000 (16:05 +0200)]
acpi_piix4: Add infrastructure to send CPU hot-plug GPE to guest

* introduce processor status bitmask visible to guest at 0xaf00 addr,
  where ACPI asl code expects it
* set bit corresponding to APIC ID in processor status bitmask on
  receiving CPU hot-plug notification
* trigger CPU hot-plug SCI, to notify guest about CPU hot-plug event

Signed-off-by: Igor Mammedov <[email protected]>
Signed-off-by: Andreas Färber <[email protected]>
11 years agocpu: Add helper cpu_exists(), to check if CPU with specified id exists
Igor Mammedov [Thu, 25 Apr 2013 14:05:24 +0000 (16:05 +0200)]
cpu: Add helper cpu_exists(), to check if CPU with specified id exists

Signed-off-by: Igor Mammedov <[email protected]>
Signed-off-by: Andreas Färber <[email protected]>
11 years agocpus: Use qemu_for_each_cpu() in TCG thread
Igor Mammedov [Tue, 23 Apr 2013 08:29:42 +0000 (10:29 +0200)]
cpus: Use qemu_for_each_cpu() in TCG thread

Replaces an open-coded loop and hides unused CPUArchState.

Signed-off-by: Igor Mammedov <[email protected]>
Signed-off-by: Andreas Färber <[email protected]>
11 years agocpu: Add qemu_for_each_cpu()
Michael S. Tsirkin [Wed, 24 Apr 2013 20:58:04 +0000 (22:58 +0200)]
cpu: Add qemu_for_each_cpu()

Wrapper to avoid open-coded loops and to make CPUState iteration
independent of CPUArchState.

Signed-off-by: Michael S. Tsirkin <[email protected]>
Signed-off-by: Igor Mammedov <[email protected]>
Signed-off-by: Andreas Färber <[email protected]>
11 years agocpu: Introduce get_arch_id() method and override it for X86CPU
Igor Mammedov [Tue, 23 Apr 2013 08:29:41 +0000 (10:29 +0200)]
cpu: Introduce get_arch_id() method and override it for X86CPU

get_arch_id() adds possibility for generic code to get a guest-visible
CPU ID without accessing CPUArchState.
If derived classes don't override it, it will return cpu_index.

Override it on target-i386 in X86CPU to return the APIC ID.

Signed-off-by: Igor Mammedov <[email protected]>
Reviewed-by: Eduardo Habkost <[email protected]>
Reviewed-by: liguang <[email protected]>
Acked-by: Michael S. Tsirkin <[email protected]>
Signed-off-by: Andreas Färber <[email protected]>
11 years agopc: Update rtc_cmos on CPU hot-plug
Igor Mammedov [Tue, 23 Apr 2013 08:29:40 +0000 (10:29 +0200)]
pc: Update rtc_cmos on CPU hot-plug

It provides updated currently available CPUs count to BIOS on reboot.

Signed-off-by: Igor Mammedov <[email protected]>
Signed-off-by: Andreas Färber <[email protected]>
11 years agocpu: Introduce CPU hot-plug notifier
Igor Mammedov [Tue, 23 Apr 2013 08:29:39 +0000 (10:29 +0200)]
cpu: Introduce CPU hot-plug notifier

Hot-add CPU event will be distributed to acpi_piix4 and rtc_cmos.

Signed-off-by: Igor Mammedov <[email protected]>
Signed-off-by: Andreas Färber <[email protected]>
11 years agocpu: Resume CPU from DeviceClass::realize() if hot-plugged
Igor Mammedov [Tue, 23 Apr 2013 08:29:38 +0000 (10:29 +0200)]
cpu: Resume CPU from DeviceClass::realize() if hot-plugged

Signed-off-by: Igor Mammedov <[email protected]>
Signed-off-by: Andreas Färber <[email protected]>
11 years agocpu: Introduce cpu_resume(), for single CPU
Igor Mammedov [Tue, 23 Apr 2013 08:29:37 +0000 (10:29 +0200)]
cpu: Introduce cpu_resume(), for single CPU

Also add a stub for it, to make possible to use it in qom/cpu.c,
which is shared with user emulators.

Signed-off-by: Igor Mammedov <[email protected]>
Signed-off-by: Andreas Färber <[email protected]>
11 years agocpu: Call cpu_synchronize_post_init() from DeviceClass::realize()
Igor Mammedov [Tue, 23 Apr 2013 08:29:36 +0000 (10:29 +0200)]
cpu: Call cpu_synchronize_post_init() from DeviceClass::realize()

If hotplugged, synchronize CPU state to KVM.

Signed-off-by: Igor Mammedov <[email protected]>
Reviewed-by: Eduardo Habkost <[email protected]>
Signed-off-by: Andreas Färber <[email protected]>
11 years agocpu: Make kvm-stub.o available outside softmmu
Igor Mammedov [Tue, 23 Apr 2013 08:29:35 +0000 (10:29 +0200)]
cpu: Make kvm-stub.o available outside softmmu

It will provide stubs for *-user targets once softmmu-specific calls
are attempted from common CPU code.

Signed-off-by: Igor Mammedov <[email protected]>
Reviewed-by: Eduardo Habkost <[email protected]>
Signed-off-by: Andreas Färber <[email protected]>
11 years agovirtio-net: count VIRTIO_NET_F_MAC when calculating config_len
Jason Wang [Thu, 25 Apr 2013 07:26:54 +0000 (15:26 +0800)]
virtio-net: count VIRTIO_NET_F_MAC when calculating config_len

Commit 14f9b664 (hw/virtio-net.c: set config size using host features) tries to
calculate config size based on the host features. But it forgets the
VIRTIO_NET_F_MAC were always set for qemu later. This will lead a zero config
len for virtio-net device when both VIRTIO_NET_F_STATUS and VIRTIO_NET_F_MQ were
disabled form command line. Then qemu will crash when user tries to read the
config of virtio-net.

Fix this by counting VIRTIO_NET_F_MAC and make sure the config at least contains
the mac address.

Cc: Jesse Larrew <[email protected]>
Signed-off-by: Jason Wang <[email protected]>
Reviewed-by: Michael S. Tsirkin <[email protected]>
Acked-by: Michael S. Tsirkin <[email protected]>
Message-id: 1366874814[email protected]
Signed-off-by: Anthony Liguori <[email protected]>
11 years agosysemu: drop register_devices from header
Michael S. Tsirkin [Tue, 30 Apr 2013 09:41:50 +0000 (12:41 +0300)]
sysemu: drop register_devices from header

No user in sight.

Signed-off-by: Michael S. Tsirkin <[email protected]>
Reviewed-by: Juan Quintela <[email protected]>
Message-id: 20130430094149[email protected]
Signed-off-by: Anthony Liguori <[email protected]>
11 years agolibqtest: only call fclose() on open files
Jesse Larrew [Mon, 29 Apr 2013 15:52:52 +0000 (10:52 -0500)]
libqtest: only call fclose() on open files

libqtest.c can segfault when calling fclose() if the pidfile wasn't
opened successfully. This patch fixes the issue.

Signed-off-by: Jesse Larrew <[email protected]>
Reviewed-by: Anthony Liguori <[email protected]>
Message-id: 1367250772[email protected]
Signed-off-by: Anthony Liguori <[email protected]>
11 years agoWire up disabled wait a panicked event on s390
Christian Borntraeger [Fri, 26 Apr 2013 03:24:47 +0000 (11:24 +0800)]
Wire up disabled wait a panicked event on s390

On s390 the disabled wait state indicates a state of attention.
For example Linux uses that state after a panic. Lets
put the system into panicked state.

An alternative implementation would be to state
disabled-wait <address> instead of pause in the action field.
(e.g. z/OS, z/VM and other classic OSes use the address of the
disabled wait to indicate an error code).

Signed-off-by: Christian Borntraeger <[email protected]>
Message-id: 6cf41156322e27e81a727b69f03728dbc225d5bb.1366945969[email protected]
Signed-off-by: Anthony Liguori <[email protected]>
11 years agopvpanic: create pvpanic by default for machine 1.5
Hu Tao [Fri, 26 Apr 2013 03:24:46 +0000 (11:24 +0800)]
pvpanic: create pvpanic by default for machine 1.5

Signed-off-by: Paolo Bonzini <[email protected]>
Signed-off-by: Hu Tao <[email protected]>
Reviewed-by: Markus Armbruster <[email protected]>
Message-id: f840042f0e1205041f8feaf0d39ca639884f3a00.1366945969[email protected]
Signed-off-by: Anthony Liguori <[email protected]>
11 years agopvpanic: add document of pvpanic
Hu Tao [Fri, 26 Apr 2013 03:24:45 +0000 (11:24 +0800)]
pvpanic: add document of pvpanic

Signed-off-by: Hu Tao <[email protected]>
Reviewed-by: Markus Armbruster <[email protected]>
Message-id: a5db4ce406647e8f4663b639eae62d880531df8b.1366945969[email protected]
Signed-off-by: Anthony Liguori <[email protected]>
11 years agopvpanic: pass configurable ioport to seabios
Hu Tao [Fri, 26 Apr 2013 03:24:44 +0000 (11:24 +0800)]
pvpanic: pass configurable ioport to seabios

This lets seabios patch the corresponding SSDT entry.

Also add fw_cfg object to /machine/fw_cfg so we can reference
it elsewhere.

Signed-off-by: Hu Tao <[email protected]>
Reviewed-by: Markus Armbruster <[email protected]>
Message-id: 60c65d95fe2b23b12bea67099126566010a11a1a.1366945969[email protected]
Signed-off-by: Anthony Liguori <[email protected]>
11 years agofw_cfg: add required header files
Hu Tao [Fri, 26 Apr 2013 03:24:43 +0000 (11:24 +0800)]
fw_cfg: add required header files

If fw_cfg.h is included alone, gcc gives error messages like these:

  error: unknown type name ‘uint32_t’
  error: unknown type name ‘size_t’
  error: unknown type name ‘hwaddr’
  ...

Signed-off-by: Hu Tao <[email protected]>
Reviewed-by: Markus Armbruster <[email protected]>
Message-id: d63f8bcdbfbec8135b1b57f9247c513a3e25762c.1366945969[email protected]
Signed-off-by: Anthony Liguori <[email protected]>
11 years agointroduce a new qom device to deal with panicked event
Hu Tao [Fri, 26 Apr 2013 03:24:42 +0000 (11:24 +0800)]
introduce a new qom device to deal with panicked event

pvpanic device is used to send guest panic event from guest to qemu.

When guest panic happens, pvpanic device driver will write a event
number to IO port 0x505(which is the IO port occupied by pvpanic device,
by default). On receiving the event, pvpanic device will pause guest
cpu(s), and send a qmp event QEVENT_GUEST_PANICKED.

Signed-off-by: Wen Congyang <[email protected]>
Signed-off-by: Hu Tao <[email protected]>
Reviewed-by: Markus Armbruster <[email protected]>
Message-id: b66077a40235b3531632a05a6ff373850afc7d2e.1366945969[email protected]
Signed-off-by: Anthony Liguori <[email protected]>
11 years agoadd a new qevent: QEVENT_GUEST_PANICKED
Hu Tao [Fri, 26 Apr 2013 03:24:41 +0000 (11:24 +0800)]
add a new qevent: QEVENT_GUEST_PANICKED

This event will be emited when qemu detects guest panic.

Signed-off-by: Wen Congyang <[email protected]>
Signed-off-by: Hu Tao <[email protected]>
Reviewed-by: Markus Armbruster <[email protected]>
Message-id: cf0bc45ecf9ecd3699bc72dc39f8cbab8ed79d8c.1366945969[email protected]
Signed-off-by: Anthony Liguori <[email protected]>
11 years agoadd a new runstate: RUN_STATE_GUEST_PANICKED
Hu Tao [Fri, 26 Apr 2013 03:24:40 +0000 (11:24 +0800)]
add a new runstate: RUN_STATE_GUEST_PANICKED

The guest will be in this state when it is panicked.

Signed-off-by: Wen Congyang <[email protected]>
Signed-off-by: Hu Tao <[email protected]>
Reviewed-by: Markus Armbruster <[email protected]>
Message-id: 0255f263ffdc2a3716f73e89098b96fd79a235b3.1366945969[email protected]
Signed-off-by: Anthony Liguori <[email protected]>
11 years agoqdev: Report errors collected during device realization
Jan Kiszka [Mon, 29 Apr 2013 12:35:08 +0000 (14:35 +0200)]
qdev: Report errors collected during device realization

Better than just releasing the error object silently.

Signed-off-by: Jan Kiszka <[email protected]>
Reviewed-by: Andreas Färber <[email protected]>
Message-id: 517E68FC.6030400@siemens.com
Signed-off-by: Anthony Liguori <[email protected]>
11 years agorules.mk: Fix build breakage
Dunrong Huang [Mon, 29 Apr 2013 14:52:12 +0000 (22:52 +0800)]
rules.mk: Fix build breakage

The following error occurs when building dtc module:

        CHK version_gen.h
         CC libfdt/fdt.o
cc1: error: dtc: No such file or directory [-Werror]
cc1: all warnings being treated as errors
make[1]: *** [libfdt/fdt.o] Error 1
make: *** [subdir-dtc] Error 2

In rules.mak, "-I$(<D) -I$(@D)" was expanded to "-Idtc -I." when
building submodule dct. Due to the using of "-Wmissing-include-dirs,
a warning would be rarsed. To avoid it, add "-I$(<D) -I$(@D)" to
QEMU_INCLUDES instead of QEMU_CFLAGS so that QEMU_CFLAGS does not
contain the "-Idtc".

Cc: Peter Crosthwaite <[email protected]>
Cc: Blue Swirl <[email protected]>
Cc: Paolo Bonzini <[email protected]>
Signed-off-by: Dunrong Huang <[email protected]>
Reviewed-by: Paolo Bonzini <[email protected]>
Message-id: 1367247132[email protected]
Signed-off-by: Anthony Liguori <[email protected]>
11 years agoQOM: Fail casts for unknown types
Alexander Graf [Tue, 30 Apr 2013 13:02:16 +0000 (15:02 +0200)]
QOM: Fail casts for unknown types

When we try to cast an object to an unknown type, fail the cast. Today
we would simply run into an assert().

This fixes a bug on qemu-system-s390x for me that gets triggered by the
audio code looking for PCI and ISA buses.

Signed-off-by: Alexander Graf <[email protected]>
Reviewed-by: Paolo Bonzini <[email protected]>
Message-id: 1367326936[email protected]
Signed-off-by: Anthony Liguori <[email protected]>
11 years agopc_piix: remove undesired change in pc_init1
Paolo Bonzini [Tue, 30 Apr 2013 14:00:32 +0000 (16:00 +0200)]
pc_piix: remove undesired change in pc_init1

Introduced when applying commit f81222b (audio: look for the ISA and
PCI buses, 2013-04-18).

Signed-off-by: Paolo Bonzini <[email protected]>
Message-id: 1367330432[email protected]
Signed-off-by: Anthony Liguori <[email protected]>
11 years agoaudio: enable PCI audio cards for all PCI-enabled targets
Paolo Bonzini [Thu, 18 Apr 2013 16:44:04 +0000 (18:44 +0200)]
audio: enable PCI audio cards for all PCI-enabled targets

Signed-off-by: Paolo Bonzini <[email protected]>
Message-id: 1366303444[email protected]
Signed-off-by: Anthony Liguori <[email protected]>
11 years agoaudio: look for the ISA and PCI buses
Paolo Bonzini [Thu, 18 Apr 2013 16:44:03 +0000 (18:44 +0200)]
audio: look for the ISA and PCI buses

Signed-off-by: Paolo Bonzini <[email protected]>
Message-id: 1366303444[email protected]
Signed-off-by: Anthony Liguori <[email protected]>
11 years agoqom: do not return root for empty path
Paolo Bonzini [Thu, 18 Apr 2013 16:44:02 +0000 (18:44 +0200)]
qom: do not return root for empty path

An empty path will return the sole object of that type in the
QOM tree.  This is different from "/", which returns the root.

Signed-off-by: Paolo Bonzini <[email protected]>
Message-id: 1366303444[email protected]
Signed-off-by: Anthony Liguori <[email protected]>
11 years agoaudio: replace audio card configuration with default-configs
Paolo Bonzini [Thu, 18 Apr 2013 16:44:01 +0000 (18:44 +0200)]
audio: replace audio card configuration with default-configs

Signed-off-by: Paolo Bonzini <[email protected]>
Message-id: 1366303444[email protected]
Signed-off-by: Anthony Liguori <[email protected]>
11 years agoaudio: remove CONFIG_* symbols
Paolo Bonzini [Thu, 18 Apr 2013 16:44:00 +0000 (18:44 +0200)]
audio: remove CONFIG_* symbols

Signed-off-by: Paolo Bonzini <[email protected]>
Message-id: 1366303444[email protected]
Signed-off-by: Anthony Liguori <[email protected]>
11 years agoaudio: remove HAS_AUDIO
Paolo Bonzini [Thu, 18 Apr 2013 16:43:59 +0000 (18:43 +0200)]
audio: remove HAS_AUDIO

Several targets can have wavcapture/-soundhw support via PCI cards.
HAS_AUDIO is a useless limitation, remove it.

Signed-off-by: Paolo Bonzini <[email protected]>
Message-id: 1366303444[email protected]
Signed-off-by: Anthony Liguori <[email protected]>
11 years agoaudio: remove the need for audio card CONFIG_* symbols
Paolo Bonzini [Thu, 18 Apr 2013 16:43:58 +0000 (18:43 +0200)]
audio: remove the need for audio card CONFIG_* symbols

Signed-off-by: Paolo Bonzini <[email protected]>
Message-id: 1366303444[email protected]
Signed-off-by: Anthony Liguori <[email protected]>
11 years agoadlib: qdev-ify
Paolo Bonzini [Thu, 18 Apr 2013 16:43:57 +0000 (18:43 +0200)]
adlib: qdev-ify

Signed-off-by: Paolo Bonzini <[email protected]>
Message-id: 1366303444[email protected]
Signed-off-by: Anthony Liguori <[email protected]>
11 years agodoc: document the Pseudo-encoding of LED state
Lei Li [Thu, 25 Apr 2013 05:29:12 +0000 (13:29 +0800)]
doc: document the Pseudo-encoding of LED state

Signed-off-by: Lei Li <[email protected]>
Reviewed-by: Anthony Liguori <[email protected]>
Message-id: 1366867752[email protected]
Signed-off-by: Anthony Liguori <[email protected]>
11 years agovnc: Adjust lock state sync logic with VNC_FEATURE_LED_STATE
Lei Li [Thu, 25 Apr 2013 05:29:11 +0000 (13:29 +0800)]
vnc: Adjust lock state sync logic with VNC_FEATURE_LED_STATE

Signed-off-by: Lei Li <[email protected]>
Reviewed-by: Anthony Liguori <[email protected]>
Message-id: 1366867752[email protected]
Signed-off-by: Anthony Liguori <[email protected]>
11 years agovnc: Support for LED state extension
Lei Li [Thu, 25 Apr 2013 05:29:10 +0000 (13:29 +0800)]
vnc: Support for LED state extension

Signed-off-by: Lei Li <[email protected]>
Reviewed-by: Anthony Liguori <[email protected]>
Message-id: 1366867752[email protected]
Signed-off-by: Anthony Liguori <[email protected]>
11 years agovnc: Add SCROLL lock key to kbd_leds
Lei Li [Thu, 25 Apr 2013 05:29:09 +0000 (13:29 +0800)]
vnc: Add SCROLL lock key to kbd_leds

Signed-off-by: Lei Li <[email protected]>
Reviewed-by: Anthony Liguori <[email protected]>
Message-id: 1366867752[email protected]
Signed-off-by: Anthony Liguori <[email protected]>
11 years agolibqos: Convert fw_cfg values to host endianness
Andreas Färber [Sun, 28 Apr 2013 16:45:47 +0000 (18:45 +0200)]
libqos: Convert fw_cfg values to host endianness

The fw_cfg ABI is Little Endian, so byte-swap the generically read
byte array to host endianness.

This unbreaks the fw_cfg tests on ppc.

Signed-off-by: Andreas Färber <[email protected]>
Signed-off-by: Andreas Färber <[email protected]>
Message-id: 1367167547[email protected]
Signed-off-by: Anthony Liguori <[email protected]>
11 years agowdt_ib700: QOM'ify
Andreas Färber [Sat, 27 Apr 2013 20:18:55 +0000 (22:18 +0200)]
wdt_ib700: QOM'ify

Introduce type constant and cast macro to obsolete DO_UPCAST().

Prepares for ISA realizefn.

Signed-off-by: Andreas Färber <[email protected]>
Signed-off-by: Andreas Färber <[email protected]>
Message-id: 1367093935[email protected]
Signed-off-by: Anthony Liguori <[email protected]>
11 years agovmport: QOM'ify
Andreas Färber [Sat, 27 Apr 2013 20:18:54 +0000 (22:18 +0200)]
vmport: QOM'ify

Introduce type constant and cast macro to obsolete DO_UPCAST().
Prepares for ISA realizefn.

Drop reserved underscore from struct name while at it.

Signed-off-by: Andreas Färber <[email protected]>
Signed-off-by: Andreas Färber <[email protected]>
Message-id: 1367093935[email protected]
Signed-off-by: Anthony Liguori <[email protected]>
11 years agovmmouse: QOM'ify
Andreas Färber [Sat, 27 Apr 2013 20:18:53 +0000 (22:18 +0200)]
vmmouse: QOM'ify

Introduce type constant and cast macro to obsolete DO_UPCAST() and
container_of(). Prepares for ISA realizefn.

Remove reserved underscore from struct name while at it.

Signed-off-by: Andreas Färber <[email protected]>
Signed-off-by: Andreas Färber <[email protected]>
Message-id: 1367093935[email protected]
Signed-off-by: Anthony Liguori <[email protected]>
11 years agovga-isa: QOM'ify ISA VGA
Andreas Färber [Sat, 27 Apr 2013 20:18:52 +0000 (22:18 +0200)]
vga-isa: QOM'ify ISA VGA

Introduce type constant and cast macro to obsolete DO_UPCAST() and
container_of(). Prepares for ISA realizefn.

Unify function naming scheme while at it.

Signed-off-by: Andreas Färber <[email protected]>
Signed-off-by: Andreas Färber <[email protected]>
Message-id: 1367093935[email protected]
Signed-off-by: Anthony Liguori <[email protected]>
11 years agosga: QOM'ify
Andreas Färber [Sat, 27 Apr 2013 20:18:51 +0000 (22:18 +0200)]
sga: QOM'ify

Introduce type constant and cast macro.

Prepares for ISA realizefn.

Signed-off-by: Andreas Färber <[email protected]>
Signed-off-by: Andreas Färber <[email protected]>
Message-id: 1367093935[email protected]
Signed-off-by: Anthony Liguori <[email protected]>
11 years agoserial: QOM'ify ISA serial
Andreas Färber [Sat, 27 Apr 2013 20:18:50 +0000 (22:18 +0200)]
serial: QOM'ify ISA serial

Introduce type constant and cast macro to obsolete DO_UPCAST().

Prepares for ISA realizefn.

Signed-off-by: Andreas Färber <[email protected]>
Signed-off-by: Andreas Färber <[email protected]>
Message-id: 1367093935[email protected]
Signed-off-by: Anthony Liguori <[email protected]>
11 years agosb16: QOM'ify
Andreas Färber [Sat, 27 Apr 2013 20:18:49 +0000 (22:18 +0200)]
sb16: QOM'ify

Introduce type constant and cast macro to obsolete DO_UPCAST().

Prepares for ISA realizefn.

Signed-off-by: Andreas Färber <[email protected]>
Signed-off-by: Andreas Färber <[email protected]>
Message-id: 1367093935[email protected]
Signed-off-by: Anthony Liguori <[email protected]>
11 years agopcspk: QOM'ify
Andreas Färber [Sat, 27 Apr 2013 20:18:48 +0000 (22:18 +0200)]
pcspk: QOM'ify

Introduce type constant and cast macro to obsolete DO_UPCAST().

Prepares for ISA realizefn.

Signed-off-by: Andreas Färber <[email protected]>
Signed-off-by: Andreas Färber <[email protected]>
Message-id: 1367093935[email protected]
Signed-off-by: Anthony Liguori <[email protected]>
11 years agopckbd: QOM'ify
Andreas Färber [Sat, 27 Apr 2013 20:18:47 +0000 (22:18 +0200)]
pckbd: QOM'ify

Introduce type constant and cast macro to obsolete DO_UPCAST().

Prepares for ISA realizefn.

Signed-off-by: Andreas Färber <[email protected]>
Signed-off-by: Andreas Färber <[email protected]>
Message-id: 1367093935[email protected]
Signed-off-by: Anthony Liguori <[email protected]>
11 years agopc: QOM'ify port 92
Andreas Färber [Sat, 27 Apr 2013 20:18:46 +0000 (22:18 +0200)]
pc: QOM'ify port 92

Introduce type constant and cast macro to obsolete DO_UPCAST().

Prepares for ISA realizefn.

Signed-off-by: Andreas Färber <[email protected]>
Signed-off-by: Andreas Färber <[email protected]>
Message-id: 1367093935[email protected]
Signed-off-by: Anthony Liguori <[email protected]>
11 years agoparallel: QOM'ify
Andreas Färber [Sat, 27 Apr 2013 20:18:45 +0000 (22:18 +0200)]
parallel: QOM'ify

Introduce type constant and cast macro to obsolete DO_UPCAST().

Prepares for ISA realizefn.

Signed-off-by: Andreas Färber <[email protected]>
Signed-off-by: Andreas Färber <[email protected]>
Message-id: 1367093935[email protected]
Signed-off-by: Anthony Liguori <[email protected]>
11 years agone2000-isa: QOM'ify
Andreas Färber [Sat, 27 Apr 2013 20:18:44 +0000 (22:18 +0200)]
ne2000-isa: QOM'ify

Introduce type constant and cast macro to obsolete DO_UPCAST().

Prepares for ISA realizefn.

Signed-off-by: Andreas Färber <[email protected]>
Signed-off-by: Andreas Färber <[email protected]>
Message-id: 1367093935[email protected]
Signed-off-by: Anthony Liguori <[email protected]>
11 years agomc146818rtc: QOM'ify
Andreas Färber [Sat, 27 Apr 2013 20:18:43 +0000 (22:18 +0200)]
mc146818rtc: QOM'ify

Introduce type constant and cast macro to obsolete DO_UPCAST().

Prepares for ISA realizefn.

Signed-off-by: Andreas Färber <[email protected]>
Reviewed-by: Igor Mammedov <[email protected]>
Signed-off-by: Andreas Färber <[email protected]>
Message-id: 1367093935[email protected]
Signed-off-by: Anthony Liguori <[email protected]>
11 years agom48t59: QOM'ify ISA M48T59 NVRAM
Andreas Färber [Sat, 27 Apr 2013 20:18:42 +0000 (22:18 +0200)]
m48t59: QOM'ify ISA M48T59 NVRAM

Introduce type constant and cast macro to obsolete DO_UPCAST() and
container_of().

Prepares for ISA realizefn.

Signed-off-by: Andreas Färber <[email protected]>
Signed-off-by: Andreas Färber <[email protected]>
Message-id: 1367093935[email protected]
Signed-off-by: Anthony Liguori <[email protected]>
11 years agoide: QOM'ify ISA IDE
Andreas Färber [Sat, 27 Apr 2013 20:18:41 +0000 (22:18 +0200)]
ide: QOM'ify ISA IDE

Introduce type constant and cast macro to obsolete DO_UPCAST().
Add missing braces.

Prepares for ISA realizefn.

Signed-off-by: Andreas Färber <[email protected]>
Signed-off-by: Andreas Färber <[email protected]>
Message-id: 1367093935[email protected]
Signed-off-by: Anthony Liguori <[email protected]>
11 years agoi8259: QOM cleanups
Andreas Färber [Sat, 27 Apr 2013 20:18:40 +0000 (22:18 +0200)]
i8259: QOM cleanups

Eliminate DO_UPCAST() for PICCommonState. Prepares for ISA realizefn.

Also give the i8259_common type registration functions unique names
while at it.

Signed-off-by: Andreas Färber <[email protected]>
Signed-off-by: Andreas Färber <[email protected]>
Message-id: 1367093935[email protected]
Signed-off-by: Anthony Liguori <[email protected]>
11 years agoi82374: QOM'ify
Andreas Färber [Sat, 27 Apr 2013 20:18:39 +0000 (22:18 +0200)]
i82374: QOM'ify

Introduce type constant and cast macro to obsolete DO_UPCAST().

Prepares for ISA realizefn.

Signed-off-by: Andreas Färber <[email protected]>
Signed-off-by: Andreas Färber <[email protected]>
Message-id: 1367093935[email protected]
Signed-off-by: Anthony Liguori <[email protected]>
11 years agofdc: QOM'ify ISA floppy controller
Andreas Färber [Sat, 27 Apr 2013 20:18:38 +0000 (22:18 +0200)]
fdc: QOM'ify ISA floppy controller

Introduce type constant and cast macro to obsolete DO_UPCAST().
Reuse type constant for PC machine compatibility settings.

Prepares for ISA realizefn.

Signed-off-by: Andreas Färber <[email protected]>
Signed-off-by: Andreas Färber <[email protected]>
Message-id: 1367093935[email protected]
Cc: Markus Armbruster <[email protected]>
Signed-off-by: Anthony Liguori <[email protected]>
11 years agocirrus_vga: QOM'ify ISA Cirrus VGA
Andreas Färber [Sat, 27 Apr 2013 20:18:37 +0000 (22:18 +0200)]
cirrus_vga: QOM'ify ISA Cirrus VGA

Introduce type constant and cast macro to obsolete DO_UPCAST().

Prepares for ISA realizefn.

Signed-off-by: Andreas Färber <[email protected]>
Signed-off-by: Andreas Färber <[email protected]>
Message-id: 1367093935[email protected]
Signed-off-by: Anthony Liguori <[email protected]>
11 years agoapplesmc: QOM'ify
Andreas Färber [Sat, 27 Apr 2013 20:18:36 +0000 (22:18 +0200)]
applesmc: QOM'ify

Add a typedef for the state struct and rename from Status to State.
Add type constant and cast macro to obsolete DO_UPCAST().

Prepares for ISA realizefn.

Signed-off-by: Andreas Färber <[email protected]>
Signed-off-by: Andreas Färber <[email protected]>
Message-id: 1367093935[email protected]
Signed-off-by: Anthony Liguori <[email protected]>
11 years agovirtio-net: unbreak the minix guest
Jason Wang [Thu, 25 Apr 2013 07:24:23 +0000 (15:24 +0800)]
virtio-net: unbreak the minix guest

Multiqueue patchset conditionally add control vq only when guest negotiate the
feature. Though the spec is not clear on this but it breaks the minix guest
since it will identify the ctrl vq even if it does not support it. Though this
behavior seems a violation on the spec "If the VIRTIO_NET_F_CTRL_VQ feature bit
is negotiated, identify the control virtqueue.", to keep the backward
compatibility, always add the ctrl vq at end of the queues.

Reported-by: Aurelien Jarno <[email protected]>
Acked-by: Michael S. Tsirkin <[email protected]>
Tested-by: Aurelien Jarno <[email protected]>
Signed-off-by: Jason Wang <[email protected]>
Message-id: 1366874663[email protected]
Cc: Aurelien Jarno <[email protected]>
Signed-off-by: Jason Wang <[email protected]>
Signed-off-by: Anthony Liguori <[email protected]>
11 years agoMerge remote-tracking branch 'bonzini/migration-writev' into staging
Anthony Liguori [Mon, 29 Apr 2013 13:26:47 +0000 (08:26 -0500)]
Merge remote-tracking branch 'bonzini/migration-writev' into staging

# By Paolo Bonzini
# Via Paolo Bonzini
* bonzini/migration-writev:
  win32: add readv/writev emulation
  win32: generate console executable again
  win32: move Makefile dependencies on version-obj-y to rules.mak
  win32: add generic RC rules to rules.mak

Message-id: 1367230284[email protected]
Signed-off-by: Anthony Liguori <[email protected]>
11 years agoMerge remote-tracking branch 'alon/libcacard_ccid.2' into staging
Anthony Liguori [Mon, 29 Apr 2013 13:26:39 +0000 (08:26 -0500)]
Merge remote-tracking branch 'alon/libcacard_ccid.2' into staging

# By Cole Robinson
# Via Alon Levy
* alon/libcacard_ccid.2:
  ccid: Fix crash when backend isn't specified

Message-id: 20130426234357[email protected]
Signed-off-by: Anthony Liguori <[email protected]>
11 years agowin32: add readv/writev emulation
Paolo Bonzini [Sun, 21 Apr 2013 10:01:06 +0000 (12:01 +0200)]
win32: add readv/writev emulation

Commit e9d8fbf (qemu-file: do not use stdio for qemu_fdopen, 2013-03-27)
introduced a usage of writev, which mingw32 does not have.  Even though
qemu_fdopen itself is not used on mingw32, the future-proof solution is
to add an implementation of it.  This is simple and similar to how we
emulate sendmsg/recvmsg in util/iov.c.

Some files include osdep.h without qemu-common.h, so move the definition
of iovec to osdep.h too, and include osdep.h from qemu-common.h
unconditionally (protection against including files when NEED_CPU_H is
defined is not needed since the removal of AREG0).

Signed-off-by: Paolo Bonzini <[email protected]>
11 years agosparc64: use direct interrupt mapping for PCI devices
Artyom Tarasenko [Sat, 27 Apr 2013 05:55:13 +0000 (07:55 +0200)]
sparc64: use direct interrupt mapping for PCI devices

Every PCI Slot in PBM has 4 directly mapped IRQ lines.
Use the IRQ routing schema 0bssnn (Bus, Slot, interrupt Number)
described in Section 19.3.3 of UltraSPARC™-IIi User's Manual.

Please note that this patch requires the OpenBIOS counterpart patch.

Signed-off-by: Artyom Tarasenko <[email protected]>
Signed-off-by: Blue Swirl <[email protected]>
11 years agosparc64: fix loosing interrupts
Artyom Tarasenko [Sat, 27 Apr 2013 05:55:12 +0000 (07:55 +0200)]
sparc64: fix loosing interrupts

- clear interrupts only on writing to the interrupt clear registers
- don't overwrite a currently active interrupt request
- use the correct addresses for the interrupt clear registers
  (section 19.3.3.3 of the UltraSPARC™-IIi User’s Manual)

Signed-off-by: Artyom Tarasenko <[email protected]>
Signed-off-by: Blue Swirl <[email protected]>
11 years agosparc64: allow 64 IRQ lines
Artyom Tarasenko [Sat, 27 Apr 2013 05:55:11 +0000 (07:55 +0200)]
sparc64: allow 64 IRQ lines

According to UltraSPARC™-IIi User’s Manual, PBM has 64 IRQ lines.

Signed-off-by: Artyom Tarasenko <[email protected]>
Signed-off-by: Blue Swirl <[email protected]>
11 years agotcg-arm: Remove long jump from tcg_out_goto_label
Richard Henderson [Tue, 23 Apr 2013 20:07:40 +0000 (13:07 -0700)]
tcg-arm: Remove long jump from tcg_out_goto_label

Branches within a TB will always be within 16MB.

Signed-off-by: Richard Henderson <[email protected]>
11 years agotcg-arm: Convert to CONFIG_QEMU_LDST_OPTIMIZATION
Richard Henderson [Wed, 13 Mar 2013 22:24:33 +0000 (15:24 -0700)]
tcg-arm: Convert to CONFIG_QEMU_LDST_OPTIMIZATION

Move the slow path out of line, as the TODO's mention.
This allows the fast path to be unconditional, which can
speed up the fast path as well, depending on the core.

Signed-off-by: Richard Henderson <[email protected]>
11 years agotcg-arm: Use movi32 + blx for calls on v7
Richard Henderson [Wed, 13 Mar 2013 20:40:43 +0000 (13:40 -0700)]
tcg-arm: Use movi32 + blx for calls on v7

Work better with branch predition when we have movw+movt,
as the size of the code is the same.  Perhaps re-evaluate
when we have a proper constant pool.

Reviewed-by: Aurelien Jarno <[email protected]>
Signed-off-by: Richard Henderson <[email protected]>
11 years agotcg-arm: Delete the 'S' constraint
Richard Henderson [Tue, 23 Apr 2013 15:38:50 +0000 (08:38 -0700)]
tcg-arm: Delete the 'S' constraint

After the previous patch, 's' and 'S' are the same.

Signed-off-by: Richard Henderson <[email protected]>
11 years agotcg-arm: Improve scheduling of tcg_out_tlb_read
Richard Henderson [Wed, 13 Mar 2013 06:18:30 +0000 (23:18 -0700)]
tcg-arm: Improve scheduling of tcg_out_tlb_read

The schedule was fully serial, with no possibility for dual issue.
The old schedule had a minimal issue of 7 cycles; the new schedule
has a minimal issue of 5 cycles.

Signed-off-by: Richard Henderson <[email protected]>
11 years agotcg-arm: Split out tcg_out_tlb_read
Richard Henderson [Wed, 13 Mar 2013 01:18:07 +0000 (18:18 -0700)]
tcg-arm: Split out tcg_out_tlb_read

Share code between qemu_ld and qemu_st to process the tlb.

Reviewed-by: Aurelien Jarno <[email protected]>
Signed-off-by: Richard Henderson <[email protected]>
11 years agotcg-arm: Cleanup most primitive load store subroutines
Richard Henderson [Tue, 12 Mar 2013 22:06:53 +0000 (15:06 -0700)]
tcg-arm: Cleanup most primitive load store subroutines

Use even more primitive helper functions to avoid lots of duplicated code.

Reviewed-by: Aurelien Jarno <[email protected]>
Signed-off-by: Richard Henderson <[email protected]>
11 years agotcg-arm: Cleanup multiply subroutines
Richard Henderson [Tue, 12 Mar 2013 17:34:18 +0000 (10:34 -0700)]
tcg-arm: Cleanup multiply subroutines

Make the code more readable by only having one copy of the magic
numbers, swapping registers as needed prior to that.  Speed the
compiler by not applying the rd == rn avoidance for v6 or later.

Reviewed-by: Aurelien Jarno <[email protected]>
Signed-off-by: Richard Henderson <[email protected]>
11 years agotcg-arm: Use R12 for the tcg temporary
Richard Henderson [Tue, 12 Mar 2013 16:50:25 +0000 (09:50 -0700)]
tcg-arm: Use R12 for the tcg temporary

R12 is call clobbered, while R8 is call saved.  This change
gives tcg one more call saved register for real data.

Reviewed-by: Aurelien Jarno <[email protected]>
Signed-off-by: Richard Henderson <[email protected]>
11 years agotcg-arm: Use TCG_REG_TMP name for the tcg temporary
Richard Henderson [Tue, 12 Mar 2013 16:49:04 +0000 (09:49 -0700)]
tcg-arm: Use TCG_REG_TMP name for the tcg temporary

Don't hard-code R8.

Reviewed-by: Aurelien Jarno <[email protected]>
Signed-off-by: Richard Henderson <[email protected]>
11 years agotcg-arm: Implement division instructions
Richard Henderson [Tue, 12 Mar 2013 05:11:30 +0000 (22:11 -0700)]
tcg-arm: Implement division instructions

An armv7 extension implements division, present on Cortex A15.

Reviewed-by: Aurelien Jarno <[email protected]>
Signed-off-by: Richard Henderson <[email protected]>
11 years agotcg-arm: Implement deposit for armv7
Richard Henderson [Tue, 5 Mar 2013 05:12:30 +0000 (21:12 -0800)]
tcg-arm: Implement deposit for armv7

We have BFI and BFC available for implementing it.

Signed-off-by: Richard Henderson <[email protected]>
11 years agotcg-arm: Improve constant generation
Richard Henderson [Tue, 5 Mar 2013 07:16:24 +0000 (23:16 -0800)]
tcg-arm: Improve constant generation

Try fully rotated arguments to mov and mvn before trying movt
or full decomposition.  Begin decomposition with mvn when it
looks like it'll help.  Examples include

-:        mov   r9, #0x00000fa0
-:        orr   r9, r9, #0x000ee000
-:        orr   r9, r9, #0x0ff00000
-:        orr   r9, r9, #0xf0000000
+:        mvn   r9, #0x0000005f
+:        eor   r9, r9, #0x00011000

Reviewed-by: Aurelien Jarno <[email protected]>
Signed-off-by: Richard Henderson <[email protected]>
11 years agotcg-arm: Handle constant arguments to add2/sub2
Richard Henderson [Tue, 12 Mar 2013 02:51:56 +0000 (19:51 -0700)]
tcg-arm: Handle constant arguments to add2/sub2

We get to re-use the _rIN and _rIK subroutines to handle the various
combinations of add vs sub.  Fold the << 21 into the opcode enum values
so that we can explicitly add TO_CPSR as desired.

Reviewed-by: Aurelien Jarno <[email protected]>
Signed-off-by: Richard Henderson <[email protected]>
11 years agotcg-arm: Use tcg_out_dat_rIN for compares
Richard Henderson [Tue, 12 Mar 2013 01:21:59 +0000 (18:21 -0700)]
tcg-arm: Use tcg_out_dat_rIN for compares

This allows us to emit CMN instructions.

Reviewed-by: Aurelien Jarno <[email protected]>
Signed-off-by: Richard Henderson <[email protected]>
11 years agotcg-arm: Allow constant first argument to sub
Richard Henderson [Tue, 12 Mar 2013 01:04:14 +0000 (18:04 -0700)]
tcg-arm: Allow constant first argument to sub

This allows the generation of RSB instructions.

Reviewed-by: Aurelien Jarno <[email protected]>
Signed-off-by: Richard Henderson <[email protected]>
11 years agotcg-arm: Handle negated constant arguments to and/sub
Richard Henderson [Tue, 5 Mar 2013 06:06:21 +0000 (22:06 -0800)]
tcg-arm: Handle negated constant arguments to and/sub

This greatly improves code generation for addition of small
negative constants.

Reviewed-by: Aurelien Jarno <[email protected]>
Signed-off-by: Richard Henderson <[email protected]>
11 years agotcg-arm: Use bic to implement and with constant
Richard Henderson [Tue, 5 Mar 2013 05:36:45 +0000 (21:36 -0800)]
tcg-arm: Use bic to implement and with constant

This greatly improves the code we can produce for deposit
without armv7 support.

Reviewed-by: Aurelien Jarno <[email protected]>
Signed-off-by: Richard Henderson <[email protected]>
11 years agotcg: Log the contents of the prologue with -d out_asm
Richard Henderson [Sun, 31 Mar 2013 20:15:19 +0000 (13:15 -0700)]
tcg: Log the contents of the prologue with -d out_asm

This makes it easier to verify changes to the code
generating the prologue.

[Aurelien: change the format from %i to %zu]

Reviewed-by: Aurelien Jarno <[email protected]>
Signed-off-by: Richard Henderson <[email protected]>
11 years agoccid: Fix crash when backend isn't specified
Cole Robinson [Sun, 14 Apr 2013 20:06:59 +0000 (16:06 -0400)]
ccid: Fix crash when backend isn't specified

Reproducer:

./x86_64-softmmu/qemu-system-x86_64 -device usb-ccid,id=ccid0 -usb -device ccid-card-emulated -monitor stdio

Signed-off-by: Cole Robinson <[email protected]>
Reviewed-by: Alon Levy <[email protected]>
11 years agotcg-arm: Fix local stack frame
Richard Henderson [Wed, 13 Mar 2013 00:11:40 +0000 (17:11 -0700)]
tcg-arm: Fix local stack frame

We were not allocating TCG_STATIC_CALL_ARGS_SIZE, so this meant that
any helper with more than 4 arguments would clobber the saved regs.
Realizing that we're supposed to have this memory pre-allocated means
we can clean up the tcg_out_arg functions, which were trying to do
more stack allocation.

Allocate stack memory for the TCG temporaries while we're at it.

Signed-off-by: Richard Henderson <[email protected]>
11 years agotcg: fix deposit_i64 op on 32-bit targets
Aurelien Jarno [Sat, 20 Apr 2013 22:42:56 +0000 (00:42 +0200)]
tcg: fix deposit_i64 op on 32-bit targets

On 32-bit TCG targets, when emulating deposit_i64 with a mov_i32 +
deposit_i32, care should be taken to not overwrite the low part of
the second argument before the deposit when it is the same the
destination.

This fixes the shld instruction in qemu-system-x86_64, which in turns
fixes booting "system rescue CD version 2.8.0" on this target.

Reported-by: Michael S. Tsirkin <[email protected]>
Reviewed-by: Richard Henderson <[email protected]>
Signed-off-by: Aurelien Jarno <[email protected]>
11 years agotarget-ppc: slightly optimize lfiwax
Aurelien Jarno [Fri, 26 Apr 2013 22:37:46 +0000 (00:37 +0200)]
target-ppc: slightly optimize lfiwax

Signed-off-by: Aurelien Jarno <[email protected]>
11 years agoMerge branch 'ppc-for-upstream' of git://github.com/agraf/qemu
Aurelien Jarno [Fri, 26 Apr 2013 22:33:23 +0000 (00:33 +0200)]
Merge branch 'ppc-for-upstream' of git://github.com/agraf/qemu

* 'ppc-for-upstream' of git://github.com/agraf/qemu: (30 commits)
  target-ppc: add support for extended mtfsf/mtfsfi forms
  target-ppc: emulate store doubleword pair instructions
  target-ppc: emulate load doubleword pair instructions
  target-ppc: emulate lfiwax instruction
  target-ppc: emulate fcpsgn instruction
  target-ppc: emulate prtyw and prtyd instructions
  target-ppc: emulate cmpb instruction
  target-ppc: add instruction flags for Book I 2.05
  disas: Disassemble all ppc insns for the guest
  target-ppc: optimize fabs, fnabs, fneg
  PPC: Fix dcbz for linux-user on 970
  powerpc: correctly handle fpu exceptions.
  pseries: Generate device paths for VIO devices
  pseries: Convert VIO code to QOM style type safe(ish) casts
  target-ppc: Synchronize VPA state with KVM
  pseries: Fix some small errors in XICS logic
  target-ppc: Add more stubs for POWER7 PMU registers
  pseries: Fixes and enhancements to L1 cache properties
  pseries: Fix incorrect calculation of RMA size in certain configurations
  PPC: Fix compile with profiling enabled
  ...

11 years agowin32: generate console executable again
Paolo Bonzini [Wed, 24 Apr 2013 20:57:59 +0000 (22:57 +0200)]
win32: generate console executable again

The -mwindows option is not anymore in LIBS at this point of the Makefile,
it is only in libs_softmmu.  Check the right variable.

Signed-off-by: Paolo Bonzini <[email protected]>
11 years agowin32: move Makefile dependencies on version-obj-y to rules.mak
Paolo Bonzini [Fri, 26 Apr 2013 22:27:48 +0000 (00:27 +0200)]
win32: move Makefile dependencies on version-obj-y to rules.mak

This makes the test on $(LIBTOOL) work.  Otherwise, LIBTOOL
is /bin/false by the time the test is done.

Fixes Win32 compilation without a working cross-libtool.

Signed-off-by: Paolo Bonzini <[email protected]>
11 years agowin32: add generic RC rules to rules.mak
Paolo Bonzini [Fri, 26 Apr 2013 22:25:31 +0000 (00:25 +0200)]
win32: add generic RC rules to rules.mak

Signed-off-by: Paolo Bonzini <[email protected]>
11 years agotarget-ppc: add support for extended mtfsf/mtfsfi forms
Aurelien Jarno [Sat, 20 Apr 2013 08:56:22 +0000 (08:56 +0000)]
target-ppc: add support for extended mtfsf/mtfsfi forms

Power ISA 2.05 adds support for extended mtfsf/mtfsfi form, with a new
W field to select the upper part of the FPCSR register.

For that the helper is changed to handle 64-bit input values and mask with
up to 16 bits. The mtfsf/mtfsfi instructions do not have the W bit
marked as invalid anymore. Instead this is checked in the helper, which
therefore needs to access to the insns/insns_flags2. They are added in
the DisasContext struct. Finally change all accesses to the opcode fields
through extract helpers, prefixed with FP for consistency.

Signed-off-by: Aurelien Jarno <[email protected]>
Signed-off-by: Alexander Graf <[email protected]>
11 years agotarget-ppc: emulate store doubleword pair instructions
Aurelien Jarno [Sat, 20 Apr 2013 08:56:21 +0000 (08:56 +0000)]
target-ppc: emulate store doubleword pair instructions

Needed for Power ISA version 2.05 compliance. The check for odd register
pairs is done using the invalid bits.

Signed-off-by: Aurelien Jarno <[email protected]>
Signed-off-by: Alexander Graf <[email protected]>
This page took 0.079735 seconds and 4 git commands to generate.