LLVM  8.0.1
GuardUtils.cpp
Go to the documentation of this file.
1 //===-- GuardUtils.cpp - Utils for work with guards -------------*- C++ -*-===//
2 //
3 // The LLVM Compiler Infrastructure
4 //
5 // This file is distributed under the University of Illinois Open Source
6 // License. See LICENSE.TXT for details.
7 //
8 //===----------------------------------------------------------------------===//
9 // Utils that are used to perform analyzes related to guards and their
10 // conditions.
11 //===----------------------------------------------------------------------===//
12 
14 #include "llvm/IR/PatternMatch.h"
15 
16 using namespace llvm;
17 
18 bool llvm::isGuard(const User *U) {
19  using namespace llvm::PatternMatch;
20  return match(U, m_Intrinsic<Intrinsic::experimental_guard>());
21 }
This class represents lattice values for constants.
Definition: AllocatorList.h:24
bool match(Val *V, const Pattern &P)
Definition: PatternMatch.h:48
bool isGuard(const User *U)
Returns true iff U has semantics of a guard.
Definition: GuardUtils.cpp:18