Commit 912bcfaf authored by Youling Tang's avatar Youling Tang Committed by Huacai Chen
Browse files

LoongArch: Remove the .fixup section usage



Use the `.L_xxx` label to improve fixup code and then remove the .fixup
section usage.

Signed-off-by: default avatarYouling Tang <tangyouling@loongson.cn>
Signed-off-by: default avatarHuacai Chen <chenhuacai@loongson.cn>
parent 672999cf
Loading
Loading
Loading
Loading
+5 −9
Original line number Diff line number Diff line
@@ -9,15 +9,11 @@
#include <asm/export.h>
#include <asm/regdef.h>

.macro fixup_ex from, to, offset, fix
.if \fix
	.section .fixup, "ax"
\to:	addi.d	a0, a1, \offset
.irp to, 0
.L_fixup_handle_\to\():
	addi.d	a0, a1, (\to) * (-8)
	jr	ra
	.previous
.endif
	_asm_extable \from\()b, \to\()b
.endm
.endr

/*
 * unsigned long __clear_user(void *addr, size_t size)
@@ -36,7 +32,7 @@ SYM_FUNC_START(__clear_user)
2:	move	a0, a1
	jr	ra

	fixup_ex 1, 3, 0, 1
	_asm_extable 1b, .L_fixup_handle_0
SYM_FUNC_END(__clear_user)

EXPORT_SYMBOL(__clear_user)
+6 −10
Original line number Diff line number Diff line
@@ -9,15 +9,11 @@
#include <asm/export.h>
#include <asm/regdef.h>

.macro fixup_ex from, to, offset, fix
.if \fix
	.section .fixup, "ax"
\to:	addi.d	a0, a2, \offset
.irp to, 0
.L_fixup_handle_\to\():
	addi.d	a0, a2, (\to) * (-8)
	jr	ra
	.previous
.endif
	_asm_extable \from\()b, \to\()b
.endm
.endr

/*
 * unsigned long __copy_user(void *to, const void *from, size_t n)
@@ -39,8 +35,8 @@ SYM_FUNC_START(__copy_user)
3:	move	a0, a2
	jr	ra

	fixup_ex 1, 4, 0, 1
	fixup_ex 2, 4, 0, 0
	_asm_extable 1b, .L_fixup_handle_0
	_asm_extable 2b, .L_fixup_handle_0
SYM_FUNC_END(__copy_user)

EXPORT_SYMBOL(__copy_user)