/* Raise a SIGFPE for the current process. sicode describes the signal being raised.  */
void vfp_raise_sigfpe(unsigned int sicode, struct pt_regs *regs)
/* Raise a SIGFPE for the current process. sicode describes the signal being raised.  */
void vfp_raise_sigfpe(unsigned int sicode, struct pt_regs *regs)
{
	siginfo_t info;
	memset(&info, 0, sizeof(info));
	info.si_signo = SIGFPE;
	info.si_code = sicode;
	info.si_addr = (void __user *)(instruction_pointer(regs) - 4);
	current->thread.error_code = 0;
	current->thread.trap_no = 6;
	send_sig_info(SIGFPE, &info, current);
}