mirror of
https://sourceware.org/git/glibc.git
synced 2024-12-23 11:20:07 +00:00
arm: mark __startcontext as .cantunwind (bug 20435)
__startcontext marks the bottom of the call stack of the contexts created by makecontext.
This commit is contained in:
parent
89b7dd27ea
commit
9e2ff6c9cc
@ -1,3 +1,9 @@
|
||||
2016-08-15 Andreas Schwab <schwab@suse.de>
|
||||
|
||||
[BZ #20435]
|
||||
* sysdeps/unix/sysv/linux/arm/setcontext.S (__startcontext): Mark
|
||||
as .cantunwind.
|
||||
|
||||
2016-08-12 Joseph Myers <joseph@codesourcery.com>
|
||||
|
||||
* sysdeps/powerpc/fpu/fsetexcptflg.c (__fesetexceptflag): Add
|
||||
|
@ -86,12 +86,19 @@ weak_alias(__setcontext, setcontext)
|
||||
|
||||
/* Called when a makecontext() context returns. Start the
|
||||
context in R4 or fall through to exit(). */
|
||||
/* Unwind descriptors are looked up based on PC - 2, so we have to
|
||||
make sure to mark the instruction preceding the __startcontext
|
||||
label as .cantunwind. */
|
||||
.fnstart
|
||||
.cantunwind
|
||||
nop
|
||||
ENTRY(__startcontext)
|
||||
movs r0, r4
|
||||
bne PLTJMP(__setcontext)
|
||||
|
||||
@ New context was 0 - exit
|
||||
b PLTJMP(HIDDEN_JUMPTARGET(exit))
|
||||
.fnend
|
||||
END(__startcontext)
|
||||
|
||||
#ifdef PIC
|
||||
|
Loading…
Reference in New Issue
Block a user