[all-commits] [llvm/llvm-project] a2923b: Implement CET Shadow Stack (Intel Controlflow Enfo...

Rui Ueyama via All-commits all-commits at lists.llvm.org
Mon Mar 16 02:02:58 PDT 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: a2923b2a1e4536dd14e93bed5c1306e0e54d5304
      https://github.com/llvm/llvm-project/commit/a2923b2a1e4536dd14e93bed5c1306e0e54d5304
  Author: Rui Ueyama <ruiu at google.com>
  Date:   2020-03-16 (Mon, 16 Mar 2020)

  Changed paths:
    M lld/COFF/Config.h
    M lld/COFF/Driver.cpp
    M lld/COFF/Options.td
    M lld/COFF/Writer.cpp
    M lld/test/COFF/options.test
    M llvm/include/llvm/BinaryFormat/COFF.h
    A llvm/test/tools/llvm-readobj/COFF/Inputs/has-cet.exe
    A llvm/test/tools/llvm-readobj/COFF/cetcompat.test
    M llvm/tools/llvm-readobj/COFFDumper.cpp

  Log Message:
  -----------
  Implement CET Shadow Stack (Intel Controlflow Enforcement Technology) support on Windows

Patch by Petr Penzin.

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

Docs:

MSVC linker 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

Differential Revision: https://reviews.llvm.org/D70606




More information about the All-commits mailing list