Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

About

Shadow stacks are a security feature meant to detect/prevent classes of attacks where a malicious actor has gained control over a function's return pointer.  Shadow stack mechanisms typically need a combination of compiler, library, dynamic loader and kernel support, they often require special support for JITs as well.  This work item is only tracking the core LLVM functionality needed to support shadow stacks.  Shadow stacks are seen as a blocking issue for Android on RISC-V.

...

Page Properties


Development

Status
colourBlue
titleOngoing


Development TimelineNA
Upstreaming

Status
colourYellow
titleNOT STARTED


Upstream Version



Contacts

Nathan Egge (Google)

Chibang Kuan (Mediatek)





Dependencies

PSABI (x3 as os register)

kernel/library support

linker and dynamic loader




Updates

  • Implemented the linking policy in LLD for Zicfiss and Zicfilp. The draft can be found here: https://github.com/SuHo-llrr/llvm-project/pull/1/commits
    The patch also includes
    the emission of ELF .note.gnu.property section and llvm-readobj changes to display the content of the section.
    There are ongoing discussions on the linking policy, and we update the implementation when the decision is made.
    Besides, we will also add test cases for upstreaming.

...