LLVM-Clang Compiler Optimizations & Linker Manipulations
Worked on a side project during the paper: You can run but you can't read: Preventing disclosure exploits in executable code, but wasn't used in the paper after all.
Loading code in memory regions with specific permissions (read-only, execute-only), redirecting function calls to execute-only memory regions by utilizing the linker and custom clang optimization passes.