1 //===-- CFGuard.h - CFGuard Transformations ---------------------*- C++ -*-===//
2 //
3 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4 // See https://llvm.org/LICENSE.txt for license information.
5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6 //
7 //===---------------------------------------------------------------------===//
8 // Windows Control Flow Guard passes (/guard:cf).
9 //===---------------------------------------------------------------------===//
10 
11 #ifndef LLVM_TRANSFORMS_CFGUARD_H
12 #define LLVM_TRANSFORMS_CFGUARD_H
13 
14 namespace llvm {
15 
16 class FunctionPass;
17 
18 /// Insert Control FLow Guard checks on indirect function calls.
19 FunctionPass *createCFGuardCheckPass();
20 
21 /// Insert Control FLow Guard dispatches on indirect function calls.
22 FunctionPass *createCFGuardDispatchPass();
23 
24 } // namespace llvm
25 
26 #endif
27