qemu-arm
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH v16 76/99] target/arm: restrict rebuild_hflags_a64 to TARGET_


From: Richard Henderson
Subject: Re: [PATCH v16 76/99] target/arm: restrict rebuild_hflags_a64 to TARGET_AARCH64
Date: Sat, 5 Jun 2021 13:06:25 -0700
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.8.1

On 6/4/21 8:52 AM, Alex Bennée wrote:
--- a/target/arm/tcg/helper.c
+++ b/target/arm/tcg/helper.c
@@ -999,6 +999,8 @@ static CPUARMTBFlags rebuild_hflags_a32(CPUARMState *env, 
int fp_el,
      return rebuild_hflags_common_32(env, fp_el, mmu_idx, flags);
  }
+#ifdef TARGET_AARCH64
+
  static CPUARMTBFlags rebuild_hflags_a64(CPUARMState *env, int el, int fp_el,
                                          ARMMMUIdx mmu_idx)
  {
@@ -1122,6 +1124,14 @@ static CPUARMTBFlags rebuild_hflags_a64(CPUARMState 
*env, int el, int fp_el,
      return rebuild_hflags_common(env, fp_el, mmu_idx, flags);
  }
+#else
+
+QEMU_ERROR("this should have been optimized away!")
+CPUARMTBFlags rebuild_hflags_a64(CPUARMState *env, int el, int fp_el,
+                                 ARMMMUIdx mmu_idx);
+
+#endif /* TARGET_AARCH64 */
+
  static CPUARMTBFlags rebuild_hflags_internal(CPUARMState *env)
  {
      int el = arm_current_el(env);
@@ -1183,6 +1193,7 @@ void HELPER(rebuild_hflags_a32)(CPUARMState *env, int el)
      env->hflags = rebuild_hflags_a32(env, fp_el, mmu_idx);
  }
+#ifdef TARGET_AARCH64
  void HELPER(rebuild_hflags_a64)(CPUARMState *env, int el)
  {
      int fp_el = fp_exception_el(env, el);
@@ -1190,6 +1201,7 @@ void HELPER(rebuild_hflags_a64)(CPUARMState *env, int el)
env->hflags = rebuild_hflags_a64(env, el, fp_el, mmu_idx);
  }
+#endif /* TARGET_AARCH64 */

It would be better to move some of this code to helper-a64.c, above multiple ifdefs.


r~




reply via email to

[Prev in Thread] Current Thread [Next in Thread]