clear_page.S
上传用户:jlfgdled
上传日期:2013-04-10
资源大小:33168k
文件大小:0k
源码类别:

Linux/Unix编程

开发平台:

Unix_Linux

  1. #include <linux/linkage.h>
  2. /*
  3.  * Zero a page. 
  4.  * rdi page
  5.  */
  6. ENTRY(clear_page)
  7. xorl   %eax,%eax
  8. movl   $4096/128,%ecx
  9. movl   $128,%edx
  10. loop:
  11. #define PUT(x) movq %rax,x*8(%rdi) 
  12. PUT(0)
  13. PUT(1)
  14. PUT(2)
  15. PUT(3)
  16. PUT(4)
  17. PUT(5)
  18. PUT(6)
  19. PUT(7)
  20. PUT(8)
  21. PUT(9)
  22. PUT(10)
  23. PUT(11)
  24. PUT(12)
  25. PUT(13)
  26. PUT(14)
  27. PUT(15)
  28. addq    %rdx,%rdi
  29. decl %ecx
  30. jnz loop
  31. sfence
  32. ret
  33.