summaryrefslogtreecommitdiffstats
path: root/target
diff options
context:
space:
mode:
authorDavid Hildenbrand2017-08-18 13:43:46 +0200
committerCornelia Huck2017-08-30 18:23:25 +0200
commitc07a1009669ebf7ed91b131a857eed6ea9a08115 (patch)
tree4404da31e21db3792871f4a09253087e0bce5762 /target
parenttarget/s390x: move cpu_mmu_idx_to_asc() to excp_helper.c (diff)
downloadqemu-c07a1009669ebf7ed91b131a857eed6ea9a08115.tar.gz
qemu-c07a1009669ebf7ed91b131a857eed6ea9a08115.tar.xz
qemu-c07a1009669ebf7ed91b131a857eed6ea9a08115.zip
target/s390x: move psw_key_valid() to mem_helper.c
Only used in that file. Reviewed-by: Thomas Huth <thuth@redhat.com> Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Reviewed-by: Richard Henderson <richard.henderson@linaro.org> Signed-off-by: David Hildenbrand <david@redhat.com> Message-Id: <20170818114353.13455-12-david@redhat.com> Signed-off-by: Cornelia Huck <cohuck@redhat.com>
Diffstat (limited to 'target')
-rw-r--r--target/s390x/cpu.h11
-rw-r--r--target/s390x/mem_helper.c11
2 files changed, 11 insertions, 11 deletions
diff --git a/target/s390x/cpu.h b/target/s390x/cpu.h
index c71a4bf0c4..8300cb219d 100644
--- a/target/s390x/cpu.h
+++ b/target/s390x/cpu.h
@@ -366,17 +366,6 @@ void s390x_cpu_debug_excp_handler(CPUState *cs);
#define MMU_SECONDARY_IDX 1
#define MMU_HOME_IDX 2
-static inline bool psw_key_valid(CPUS390XState *env, uint8_t psw_key)
-{
- uint16_t pkm = env->cregs[3] >> 16;
-
- if (env->psw.mask & PSW_MASK_PSTATE) {
- /* PSW key has range 0..15, it is valid if the bit is 1 in the PKM */
- return pkm & (0x80 >> psw_key);
- }
- return true;
-}
-
static inline int cpu_mmu_index(CPUS390XState *env, bool ifetch)
{
switch (env->psw.mask & PSW_MASK_ASC) {
diff --git a/target/s390x/mem_helper.c b/target/s390x/mem_helper.c
index c71dce4b1e..b91c7402c4 100644
--- a/target/s390x/mem_helper.c
+++ b/target/s390x/mem_helper.c
@@ -56,6 +56,17 @@ void tlb_fill(CPUState *cs, target_ulong addr, MMUAccessType access_type,
#define HELPER_LOG(x...)
#endif
+static inline bool psw_key_valid(CPUS390XState *env, uint8_t psw_key)
+{
+ uint16_t pkm = env->cregs[3] >> 16;
+
+ if (env->psw.mask & PSW_MASK_PSTATE) {
+ /* PSW key has range 0..15, it is valid if the bit is 1 in the PKM */
+ return pkm & (0x80 >> psw_key);
+ }
+ return true;
+}
+
/* Reduce the length so that addr + len doesn't cross a page boundary. */
static inline uint32_t adj_len_to_page(uint32_t len, uint64_t addr)
{