Emit Function IDs table for Control Flow Guard
authorAdrian McCarthy <amccarth@google.com>
Mon, 8 Jan 2018 16:33:42 +0000 (16:33 +0000)
committerAdrian McCarthy <amccarth@google.com>
Mon, 8 Jan 2018 16:33:42 +0000 (16:33 +0000)
commit03788da3eefdf4784667e267142fd13eccae1b2b
treeceed09ff75712e0899e755eb6d679763e02080ad
parent76ea7e35cc30ffe119cfe0b7ce2397ca4cb7a88a
Emit Function IDs table for Control Flow Guard

Adds option /guard:cf to clang-cl and -cfguard to cc1 to emit function IDs
of functions that have their address taken into a section named .gfids$y for
compatibility with Microsoft's Control Flow Guard feature.

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

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@322005 91177308-0d34-0410-b5e6-96231b3b80d8
include/clang/Driver/CLCompatOptions.td
include/clang/Driver/Options.td
include/clang/Frontend/CodeGenOptions.def
lib/CodeGen/CodeGenModule.cpp
lib/Driver/ToolChains/Clang.cpp
lib/Frontend/CompilerInvocation.cpp