qemu-cr16/include/hw
Pierrick Bouvier b709da5d29 plugins: save value during memory accesses
Different code paths handle memory accesses:
- tcg generated code
- load/store helpers
- atomic helpers

This value is saved in cpu->neg.plugin_mem_value_{high,low}. Values are
written only for accessed word size (upper bits are not set).

Atomic operations are doing read/write at the same time, so we generate
two memory callbacks instead of one, to allow plugins to access distinct
values.

For now, we can have access only up to 128 bits, thus split this in two
64 bits words. When QEMU will support wider operations, we'll be able to
reconsider this.

Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
Signed-off-by: Pierrick Bouvier <pierrick.bouvier@linaro.org>
Message-Id: <20240724194708.1843704-2-pierrick.bouvier@linaro.org>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20240916085400.1046925-5-alex.bennee@linaro.org>
2024-09-19 15:58:01 +01:00
..
acpi hw/acpi/ich9: Add periodic and swsmi timer 2024-09-11 09:46:14 -04:00
adc aspeed/adc: Add AST2700 support 2024-07-21 07:46:38 +02:00
arm hw/arm/virt: Default to two-stage SMMU from virt-9.2 2024-09-05 13:12:36 +01:00
audio
block
char hw/char/escc: convert Sun mouse to use QemuInputHandler 2024-09-13 20:11:13 +02:00
core plugins: save value during memory accesses 2024-09-19 15:58:01 +01:00
cpu
cxl hw/cxl: Support firmware updates 2024-07-21 14:42:58 -04:00
display
dma
firmware hw/smbios: Remove 'uuid_encoded' argument from smbios_set_defaults() 2024-06-19 12:40:49 +02:00
fsi
gpio hw/gpio/aspeed: Add reg_table_count to AspeedGPIOClass 2024-07-02 07:52:43 +02:00
hyperv
i2c hw/i2c/aspeed: Add support for Tx/Rx buffer 64 bit addresses 2024-09-16 17:44:08 +02:00
i386 hw: add compat machines for 9.2 2024-09-05 13:12:36 +01:00
ide
input
intc hw/intc/loongarch_ipi: Add loongarch IPI support 2024-08-06 10:22:52 +02:00
ipack
ipmi
isa
loongarch hw/loongarch/virt: Replace Loongson IPI with LoongArch IPI 2024-08-06 10:22:52 +02:00
m68k
mem hw/mem/memory-device: Remove legacy_align from memory_device_pre_plug() 2024-06-19 12:40:49 +02:00
mips
misc hw/misc/xlnx-versal-trng: Call register_finalize_block 2024-09-05 13:12:36 +01:00
net hw/net:ftgmac100: introduce TX and RX ring base address high registers to support 64 bits 2024-07-09 08:05:44 +02:00
nubus
nvram hm/nvram/xlnx-versal-efuse-ctrl: Call register_finalize_block 2024-09-05 13:12:37 +01:00
openrisc
pci softmmu: Support concurrent bounce buffers 2024-09-09 10:55:39 -04:00
pci-bridge
pci-host hw/pci-host/designware: Declare CPU QOM types using DEFINE_TYPES() macro 2024-09-13 20:10:49 +02:00
ppc mac_dbdma: Remove leftover dma_memory_unmap calls 2024-09-18 09:31:56 +01:00
remote
riscv hw/riscv/virt.c: add address-cells in create_fdt_one_aplic() 2024-06-26 22:32:29 +10:00
rtc hw/i386: move rtc-reset-reinjection command out of hw/rtc 2024-05-10 15:45:15 +02:00
rx
s390x include/hw/s390x: replace assert(false) with g_assert_not_reached() 2024-09-17 10:50:39 +02:00
scsi
sd hw/sd/sdcard: Basis for eMMC support 2024-07-16 20:26:47 +02:00
sensor
sh4 hw/sh4: Remove sh7750_register_io_device() helper 2024-09-13 20:10:49 +02:00
southbridge hw/acpi/ich9: Add periodic and swsmi timer 2024-09-11 09:46:14 -04:00
sparc
ssi hw/ssi: Extend SPI model 2024-07-26 09:21:06 +10:00
timer
tricore
usb
vfio vfio/common: Allow disabling device dirty page tracking 2024-07-23 17:14:53 +02:00
virtio vhost_net: configure all host notifiers in a single MR transaction 2024-09-11 09:46:14 -04:00
watchdog aspeed/wdt: Add AST2700 support 2024-06-16 21:08:54 +02:00
xen hw/xen: pvh-common: Add support for creating PCIe/GPEX 2024-09-04 16:50:43 +02:00
xtensa
boards.h hw/boards: Add hvf_get_physical_address_range to MachineClass 2024-09-13 15:31:46 +01:00
clock.h
elf_ops.h.inc
fw-path-provider.h
hotplug.h
hw.h
irq.h hw: Move declaration of IRQState to header and add init function 2024-09-11 07:20:30 -04:00
loader-fit.h
loader.h loader: remove load_image_gzipped function as its not used anywhere 2024-07-16 20:04:08 +02:00
nmi.h
or-irq.h
pcmcia.h
platform-bus.h
ptimer.h
qdev-clock.h
qdev-core.h hw: Rename DeviceClass::reset field to legacy_reset 2024-09-13 15:31:45 +01:00
qdev-dma.h
qdev-properties-system.h qapi/machine: Rename CpuS390* to S390Cpu*, and drop 'prefix' 2024-09-10 13:22:47 +02:00
qdev-properties.h
register.h
registerfields.h
resettable.h hw/core/resettable: Remove transitional_function machinery 2024-09-13 15:31:46 +01:00
stream.h
sysbus.h
usb.h
vmstate-if.h