diff --git a/src/target/arm_simulator.c b/src/target/arm_simulator.c
index 93fb3dd9b522b93ec0319d11b4e66f06362202a7..e2f49c390331dbc988178d9159e7850c702b0e9a 100644
--- a/src/target/arm_simulator.c
+++ b/src/target/arm_simulator.c
@@ -358,7 +358,7 @@ int arm_simulate_step_core(target_t *target, uint32_t *dry_run_pc, struct arm_si
 
 		if (dry_run_pc)
 		{
-			*dry_run_pc = target;
+			*dry_run_pc = target & ~1;
 			return ERROR_OK;
 		}
 		else