Patchwork target-arm: Fix compilation failure for 64 bit hosts

login
register
mail settings
Submitter Peter Maydell
Date May 26, 2011, 11:03 a.m.
Message ID <1306407816-3294-1-git-send-email-peter.maydell@linaro.org>
Download mbox | patch
Permalink /patch/97559/
State New
Headers show

Comments

Peter Maydell - May 26, 2011, 11:03 a.m.
Use the correct _ptr aliases for manipulating the pointer to
the fp_status; this fixes a compilation failure on 64 bit hosts.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
---
Apologies for the build breakage.

 target-arm/translate.c |   18 +++++++++---------
 1 files changed, 9 insertions(+), 9 deletions(-)
Stefan Weil - May 26, 2011, 5:57 p.m.
Am 26.05.2011 13:03, schrieb Peter Maydell:
> Use the correct _ptr aliases for manipulating the pointer to
> the fp_status; this fixes a compilation failure on 64 bit hosts.
>
> Signed-off-by: Peter Maydell<peter.maydell@linaro.org>
> ---
> Apologies for the build breakage.
>
>   target-arm/translate.c |   18 +++++++++---------
>   1 files changed, 9 insertions(+), 9 deletions(-)
>
>    

Acked-by: Stefan Weil <weil@mail.berlios.de>
Peter Maydell - June 2, 2011, 10:28 a.m.
Ping?

thanks
-- PMM

On 26 May 2011 18:57, Stefan Weil <weil@mail.berlios.de> wrote:
> Am 26.05.2011 13:03, schrieb Peter Maydell:
>>
>> Use the correct _ptr aliases for manipulating the pointer to
>> the fp_status; this fixes a compilation failure on 64 bit hosts.
>>
>> Signed-off-by: Peter Maydell<peter.maydell@linaro.org>
>> ---
>> Apologies for the build breakage.
>>
>>  target-arm/translate.c |   18 +++++++++---------
>>  1 files changed, 9 insertions(+), 9 deletions(-)
>>
>>
>
> Acked-by: Stefan Weil <weil@mail.berlios.de>
Aurelien Jarno - June 3, 2011, 4:19 p.m.
On Thu, May 26, 2011 at 12:03:36PM +0100, Peter Maydell wrote:
> Use the correct _ptr aliases for manipulating the pointer to
> the fp_status; this fixes a compilation failure on 64 bit hosts.
> 
> Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
> ---
> Apologies for the build breakage.
> 
>  target-arm/translate.c |   18 +++++++++---------
>  1 files changed, 9 insertions(+), 9 deletions(-)

Thanks, applied.

> diff --git a/target-arm/translate.c b/target-arm/translate.c
> index 1501db1..f5507ec 100644
> --- a/target-arm/translate.c
> +++ b/target-arm/translate.c
> @@ -980,20 +980,20 @@ static inline void gen_vfp_F1_ld0(int dp)
>  #define VFP_GEN_ITOF(name) \
>  static inline void gen_vfp_##name(int dp, int neon) \
>  { \
> -    TCGv statusptr = tcg_temp_new_i32(); \
> +    TCGv_ptr statusptr = tcg_temp_new_ptr(); \
>      int offset; \
>      if (neon) { \
>          offset = offsetof(CPUState, vfp.standard_fp_status); \
>      } else { \
>          offset = offsetof(CPUState, vfp.fp_status); \
>      } \
> -    tcg_gen_addi_i32(statusptr, cpu_env, offset); \
> +    tcg_gen_addi_ptr(statusptr, cpu_env, offset); \
>      if (dp) { \
>          gen_helper_vfp_##name##d(cpu_F0d, cpu_F0s, statusptr); \
>      } else { \
>          gen_helper_vfp_##name##s(cpu_F0s, cpu_F0s, statusptr); \
>      } \
> -    tcg_temp_free_i32(statusptr); \
> +    tcg_temp_free_ptr(statusptr); \
>  }
>  
>  VFP_GEN_ITOF(uito)
> @@ -1003,20 +1003,20 @@ VFP_GEN_ITOF(sito)
>  #define VFP_GEN_FTOI(name) \
>  static inline void gen_vfp_##name(int dp, int neon) \
>  { \
> -    TCGv statusptr = tcg_temp_new_i32(); \
> +    TCGv_ptr statusptr = tcg_temp_new_ptr(); \
>      int offset; \
>      if (neon) { \
>          offset = offsetof(CPUState, vfp.standard_fp_status); \
>      } else { \
>          offset = offsetof(CPUState, vfp.fp_status); \
>      } \
> -    tcg_gen_addi_i32(statusptr, cpu_env, offset); \
> +    tcg_gen_addi_ptr(statusptr, cpu_env, offset); \
>      if (dp) { \
>          gen_helper_vfp_##name##d(cpu_F0s, cpu_F0d, statusptr); \
>      } else { \
>          gen_helper_vfp_##name##s(cpu_F0s, cpu_F0s, statusptr); \
>      } \
> -    tcg_temp_free_i32(statusptr); \
> +    tcg_temp_free_ptr(statusptr); \
>  }
>  
>  VFP_GEN_FTOI(toui)
> @@ -1029,21 +1029,21 @@ VFP_GEN_FTOI(tosiz)
>  static inline void gen_vfp_##name(int dp, int shift, int neon) \
>  { \
>      TCGv tmp_shift = tcg_const_i32(shift); \
> -    TCGv statusptr = tcg_temp_new_i32(); \
> +    TCGv_ptr statusptr = tcg_temp_new_ptr(); \
>      int offset; \
>      if (neon) { \
>          offset = offsetof(CPUState, vfp.standard_fp_status); \
>      } else { \
>          offset = offsetof(CPUState, vfp.fp_status); \
>      } \
> -    tcg_gen_addi_i32(statusptr, cpu_env, offset); \
> +    tcg_gen_addi_ptr(statusptr, cpu_env, offset); \
>      if (dp) { \
>          gen_helper_vfp_##name##d(cpu_F0d, cpu_F0d, tmp_shift, statusptr); \
>      } else { \
>          gen_helper_vfp_##name##s(cpu_F0s, cpu_F0s, tmp_shift, statusptr); \
>      } \
>      tcg_temp_free_i32(tmp_shift); \
> -    tcg_temp_free_i32(statusptr); \
> +    tcg_temp_free_ptr(statusptr); \
>  }
>  VFP_GEN_FIX(tosh)
>  VFP_GEN_FIX(tosl)
> -- 
> 1.7.1
> 
> 
>

Patch

diff --git a/target-arm/translate.c b/target-arm/translate.c
index 1501db1..f5507ec 100644
--- a/target-arm/translate.c
+++ b/target-arm/translate.c
@@ -980,20 +980,20 @@  static inline void gen_vfp_F1_ld0(int dp)
 #define VFP_GEN_ITOF(name) \
 static inline void gen_vfp_##name(int dp, int neon) \
 { \
-    TCGv statusptr = tcg_temp_new_i32(); \
+    TCGv_ptr statusptr = tcg_temp_new_ptr(); \
     int offset; \
     if (neon) { \
         offset = offsetof(CPUState, vfp.standard_fp_status); \
     } else { \
         offset = offsetof(CPUState, vfp.fp_status); \
     } \
-    tcg_gen_addi_i32(statusptr, cpu_env, offset); \
+    tcg_gen_addi_ptr(statusptr, cpu_env, offset); \
     if (dp) { \
         gen_helper_vfp_##name##d(cpu_F0d, cpu_F0s, statusptr); \
     } else { \
         gen_helper_vfp_##name##s(cpu_F0s, cpu_F0s, statusptr); \
     } \
-    tcg_temp_free_i32(statusptr); \
+    tcg_temp_free_ptr(statusptr); \
 }
 
 VFP_GEN_ITOF(uito)
@@ -1003,20 +1003,20 @@  VFP_GEN_ITOF(sito)
 #define VFP_GEN_FTOI(name) \
 static inline void gen_vfp_##name(int dp, int neon) \
 { \
-    TCGv statusptr = tcg_temp_new_i32(); \
+    TCGv_ptr statusptr = tcg_temp_new_ptr(); \
     int offset; \
     if (neon) { \
         offset = offsetof(CPUState, vfp.standard_fp_status); \
     } else { \
         offset = offsetof(CPUState, vfp.fp_status); \
     } \
-    tcg_gen_addi_i32(statusptr, cpu_env, offset); \
+    tcg_gen_addi_ptr(statusptr, cpu_env, offset); \
     if (dp) { \
         gen_helper_vfp_##name##d(cpu_F0s, cpu_F0d, statusptr); \
     } else { \
         gen_helper_vfp_##name##s(cpu_F0s, cpu_F0s, statusptr); \
     } \
-    tcg_temp_free_i32(statusptr); \
+    tcg_temp_free_ptr(statusptr); \
 }
 
 VFP_GEN_FTOI(toui)
@@ -1029,21 +1029,21 @@  VFP_GEN_FTOI(tosiz)
 static inline void gen_vfp_##name(int dp, int shift, int neon) \
 { \
     TCGv tmp_shift = tcg_const_i32(shift); \
-    TCGv statusptr = tcg_temp_new_i32(); \
+    TCGv_ptr statusptr = tcg_temp_new_ptr(); \
     int offset; \
     if (neon) { \
         offset = offsetof(CPUState, vfp.standard_fp_status); \
     } else { \
         offset = offsetof(CPUState, vfp.fp_status); \
     } \
-    tcg_gen_addi_i32(statusptr, cpu_env, offset); \
+    tcg_gen_addi_ptr(statusptr, cpu_env, offset); \
     if (dp) { \
         gen_helper_vfp_##name##d(cpu_F0d, cpu_F0d, tmp_shift, statusptr); \
     } else { \
         gen_helper_vfp_##name##s(cpu_F0s, cpu_F0s, tmp_shift, statusptr); \
     } \
     tcg_temp_free_i32(tmp_shift); \
-    tcg_temp_free_i32(statusptr); \
+    tcg_temp_free_ptr(statusptr); \
 }
 VFP_GEN_FIX(tosh)
 VFP_GEN_FIX(tosl)