diff options
Diffstat (limited to 'arch/arm/lib/getuser.S')
-rw-r--r-- | arch/arm/lib/getuser.S | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/arch/arm/lib/getuser.S b/arch/arm/lib/getuser.S index 2034d4dbe6ad..6763088b7607 100644 --- a/arch/arm/lib/getuser.S +++ b/arch/arm/lib/getuser.S | |||
@@ -26,16 +26,16 @@ | |||
26 | * Note that ADDR_LIMIT is either 0 or 0xc0000000. | 26 | * Note that ADDR_LIMIT is either 0 or 0xc0000000. |
27 | * Note also that it is intended that __get_user_bad is not global. | 27 | * Note also that it is intended that __get_user_bad is not global. |
28 | */ | 28 | */ |
29 | #include <linux/linkage.h> | ||
29 | #include <asm/errno.h> | 30 | #include <asm/errno.h> |
30 | 31 | ||
31 | .global __get_user_1 | 32 | ENTRY(__get_user_1) |
32 | __get_user_1: | ||
33 | 1: ldrbt r2, [r0] | 33 | 1: ldrbt r2, [r0] |
34 | mov r0, #0 | 34 | mov r0, #0 |
35 | mov pc, lr | 35 | mov pc, lr |
36 | ENDPROC(__get_user_1) | ||
36 | 37 | ||
37 | .global __get_user_2 | 38 | ENTRY(__get_user_2) |
38 | __get_user_2: | ||
39 | 2: ldrbt r2, [r0], #1 | 39 | 2: ldrbt r2, [r0], #1 |
40 | 3: ldrbt r3, [r0] | 40 | 3: ldrbt r3, [r0] |
41 | #ifndef __ARMEB__ | 41 | #ifndef __ARMEB__ |
@@ -45,17 +45,19 @@ __get_user_2: | |||
45 | #endif | 45 | #endif |
46 | mov r0, #0 | 46 | mov r0, #0 |
47 | mov pc, lr | 47 | mov pc, lr |
48 | ENDPROC(__get_user_2) | ||
48 | 49 | ||
49 | .global __get_user_4 | 50 | ENTRY(__get_user_4) |
50 | __get_user_4: | ||
51 | 4: ldrt r2, [r0] | 51 | 4: ldrt r2, [r0] |
52 | mov r0, #0 | 52 | mov r0, #0 |
53 | mov pc, lr | 53 | mov pc, lr |
54 | ENDPROC(__get_user_4) | ||
54 | 55 | ||
55 | __get_user_bad: | 56 | __get_user_bad: |
56 | mov r2, #0 | 57 | mov r2, #0 |
57 | mov r0, #-EFAULT | 58 | mov r0, #-EFAULT |
58 | mov pc, lr | 59 | mov pc, lr |
60 | ENDPROC(__get_user_bad) | ||
59 | 61 | ||
60 | .section __ex_table, "a" | 62 | .section __ex_table, "a" |
61 | .long 1b, __get_user_bad | 63 | .long 1b, __get_user_bad |