]> git.saurik.com Git - apple/xnu.git/blobdiff - bsd/dev/i386/munge.s
xnu-1456.1.26.tar.gz
[apple/xnu.git] / bsd / dev / i386 / munge.s
index 18a3dc4bb86beff1cbca78f185bcd9a5ae49dbcf..d174c06e3183e47e4ed1a2657f4b9386d27cac5b 100644 (file)
@@ -150,18 +150,36 @@ ENTRY(munge_wlw)
        movl    %edx,4(%ecx)
        ret
 
+Entry(munge_wwwlw)
+       movl    8(%esp),%ecx    // get &uu_args
+       xorl    %edx,%edx
+       movl    20(%ecx),%eax
+       movl    %eax,32(%ecx)
+       movl    %edx,36(%ecx)
+       jmp     Lwwwl
+       
 ENTRY(munge_wwwl)
        movl    8(%esp),%ecx    // get &uu_args
        xorl    %edx,%edx
+Lwwwl:
        movl    12(%ecx),%eax
        movl    %eax,24(%ecx)
        movl    16(%ecx),%eax
        movl    %eax,28(%ecx)
        jmp     Lw3
 
+ENTRY(munge_wwwwlw)
+       movl    8(%esp),%ecx    // get &uu_args
+       xorl    %edx,%edx
+       movl    24(%ecx),%eax
+       movl    %eax,40(%ecx)
+       movl    %edx,44(%ecx)
+       jmp     Lwwwwl
+
 ENTRY(munge_wwwwl)
        movl    8(%esp),%ecx    // get &uu_args
        xorl    %edx,%edx
+Lwwwwl:
        movl    16(%ecx),%eax
        movl    %eax,32(%ecx)
        movl    20(%ecx),%eax
@@ -177,6 +195,32 @@ ENTRY(munge_wwwwwl)
        movl    %eax,44(%ecx)
        jmp     Lw5
 
+ENTRY(munge_wwwwwwlw)
+       movl    8(%esp),%ecx    // get &uu_args
+       xorl    %edx,%edx
+       movl    32(%ecx),%eax
+       movl    %eax,56(%ecx)
+       movl    %edx,60(%ecx)
+       movl    24(%ecx),%eax
+       movl    %eax,48(%ecx)
+       movl    28(%ecx),%eax
+       movl    %eax,52(%ecx)
+       jmp     Lw6
+       
+
+ENTRY(munge_wwwwwwll)
+       movl    8(%esp),%ecx    // get &uu_args
+       xorl    %edx,%edx
+       movl    32(%ecx),%eax
+       movl    %eax,56(%ecx)
+       movl    36(%ecx),%eax
+       movl    %eax,60(%ecx)
+       movl    24(%ecx),%eax
+       movl    %eax,48(%ecx)
+       movl    28(%ecx),%eax
+       movl    %eax,52(%ecx)
+       jmp     Lw6
+
 ENTRY(munge_wsw)
        movl    8(%esp),%ecx    // get &uu_args
        movl    8(%ecx),%eax
@@ -209,3 +253,8 @@ ENTRY(munge_wwwsw)
        movl    %edx,28(%ecx)
        xorl    %edx,%edx
        jmp     Lw3
+
+ENTRY(munge_llllll)
+       ret                                             // actually, this method has nothing to do - all
+                                                       // arguments are already 64-bits, with no mixing of
+                                                       // args that need sign/zero extension