Richard Henderson
a0262ba68c
target/arm: Stub arm_hcr_el2_eff for m-profile
...
M-profile doesn't have HCR_EL2. While we could test features
before each call, zero is a generally safe return value to
disable the code in the caller. This test is required to
avoid an assert in arm_is_secure_below_el3.
Reviewed-by: Peter Maydell <peter.maydell@linaro.org >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
Message-id: 20230227225832.816605-3-richard.henderson@linaro.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org >
2023-03-06 14:08:12 +00:00
Richard Henderson
9094f9551d
target/arm: Handle m-profile in arm_is_secure
...
Resolves: https://gitlab.com/qemu-project/qemu/-/issues/1421
Reviewed-by: Peter Maydell <peter.maydell@linaro.org >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
Message-id: 20230227225832.816605-2-richard.henderson@linaro.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org >
2023-03-06 14:08:12 +00:00
Richard Henderson
7d8b28b8b5
target/arm: Implement gdbstub m-profile systemreg and secext
...
The upstream gdb xml only implements {MSP,PSP}{,_NS,S}, but
go ahead and implement the other system registers as well.
Since there is significant overlap between the two, implement
them with common code. The only exception is the systemreg
view of CONTROL, which merges the banked bits as per MRS.
Signed-off-by: David Reiss <dreiss@meta.com >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
Message-id: 20230227213329.793795-15-richard.henderson@linaro.org
[rth: Substatial rewrite using enumerator and shared code.]
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
Reviewed-by: Peter Maydell <peter.maydell@linaro.org >
Signed-off-by: Peter Maydell <peter.maydell@linaro.org >
2023-03-06 14:08:12 +00:00
David Reiss
6c8676512f
target/arm: Export arm_v7m_get_sp_ptr
...
Allow the function to be used outside of m_helper.c.
Move to be outside of ifndef CONFIG_USER_ONLY block.
Rename from get_v7m_sp_ptr.
Reviewed-by: Peter Maydell <peter.maydell@linaro.org >
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org >
Signed-off-by: David Reiss <dreiss@meta.com >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
Message-id: 20230227213329.793795-14-richard.henderson@linaro.org
[rth: Split out of a larger patch]
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
Signed-off-by: Peter Maydell <peter.maydell@linaro.org >
2023-03-06 14:08:11 +00:00
David Reiss
48688c9441
target/arm: Export arm_v7m_mrs_control
...
Allow the function to be used outside of m_helper.c.
Rename with an "arm_" prefix.
Reviewed-by: Peter Maydell <peter.maydell@linaro.org >
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org >
Signed-off-by: David Reiss <dreiss@meta.com >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
Message-id: 20230227213329.793795-13-richard.henderson@linaro.org
[rth: Split out of a larger patch]
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
Signed-off-by: Peter Maydell <peter.maydell@linaro.org >
2023-03-06 14:08:11 +00:00
Richard Henderson
e995d5cce4
target/arm: Implement gdbstub pauth extension
...
The extension is primarily defined by the Linux kernel NT_ARM_PAC_MASK
ptrace register set.
The original gdb feature consists of two masks, data and code, which are
used to mask out the authentication code within a pointer. Following
discussion with Luis Machado, add two more masks in order to support
pointers within the high half of the address space (i.e. TTBR1 vs TTBR0).
Resolves: https://gitlab.com/qemu-project/qemu/-/issues/1105
Reviewed-by: Peter Maydell <peter.maydell@linaro.org >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
Message-id: 20230227213329.793795-12-richard.henderson@linaro.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org >
2023-03-06 14:08:11 +00:00
Richard Henderson
abf1f1b03a
target/arm: Create pauth_ptr_mask
...
Keep the logic for pauth within pauth_helper.c, and expose
a helper function for use with the gdbstub pac extension.
Reviewed-by: Peter Maydell <peter.maydell@linaro.org >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
Message-id: 20230227213329.793795-11-richard.henderson@linaro.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org >
2023-03-06 14:08:11 +00:00
Richard Henderson
55f0fc61f8
target/arm: Simplify iteration over bit widths
...
Order suf[] by the log8 of the width.
Use ARRAY_SIZE instead of hard-coding 128.
This changes the order of the union definitions,
but retains the order of the union-of-union members.
Reviewed-by: Peter Maydell <peter.maydell@linaro.org >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
Message-id: 20230227213329.793795-10-richard.henderson@linaro.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org >
2023-03-06 14:08:11 +00:00
Richard Henderson
41c9ad8fb4
target/arm: Add name argument to output_vector_union_type
...
This will make the function usable between SVE and SME.
Reviewed-by: Peter Maydell <peter.maydell@linaro.org >
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
Message-id: 20230227213329.793795-9-richard.henderson@linaro.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org >
2023-03-06 14:08:11 +00:00
Richard Henderson
fdfb214cf0
target/arm: Fix svep width in arm_gen_dynamic_svereg_xml
...
Define svep based on the size of the predicates,
not the primary vector registers.
Reviewed-by: Peter Maydell <peter.maydell@linaro.org >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
Message-id: 20230227213329.793795-8-richard.henderson@linaro.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org >
2023-03-06 14:08:11 +00:00
Richard Henderson
5cd5fa756e
target/arm: Hoist pred_width in arm_gen_dynamic_svereg_xml
...
Reviewed-by: Fabiano Rosas <farosas@suse.de >
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
Message-id: 20230227213329.793795-7-richard.henderson@linaro.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org >
2023-03-06 14:08:11 +00:00
Richard Henderson
a1ad913da0
target/arm: Simplify register counting in arm_gen_dynamic_svereg_xml
...
Rather than increment base_reg and num, compute num from the change
to base_reg at the end. Clean up some nearby comments.
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
Message-id: 20230227213329.793795-6-richard.henderson@linaro.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org >
2023-03-06 14:08:11 +00:00
Richard Henderson
f214bdde5a
target/arm: Split out output_vector_union_type
...
Create a subroutine for creating the union of unions
of the various type sizes that a vector may contain.
Reviewed-by: Fabiano Rosas <farosas@suse.de >
Reviewed-by: Peter Maydell <peter.maydell@linaro.org >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
Message-id: 20230227213329.793795-5-richard.henderson@linaro.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org >
2023-03-06 14:08:11 +00:00
Richard Henderson
e03aba8853
target/arm: Move arm_gen_dynamic_svereg_xml to gdbstub64.c
...
The function is only used for aarch64, so move it to the
file that has the other aarch64 gdbstub stuff. Move the
declaration to internals.h.
Reviewed-by: Fabiano Rosas <farosas@suse.de >
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
Message-id: 20230227213329.793795-4-richard.henderson@linaro.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org >
2023-03-06 14:08:11 +00:00
Richard Henderson
4bce95b45e
target/arm: Unexport arm_gen_dynamic_sysreg_xml
...
This function is not used outside gdbstub.c.
Reviewed-by: Fabiano Rosas <farosas@suse.de >
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
Message-id: 20230227213329.793795-3-richard.henderson@linaro.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org >
2023-03-06 14:08:11 +00:00
Richard Henderson
963a6b91c2
target/arm: Normalize aarch64 gdbstub get/set function names
...
Make the form of the function names between fp and sve the same:
- arm_gdb_*_svereg -> aarch64_gdb_*_sve_reg.
- aarch64_fpu_gdb_*_reg -> aarch64_gdb_*_fpu_reg.
Reviewed-by: Fabiano Rosas <farosas@suse.de >
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
Message-id: 20230227213329.793795-2-richard.henderson@linaro.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org >
2023-03-06 14:08:11 +00:00
Richard Henderson
9cf1fe2cc0
target/arm: Drop tcg_temp_free from translator.h
...
Translators are no longer required to free tcg temporaries.
Reviewed-by: Peter Maydell <peter.maydell@linaro.org >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
2023-03-05 13:44:07 -08:00
Richard Henderson
29a01a90b8
target/arm: Drop tcg_temp_free from translator-vfp.c
...
Translators are no longer required to free tcg temporaries.
Reviewed-by: Peter Maydell <peter.maydell@linaro.org >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
2023-03-05 13:44:07 -08:00
Richard Henderson
bd46e45ab2
target/arm: Drop tcg_temp_free from translator-sve.c
...
Translators are no longer required to free tcg temporaries.
Reviewed-by: Peter Maydell <peter.maydell@linaro.org >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
2023-03-05 13:44:07 -08:00
Richard Henderson
481972a9d1
target/arm: Drop tcg_temp_free from translator-sme.c
...
Translators are no longer required to free tcg temporaries.
Reviewed-by: Peter Maydell <peter.maydell@linaro.org >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
2023-03-05 13:44:07 -08:00
Richard Henderson
24f4531d0d
target/arm: Drop tcg_temp_free from translator-neon.c
...
Translators are no longer required to free tcg temporaries.
Reviewed-by: Peter Maydell <peter.maydell@linaro.org >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
2023-03-05 13:44:07 -08:00
Richard Henderson
02404d8b2b
target/arm: Drop tcg_temp_free from translator-mve.c
...
Translators are no longer required to free tcg temporaries.
Reviewed-by: Peter Maydell <peter.maydell@linaro.org >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
2023-03-05 13:44:07 -08:00
Richard Henderson
fa03160f99
target/arm: Drop tcg_temp_free from translator-m-nocp.c
...
Translators are no longer required to free tcg temporaries.
Reviewed-by: Peter Maydell <peter.maydell@linaro.org >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
2023-03-05 13:44:07 -08:00
Richard Henderson
659aed5fed
target/arm: Drop tcg_temp_free from translator-a64.c
...
Translators are no longer required to free tcg temporaries.
Reviewed-by: Peter Maydell <peter.maydell@linaro.org >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
2023-03-05 13:44:07 -08:00
Richard Henderson
2503e60d12
target/arm: Drop new_tmp_a64_zero
...
Only the use within cpu_reg requires a writable temp,
so inline new_tmp_a64_zero there. All other uses are
fine with a constant temp, so use tcg_constant_i64(0).
Reviewed-by: Peter Maydell <peter.maydell@linaro.org >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
2023-03-05 13:44:07 -08:00
Richard Henderson
6980b80d59
target/arm: Drop new_tmp_a64
...
This is now a simple wrapper for tcg_temp_new_i64.
Reviewed-by: Peter Maydell <peter.maydell@linaro.org >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
2023-03-05 13:44:07 -08:00
Richard Henderson
828fce78a8
target/arm: Drop DisasContext.tmp_a64
...
Translators are no longer required to free tcg temporaries,
therefore there's no need to record temps for later freeing.
Reviewed-by: Peter Maydell <peter.maydell@linaro.org >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
2023-03-05 13:44:07 -08:00
Richard Henderson
366786e057
target/arm: Drop tcg_temp_free from translator.c
...
Translators are no longer required to free tcg temporaries.
Reviewed-by: Peter Maydell <peter.maydell@linaro.org >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
2023-03-05 13:44:07 -08:00
Richard Henderson
84156ff0cf
target/arm: Remove value_global from DisasCompare
...
This field was only used to avoid freeing globals.
Since we no longer free any temps, this is dead.
Reviewed-by: Peter Maydell <peter.maydell@linaro.org >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
2023-03-05 13:44:07 -08:00
Richard Henderson
720923eddd
target/arm: Remove arm_free_cc, a64_free_cc
...
Translators are no longer required to free tcg temporaries.
Reviewed-by: Peter Maydell <peter.maydell@linaro.org >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
2023-03-05 13:44:07 -08:00
Richard Henderson
2a196de15f
accel/tcg: Remove translator_loop_temp_check
...
Finish removing tcg temp free accounting interfaces.
Reviewed-by: Peter Maydell <peter.maydell@linaro.org >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
2023-03-05 13:44:07 -08:00
Peter Maydell
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
Philippe Mathieu-Daudé
3362f04dbc
target/arm: 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.
Move the QMP functions from helper.c (which is always compiled)
to monitor.c (which is only compiled when system-emulation
is selected). Rename monitor.c to arm-qmp-cmds.c.
Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Message-Id: <20230223155540.30370-2-philmd@linaro.org >
Signed-off-by: Markus Armbruster <armbru@redhat.com >
[Straightforward conflict with commit 9def656e7a
resolved]
2023-03-02 07:51:06 +01:00
Richard Henderson
d4aa49acd3
target/arm: Don't use tcg_temp_local_new_*
...
Since tcg_temp_new_* is now identical, use those.
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
2023-03-01 07:33:28 -10:00
Richard Henderson
78817d3b9f
target/arm: Drop copies in gen_sve_{ldr,str}
...
Since we now get TEMP_TB temporaries by default, we no longer
need to make copies across these loops. These were the only
uses of new_tmp_a64_local(), so remove that as well.
Reviewed-by: Peter Maydell <peter.maydell@linaro.org >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
2023-03-01 07:33:28 -10:00
Richard Henderson
597f9b2d30
accel/tcg: Pass max_insn to gen_intermediate_code by pointer
...
In preparation for returning the number of insns generated
via the same pointer. Adjust only the prototypes so far.
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
2023-03-01 07:33:27 -10:00
Anton Johansson
f51a1dd72f
target/arm: 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-27-anjo@rev.ng >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
2023-03-01 07:33:25 -10:00
Anton Johansson
48fbcf5c6c
target/arm: Remove TARGET_TB_PCREL
define
...
Signed-off-by: Anton Johansson <anjo@rev.ng >
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org >
Message-Id: <20230227135202.9710-10-anjo@rev.ng >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
2023-03-01 07:32:07 -10:00
Anton Johansson
03a648c4b8
target/arm: Replace TARGET_TB_PCREL
with CF_PCREL
...
Signed-off-by: Anton Johansson <anjo@rev.ng >
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org >
Message-Id: <20230227135202.9710-7-anjo@rev.ng >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
2023-03-01 07:31:52 -10:00
Anton Johansson
e607ea39ef
target/arm: set CF_PCREL
in arm_cpu_realizefn
...
Signed-off-by: Anton Johansson <anjo@rev.ng >
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org >
Message-Id: <20230227135202.9710-4-anjo@rev.ng >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
2023-03-01 07:31:33 -10:00
Richard Henderson
d507e6c565
accel/tcg: Add 'size' param to probe_access_full
...
Change to match the recent change to probe_access_flags.
All existing callers updated to supply 0, so no change in behaviour.
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org >
Reviewed-by: Daniel Henrique Barboza <dbarboza@ventanamicro.com >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
2023-02-28 10:32:31 -10:00
Daniel Henrique Barboza
1770b2f2d3
accel/tcg: Add 'size' param to probe_access_flags()
...
probe_access_flags() as it is today uses probe_access_full(), which in
turn uses probe_access_internal() with size = 0. probe_access_internal()
then uses the size to call the tlb_fill() callback for the given CPU.
This size param ('fault_size' as probe_access_internal() calls it) is
ignored by most existing .tlb_fill callback implementations, e.g.
arm_cpu_tlb_fill(), ppc_cpu_tlb_fill(), x86_cpu_tlb_fill() and
mips_cpu_tlb_fill() to name a few.
But RISC-V riscv_cpu_tlb_fill() actually uses it. The 'size' parameter
is used to check for PMP (Physical Memory Protection) access. This is
necessary because PMP does not make any guarantees about all the bytes
of the same page having the same permissions, i.e. the same page can
have different PMP properties, so we're forced to make sub-page range
checks. To allow RISC-V emulation to do a probe_acess_flags() that
covers PMP, we need to either add a 'size' param to the existing
probe_acess_flags() or create a new interface (e.g.
probe_access_range_flags).
There are quite a few probe_* APIs already, so let's add a 'size' param
to probe_access_flags() and re-use this API. This is done by open coding
what probe_access_full() does inside probe_acess_flags() and passing the
'size' param to probe_acess_internal(). Existing probe_access_flags()
callers use size = 0 to not change their current API usage. 'size' is
asserted to enforce single page access like probe_access() already does.
No behavioral changes intended.
Signed-off-by: Daniel Henrique Barboza <dbarboza@ventanamicro.com >
Message-Id: <20230223234427.521114-2-dbarboza@ventanamicro.com >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
2023-02-28 10:32:31 -10:00
Philippe Mathieu-Daudé
d90ebc4731
target/cpu: Restrict do_transaction_failed() handlers to sysemu
...
The 'hwaddr' type is only available / meaningful on system emulation.
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org >
Message-Id: <20221216215519.5522-6-philmd@linaro.org >
2023-02-27 22:29:01 +01:00
Philippe Mathieu-Daudé
6d2d454a88
target/cpu: Restrict cpu_get_phys_page_debug() handlers to sysemu
...
The 'hwaddr' type is only available / meaningful on system emulation.
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org >
Message-Id: <20221216215519.5522-5-philmd@linaro.org >
2023-02-27 22:29:01 +01:00
Fabiano Rosas
0d3de77a07
target/arm: Don't access TCG code when debugging with KVM
...
When TCG is disabled this part of the code should not be reachable, so
wrap it with an ifdef for now.
Signed-off-by: Fabiano Rosas <farosas@suse.de >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Tested-by: Philippe Mathieu-Daudé <philmd@linaro.org >
Signed-off-by: Peter Maydell <peter.maydell@linaro.org >
2023-02-27 13:27:04 +00:00
Fabiano Rosas
2ea2998f27
target/arm: Move regime_using_lpae_format into internal.h
...
This function is needed by common code (ptw.c), so move it along with
the other regime_* functions in internal.h. When we enable the build
without TCG, the tlb_helper.c file will not be present.
Signed-off-by: Fabiano Rosas <farosas@suse.de >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Tested-by: Philippe Mathieu-Daudé <philmd@linaro.org >
Signed-off-by: Peter Maydell <peter.maydell@linaro.org >
2023-02-27 13:27:04 +00:00
Fabiano Rosas
671efad16a
target/arm: Move hflags code into the tcg directory
...
The hflags are used only for TCG code, so introduce a new file
hflags.c to keep that code.
Signed-off-by: Fabiano Rosas <farosas@suse.de >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Tested-by: Philippe Mathieu-Daudé <philmd@linaro.org >
Signed-off-by: Peter Maydell <peter.maydell@linaro.org >
2023-02-27 13:27:04 +00:00
Fabiano Rosas
2b77ad4de6
target/arm: Wrap arm_rebuild_hflags calls with tcg_enabled
...
This is in preparation to moving the hflags code into its own file
under the tcg/ directory.
Signed-off-by: Fabiano Rosas <farosas@suse.de >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Tested-by: Philippe Mathieu-Daudé <philmd@linaro.org >
Signed-off-by: Peter Maydell <peter.maydell@linaro.org >
2023-02-27 13:27:04 +00:00
Claudio Fontana
9def656e7a
target/arm: Move psci.c into the tcg directory
...
Signed-off-by: Claudio Fontana <cfontana@suse.de >
Signed-off-by: Fabiano Rosas <farosas@suse.de >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Reviewed-by: Alex Bennée <alex.bennee@linaro.org >
Tested-by: Philippe Mathieu-Daudé <philmd@linaro.org >
Signed-off-by: Peter Maydell <peter.maydell@linaro.org >
2023-02-27 13:27:04 +00:00
Claudio Fontana
a3ef070ea9
target/arm: move helpers to tcg/
...
Signed-off-by: Claudio Fontana <cfontana@suse.de >
Signed-off-by: Fabiano Rosas <farosas@suse.de >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org >
Tested-by: Philippe Mathieu-Daudé <philmd@linaro.org >
Signed-off-by: Peter Maydell <peter.maydell@linaro.org >
2023-02-27 13:27:04 +00:00