Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 766ed428 authored by Glauber Costa's avatar Glauber Costa Committed by Ingo Molnar
Browse files

x86: replace function headers by macros.



In putuser_64.S, do it the i386 way, and replace the code
in beginning and end of functions with macros, since it's
always the same thing. Save lines.

Signed-off-by: default avatarGlauber Costa <gcosta@redhat.com>
Signed-off-by: default avatarH. Peter Anvin <hpa@zytor.com>
Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
parent 663aa96d
Loading
Loading
Loading
Loading
+14 −18
Original line number Diff line number Diff line
@@ -31,62 +31,58 @@
#include <asm/asm-offsets.h>
#include <asm/thread_info.h>

#define ENTER   CFI_STARTPROC ; \
                GET_THREAD_INFO(%rbx)
#define EXIT    ret ; \
                CFI_ENDPROC

	.text
ENTRY(__put_user_1)
	CFI_STARTPROC
	GET_THREAD_INFO(%rbx)
	ENTER
	cmpq TI_addr_limit(%rbx),%rcx
	jae bad_put_user
1:	movb %al,(%rcx)
	xorl %eax,%eax
	ret
	CFI_ENDPROC
	EXIT
ENDPROC(__put_user_1)

ENTRY(__put_user_2)
	CFI_STARTPROC
	GET_THREAD_INFO(%rbx)
	ENTER
	mov TI_addr_limit(%rbx),%rbx
	sub  $1, %rbx
	cmpq %rbx ,%rcx
	jae  bad_put_user
2:	movw %ax,(%rcx)
	xorl %eax,%eax
	ret
	CFI_ENDPROC
	EXIT
ENDPROC(__put_user_2)

ENTRY(__put_user_4)
	CFI_STARTPROC
	GET_THREAD_INFO(%rbx)
	ENTER
	mov TI_addr_limit(%rbx),%rbx
	sub  $3, %rbx
	cmp  %rbx, %rcx
	jae bad_put_user
3:	movl %eax,(%rcx)
	xorl %eax,%eax
	ret
	CFI_ENDPROC
	EXIT
ENDPROC(__put_user_4)

ENTRY(__put_user_8)
	CFI_STARTPROC
	GET_THREAD_INFO(%rbx)
	ENTER
	mov TI_addr_limit(%rbx),%rbx
	sub  $7, %rbx
	cmp  %rbx, %rcx
	jae bad_put_user
4:	movq %rax,(%rcx)
	xorl %eax,%eax
	ret
	CFI_ENDPROC
	EXIT
ENDPROC(__put_user_8)

bad_put_user:
	CFI_STARTPROC
	movq $(-EFAULT),%rax
	ret
	CFI_ENDPROC
	EXIT
END(bad_put_user)

.section __ex_table,"a"