for a help

zslinux@263.net
8 Sep 1999 13:13:23 -0000


Dear Sir,
During my reading the code of Linux,I always encouter the programming like
this"
__asm__ __volatile__(
"movl %%esp,%%esi\n\t"
"int $0x80\n\t" /* Linux/i386 system call */
"cmpl %%esp,%%esi\n\t" /* child or parent? */
"je 1f\n\t" /* parent - jump */
/* Load the argument into eax, and push it. That way, it does
* not matter whether the called function is compiled with
* -mregparm or not. */
"movl %4,%%eax\n\t"
"pushl %%eax\n\t"
"call *%5\n\t" /* call fn */
"movl %3,%0\n\t" /* exit */
"int $0x80\n"
"1:\t"
:"=&a" (retval), "=&S" (d0)
:"0" (__NR_clone), "i" (__NR_exit),
"r" (arg), "r" (fn),
"b" (flags | CLONE_VM)
: "memory");

If you like, can you explain the
:"=&a" (retval), "=&S" (d0)
:"0" (__NR_clone), "i" (__NR_exit),
"r" (arg), "r" (fn),
"b" (flags | CLONE_VM)
: "memory");
for me,just the Language grammer,what does it mean?
Thanks very much.
BTW, how can I get the info of this address,and try myself to help others?
Zhangsu

_____________________________________________
首都在线--先进中国人的网上家园 http://www.263.net
免费邮箱 邮件杂志 签名邮件 邮件加密 邮件追身呼
搜索引擎 个人站点 在线游戏 网上聊天 网上挂号
金融王国 在线杀毒 跳蚤市场 软件下载 休闲娱乐

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/