You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+8-4Lines changed: 8 additions & 4 deletions
Original file line number
Diff line number
Diff line change
@@ -168,11 +168,15 @@ platforms may need to be done independently.
168
168
- *make* using `make PLATFORM_PREFIX=aarch64-linux-gnu- EMULATOR=qemu-aarch64 test`
169
169
170
170
## A note about Intel CET
171
-
Intel's Conontrol-Flow Enforcement Technology is incompatible with stack switching
172
-
because it imploys a secondary Shadow Stack, that the user-mode program cannot
171
+
Intel's *Control-Flow Enforcement Technology* is incompatible with stack switching
172
+
because it employs a secondary *Shadow Stack*, that the user-mode program cannot
173
173
modify. Unexpected return flow after a stack switch would cause the processor
174
-
to fault. Because of this, we need to mark any assembly code as not CET compatible. Modern compilers are beginning to generate CET compatible objects and
175
-
once supporting CPUs start to arrive, processes which consist entirely of CET compatible code may be run in such a protected environment. See https://software.intel.com/content/www/us/en/develop/articles/technical-look-control-flow-enforcement-technology.html for more information
174
+
to fault. Because of this, we need to mark any assembly code as **not CET compatible** by
175
+
adding special compiler flags to supporting compilers (currently modern GNU C).
176
+
Modern compilers are beginning to generate CET compatible objects and
177
+
once supporting CPUs start to arrive, processes which consist entirely of CET compatible
178
+
code may be run in such a protected environment.
179
+
See https://software.intel.com/content/www/us/en/develop/articles/technical-look-control-flow-enforcement-technology.html for more information
176
180
177
181
## History
178
182
This works was originally inspired by *Stackless Python* by [Christian Tismer](https://github.com/ctismer), where the original switching code was
0 commit comments