[PATCH 01/12] target/mips: Declare cpu_is_bigendian_env() in 'internal.h'

Philippe Mathieu-Daudé posted 12 patches 2 months, 3 weeks ago
There is a newer version of this series
[PATCH 01/12] target/mips: Declare cpu_is_bigendian_env() in 'internal.h'
Posted by Philippe Mathieu-Daudé 2 months, 3 weeks ago
In order to re-use cpu_is_bigendian(), declare it on "internal.h"
after renaming it as cpu_is_bigendian_env().

Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
---
 target/mips/internal.h        |  6 ++++++
 target/mips/tcg/ldst_helper.c | 15 +++++----------
 2 files changed, 11 insertions(+), 10 deletions(-)

diff --git a/target/mips/internal.h b/target/mips/internal.h
index a9a22ea00e..1ce2bbf62d 100644
--- a/target/mips/internal.h
+++ b/target/mips/internal.h
@@ -9,6 +9,7 @@
 #define MIPS_INTERNAL_H
 
 #include "exec/memattrs.h"
+#include "exec/memop.h"
 #ifdef CONFIG_TCG
 #include "tcg/tcg-internal.h"
 #endif
@@ -287,6 +288,11 @@ static inline int mips_vp_active(CPUMIPSState *env)
     return 1;
 }
 
+static inline bool cpu_is_bigendian_env(CPUMIPSState *env)
+{
+    return extract32(env->CP0_Config0, CP0C0_BE, 1);
+}
+
 static inline void compute_hflags(CPUMIPSState *env)
 {
     env->hflags &= ~(MIPS_HFLAG_COP1X | MIPS_HFLAG_64 | MIPS_HFLAG_CP0 |
diff --git a/target/mips/tcg/ldst_helper.c b/target/mips/tcg/ldst_helper.c
index 97056d00a2..3d5cd2fdfa 100644
--- a/target/mips/tcg/ldst_helper.c
+++ b/target/mips/tcg/ldst_helper.c
@@ -53,11 +53,6 @@ HELPER_LD_ATOMIC(lld, ldq, 0x7, (target_ulong))
 
 #endif /* !CONFIG_USER_ONLY */
 
-static inline bool cpu_is_bigendian(CPUMIPSState *env)
-{
-    return extract32(env->CP0_Config0, CP0C0_BE, 1);
-}
-
 static inline target_ulong get_lmask(CPUMIPSState *env,
                                      target_ulong value, unsigned bits)
 {
@@ -65,7 +60,7 @@ static inline target_ulong get_lmask(CPUMIPSState *env,
 
     value &= mask;
 
-    if (!cpu_is_bigendian(env)) {
+    if (!cpu_is_bigendian_env(env)) {
         value ^= mask;
     }
 
@@ -76,7 +71,7 @@ void helper_swl(CPUMIPSState *env, target_ulong arg1, target_ulong arg2,
                 int mem_idx)
 {
     target_ulong lmask = get_lmask(env, arg2, 32);
-    int dir = cpu_is_bigendian(env) ? 1 : -1;
+    int dir = cpu_is_bigendian_env(env) ? 1 : -1;
 
     cpu_stb_mmuidx_ra(env, arg2, (uint8_t)(arg1 >> 24), mem_idx, GETPC());
 
@@ -100,7 +95,7 @@ void helper_swr(CPUMIPSState *env, target_ulong arg1, target_ulong arg2,
                 int mem_idx)
 {
     target_ulong lmask = get_lmask(env, arg2, 32);
-    int dir = cpu_is_bigendian(env) ? 1 : -1;
+    int dir = cpu_is_bigendian_env(env) ? 1 : -1;
 
     cpu_stb_mmuidx_ra(env, arg2, (uint8_t)arg1, mem_idx, GETPC());
 
@@ -130,7 +125,7 @@ void helper_sdl(CPUMIPSState *env, target_ulong arg1, target_ulong arg2,
                 int mem_idx)
 {
     target_ulong lmask = get_lmask(env, arg2, 64);
-    int dir = cpu_is_bigendian(env) ? 1 : -1;
+    int dir = cpu_is_bigendian_env(env) ? 1 : -1;
 
     cpu_stb_mmuidx_ra(env, arg2, (uint8_t)(arg1 >> 56), mem_idx, GETPC());
 
@@ -174,7 +169,7 @@ void helper_sdr(CPUMIPSState *env, target_ulong arg1, target_ulong arg2,
                 int mem_idx)
 {
     target_ulong lmask = get_lmask(env, arg2, 64);
-    int dir = cpu_is_bigendian(env) ? 1 : -1;
+    int dir = cpu_is_bigendian_env(env) ? 1 : -1;
 
     cpu_stb_mmuidx_ra(env, arg2, (uint8_t)arg1, mem_idx, GETPC());
 
-- 
2.45.2


Re: [PATCH 01/12] target/mips: Declare cpu_is_bigendian_env() in 'internal.h'
Posted by Richard Henderson 2 months, 2 weeks ago
On 9/30/24 02:10, Philippe Mathieu-Daudé wrote:
> In order to re-use cpu_is_bigendian(), declare it on "internal.h"
> after renaming it as cpu_is_bigendian_env().
> 
> Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
> ---
>   target/mips/internal.h        |  6 ++++++
>   target/mips/tcg/ldst_helper.c | 15 +++++----------
>   2 files changed, 11 insertions(+), 10 deletions(-)
> 
> diff --git a/target/mips/internal.h b/target/mips/internal.h
> index a9a22ea00e..1ce2bbf62d 100644
> --- a/target/mips/internal.h
> +++ b/target/mips/internal.h
> @@ -9,6 +9,7 @@
>   #define MIPS_INTERNAL_H
>   
>   #include "exec/memattrs.h"
> +#include "exec/memop.h"
>   #ifdef CONFIG_TCG
>   #include "tcg/tcg-internal.h"
>   #endif
> @@ -287,6 +288,11 @@ static inline int mips_vp_active(CPUMIPSState *env)
>       return 1;
>   }
>   
> +static inline bool cpu_is_bigendian_env(CPUMIPSState *env)
> +{
> +    return extract32(env->CP0_Config0, CP0C0_BE, 1);
> +}

Using the cpu_is_bigendian name for DisasContext is the error I think.


r~