__clear_user_page-sh4.S
上传用户:lgb322
上传日期:2013-02-24
资源大小:30529k
文件大小:1k
源码类别:

嵌入式Linux

开发平台:

Unix_Linux

  1. /* $Id$
  2.  *
  3.  * __clear_user_page implementation of SuperH
  4.  *
  5.  * Copyright (C) 2001  Niibe Yutaka & Kaz Kojima
  6.  *
  7.  */
  8. /*
  9.  * __clear_user_page
  10.  * @to: P1 address (with same color)
  11.  * @orig_to: P1 address
  12.  *
  13.  * void __clear_user_page(void *to, void *orig_to)
  14.  */
  15. /*
  16.  * r0 --- scratch 
  17.  * r4 --- to
  18.  * r5 --- orig_to
  19.  * r6 --- to + 4096
  20.  */
  21. #include <linux/linkage.h>
  22. ENTRY(__clear_user_page)
  23. mov r4,r6
  24. mov.w .L4096,r0
  25. add r0,r6
  26. mov #0,r0
  27. !
  28. 1: ocbi @r5
  29. add #32,r5
  30. movca.l r0,@r4
  31. mov r4,r1
  32. add #32,r4
  33. mov.l r0,@-r4
  34. mov.l r0,@-r4
  35. mov.l r0,@-r4
  36. mov.l r0,@-r4
  37. mov.l r0,@-r4
  38. mov.l r0,@-r4
  39. mov.l r0,@-r4
  40. add #28,r4
  41. cmp/eq r6,r4
  42. bf/s 1b
  43.  ocbwb @r1
  44. !
  45. rts
  46.  nop
  47. .L4096: .word 4096