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, r12[0] 12 sub r10, 1 13 st.b r11++, r8 14 reteq r12 15 tst r11, r9 16 brne 1b 17 18 /* fall through */ 19 20 .global __raw_readsb 21 .type __raw_readsb,@function 22__raw_readsb: 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: ldins.b r8:t, r12[0] 34 ldins.b r8:u, r12[0] 35 ldins.b r8:l, r12[0] 36 ldins.b r8:b, r12[0] 37 st.w r11++, r8 38 sub r10, 4 39 brge 1b 40 412: sub r10, -4 42 reteq r12 43 443: ld.ub r8, r12[0] 45 sub r10, 1 46 st.b r11++, r8 47 brne 3b 48 49 retal r12 50