r270634 - docs: Document how safestack handles setjmp and exceptions.

Peter Collingbourne via cfe-commits cfe-commits at lists.llvm.org
Tue May 24 16:38:03 PDT 2016


Author: pcc
Date: Tue May 24 18:38:02 2016
New Revision: 270634

URL: http://llvm.org/viewvc/llvm-project?rev=270634&view=rev
Log:
docs: Document how safestack handles setjmp and exceptions.

Modified:
    cfe/trunk/docs/SafeStack.rst

Modified: cfe/trunk/docs/SafeStack.rst
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/docs/SafeStack.rst?rev=270634&r1=270633&r2=270634&view=diff
==============================================================================
--- cfe/trunk/docs/SafeStack.rst (original)
+++ cfe/trunk/docs/SafeStack.rst Tue May 24 18:38:02 2016
@@ -178,6 +178,17 @@ Please refer to the `Code-Pointer Integr
 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
 ------------
 




More information about the cfe-commits mailing list