History log of /openbmc/qemu/target/riscv/ (Results 1101 – 1125 of 1666)
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
fbb4803219-Oct-2021 Richard Henderson <richard.henderson@linaro.org>

target/riscv: Use REQUIRE_64BIT in amo_check64

Use the same REQUIRE_64BIT check that we use elsewhere,
rather than open-coding the use of is_32bit.

Reviewed-by: LIU Zhiwei <zhiwei_liu@c-sky.com>
Re

target/riscv: Use REQUIRE_64BIT in amo_check64

Use the same REQUIRE_64BIT check that we use elsewhere,
rather than open-coding the use of is_32bit.

Reviewed-by: LIU Zhiwei <zhiwei_liu@c-sky.com>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20211020031709.359469-7-richard.henderson@linaro.org
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>

show more ...

92371bd919-Oct-2021 Richard Henderson <richard.henderson@linaro.org>

target/riscv: Add MXL/SXL/UXL to TB_FLAGS

Begin adding support for switching XLEN at runtime. Extract the
effective XLEN from MISA and MSTATUS and store for use during translation.

Reviewed-by: LI

target/riscv: Add MXL/SXL/UXL to TB_FLAGS

Begin adding support for switching XLEN at runtime. Extract the
effective XLEN from MISA and MSTATUS and store for use during translation.

Reviewed-by: LIU Zhiwei <zhiwei_liu@c-sky.com>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20211020031709.359469-6-richard.henderson@linaro.org
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>

show more ...

db23e5d919-Oct-2021 Richard Henderson <richard.henderson@linaro.org>

target/riscv: Replace riscv_cpu_is_32bit with riscv_cpu_mxl

Shortly, the set of supported XL will not be just 32 and 64,
and representing that properly using the enumeration will be
imperative.

Two

target/riscv: Replace riscv_cpu_is_32bit with riscv_cpu_mxl

Shortly, the set of supported XL will not be just 32 and 64,
and representing that properly using the enumeration will be
imperative.

Two places, booting and gdb, intentionally use misa_mxl_max
to emphasize the use of the reset value of misa.mxl, and not
the current cpu state.

Reviewed-by: LIU Zhiwei <zhiwei_liu@c-sky.com>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20211020031709.359469-5-richard.henderson@linaro.org
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>

show more ...

e91a722719-Oct-2021 Richard Henderson <richard.henderson@linaro.org>

target/riscv: Split misa.mxl and misa.ext

The hw representation of misa.mxl is at the high bits of the
misa csr. Representing this in the same way inside QEMU
results in overly complex code trying

target/riscv: Split misa.mxl and misa.ext

The hw representation of misa.mxl is at the high bits of the
misa csr. Representing this in the same way inside QEMU
results in overly complex code trying to check that field.

Reviewed-by: LIU Zhiwei <zhiwei_liu@c-sky.com>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20211020031709.359469-4-richard.henderson@linaro.org
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>

show more ...

99bc874f19-Oct-2021 Richard Henderson <richard.henderson@linaro.org>

target/riscv: Create RISCVMXL enumeration

Move the MXL_RV* defines to enumerators.

Reviewed-by: LIU Zhiwei <zhiwei_liu@c-sky.com>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Signed-off

target/riscv: Create RISCVMXL enumeration

Move the MXL_RV* defines to enumerators.

Reviewed-by: LIU Zhiwei <zhiwei_liu@c-sky.com>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20211020031709.359469-3-richard.henderson@linaro.org
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>

show more ...

53677acf19-Oct-2021 Richard Henderson <richard.henderson@linaro.org>

target/riscv: Move cpu_get_tb_cpu_state out of line

Move the function to cpu_helper.c, as it is large and growing.

Reviewed-by: LIU Zhiwei <zhiwei_liu@c-sky.com>
Reviewed-by: Alistair Francis <alis

target/riscv: Move cpu_get_tb_cpu_state out of line

Move the function to cpu_helper.c, as it is large and growing.

Reviewed-by: LIU Zhiwei <zhiwei_liu@c-sky.com>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20211020031709.359469-2-richard.henderson@linaro.org
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>

show more ...

9d3d60b717-Oct-2021 Alistair Francis <alistair.francis@wdc.com>

target/riscv: Organise the CPU properties

Organise the CPU properties so that standard extensions come first
then followed by experimental extensions.

Signed-off-by: Alistair Francis <alistair.fran

target/riscv: Organise the CPU properties

Organise the CPU properties so that standard extensions come first
then followed by experimental extensions.

Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
Reviewed-by: Frank Chang <frank.chang@sifive.com>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Message-id: b6598570f60c5ee7f402be56d837bb44b289cc4d.1634531504.git.alistair.francis@wdc.com

show more ...

31dbcff717-Oct-2021 Alistair Francis <alistair.francis@wdc.com>

target/riscv: Remove some unused macros

Since commit 1a9540d1f1a
("target/riscv: Drop support for ISA spec version 1.09.1")
these definitions are unused, remove them.

Signed-off-by: Alistair Franci

target/riscv: Remove some unused macros

Since commit 1a9540d1f1a
("target/riscv: Drop support for ISA spec version 1.09.1")
these definitions are unused, remove them.

Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
Reviewed-by: Frank Chang <frank.chang@sifive.com>
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Message-id: f4d8a7a035f39c0a35d44c1e371c5c99cc2fa15a.1634531504.git.alistair.francis@wdc.com

show more ...

61d5649415-Oct-2021 Frank Chang <frank.chang@sifive.com>

target/riscv: fix TB_FLAGS bits overlapping bug for rvv/rvh

TB_FLAGS mem_idx bits was extended from 2 bits to 3 bits in
commit: c445593, but other TB_FLAGS bits for rvv and rvh were
not shift as wel

target/riscv: fix TB_FLAGS bits overlapping bug for rvv/rvh

TB_FLAGS mem_idx bits was extended from 2 bits to 3 bits in
commit: c445593, but other TB_FLAGS bits for rvv and rvh were
not shift as well so these bits may overlap with each other when
rvv is enabled.

Signed-off-by: Frank Chang <frank.chang@sifive.com>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Message-Id: <20211015074627.3957162-2-frank.chang@sifive.com>
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>

show more ...

54c1760913-Oct-2021 Philipp Tomsich <philipp.tomsich@vrull.eu>

target/riscv: Fix orc.b implementation

The earlier implementation fell into a corner case for bytes that were
0x01, giving a wrong result (but not affecting our application test
cases for strings, a

target/riscv: Fix orc.b implementation

The earlier implementation fell into a corner case for bytes that were
0x01, giving a wrong result (but not affecting our application test
cases for strings, as an ASCII value 0x01 is rare in those...).

This changes the algorithm to:
1. Mask out the high-bit of each bytes (so that each byte is <= 127).
2. Add 127 to each byte (i.e. if the low 7 bits are not 0, this will overflow
into the highest bit of each byte).
3. Bitwise-or the original value back in (to cover those cases where the
source byte was exactly 128) to saturate the high-bit.
4. Shift-and-mask (implemented as a mask-and-shift) to extract the MSB of
each byte into its LSB.
5. Multiply with 0xff to fan out the LSB to all bits of each byte.

Fixes: d7a4fcb034 ("target/riscv: Add orc.b instruction for Zbb, removing gorc/gorci")

Signed-off-by: Philipp Tomsich <philipp.tomsich@vrull.eu>
Reported-by: Vincent Palatin <vpalatin@rivosinc.com>
Tested-by: Vincent Palatin <vpalatin@rivosinc.com>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20211013184125.2010897-1-philipp.tomsich@vrull.eu
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>

show more ...

e573a7f309-Oct-2021 Travis Geiselbrecht <travisg@gmail.com>

target/riscv: line up all of the registers in the info register dump

Ensure the columns for all of the register names and values line up.
No functional change, just a minor tweak to the output.

Sig

target/riscv: line up all of the registers in the info register dump

Ensure the columns for all of the register names and values line up.
No functional change, just a minor tweak to the output.

Signed-off-by: Travis Geiselbrecht <travisg@gmail.com>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Message-id: 20211009055019.545153-1-travisg@gmail.com
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>

show more ...

c672f19f07-Oct-2021 Frank Chang <frank.chang@sifive.com>

target/riscv: Pass the same value to oprsz and maxsz for vmv.v.v

oprsz and maxsz are passed with the same value in commit: eee2d61e202.
However, vmv.v.v was missed in that commit and should pass the

target/riscv: Pass the same value to oprsz and maxsz for vmv.v.v

oprsz and maxsz are passed with the same value in commit: eee2d61e202.
However, vmv.v.v was missed in that commit and should pass the same
value as well in its tcg_gen_gvec_2_ptr() call.

Signed-off-by: Frank Chang <frank.chang@sifive.com>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20211007081803.1705656-1-frank.chang@sifive.com
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>

show more ...


/openbmc/qemu/.gitlab-ci.d/edk2.yml
/openbmc/qemu/MAINTAINERS
/openbmc/qemu/bsd-user/errno_defs.h
/openbmc/qemu/bsd-user/freebsd/meson.build
/openbmc/qemu/bsd-user/freebsd/os-sys.c
/openbmc/qemu/bsd-user/freebsd/strace.list
/openbmc/qemu/bsd-user/freebsd/target_os_elf.h
/openbmc/qemu/bsd-user/freebsd/target_os_signal.h
/openbmc/qemu/bsd-user/freebsd/target_os_user.h
/openbmc/qemu/bsd-user/i386/target_arch_cpu.h
/openbmc/qemu/bsd-user/i386/target_arch_signal.h
/openbmc/qemu/bsd-user/main.c
/openbmc/qemu/bsd-user/meson.build
/openbmc/qemu/bsd-user/mmap.c
/openbmc/qemu/bsd-user/qemu.h
/openbmc/qemu/bsd-user/signal.c
/openbmc/qemu/bsd-user/syscall.c
/openbmc/qemu/bsd-user/x86_64/target_arch_cpu.h
/openbmc/qemu/bsd-user/x86_64/target_arch_signal.h
/openbmc/qemu/cpu.c
/openbmc/qemu/docs/system/device-emulation.rst
/openbmc/qemu/docs/system/devices/vhost-user-rng.rst
/openbmc/qemu/hw/acpi/aml-build.c
/openbmc/qemu/hw/arm/boot.c
/openbmc/qemu/hw/arm/sbsa-ref.c
/openbmc/qemu/hw/arm/virt-acpi-build.c
/openbmc/qemu/hw/arm/virt.c
/openbmc/qemu/hw/core/cpu-common.c
/openbmc/qemu/hw/core/loader.c
/openbmc/qemu/hw/ide/via.c
/openbmc/qemu/hw/intc/spapr_xive.c
/openbmc/qemu/hw/intc/spapr_xive_kvm.c
/openbmc/qemu/hw/intc/xive.c
/openbmc/qemu/hw/isa/vt82c686.c
/openbmc/qemu/hw/mips/boston.c
/openbmc/qemu/hw/net/vhost_net-stub.c
/openbmc/qemu/hw/net/vhost_net.c
/openbmc/qemu/hw/net/virtio-net.c
/openbmc/qemu/hw/pci-host/mv64361.c
/openbmc/qemu/hw/pci/pci_bridge.c
/openbmc/qemu/hw/ppc/pegasos2.c
/openbmc/qemu/hw/ppc/ppc.c
/openbmc/qemu/hw/ppc/ppc4xx_pci.c
/openbmc/qemu/hw/ppc/spapr_softmmu.c
/openbmc/qemu/hw/virtio/Kconfig
/openbmc/qemu/hw/virtio/meson.build
/openbmc/qemu/hw/virtio/trace-events
/openbmc/qemu/hw/virtio/vhost-user-rng-pci.c
/openbmc/qemu/hw/virtio/vhost-user-rng.c
/openbmc/qemu/hw/virtio/vhost-user.c
/openbmc/qemu/hw/virtio/vhost-vdpa.c
/openbmc/qemu/hw/virtio/virtio-iommu-pci.c
/openbmc/qemu/include/hw/acpi/aml-build.h
/openbmc/qemu/include/hw/arm/virt.h
/openbmc/qemu/include/hw/core/cpu.h
/openbmc/qemu/include/hw/elf_ops.h
/openbmc/qemu/include/hw/isa/vt82c686.h
/openbmc/qemu/include/hw/loader.h
/openbmc/qemu/include/hw/ppc/xive.h
/openbmc/qemu/include/hw/virtio/vhost-user-rng.h
/openbmc/qemu/include/hw/virtio/vhost-vdpa.h
/openbmc/qemu/include/hw/virtio/vhost.h
/openbmc/qemu/include/hw/virtio/virtio-iommu.h
/openbmc/qemu/include/hw/virtio/virtio-net.h
/openbmc/qemu/include/net/net.h
/openbmc/qemu/include/net/vhost_net.h
/openbmc/qemu/include/sysemu/device_tree.h
/openbmc/qemu/linux-user/elfload.c
/openbmc/qemu/linux-user/meson.build
/openbmc/qemu/linux-user/ppc/signal.c
/openbmc/qemu/meson.build
/openbmc/qemu/migration/migration.c
/openbmc/qemu/migration/multifd.c
/openbmc/qemu/migration/multifd.h
/openbmc/qemu/migration/ram.c
/openbmc/qemu/migration/rdma.c
/openbmc/qemu/migration/trace-events
/openbmc/qemu/net/net.c
/openbmc/qemu/net/vhost-vdpa.c
/openbmc/qemu/roms/Makefile
/openbmc/qemu/roms/Makefile.edk2
/openbmc/qemu/scripts/make-release
/openbmc/qemu/softmmu/device_tree.c
/openbmc/qemu/softmmu/qdev-monitor.c
/openbmc/qemu/subprojects/libvhost-user/libvhost-user.c
/openbmc/qemu/target/mips/tcg/msa_translate.c
/openbmc/qemu/target/mips/tcg/nanomips_translate.c.inc
/openbmc/qemu/target/mips/tcg/translate.c
/openbmc/qemu/target/ppc/cpu.c
/openbmc/qemu/target/ppc/cpu.h
/openbmc/qemu/target/ppc/cpu_init.c
/openbmc/qemu/target/ppc/gdbstub.c
/openbmc/qemu/target/ppc/helper_regs.c
/openbmc/qemu/target/ppc/monitor.c
/openbmc/qemu/target/ppc/power8-pmu-regs.c.inc
/openbmc/qemu/target/ppc/spr_tcg.h
/openbmc/qemu/target/ppc/translate.c
insn_trans/trans_rvv.c.inc
/openbmc/qemu/target/rx/helper.h
/openbmc/qemu/target/rx/op_helper.c
/openbmc/qemu/target/rx/translate.c
/openbmc/qemu/target/s390x/tcg/translate.c
/openbmc/qemu/target/sh4/helper.h
/openbmc/qemu/target/sh4/op_helper.c
/openbmc/qemu/target/sh4/translate.c
/openbmc/qemu/target/tricore/helper.h
/openbmc/qemu/target/tricore/op_helper.c
/openbmc/qemu/target/tricore/translate.c
/openbmc/qemu/target/xtensa/translate.c
/openbmc/qemu/tests/acceptance/ppc_405.py
/openbmc/qemu/tests/acceptance/ppc_bamboo.py
/openbmc/qemu/tests/data/acpi/q35/APIC.xapic
/openbmc/qemu/tests/data/acpi/q35/DMAR.dmar
/openbmc/qemu/tests/data/acpi/q35/DSDT.ivrs
/openbmc/qemu/tests/data/acpi/q35/DSDT.multi-bridge
/openbmc/qemu/tests/data/acpi/q35/DSDT.xapic
/openbmc/qemu/tests/data/acpi/q35/FACP.xapic
/openbmc/qemu/tests/data/acpi/q35/IVRS.ivrs
/openbmc/qemu/tests/data/acpi/q35/SRAT.xapic
/openbmc/qemu/tests/data/acpi/rebuild-expected-aml.sh
/openbmc/qemu/tests/data/acpi/virt/DBG2
/openbmc/qemu/tests/data/acpi/virt/IORT
/openbmc/qemu/tests/data/acpi/virt/IORT.memhp
/openbmc/qemu/tests/data/acpi/virt/IORT.numamem
/openbmc/qemu/tests/data/acpi/virt/IORT.pxb
/openbmc/qemu/tests/data/acpi/virt/PPTT
/openbmc/qemu/tests/qtest/acpi-utils.c
/openbmc/qemu/tests/qtest/arm-cpu-features.c
/openbmc/qemu/tests/qtest/bios-tables-test.c
/openbmc/qemu/tests/qtest/libqos/libqtest.h
/openbmc/qemu/tests/qtest/libqtest.c
/openbmc/qemu/tests/qtest/migration-test.c
/openbmc/qemu/tests/qtest/vhost-user-blk-test.c
/openbmc/qemu/tests/tcg/ppc64/Makefile.target
/openbmc/qemu/tests/tcg/ppc64le/Makefile.target
/openbmc/qemu/tests/tcg/ppc64le/signal_save_restore_xer.c
273b68b119-Jul-2021 Richard Henderson <richard.henderson@linaro.org>

target/riscv: Remove exit_tb and lookup_and_goto_ptr

GDB single-stepping is now handled generically, which means
we don't need to do anything in the wrappers.

Reviewed-by: Alistair Francis <alistai

target/riscv: Remove exit_tb and lookup_and_goto_ptr

GDB single-stepping is now handled generically, which means
we don't need to do anything in the wrappers.

Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>

show more ...

ea06a00619-Jul-2021 Richard Henderson <richard.henderson@linaro.org>

target/riscv: Remove dead code after exception

We have already set DISAS_NORETURN in generate_exception,
which makes the exit_tb unreachable.

Reviewed-by: Alistair Francis <alistair.francis@wdc.com

target/riscv: Remove dead code after exception

We have already set DISAS_NORETURN in generate_exception,
which makes the exit_tb unreachable.

Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>

show more ...


/openbmc/qemu/.github/workflows/lockdown.yml
/openbmc/qemu/.gitlab-ci.d/cirrus.yml
/openbmc/qemu/.gitlab-ci.d/cirrus/build.yml
/openbmc/qemu/.gitlab-ci.d/container-cross.yml
/openbmc/qemu/.gitlab-ci.d/crossbuilds.yml
/openbmc/qemu/.gitlab-ci.d/static_checks.yml
/openbmc/qemu/.travis.yml
/openbmc/qemu/Kconfig.host
/openbmc/qemu/MAINTAINERS
/openbmc/qemu/Makefile
/openbmc/qemu/accel/hvf/hvf-accel-ops.c
/openbmc/qemu/accel/kvm/meson.build
/openbmc/qemu/accel/tcg/cpu-exec.c
/openbmc/qemu/accel/tcg/cputlb.c
/openbmc/qemu/accel/tcg/ldst_common.c.inc
/openbmc/qemu/accel/tcg/plugin-gen.c
/openbmc/qemu/accel/tcg/user-exec.c
/openbmc/qemu/audio/meson.build
/openbmc/qemu/block/aio_task.c
/openbmc/qemu/block/backup.c
/openbmc/qemu/block/block-backend.c
/openbmc/qemu/block/coroutines.h
/openbmc/qemu/block/meson.build
/openbmc/qemu/block/mirror.c
/openbmc/qemu/block/qcow2-cluster.c
/openbmc/qemu/block/replication.c
/openbmc/qemu/block/trace-events
/openbmc/qemu/blockdev.c
/openbmc/qemu/chardev/meson.build
/openbmc/qemu/configure
/openbmc/qemu/docs/devel/build-system.rst
/openbmc/qemu/docs/devel/loads-stores.rst
/openbmc/qemu/docs/meson.build
/openbmc/qemu/dtc
/openbmc/qemu/hw/adc/aspeed_adc.c
/openbmc/qemu/hw/adc/meson.build
/openbmc/qemu/hw/adc/trace-events
/openbmc/qemu/hw/arm/aspeed.c
/openbmc/qemu/hw/arm/aspeed_ast2600.c
/openbmc/qemu/hw/arm/aspeed_soc.c
/openbmc/qemu/hw/arm/virt.c
/openbmc/qemu/hw/char/ibex_uart.c
/openbmc/qemu/hw/char/mchp_pfsoc_mmuart.c
/openbmc/qemu/hw/char/shakti_uart.c
/openbmc/qemu/hw/char/sifive_uart.c
/openbmc/qemu/hw/core/qdev-properties-system.c
/openbmc/qemu/hw/core/qdev.c
/openbmc/qemu/hw/display/macfb.c
/openbmc/qemu/hw/display/trace-events
/openbmc/qemu/hw/dma/sifive_pdma.c
/openbmc/qemu/hw/gpio/aspeed_gpio.c
/openbmc/qemu/hw/i2c/aspeed_i2c.c
/openbmc/qemu/hw/i386/pc_sysfw.c
/openbmc/qemu/hw/i386/sgx-stub.c
/openbmc/qemu/hw/i386/sgx.c
/openbmc/qemu/hw/i386/x86.c
/openbmc/qemu/hw/m68k/q800.c
/openbmc/qemu/hw/mem/Kconfig
/openbmc/qemu/hw/mem/meson.build
/openbmc/qemu/hw/misc/applesmc.c
/openbmc/qemu/hw/net/virtio-net.c
/openbmc/qemu/hw/pci-bridge/pci_expander_bridge.c
/openbmc/qemu/hw/ppc/e500.c
/openbmc/qemu/hw/riscv/shakti_c.c
/openbmc/qemu/hw/s390x/ipl.c
/openbmc/qemu/hw/ssi/aspeed_smc.c
/openbmc/qemu/hw/vfio/pci.c
/openbmc/qemu/hw/watchdog/trace-events
/openbmc/qemu/hw/watchdog/wdt_aspeed.c
/openbmc/qemu/hw/xen/xen-legacy-backend.c
/openbmc/qemu/include/exec/cpu_ldst.h
/openbmc/qemu/include/hw/adc/aspeed_adc.h
/openbmc/qemu/include/hw/arm/aspeed_soc.h
/openbmc/qemu/include/hw/char/mchp_pfsoc_mmuart.h
/openbmc/qemu/include/hw/display/macfb.h
/openbmc/qemu/include/hw/gpio/aspeed_gpio.h
/openbmc/qemu/include/hw/i2c/aspeed_i2c.h
/openbmc/qemu/include/hw/i386/sgx-epc.h
/openbmc/qemu/include/hw/qdev-core.h
/openbmc/qemu/include/hw/ssi/aspeed_smc.h
/openbmc/qemu/include/hw/virtio/virtio-net.h
/openbmc/qemu/include/monitor/hmp-target.h
/openbmc/qemu/include/monitor/hmp.h
/openbmc/qemu/include/monitor/qdev.h
/openbmc/qemu/include/net/net.h
/openbmc/qemu/include/qemu/job.h
/openbmc/qemu/include/sysemu/block-backend.h
/openbmc/qemu/include/tcg/tcg-ldst.h
/openbmc/qemu/include/tcg/tcg.h
/openbmc/qemu/iothread.c
/openbmc/qemu/job.c
/openbmc/qemu/meson.build
/openbmc/qemu/meson_options.txt
/openbmc/qemu/net/meson.build
/openbmc/qemu/net/vhost-user.c
/openbmc/qemu/net/vhost-vdpa.c
/openbmc/qemu/pc-bios/hppa-firmware.img
/openbmc/qemu/plugins/qemu-plugins.symbols
/openbmc/qemu/python/qemu/aqmp/__init__.py
/openbmc/qemu/python/qemu/aqmp/events.py
/openbmc/qemu/python/qemu/aqmp/models.py
/openbmc/qemu/python/qemu/aqmp/protocol.py
/openbmc/qemu/python/qemu/aqmp/qmp_client.py
/openbmc/qemu/python/qemu/machine/machine.py
/openbmc/qemu/python/qemu/machine/qtest.py
/openbmc/qemu/python/qemu/qmp/__init__.py
/openbmc/qemu/python/qemu/qmp/qmp_shell.py
/openbmc/qemu/qapi/misc-target.json
/openbmc/qemu/qapi/qdev.json
/openbmc/qemu/qapi/qom.json
/openbmc/qemu/qom/object.c
/openbmc/qemu/qom/object_interfaces.c
/openbmc/qemu/roms/seabios-hppa
/openbmc/qemu/scripts/block-coroutine-wrapper.py
/openbmc/qemu/scripts/meson-buildoptions.py
/openbmc/qemu/scripts/meson-buildoptions.sh
/openbmc/qemu/scripts/meson.build
/openbmc/qemu/softmmu/memory.c
/openbmc/qemu/softmmu/qdev-monitor.c
/openbmc/qemu/softmmu/vl.c
/openbmc/qemu/stubs/meson.build
/openbmc/qemu/target/alpha/translate.c
/openbmc/qemu/target/arm/helper-a64.c
/openbmc/qemu/target/arm/m_helper.c
/openbmc/qemu/target/arm/translate-a64.c
/openbmc/qemu/target/arm/translate.c
/openbmc/qemu/target/avr/translate.c
/openbmc/qemu/target/cris/translate.c
/openbmc/qemu/target/hexagon/cpu.h
/openbmc/qemu/target/hexagon/translate.c
/openbmc/qemu/target/hppa/translate.c
/openbmc/qemu/target/i386/cpu.c
/openbmc/qemu/target/i386/helper.h
/openbmc/qemu/target/i386/kvm/kvm.c
/openbmc/qemu/target/i386/kvm/meson.build
/openbmc/qemu/target/i386/kvm/sev-stub.c
/openbmc/qemu/target/i386/meson.build
/openbmc/qemu/target/i386/monitor.c
/openbmc/qemu/target/i386/sev-sysemu-stub.c
/openbmc/qemu/target/i386/sev.c
/openbmc/qemu/target/i386/sev.h
/openbmc/qemu/target/i386/tcg/mem_helper.c
/openbmc/qemu/target/i386/tcg/misc_helper.c
/openbmc/qemu/target/i386/tcg/translate.c
/openbmc/qemu/target/m68k/op_helper.c
/openbmc/qemu/target/m68k/translate.c
/openbmc/qemu/target/microblaze/translate.c
/openbmc/qemu/target/mips/tcg/msa_helper.c
/openbmc/qemu/target/mips/tcg/translate.c
/openbmc/qemu/target/openrisc/translate.c
/openbmc/qemu/target/ppc/mem_helper.c
/openbmc/qemu/target/ppc/translate.c
insn_trans/trans_privileged.c.inc
/openbmc/qemu/target/s390x/sigp.c
/openbmc/qemu/target/s390x/tcg/mem_helper.c
/openbmc/qemu/target/s390x/tcg/translate.c
/openbmc/qemu/target/sparc/ldst_helper.c
/openbmc/qemu/tcg/tcg-op.c
/openbmc/qemu/tcg/tcg.c
/openbmc/qemu/tcg/tci.c
/openbmc/qemu/tests/Makefile.include
/openbmc/qemu/tests/docker/Makefile.include
/openbmc/qemu/tests/docker/common.rc
/openbmc/qemu/tests/docker/dockerfiles/debian-native.docker
/openbmc/qemu/tests/docker/dockerfiles/debian-riscv64-cross.docker
/openbmc/qemu/tests/meson.build
/openbmc/qemu/tests/qemu-iotests/051
/openbmc/qemu/tests/qemu-iotests/051.pc.out
/openbmc/qemu/tests/qemu-iotests/109.out
/openbmc/qemu/tests/qemu-iotests/245
/openbmc/qemu/tests/qemu-iotests/iotests.py
/openbmc/qemu/tests/qemu-iotests/testenv.py
/openbmc/qemu/tests/qemu-iotests/testrunner.py
/openbmc/qemu/tests/qemu-iotests/tests/mirror-ready-cancel-error
/openbmc/qemu/tests/qemu-iotests/tests/mirror-ready-cancel-error.out
/openbmc/qemu/tests/qemu-iotests/tests/qsd-jobs.out
/openbmc/qemu/tests/qtest/fuzz/meson.build
/openbmc/qemu/tests/tcg/multiarch/Makefile.target
/openbmc/qemu/tests/tcg/multiarch/libs/float_helpers.c
/openbmc/qemu/tests/tcg/multiarch/linux/linux-test.c
/openbmc/qemu/tests/tcg/multiarch/sha1.c
/openbmc/qemu/tests/tcg/x86_64/Makefile.target
/openbmc/qemu/tests/tcg/x86_64/system/kernel.ld
/openbmc/qemu/tests/unit/test-blockjob.c
/openbmc/qemu/trace/meson.build
/openbmc/qemu/trace/simple.c
/openbmc/qemu/ui/meson.build
/openbmc/qemu/util/compatfd.c
/openbmc/qemu/util/meson.build
/openbmc/qemu/util/qemu-option.c
/openbmc/qemu/util/qemu-thread-posix.c
a88f040220-Sep-2021 Frank Chang <frank.chang@sifive.com>

target/riscv: Set mstatus_hs.[SD|FS] bits if Clean and V=1 in mark_fs_dirty()

When V=1, both vsstauts.FS and HS-level sstatus.FS are in effect.
Modifying the floating-point state when V=1 causes bot

target/riscv: Set mstatus_hs.[SD|FS] bits if Clean and V=1 in mark_fs_dirty()

When V=1, both vsstauts.FS and HS-level sstatus.FS are in effect.
Modifying the floating-point state when V=1 causes both fields to
be set to 3 (Dirty).

However, it's possible that HS-level sstatus.FS is Clean and VS-level
vsstatus.FS is Dirty at the time mark_fs_dirty() is called when V=1.
We can't early return for this case because we still need to set
sstatus.FS to Dirty according to spec.

Signed-off-by: Frank Chang <frank.chang@sifive.com>
Reviewed-by: Vincent Chen <vincent.chen@sifive.com>
Tested-by: Vincent Chen <vincent.chen@sifive.com>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Message-id: 20210921020234.123448-1-frank.chang@sifive.com
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>

show more ...

9916ea3c11-Sep-2021 Philipp Tomsich <philipp.tomsich@vrull.eu>

target/riscv: Remove RVB (replaced by Zb[abcs])

With everything classified as Zb[abcs] and pre-0.93 draft-B
instructions that are not part of Zb[abcs] removed, we can remove the
remaining support co

target/riscv: Remove RVB (replaced by Zb[abcs])

With everything classified as Zb[abcs] and pre-0.93 draft-B
instructions that are not part of Zb[abcs] removed, we can remove the
remaining support code for RVB.

Note that RVB has been retired for good and misa.B will neither mean
'some' or 'all of' Zb*:
https://lists.riscv.org/g/tech-bitmanip/message/532

Signed-off-by: Philipp Tomsich <philipp.tomsich@vrull.eu>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Message-id: 20210911140016.834071-16-philipp.tomsich@vrull.eu
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>

show more ...

06dfa8a511-Sep-2021 Philipp Tomsich <philipp.tomsich@vrull.eu>

target/riscv: Add zext.h instructions to Zbb, removing pack/packu/packh

The 1.0.0 version of Zbb does not contain pack/packu/packh. However, a
zext.h instruction is provided (built on pack/packh fro

target/riscv: Add zext.h instructions to Zbb, removing pack/packu/packh

The 1.0.0 version of Zbb does not contain pack/packu/packh. However, a
zext.h instruction is provided (built on pack/packh from pre-0.93
draft-B) is available.

This commit adds zext.h and removes the pack* instructions.

Note that the encodings for zext.h are different between RV32 and
RV64, which is handled through REQUIRE_32BIT.

Signed-off-by: Philipp Tomsich <philipp.tomsich@vrull.eu>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Message-id: 20210911140016.834071-15-philipp.tomsich@vrull.eu
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>

show more ...

a1095bdc11-Sep-2021 Philipp Tomsich <philipp.tomsich@vrull.eu>

target/riscv: Add rev8 instruction, removing grev/grevi

The 1.0.0 version of Zbb does not contain grev/grevi. Instead, a
rev8 instruction (equivalent to the rev8 pseudo-instruction built on
grevi f

target/riscv: Add rev8 instruction, removing grev/grevi

The 1.0.0 version of Zbb does not contain grev/grevi. Instead, a
rev8 instruction (equivalent to the rev8 pseudo-instruction built on
grevi from pre-0.93 draft-B) is available.

This commit adds the new rev8 instruction and removes grev/grevi.

Note that there is no W-form of this instruction (both a
sign-extending and zero-extending 32-bit version can easily be
synthesized by following rev8 with either a srai or srli instruction
on RV64) and that the opcode encodings for rev8 in RV32 and RV64 are
different.

Signed-off-by: Philipp Tomsich <philipp.tomsich@vrull.eu>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Message-id: 20210911140016.834071-14-philipp.tomsich@vrull.eu
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>

show more ...

7e68e6c711-Sep-2021 Philipp Tomsich <philipp.tomsich@vrull.eu>

target/riscv: Add a REQUIRE_32BIT macro

With the changes to Zb[abcs], there's some encodings that are
different in RV64 and RV32 (e.g., for rev8 and zext.h). For these,
we'll need a helper macro all

target/riscv: Add a REQUIRE_32BIT macro

With the changes to Zb[abcs], there's some encodings that are
different in RV64 and RV32 (e.g., for rev8 and zext.h). For these,
we'll need a helper macro allowing us to select on RV32, as well.

Signed-off-by: Philipp Tomsich <philipp.tomsich@vrull.eu>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Message-id: 20210911140016.834071-13-philipp.tomsich@vrull.eu
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>

show more ...

d7a4fcb011-Sep-2021 Philipp Tomsich <philipp.tomsich@vrull.eu>

target/riscv: Add orc.b instruction for Zbb, removing gorc/gorci

The 1.0.0 version of Zbb does not contain gorc/gorci. Instead, a
orc.b instruction (equivalent to the orc.b pseudo-instruction built

target/riscv: Add orc.b instruction for Zbb, removing gorc/gorci

The 1.0.0 version of Zbb does not contain gorc/gorci. Instead, a
orc.b instruction (equivalent to the orc.b pseudo-instruction built on
gorci from pre-0.93 draft-B) is available, mainly targeting
string-processing workloads.

This commit adds the new orc.b instruction and removed gorc/gorci.

Signed-off-by: Philipp Tomsich <philipp.tomsich@vrull.eu>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Message-id: 20210911140016.834071-12-philipp.tomsich@vrull.eu
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>

show more ...

16c38f3611-Sep-2021 Philipp Tomsich <philipp.tomsich@vrull.eu>

target/riscv: Reassign instructions to the Zbb-extension

This reassigns the instructions that are part of Zbb into it, with the
notable exceptions of the instructions (rev8, zext.w and orc.b) that
c

target/riscv: Reassign instructions to the Zbb-extension

This reassigns the instructions that are part of Zbb into it, with the
notable exceptions of the instructions (rev8, zext.w and orc.b) that
changed due to gorci, grevi and pack not being part of Zb[abcs].

Signed-off-by: Philipp Tomsich <philipp.tomsich@vrull.eu>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Acked-by: Bin Meng <bmeng.cn@gmail.com>
Message-id: 20210911140016.834071-11-philipp.tomsich@vrull.eu
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>

show more ...

fd4b81a311-Sep-2021 Philipp Tomsich <philipp.tomsich@vrull.eu>

target/riscv: Add instructions of the Zbc-extension

The following instructions are part of Zbc:
- clmul
- clmulh
- clmulr

Note that these instructions were already defined in the pre-0.93 and
th

target/riscv: Add instructions of the Zbc-extension

The following instructions are part of Zbc:
- clmul
- clmulh
- clmulr

Note that these instructions were already defined in the pre-0.93 and
the 0.93 draft-B proposals, but had not been omitted in the earlier
addition of draft-B to QEmu.

Signed-off-by: Philipp Tomsich <philipp.tomsich@vrull.eu>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Message-id: 20210911140016.834071-10-philipp.tomsich@vrull.eu
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>

show more ...

f36a4a8911-Sep-2021 Philipp Tomsich <philipp.tomsich@vrull.eu>

target/riscv: Reassign instructions to the Zbs-extension

The following instructions are part of Zbs:
- b{set,clr,ext,inv}
- b{set,clr,ext,inv}i

Signed-off-by: Philipp Tomsich <philipp.tomsich@vru

target/riscv: Reassign instructions to the Zbs-extension

The following instructions are part of Zbs:
- b{set,clr,ext,inv}
- b{set,clr,ext,inv}i

Signed-off-by: Philipp Tomsich <philipp.tomsich@vrull.eu>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Acked-by: Bin Meng <bmeng.cn@gmail.com>
Message-id: 20210911140016.834071-9-philipp.tomsich@vrull.eu
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>

show more ...

628d8c8811-Sep-2021 Philipp Tomsich <philipp.tomsich@vrull.eu>

target/riscv: Remove shift-one instructions (proposed Zbo in pre-0.93 draft-B)

The Zb[abcs] ratification package does not include the proposed
shift-one instructions. There currently is no clear pla

target/riscv: Remove shift-one instructions (proposed Zbo in pre-0.93 draft-B)

The Zb[abcs] ratification package does not include the proposed
shift-one instructions. There currently is no clear plan to whether
these (or variants of them) will be ratified as Zbo (or a different
extension) or what the timeframe for such a decision could be.

Signed-off-by: Philipp Tomsich <philipp.tomsich@vrull.eu>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Acked-by: Bin Meng <bmeng.cn@gmail.com>
Message-id: 20210911140016.834071-8-philipp.tomsich@vrull.eu
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>

show more ...

dd98a74011-Sep-2021 Philipp Tomsich <philipp.tomsich@vrull.eu>

target/riscv: Remove the W-form instructions from Zbs

Zbs 1.0.0 (just as the 0.93 draft-B before) does not provide for W-form
instructions for Zbs (single-bit instructions). Remove them.

Note that

target/riscv: Remove the W-form instructions from Zbs

Zbs 1.0.0 (just as the 0.93 draft-B before) does not provide for W-form
instructions for Zbs (single-bit instructions). Remove them.

Note that these instructions had already been removed for the 0.93
version of the draft-B extention and have not been present in the
binutils patches circulating in January 2021.

Signed-off-by: Philipp Tomsich <philipp.tomsich@vrull.eu>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Acked-by: Bin Meng <bmeng.cn@gmail.com>
Message-id: 20210911140016.834071-7-philipp.tomsich@vrull.eu
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>

show more ...

1...<<41424344454647484950>>...67