summaryrefslogtreecommitdiffstats
path: root/clang/docs/ControlFlowIntegrityDesign.rst
Commit message (Collapse)AuthorAgeFilesLines
* Adjust documentation for git migration.James Y Knight2019-01-291-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This fixes most references to the paths: llvm.org/svn/ llvm.org/git/ llvm.org/viewvc/ github.com/llvm-mirror/ github.com/llvm-project/ reviews.llvm.org/diffusion/ to instead point to https://github.com/llvm/llvm-project. This is *not* a trivial substitution, because additionally, all the checkout instructions had to be migrated to instruct users on how to use the monorepo layout, setting LLVM_ENABLE_PROJECTS instead of checking out various projects into various subdirectories. I've attempted to not change any scripts here, only documentation. The scripts will have to be addressed separately. Additionally, I've deleted one document which appeared to be outdated and unneeded: lldb/docs/building-with-debug-llvm.txt Differential Revision: https://reviews.llvm.org/D57330 llvm-svn: 352514
* [Documentation] Use HTTPS whenever possibleEugene Zelenko2019-01-231-2/+2
| | | | | | Differential revision: https://reviews.llvm.org/D56946 llvm-svn: 351976
* Update our URLs in clang doc to use httpsSylvestre Ledru2018-11-041-3/+3
| | | | llvm-svn: 346101
* Introduce the VTable interleaving scheme to the CFI design documentationPeter Collingbourne2018-09-111-0/+148
| | | | | | | | | | | | | | Dimitar et. al. in [1] proposed a novel VTable layout scheme that enables efficient implementation of virtual call CFI. This patch adds an introduction of this scheme to the CFI design documentation. [1] Protecting C++ Dynamic Dispatch Through VTable Interleaving. Dimitar Bounov, Rami Gökhan Kıcı, Sorin Lerner. https://cseweb.ucsd.edu/~lerner/papers/ivtbl-ndss16.pdf Patch by Zhaomo Yang! Differential Revision: https://reviews.llvm.org/D50372 llvm-svn: 341989
* Fix broken links to the Itanium CXX ABIVlad Tsyrklevich2017-09-121-1/+1
| | | | llvm-svn: 312986
* Update Cross-DSO CFI documentation.Evgeniy Stepanov2017-07-071-14/+28
| | | | | | | | | | Reviewers: pcc Subscribers: llvm-commits Differential Revision: https://reviews.llvm.org/D35094 llvm-svn: 307341
* Proposal: Backward-edge CFI for return statements (RCFI)Kostya Serebryany2017-03-201-1/+89
| | | | | | | | | | | | | | Summary: Proposal: Backward-edge CFI for return statements (RCFI) Reviewers: pcc, eugenis, krasin Reviewed By: eugenis Subscribers: llvm-commits Differential Revision: https://reviews.llvm.org/D31112 llvm-svn: 298303
* fix a few typo in the doc but also in the clang messagesSylvestre Ledru2017-01-141-1/+1
| | | | llvm-svn: 292015
* Document potential implementation of CFI in hardware.Kostya Serebryany2016-10-121-0/+54
| | | | | | | | | | | | Summary: Document potential implementation of CFI in hardware. Reviewers: eugenis, pcc Subscribers: llvm-commits Differential Revision: https://reviews.llvm.org/D25455 llvm-svn: 284029
* CodeGen: Update Clang to use the new type metadata.Peter Collingbourne2016-06-241-9/+9
| | | | | | Differential Revision: http://reviews.llvm.org/D21054 llvm-svn: 273730
* Cross-DSO control flow integrity (Clang part).Evgeniy Stepanov2015-12-151-0/+131
| | | | | | | | | | | | | | Clang-side cross-DSO CFI. * Adds a command line flag -f[no-]sanitize-cfi-cross-dso. * Links a runtime library when enabled. * Emits __cfi_slowpath calls is bitset test fails. * Emits extra hash-based bitsets for external CFI checks. * Sets a module flag to enable __cfi_check generation during LTO. This mode does not yet support diagnostics. llvm-svn: 255694
* docs: Add design documentation for forward-edge CFI for indirect calls.Peter Collingbourne2015-12-011-3/+88
| | | | llvm-svn: 254464
* CFI: Introduce -fsanitize=cfi-icall flag.Peter Collingbourne2015-09-101-0/+8
| | | | | | | | | | This flag causes the compiler to emit bit set entries for functions as well as runtime bitset checks at indirect call sites. Depends on the new function bitset mechanism. Differential Revision: http://reviews.llvm.org/D11857 llvm-svn: 247238
* docs: Document byte arrays.Peter Collingbourne2015-03-121-16/+26
| | | | llvm-svn: 231994
* docs: Document CFI padding and all-ones optimizations. Link to viewvc.Peter Collingbourne2015-02-261-1/+30
| | | | llvm-svn: 230588
* docs: Document optimizations in control flow integrity design doc.Peter Collingbourne2015-02-251-9/+118
| | | | llvm-svn: 230458
* CFI: Improve design doc with larger virtual tables and asm examples.Peter Collingbourne2015-02-231-9/+77
| | | | llvm-svn: 230254
* Implement Control Flow Integrity for virtual calls.Peter Collingbourne2015-02-201-0/+59
This patch introduces the -fsanitize=cfi-vptr flag, which enables a control flow integrity scheme that checks that virtual calls take place using a vptr of the correct dynamic type. More details in the new docs/ControlFlowIntegrity.rst file. It also introduces the -fsanitize=cfi flag, which is currently a synonym for -fsanitize=cfi-vptr, but will eventually cover all CFI checks implemented in Clang. Differential Revision: http://reviews.llvm.org/D7424 llvm-svn: 230055
OpenPOWER on IntegriCloud