Thumb-2: Implement the unified arch/arm/lib functions
[deliverable/linux.git] / arch / arm / lib / csumpartialcopyuser.S
index 14677fb4b0c4f504bc09ba19e2dcc5acd3362393..fd0e9dcd9fdc3243de42c38bb655112cfd3bdec4 100644 (file)
                .endm
 
                .macro  load1b, reg1
-9999:          ldrbt   \reg1, [r0], $1
-               .section __ex_table, "a"
-               .align  3
-               .long   9999b, 6001f
-               .previous
+               ldrusr  \reg1, r0, 1
                .endm
 
                .macro  load2b, reg1, reg2
-9999:          ldrbt   \reg1, [r0], $1
-9998:          ldrbt   \reg2, [r0], $1
-               .section __ex_table, "a"
-               .long   9999b, 6001f
-               .long   9998b, 6001f
-               .previous
+               ldrusr  \reg1, r0, 1
+               ldrusr  \reg2, r0, 1
                .endm
 
                .macro  load1l, reg1
-9999:          ldrt    \reg1, [r0], $4
-               .section __ex_table, "a"
-               .align  3
-               .long   9999b, 6001f
-               .previous
+               ldrusr  \reg1, r0, 4
                .endm
 
                .macro  load2l, reg1, reg2
-9999:          ldrt    \reg1, [r0], $4
-9998:          ldrt    \reg2, [r0], $4
-               .section __ex_table, "a"
-               .long   9999b, 6001f
-               .long   9998b, 6001f
-               .previous
+               ldrusr  \reg1, r0, 4
+               ldrusr  \reg2, r0, 4
                .endm
 
                .macro  load4l, reg1, reg2, reg3, reg4
-9999:          ldrt    \reg1, [r0], $4
-9998:          ldrt    \reg2, [r0], $4
-9997:          ldrt    \reg3, [r0], $4
-9996:          ldrt    \reg4, [r0], $4
-               .section __ex_table, "a"
-               .long   9999b, 6001f
-               .long   9998b, 6001f
-               .long   9997b, 6001f
-               .long   9996b, 6001f
-               .previous
+               ldrusr  \reg1, r0, 4
+               ldrusr  \reg2, r0, 4
+               ldrusr  \reg3, r0, 4
+               ldrusr  \reg4, r0, 4
                .endm
 
 /*
  */
                .section .fixup,"ax"
                .align  4
-6001:          mov     r4, #-EFAULT
+9001:          mov     r4, #-EFAULT
                ldr     r5, [fp, #4]            @ *err_ptr
                str     r4, [r5]
                ldmia   sp, {r1, r2}            @ retrieve dst, len
                add     r2, r2, r1
                mov     r0, #0                  @ zero the buffer
-6002:          teq     r2, r1
+9002:          teq     r2, r1
                strneb  r0, [r1], #1
-               bne     6002b
+               bne     9002b
                load_regs
                .previous
This page took 0.026132 seconds and 5 git commands to generate.