mirror of https://github.com/microsoft/clang.git
docs: Document how safestack handles setjmp and exceptions.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@270634 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
f042fe468b
commit
e8a97b24a3
|
@ -178,6 +178,17 @@ Please refer to the `Code-Pointer Integrity <http://dslab.epfl.ch/proj/cpi/>`__
|
|||
project page for more information about the design of the SafeStack and its
|
||||
related technologies.
|
||||
|
||||
setjmp and exception handling
|
||||
-----------------------------
|
||||
|
||||
The `OSDI'14 paper <http://dslab.epfl.ch/pubs/cpi.pdf>`_ mentions that
|
||||
on Linux the instrumentation pass finds calls to setjmp or functions that
|
||||
may throw an exception, and inserts required instrumentation at their call
|
||||
sites. Specifically, the instrumentation pass saves the shadow stack pointer
|
||||
on the safe stack before the call site, and restores it either after the
|
||||
call to setjmp or after an exception has been caught. This is implemented
|
||||
in the function ``SafeStack::createStackRestorePoints``.
|
||||
|
||||
Publications
|
||||
------------
|
||||
|
||||
|
|
Loading…
Reference in New Issue