@@ -5765,29 +5765,6 @@ long do_rt_sigreturn(CPUArchState *env)
#endif
-static void handle_pending_signal(CPUArchState *cpu_env, int sig);
-
-void process_pending_signals(CPUArchState *cpu_env)
-{
- CPUState *cpu = ENV_GET_CPU(cpu_env);
- int sig;
- TaskState *ts = cpu->opaque;
-
- if (!ts->signal_pending)
- return;
-
- /* FIXME: This is not threadsafe. */
- for(sig = 1; sig <= TARGET_NSIG; sig++) {
- if (ts->sigtab[sig - 1].pending) {
- handle_pending_signal(cpu_env, sig);
- return;
- }
- }
- /* if no signal is pending, just return */
- ts->signal_pending = 0;
- return;
-}
-
static void handle_pending_signal(CPUArchState *cpu_env, int sig)
{
CPUState *cpu = ENV_GET_CPU(cpu_env);
@@ -5876,3 +5853,24 @@ static void handle_pending_signal(CPUArchState *cpu_env, int sig)
if (q != &k->info)
free_sigqueue(cpu_env, q);
}
+
+void process_pending_signals(CPUArchState *cpu_env)
+{
+ CPUState *cpu = ENV_GET_CPU(cpu_env);
+ int sig;
+ TaskState *ts = cpu->opaque;
+
+ if (!ts->signal_pending)
+ return;
+
+ /* FIXME: This is not threadsafe. */
+ for(sig = 1; sig <= TARGET_NSIG; sig++) {
+ if (ts->sigtab[sig - 1].pending) {
+ handle_pending_signal(cpu_env, sig);
+ return;
+ }
+ }
+ /* if no signal is pending, just return */
+ ts->signal_pending = 0;
+ return;
+}