On 12/05/2021 15:54, matheus.fe...@eldorado.org.br wrote:
From: Richard Henderson <richard.hender...@linaro.org>

Remove the synthetic "exception" after no more uses.

Signed-off-by: Richard Henderson <richard.hender...@linaro.org>
Signed-off-by: Matheus Ferst <matheus.fe...@eldorado.org.br>
---
  target/ppc/cpu.h       |  1 -
  target/ppc/translate.c | 27 +++++++++------------------
  2 files changed, 9 insertions(+), 19 deletions(-)

diff --git a/target/ppc/cpu.h b/target/ppc/cpu.h
index 98fcf1c4d6..503de6db85 100644
--- a/target/ppc/cpu.h
+++ b/target/ppc/cpu.h
@@ -135,7 +135,6 @@ enum {
      POWERPC_EXCP_STOP         = 0x200, /* stop translation                   
*/
      POWERPC_EXCP_BRANCH       = 0x201, /* branch instruction                 
*/
      /* QEMU exceptions: special cases we want to stop translation            
*/
-    POWERPC_EXCP_SYNC         = 0x202, /* context synchronizing instruction  */
      POWERPC_EXCP_SYSCALL_USER = 0x203, /* System call in user mode only      
*/
  };
diff --git a/target/ppc/translate.c b/target/ppc/translate.c
index 4bebb00bb2..88fe24ef95 100644
--- a/target/ppc/translate.c
+++ b/target/ppc/translate.c
@@ -359,14 +359,6 @@ static inline void gen_stop_exception(DisasContext *ctx)
      ctx->exception = POWERPC_EXCP_STOP;
  }
-#ifndef CONFIG_USER_ONLY
-/* No need to update nip here, as execution flow will change */
-static inline void gen_sync_exception(DisasContext *ctx)
-{
-    ctx->exception = POWERPC_EXCP_SYNC;
-}
-#endif
-
  
/*****************************************************************************/
  /* SPR READ/WRITE CALLBACKS */
@@ -5035,7 +5027,7 @@ static void gen_rfi(DisasContext *ctx)
      }
      gen_update_cfar(ctx, ctx->cia);
      gen_helper_rfi(cpu_env);
-    gen_sync_exception(ctx);
+    ctx->base.is_jmp = DISAS_EXIT;
  #endif
  }
@@ -5052,7 +5044,7 @@ static void gen_rfid(DisasContext *ctx)
      }
      gen_update_cfar(ctx, ctx->cia);
      gen_helper_rfid(cpu_env);
-    gen_sync_exception(ctx);
+    ctx->base.is_jmp = DISAS_EXIT;
  #endif
  }
@@ -5069,7 +5061,7 @@ static void gen_rfscv(DisasContext *ctx)
      }
      gen_update_cfar(ctx, ctx->cia);
      gen_helper_rfscv(cpu_env);
-    gen_sync_exception(ctx);
+    ctx->base.is_jmp = DISAS_EXIT;
  #endif
  }
  #endif
@@ -5082,7 +5074,7 @@ static void gen_hrfid(DisasContext *ctx)
      /* Restore CPU state */
      CHK_HV;
      gen_helper_hrfid(cpu_env);
-    gen_sync_exception(ctx);
+    ctx->base.is_jmp = DISAS_EXIT;
  #endif
  }
  #endif
@@ -6923,7 +6915,7 @@ static void gen_rfsvc(DisasContext *ctx)
      CHK_SV;
gen_helper_rfsvc(cpu_env);
-    gen_sync_exception(ctx);
+    ctx->base.is_jmp = DISAS_EXIT;
  #endif /* defined(CONFIG_USER_ONLY) */
  }
@@ -7303,7 +7295,7 @@ static void gen_rfci_40x(DisasContext *ctx)
      CHK_SV;
      /* Restore CPU state */
      gen_helper_40x_rfci(cpu_env);
-    gen_sync_exception(ctx);
+    ctx->base.is_jmp = DISAS_EXIT;
  #endif /* defined(CONFIG_USER_ONLY) */
  }
@@ -7315,7 +7307,7 @@ static void gen_rfci(DisasContext *ctx)
      CHK_SV;
      /* Restore CPU state */
      gen_helper_rfci(cpu_env);
-    gen_sync_exception(ctx);
+    ctx->base.is_jmp = DISAS_EXIT;
  #endif /* defined(CONFIG_USER_ONLY) */
  }
@@ -7330,7 +7322,7 @@ static void gen_rfdi(DisasContext *ctx)
      CHK_SV;
      /* Restore CPU state */
      gen_helper_rfdi(cpu_env);
-    gen_sync_exception(ctx);
+    ctx->base.is_jmp = DISAS_EXIT;
  #endif /* defined(CONFIG_USER_ONLY) */
  }
@@ -7343,7 +7335,7 @@ static void gen_rfmci(DisasContext *ctx)
      CHK_SV;
      /* Restore CPU state */
      gen_helper_rfmci(cpu_env);
-    gen_sync_exception(ctx);
+    ctx->base.is_jmp = DISAS_EXIT;
  #endif /* defined(CONFIG_USER_ONLY) */
  }
@@ -9429,7 +9421,6 @@ static void ppc_tr_translate_insn(DisasContextBase *dcbase, CPUState *cs)
          case POWERPC_EXCP_BRANCH:
              ctx->base.is_jmp = DISAS_NORETURN;
              break;
-        case POWERPC_EXCP_SYNC:
          case POWERPC_EXCP_STOP:
              ctx->base.is_jmp = DISAS_EXIT;
              break;
Reviewed-by: Bruno Larsen (billionai) <bruno.lar...@eldorado.org.br>
--
Bruno Piazera Larsen
Instituto de Pesquisas ELDORADO <https://www.eldorado.org.br/?utm_campaign=assinatura_de_e-mail&utm_medium=email&utm_source=RD+Station>
Departamento Computação Embarcada
Analista de Software Trainee
Aviso Legal - Disclaimer <https://www.eldorado.org.br/disclaimer.html>

Reply via email to