summaryrefslogtreecommitdiffstats
path: root/scripts
diff options
context:
space:
mode:
authorAlex Bennée2017-11-14 11:25:35 +0100
committerRichard Henderson2017-12-28 02:20:44 +0100
commit65255e8efdd5fca602bcc4ff61a879939ff75f4f (patch)
tree8b830a3e370702042443b1d98c990a60837a68a4 /scripts
parentMerge remote-tracking branch 'remotes/vivier/tags/m68k-for-2.12-pull-request'... (diff)
downloadqemu-65255e8efdd5fca602bcc4ff61a879939ff75f4f.tar.gz
qemu-65255e8efdd5fca602bcc4ff61a879939ff75f4f.tar.xz
qemu-65255e8efdd5fca602bcc4ff61a879939ff75f4f.zip
target/*helper: don't check retaddr before calling cpu_restore_state
cpu_restore_state officially supports being passed an address it can't resolve the state for. As a result the checks in the helpers are superfluous and can be removed. This makes the code consistent with other users of cpu_restore_state. Of course this does nothing to address what to do if cpu_restore_state can't resolve the state but so far it seems this is handled elsewhere. The change was made with included coccinelle script. Signed-off-by: Alex Bennée <alex.bennee@linaro.org> [rth: Fixed up comment indentation. Added second hunk to script to combine cpu_restore_state and cpu_loop_exit.] Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Diffstat (limited to 'scripts')
-rw-r--r--scripts/coccinelle/cpu_restore_state.cocci19
1 files changed, 19 insertions, 0 deletions
diff --git a/scripts/coccinelle/cpu_restore_state.cocci b/scripts/coccinelle/cpu_restore_state.cocci
new file mode 100644
index 0000000000..61bc749d14
--- /dev/null
+++ b/scripts/coccinelle/cpu_restore_state.cocci
@@ -0,0 +1,19 @@
+// Remove unneeded tests before calling cpu_restore_state
+//
+// spatch --macro-file scripts/cocci-macro-file.h \
+// --sp-file ./scripts/coccinelle/cpu_restore_state.cocci \
+// --keep-comments --in-place --use-gitgrep --dir target
+@@
+expression A;
+expression C;
+@@
+-if (A) {
+ cpu_restore_state(C, A);
+-}
+@@
+expression A;
+expression C;
+@@
+- cpu_restore_state(C, A);
+- cpu_loop_exit(C);
++ cpu_loop_exit_restore(C, A);