Commit bd6be579 authored by Jiri Slaby's avatar Jiri Slaby Committed by Ingo Molnar

x86/fpu/math-emu: Add ENDPROC to functions

Functions in math-emu are annotated as ENTRY() symbols, but their
ends are not annotated at all. But these are standard functions
called from C, with proper stack register update etc.

Omitting the ends means:

  * the annotations are not paired and we cannot deal with such functions
    e.g. in objtool

  * the symbols are not marked as functions in the object file

  * there are no sizes of the functions in the object file

So fix this by adding ENDPROC() to each such case in math-emu.
Signed-off-by: default avatarJiri Slaby <jslaby@suse.cz>
Cc: Andy Lutomirski <luto@kernel.org>
Cc: Borislav Petkov <bp@alien8.de>
Cc: Brian Gerst <brgerst@gmail.com>
Cc: Denys Vlasenko <dvlasenk@redhat.com>
Cc: H. Peter Anvin <hpa@zytor.com>
Cc: Josh Poimboeuf <jpoimboe@redhat.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Link: http://lkml.kernel.org/r/20170824080624.7768-1-jslaby@suse.czSigned-off-by: default avatarIngo Molnar <mingo@kernel.org>
parent 9e085cef
...@@ -363,3 +363,4 @@ L_bugged_2: ...@@ -363,3 +363,4 @@ L_bugged_2:
pop %ebx pop %ebx
jmp L_exit jmp L_exit
#endif /* PARANOID */ #endif /* PARANOID */
ENDPROC(div_Xsig)
...@@ -44,4 +44,4 @@ ENTRY(FPU_div_small) ...@@ -44,4 +44,4 @@ ENTRY(FPU_div_small)
leave leave
ret ret
ENDPROC(FPU_div_small)
...@@ -62,6 +62,7 @@ ENTRY(mul32_Xsig) ...@@ -62,6 +62,7 @@ ENTRY(mul32_Xsig)
popl %esi popl %esi
leave leave
ret ret
ENDPROC(mul32_Xsig)
ENTRY(mul64_Xsig) ENTRY(mul64_Xsig)
...@@ -114,6 +115,7 @@ ENTRY(mul64_Xsig) ...@@ -114,6 +115,7 @@ ENTRY(mul64_Xsig)
popl %esi popl %esi
leave leave
ret ret
ENDPROC(mul64_Xsig)
...@@ -173,4 +175,4 @@ ENTRY(mul_Xsig_Xsig) ...@@ -173,4 +175,4 @@ ENTRY(mul_Xsig_Xsig)
popl %esi popl %esi
leave leave
ret ret
ENDPROC(mul_Xsig_Xsig)
...@@ -133,3 +133,4 @@ L_accum_done: ...@@ -133,3 +133,4 @@ L_accum_done:
popl %esi popl %esi
leave leave
ret ret
ENDPROC(polynomial_Xsig)
...@@ -94,6 +94,7 @@ L_overflow: ...@@ -94,6 +94,7 @@ L_overflow:
call arith_overflow call arith_overflow
pop %ebx pop %ebx
jmp L_exit jmp L_exit
ENDPROC(FPU_normalize)
...@@ -145,3 +146,4 @@ L_exit_nuo_zero: ...@@ -145,3 +146,4 @@ L_exit_nuo_zero:
popl %ebx popl %ebx
leave leave
ret ret
ENDPROC(FPU_normalize_nuo)
...@@ -706,3 +706,5 @@ L_exception_exit: ...@@ -706,3 +706,5 @@ L_exception_exit:
mov $-1,%eax mov $-1,%eax
jmp fpu_reg_round_special_exit jmp fpu_reg_round_special_exit
#endif /* PARANOID */ #endif /* PARANOID */
ENDPROC(FPU_round)
...@@ -165,3 +165,4 @@ L_exit: ...@@ -165,3 +165,4 @@ L_exit:
leave leave
ret ret
#endif /* PARANOID */ #endif /* PARANOID */
ENDPROC(FPU_u_add)
...@@ -469,3 +469,5 @@ L_exit: ...@@ -469,3 +469,5 @@ L_exit:
leave leave
ret ret
#endif /* PARANOID */ #endif /* PARANOID */
ENDPROC(FPU_u_div)
...@@ -146,3 +146,4 @@ L_exit: ...@@ -146,3 +146,4 @@ L_exit:
ret ret
#endif /* PARANOID */ #endif /* PARANOID */
ENDPROC(FPU_u_mul)
...@@ -270,3 +270,4 @@ L_exit: ...@@ -270,3 +270,4 @@ L_exit:
popl %esi popl %esi
leave leave
ret ret
ENDPROC(FPU_u_sub)
...@@ -78,7 +78,7 @@ L_exit: ...@@ -78,7 +78,7 @@ L_exit:
popl %ebx popl %ebx
leave leave
ret ret
ENDPROC(round_Xsig)
...@@ -138,4 +138,4 @@ L_n_exit: ...@@ -138,4 +138,4 @@ L_n_exit:
popl %ebx popl %ebx
leave leave
ret ret
ENDPROC(norm_Xsig)
...@@ -85,3 +85,4 @@ L_more_than_95: ...@@ -85,3 +85,4 @@ L_more_than_95:
popl %esi popl %esi
leave leave
ret ret
ENDPROC(shr_Xsig)
...@@ -92,6 +92,7 @@ L_more_than_95: ...@@ -92,6 +92,7 @@ L_more_than_95:
popl %esi popl %esi
leave leave
ret ret
ENDPROC(FPU_shrx)
/*---------------------------------------------------------------------------+ /*---------------------------------------------------------------------------+
...@@ -202,3 +203,4 @@ Ls_more_than_95: ...@@ -202,3 +203,4 @@ Ls_more_than_95:
popl %esi popl %esi
leave leave
ret ret
ENDPROC(FPU_shrxs)
...@@ -468,3 +468,4 @@ sqrt_more_prec_large: ...@@ -468,3 +468,4 @@ sqrt_more_prec_large:
/* Our estimate is too large */ /* Our estimate is too large */
movl $0x7fffff00,%eax movl $0x7fffff00,%eax
jmp sqrt_round_result jmp sqrt_round_result
ENDPROC(wm_sqrt)
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment