summaryrefslogtreecommitdiff
path: root/include/llvm/MC/MCDirectives.h
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2010-01-23 06:39:22 +0000
committerChris Lattner <sabre@nondot.org>2010-01-23 06:39:22 +0000
commita5ad93a10a5435f21090b09edb6b3a7e44967648 (patch)
treeef70d3d7e9c5622f26c42d8cda83e5abfe0af76c /include/llvm/MC/MCDirectives.h
parent52492ac0d03aa86b07ad889b69b0ba38ffec8011 (diff)
downloadllvm-a5ad93a10a5435f21090b09edb6b3a7e44967648.tar.gz
llvm-a5ad93a10a5435f21090b09edb6b3a7e44967648.tar.bz2
llvm-a5ad93a10a5435f21090b09edb6b3a7e44967648.tar.xz
move the various directive enums out of the MCStreamer class
into a new MCDirectives.h file. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94294 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/llvm/MC/MCDirectives.h')
-rw-r--r--include/llvm/MC/MCDirectives.h44
1 files changed, 44 insertions, 0 deletions
diff --git a/include/llvm/MC/MCDirectives.h b/include/llvm/MC/MCDirectives.h
new file mode 100644
index 0000000000..57ce75db4f
--- /dev/null
+++ b/include/llvm/MC/MCDirectives.h
@@ -0,0 +1,44 @@
+//===- MCDirectives.h - Enums for directives on various targets -*- C++ -*-===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+//
+// This file defines various enums that represent target-specific directives.
+//
+//===----------------------------------------------------------------------===//
+
+#ifndef LLVM_MC_MCDIRECTIVES_H
+#define LLVM_MC_MCDIRECTIVES_H
+
+namespace llvm {
+
+enum MCSymbolAttr {
+ MCSA_Invalid = 0, /// Not a valid directive.
+
+ // Various directives in alphabetical order.
+ MCSA_Global, /// .globl
+ MCSA_Hidden, /// .hidden (ELF)
+ MCSA_IndirectSymbol, /// .indirect_symbol (MachO)
+ MCSA_Internal, /// .internal (ELF)
+ MCSA_LazyReference, /// .lazy_reference (MachO)
+ MCSA_Local, /// .local (ELF)
+ MCSA_NoDeadStrip, /// .no_dead_strip (MachO)
+ MCSA_PrivateExtern, /// .private_extern (MachO)
+ MCSA_Protected, /// .protected (ELF)
+ MCSA_Reference, /// .reference (MachO)
+ MCSA_Weak, /// .weak
+ MCSA_WeakDefinition, /// .weak_definition (MachO)
+ MCSA_WeakReference /// .weak_reference (MachO)
+};
+
+enum MCAssemblerFlag {
+ MCAF_SubsectionsViaSymbols /// .subsections_via_symbols (MachO)
+};
+
+} // end namespace llvm
+
+#endif