static void setup_frame(int usig, struct emulated_sigaction *ka,

			target_sigset_t *set, CPUState *regs)

{

	struct sigframe *frame;

	abi_ulong frame_addr = get_sigframe(ka, regs, sizeof(*frame));

	int i, err = 0;



	if (!lock_user_struct(VERIFY_WRITE, frame, frame_addr, 0))

		return;



	err |= setup_sigcontext(&frame->sc, /*&frame->fpstate,*/ regs, set->sig[0]);



        for(i = 1; i < TARGET_NSIG_WORDS; i++) {

            if (__put_user(set->sig[i], &frame->extramask[i - 1]))

                goto end;

	}



	if (err == 0)

            err = setup_return(regs, ka, &frame->retcode, frame, usig);



end:

	unlock_user_struct(frame, frame_addr, 1);

        //	return err;

}

static void setup_frame(int usig, struct emulated_sigaction *ka,

			target_sigset_t *set, CPUState *regs)

{

	struct sigframe *frame;

	abi_ulong frame_addr = get_sigframe(ka, regs, sizeof(*frame));

	int i, err = 0;



	if (!lock_user_struct(VERIFY_WRITE, frame, frame_addr, 0))

		return;



	err |= setup_sigcontext(&frame->sc,  regs, set->sig[0]);



        for(i = 1; i < TARGET_NSIG_WORDS; i++) {

            if (__put_user(set->sig[i], &frame->extramask[i - 1]))

                goto end;

	}



	if (err == 0)

            err = setup_return(regs, ka, &frame->retcode, frame, usig);



end:

	unlock_user_struct(frame, frame_addr, 1);

        

}

static void FUNC_0(int VAR_0, struct emulated_sigaction *VAR_1,

			target_sigset_t *VAR_2, CPUState *VAR_3)

{

	struct sigframe *VAR_4;

	abi_ulong frame_addr = get_sigframe(VAR_1, VAR_3, sizeof(*VAR_4));

	int VAR_5, VAR_6 = 0;



	if (!lock_user_struct(VERIFY_WRITE, VAR_4, frame_addr, 0))

		return;



	VAR_6 |= setup_sigcontext(&VAR_4->sc,  VAR_3, VAR_2->sig[0]);



        for(VAR_5 = 1; VAR_5 < TARGET_NSIG_WORDS; VAR_5++) {

            if (__put_user(VAR_2->sig[VAR_5], &VAR_4->extramask[VAR_5 - 1]))

                goto end;

	}



	if (VAR_6 == 0)

            VAR_6 = setup_return(VAR_3, VAR_1, &VAR_4->retcode, VAR_4, VAR_0);



end:

	unlock_user_struct(VAR_4, frame_addr, 1);

        

}

static void FUNC_0(int VAR_0, struct emulated_sigaction *VAR_1,
target_sigset_t *VAR_2, CPUState *VAR_3)
{ struct sigframe *VAR_4; abi_ulong frame_addr = get_sigframe(VAR_1, VAR_3, sizeof(*VAR_4)); int VAR_5, VAR_6 = 0; if (!lock_user_struct(VERIFY_WRITE, VAR_4, frame_addr, 0))
return; VAR_6 |= setup_sigcontext(&VAR_4->sc,  VAR_3, VAR_2->sig[0]); for(VAR_5 = 1; VAR_5 < TARGET_NSIG_WORDS; VAR_5++) { if (__put_user(VAR_2->sig[VAR_5], &VAR_4->extramask[VAR_5 - 1]))
goto end; } if (VAR_6 == 0)
VAR_6 = setup_return(VAR_3, VAR_1, &VAR_4->retcode, VAR_4, VAR_0); end:
unlock_user_struct(VAR_4, frame_addr, 1); }