[PATCH] D70606: LLD: CET shadow stack support on Windows

Petr Penzin via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Nov 22 10:43:52 PST 2019


penzn created this revision.
penzn added a reviewer: ruiu.
penzn added a project: lld.
Herald added subscribers: llvm-commits, seiya, rupprecht.
Herald added a project: LLVM.

This patch implements CET Shadow Stack (Intel Controlflow Enforcement Technology) support on Windows.

Windows support for CET is limited to shadow stack, which is enabled by setting a PE bit in the linker.

Docs:

- MSVC liker flag: https://docs.microsoft.com/en-us/cpp/build/reference/cetcompat?view=vs-2019
- IMAGE_DLLCHARACTERISTICS_EX_CET_COMPAT PE bit: https://docs.microsoft.com/en-us/windows/win32/debug/pe-format#extended-dll-characteristics


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D70606

Files:
  lld/COFF/Config.h
  lld/COFF/Driver.cpp
  lld/COFF/Options.td
  lld/COFF/Writer.cpp
  lld/MinGW/Options.td
  lld/test/COFF/options.test
  llvm/include/llvm/BinaryFormat/COFF.h
  llvm/test/tools/llvm-readobj/Inputs/has_cet.exe
  llvm/test/tools/llvm-readobj/coff-cet-compat.test
  llvm/tools/llvm-readobj/COFFDumper.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D70606.230684.patch
Type: text/x-patch
Size: 12695 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20191122/f2ba4d61/attachment.bin>


More information about the llvm-commits mailing list