: "0" (SYS_ify (sigaction)), "g" (sig), "c" (act), "d" (oact));
: "0" (SYS_ify (sigaction)), "r" (sig), "c" (act), "d" (oact));
__sigaction (int sig, const struct sigaction *act, struct sigaction *oact){  struct sigaction newact;  int result;  if (act)    {      newact = *act;      newact.sa_restorer = ((act->sa_flags & SA_NOMASK)			    ? &&restore_nomask : &&restore);      act = &newact;    }  asm volatile ("pushl %%ebx\n"		"movl %2, %%ebx\n"		"int $0x80\n"		"popl %%ebx"		: "=a" (result)		: "0" (SYS_ify (sigaction)), "g" (sig), "c" (act), "d" (oact));  if (result < 0)    {      errno = -result;      return -1;    }  return 0; restore:  asm (#ifdef	PIC       "	pushl %%ebx\n"       "	call 0f\n"       "0:	popl %%ebx\n"       "	addl $_GLOBAL_OFFSET_TABLE_+[.-0b], %%ebx\n"       "	addl $8, %%esp\n"       "	call __sigsetmask@PLT\n"       "	addl $8, %%esp\n"       "	popl %%ebx\n"#else       "	addl $4, %%esp\n"       "	call __sigsetmask\n"       "	addl $4, %%esp\n"#endif       "	popl %%eax\n"       "	popl %%ecx\n"       "	popl %%edx\n"       "	popf\n"       "	ret"       : : ); restore_nomask:  asm ("	addl $4, %%esp\n"       "	popl %%eax\n"       "	popl %%ecx\n"       "	popl %%edx\n"       "	popf\n"       "	ret"       : : );  /* NOTREACHED */}