2e2ca3c8fa
target/loongarch: Fix LD/ST{LE/GT} instructions get wrong CSR_ERA and CSR_BADV
...
1.helper_asrtle_d/helper_asrtgt_d need use GETPC() to get PC;
2 LD/ST{LE/GT} need set CSR_BADV = gpr[rj];
3 ASRTLE.D/ASRTGT.D also write CSR_BADV, but this value is random
and has no reference value.
Signed-off-by: Song Gao <gaosong@loongson.cn >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Message-Id: <20230515130042.2719712-1-gaosong@loongson.cn >
2023-05-26 17:21:12 +08:00
c6c2fec4b9
target/loongarch: CPUCFG support LSX
...
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Signed-off-by: Song Gao <gaosong@loongson.cn >
Message-Id: <20230504122810.4094787-45-gaosong@loongson.cn >
2023-05-06 11:19:50 +08:00
a3f3db5cda
target/loongarch: Add CHECK_SXE maccro for check LSX enable
...
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Signed-off-by: Song Gao <gaosong@loongson.cn >
Message-Id: <20230504122810.4094787-4-gaosong@loongson.cn >
2023-05-06 11:19:45 +08:00
16f5396cec
target/loongarch: Add LSX data type VReg
...
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Signed-off-by: Song Gao <gaosong@loongson.cn >
Message-Id: <20230504122810.4094787-2-gaosong@loongson.cn >
2023-05-06 11:19:42 +08:00
c77432d0ef
target/loongarch: Implement Chip Configuraiton Version Register(0x0000)
...
According to the 3A5000 manual 4.1 implement Chip Configuration
Version Register(0x0000).
Signed-off-by: Song Gao <gaosong@loongson.cn >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Message-Id: <20230227071046.1445572-1-gaosong@loongson.cn >
2023-03-03 09:37:30 +08:00
0ccf919d74
Merge tag 'pull-monitor-2023-03-02' of https://repo.or.cz/qemu/armbru into staging
...
Monitor patches for 2023-03-02
# -----BEGIN PGP SIGNATURE-----
#
# iQJGBAABCAAwFiEENUvIs9frKmtoZ05fOHC0AOuRhlMFAmQASV0SHGFybWJydUBy
# ZWRoYXQuY29tAAoJEDhwtADrkYZT4mEQALkbu0i/Y2B2XKpGyp9Z/uf0zoHmL6fA
# UEy2S8yn3K1uPPDmzWsQ7PgxDnirVzePa88UzuW3iUiiHBcQp0IsFOP6LZ47NTTz
# UM146odlDtn50bHWr6vHtToNU+PcKOw8ELX28eDE+ihtg+8B+B6cBgLa14VKGSJ4
# 4oBJbsNMG8U3qJgqrIMomBeP38TorTdKq05jEE9txqsiw5uYO6jQE9owNkLQP76U
# 8T/99sgQzyQjJ7VjOdyu2ZveUwGIpmGzmeA26CcwYP8uhYTRY+Lk+5gZnC15pad9
# TMimrq+7vwuzqKQpZw5rZO25ryQmKgQX49hSt/dKZEFNvb9vtKq693VhRoP4EMCz
# 136suIATRkXHTw2FhjC2l3lnN+rQEfTr+zuGvazQ9ZOibHFPhxOAR4RNPTFXbfk6
# fOM7wW2Y3lhlQdhLc+0Ar2N/GzjEHi4WJhk4nV0V1PK79dLPYA5kuYGUuqzeA04P
# Fu1EvpNWgHpQd3m8oFxjfozn9LMDohUrdHknrF0+VncAfzcPic1z4VhKDg+kMLJx
# 1WePIMdMMS/aIYpNCMevLm11GQXhd2B4GG3xhNpM/BfHQ9KLM1dfoTEGfG9ZpKNv
# Qyi1ofpgKzX5mpSHrdACK/rm45KIJRbprGgAe3fZFh65iGQ51wwZd16MUV/c8exN
# ouu3jimfHWWG
# =RuRo
# -----END PGP SIGNATURE-----
# gpg: Signature made Thu 02 Mar 2023 06:59:41 GMT
# gpg: using RSA key 354BC8B3D7EB2A6B68674E5F3870B400EB918653
# gpg: issuer "armbru@redhat.com "
# gpg: Good signature from "Markus Armbruster <armbru@redhat.com >" [full]
# gpg: aka "Markus Armbruster <armbru@pond.sub.org >" [full]
# Primary key fingerprint: 354B C8B3 D7EB 2A6B 6867 4E5F 3870 B400 EB91 8653
* tag 'pull-monitor-2023-03-02' of https://repo.or.cz/qemu/armbru :
target/ppc: Restrict 'qapi-commands-machine.h' to system emulation
target/loongarch: Restrict 'qapi-commands-machine.h' to system emulation
target/i386: Restrict 'qapi-commands-machine.h' to system emulation
target/arm: Restrict 'qapi-commands-machine.h' to system emulation
readline: fix hmp completion issue
Signed-off-by: Peter Maydell <peter.maydell@linaro.org >
2023-03-02 10:54:17 +00:00
381b43f855
target/loongarch: Restrict 'qapi-commands-machine.h' to system emulation
...
Since commit a0e61807a3
("qapi: Remove QMP events and commands from
user-mode builds") we don't generate the "qapi-commands-machine.h"
header in a user-emulation-only build.
Extract the QMP functions from cpu.c (which is always compiled)
to the new 'loongarch-qmp-cmds.c' unit (which is only compiled
when system emulation is selected).
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org >
Message-Id: <20230223155540.30370-4-philmd@linaro.org >
Signed-off-by: Markus Armbruster <armbru@redhat.com >
2023-03-02 07:51:33 +01:00
e83cf1c119
target/loongarch: Replace tb_pc()
with tb->pc
...
Signed-off-by: Anton Johansson <anjo@rev.ng >
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org >
Message-Id: <20230227135202.9710-22-anjo@rev.ng >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
2023-03-01 07:33:19 -10:00
f78b49ae8d
target/loongarch: Convert to 3-phase reset
...
Convert the loongarch CPU class to use 3-phase reset, so it doesn't
need to use device_class_set_parent_reset() any more.
Signed-off-by: Peter Maydell <peter.maydell@linaro.org >
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Reviewed-by: Alistair Francis <alistair.francis@wdc.com >
Reviewed-by: Cédric Le Goater <clg@kaod.org >
Reviewed-by: Edgar E. Iglesias <edgar@zeroasic.com >
Reviewed-by: Taylor Simpson <tsimpson@quicinc.com >
Message-id: 20221124115023.2437291-8-peter.maydell@linaro.org
2022-12-16 15:58:15 +00:00
66997c42e0
cleanup: Tweak and re-run return_directly.cocci
...
Tweak the semantic patch to drop redundant parenthesis around the
return expression.
Coccinelle drops a comment in hw/rdma/vmw/pvrdma_cmd.c; restored
manually.
Coccinelle messes up vmdk_co_create(), not sure why. Change dropped,
will be done manually in the next commit.
Line breaks in target/avr/cpu.h and hw/rdma/vmw/pvrdma_cmd.c tidied up
manually.
Whitespace in tools/virtiofsd/fuse_lowlevel.c tidied up manually.
checkpatch.pl complains "return of an errno should typically be -ve"
two times for hw/9pfs/9p-synth.c. Preexisting, the patch merely makes
it visible to checkpatch.pl.
Signed-off-by: Markus Armbruster <armbru@redhat.com >
Message-Id: <20221122134917.1217307-2-armbru@redhat.com >
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org >
Acked-by: Dr. David Alan Gilbert <dgilbert@redhat.com >
2022-12-14 16:19:35 +01:00
2419978cb0
target/loongarch: Fix emulation of float-point disable exception
...
We need to emulate it to generate a floating point disable exception
when CSR.EUEN.FPE is zero.
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Reviewed-by: Song Gao <gaosong@loongson.cn >
Signed-off-by: Rui Wang <wangrui@loongson.cn >
Message-Id: <20221104040517.222059-3-wangrui@loongson.cn >
Signed-off-by: Song Gao <gaosong@loongson.cn >
2022-11-04 17:10:53 +08:00
8752b13060
target/loongarch: Fix raise_mmu_exception() set wrong exception_index
...
When the address is invalid address, We should set exception_index
according to MMUAccessType, and EXCCODE_ADEF need't update badinstr.
Otherwise, The system enters an infinite loop. e.g:
run test.c on system mode
test.c:
#include<stdio.h>
void (*func)(int *);
int main()
{
int i = 8;
void *ptr = (void *)0x4000000000000000;
func = ptr;
func(&i);
return 0;
}
Signed-off-by: Song Gao <gaosong@loongson.cn >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Message-ID: <20221101073210.3934280-2-gaosong@loongson.cn >
2022-11-04 17:09:50 +08:00
a6b129c810
target/loongarch: Add exception subcode
...
We need subcodes to distinguish the same excode cs->exception_indexs,
such as EXCCODE_ADEF/EXCCODE_ADEM.
Signed-off-by: Song Gao <gaosong@loongson.cn >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Message-ID: <20221101073210.3934280-1-gaosong@loongson.cn >
2022-11-04 17:09:50 +08:00
ab27940f8e
target/loongarch: Convert to tcg_ops restore_state_to_opc
...
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
2022-10-26 11:11:28 +10:00
fbf59aad17
accel/tcg: Introduce tb_pc and log_pc
...
The availability of tb->pc will shortly be conditional.
Introduce accessor functions to minimize ifdefs.
Pass around a known pc to places like tcg_gen_code,
where the caller must already have the value.
Reviewed-by: Alex Bennée <alex.bennee@linaro.org >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
2022-10-04 12:13:12 -07:00
e4fdf9df5b
hw/core: Add CPUClass.get_pc
...
Populate this new method for all targets. Always match
the result that would be given by cpu_get_tb_cpu_state,
as we will want these values to correspond in the logs.
Reviewed-by: Taylor Simpson <tsimpson@quicinc.com >
Reviewed-by: Alex Bennée <alex.bennee@linaro.org >
Reviewed-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk > (target/sparc)
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
---
Cc: Eduardo Habkost <eduardo@habkost.net > (supporter:Machine core)
Cc: Marcel Apfelbaum <marcel.apfelbaum@gmail.com > (supporter:Machine core)
Cc: "Philippe Mathieu-Daudé" <f4bug@amsat.org > (reviewer:Machine core)
Cc: Yanan Wang <wangyanan55@huawei.com > (reviewer:Machine core)
Cc: Michael Rolnik <mrolnik@gmail.com > (maintainer:AVR TCG CPUs)
Cc: "Edgar E. Iglesias" <edgar.iglesias@gmail.com > (maintainer:CRIS TCG CPUs)
Cc: Taylor Simpson <tsimpson@quicinc.com > (supporter:Hexagon TCG CPUs)
Cc: Song Gao <gaosong@loongson.cn > (maintainer:LoongArch TCG CPUs)
Cc: Xiaojuan Yang <yangxiaojuan@loongson.cn > (maintainer:LoongArch TCG CPUs)
Cc: Laurent Vivier <laurent@vivier.eu > (maintainer:M68K TCG CPUs)
Cc: Jiaxun Yang <jiaxun.yang@flygoat.com > (reviewer:MIPS TCG CPUs)
Cc: Aleksandar Rikalo <aleksandar.rikalo@syrmia.com > (reviewer:MIPS TCG CPUs)
Cc: Chris Wulff <crwulff@gmail.com > (maintainer:NiosII TCG CPUs)
Cc: Marek Vasut <marex@denx.de > (maintainer:NiosII TCG CPUs)
Cc: Stafford Horne <shorne@gmail.com > (odd fixer:OpenRISC TCG CPUs)
Cc: Yoshinori Sato <ysato@users.sourceforge.jp > (reviewer:RENESAS RX CPUs)
Cc: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk > (maintainer:SPARC TCG CPUs)
Cc: Bastian Koppelmann <kbastian@mail.uni-paderborn.de > (maintainer:TriCore TCG CPUs)
Cc: Max Filippov <jcmvbkbc@gmail.com > (maintainer:Xtensa TCG CPUs)
Cc: qemu-arm@nongnu.org (open list:ARM TCG CPUs)
Cc: qemu-ppc@nongnu.org (open list:PowerPC TCG CPUs)
Cc: qemu-riscv@nongnu.org (open list:RISC-V TCG CPUs)
Cc: qemu-s390x@nongnu.org (open list:S390 TCG CPUs)
2022-10-04 12:13:12 -07:00
cd8ef0ed3b
target/loongarch: add gdb_arch_name()
...
Matches bfd/cpu-loongarch.c, bfd_loongarch_arch.
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Signed-off-by: Song Gao <gaosong@loongson.cn >
Acked-by: Alex Bennée <alex.bennee@linaro.org >
Message-Id: <20220805033523.1416837-3-gaosong@loongson.cn >
2022-08-05 10:02:40 -07:00
1fe8ac3511
target/loongarch: Fix GDB get the wrong pc
...
GDB LoongArch add a register orig_a0, see the base64.xml [1].
We should add the orig_a0 to match the upstream GDB.
[1]: https://github.com/bminor/binutils-gdb/blob/master/gdb/features/loongarch/base64.xml
Signed-off-by: Song Gao <gaosong@loongson.cn >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Acked-by: Alex Bennée <alex.bennee@linaro.org >
Message-Id: <20220805033523.1416837-2-gaosong@loongson.cn >
2022-08-05 10:02:40 -07:00
fda3f15b00
hw/loongarch: Add fdt support
...
Add LoongArch flatted device tree, adding cpu device node, firmware cfg node,
pcie node into it, and create fdt rom memory region. Now fdt info is not
full since only uefi bios uses fdt, linux kernel does not use fdt.
Loongarch Linux kernel uses acpi table which is full in qemu virt
machine.
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Signed-off-by: Xiaojuan Yang <yangxiaojuan@loongson.cn >
Message-Id: <20220712083206.4187715-7-yangxiaojuan@loongson.cn >
[rth: Set TARGET_NEED_FDT, add fdt to meson.build]
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
2022-07-19 22:55:10 +05:30
fa90456f78
target/loongarch/cpu: Fix cpucfg default value
...
We should config cpucfg[20] to set value for the scache's ways, sets,
and size arguments when loongarch cpu init. However, the old code
wirte 'sets argument' twice, so we change one of them to 'size argument'.
Signed-off-by: Xiaojuan Yang <yangxiaojuan@loongson.cn >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Message-Id: <20220715064829.1521482-1-yangxiaojuan@loongson.cn >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
2022-07-19 21:53:58 +05:30
e4ad16f492
target/loongarch/cpu: Fix coverity errors about excp_names
...
Fix out-of-bounds errors when access excp_names[] array. the valid
boundary size of excp_names should be 0 to ARRAY_SIZE(excp_names)-1.
However, the general code do not consider the max boundary.
Fix coverity CID: 1489758
Signed-off-by: Xiaojuan Yang <yangxiaojuan@loongson.cn >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Message-Id: <20220715060740.1500628-4-yangxiaojuan@loongson.cn >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
2022-07-19 21:53:58 +05:30
c254f7affe
target/loongarch: Fix loongarch_cpu_class_by_name
...
The cpu_model argument may already have the '-loongarch-cpu' suffix,
e.g. when using the default for the LS7A1000 machine. If that fails,
try again with the suffix. Validate that the object created by the
function is derived from the proper base class.
Signed-off-by: Xiaojuan Yang <yangxiaojuan@loongson.cn >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Message-Id: <20220715060740.1500628-2-yangxiaojuan@loongson.cn >
[rth: Try without and then with the suffix, to avoid testsuite breakage.]
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
2022-07-19 21:53:58 +05:30
3517fb7267
target/loongarch: Clean up tlb when cpu reset
...
We should make sure that tlb is clean when cpu reset.
Signed-off-by: Song Gao <gaosong@loongson.cn >
Message-Id: <20220705070950.2364243-1-gaosong@loongson.cn >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
2022-07-05 16:17:53 +05:30
4623367697
target/loongarch: Fix the meaning of ECFG reg's VS field
...
By the manual of LoongArch CSR, the VS field(18:16 bits) of
ECFG reg means that the number of instructions between each
exception entry is 2^VS.
Signed-off-by: Xiaojuan Yang <yangxiaojuan@loongson.cn >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Message-Id: <20220701093407.2150607-9-yangxiaojuan@loongson.cn >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
2022-07-04 11:08:58 +05:30
0093b9a5ee
target/loongarch: Adjust functions and structure to support user-mode
...
Some functions and member of the structure are different with softmmu-mode
So we need adjust them to support user-mode.
Signed-off-by: Song Gao <gaosong@loongson.cn >
Signed-off-by: Xiaojuan Yang <yangxiaojuan@loongson.cn >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Message-Id: <20220624031049.1716097-12-gaosong@loongson.cn >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
2022-07-04 11:08:58 +05:30
9bc92b5013
target/loongarch: remove unused include hw/loader.h
...
Signed-off-by: Song Gao <gaosong@loongson.cn >
Signed-off-by: Xiaojuan Yang <yangxiaojuan@loongson.cn >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Message-Id: <20220624031049.1716097-11-gaosong@loongson.cn >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
2022-07-04 11:08:58 +05:30
7fe7eea6ff
target/loongarch: Fix helper_asrtle_d/asrtgt_d raise wrong exception
...
Raise EXCCODE_BCE instead of EXCCODE_ADEM for helper_asrtle_d/asrtgt_d.
Signed-off-by: Song Gao <gaosong@loongson.cn >
Signed-off-by: Xiaojuan Yang <yangxiaojuan@loongson.cn >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Message-Id: <20220624031049.1716097-10-gaosong@loongson.cn >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
2022-07-04 11:08:58 +05:30
7d552f0e0a
target/loongarch: Fix missing update CSR_BADV
...
loongarch_cpu_do_interrupt() should update CSR_BADV for some EXCCODE.
Signed-off-by: Song Gao <gaosong@loongson.cn >
Signed-off-by: Xiaojuan Yang <yangxiaojuan@loongson.cn >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Message-Id: <20220624031049.1716097-9-gaosong@loongson.cn >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
2022-07-04 11:08:58 +05:30
ca61e75071
target/loongarch: Add gdb support.
...
Signed-off-by: Xiaojuan Yang <yangxiaojuan@loongson.cn >
Signed-off-by: Song Gao <gaosong@loongson.cn >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Message-Id: <20220606124333.2060567-42-yangxiaojuan@loongson.cn >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
2022-06-06 18:14:13 +00:00
a8a506c390
hw/loongarch: Add support loongson3 virt machine type.
...
Emulate a 3A5000 board use the new loongarch instruction.
3A5000 belongs to the Loongson3 series processors.
The board consists of a 3A5000 cpu model and the virt
bridge. The host 3A5000 board is really complicated and
contains many functions.Now for the tcg softmmu mode
only part functions are emulated.
More detailed info you can see
https://github.com/loongson/LoongArch-Documentation
Signed-off-by: Xiaojuan Yang <yangxiaojuan@loongson.cn >
Signed-off-by: Song Gao <gaosong@loongson.cn >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Message-Id: <20220606124333.2060567-31-yangxiaojuan@loongson.cn >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
2022-06-06 18:09:03 +00:00
f84a2aacf5
target/loongarch: Add LoongArch IOCSR instruction
...
This includes:
- IOCSR{RD/WR}.{B/H/W/D}
Signed-off-by: Xiaojuan Yang <yangxiaojuan@loongson.cn >
Signed-off-by: Song Gao <gaosong@loongson.cn >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Message-Id: <20220606124333.2060567-27-yangxiaojuan@loongson.cn >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
2022-06-06 18:09:03 +00:00
dd615fa48d
target/loongarch: Add constant timer support
...
Signed-off-by: Xiaojuan Yang <yangxiaojuan@loongson.cn >
Signed-off-by: Song Gao <gaosong@loongson.cn >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Message-Id: <20220606124333.2060567-25-yangxiaojuan@loongson.cn >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
2022-06-06 18:09:03 +00:00
f757a2cd69
target/loongarch: Add LoongArch interrupt and exception handle
...
Signed-off-by: Xiaojuan Yang <yangxiaojuan@loongson.cn >
Signed-off-by: Song Gao <gaosong@loongson.cn >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Message-Id: <20220606124333.2060567-24-yangxiaojuan@loongson.cn >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
2022-06-06 18:09:03 +00:00
7e1c521e2a
target/loongarch: Add MMU support for LoongArch CPU.
...
Signed-off-by: Xiaojuan Yang <yangxiaojuan@loongson.cn >
Signed-off-by: Song Gao <gaosong@loongson.cn >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Message-Id: <20220606124333.2060567-23-yangxiaojuan@loongson.cn >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
2022-06-06 18:09:03 +00:00
425876f5d8
target/loongarch: Implement qmp_query_cpu_definitions()
...
Signed-off-by: Xiaojuan Yang <yangxiaojuan@loongson.cn >
Signed-off-by: Song Gao <gaosong@loongson.cn >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Message-Id: <20220606124333.2060567-22-yangxiaojuan@loongson.cn >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
2022-06-06 18:09:03 +00:00
67ebd42a48
target/loongarch: Add basic vmstate description of CPU.
...
Signed-off-by: Xiaojuan Yang <yangxiaojuan@loongson.cn >
Signed-off-by: Song Gao <gaosong@loongson.cn >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Message-Id: <20220606124333.2060567-21-yangxiaojuan@loongson.cn >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
2022-06-06 18:09:03 +00:00
398cecb9c3
target/loongarch: Add CSRs definition
...
Signed-off-by: Xiaojuan Yang <yangxiaojuan@loongson.cn >
Signed-off-by: Song Gao <gaosong@loongson.cn >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Message-Id: <20220606124333.2060567-20-yangxiaojuan@loongson.cn >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
2022-06-06 18:09:03 +00:00
d578ca6cbb
target/loongarch: Add floating point arithmetic instruction translation
...
This includes:
- F{ADD/SUB/MUL/DIV}.{S/D}
- F{MADD/MSUB/NMADD/NMSUB}.{S/D}
- F{MAX/MIN}.{S/D}
- F{MAXA/MINA}.{S/D}
- F{ABS/NEG}.{S/D}
- F{SQRT/RECIP/RSQRT}.{S/D}
- F{SCALEB/LOGB/COPYSIGN}.{S/D}
- FCLASS.{S/D}
Signed-off-by: Song Gao <gaosong@loongson.cn >
Signed-off-by: Xiaojuan Yang <yangxiaojuan@loongson.cn >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Message-Id: <20220606124333.2060567-11-yangxiaojuan@loongson.cn >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
2022-06-06 18:09:03 +00:00
228021f05e
target/loongarch: Add core definition
...
This patch adds target state header, target definitions
and initialization routines.
Signed-off-by: Song Gao <gaosong@loongson.cn >
Signed-off-by: Xiaojuan Yang <yangxiaojuan@loongson.cn >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org >
Message-Id: <20220606124333.2060567-3-yangxiaojuan@loongson.cn >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
2022-06-06 18:09:03 +00:00