1 //===- AsmCond.h - Assembly file conditional assembly ----------*- C++ -*-===//
3 // The LLVM Compiler Infrastructure
5 // This file is distributed under the University of Illinois Open Source
6 // License. See LICENSE.TXT for details.
8 //===----------------------------------------------------------------------===//
15 /// AsmCond - Class to support conditional assembly
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.
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
31 ConditionalAssemblyType TheCond
;
35 AsmCond() : TheCond(NoCond
), CondMet(false), Ignore(false) {}
38 } // end namespace llvm