diff options
author | Glauber Costa <gcosta@redhat.com> | 2008-06-24 11:40:55 -0400 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2008-07-09 03:14:06 -0400 |
commit | 268cf048c890d10bd3a86bd87922ed8a722d502f (patch) | |
tree | f5ea14b5f422686a537561a37569c40722327d8a /arch/x86/lib | |
parent | 6c2d458680d49d939ffd4b4cdc84d9e004d65910 (diff) |
x86: don't save ebx in putuser_32.S.
Clobber it in the inline asm macros, and let the compiler do this for us.
Signed-off-by: Glauber Costa <gcosta@redhat.com>
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'arch/x86/lib')
-rw-r--r-- | arch/x86/lib/putuser_32.S | 13 |
1 files changed, 2 insertions, 11 deletions
diff --git a/arch/x86/lib/putuser_32.S b/arch/x86/lib/putuser_32.S index f58fba109d18..5b2a926f0e28 100644 --- a/arch/x86/lib/putuser_32.S +++ b/arch/x86/lib/putuser_32.S | |||
@@ -26,14 +26,8 @@ | |||
26 | */ | 26 | */ |
27 | 27 | ||
28 | #define ENTER CFI_STARTPROC ; \ | 28 | #define ENTER CFI_STARTPROC ; \ |
29 | pushl %ebx ; \ | ||
30 | CFI_ADJUST_CFA_OFFSET 4 ; \ | ||
31 | CFI_REL_OFFSET ebx, 0 ; \ | ||
32 | GET_THREAD_INFO(%ebx) | 29 | GET_THREAD_INFO(%ebx) |
33 | #define EXIT popl %ebx ; \ | 30 | #define EXIT ret ; \ |
34 | CFI_ADJUST_CFA_OFFSET -4 ; \ | ||
35 | CFI_RESTORE ebx ; \ | ||
36 | ret ; \ | ||
37 | CFI_ENDPROC | 31 | CFI_ENDPROC |
38 | 32 | ||
39 | .text | 33 | .text |
@@ -81,10 +75,7 @@ ENTRY(__put_user_8) | |||
81 | ENDPROC(__put_user_8) | 75 | ENDPROC(__put_user_8) |
82 | 76 | ||
83 | bad_put_user: | 77 | bad_put_user: |
84 | CFI_STARTPROC simple | 78 | CFI_STARTPROC |
85 | CFI_DEF_CFA esp, 2*4 | ||
86 | CFI_OFFSET eip, -1*4 | ||
87 | CFI_OFFSET ebx, -2*4 | ||
88 | movl $-14,%eax | 79 | movl $-14,%eax |
89 | EXIT | 80 | EXIT |
90 | END(bad_put_user) | 81 | END(bad_put_user) |