Skip to content

Commit 741394c

Browse files
committed
parisc: Inline trivial exception code in lusercopy.S
Fold trivial exception handling for lclear_user() and lstrnlen_user() into the main functions. Signed-off-by: Helge Deller <[email protected]>
1 parent 56868a4 commit 741394c

File tree

1 file changed

+9
-16
lines changed

1 file changed

+9
-16
lines changed

arch/parisc/lib/lusercopy.S

Lines changed: 9 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -56,12 +56,6 @@
5656
mtsp %r1,%sr1
5757
.endm
5858

59-
.macro fixup_branch lbl
60-
ldil L%\lbl, %r1
61-
ldo R%\lbl(%r1), %r1
62-
bv %r0(%r1)
63-
.endm
64-
6559
/*
6660
* unsigned long lclear_user(void *to, unsigned long n)
6761
*
@@ -82,16 +76,16 @@ $lclu_loop:
8276
$lclu_done:
8377
bv %r0(%r2)
8478
copy %r25,%r28
85-
.exit
86-
ENDPROC_CFI(lclear_user)
8779

88-
.section .fixup,"ax"
89-
2: fixup_branch $lclu_done
90-
ldo 1(%r25),%r25
91-
.previous
80+
2: b $lclu_done
81+
ldo 1(%r25),%r25
9282

9383
ASM_EXCEPTIONTABLE_ENTRY(1b,2b)
9484

85+
.exit
86+
ENDPROC_CFI(lclear_user)
87+
88+
9589
.procend
9690

9791
/*
@@ -122,16 +116,15 @@ $lslen_done:
122116
$lslen_nzero:
123117
b $lslen_done
124118
ldo 1(%r26),%r26 /* special case for N == 0 */
125-
ENDPROC_CFI(lstrnlen_user)
126119

127-
.section .fixup,"ax"
128-
3: fixup_branch $lslen_done
120+
3: b $lslen_done
129121
copy %r24,%r26 /* reset r26 so 0 is returned on fault */
130-
.previous
131122

132123
ASM_EXCEPTIONTABLE_ENTRY(1b,3b)
133124
ASM_EXCEPTIONTABLE_ENTRY(2b,3b)
134125

126+
ENDPROC_CFI(lstrnlen_user)
127+
135128
.procend
136129

137130

0 commit comments

Comments
 (0)