diff options
author | Blue Swirl <blauwirbel@gmail.com> | 2012-09-02 07:33:36 +0000 |
---|---|---|
committer | Alexander Graf <agraf@suse.de> | 2012-09-10 13:38:32 +0200 |
commit | 449c0d70b6d5692bafd8b028e2a8a4e0ed7076fe (patch) | |
tree | 65a172cf5d2753840a02cca2198b3e75a4c7941a /target-s390x/cpu.h | |
parent | aea1e885b2b59cf93d0db9356fd5bb6cb1780f01 (diff) |
target-s390x: avoid AREG0 for FPU helpers
Make FPU helpers take a parameter for CPUState instead
of relying on global env.
Introduce temporary wrappers for FPU load and store ops.
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
Signed-off-by: Alexander Graf <agraf@suse.de>
Diffstat (limited to 'target-s390x/cpu.h')
-rw-r--r-- | target-s390x/cpu.h | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/target-s390x/cpu.h b/target-s390x/cpu.h index 0ccb55182b..9b7a2e3adc 100644 --- a/target-s390x/cpu.h +++ b/target-s390x/cpu.h @@ -1000,12 +1000,22 @@ static inline void cpu_pc_from_tb(CPUS390XState *env, TranslationBlock* tb) } /* fpu_helper.c */ -uint32_t set_cc_f32(float32 v1, float32 v2); -uint32_t set_cc_f64(float64 v1, float64 v2); +uint32_t set_cc_f32(CPUS390XState *env, float32 v1, float32 v2); +uint32_t set_cc_f64(CPUS390XState *env, float64 v1, float64 v2); uint32_t set_cc_nz_f32(float32 v); uint32_t set_cc_nz_f64(float64 v); /* misc_helper.c */ void program_interrupt(CPUS390XState *env, uint32_t code, int ilc); +/* temporary wrappers */ +uint32_t cpu_ldub_data(CPUS390XState *env, target_ulong ptr); +uint32_t cpu_lduw_data(CPUS390XState *env, target_ulong ptr); +uint32_t cpu_ldl_data(CPUS390XState *env, target_ulong ptr); +uint64_t cpu_ldq_data(CPUS390XState *env, target_ulong ptr); + +void cpu_stb_data(CPUS390XState *env, target_ulong ptr, uint32_t data); +void cpu_stw_data(CPUS390XState *env, target_ulong ptr, uint32_t data); +void cpu_stl_data(CPUS390XState *env, target_ulong ptr, uint32_t data); +void cpu_stq_data(CPUS390XState *env, target_ulong ptr, uint64_t data); #endif |