• Home
  • History
  • Annotate
  • Line#
  • Navigate
  • Raw
  • Download
  • only in /asuswrt-rt-n18u-9.0.0.4.380.2695/release/src-rt-6.x.4708/linux/linux-2.6.36/arch/avr32/lib/
1/*
2 * Copyright (C) 2004-2006 Atmel Corporation
3 *
4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License version 2 as
6 * published by the Free Software Foundation.
7 */
8
9	.text
10.Lnot_word_aligned:
111:	ld.ub	r8, r11++
12	sub	r10, 1
13	st.b	r12[0], r8
14	reteq	r12
15	tst	r11, r9
16	brne	1b
17
18	/* fall through */
19
20	.global	__raw_writesb
21	.type	__raw_writesb,@function
22__raw_writesb:
23	cp.w	r10, 0
24	mov	r9, 3
25	reteq	r12
26
27	tst	r11, r9
28	brne	.Lnot_word_aligned
29
30	sub	r10, 4
31	brlt	2f
32
331:	ld.w	r8, r11++
34	bfextu	r9, r8, 24, 8
35	st.b	r12[0], r9
36	bfextu	r9, r8, 16, 8
37	st.b	r12[0], r9
38	bfextu	r9, r8, 8, 8
39	st.b	r12[0], r9
40	st.b	r12[0], r8
41	sub	r10, 4
42	brge	1b
43
442:	sub	r10, -4
45	reteq	r12
46
473:	ld.ub	r8, r11++
48	sub	r10, 1
49	st.b	r12[0], r8
50	brne	3b
51
52	retal	r12
53