Coverage Report

Created: 2018-09-17 19:50

/Users/buildslave/jenkins/workspace/clang-stage2-coverage-R/llvm/include/llvm/MC/MCParser/AsmCond.h
Line
Count
Source
1
//===- AsmCond.h - Assembly file conditional assembly  ----------*- 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
10
#ifndef LLVM_MC_MCPARSER_ASMCOND_H
11
#define LLVM_MC_MCPARSER_ASMCOND_H
12
13
namespace llvm {
14
15
/// AsmCond - Class to support conditional assembly
16
///
17
/// The conditional assembly feature (.if, .else, .elseif and .endif) is
18
/// implemented with AsmCond that tells us what we are in the middle of
19
/// processing.  Ignore can be either true or false.  When true we are ignoring
20
/// the block of code in the middle of a conditional.
21
22
class AsmCond {
23
public:
24
  enum ConditionalAssemblyType {
25
    NoCond,     // no conditional is being processed
26
    IfCond,     // inside if conditional
27
    ElseIfCond, // inside elseif conditional
28
    ElseCond    // inside else conditional
29
  };
30
31
  ConditionalAssemblyType TheCond = NoCond;
32
  bool CondMet = false;
33
  bool Ignore = false;
34
35
18.3k
  AsmCond() = default;
36
};
37
38
} // end namespace llvm
39
40
#endif // LLVM_MC_MCPARSER_ASMCOND_H