A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://clang.llvm.org/doxygen/classclang_1_1LangOptionsBase.html below:

clang: clang::LangOptionsBase Class Reference

Bitfields of LangOptions, split out from LangOptions in order to ensure that this large collection of bitfields is a trivial class type. More...

#include "clang/Basic/LangOptions.h"

enum   GCMode { NonGC , GCOnly , HybridGC }   enum   StackProtectorMode { SSPOff , SSPOn , SSPStrong , SSPReq }   enum class   TrivialAutoVarInitKind { Uninitialized , Zero , Pattern }   enum   SignedOverflowBehaviorTy { SOB_Undefined , SOB_Defined , SOB_Trapping }   enum   CompilingModuleKind { CMK_None , CMK_ModuleMap , CMK_HeaderUnit , CMK_ModuleInterface }   enum   PragmaMSPointersToMembersKind { PPTMK_BestCase , PPTMK_FullGeneralitySingleInheritance , PPTMK_FullGeneralityMultipleInheritance , PPTMK_FullGeneralityVirtualInheritance }   enum   DefaultCallingConvention {
  DCC_None , DCC_CDecl , DCC_FastCall , DCC_StdCall ,
  DCC_VectorCall , DCC_RegCall , DCC_RtdCall
}   enum   AddrSpaceMapMangling { ASMM_Target , ASMM_On , ASMM_Off }   enum   MSVCMajorVersion {
  MSVC2010 = 1600 , MSVC2012 = 1700 , MSVC2013 = 1800 , MSVC2015 = 1900 ,
  MSVC2017 = 1910 , MSVC2017_5 = 1912 , MSVC2017_7 = 1914 , MSVC2019 = 1920 ,
  MSVC2019_5 = 1925 , MSVC2019_8 = 1928 , MSVC2022_3 = 1933 , MSVC2022_9 = 1939
}   enum   SYCLMajorVersion { SYCL_None , SYCL_2017 , SYCL_2020 , SYCL_Default = SYCL_2020 }   enum   HLSLLangStd {
  HLSL_Unset = 0 , HLSL_2015 = 2015 , HLSL_2016 = 2016 , HLSL_2017 = 2017 ,
  HLSL_2018 = 2018 , HLSL_2021 = 2021 , HLSL_202x = 2028 , HLSL_202y = 2029
}   enum class   ClangABI {
  Ver3_8 , Ver4 , Ver6 , Ver7 ,
  Ver9 , Ver11 , Ver12 , Ver14 ,
  Ver15 , Ver17 , Ver18 , Ver19 ,
  Latest
}   Clang versions with different platform ABI conformance. More...
  enum class   CoreFoundationABI {
  Unspecified , Standalone , ObjectiveC , Swift ,
  Swift5_0 , Swift4_2 , Swift4_1
}   enum   FPModeKind { FPM_Off , FPM_On , FPM_Fast , FPM_FastHonorPragmas }   enum   FPExceptionModeKind { FPE_Ignore , FPE_MayTrap , FPE_Strict , FPE_Default }   Possible floating point exception behavior. More...
  enum   FPEvalMethodKind {
  FEM_Indeterminable = -1 , FEM_Source = 0 , FEM_Double = 1 , FEM_Extended = 2 ,
  FEM_UnsetOnCommandLine = 3
}   Possible float expression evaluation method choices. More...
  enum   ExcessPrecisionKind { FPP_Standard , FPP_Fast , FPP_None }   enum class   ExceptionHandlingKind {
  None , SjLj , WinEH , DwarfCFI ,
  Wasm
}   Possible exception handling behavior. More...
  enum class   LaxVectorConversionKind { None , Integer , All }   enum class   AltivecSrcCompatKind { Mixed , GCC , XL , Default = Mixed }   enum class   SignReturnAddressScopeKind { None , NonLeaf , All }   enum class   SignReturnAddressKeyKind { AKey , BKey }   enum class   ThreadModelKind { POSIX , Single }   enum class   ExtendArgsKind { ExtendTo32 , ExtendTo64 }   enum class   GPUDefaultStreamKind { Legacy , PerThread }   enum   OverflowPatternExclusionKind {
  None = 1 << 0 , All = 1 << 1 , AddSignedOverflowTest = 1 << 2 , AddUnsignedOverflowTest = 1 << 3 ,
  NegUnsignedConst = 1 << 4 , PostDecrInWhile = 1 << 5
}   Exclude certain code patterns from being instrumented by arithmetic overflow sanitizers. More...
  enum class   DefaultVisiblityExportMapping { None , Explicit , All }   enum class   VisibilityForcedKinds { ForceHidden , ForceProtected , ForceDefault , Source }   enum class   VisibilityFromDLLStorageClassKinds { Keep , Default , Hidden , Protected }   enum class   StrictFlexArraysLevelKind { Default = 0 , OneZeroOrIncomplete = 1 , ZeroOrIncomplete = 2 , IncompleteOnly = 3 }   enum   ComplexRangeKind {
  CX_Full , CX_Improved , CX_Promoted , CX_Basic ,
  CX_None
}   Controls the various implementations for complex multiplication and. More...
  enum class   RegisterStaticDestructorsKind { All , ThreadLocal , None }   Controls which variables have static destructors registered. More...
  using  Visibility = clang::Visibility   using  RoundingMode = llvm::RoundingMode   using  CFBranchLabelSchemeKind = clang::CFBranchLabelSchemeKind   using  MSVtorDispMode = clang::MSVtorDispMode  

Bitfields of LangOptions, split out from LangOptions in order to ensure that this large collection of bitfields is a trivial class type.

Definition at line 70 of file LangOptions.h.

◆ CFBranchLabelSchemeKind ◆ MSVtorDispMode ◆ RoundingMode ◆ Visibility ◆ AddrSpaceMapMangling Enumerator ASMM_Target  ASMM_On  ASMM_Off 

Definition at line 132 of file LangOptions.h.

◆ AltivecSrcCompatKind ◆ ClangABI

Clang versions with different platform ABI conformance.

Enumerator Ver3_8 

Attempt to be ABI-compatible with code generated by Clang 3.8.x (SVN r257626).

This causes <1 x long long> to be passed in an integer register instead of an SSE register on x64_64.

Ver4 

Attempt to be ABI-compatible with code generated by Clang 4.0.x (SVN r291814).

This causes move operations to be ignored when determining whether a class type can be passed or returned directly.

Ver6 

Attempt to be ABI-compatible with code generated by Clang 6.0.x (SVN r321711).

This causes determination of whether a type is standard-layout to ignore collisions between empty base classes and between base classes and member subobjects, which affects whether we reuse base class tail padding in some ABIs.

Ver7 

Attempt to be ABI-compatible with code generated by Clang 7.0.x (SVN r338536).

This causes alignof (C++) and _Alignof (C11) to be compatible with __alignof (i.e., return the preferred alignment) rather than returning the required alignment.

Ver9 

Attempt to be ABI-compatible with code generated by Clang 9.0.x (SVN r351319).

This causes vectors of __int128 to be passed in memory instead of passing in multiple scalar registers on x86_64 on Linux and NetBSD.

Ver11 

Attempt to be ABI-compatible with code generated by Clang 11.0.x (git 2e10b7a39b93).

This causes clang to pass unions with a 256-bit vector member on the stack instead of using registers, to not properly mangle substitutions for template names in some cases, and to mangle declaration template arguments without a cast to the parameter type even when that can lead to mangling collisions.

Ver12 

Attempt to be ABI-compatible with code generated by Clang 12.0.x (git 8e464dd76bef).

This causes clang to mangle lambdas within global-scope inline variables incorrectly.

Ver14 

Attempt to be ABI-compatible with code generated by Clang 14.0.x.

This causes clang to:

Ver15 

Attempt to be ABI-compatible with code generated by Clang 15.0.x.

This causes clang to:

Ver17 

Attempt to be ABI-compatible with code generated by Clang 17.0.x.

This causes clang to revert some fixes to its implementation of the Itanium name mangling scheme, with the consequence that overloaded function templates are mangled the same if they differ only by:

Ver18 

Attempt to be ABI-compatible with code generated by Clang 18.0.x.

This causes clang to revert some fixes to the mangling of lambdas in the initializers of members of local classes.

Ver19 

Attempt to be ABI-compatible with code generated by Clang 19.0.x.

This causes clang to:

Latest 

Conform to the underlying platform's C and C++ ABIs as closely as we can.

Definition at line 171 of file LangOptions.h.

◆ CompilingModuleKind Enumerator CMK_None 

Not compiling a module interface at all.

CMK_ModuleMap 

Compiling a module from a module map.

CMK_HeaderUnit 

Compiling a module header unit.

CMK_ModuleInterface 

Compiling a C++ modules interface unit.

Definition at line 99 of file LangOptions.h.

◆ ComplexRangeKind

Controls the various implementations for complex multiplication and.

Enumerator CX_Full 

Implementation of complex division and multiplication using a call to runtime library functions(generally the case, but the BE might sometimes replace the library call if it knows enough about the potential range of the inputs).

Overflow and non-finite values are handled by the library implementation. This is the default value.

CX_Improved 

Implementation of complex division offering an improved handling for overflow in intermediate calculations with no special handling for NaN and infinite values.

CX_Promoted 

Implementation of complex division using algebraic formulas at higher precision.

Overflow is handled. Non-finite values are handled in some cases. If the target hardware does not have native support for a higher precision data type, an implementation for the complex operation will be used to provide improved guards against intermediate overflow, but overflow and underflow may still occur in some cases. NaN and infinite values are not handled.

CX_Basic 

Implementation of complex division and multiplication using algebraic formulas at source precision.

No special handling to avoid overflow. NaN and infinite values are not handled.

CX_None 

No range rule is enabled.

Definition at line 444 of file LangOptions.h.

◆ CoreFoundationABI Enumerator Unspecified 

No interoperability ABI has been specified.

Standalone 

CoreFoundation does not have any language interoperability.

ObjectiveC 

Interoperability with the ObjectiveC runtime.

Swift 

Interoperability with the latest known version of the Swift runtime.

Swift5_0 

Interoperability with the Swift 5.0 runtime.

Swift4_2 

Interoperability with the Swift 4.2 runtime.

Swift4_1 

Interoperability with the Swift 4.1 runtime.

Definition at line 258 of file LangOptions.h.

◆ DefaultCallingConvention Enumerator DCC_None  DCC_CDecl  DCC_FastCall  DCC_StdCall  DCC_VectorCall  DCC_RegCall  DCC_RtdCall 

Definition at line 122 of file LangOptions.h.

◆ DefaultVisiblityExportMapping Enumerator None  Explicit 

map only explicit default visibilities to exported

All 

map all default visibilities to exported

Definition at line 401 of file LangOptions.h.

◆ ExceptionHandlingKind

Possible exception handling behavior.

Enumerator None  SjLj  WinEH  DwarfCFI  Wasm 

Definition at line 322 of file LangOptions.h.

◆ ExcessPrecisionKind Enumerator FPP_Standard  FPP_Fast  FPP_None 

Definition at line 319 of file LangOptions.h.

◆ ExtendArgsKind Enumerator ExtendTo32 

Integer arguments are sign or zero extended to 32/64 bits during default argument promotions.

ExtendTo64 

Definition at line 370 of file LangOptions.h.

◆ FPEvalMethodKind

Possible float expression evaluation method choices.

Enumerator FEM_Indeterminable 

The evaluation method cannot be determined or is inconsistent for this target.

FEM_Source 

Use the declared type for fp arithmetic.

FEM_Double 

Use the type double for fp arithmetic.

FEM_Extended 

Use extended type for fp arithmetic.

FEM_UnsetOnCommandLine 

Used only for FE option processing; this is only used to indicate that the user did not specify an explicit evaluation method on the command line and so the target should be queried for its default evaluation method instead.

Definition at line 302 of file LangOptions.h.

◆ FPExceptionModeKind

Possible floating point exception behavior.

Enumerator FPE_Ignore 

Assume that floating-point exceptions are masked.

FPE_MayTrap 

Transformations do not cause new exceptions but may hide some.

FPE_Strict 

Strictly preserve the floating-point exception semantics.

FPE_Default 

Used internally to represent initial unspecified value.

Definition at line 290 of file LangOptions.h.

◆ FPModeKind Enumerator FPM_Off  FPM_On  FPM_Fast  FPM_FastHonorPragmas 

Definition at line 275 of file LangOptions.h.

◆ GCMode Enumerator NonGC  GCOnly  HybridGC 

Definition at line 79 of file LangOptions.h.

◆ GPUDefaultStreamKind Enumerator Legacy 

Legacy default stream.

PerThread 

Per-thread default stream.

Definition at line 377 of file LangOptions.h.

◆ HLSLLangStd Enumerator HLSL_Unset  HLSL_2015  HLSL_2016  HLSL_2017  HLSL_2018  HLSL_2021  HLSL_202x  HLSL_202y 

Definition at line 159 of file LangOptions.h.

◆ LaxVectorConversionKind Enumerator None 

Permit no implicit vector bitcasts.

Integer 

Permit vector bitcasts between integer vectors with different numbers of elements but the same total bit-width.

All 

Permit vector bitcasts between all vectors with the same total bit-width.

Definition at line 324 of file LangOptions.h.

◆ MSVCMajorVersion Enumerator MSVC2010  MSVC2012  MSVC2013  MSVC2015  MSVC2017  MSVC2017_5  MSVC2017_7  MSVC2019  MSVC2019_5  MSVC2019_8  MSVC2022_3  MSVC2022_9 

Definition at line 135 of file LangOptions.h.

◆ OverflowPatternExclusionKind

Exclude certain code patterns from being instrumented by arithmetic overflow sanitizers.

Enumerator None 

Don't exclude any overflow patterns from sanitizers.

All 

Exclude all overflow patterns (below)

AddSignedOverflowTest 

if (a + b < a)

AddUnsignedOverflowTest 

if (a + b < a)

NegUnsignedConst 

-1UL

PostDecrInWhile 

while (count–)

Definition at line 386 of file LangOptions.h.

◆ PragmaMSPointersToMembersKind Enumerator PPTMK_BestCase  PPTMK_FullGeneralitySingleInheritance  PPTMK_FullGeneralityMultipleInheritance  PPTMK_FullGeneralityVirtualInheritance 

Definition at line 113 of file LangOptions.h.

◆ RegisterStaticDestructorsKind

Controls which variables have static destructors registered.

Enumerator All 

Register static destructors for all variables.

ThreadLocal 

Register static destructors only for thread-local variables.

None 

Don't register static destructors for any variables.

Definition at line 476 of file LangOptions.h.

◆ SignedOverflowBehaviorTy Enumerator SOB_Undefined  SOB_Defined  SOB_Trapping 

Definition at line 87 of file LangOptions.h.

◆ SignReturnAddressKeyKind Enumerator AKey 

Return address signing uses APIA key.

BKey 

Return address signing uses APIB key.

Definition at line 356 of file LangOptions.h.

◆ SignReturnAddressScopeKind Enumerator None 

No signing for any function.

NonLeaf 

Sign the return address of functions that spill LR.

All 

Sign the return address of all functions,.

Definition at line 347 of file LangOptions.h.

◆ StackProtectorMode Enumerator SSPOff  SSPOn  SSPStrong  SSPReq 

Definition at line 80 of file LangOptions.h.

◆ StrictFlexArraysLevelKind Enumerator Default 

Any trailing array member is a FAM.

OneZeroOrIncomplete 

Any trailing array member of undefined, 0, or 1 size is a FAM.

ZeroOrIncomplete 

Any trailing array member of undefined or 0 size is a FAM.

IncompleteOnly 

Any trailing array member of undefined size is a FAM.

Definition at line 431 of file LangOptions.h.

◆ SYCLMajorVersion Enumerator SYCL_None  SYCL_2017  SYCL_2020  SYCL_Default 

Definition at line 150 of file LangOptions.h.

◆ ThreadModelKind Enumerator POSIX 

POSIX Threads.

Single 

Single Threaded Environment.

Definition at line 363 of file LangOptions.h.

◆ TrivialAutoVarInitKind Enumerator Uninitialized  Zero  Pattern 

Definition at line 85 of file LangOptions.h.

◆ VisibilityForcedKinds Enumerator ForceHidden 

Force hidden visibility.

ForceProtected 

Force protected visibility.

ForceDefault 

Force default visibility.

Source 

Don't alter the visibility.

Definition at line 409 of file LangOptions.h.

◆ VisibilityFromDLLStorageClassKinds Enumerator Keep 

Keep the IR-gen assigned visibility.

Default 

Override the IR-gen assigned visibility with default visibility.

Hidden 

Override the IR-gen assigned visibility with hidden visibility.

Protected 

Override the IR-gen assigned visibility with protected visibility.

Definition at line 420 of file LangOptions.h.

◆ CompilerInvocation ◆ CompilerInvocationBase

The documentation for this class was generated from the following file:


RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4