|
|
|||
File indexing completed on 2026-05-10 08:44:12
0001 //===- MCDirectives.h - Enums for directives on various targets -*- C++ -*-===// 0002 // 0003 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 0004 // See https://llvm.org/LICENSE.txt for license information. 0005 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 0006 // 0007 //===----------------------------------------------------------------------===// 0008 // 0009 // This file defines various enums that represent target-specific directives. 0010 // 0011 //===----------------------------------------------------------------------===// 0012 0013 #ifndef LLVM_MC_MCDIRECTIVES_H 0014 #define LLVM_MC_MCDIRECTIVES_H 0015 0016 namespace llvm { 0017 0018 enum MCSymbolAttr { 0019 MCSA_Invalid = 0, ///< Not a valid directive. 0020 0021 // Various directives in alphabetical order. 0022 MCSA_Cold, ///< .cold (MachO) 0023 MCSA_ELF_TypeFunction, ///< .type _foo, STT_FUNC # aka @function 0024 MCSA_ELF_TypeIndFunction, ///< .type _foo, STT_GNU_IFUNC 0025 MCSA_ELF_TypeObject, ///< .type _foo, STT_OBJECT # aka @object 0026 MCSA_ELF_TypeTLS, ///< .type _foo, STT_TLS # aka @tls_object 0027 MCSA_ELF_TypeCommon, ///< .type _foo, STT_COMMON # aka @common 0028 MCSA_ELF_TypeNoType, ///< .type _foo, STT_NOTYPE # aka @notype 0029 MCSA_ELF_TypeGnuUniqueObject, /// .type _foo, @gnu_unique_object 0030 MCSA_Global, ///< .globl 0031 MCSA_LGlobal, ///< .lglobl (XCOFF) 0032 MCSA_Extern, ///< .extern (XCOFF) 0033 MCSA_Hidden, ///< .hidden (ELF) 0034 MCSA_Exported, ///< .globl _foo, exported (XCOFF) 0035 MCSA_IndirectSymbol, ///< .indirect_symbol (MachO) 0036 MCSA_Internal, ///< .internal (ELF) 0037 MCSA_LazyReference, ///< .lazy_reference (MachO) 0038 MCSA_Local, ///< .local (ELF) 0039 MCSA_NoDeadStrip, ///< .no_dead_strip (MachO) 0040 MCSA_SymbolResolver, ///< .symbol_resolver (MachO) 0041 MCSA_AltEntry, ///< .alt_entry (MachO) 0042 MCSA_PrivateExtern, ///< .private_extern (MachO) 0043 MCSA_Protected, ///< .protected (ELF) 0044 MCSA_Reference, ///< .reference (MachO) 0045 MCSA_Weak, ///< .weak 0046 MCSA_WeakDefinition, ///< .weak_definition (MachO) 0047 MCSA_WeakReference, ///< .weak_reference (MachO) 0048 MCSA_WeakDefAutoPrivate, ///< .weak_def_can_be_hidden (MachO) 0049 MCSA_WeakAntiDep, ///< .weak_anti_dep (COFF) 0050 MCSA_Memtag, ///< .memtag (ELF) 0051 }; 0052 0053 enum MCAssemblerFlag { 0054 MCAF_SyntaxUnified, ///< .syntax (ARM/ELF) 0055 MCAF_SubsectionsViaSymbols, ///< .subsections_via_symbols (MachO) 0056 MCAF_Code16, ///< .code16 (X86) / .code 16 (ARM) 0057 MCAF_Code32, ///< .code32 (X86) / .code 32 (ARM) 0058 MCAF_Code64 ///< .code64 (X86) 0059 }; 0060 0061 enum MCDataRegionType { 0062 MCDR_DataRegion, ///< .data_region 0063 MCDR_DataRegionJT8, ///< .data_region jt8 0064 MCDR_DataRegionJT16, ///< .data_region jt16 0065 MCDR_DataRegionJT32, ///< .data_region jt32 0066 MCDR_DataRegionEnd ///< .end_data_region 0067 }; 0068 0069 enum MCVersionMinType { 0070 MCVM_IOSVersionMin, ///< .ios_version_min 0071 MCVM_OSXVersionMin, ///< .macosx_version_min 0072 MCVM_TvOSVersionMin, ///< .tvos_version_min 0073 MCVM_WatchOSVersionMin, ///< .watchos_version_min 0074 }; 0075 0076 } // end namespace llvm 0077 0078 #endif
| [ Source navigation ] | [ Diff markup ] | [ Identifier search ] | [ general search ] |
|
This page was automatically generated by the 2.3.7 LXR engine. The LXR team |
|