/*
 * Copyright (C) 2004-2006 Atmel Corporation
 *
 * This program is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License version 2 as
 * published by the Free Software Foundation.
 */

	.text
.Lnot_word_aligned:
1:	ld.ub	r8, r12[0]
	sub	r10, 1
	st.b	r11++, r8
	reteq	r12
	tst	r11, r9
	brne	1b

	/* fall through */

	.global	__raw_readsb
	.type	__raw_readsb,@function
__raw_readsb:
	cp.w	r10, 0
	mov	r9, 3
	reteq	r12

	tst	r11, r9
	brne	.Lnot_word_aligned

	sub	r10, 4
	brlt	2f

1:	ldins.b	r8:t, r12[0]
	ldins.b	r8:u, r12[0]
	ldins.b	r8:l, r12[0]
	ldins.b r8:b, r12[0]
	st.w	r11++, r8
	sub	r10, 4
	brge	1b

2:	sub	r10, -4
	reteq	r12

3:	ld.ub	r8, r12[0]
	sub	r10, 1
	st.b	r11++, r8
	brne	3b

	retal	r12
