[all-commits] [llvm/llvm-project] bdd88b: Add support for __declspec(guard(nocf))

Andrew Paverd via All-commits all-commits at lists.llvm.org
Fri Jan 10 08:04:23 PST 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: bdd88b7ed3956534a0a71b1ea2bc88c69d48f9b7
      https://github.com/llvm/llvm-project/commit/bdd88b7ed3956534a0a71b1ea2bc88c69d48f9b7
  Author: Andrew Paverd <andrew.paverd at microsoft.com>
  Date:   2020-01-10 (Fri, 10 Jan 2020)

  Changed paths:
    M clang/include/clang/Basic/Attr.td
    M clang/include/clang/Basic/AttrDocs.td
    M clang/lib/CodeGen/CGCall.cpp
    M clang/lib/Sema/SemaDeclAttr.cpp
    A clang/test/CodeGen/guard_nocf.c
    A clang/test/CodeGenCXX/guard_nocf.cpp
    A clang/test/Sema/attr-guard_nocf.c
    M llvm/lib/Transforms/CFGuard/CFGuard.cpp
    M llvm/test/CodeGen/AArch64/cfguard-checks.ll
    M llvm/test/CodeGen/ARM/cfguard-checks.ll
    M llvm/test/CodeGen/X86/cfguard-checks.ll

  Log Message:
  -----------
  Add support for __declspec(guard(nocf))

Summary:
Avoid using the `nocf_check` attribute with Control Flow Guard. Instead, use a
new `"guard_nocf"` function attribute to indicate that checks should not be
added on indirect calls within that function. Add support for
`__declspec(guard(nocf))` following the same syntax as MSVC.

Reviewers: rnk, dmajor, pcc, hans, aaron.ballman

Reviewed By: aaron.ballman

Subscribers: aaron.ballman, tomrittervg, hiraditya, cfe-commits, llvm-commits

Tags: #clang, #llvm

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




More information about the All-commits mailing list