diff --git a/target-ppc/translate.c b/target-ppc/translate.c
index 9da4240..0b11fda 100644
--- a/target-ppc/translate.c
+++ b/target-ppc/translate.c
@@ -3618,9 +3618,8 @@
 static void gen_tw(DisasContext *ctx)
 {
     TCGv_i32 t0 = tcg_const_i32(TO(ctx->opcode));
-    /* Stop the translation since this might generate a trap exception
-       and/or following instructions might be invalid */
-    gen_stop_exception(ctx);
+    /* Update the nip since this might generate a trap exception */
+    gen_update_nip(ctx, ctx->nip);
     gen_helper_tw(cpu_gpr[rA(ctx->opcode)], cpu_gpr[rB(ctx->opcode)], t0);
     tcg_temp_free_i32(t0);
 }
@@ -3630,9 +3629,8 @@
 {
     TCGv t0 = tcg_const_tl(SIMM(ctx->opcode));
     TCGv_i32 t1 = tcg_const_i32(TO(ctx->opcode));
-    /* Stop the translation since this might generate a trap exception
-       and/or following instructions might be invalid */
-    gen_stop_exception(ctx);
+    /* Update the nip since this might generate a trap exception */
+    gen_update_nip(ctx, ctx->nip);
     gen_helper_tw(cpu_gpr[rA(ctx->opcode)], t0, t1);
     tcg_temp_free(t0);
     tcg_temp_free_i32(t1);
@@ -3643,9 +3641,8 @@
 static void gen_td(DisasContext *ctx)
 {
     TCGv_i32 t0 = tcg_const_i32(TO(ctx->opcode));
-    /* Stop the translation since this might generate a trap exception
-       and/or following instructions might be invalid */
-    gen_stop_exception(ctx);
+    /* Update the nip since this might generate a trap exception */
+    gen_update_nip(ctx, ctx->nip);
     gen_helper_td(cpu_gpr[rA(ctx->opcode)], cpu_gpr[rB(ctx->opcode)], t0);
     tcg_temp_free_i32(t0);
 }
@@ -3655,9 +3652,8 @@
 {
     TCGv t0 = tcg_const_tl(SIMM(ctx->opcode));
     TCGv_i32 t1 = tcg_const_i32(TO(ctx->opcode));
-    /* Stop the translation since this might generate a trap exception
-       and/or following instructions might be invalid */
-    gen_stop_exception(ctx);
+    /* Update the nip since this might generate a trap exception */
+    gen_update_nip(ctx, ctx->nip);
     gen_helper_td(cpu_gpr[rA(ctx->opcode)], t0, t1);
     tcg_temp_free(t0);
     tcg_temp_free_i32(t1);
