History log of /openbmc/qemu/target/riscv/ (Results 476 – 500 of 1666)
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
dc7b599317-May-2023 Weiwei Li <liweiwei@iscas.ac.cn>

target/riscv: Update pmp_get_tlb_size()

PMP entries before (including) the matched PMP entry may only cover partial
of the TLB page, and this may split the page into regions with different
permissio

target/riscv: Update pmp_get_tlb_size()

PMP entries before (including) the matched PMP entry may only cover partial
of the TLB page, and this may split the page into regions with different
permissions. Such as for PMP0 (0x80000008~0x8000000F, R) and PMP1 (0x80000000~
0x80000FFF, RWX), write access to 0x80000000 will match PMP1. However we cannot
cache the translation result in the TLB since this will make the write access
to 0x80000008 bypass the check of PMP0. So we should check all of them instead
of the matched PMP entry in pmp_get_tlb_size() and set the tlb_size to 1 in
this case.
Set tlb_size to TARGET_PAGE_SIZE if PMP is not support or there is no PMP rules.

Signed-off-by: Weiwei Li <liweiwei@iscas.ac.cn>
Signed-off-by: Junqiang Wang <wangjunqiang@iscas.ac.cn>
Reviewed-by: LIU Zhiwei <zhiwei_liu@linux.alibaba.com>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Message-Id: <20230517091519.34439-2-liweiwei@iscas.ac.cn>
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>

show more ...

faf3b5d817-May-2023 Daniel Henrique Barboza <dbarboza@ventanamicro.com>

target/riscv: rework write_misa()

write_misa() must use as much common logic as possible. We want to open
code just the bits that are exclusive to the CSR write operation and TCG
internals.

Our val

target/riscv: rework write_misa()

write_misa() must use as much common logic as possible. We want to open
code just the bits that are exclusive to the CSR write operation and TCG
internals.

Our validation is done with riscv_cpu_validate_set_extensions(), but we
need a small tweak first. When enabling RVG we're doing:

env->misa_ext |= RVI | RVM | RVA | RVF | RVD;
env->misa_ext_mask = env->misa_ext;

This works fine for realize() time but this can potentially overwrite
env->misa_ext_mask if we reutilize the function for write_misa().

Instead of doing misa_ext_mask = misa_ext, sum up the RVG extensions in
misa_ext_mask as well. This won't change realize() time behavior
(misa_ext_mask will be == misa_ext) and will ensure that write_misa()
won't change misa_ext_mask by accident.

After that, rewrite write_misa() to work as follows:

- mask the write using misa_ext_mask to avoid enabling unsupported
extensions;

- suppress RVC if the next insn isn't aligned;

- disable RVG if any of RVG dependencies are being disabled by the user;

- assign env->misa_ext and run riscv_cpu_validate_set_extensions(). On
error, rollback env->misa_ext to its original value, logging a
GUEST_ERROR to inform the user about the failed write;

- handle RVF and MSTATUS_FS and continue as usual.

Let's keep write_misa() as experimental for now until this logic gains
enough mileage.

Signed-off-by: Daniel Henrique Barboza <dbarboza@ventanamicro.com>
Reviewed-by: Weiwei Li <liweiwei@iscas.ac.cn>
Signed-off-by: Daniel Henrique Barboza <dbarboza@ventanamicro.com>
Message-Id: <20230517135714.211809-12-dbarboza@ventanamicro.com>
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>

show more ...

7f0bdfb517-May-2023 Daniel Henrique Barboza <dbarboza@ventanamicro.com>

target/riscv/cpu.c: remove cfg setup from riscv_cpu_init()

We have 4 config settings being done in riscv_cpu_init(): ext_ifencei,
ext_icsr, mmu and pmp. This is also the constructor of the "riscv-cp

target/riscv/cpu.c: remove cfg setup from riscv_cpu_init()

We have 4 config settings being done in riscv_cpu_init(): ext_ifencei,
ext_icsr, mmu and pmp. This is also the constructor of the "riscv-cpu"
device, which happens to be the parent device of every RISC-V cpu.

The result is that these 4 configs are being set every time, and every
other CPU should always account for them. CPUs such as sifive_e need to
disable settings that aren't enabled simply because the parent class
happens to be enabling it.

Moving all configurations from the parent class to each CPU will
centralize the config of each CPU into its own init(), which is clearer
than having to account to whatever happens to be set in the parent
device. These settings are also being set in register_cpu_props() when
no 'misa_ext' is set, so for these CPUs we don't need changes. Named
CPUs will receive all cfgs that the parent were setting into their
init().

Signed-off-by: Daniel Henrique Barboza <dbarboza@ventanamicro.com>
Reviewed-by: LIU Zhiwei <zhiwei_liu@linux.alibaba.com>
Reviewed-by: Weiwei Li <liweiwei@iscas.ac.cn>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Message-Id: <20230517135714.211809-11-dbarboza@ventanamicro.com>
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>

show more ...

e2fa85f417-May-2023 Daniel Henrique Barboza <dbarboza@ventanamicro.com>

target/riscv/cpu.c: validate extensions before riscv_timer_init()

There is no need to init timers if we're not even sure that our
extensions are valid. Execute riscv_cpu_validate_set_extensions() be

target/riscv/cpu.c: validate extensions before riscv_timer_init()

There is no need to init timers if we're not even sure that our
extensions are valid. Execute riscv_cpu_validate_set_extensions() before
riscv_timer_init().

Signed-off-by: Daniel Henrique Barboza <dbarboza@ventanamicro.com>
Reviewed-by: LIU Zhiwei <zhiwei_liu@linux.alibaba.com>
Reviewed-by: Weiwei Li <liweiwei@iscas.ac.cn>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Message-Id: <20230517135714.211809-10-dbarboza@ventanamicro.com>
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>

show more ...

f566406417-May-2023 Daniel Henrique Barboza <dbarboza@ventanamicro.com>

target/riscv/cpu.c: add riscv_cpu_validate_misa_mxl()

Let's remove more code that is open coded in riscv_cpu_realize() and put
it into a helper. Let's also add an error message instead of just
asser

target/riscv/cpu.c: add riscv_cpu_validate_misa_mxl()

Let's remove more code that is open coded in riscv_cpu_realize() and put
it into a helper. Let's also add an error message instead of just
asserting out if env->misa_mxl_max != env->misa_mlx.

Signed-off-by: Daniel Henrique Barboza <dbarboza@ventanamicro.com>
Reviewed-by: LIU Zhiwei <zhiwei_liu@linux.alibaba.com>
Reviewed-by: Weiwei Li <liweiwei@iscas.ac.cn>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Message-Id: <20230517135714.211809-9-dbarboza@ventanamicro.com>
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>

show more ...

bd30559517-May-2023 Daniel Henrique Barboza <dbarboza@ventanamicro.com>

target/riscv/cpu.c: add priv_spec validate/disable_exts helpers

We're doing env->priv_spec validation and assignment at the start of
riscv_cpu_realize(), which is fine, but then we're doing a force

target/riscv/cpu.c: add priv_spec validate/disable_exts helpers

We're doing env->priv_spec validation and assignment at the start of
riscv_cpu_realize(), which is fine, but then we're doing a force disable
on extensions that aren't compatible with the priv version.

This second step is being done too early. The disabled extensions might be
re-enabled again in riscv_cpu_validate_set_extensions() by accident. A
better place to put this code is at the end of
riscv_cpu_validate_set_extensions() after all the validations are
completed.

Add a new helper, riscv_cpu_disable_priv_spec_isa_exts(), to disable the
extesions after the validation is done. While we're at it, create a
riscv_cpu_validate_priv_spec() helper to host all env->priv_spec related
validation to unclog riscv_cpu_realize a bit.

Signed-off-by: Daniel Henrique Barboza <dbarboza@ventanamicro.com>
Reviewed-by: LIU Zhiwei <zhiwei_liu@linux.alibaba.com>
Reviewed-by: Weiwei Li <liweiwei@iscas.ac.cn>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Message-Id: <20230517135714.211809-8-dbarboza@ventanamicro.com>
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>

show more ...

d33e39f917-May-2023 Weiwei Li <liweiwei@iscas.ac.cn>

target/riscv: Update check for Zca/Zcf/Zcd

Even though Zca/Zcf/Zcd can be included by C/F/D, however, their priv
version is higher than the priv version of C/F/D. So if we use check
for them instead

target/riscv: Update check for Zca/Zcf/Zcd

Even though Zca/Zcf/Zcd can be included by C/F/D, however, their priv
version is higher than the priv version of C/F/D. So if we use check
for them instead of check for C/F/D totally, it will trigger new
problem when we try to disable the extensions based on the configured
priv version.

Signed-off-by: Weiwei Li <liweiwei@iscas.ac.cn>
Signed-off-by: Junqiang Wang <wangjunqiang@iscas.ac.cn>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Message-Id: <20230517135714.211809-7-dbarboza@ventanamicro.com>
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>

show more ...

61a33ea917-May-2023 Weiwei Li <liweiwei@iscas.ac.cn>

target/riscv: Mask the implicitly enabled extensions in isa_string based on priv version

Using implicitly enabled extensions such as Zca/Zcf/Zcd instead of their
super extensions can simplify the ex

target/riscv: Mask the implicitly enabled extensions in isa_string based on priv version

Using implicitly enabled extensions such as Zca/Zcf/Zcd instead of their
super extensions can simplify the extension related check. However, they
may have higher priv version than their super extensions. So we should mask
them in the isa_string based on priv version to make them invisible to user
if the specified priv version is lower than their minimal priv version.

Signed-off-by: Weiwei Li <liweiwei@iscas.ac.cn>
Signed-off-by: Junqiang Wang <wangjunqiang@iscas.ac.cn>
Reviewed-by: Daniel Henrique Barboza <dbarboza@ventanamicro.com>
Acked-by: Alistair Francis <alistair.francis@wdc.com>
Message-Id: <20230517135714.211809-6-dbarboza@ventanamicro.com>
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>

show more ...

b9a2b98e17-May-2023 Daniel Henrique Barboza <dbarboza@ventanamicro.com>

target/riscv: add PRIV_VERSION_LATEST

All these generic CPUs are using the latest priv available, at this
moment PRIV_VERSION_1_12_0:

- riscv_any_cpu_init()
- rv32_base_cpu_init()
- rv64_base_cpu_i

target/riscv: add PRIV_VERSION_LATEST

All these generic CPUs are using the latest priv available, at this
moment PRIV_VERSION_1_12_0:

- riscv_any_cpu_init()
- rv32_base_cpu_init()
- rv64_base_cpu_init()
- rv128_base_cpu_init()

Create a new PRIV_VERSION_LATEST enum and use it in those cases. I'll
make it easier to update everything at once when a new priv version is
available.

Signed-off-by: Daniel Henrique Barboza <dbarboza@ventanamicro.com>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Reviewed-by: LIU Zhiwei <zhiwei_liu@linux.alibaba.com>
Reviewed-by: Weiwei Li <liweiwei@iscas.ac.cn>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Message-Id: <20230517135714.211809-5-dbarboza@ventanamicro.com>
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>

show more ...

8c6eeb5017-May-2023 Daniel Henrique Barboza <dbarboza@ventanamicro.com>

target/riscv/cpu.c: remove set_priv_version()

The setter is doing nothing special. Just set env->priv_ver directly.

Signed-off-by: Daniel Henrique Barboza <dbarboza@ventanamicro.com>
Reviewed-by: L

target/riscv/cpu.c: remove set_priv_version()

The setter is doing nothing special. Just set env->priv_ver directly.

Signed-off-by: Daniel Henrique Barboza <dbarboza@ventanamicro.com>
Reviewed-by: LIU Zhiwei <zhiwei_liu@linux.alibaba.com>
Reviewed-by: Weiwei Li <liweiwei@iscas.ac.cn>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Message-Id: <20230517135714.211809-4-dbarboza@ventanamicro.com>
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>

show more ...

2238c9d117-May-2023 Daniel Henrique Barboza <dbarboza@ventanamicro.com>

target/riscv/cpu.c: remove set_vext_version()

This setter is doing nothing else but setting env->vext_ver. Assign the
value directly.

Signed-off-by: Daniel Henrique Barboza <dbarboza@ventanamicro.c

target/riscv/cpu.c: remove set_vext_version()

This setter is doing nothing else but setting env->vext_ver. Assign the
value directly.

Signed-off-by: Daniel Henrique Barboza <dbarboza@ventanamicro.com>
Reviewed-by: LIU Zhiwei <zhiwei_liu@linux.alibaba.com>
Reviewed-by: Weiwei Li <liweiwei@iscas.ac.cn>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Message-Id: <20230517135714.211809-3-dbarboza@ventanamicro.com>
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>

show more ...

d63be18417-May-2023 Daniel Henrique Barboza <dbarboza@ventanamicro.com>

target/riscv/cpu.c: add riscv_cpu_validate_v()

The RVV verification will error out if fails and it's being done at the
end of riscv_cpu_validate_set_extensions(), after we've already set some
extens

target/riscv/cpu.c: add riscv_cpu_validate_v()

The RVV verification will error out if fails and it's being done at the
end of riscv_cpu_validate_set_extensions(), after we've already set some
extensions that are dependent on RVV. Let's put it in its own function
and do it earlier.

Signed-off-by: Daniel Henrique Barboza <dbarboza@ventanamicro.com>
Reviewed-by: LIU Zhiwei <zhiwei_liu@linux.alibaba.com>
Reviewed-by: Weiwei Li <liweiwei@iscas.ac.cn>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Message-Id: <20230517135714.211809-2-dbarboza@ventanamicro.com>
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>

show more ...

6672e29d09-May-2023 Weiwei Li <liweiwei@iscas.ac.cn>

target/riscv: Move zc* out of the experimental properties

Zc* extensions (version 1.0) are ratified.

Signed-off-by: Weiwei Li <liweiwei@iscas.ac.cn>
Signed-off-by: Junqiang Wang <wangjunqiang@iscas

target/riscv: Move zc* out of the experimental properties

Zc* extensions (version 1.0) are ratified.

Signed-off-by: Weiwei Li <liweiwei@iscas.ac.cn>
Signed-off-by: Junqiang Wang <wangjunqiang@iscas.ac.cn>
Reviewed-by: Daniel Henrique Barboza <dbarboza@ventanamicro.com>
Reviewed-by: LIU Zhiwei <zhiwei_liu@linux.alibaba.com>
Message-Id: <20230510030040.20528-1-liweiwei@iscas.ac.cn>
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>

show more ...

bc0ec52e27-Apr-2023 Daniel Henrique Barboza <dbarboza@ventanamicro.com>

target/riscv/vector_helper.c: skip set tail when vta is zero

The function is a no-op if 'vta' is zero but we're still doing a lot of
stuff in this function regardless. vext_set_elems_1s() will ignor

target/riscv/vector_helper.c: skip set tail when vta is zero

The function is a no-op if 'vta' is zero but we're still doing a lot of
stuff in this function regardless. vext_set_elems_1s() will ignore every
single time (since vta is zero) and we just wasted time.

Skip it altogether in this case. Aside from the code simplification
there's a noticeable emulation performance gain by doing it. For a
regular C binary that does a vectors operation like this:

=======
#define SZ 10000000

int main ()
{
int *a = malloc (SZ * sizeof (int));
int *b = malloc (SZ * sizeof (int));
int *c = malloc (SZ * sizeof (int));

for (int i = 0; i < SZ; i++)
c[i] = a[i] + b[i];
return c[SZ - 1];
}
=======

Emulating it with qemu-riscv64 and RVV takes ~0.3 sec:

$ time ~/work/qemu/build/qemu-riscv64 \
-cpu rv64,debug=false,vext_spec=v1.0,v=true,vlen=128 ./foo.out

real 0m0.303s
user 0m0.281s
sys 0m0.023s

With this skip we take ~0.275 sec:

$ time ~/work/qemu/build/qemu-riscv64 \
-cpu rv64,debug=false,vext_spec=v1.0,v=true,vlen=128 ./foo.out

real 0m0.274s
user 0m0.252s
sys 0m0.019s

This performance gain adds up fast when executing heavy benchmarks like
SPEC.

Signed-off-by: Daniel Henrique Barboza <dbarboza@ventanamicro.com>
Acked-by: Alistair Francis <alistair.francis@wdc.com>
Reviewed-by: Palmer Dabbelt <palmer@rivosinc.com>
Reviewed-by: Weiwei Li <liweiwei@iscas.ac.cn>
Message-Id: <20230427205708.246679-2-dbarboza@ventanamicro.com>
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>

show more ...


/openbmc/qemu/.gitignore
/openbmc/qemu/.gitlab-ci.d/buildtest-template.yml
/openbmc/qemu/.gitlab-ci.d/buildtest.yml
/openbmc/qemu/.gitlab-ci.d/container-template.yml
/openbmc/qemu/.gitlab-ci.d/crossbuilds.yml
/openbmc/qemu/.gitmodules
/openbmc/qemu/MAINTAINERS
/openbmc/qemu/Makefile
/openbmc/qemu/accel/hvf/hvf-accel-ops.c
/openbmc/qemu/accel/hvf/hvf-all.c
/openbmc/qemu/accel/tcg/cpu-exec.c
/openbmc/qemu/accel/tcg/ldst_atomicity.c.inc
/openbmc/qemu/accel/tcg/perf.c
/openbmc/qemu/accel/tcg/plugin-gen.c
/openbmc/qemu/accel/tcg/tcg-accel-ops-mttcg.c
/openbmc/qemu/accel/tcg/tcg-accel-ops-rr.c
/openbmc/qemu/accel/tcg/translator.c
/openbmc/qemu/block.c
/openbmc/qemu/block/nbd.c
/openbmc/qemu/chardev/char-pty.c
/openbmc/qemu/configure
/openbmc/qemu/docs/devel/acpi-bits.rst
/openbmc/qemu/docs/devel/atomics.rst
/openbmc/qemu/docs/devel/testing.rst
/openbmc/qemu/docs/system/arm/bananapi_m2u.rst
/openbmc/qemu/docs/system/arm/emulation.rst
/openbmc/qemu/docs/system/arm/xlnx-versal-virt.rst
/openbmc/qemu/docs/system/devices/vhost-user.rst
/openbmc/qemu/docs/system/multi-process.rst
/openbmc/qemu/docs/system/target-arm.rst
/openbmc/qemu/fsdev/virtfs-proxy-helper.c
/openbmc/qemu/hw/9pfs/9p-util.h
/openbmc/qemu/hw/arm/Kconfig
/openbmc/qemu/hw/arm/allwinner-r40.c
/openbmc/qemu/hw/arm/bananapi_m2u.c
/openbmc/qemu/hw/arm/meson.build
/openbmc/qemu/hw/arm/musicpal.c
/openbmc/qemu/hw/arm/xlnx-versal-virt.c
/openbmc/qemu/hw/arm/xlnx-versal.c
/openbmc/qemu/hw/core/cpu-common.c
/openbmc/qemu/hw/display/vhost-user-gpu.c
/openbmc/qemu/hw/i386/kvm/xen_evtchn.c
/openbmc/qemu/hw/i386/kvm/xen_evtchn.h
/openbmc/qemu/hw/i386/kvm/xen_xenstore.c
/openbmc/qemu/hw/i386/microvm.c
/openbmc/qemu/hw/i386/pc.c
/openbmc/qemu/hw/i386/pc_piix.c
/openbmc/qemu/hw/i386/xen/xen-hvm.c
/openbmc/qemu/hw/intc/loongarch_extioi.c
/openbmc/qemu/hw/intc/pnv_xive2.c
/openbmc/qemu/hw/intc/pnv_xive2_regs.h
/openbmc/qemu/hw/intc/xive.c
/openbmc/qemu/hw/isa/piix3.c
/openbmc/qemu/hw/m68k/q800.c
/openbmc/qemu/hw/mips/malta.c
/openbmc/qemu/hw/misc/Kconfig
/openbmc/qemu/hw/misc/allwinner-r40-ccu.c
/openbmc/qemu/hw/misc/allwinner-r40-dramc.c
/openbmc/qemu/hw/misc/allwinner-sramc.c
/openbmc/qemu/hw/misc/axp2xx.c
/openbmc/qemu/hw/misc/meson.build
/openbmc/qemu/hw/misc/trace-events
/openbmc/qemu/hw/net/can/meson.build
/openbmc/qemu/hw/net/can/trace-events
/openbmc/qemu/hw/net/can/xlnx-versal-canfd.c
/openbmc/qemu/hw/pci-host/bonito.c
/openbmc/qemu/hw/pci/pci.c
/openbmc/qemu/hw/ppc/Kconfig
/openbmc/qemu/hw/ppc/pnv_lpc.c
/openbmc/qemu/hw/ppc/pnv_occ.c
/openbmc/qemu/hw/ppc/pnv_sbe.c
/openbmc/qemu/hw/ppc/ppc.c
/openbmc/qemu/hw/remote/trace-events
/openbmc/qemu/hw/remote/vfio-user-obj.c
/openbmc/qemu/hw/riscv/virt.c
/openbmc/qemu/hw/rx/rx62n.c
/openbmc/qemu/hw/scsi/esp-pci.c
/openbmc/qemu/hw/sd/allwinner-sdhost.c
/openbmc/qemu/hw/sparc/sun4m.c
/openbmc/qemu/hw/usb/hcd-ehci-pci.c
/openbmc/qemu/hw/virtio/virtio-mem-pci.c
/openbmc/qemu/hw/virtio/virtio-pmem-pci.c
/openbmc/qemu/hw/virtio/virtio-qmp.c
/openbmc/qemu/hw/xen/xen-bus.c
/openbmc/qemu/hw/xen/xen-operations.c
/openbmc/qemu/include/exec/helper-head.h
/openbmc/qemu/include/exec/plugin-gen.h
/openbmc/qemu/include/exec/poison.h
/openbmc/qemu/include/exec/translator.h
/openbmc/qemu/include/hw/arm/allwinner-r40.h
/openbmc/qemu/include/hw/arm/xlnx-versal.h
/openbmc/qemu/include/hw/misc/allwinner-r40-ccu.h
/openbmc/qemu/include/hw/misc/allwinner-r40-dramc.h
/openbmc/qemu/include/hw/misc/allwinner-sramc.h
/openbmc/qemu/include/hw/net/xlnx-versal-canfd.h
/openbmc/qemu/include/hw/ppc/openpic.h
/openbmc/qemu/include/hw/ppc/xive_regs.h
/openbmc/qemu/include/hw/sd/allwinner-sdhost.h
/openbmc/qemu/include/hw/southbridge/piix.h
/openbmc/qemu/include/hw/xen/xen.h
/openbmc/qemu/include/hw/xen/xen_native.h
/openbmc/qemu/include/qemu/atomic.h
/openbmc/qemu/include/sysemu/hvf.h
/openbmc/qemu/include/sysemu/hvf_int.h
/openbmc/qemu/include/tcg/tcg.h
/openbmc/qemu/include/ui/clipboard.h
/openbmc/qemu/linux-user/elfload.c
/openbmc/qemu/linux-user/loader.h
/openbmc/qemu/linux-user/s390x/cpu_loop.c
/openbmc/qemu/linux-user/syscall.c
/openbmc/qemu/meson.build
/openbmc/qemu/migration/fd.c
/openbmc/qemu/migration/multifd.c
/openbmc/qemu/migration/yank_functions.c
/openbmc/qemu/monitor/qmp.c
/openbmc/qemu/nbd/client-connection.c
/openbmc/qemu/nbd/server.c
/openbmc/qemu/pc-bios/keymaps/meson.build
/openbmc/qemu/pc-bios/s390-ccw/Makefile
/openbmc/qemu/python/scripts/mkvenv.py
/openbmc/qemu/qapi/cryptodev.json
/openbmc/qemu/qga/qapi-schema.json
/openbmc/qemu/scripts/archive-source.sh
/openbmc/qemu/scripts/ci/org.centos/stream/8/x86_64/configure
/openbmc/qemu/scripts/ci/org.centos/stream/8/x86_64/test-avocado
/openbmc/qemu/scripts/device-crash-test
/openbmc/qemu/scripts/git-submodule.sh
/openbmc/qemu/scripts/make-config-poison.sh
/openbmc/qemu/scripts/make-release
/openbmc/qemu/scripts/qom-cast-macro-clean-cocci-gen.py
/openbmc/qemu/scripts/xen-detect.c
/openbmc/qemu/scsi/qemu-pr-helper.c
/openbmc/qemu/softmmu/cpus.c
/openbmc/qemu/softmmu/physmem.c
/openbmc/qemu/softmmu/qdev-monitor.c
/openbmc/qemu/stubs/xen-hw-stub.c
/openbmc/qemu/subprojects/.gitignore
/openbmc/qemu/subprojects/berkeley-softfloat-3.wrap
/openbmc/qemu/subprojects/berkeley-testfloat-3.wrap
/openbmc/qemu/subprojects/dtc.wrap
/openbmc/qemu/subprojects/keycodemapdb.wrap
/openbmc/qemu/subprojects/libvfio-user.wrap
/openbmc/qemu/subprojects/packagefiles/berkeley-softfloat-3/meson.build
/openbmc/qemu/subprojects/packagefiles/berkeley-softfloat-3/meson_options.txt
/openbmc/qemu/subprojects/packagefiles/berkeley-testfloat-3/meson.build
/openbmc/qemu/subprojects/packagefiles/berkeley-testfloat-3/meson_options.txt
/openbmc/qemu/target/arm/cpu.c
/openbmc/qemu/target/arm/cpu.h
/openbmc/qemu/target/arm/debug_helper.c
/openbmc/qemu/target/arm/helper.c
/openbmc/qemu/target/arm/hvf/hvf.c
/openbmc/qemu/target/arm/hvf_arm.h
/openbmc/qemu/target/arm/hyp_gdbstub.c
/openbmc/qemu/target/arm/internals.h
/openbmc/qemu/target/arm/kvm64.c
/openbmc/qemu/target/arm/meson.build
/openbmc/qemu/target/arm/ptw.c
/openbmc/qemu/target/arm/tcg/cpu64.c
/openbmc/qemu/target/arm/tcg/helper-a64.c
/openbmc/qemu/target/arm/tcg/helper-a64.h
/openbmc/qemu/target/arm/tcg/hflags.c
/openbmc/qemu/target/arm/tcg/mte_helper.c
/openbmc/qemu/target/arm/tcg/translate-a64.c
/openbmc/qemu/target/arm/tcg/translate-a64.h
/openbmc/qemu/target/arm/tcg/translate-m-nocp.c
/openbmc/qemu/target/arm/tcg/translate-mve.c
/openbmc/qemu/target/arm/tcg/translate-neon.c
/openbmc/qemu/target/arm/tcg/translate-sme.c
/openbmc/qemu/target/arm/tcg/translate-sve.c
/openbmc/qemu/target/arm/tcg/translate-vfp.c
/openbmc/qemu/target/arm/tcg/translate.c
/openbmc/qemu/target/arm/tcg/translate.h
/openbmc/qemu/target/hexagon/translate.c
/openbmc/qemu/target/i386/hvf/hvf.c
/openbmc/qemu/target/loongarch/translate.c
/openbmc/qemu/target/m68k/fpu_helper.c
/openbmc/qemu/target/mips/tcg/msa_translate.c
/openbmc/qemu/target/mips/tcg/mxu_translate.c
/openbmc/qemu/target/mips/tcg/octeon_translate.c
/openbmc/qemu/target/mips/tcg/rel6_translate.c
/openbmc/qemu/target/mips/tcg/translate.c
/openbmc/qemu/target/mips/tcg/translate.h
/openbmc/qemu/target/mips/tcg/translate_addr_const.c
/openbmc/qemu/target/mips/tcg/tx79_translate.c
/openbmc/qemu/target/mips/tcg/vr54xx_translate.c
/openbmc/qemu/target/ppc/cpu.h
/openbmc/qemu/target/ppc/cpu_init.c
/openbmc/qemu/target/ppc/excp_helper.c
/openbmc/qemu/target/ppc/helper_regs.c
/openbmc/qemu/target/ppc/helper_regs.h
/openbmc/qemu/target/ppc/machine.c
/openbmc/qemu/target/ppc/mmu_common.c
/openbmc/qemu/target/ppc/mmu_helper.c
/openbmc/qemu/target/ppc/power8-pmu-regs.c.inc
/openbmc/qemu/target/ppc/power8-pmu.c
/openbmc/qemu/target/ppc/power8-pmu.h
/openbmc/qemu/target/ppc/translate.c
/openbmc/qemu/target/ppc/translate/branch-impl.c.inc
vector_helper.c
/openbmc/qemu/target/s390x/cpu_models.c
/openbmc/qemu/target/s390x/cpu_models.h
/openbmc/qemu/target/s390x/helper.h
/openbmc/qemu/target/s390x/tcg/fpu_helper.c
/openbmc/qemu/target/s390x/tcg/insn-data.h.inc
/openbmc/qemu/target/s390x/tcg/translate.c
/openbmc/qemu/target/tricore/cpu.h
/openbmc/qemu/target/tricore/helper.c
/openbmc/qemu/target/tricore/op_helper.c
/openbmc/qemu/target/tricore/translate.c
/openbmc/qemu/tcg/meson.build
/openbmc/qemu/tcg/region.c
/openbmc/qemu/tcg/tcg-op-vec.c
/openbmc/qemu/tcg/tcg-op.c
/openbmc/qemu/tcg/tcg.c
/openbmc/qemu/tcg/tci.c
/openbmc/qemu/tcg/tci/tcg-target.c.inc
/openbmc/qemu/tests/Makefile.include
/openbmc/qemu/tests/avocado/boot_linux_console.py
/openbmc/qemu/tests/avocado/tuxrun_baselines.py
/openbmc/qemu/tests/fp/meson.build
/openbmc/qemu/tests/qemu-iotests/194
/openbmc/qemu/tests/qemu-iotests/194.out
/openbmc/qemu/tests/qtest/meson.build
/openbmc/qemu/tests/qtest/xlnx-canfd-test.c
/openbmc/qemu/tests/requirements.txt
/openbmc/qemu/tests/tcg/aarch64/Makefile.target
/openbmc/qemu/tests/tcg/aarch64/dcpodp.c
/openbmc/qemu/tests/tcg/aarch64/dcpop.c
/openbmc/qemu/tests/tcg/aarch64/mte-7.c
/openbmc/qemu/tests/tcg/multiarch/sigbus.c
/openbmc/qemu/tests/tcg/s390x/Makefile.target
/openbmc/qemu/tests/tcg/s390x/gdbstub/test-svc.py
/openbmc/qemu/tests/tcg/s390x/hello-s390x-asm.S
/openbmc/qemu/tests/tcg/s390x/lcbb.c
/openbmc/qemu/tests/tcg/s390x/locfhr.c
/openbmc/qemu/tests/tcg/s390x/mxdb.c
/openbmc/qemu/tests/tcg/tricore/Makefile.softmmu-target
/openbmc/qemu/tests/tcg/tricore/asm/macros.h
/openbmc/qemu/tests/tcg/tricore/asm/test_abs.S
/openbmc/qemu/tests/tcg/tricore/asm/test_bmerge.S
/openbmc/qemu/tests/tcg/tricore/asm/test_clz.S
/openbmc/qemu/tests/tcg/tricore/asm/test_dextr.S
/openbmc/qemu/tests/tcg/tricore/asm/test_dvstep.S
/openbmc/qemu/tests/tcg/tricore/asm/test_fadd.S
/openbmc/qemu/tests/tcg/tricore/asm/test_fmul.S
/openbmc/qemu/tests/tcg/tricore/asm/test_ftoi.S
/openbmc/qemu/tests/tcg/tricore/asm/test_imask.S
/openbmc/qemu/tests/tcg/tricore/asm/test_insert.S
/openbmc/qemu/tests/tcg/tricore/asm/test_ld_bu.S
/openbmc/qemu/tests/tcg/tricore/asm/test_ld_h.S
/openbmc/qemu/tests/tcg/tricore/asm/test_madd.S
/openbmc/qemu/tests/tcg/tricore/asm/test_msub.S
/openbmc/qemu/tests/tcg/tricore/asm/test_muls.S
/openbmc/qemu/tests/tcg/tricore/c/crt0-tc2x.S
/openbmc/qemu/tests/tcg/tricore/c/test_boot_to_main.c
/openbmc/qemu/tests/tcg/tricore/c/test_context_save_areas.c
/openbmc/qemu/tests/tcg/tricore/c/testdev_assert.h
/openbmc/qemu/tests/tcg/tricore/link.ld
/openbmc/qemu/tests/unit/test-aio-multithread.c
/openbmc/qemu/tests/vm/Makefile.include
/openbmc/qemu/ui/vnc-jobs.c
/openbmc/qemu/ui/vnc-ws.c
/openbmc/qemu/util/qemu-coroutine-lock.c
dfd1b81223-May-2023 Richard Henderson <richard.henderson@linaro.org>

accel/tcg: Introduce translator_io_start

New wrapper around gen_io_start which takes care of the USE_ICOUNT
check, as well as marking the DisasContext to end the TB.
Remove exec/gen-icount.h.

Revie

accel/tcg: Introduce translator_io_start

New wrapper around gen_io_start which takes care of the USE_ICOUNT
check, as well as marking the DisasContext to end the TB.
Remove exec/gen-icount.h.

Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>

show more ...


/openbmc/qemu/MAINTAINERS
/openbmc/qemu/accel/tcg/cpu-exec.c
/openbmc/qemu/accel/tcg/cputlb.c
/openbmc/qemu/accel/tcg/perf.c
/openbmc/qemu/accel/tcg/plugin-gen.c
/openbmc/qemu/accel/tcg/tcg-runtime-gvec.c
/openbmc/qemu/accel/tcg/tcg-runtime.c
/openbmc/qemu/accel/tcg/translate-all.c
/openbmc/qemu/accel/tcg/translator.c
/openbmc/qemu/include/exec/cpu-all.h
/openbmc/qemu/include/exec/exec-all.h
/openbmc/qemu/include/exec/helper-gen-common.h
/openbmc/qemu/include/exec/helper-gen.h
/openbmc/qemu/include/exec/helper-gen.h.inc
/openbmc/qemu/include/exec/helper-proto-common.h
/openbmc/qemu/include/exec/helper-proto.h
/openbmc/qemu/include/exec/helper-proto.h.inc
/openbmc/qemu/include/exec/translation-block.h
/openbmc/qemu/include/exec/translator.h
/openbmc/qemu/include/tcg/insn-start-words.h
/openbmc/qemu/include/tcg/tcg-op-common.h
/openbmc/qemu/include/tcg/tcg-op-gvec-common.h
/openbmc/qemu/include/tcg/tcg-op-gvec.h
/openbmc/qemu/include/tcg/tcg-op.h
/openbmc/qemu/include/tcg/tcg-opc.h
/openbmc/qemu/include/tcg/tcg.h
/openbmc/qemu/target/alpha/translate.c
/openbmc/qemu/target/arm/cpregs.h
/openbmc/qemu/target/arm/tcg/translate-a64.c
/openbmc/qemu/target/arm/tcg/translate-mve.c
/openbmc/qemu/target/arm/tcg/translate-neon.c
/openbmc/qemu/target/arm/tcg/translate-vfp.c
/openbmc/qemu/target/arm/tcg/translate.c
/openbmc/qemu/target/avr/translate.c
/openbmc/qemu/target/cris/translate.c
/openbmc/qemu/target/hexagon/translate.c
/openbmc/qemu/target/hppa/translate.c
/openbmc/qemu/target/i386/helper.c
/openbmc/qemu/target/i386/tcg/translate.c
/openbmc/qemu/target/loongarch/insn_trans/trans_extra.c.inc
/openbmc/qemu/target/loongarch/insn_trans/trans_privileged.c.inc
/openbmc/qemu/target/loongarch/translate.c
/openbmc/qemu/target/m68k/translate.c
/openbmc/qemu/target/microblaze/translate.c
/openbmc/qemu/target/mips/tcg/translate.c
/openbmc/qemu/target/nios2/translate.c
/openbmc/qemu/target/openrisc/sys_helper.c
/openbmc/qemu/target/openrisc/translate.c
/openbmc/qemu/target/ppc/cpu.h
/openbmc/qemu/target/ppc/translate.c
insn_trans/trans_privileged.c.inc
insn_trans/trans_rvi.c.inc
translate.c
/openbmc/qemu/target/rx/translate.c
/openbmc/qemu/target/s390x/tcg/translate.c
/openbmc/qemu/target/sh4/translate.c
/openbmc/qemu/target/sparc/cpu.h
/openbmc/qemu/target/sparc/translate.c
/openbmc/qemu/target/tricore/translate.c
/openbmc/qemu/target/xtensa/translate.c
/openbmc/qemu/tcg/tcg-op-gvec.c
/openbmc/qemu/tcg/tcg-op-ldst.c
/openbmc/qemu/tcg/tcg.c
d53106c931-Mar-2023 Richard Henderson <richard.henderson@linaro.org>

tcg: Pass TCGHelperInfo to tcg_gen_callN

In preparation for compiling tcg/ only once, eliminate
the all_helpers array. Instantiate the info structs for
the generic helpers in accel/tcg/, and the st

tcg: Pass TCGHelperInfo to tcg_gen_callN

In preparation for compiling tcg/ only once, eliminate
the all_helpers array. Instantiate the info structs for
the generic helpers in accel/tcg/, and the structs for
the target-specific helpers in each translate.c.

Since we don't see all of the info structs at startup,
initialize at first use, using g_once_init_* to make
sure we don't race while doing so.

Reviewed-by: Anton Johansson <anjo@rev.ng>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>

show more ...


/openbmc/qemu/MAINTAINERS
/openbmc/qemu/accel/tcg/plugin-gen.c
/openbmc/qemu/accel/tcg/tcg-runtime.c
/openbmc/qemu/include/exec/helper-gen.h
/openbmc/qemu/include/exec/helper-head.h
/openbmc/qemu/include/exec/helper-info.c.inc
/openbmc/qemu/include/qemu/typedefs.h
/openbmc/qemu/include/tcg/helper-info.h
/openbmc/qemu/include/tcg/tcg-op-common.h
/openbmc/qemu/include/tcg/tcg-op.h
/openbmc/qemu/include/tcg/tcg.h
/openbmc/qemu/target/alpha/translate.c
/openbmc/qemu/target/arm/tcg/translate-a64.c
/openbmc/qemu/target/arm/tcg/translate-sme.c
/openbmc/qemu/target/arm/tcg/translate-sve.c
/openbmc/qemu/target/arm/tcg/translate.c
/openbmc/qemu/target/arm/tcg/translate.h
/openbmc/qemu/target/avr/translate.c
/openbmc/qemu/target/cris/translate.c
/openbmc/qemu/target/hexagon/genptr.c
/openbmc/qemu/target/hexagon/idef-parser/idef-parser.y
/openbmc/qemu/target/hexagon/translate.c
/openbmc/qemu/target/hppa/translate.c
/openbmc/qemu/target/i386/tcg/translate.c
/openbmc/qemu/target/loongarch/translate.c
/openbmc/qemu/target/m68k/translate.c
/openbmc/qemu/target/microblaze/translate.c
/openbmc/qemu/target/mips/tcg/translate.c
/openbmc/qemu/target/mips/tcg/translate.h
/openbmc/qemu/target/nios2/translate.c
/openbmc/qemu/target/openrisc/translate.c
/openbmc/qemu/target/ppc/translate.c
translate.c
/openbmc/qemu/target/rx/translate.c
/openbmc/qemu/target/s390x/tcg/translate.c
/openbmc/qemu/target/sh4/translate.c
/openbmc/qemu/target/sparc/translate.c
/openbmc/qemu/target/tricore/translate.c
/openbmc/qemu/target/xtensa/translate.c
/openbmc/qemu/tcg/optimize.c
/openbmc/qemu/tcg/tcg-internal.h
/openbmc/qemu/tcg/tcg-op-gvec.c
/openbmc/qemu/tcg/tcg-op-ldst.c
/openbmc/qemu/tcg/tcg-op-vec.c
/openbmc/qemu/tcg/tcg-op.c
/openbmc/qemu/tcg/tcg.c
/openbmc/qemu/tcg/tci.c
70f168f827-Mar-2023 Richard Henderson <richard.henderson@linaro.org>

tcg: Split out tcg/oversized-guest.h

Move a use of TARGET_LONG_BITS out of tcg/tcg.h.
Include the new file only where required.

Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by

tcg: Split out tcg/oversized-guest.h

Move a use of TARGET_LONG_BITS out of tcg/tcg.h.
Include the new file only where required.

Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>

show more ...


/openbmc/qemu/.gitlab-ci.d/buildtest-template.yml
/openbmc/qemu/.gitlab-ci.d/buildtest.yml
/openbmc/qemu/.gitlab-ci.d/cirrus/freebsd-13.vars
/openbmc/qemu/.gitlab-ci.d/cirrus/macos-12.vars
/openbmc/qemu/.gitlab-ci.d/container-template.yml
/openbmc/qemu/.gitlab-ci.d/custom-runners.yml
/openbmc/qemu/.gitlab-ci.d/custom-runners/ubuntu-22.04-aarch32.yml
/openbmc/qemu/.gitlab-ci.d/custom-runners/ubuntu-22.04-aarch64.yml
/openbmc/qemu/.gitlab-ci.d/opensbi.yml
/openbmc/qemu/.gitlab-ci.d/qemu-project.yml
/openbmc/qemu/.gitmodules
/openbmc/qemu/.mailmap
/openbmc/qemu/MAINTAINERS
/openbmc/qemu/Makefile
/openbmc/qemu/accel/kvm/kvm-all.c
/openbmc/qemu/accel/tcg/atomic_common.c.inc
/openbmc/qemu/accel/tcg/atomic_template.h
/openbmc/qemu/accel/tcg/cpu-exec-common.c
/openbmc/qemu/accel/tcg/cpu-exec.c
/openbmc/qemu/accel/tcg/cputlb.c
/openbmc/qemu/accel/tcg/internal.h
/openbmc/qemu/accel/tcg/ldst_atomicity.c.inc
/openbmc/qemu/accel/tcg/ldst_common.c.inc
/openbmc/qemu/accel/tcg/monitor.c
/openbmc/qemu/accel/tcg/plugin-gen.c
/openbmc/qemu/accel/tcg/tb-hash.h
/openbmc/qemu/accel/tcg/tb-maint.c
/openbmc/qemu/accel/tcg/tcg-accel-ops-icount.c
/openbmc/qemu/accel/tcg/tcg-accel-ops-icount.h
/openbmc/qemu/accel/tcg/tcg-accel-ops-mttcg.c
/openbmc/qemu/accel/tcg/tcg-accel-ops-rr.c
/openbmc/qemu/accel/tcg/tcg-all.c
/openbmc/qemu/accel/tcg/tcg-runtime.h
/openbmc/qemu/accel/tcg/translate-all.c
/openbmc/qemu/accel/tcg/translator.c
/openbmc/qemu/accel/tcg/user-exec.c
/openbmc/qemu/audio/audio.c
/openbmc/qemu/audio/audio_legacy.c
/openbmc/qemu/audio/audio_template.h
/openbmc/qemu/audio/meson.build
/openbmc/qemu/audio/pwaudio.c
/openbmc/qemu/audio/trace-events
/openbmc/qemu/backends/hostmem-file.c
/openbmc/qemu/block.c
/openbmc/qemu/block/amend.c
/openbmc/qemu/block/blkio.c
/openbmc/qemu/block/blkverify.c
/openbmc/qemu/block/block-backend.c
/openbmc/qemu/block/commit.c
/openbmc/qemu/block/copy-before-write.c
/openbmc/qemu/block/coroutines.h
/openbmc/qemu/block/create.c
/openbmc/qemu/block/crypto.c
/openbmc/qemu/block/curl.c
/openbmc/qemu/block/export/export.c
/openbmc/qemu/block/export/fuse.c
/openbmc/qemu/block/export/vduse-blk.c
/openbmc/qemu/block/export/vhost-user-blk-server.c
/openbmc/qemu/block/file-posix.c
/openbmc/qemu/block/gluster.c
/openbmc/qemu/block/graph-lock.c
/openbmc/qemu/block/io.c
/openbmc/qemu/block/io_uring.c
/openbmc/qemu/block/iscsi.c
/openbmc/qemu/block/linux-aio.c
/openbmc/qemu/block/meson.build
/openbmc/qemu/block/mirror.c
/openbmc/qemu/block/nbd.c
/openbmc/qemu/block/nfs.c
/openbmc/qemu/block/nvme.c
/openbmc/qemu/block/parallels.c
/openbmc/qemu/block/plug.c
/openbmc/qemu/block/qapi-sysemu.c
/openbmc/qemu/block/qapi.c
/openbmc/qemu/block/qcow.c
/openbmc/qemu/block/qcow2-cluster.c
/openbmc/qemu/block/qcow2-refcount.c
/openbmc/qemu/block/qcow2.c
/openbmc/qemu/block/qcow2.h
/openbmc/qemu/block/qed.c
/openbmc/qemu/block/quorum.c
/openbmc/qemu/block/raw-format.c
/openbmc/qemu/block/ssh.c
/openbmc/qemu/block/stream.c
/openbmc/qemu/block/trace-events
/openbmc/qemu/block/vdi.c
/openbmc/qemu/block/vhdx.c
/openbmc/qemu/block/vmdk.c
/openbmc/qemu/block/vpc.c
/openbmc/qemu/block/win32-aio.c
/openbmc/qemu/blockdev.c
/openbmc/qemu/blockjob.c
/openbmc/qemu/bsd-user/elfload.c
/openbmc/qemu/bsd-user/freebsd/os-syscall.c
/openbmc/qemu/configs/devices/aarch64-softmmu/default.mak
/openbmc/qemu/configs/devices/arm-softmmu/default.mak
/openbmc/qemu/configs/targets/alpha-linux-user.mak
/openbmc/qemu/configs/targets/alpha-softmmu.mak
/openbmc/qemu/configs/targets/hexagon-linux-user.mak
/openbmc/qemu/configs/targets/hppa-linux-user.mak
/openbmc/qemu/configs/targets/hppa-softmmu.mak
/openbmc/qemu/configs/targets/mips-linux-user.mak
/openbmc/qemu/configs/targets/mips-softmmu.mak
/openbmc/qemu/configs/targets/mips64-linux-user.mak
/openbmc/qemu/configs/targets/mips64-softmmu.mak
/openbmc/qemu/configs/targets/mips64el-linux-user.mak
/openbmc/qemu/configs/targets/mips64el-softmmu.mak
/openbmc/qemu/configs/targets/mipsel-linux-user.mak
/openbmc/qemu/configs/targets/mipsel-softmmu.mak
/openbmc/qemu/configs/targets/mipsn32-linux-user.mak
/openbmc/qemu/configs/targets/mipsn32el-linux-user.mak
/openbmc/qemu/configs/targets/nios2-softmmu.mak
/openbmc/qemu/configs/targets/sh4-linux-user.mak
/openbmc/qemu/configs/targets/sh4-softmmu.mak
/openbmc/qemu/configs/targets/sh4eb-linux-user.mak
/openbmc/qemu/configs/targets/sh4eb-softmmu.mak
/openbmc/qemu/configs/targets/sparc-linux-user.mak
/openbmc/qemu/configs/targets/sparc-softmmu.mak
/openbmc/qemu/configs/targets/sparc32plus-linux-user.mak
/openbmc/qemu/configs/targets/sparc64-linux-user.mak
/openbmc/qemu/configs/targets/sparc64-softmmu.mak
/openbmc/qemu/configure
/openbmc/qemu/contrib/ivshmem-server/main.c
/openbmc/qemu/contrib/plugins/Makefile
/openbmc/qemu/cpu.c
/openbmc/qemu/cpus-common.c
/openbmc/qemu/disas/disas-internal.h
/openbmc/qemu/disas/disas-mon.c
/openbmc/qemu/disas/disas.c
/openbmc/qemu/disas/meson.build
/openbmc/qemu/disas/riscv.c
/openbmc/qemu/docs/COLO-FT.txt
/openbmc/qemu/docs/about/build-platforms.rst
/openbmc/qemu/docs/about/deprecated.rst
/openbmc/qemu/docs/about/emulation.rst
/openbmc/qemu/docs/conf.py
/openbmc/qemu/docs/devel/acpi-bits.rst
/openbmc/qemu/docs/devel/build-system.rst
/openbmc/qemu/docs/devel/decodetree.rst
/openbmc/qemu/docs/devel/index-api.rst
/openbmc/qemu/docs/devel/kconfig.rst
/openbmc/qemu/docs/devel/loads-stores.rst
/openbmc/qemu/docs/devel/qapi-code-gen.rst
/openbmc/qemu/docs/devel/tcg-ops.rst
/openbmc/qemu/docs/devel/testing.rst
/openbmc/qemu/docs/devel/zoned-storage.rst
/openbmc/qemu/docs/interop/index.rst
/openbmc/qemu/docs/interop/qcow2.txt
/openbmc/qemu/docs/interop/qmp-spec.rst
/openbmc/qemu/docs/meson.build
/openbmc/qemu/docs/sphinx/dbusdomain.py
/openbmc/qemu/docs/sphinx/fakedbusdoc.py
/openbmc/qemu/docs/sphinx/qapidoc.py
/openbmc/qemu/docs/sphinx/qmp_lexer.py
/openbmc/qemu/docs/system/arm/sbsa.rst
/openbmc/qemu/docs/system/device-emulation.rst
/openbmc/qemu/docs/system/devices/cxl.rst
/openbmc/qemu/docs/system/devices/igb.rst
/openbmc/qemu/docs/system/devices/ivshmem.rst
/openbmc/qemu/docs/system/devices/net.rst
/openbmc/qemu/docs/system/devices/usb-u2f.rst
/openbmc/qemu/docs/system/devices/usb.rst
/openbmc/qemu/docs/system/gdb.rst
/openbmc/qemu/docs/system/keys.rst
/openbmc/qemu/docs/system/linuxboot.rst
/openbmc/qemu/docs/system/qemu-block-drivers.rst.inc
/openbmc/qemu/docs/system/target-i386.rst
/openbmc/qemu/fpu/softfloat.c
/openbmc/qemu/gdb-xml/hexagon-core.xml
/openbmc/qemu/gdb-xml/hexagon-hvx.xml
/openbmc/qemu/gdbstub/gdbstub.c
/openbmc/qemu/gdbstub/internals.h
/openbmc/qemu/gdbstub/softmmu.c
/openbmc/qemu/gdbstub/user.c
/openbmc/qemu/hmp-commands.hx
/openbmc/qemu/host/include/aarch64/host/atomic128-cas.h
/openbmc/qemu/host/include/aarch64/host/atomic128-ldst.h
/openbmc/qemu/host/include/aarch64/host/cpuinfo.h
/openbmc/qemu/host/include/aarch64/host/load-extract-al16-al8.h
/openbmc/qemu/host/include/aarch64/host/store-insert-al16.h
/openbmc/qemu/host/include/generic/host/atomic128-cas.h
/openbmc/qemu/host/include/generic/host/atomic128-ldst.h
/openbmc/qemu/host/include/generic/host/cpuinfo.h
/openbmc/qemu/host/include/generic/host/load-extract-al16-al8.h
/openbmc/qemu/host/include/generic/host/store-insert-al16.h
/openbmc/qemu/host/include/i386/host/cpuinfo.h
/openbmc/qemu/host/include/x86_64/host/atomic128-ldst.h
/openbmc/qemu/host/include/x86_64/host/cpuinfo.h
/openbmc/qemu/host/include/x86_64/host/load-extract-al16-al8.h
/openbmc/qemu/hw/9pfs/9p.c
/openbmc/qemu/hw/9pfs/trace-events
/openbmc/qemu/hw/9pfs/xen-9p-backend.c
/openbmc/qemu/hw/alpha/dp264.c
/openbmc/qemu/hw/arm/Kconfig
/openbmc/qemu/hw/arm/fsl-imx6.c
/openbmc/qemu/hw/arm/sbsa-ref.c
/openbmc/qemu/hw/arm/smmu-common.c
/openbmc/qemu/hw/arm/smmu-internal.h
/openbmc/qemu/hw/arm/smmuv3-internal.h
/openbmc/qemu/hw/arm/smmuv3.c
/openbmc/qemu/hw/arm/trace-events
/openbmc/qemu/hw/arm/vexpress.c
/openbmc/qemu/hw/arm/virt.c
/openbmc/qemu/hw/arm/xlnx-zynqmp.c
/openbmc/qemu/hw/block/dataplane/virtio-blk.c
/openbmc/qemu/hw/block/dataplane/xen-block.c
/openbmc/qemu/hw/block/dataplane/xen-block.h
/openbmc/qemu/hw/block/trace-events
/openbmc/qemu/hw/block/virtio-blk-common.c
/openbmc/qemu/hw/block/virtio-blk.c
/openbmc/qemu/hw/block/xen-block.c
/openbmc/qemu/hw/char/omap_uart.c
/openbmc/qemu/hw/char/parallel-isa.c
/openbmc/qemu/hw/char/parallel.c
/openbmc/qemu/hw/core/cpu-common.c
/openbmc/qemu/hw/core/machine-qmp-cmds.c
/openbmc/qemu/hw/core/machine.c
/openbmc/qemu/hw/core/meson.build
/openbmc/qemu/hw/core/numa.c
/openbmc/qemu/hw/core/trace-events
/openbmc/qemu/hw/cxl/cxl-cdat.c
/openbmc/qemu/hw/cxl/cxl-component-utils.c
/openbmc/qemu/hw/cxl/cxl-device-utils.c
/openbmc/qemu/hw/cxl/cxl-mailbox-utils.c
/openbmc/qemu/hw/display/sm501.c
/openbmc/qemu/hw/display/virtio-gpu.c
/openbmc/qemu/hw/dma/xilinx_axidma.c
/openbmc/qemu/hw/hppa/machine.c
/openbmc/qemu/hw/i386/Kconfig
/openbmc/qemu/hw/i386/acpi-common.c
/openbmc/qemu/hw/i386/kvm/i8254.c
/openbmc/qemu/hw/i386/kvm/xen_xenstore.c
/openbmc/qemu/hw/i386/pc.c
/openbmc/qemu/hw/i386/pc_piix.c
/openbmc/qemu/hw/i386/pc_q35.c
/openbmc/qemu/hw/input/virtio-input-hid.c
/openbmc/qemu/hw/intc/loongarch_extioi.c
/openbmc/qemu/hw/intc/loongarch_ipi.c
/openbmc/qemu/hw/intc/trace-events
/openbmc/qemu/hw/isa/Kconfig
/openbmc/qemu/hw/isa/i82378.c
/openbmc/qemu/hw/isa/isa-superio.c
/openbmc/qemu/hw/isa/lpc_ich9.c
/openbmc/qemu/hw/isa/piix3.c
/openbmc/qemu/hw/loongarch/virt.c
/openbmc/qemu/hw/mem/cxl_type3.c
/openbmc/qemu/hw/mips/loongson3_virt.c
/openbmc/qemu/hw/mips/malta.c
/openbmc/qemu/hw/net/Kconfig
/openbmc/qemu/hw/net/e1000.c
/openbmc/qemu/hw/net/e1000e_core.c
/openbmc/qemu/hw/net/e1000e_core.h
/openbmc/qemu/hw/net/e1000x_common.c
/openbmc/qemu/hw/net/e1000x_common.h
/openbmc/qemu/hw/net/e1000x_regs.h
/openbmc/qemu/hw/net/igb.c
/openbmc/qemu/hw/net/igb_common.h
/openbmc/qemu/hw/net/igb_core.c
/openbmc/qemu/hw/net/igb_regs.h
/openbmc/qemu/hw/net/igbvf.c
/openbmc/qemu/hw/net/meson.build
/openbmc/qemu/hw/net/net_rx_pkt.c
/openbmc/qemu/hw/net/net_rx_pkt.h
/openbmc/qemu/hw/net/net_tx_pkt.c
/openbmc/qemu/hw/net/net_tx_pkt.h
/openbmc/qemu/hw/net/rtl8139.c
/openbmc/qemu/hw/net/trace-events
/openbmc/qemu/hw/net/virtio-net.c
/openbmc/qemu/hw/net/vmxnet3.c
/openbmc/qemu/hw/net/xilinx_ethlite.c
/openbmc/qemu/hw/pci-bridge/Kconfig
/openbmc/qemu/hw/pci-bridge/cxl_upstream.c
/openbmc/qemu/hw/pci-bridge/meson.build
/openbmc/qemu/hw/pci-host/i440fx.c
/openbmc/qemu/hw/pci-host/pam.c
/openbmc/qemu/hw/pci-host/q35.c
/openbmc/qemu/hw/pci/pci.c
/openbmc/qemu/hw/pci/pci_bridge.c
/openbmc/qemu/hw/pci/pcie_aer.c
/openbmc/qemu/hw/ppc/Kconfig
/openbmc/qemu/hw/ppc/e500.c
/openbmc/qemu/hw/ppc/e500plat.c
/openbmc/qemu/hw/ppc/mac_newworld.c
/openbmc/qemu/hw/ppc/mac_oldworld.c
/openbmc/qemu/hw/ppc/mpc8544ds.c
/openbmc/qemu/hw/ppc/pegasos2.c
/openbmc/qemu/hw/ppc/pnv.c
/openbmc/qemu/hw/ppc/pnv_core.c
/openbmc/qemu/hw/ppc/pnv_lpc.c
/openbmc/qemu/hw/ppc/ppc440_bamboo.c
/openbmc/qemu/hw/ppc/prep.c
/openbmc/qemu/hw/ppc/spapr.c
/openbmc/qemu/hw/ppc/spapr_caps.c
/openbmc/qemu/hw/ppc/spapr_cpu_core.c
/openbmc/qemu/hw/ppc/spapr_hcall.c
/openbmc/qemu/hw/s390x/pv.c
/openbmc/qemu/hw/s390x/s390-stattrib.c
/openbmc/qemu/hw/s390x/s390-virtio-ccw.c
/openbmc/qemu/hw/scsi/lsi53c895a.c
/openbmc/qemu/hw/scsi/scsi-bus.c
/openbmc/qemu/hw/scsi/scsi-disk.c
/openbmc/qemu/hw/scsi/scsi-generic.c
/openbmc/qemu/hw/scsi/trace-events
/openbmc/qemu/hw/scsi/virtio-scsi-dataplane.c
/openbmc/qemu/hw/scsi/virtio-scsi.c
/openbmc/qemu/hw/sh4/r2d.c
/openbmc/qemu/hw/sparc64/sun4u.c
/openbmc/qemu/hw/timer/i8254.c
/openbmc/qemu/hw/timer/i8254_common.c
/openbmc/qemu/hw/usb/Kconfig
/openbmc/qemu/hw/usb/hcd-ohci.c
/openbmc/qemu/hw/vfio/common.c
/openbmc/qemu/hw/vfio/pci.c
/openbmc/qemu/hw/vfio/pci.h
/openbmc/qemu/hw/virtio/vhost-shadow-virtqueue.c
/openbmc/qemu/hw/virtio/vhost-shadow-virtqueue.h
/openbmc/qemu/hw/virtio/vhost-user.c
/openbmc/qemu/hw/virtio/vhost-vdpa.c
/openbmc/qemu/hw/virtio/vhost.c
/openbmc/qemu/hw/virtio/virtio-crypto.c
/openbmc/qemu/hw/virtio/virtio-input-pci.c
/openbmc/qemu/hw/virtio/virtio-mem.c
/openbmc/qemu/hw/virtio/virtio-pci.c
/openbmc/qemu/hw/virtio/virtio-qmp.c
/openbmc/qemu/hw/virtio/virtio.c
/openbmc/qemu/hw/xen/xen-bus.c
/openbmc/qemu/hw/xtensa/virt.c
/openbmc/qemu/include/block/accounting.h
/openbmc/qemu/include/block/aio-wait.h
/openbmc/qemu/include/block/aio.h
/openbmc/qemu/include/block/block-common.h
/openbmc/qemu/include/block/block-global-state.h
/openbmc/qemu/include/block/block-io.h
/openbmc/qemu/include/block/block_int-common.h
/openbmc/qemu/include/block/block_int-global-state.h
/openbmc/qemu/include/block/blockjob_int.h
/openbmc/qemu/include/block/export.h
/openbmc/qemu/include/block/graph-lock.h
/openbmc/qemu/include/block/qapi.h
/openbmc/qemu/include/block/raw-aio.h
/openbmc/qemu/include/disas/disas.h
/openbmc/qemu/include/exec/cpu-all.h
/openbmc/qemu/include/exec/cpu-common.h
/openbmc/qemu/include/exec/cpu-defs.h
/openbmc/qemu/include/exec/cpu_ldst.h
/openbmc/qemu/include/exec/exec-all.h
/openbmc/qemu/include/exec/memop.h
/openbmc/qemu/include/exec/memory.h
/openbmc/qemu/include/exec/plugin-gen.h
/openbmc/qemu/include/exec/poison.h
/openbmc/qemu/include/exec/ram_addr.h
/openbmc/qemu/include/exec/ramblock.h
/openbmc/qemu/include/exec/target_page.h
/openbmc/qemu/include/exec/tlb-common.h
/openbmc/qemu/include/exec/user/guest-base.h
/openbmc/qemu/include/hw/arm/fsl-imx6.h
/openbmc/qemu/include/hw/arm/omap.h
/openbmc/qemu/include/hw/arm/smmu-common.h
/openbmc/qemu/include/hw/arm/smmuv3.h
/openbmc/qemu/include/hw/boards.h
/openbmc/qemu/include/hw/char/parallel.h
/openbmc/qemu/include/hw/core/cpu.h
/openbmc/qemu/include/hw/cxl/cxl_device.h
/openbmc/qemu/include/hw/i386/pc.h
/openbmc/qemu/include/hw/intc/loongarch_extioi.h
/openbmc/qemu/include/hw/intc/loongarch_ipi.h
/openbmc/qemu/include/hw/loongarch/virt.h
/openbmc/qemu/include/hw/pci-host/pam.h
/openbmc/qemu/include/hw/pci/pci.h
/openbmc/qemu/include/hw/pci/pci_bridge.h
/openbmc/qemu/include/hw/ppc/pnv.h
/openbmc/qemu/include/hw/ppc/spapr.h
/openbmc/qemu/include/hw/qdev-core.h
/openbmc/qemu/include/hw/s390x/pv.h
/openbmc/qemu/include/hw/scsi/scsi.h
/openbmc/qemu/include/hw/southbridge/ich9.h
/openbmc/qemu/include/hw/southbridge/piix.h
/openbmc/qemu/include/hw/virtio/vhost-vdpa.h
/openbmc/qemu/include/hw/virtio/vhost.h
/openbmc/qemu/include/hw/virtio/virtio-input.h
/openbmc/qemu/include/hw/virtio/virtio.h
/openbmc/qemu/include/io/channel.h
/openbmc/qemu/include/migration/colo.h
/openbmc/qemu/include/migration/global_state.h
/openbmc/qemu/include/migration/qemu-file-types.h
/openbmc/qemu/include/monitor/monitor.h
/openbmc/qemu/include/net/eth.h
/openbmc/qemu/include/qemu/atomic128.h
/openbmc/qemu/include/qemu/cpuid.h
/openbmc/qemu/include/qemu/crc32c.h
/openbmc/qemu/include/qemu/cutils.h
/openbmc/qemu/include/qemu/help-texts.h
/openbmc/qemu/include/qemu/int128.h
/openbmc/qemu/include/qemu/iov.h
/openbmc/qemu/include/qemu/osdep.h
/openbmc/qemu/include/qemu/rcu.h
/openbmc/qemu/include/qemu/typedefs.h
/openbmc/qemu/include/qemu/vhost-user-server.h
/openbmc/qemu/include/qemu/xxhash.h
/openbmc/qemu/include/sysemu/block-backend-common.h
/openbmc/qemu/include/sysemu/block-backend-global-state.h
/openbmc/qemu/include/sysemu/block-backend-io.h
/openbmc/qemu/include/sysemu/kvm.h
/openbmc/qemu/include/sysemu/kvm_int.h
/openbmc/qemu/include/sysemu/os-win32.h
/openbmc/qemu/include/sysemu/runstate.h
/openbmc/qemu/include/tcg/debug-assert.h
/openbmc/qemu/include/tcg/oversized-guest.h
/openbmc/qemu/include/tcg/tcg-ldst.h
/openbmc/qemu/include/tcg/tcg-op.h
/openbmc/qemu/include/tcg/tcg-opc.h
/openbmc/qemu/include/tcg/tcg.h
/openbmc/qemu/include/ui/console.h
/openbmc/qemu/include/ui/input.h
/openbmc/qemu/include/user/syscall-trace.h
/openbmc/qemu/io/channel-command.c
/openbmc/qemu/io/channel-file.c
/openbmc/qemu/io/channel-socket.c
/openbmc/qemu/io/channel.c
/openbmc/qemu/linux-user/elfload.c
/openbmc/qemu/linux-user/hexagon/cpu_loop.c
/openbmc/qemu/linux-user/hexagon/target_elf.h
/openbmc/qemu/linux-user/loongarch64/signal.c
/openbmc/qemu/linux-user/main.c
/openbmc/qemu/linux-user/mips/cpu_loop.c
/openbmc/qemu/linux-user/ppc/signal.c
/openbmc/qemu/linux-user/qemu.h
/openbmc/qemu/linux-user/syscall.c
/openbmc/qemu/meson.build
/openbmc/qemu/meson_options.txt
/openbmc/qemu/migration/block-dirty-bitmap.c
/openbmc/qemu/migration/block.c
/openbmc/qemu/migration/colo.c
/openbmc/qemu/migration/dirtyrate.c
/openbmc/qemu/migration/global_state.c
/openbmc/qemu/migration/meson.build
/openbmc/qemu/migration/migration-hmp-cmds.c
/openbmc/qemu/migration/migration-stats.c
/openbmc/qemu/migration/migration-stats.h
/openbmc/qemu/migration/migration.c
/openbmc/qemu/migration/migration.h
/openbmc/qemu/migration/multifd.c
/openbmc/qemu/migration/multifd.h
/openbmc/qemu/migration/options.c
/openbmc/qemu/migration/options.h
/openbmc/qemu/migration/qemu-file.c
/openbmc/qemu/migration/qemu-file.h
/openbmc/qemu/migration/ram-compress.c
/openbmc/qemu/migration/ram-compress.h
/openbmc/qemu/migration/ram.c
/openbmc/qemu/migration/ram.h
/openbmc/qemu/migration/rdma.c
/openbmc/qemu/migration/savevm.c
/openbmc/qemu/migration/trace-events
/openbmc/qemu/migration/vmstate.c
/openbmc/qemu/migration/xbzrle.c
/openbmc/qemu/migration/xbzrle.h
/openbmc/qemu/monitor/hmp.c
/openbmc/qemu/monitor/monitor-internal.h
/openbmc/qemu/monitor/monitor.c
/openbmc/qemu/monitor/qmp.c
/openbmc/qemu/nbd/server.c
/openbmc/qemu/net/eth.c
/openbmc/qemu/net/meson.build
/openbmc/qemu/os-posix.c
/openbmc/qemu/python/Makefile
/openbmc/qemu/python/qemu/machine/machine.py
/openbmc/qemu/python/qemu/qmp/legacy.py
/openbmc/qemu/python/qemu/qmp/models.py
/openbmc/qemu/python/qemu/qmp/protocol.py
/openbmc/qemu/python/qemu/qmp/qmp_client.py
/openbmc/qemu/python/scripts/mkvenv.py
/openbmc/qemu/python/scripts/vendor.py
/openbmc/qemu/python/setup.cfg
/openbmc/qemu/python/tests/flake8.sh
/openbmc/qemu/python/tests/isort.sh
/openbmc/qemu/python/tests/minreqs.txt
/openbmc/qemu/python/tests/mypy.sh
/openbmc/qemu/python/tests/pylint.sh
/openbmc/qemu/python/wheels/meson-0.63.3-py3-none-any.whl
/openbmc/qemu/qapi/acpi.json
/openbmc/qemu/qapi/audio.json
/openbmc/qemu/qapi/authz.json
/openbmc/qemu/qapi/block-core.json
/openbmc/qemu/qapi/block-export.json
/openbmc/qemu/qapi/block.json
/openbmc/qemu/qapi/char.json
/openbmc/qemu/qapi/common.json
/openbmc/qemu/qapi/compat.json
/openbmc/qemu/qapi/control.json
/openbmc/qemu/qapi/crypto.json
/openbmc/qemu/qapi/cryptodev.json
/openbmc/qemu/qapi/cxl.json
/openbmc/qemu/qapi/dump.json
/openbmc/qemu/qapi/error.json
/openbmc/qemu/qapi/introspect.json
/openbmc/qemu/qapi/job.json
/openbmc/qemu/qapi/machine-target.json
/openbmc/qemu/qapi/machine.json
/openbmc/qemu/qapi/migration.json
/openbmc/qemu/qapi/misc-target.json
/openbmc/qemu/qapi/misc.json
/openbmc/qemu/qapi/net.json
/openbmc/qemu/qapi/opts-visitor.c
/openbmc/qemu/qapi/pci.json
/openbmc/qemu/qapi/qapi-schema.json
/openbmc/qemu/qapi/qdev.json
/openbmc/qemu/qapi/qom.json
/openbmc/qemu/qapi/rdma.json
/openbmc/qemu/qapi/replay.json
/openbmc/qemu/qapi/rocker.json
/openbmc/qemu/qapi/run-state.json
/openbmc/qemu/qapi/sockets.json
/openbmc/qemu/qapi/stats.json
/openbmc/qemu/qapi/tpm.json
/openbmc/qemu/qapi/trace.json
/openbmc/qemu/qapi/transaction.json
/openbmc/qemu/qapi/ui.json
/openbmc/qemu/qapi/virtio.json
/openbmc/qemu/qapi/yank.json
/openbmc/qemu/qemu-img.c
/openbmc/qemu/qemu-io-cmds.c
/openbmc/qemu/qemu-nbd.c
/openbmc/qemu/qemu-options.hx
/openbmc/qemu/qga/meson.build
/openbmc/qemu/qga/qapi-schema.json
/openbmc/qemu/qobject/json-lexer.c
/openbmc/qemu/replay/replay-input.c
/openbmc/qemu/replay/replay.c
/openbmc/qemu/scripts/archive-source.sh
/openbmc/qemu/scripts/block-coroutine-wrapper.py
/openbmc/qemu/scripts/ci/gitlab-kubernetes-runners/values.yaml
/openbmc/qemu/scripts/ci/org.centos/stream/8/x86_64/test-avocado
/openbmc/qemu/scripts/ci/setup/build-environment.yml
/openbmc/qemu/scripts/ci/setup/gitlab-runner.yml
/openbmc/qemu/scripts/coverity-scan/COMPONENTS.md
/openbmc/qemu/scripts/decodetree.py
/openbmc/qemu/scripts/device-crash-test
/openbmc/qemu/scripts/meson-buildoptions.py
/openbmc/qemu/scripts/meson-buildoptions.sh
/openbmc/qemu/scripts/modinfo-collect.py
/openbmc/qemu/scripts/modinfo-generate.py
/openbmc/qemu/scripts/probe-gdb-support.py
/openbmc/qemu/scripts/qapi/gen.py
/openbmc/qemu/scripts/qapi/mypy.ini
/openbmc/qemu/scripts/qapi/parser.py
/openbmc/qemu/scripts/symlink-install-tree.py
/openbmc/qemu/scripts/tracetool/format/c.py
/openbmc/qemu/scripts/tracetool/format/h.py
/openbmc/qemu/softmmu/dirtylimit.c
/openbmc/qemu/softmmu/ioport.c
/openbmc/qemu/softmmu/memory.c
/openbmc/qemu/softmmu/physmem.c
/openbmc/qemu/softmmu/runstate.c
/openbmc/qemu/softmmu/vl.c
/openbmc/qemu/stubs/colo-compare.c
/openbmc/qemu/stubs/colo.c
/openbmc/qemu/stubs/meson.build
/openbmc/qemu/stubs/trace-control.c
/openbmc/qemu/subprojects/dtc
/openbmc/qemu/subprojects/keycodemapdb
/openbmc/qemu/subprojects/slirp.wrap
/openbmc/qemu/target/alpha/translate.c
/openbmc/qemu/target/arm/Kconfig
/openbmc/qemu/target/arm/cortex-regs.c
/openbmc/qemu/target/arm/debug_helper.c
/openbmc/qemu/target/arm/gdbstub64.c
/openbmc/qemu/target/arm/helper.c
/openbmc/qemu/target/arm/helper.h
/openbmc/qemu/target/arm/internals.h
/openbmc/qemu/target/arm/ptw.c
/openbmc/qemu/target/arm/tcg/a64.decode
/openbmc/qemu/target/arm/tcg/arm_ldst.h
/openbmc/qemu/target/arm/tcg/helper-a64.h
/openbmc/qemu/target/arm/tcg/helper-mve.h
/openbmc/qemu/target/arm/tcg/helper-sme.h
/openbmc/qemu/target/arm/tcg/helper-sve.h
/openbmc/qemu/target/arm/tcg/m_helper.c
/openbmc/qemu/target/arm/tcg/meson.build
/openbmc/qemu/target/arm/tcg/pauth_helper.c
/openbmc/qemu/target/arm/tcg/sve_helper.c
/openbmc/qemu/target/arm/tcg/sve_ldst_internal.h
/openbmc/qemu/target/arm/tcg/tlb_helper.c
/openbmc/qemu/target/arm/tcg/translate-a32.h
/openbmc/qemu/target/arm/tcg/translate-a64.c
/openbmc/qemu/target/arm/tcg/translate.h
/openbmc/qemu/target/avr/cpu.c
/openbmc/qemu/target/avr/helper.c
/openbmc/qemu/target/avr/translate.c
/openbmc/qemu/target/cris/translate_v10.c.inc
/openbmc/qemu/target/hexagon/README
/openbmc/qemu/target/hexagon/arch.c
/openbmc/qemu/target/hexagon/attribs_def.h.inc
/openbmc/qemu/target/hexagon/cpu.c
/openbmc/qemu/target/hexagon/cpu.h
/openbmc/qemu/target/hexagon/decode.c
/openbmc/qemu/target/hexagon/gdbstub.c
/openbmc/qemu/target/hexagon/gen_analyze_funcs.py
/openbmc/qemu/target/hexagon/gen_helper_funcs.py
/openbmc/qemu/target/hexagon/gen_helper_protos.py
/openbmc/qemu/target/hexagon/gen_idef_parser_funcs.py
/openbmc/qemu/target/hexagon/gen_op_regs.py
/openbmc/qemu/target/hexagon/gen_tcg.h
/openbmc/qemu/target/hexagon/gen_tcg_funcs.py
/openbmc/qemu/target/hexagon/gen_tcg_hvx.h
/openbmc/qemu/target/hexagon/genptr.c
/openbmc/qemu/target/hexagon/genptr.h
/openbmc/qemu/target/hexagon/helper.h
/openbmc/qemu/target/hexagon/hex_common.py
/openbmc/qemu/target/hexagon/iclass.c
/openbmc/qemu/target/hexagon/idef-parser/idef-parser.lex
/openbmc/qemu/target/hexagon/idef-parser/idef-parser.y
/openbmc/qemu/target/hexagon/idef-parser/parser-helpers.c
/openbmc/qemu/target/hexagon/idef-parser/parser-helpers.h
/openbmc/qemu/target/hexagon/imported/branch.idef
/openbmc/qemu/target/hexagon/imported/encode_pp.def
/openbmc/qemu/target/hexagon/imported/ldst.idef
/openbmc/qemu/target/hexagon/imported/mmvec/encode_ext.def
/openbmc/qemu/target/hexagon/imported/mmvec/ext.idef
/openbmc/qemu/target/hexagon/internal.h
/openbmc/qemu/target/hexagon/macros.h
/openbmc/qemu/target/hexagon/mmvec/decode_ext_mmvec.c
/openbmc/qemu/target/hexagon/mmvec/macros.h
/openbmc/qemu/target/hexagon/op_helper.c
/openbmc/qemu/target/hexagon/op_helper.h
/openbmc/qemu/target/hexagon/translate.c
/openbmc/qemu/target/hexagon/translate.h
/openbmc/qemu/target/hppa/translate.c
/openbmc/qemu/target/i386/cpu.c
/openbmc/qemu/target/i386/cpu.h
/openbmc/qemu/target/i386/helper.c
/openbmc/qemu/target/i386/ops_sse.h
/openbmc/qemu/target/i386/tcg/decode-new.c.inc
/openbmc/qemu/target/i386/tcg/emit.c.inc
/openbmc/qemu/target/loongarch/cpu.c
/openbmc/qemu/target/loongarch/cpu.h
/openbmc/qemu/target/loongarch/csr_helper.c
/openbmc/qemu/target/loongarch/disas.c
/openbmc/qemu/target/loongarch/fpu_helper.c
/openbmc/qemu/target/loongarch/gdbstub.c
/openbmc/qemu/target/loongarch/helper.h
/openbmc/qemu/target/loongarch/insn_trans/trans_farith.c.inc
/openbmc/qemu/target/loongarch/insn_trans/trans_fcmp.c.inc
/openbmc/qemu/target/loongarch/insn_trans/trans_fmemory.c.inc
/openbmc/qemu/target/loongarch/insn_trans/trans_fmov.c.inc
/openbmc/qemu/target/loongarch/insn_trans/trans_lsx.c.inc
/openbmc/qemu/target/loongarch/insns.decode
/openbmc/qemu/target/loongarch/internals.h
/openbmc/qemu/target/loongarch/iocsr_helper.c
/openbmc/qemu/target/loongarch/lsx_helper.c
/openbmc/qemu/target/loongarch/machine.c
/openbmc/qemu/target/loongarch/meson.build
/openbmc/qemu/target/loongarch/op_helper.c
/openbmc/qemu/target/loongarch/translate.c
/openbmc/qemu/target/loongarch/translate.h
/openbmc/qemu/target/m68k/translate.c
/openbmc/qemu/target/mips/tcg/micromips_translate.c.inc
/openbmc/qemu/target/mips/tcg/mips16e_translate.c.inc
/openbmc/qemu/target/mips/tcg/mxu_translate.c
/openbmc/qemu/target/mips/tcg/nanomips_translate.c.inc
/openbmc/qemu/target/mips/tcg/translate.c
/openbmc/qemu/target/nios2/translate.c
/openbmc/qemu/target/openrisc/cpu.c
/openbmc/qemu/target/openrisc/fpu_helper.c
/openbmc/qemu/target/openrisc/sys_helper.c
/openbmc/qemu/target/openrisc/translate.c
/openbmc/qemu/target/ppc/cpu-models.c
/openbmc/qemu/target/ppc/cpu-models.h
/openbmc/qemu/target/ppc/cpu.c
/openbmc/qemu/target/ppc/cpu.h
/openbmc/qemu/target/ppc/cpu_init.c
/openbmc/qemu/target/ppc/excp_helper.c
/openbmc/qemu/target/ppc/fpu_helper.c
/openbmc/qemu/target/ppc/gdbstub.c
/openbmc/qemu/target/ppc/helper.h
/openbmc/qemu/target/ppc/helper_regs.c
/openbmc/qemu/target/ppc/insn32.decode
/openbmc/qemu/target/ppc/kvm.c
/openbmc/qemu/target/ppc/kvm_ppc.h
/openbmc/qemu/target/ppc/mem_helper.c
/openbmc/qemu/target/ppc/misc_helper.c
/openbmc/qemu/target/ppc/power8-pmu.c
/openbmc/qemu/target/ppc/ppc-qmp-cmds.c
/openbmc/qemu/target/ppc/spr_common.h
/openbmc/qemu/target/ppc/translate.c
/openbmc/qemu/target/ppc/translate/fixedpoint-impl.c.inc
/openbmc/qemu/target/ppc/translate/fp-impl.c.inc
/openbmc/qemu/target/ppc/translate/vmx-impl.c.inc
cpu_helper.c
/openbmc/qemu/target/rx/cpu.c
/openbmc/qemu/target/rx/op_helper.c
/openbmc/qemu/target/s390x/cpu.c
/openbmc/qemu/target/s390x/cpu.h
/openbmc/qemu/target/s390x/helper.h
/openbmc/qemu/target/s390x/tcg/insn-data.h.inc
/openbmc/qemu/target/s390x/tcg/mem_helper.c
/openbmc/qemu/target/s390x/tcg/translate.c
/openbmc/qemu/target/sh4/translate.c
/openbmc/qemu/target/sparc/ldst_helper.c
/openbmc/qemu/target/sparc/translate.c
/openbmc/qemu/target/tricore/cpu.c
/openbmc/qemu/target/xtensa/translate.c
/openbmc/qemu/tcg/aarch64/tcg-target-con-set.h
/openbmc/qemu/tcg/aarch64/tcg-target-con-str.h
/openbmc/qemu/tcg/aarch64/tcg-target-reg-bits.h
/openbmc/qemu/tcg/aarch64/tcg-target.c.inc
/openbmc/qemu/tcg/aarch64/tcg-target.h
/openbmc/qemu/tcg/arm/tcg-target-con-set.h
/openbmc/qemu/tcg/arm/tcg-target-con-str.h
/openbmc/qemu/tcg/arm/tcg-target-reg-bits.h
/openbmc/qemu/tcg/arm/tcg-target.c.inc
/openbmc/qemu/tcg/arm/tcg-target.h
/openbmc/qemu/tcg/i386/tcg-target-reg-bits.h
/openbmc/qemu/tcg/i386/tcg-target.c.inc
/openbmc/qemu/tcg/i386/tcg-target.h
/openbmc/qemu/tcg/loongarch64/tcg-target-con-set.h
/openbmc/qemu/tcg/loongarch64/tcg-target-con-str.h
/openbmc/qemu/tcg/loongarch64/tcg-target-reg-bits.h
/openbmc/qemu/tcg/loongarch64/tcg-target.c.inc
/openbmc/qemu/tcg/loongarch64/tcg-target.h
/openbmc/qemu/tcg/meson.build
/openbmc/qemu/tcg/mips/tcg-target-con-set.h
/openbmc/qemu/tcg/mips/tcg-target-con-str.h
/openbmc/qemu/tcg/mips/tcg-target-reg-bits.h
/openbmc/qemu/tcg/mips/tcg-target.c.inc
/openbmc/qemu/tcg/mips/tcg-target.h
/openbmc/qemu/tcg/optimize.c
/openbmc/qemu/tcg/ppc/tcg-target-con-set.h
/openbmc/qemu/tcg/ppc/tcg-target-con-str.h
/openbmc/qemu/tcg/ppc/tcg-target-reg-bits.h
/openbmc/qemu/tcg/ppc/tcg-target.c.inc
/openbmc/qemu/tcg/ppc/tcg-target.h
/openbmc/qemu/tcg/riscv/tcg-target-con-set.h
/openbmc/qemu/tcg/riscv/tcg-target-con-str.h
/openbmc/qemu/tcg/riscv/tcg-target-reg-bits.h
/openbmc/qemu/tcg/riscv/tcg-target.c.inc
/openbmc/qemu/tcg/riscv/tcg-target.h
/openbmc/qemu/tcg/s390x/tcg-target-con-set.h
/openbmc/qemu/tcg/s390x/tcg-target-con-str.h
/openbmc/qemu/tcg/s390x/tcg-target-reg-bits.h
/openbmc/qemu/tcg/s390x/tcg-target.c.inc
/openbmc/qemu/tcg/s390x/tcg-target.h
/openbmc/qemu/tcg/sparc64/tcg-target-con-set.h
/openbmc/qemu/tcg/sparc64/tcg-target-con-str.h
/openbmc/qemu/tcg/sparc64/tcg-target-reg-bits.h
/openbmc/qemu/tcg/sparc64/tcg-target.c.inc
/openbmc/qemu/tcg/sparc64/tcg-target.h
/openbmc/qemu/tcg/tcg-internal.h
/openbmc/qemu/tcg/tcg-ldst.c.inc
/openbmc/qemu/tcg/tcg-op-ldst.c
/openbmc/qemu/tcg/tcg-op.c
/openbmc/qemu/tcg/tcg.c
/openbmc/qemu/tcg/tci.c
/openbmc/qemu/tcg/tci/tcg-target-reg-bits.h
/openbmc/qemu/tcg/tci/tcg-target.c.inc
/openbmc/qemu/tcg/tci/tcg-target.h
/openbmc/qemu/tests/Makefile.include
/openbmc/qemu/tests/avocado/acpi-bits.py
/openbmc/qemu/tests/avocado/machine_loongarch.py
/openbmc/qemu/tests/avocado/netdev-ethtool.py
/openbmc/qemu/tests/avocado/replay_kernel.py
/openbmc/qemu/tests/avocado/virtio-gpu.py
/openbmc/qemu/tests/bench/meson.build
/openbmc/qemu/tests/data/acpi/microvm/APIC
/openbmc/qemu/tests/data/acpi/microvm/APIC.ioapic2
/openbmc/qemu/tests/data/acpi/microvm/APIC.pcie
/openbmc/qemu/tests/data/acpi/pc/APIC
/openbmc/qemu/tests/data/acpi/pc/APIC.acpihmat
/openbmc/qemu/tests/data/acpi/pc/APIC.cphp
/openbmc/qemu/tests/data/acpi/pc/APIC.dimmpxm
/openbmc/qemu/tests/data/acpi/q35/APIC
/openbmc/qemu/tests/data/acpi/q35/APIC.acpihmat
/openbmc/qemu/tests/data/acpi/q35/APIC.acpihmat-noinitiator
/openbmc/qemu/tests/data/acpi/q35/APIC.core-count2
/openbmc/qemu/tests/data/acpi/q35/APIC.cphp
/openbmc/qemu/tests/data/acpi/q35/APIC.dimmpxm
/openbmc/qemu/tests/data/acpi/q35/APIC.xapic
/openbmc/qemu/tests/decode/err_field10.decode
/openbmc/qemu/tests/decode/err_field7.decode
/openbmc/qemu/tests/decode/err_field8.decode
/openbmc/qemu/tests/decode/err_field9.decode
/openbmc/qemu/tests/decode/meson.build
/openbmc/qemu/tests/decode/succ_named_field.decode
/openbmc/qemu/tests/docker/Makefile.include
/openbmc/qemu/tests/docker/dockerfiles/alpine.docker
/openbmc/qemu/tests/docker/dockerfiles/centos8.docker
/openbmc/qemu/tests/docker/dockerfiles/debian-all-test-cross.docker
/openbmc/qemu/tests/docker/dockerfiles/debian-amd64-cross.docker
/openbmc/qemu/tests/docker/dockerfiles/debian-amd64.docker
/openbmc/qemu/tests/docker/dockerfiles/debian-arm64-cross.docker
/openbmc/qemu/tests/docker/dockerfiles/debian-armel-cross.docker
/openbmc/qemu/tests/docker/dockerfiles/debian-armhf-cross.docker
/openbmc/qemu/tests/docker/dockerfiles/debian-hexagon-cross.docker
/openbmc/qemu/tests/docker/dockerfiles/debian-mips64el-cross.docker
/openbmc/qemu/tests/docker/dockerfiles/debian-mipsel-cross.docker
/openbmc/qemu/tests/docker/dockerfiles/debian-ppc64el-cross.docker
/openbmc/qemu/tests/docker/dockerfiles/debian-riscv64-cross.docker
/openbmc/qemu/tests/docker/dockerfiles/debian-s390x-cross.docker
/openbmc/qemu/tests/docker/dockerfiles/debian-tricore-cross.docker
/openbmc/qemu/tests/docker/dockerfiles/debian-xtensa-cross.docker
/openbmc/qemu/tests/docker/dockerfiles/fedora-win32-cross.docker
/openbmc/qemu/tests/docker/dockerfiles/fedora-win64-cross.docker
/openbmc/qemu/tests/docker/dockerfiles/fedora.docker
/openbmc/qemu/tests/docker/dockerfiles/opensuse-leap.docker
/openbmc/qemu/tests/docker/dockerfiles/ubuntu2004.docker
/openbmc/qemu/tests/docker/dockerfiles/ubuntu2204.docker
/openbmc/qemu/tests/guest-debug/run-test.py
/openbmc/qemu/tests/lcitool/libvirt-ci
/openbmc/qemu/tests/lcitool/projects/qemu.yml
/openbmc/qemu/tests/meson.build
/openbmc/qemu/tests/migration/meson.build
/openbmc/qemu/tests/qapi-schema/doc-bad-indent.err
/openbmc/qemu/tests/qapi-schema/doc-bad-indent.json
/openbmc/qemu/tests/qapi-schema/doc-good.json
/openbmc/qemu/tests/qapi-schema/doc-good.out
/openbmc/qemu/tests/qapi-schema/doc-interleaved-section.err
/openbmc/qemu/tests/qemu-iotests/049.out
/openbmc/qemu/tests/qemu-iotests/051.out
/openbmc/qemu/tests/qemu-iotests/051.pc.out
/openbmc/qemu/tests/qemu-iotests/172
/openbmc/qemu/tests/qemu-iotests/178.out.qcow2
/openbmc/qemu/tests/qemu-iotests/178.out.raw
/openbmc/qemu/tests/qemu-iotests/227.out
/openbmc/qemu/tests/qemu-iotests/245
/openbmc/qemu/tests/qemu-iotests/245.out
/openbmc/qemu/tests/qemu-iotests/256
/openbmc/qemu/tests/qemu-iotests/common.filter
/openbmc/qemu/tests/qemu-iotests/common.rc
/openbmc/qemu/tests/qemu-iotests/iotests.py
/openbmc/qemu/tests/qemu-iotests/meson.build
/openbmc/qemu/tests/qemu-iotests/tests/graph-changes-while-io
/openbmc/qemu/tests/qemu-iotests/tests/graph-changes-while-io.out
/openbmc/qemu/tests/qemu-iotests/tests/iothreads-create
/openbmc/qemu/tests/qemu-iotests/tests/iothreads-create.out
/openbmc/qemu/tests/qemu-iotests/tests/iothreads-resize
/openbmc/qemu/tests/qemu-iotests/tests/iothreads-resize.out
/openbmc/qemu/tests/qemu-iotests/tests/iov-padding
/openbmc/qemu/tests/qemu-iotests/tests/iov-padding.out
/openbmc/qemu/tests/qemu-iotests/tests/nbd-reconnect-on-open
/openbmc/qemu/tests/qemu-iotests/tests/nbd-reconnect-on-open.out
/openbmc/qemu/tests/qemu-iotests/tests/zoned
/openbmc/qemu/tests/qemu-iotests/tests/zoned.out
/openbmc/qemu/tests/qtest/ac97-test.c
/openbmc/qemu/tests/qtest/ahci-test.c
/openbmc/qemu/tests/qtest/bios-tables-test.c
/openbmc/qemu/tests/qtest/boot-order-test.c
/openbmc/qemu/tests/qtest/cdrom-test.c
/openbmc/qemu/tests/qtest/cxl-test.c
/openbmc/qemu/tests/qtest/device-plug-test.c
/openbmc/qemu/tests/qtest/fdc-test.c
/openbmc/qemu/tests/qtest/fuzz-lsi53c895a-test.c
/openbmc/qemu/tests/qtest/ide-test.c
/openbmc/qemu/tests/qtest/libqos/igb.c
/openbmc/qemu/tests/qtest/libqos/virtio-9p-client.c
/openbmc/qemu/tests/qtest/libqtest.c
/openbmc/qemu/tests/qtest/libqtest.h
/openbmc/qemu/tests/qtest/meson.build
/openbmc/qemu/tests/qtest/migration-helpers.c
/openbmc/qemu/tests/qtest/migration-helpers.h
/openbmc/qemu/tests/qtest/migration-test.c
/openbmc/qemu/tests/qtest/netdev-socket.c
/openbmc/qemu/tests/qtest/readconfig-test.c
/openbmc/qemu/tests/qtest/rtl8139-test.c
/openbmc/qemu/tests/qtest/test-filter-mirror.c
/openbmc/qemu/tests/qtest/test-filter-redirector.c
/openbmc/qemu/tests/qtest/usb-hcd-ehci-test.c
/openbmc/qemu/tests/qtest/usb-hcd-uhci-test.c
/openbmc/qemu/tests/qtest/virtio-blk-test.c
/openbmc/qemu/tests/qtest/virtio-ccw-test.c
/openbmc/qemu/tests/requirements.txt
/openbmc/qemu/tests/tcg/hexagon/Makefile.target
/openbmc/qemu/tests/tcg/hexagon/atomics.c
/openbmc/qemu/tests/tcg/hexagon/brev.c
/openbmc/qemu/tests/tcg/hexagon/circ.c
/openbmc/qemu/tests/tcg/hexagon/dual_stores.c
/openbmc/qemu/tests/tcg/hexagon/fpstuff.c
/openbmc/qemu/tests/tcg/hexagon/hex_sigsegv.c
/openbmc/qemu/tests/tcg/hexagon/hex_test.h
/openbmc/qemu/tests/tcg/hexagon/hvx_misc.c
/openbmc/qemu/tests/tcg/hexagon/invalid-slots.c
/openbmc/qemu/tests/tcg/hexagon/load_align.c
/openbmc/qemu/tests/tcg/hexagon/load_unpack.c
/openbmc/qemu/tests/tcg/hexagon/mem_noshuf.c
/openbmc/qemu/tests/tcg/hexagon/mem_noshuf_exception.c
/openbmc/qemu/tests/tcg/hexagon/misc.c
/openbmc/qemu/tests/tcg/hexagon/multi_result.c
/openbmc/qemu/tests/tcg/hexagon/overflow.c
/openbmc/qemu/tests/tcg/hexagon/preg_alias.c
/openbmc/qemu/tests/tcg/hexagon/read_write_overlap.c
/openbmc/qemu/tests/tcg/hexagon/reg_mut.c
/openbmc/qemu/tests/tcg/hexagon/usr.c
/openbmc/qemu/tests/tcg/hexagon/v68_hvx.c
/openbmc/qemu/tests/tcg/hexagon/v68_scalar.c
/openbmc/qemu/tests/tcg/hexagon/v69_hvx.c
/openbmc/qemu/tests/tcg/hexagon/v6mpy_ref.c.inc
/openbmc/qemu/tests/tcg/hexagon/v73_scalar.c
/openbmc/qemu/tests/tcg/i386/test-avx.py
/openbmc/qemu/tests/tcg/multiarch/system/Makefile.softmmu-target
/openbmc/qemu/tests/tcg/multiarch/system/memory.c
/openbmc/qemu/tests/tcg/ppc64/Makefile.target
/openbmc/qemu/tests/tcg/ppc64/vector.c
/openbmc/qemu/tests/tcg/s390x/Makefile.softmmu-target
/openbmc/qemu/tests/tcg/s390x/Makefile.target
/openbmc/qemu/tests/tcg/s390x/console.c
/openbmc/qemu/tests/tcg/s390x/ex-branch.c
/openbmc/qemu/tests/tcg/s390x/head64.S
/openbmc/qemu/tests/unit/meson.build
/openbmc/qemu/tests/unit/test-aio-multithread.c
/openbmc/qemu/tests/unit/test-aio.c
/openbmc/qemu/tests/unit/test-bdrv-drain.c
/openbmc/qemu/tests/unit/test-block-iothread.c
/openbmc/qemu/tests/unit/test-cutils.c
/openbmc/qemu/tests/unit/test-nested-aio-poll.c
/openbmc/qemu/tests/unit/test-xbzrle.c
/openbmc/qemu/tests/vm/Makefile.include
/openbmc/qemu/tests/vm/netbsd
/openbmc/qemu/trace-events
/openbmc/qemu/trace/control-internal.h
/openbmc/qemu/trace/control-target.c
/openbmc/qemu/trace/control.c
/openbmc/qemu/trace/control.h
/openbmc/qemu/trace/event-internal.h
/openbmc/qemu/trace/qmp.c
/openbmc/qemu/trace/trace-hmp-cmds.c
/openbmc/qemu/ui/console.c
/openbmc/qemu/ui/cursor.c
/openbmc/qemu/ui/dbus-listener.c
/openbmc/qemu/ui/gtk-egl.c
/openbmc/qemu/ui/gtk-gl-area.c
/openbmc/qemu/ui/gtk.c
/openbmc/qemu/ui/input.c
/openbmc/qemu/ui/meson.build
/openbmc/qemu/ui/sdl2-gl.c
/openbmc/qemu/ui/sdl2.c
/openbmc/qemu/ui/trace-events
/openbmc/qemu/ui/vnc.c
/openbmc/qemu/util/aio-posix.c
/openbmc/qemu/util/aio-posix.h
/openbmc/qemu/util/aio-wait.c
/openbmc/qemu/util/aio-win32.c
/openbmc/qemu/util/async-teardown.c
/openbmc/qemu/util/async.c
/openbmc/qemu/util/bufferiszero.c
/openbmc/qemu/util/coroutine-windows.c
/openbmc/qemu/util/cpuinfo-aarch64.c
/openbmc/qemu/util/cpuinfo-i386.c
/openbmc/qemu/util/crc32c.c
/openbmc/qemu/util/cutils.c
/openbmc/qemu/util/fdmon-epoll.c
/openbmc/qemu/util/fdmon-io_uring.c
/openbmc/qemu/util/fdmon-poll.c
/openbmc/qemu/util/guest-random.c
/openbmc/qemu/util/iov.c
/openbmc/qemu/util/main-loop.c
/openbmc/qemu/util/meson.build
/openbmc/qemu/util/oslib-win32.c
/openbmc/qemu/util/qemu-coroutine-io.c
/openbmc/qemu/util/qemu-sockets.c
/openbmc/qemu/util/qsp.c
/openbmc/qemu/util/rcu.c
/openbmc/qemu/util/vfio-helpers.c
/openbmc/qemu/util/vhost-user-server.c
e1d084a818-Apr-2023 Rahul Pathak <rpathak@ventanamicro.com>

target/riscv: add Ventana's Veyron V1 CPU

Add a virtual CPU for Ventana's first CPU named veyron-v1. It runs
exclusively for the rv64 target. It's tested with the 'virt' board.

CPU specs and genera

target/riscv: add Ventana's Veyron V1 CPU

Add a virtual CPU for Ventana's first CPU named veyron-v1. It runs
exclusively for the rv64 target. It's tested with the 'virt' board.

CPU specs and general information can be found here:

https://www.nextplatform.com/2023/02/02/the-first-risc-v-shot-across-the-datacenter-bow/

Signed-off-by: Rahul Pathak <rpathak@ventanamicro.com>
Signed-off-by: Mayuresh Chitale <mchitale@ventanamicro.com>
Signed-off-by: Daniel Henrique Barboza <dbarboza@ventanamicro.com>
Acked-by: Alistair Francis <alistair.francis@wdc.com>
Message-Id: <20230418123624.16414-1-dbarboza@ventanamicro.com>
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>

show more ...

190e9f8e20-Apr-2023 Alexandre Ghiti <alexghiti@rivosinc.com>

riscv: Make sure an exception is raised if a pte is malformed

As per the specification, in 64-bit, if any of the pte reserved bits
60-54 is set an exception should be triggered (see 4.4.1, "Addressi

riscv: Make sure an exception is raised if a pte is malformed

As per the specification, in 64-bit, if any of the pte reserved bits
60-54 is set an exception should be triggered (see 4.4.1, "Addressing and
Memory Protection"). In addition, we must check the napot/pbmt bits are
not set if those extensions are not active.

Reported-by: Andrea Parri <andrea@rivosinc.com>
Signed-off-by: Alexandre Ghiti <alexghiti@rivosinc.com>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Message-Id: <20230420150220.60919-1-alexghiti@rivosinc.com>
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>

show more ...

7bf14a2f18-Apr-2023 Irina Ryapolova <irina.ryapolova@syntacore.com>

target/riscv: Fix Guest Physical Address Translation

Before changing the flow check for sv39/48/57.

According to specification (for Supervisor mode):
Sv39 implementations support a 39-bit virtual a

target/riscv: Fix Guest Physical Address Translation

Before changing the flow check for sv39/48/57.

According to specification (for Supervisor mode):
Sv39 implementations support a 39-bit virtual address space, divided into 4 KiB
pages.
Instruction fetch addresses and load and store effective addresses, which are
64 bits,
must have bits 63–39 all equal to bit 38, or else a page-fault exception will
occur.
Likewise for Sv48 and Sv57.

So the high bits are equal to bit 38 for sv39.

According to specification (for Hypervisor mode):
For Sv39x4, address bits of the guest physical address 63:41 must all be zeros,
or else a
guest-page-fault exception occurs.

Likewise for Sv48x4 and Sv57x4.
For Sv48x4 address bits 63:50 must all be zeros, or else a guest-page-fault
exception occurs.
For Sv57x4 address bits 63:59 must all be zeros, or else a guest-page-fault
exception occurs.

For example we are trying to access address 0xffff_ffff_ff01_0000 with only
G-translation enabled.
So expected behavior is to generate exception. But qemu doesn't generate such
exception.

For the old check, we get
va_bits == 41, mask == (1 << 24) - 1, masked_msbs == (0xffff_ffff_ff01_0000 >>
40) & mask == mask.
Accordingly, the condition masked_msbs != 0 && masked_msbs != mask is not
fulfilled
and the check passes.

Signed-off-by: Irina Ryapolova <irina.ryapolova@syntacore.com>
Reviewed-by: Weiwei Li <liweiwei@iscas.ac.cn>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Message-Id: <20230418075423.26217-1-irina.ryapolova@syntacore.com>
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>

show more ...

eae04c4c16-Apr-2023 Bin Meng <bmeng@tinylab.org>

target/riscv: Restore the predicate() NULL check behavior

When reading a non-existent CSR QEMU should raise illegal instruction
exception, but currently it just exits due to the g_assert() check.

T

target/riscv: Restore the predicate() NULL check behavior

When reading a non-existent CSR QEMU should raise illegal instruction
exception, but currently it just exits due to the g_assert() check.

This actually reverts commit 0ee342256af9205e7388efdf193a6d8f1ba1a617.
Some comments are also added to indicate that predicate() must be
provided for an implemented CSR.

Reported-by: Fei Wu <fei2.wu@intel.com>
Signed-off-by: Bin Meng <bmeng@tinylab.org>
Reviewed-by: Daniel Henrique Barboza <dbarboza@ventanamicro.com>
Reviewed-by: Weiwei Li <liweiwei@iscas.ac.cn>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Reviewed-by: LIU Zhiwei <zhiwei_liu@linux.alibaba.com>
Message-Id: <20230417043054.3125614-1-bmeng@tinylab.org>
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>

show more ...

9e1a30d311-Apr-2023 Daniel Henrique Barboza <dbarboza@ventanamicro.com>

target/riscv: add TYPE_RISCV_DYNAMIC_CPU

This new abstract type will be used to differentiate between static and
non-static CPUs in query-cpu-definitions.

All generic CPUs were changed to be of thi

target/riscv: add TYPE_RISCV_DYNAMIC_CPU

This new abstract type will be used to differentiate between static and
non-static CPUs in query-cpu-definitions.

All generic CPUs were changed to be of this type. Named CPUs are kept as
TYPE_RISCV_CPU and will still be considered static.

This is the output of query-cpu-definitions after this change for the
riscv64 target:

$ ./build/qemu-system-riscv64 -S -M virt -display none -qmp stdio
{"QMP": {"version": (...)}
{"execute": "qmp_capabilities", "arguments": {"enable": ["oob"]}}
{"return": {}}
{"execute": "query-cpu-definitions"}
{"return": [
{"name": "rv64", "typename": "rv64-riscv-cpu", "static": false, "deprecated": false},
{"name": "sifive-e51", "typename": "sifive-e51-riscv-cpu", "static": true, "deprecated": false},
{"name": "any", "typename": "any-riscv-cpu", "static": false, "deprecated": false},
{"name": "x-rv128", "typename": "x-rv128-riscv-cpu", "static": false, "deprecated": false},
{"name": "shakti-c", "typename": "shakti-c-riscv-cpu", "static": true, "deprecated": false},
{"name": "thead-c906", "typename": "thead-c906-riscv-cpu", "static": true, "deprecated": false},
{"name": "sifive-u54", "typename": "sifive-u54-riscv-cpu", "static": true, "deprecated": false}
]}

Suggested-by: Richard Henderson <richard.henderson@linaro.org>
Signed-off-by: Daniel Henrique Barboza <dbarboza@ventanamicro.com>
Acked-by: Alistair Francis <alistair.francis@wdc.com>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-Id: <20230411183511.189632-4-dbarboza@ventanamicro.com>
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>

show more ...

c0177f9111-Apr-2023 Daniel Henrique Barboza <dbarboza@ventanamicro.com>

target/riscv: add query-cpy-definitions support

This command is used by tooling like libvirt to retrieve a list of
supported CPUs. Each entry returns a CpuDefinitionInfo object that
contains more in

target/riscv: add query-cpy-definitions support

This command is used by tooling like libvirt to retrieve a list of
supported CPUs. Each entry returns a CpuDefinitionInfo object that
contains more information about each CPU.

This initial support includes only the name of the CPU and its typename.
Here's what the command produces for the riscv64 target:

$ ./build/qemu-system-riscv64 -S -M virt -display none -qmp stdio
{"QMP": {"version": (...)}
{"execute": "qmp_capabilities", "arguments": {"enable": ["oob"]}}
{"return": {}}
{"execute": "query-cpu-definitions"}
{"return": [
{"name": "rv64", "typename": "rv64-riscv-cpu", "static": false, "deprecated": false},
{"name": "sifive-e51", "typename": "sifive-e51-riscv-cpu", "static": false, "deprecated": false},
{"name": "any", "typename": "any-riscv-cpu", "static": false, "deprecated": false},
{"name": "x-rv128", "typename": "x-rv128-riscv-cpu", "static": false, "deprecated": false},
{"name": "shakti-c", "typename": "shakti-c-riscv-cpu", "static": false, "deprecated": false},
{"name": "thead-c906", "typename": "thead-c906-riscv-cpu", "static": false, "deprecated": false},
{"name": "sifive-u54", "typename": "sifive-u54-riscv-cpu", "static": false, "deprecated": false}]
}

Next patch will introduce a way to tell whether a given CPU is static or
not.

Signed-off-by: Daniel Henrique Barboza <dbarboza@ventanamicro.com>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Message-Id: <20230411183511.189632-3-dbarboza@ventanamicro.com>
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>

show more ...

85840bd211-Apr-2023 Daniel Henrique Barboza <dbarboza@ventanamicro.com>

target/riscv: add CPU QOM header

QMP CPU commands are usually implemented by a separated file,
<arch>-qmp-cmds.c, to allow them to be build only for softmmu targets.
This file uses a CPU QOM header

target/riscv: add CPU QOM header

QMP CPU commands are usually implemented by a separated file,
<arch>-qmp-cmds.c, to allow them to be build only for softmmu targets.
This file uses a CPU QOM header with basic QOM declarations for the
arch.

We'll introduce query-cpu-definitions for RISC-V CPUs in the next patch,
but first we need a cpu-qom.h header with the definitions of
TYPE_RISCV_CPU and RISCVCPUClass declarations. These were moved from
cpu.h to the new file, and cpu.h now includes "cpu-qom.h".

Signed-off-by: Daniel Henrique Barboza <dbarboza@ventanamicro.com>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Message-Id: <20230411183511.189632-2-dbarboza@ventanamicro.com>
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>

show more ...

38303e8a12-Apr-2023 Richard Henderson <richard.henderson@linaro.org>

target/riscv: Reorg sum check in get_physical_address

Implement this by adjusting prot, which reduces the set of
checks required. This prevents exec to be set for U pages
in MMUIdx_S_SUM. While it

target/riscv: Reorg sum check in get_physical_address

Implement this by adjusting prot, which reduces the set of
checks required. This prevents exec to be set for U pages
in MMUIdx_S_SUM. While it had been technically incorrect,
it did not manifest as a bug, because we will never attempt
to execute from MMUIdx_S_SUM.

Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Reviewed-by: Weiwei Li <liweiwei@iscas.ac.cn>
Tested-by: Daniel Henrique Barboza <dbarboza@ventanamicro.com>
Message-Id: <20230325105429.1142530-26-richard.henderson@linaro.org>
Message-Id: <20230412114333.118895-26-richard.henderson@linaro.org>
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>

show more ...

1...<<11121314151617181920>>...67