Lines Matching refs:SafeStack
2 SafeStack title
11 SafeStack is an instrumentation pass that protects programs against attacks
20 SafeStack is a part of the `Code-Pointer Integrity (CPI) Project
26 The performance overhead of the SafeStack instrumentation is less than 0.1% on
34 In some cases, SafeStack actually improves the performance. Objects that end up
44 with SafeStack as is. SafeStack requires basic runtime support, which, on most
46 in when the program is compiled with SafeStack.
48 Linking a DSO with SafeStack is not currently supported.
54 work with SafeStack. One example is mark-and-sweep garbage collection
58 SafeStack supports linking statically modules that are compiled with and
59 without SafeStack. An executable compiled with SafeStack can load dynamic
60 libraries that are not compiled with SafeStack. At the moment, compiling
61 dynamic libraries with SafeStack is not supported.
71 SafeStack protects return addresses, spilled registers and local variables that
85 SafeStack with another mechanism that enforces the integrity of code pointers
92 SafeStack alone, an attacker can overwrite a function pointer on the heap or
96 In its current implementation, SafeStack provides precise protection against
114 At the moment, SafeStack assumes that the compiler's implementation is correct.
118 the SafeStack instrumentation in final binaries.
123 To enable SafeStack, just pass ``-fsanitize=safe-stack`` flag to both compile
129 SafeStack was tested on Linux, FreeBSD and MacOSX.
138 whether SafeStack is enabled. The macro ``__has_feature(safe_stack)`` can
144 // code that builds only under SafeStack
160 never be stored on the heap, as it would leak the location of the SafeStack.
178 project page for more information about the design of the SafeStack and its
190 in the function ``SafeStack::createStackRestorePoints``.