summaryrefslogtreecommitdiff
path: root/include/llvm/MC/MCDirectives.h
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2010-01-25 18:30:45 +0000
committerChris Lattner <sabre@nondot.org>2010-01-25 18:30:45 +0000
commited0ab15170f0f8fc4269d58757378bc8726b56a1 (patch)
treed6797238ee053096ab9e9a6f09b8c25ca71f49cc /include/llvm/MC/MCDirectives.h
parent032742972f69c014dd5e985753c06a7fe3d08704 (diff)
downloadllvm-ed0ab15170f0f8fc4269d58757378bc8726b56a1.tar.gz
llvm-ed0ab15170f0f8fc4269d58757378bc8726b56a1.tar.bz2
llvm-ed0ab15170f0f8fc4269d58757378bc8726b56a1.tar.xz
add symbol attribute support for the ELF .type directive.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94435 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/llvm/MC/MCDirectives.h')
-rw-r--r--include/llvm/MC/MCDirectives.h32
1 files changed, 19 insertions, 13 deletions
diff --git a/include/llvm/MC/MCDirectives.h b/include/llvm/MC/MCDirectives.h
index 57ce75db4f..609a9a4a6d 100644
--- a/include/llvm/MC/MCDirectives.h
+++ b/include/llvm/MC/MCDirectives.h
@@ -20,19 +20,25 @@ 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)
+ MCSA_ELF_TypeFunction, /// .type _foo, STT_FUNC # aka @function
+ MCSA_ELF_TypeIndFunction, /// .type _foo, STT_GNU_IFUNC
+ MCSA_ELF_TypeObject, /// .type _foo, STT_OBJECT # aka @object
+ MCSA_ELF_TypeTLS, /// .type _foo, STT_TLS # aka @tls_object
+ MCSA_ELF_TypeCommon, /// .type _foo, STT_COMMON # aka @common
+ MCSA_ELF_TypeNoType, /// .type _foo, STT_NOTYPE # aka @notype
+ 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 {