clang  6.0.0svn
Classes | Functions | Variables
clang::targets Namespace Reference

Classes

class  AArch64beTargetInfo
 
class  AArch64leTargetInfo
 
class  AArch64TargetInfo
 
class  AMDGPUTargetInfo
 
class  AnanasTargetInfo
 
class  AndroidX86_32TargetInfo
 
class  AndroidX86_64TargetInfo
 
class  ARMbeTargetInfo
 
class  ARMleTargetInfo
 
class  ARMTargetInfo
 
class  AVRTargetInfo
 
class  BPFTargetInfo
 
class  CloudABITargetInfo
 
class  CygwinARMTargetInfo
 
class  CygwinX86_32TargetInfo
 
class  CygwinX86_64TargetInfo
 
class  DarwinAArch64TargetInfo
 
class  DarwinARMTargetInfo
 
class  DarwinI386TargetInfo
 
class  DarwinPPC32TargetInfo
 
class  DarwinPPC64TargetInfo
 
class  DarwinTargetInfo
 
class  DarwinX86_64TargetInfo
 
class  DragonFlyBSDTargetInfo
 
class  FreeBSDTargetInfo
 
class  FuchsiaTargetInfo
 
class  HaikuTargetInfo
 
class  HaikuX86_32TargetInfo
 
class  HexagonTargetInfo
 
class  ItaniumWindowsARMleTargetInfo
 
class  KFreeBSDTargetInfo
 
class  LanaiTargetInfo
 
class  Le64TargetInfo
 
class  LinuxTargetInfo
 
struct  MCUInfo
 Information about a specific microcontroller. More...
 
class  MCUX86_32TargetInfo
 
class  MicrosoftARM64TargetInfo
 
class  MicrosoftARMleTargetInfo
 
class  MicrosoftX86_32TargetInfo
 
class  MicrosoftX86_64TargetInfo
 
class  MinGWARM64TargetInfo
 
class  MinGWARMTargetInfo
 
class  MinGWX86_32TargetInfo
 
class  MinGWX86_64TargetInfo
 
class  MinixTargetInfo
 
class  MipsTargetInfo
 
class  MSP430TargetInfo
 
class  NaClMips32TargetInfo
 
class  NaClTargetInfo
 
class  NetBSDI386TargetInfo
 
class  NetBSDTargetInfo
 
class  Nios2TargetInfo
 
class  NVPTXTargetInfo
 
class  OpenBSDI386TargetInfo
 
class  OpenBSDTargetInfo
 
class  OpenBSDX86_64TargetInfo
 
class  OSTargetInfo
 
class  PNaClTargetInfo
 
class  PPC32TargetInfo
 
class  PPC64TargetInfo
 
class  PPCTargetInfo
 
class  PS3PPUTargetInfo
 
class  PS4OSTargetInfo
 
class  PSPTargetInfo
 
class  RenderScript32TargetInfo
 
class  RenderScript64TargetInfo
 
class  RTEMSTargetInfo
 
class  RTEMSX86_32TargetInfo
 
class  SolarisTargetInfo
 
class  SparcTargetInfo
 
class  SparcV8elTargetInfo
 
class  SparcV8TargetInfo
 
class  SparcV9TargetInfo
 
class  SPIR32TargetInfo
 
class  SPIR64TargetInfo
 
class  SPIRTargetInfo
 
class  SystemZTargetInfo
 
class  TCELETargetInfo
 
class  TCETargetInfo
 
class  WebAssembly32TargetInfo
 
class  WebAssembly64TargetInfo
 
class  WebAssemblyOSTargetInfo
 
class  WebAssemblyTargetInfo
 
class  WindowsARM64TargetInfo
 
class  WindowsARMTargetInfo
 
class  WindowsTargetInfo
 
class  WindowsX86_32TargetInfo
 
class  WindowsX86_64TargetInfo
 
class  X86_32TargetInfo
 
class  X86_64TargetInfo
 
class  X86TargetInfo
 
class  XCoreTargetInfo
 

Functions

void getDarwinDefines (MacroBuilder &Builder, const LangOptions &Opts, const llvm::Triple &Triple, StringRef &PlatformName, VersionTuple &PlatformMinVersion)
 
void DefineStd (MacroBuilder &Builder, StringRef MacroName, const LangOptions &Opts)
 DefineStd - Define a macro name and standard variants. More...
 
void defineCPUMacros (MacroBuilder &Builder, StringRef CPUName, bool Tuning)
 
void addCygMingDefines (const LangOptions &Opts, MacroBuilder &Builder)
 
void addMinGWDefines (const LangOptions &Opts, MacroBuilder &Builder)
 
TargetInfoAllocateTarget (const llvm::Triple &Triple, const TargetOptions &Opts)
 
LLVM_LIBRARY_VISIBILITY void DefineStd (clang::MacroBuilder &Builder, llvm::StringRef MacroName, const clang::LangOptions &Opts)
 DefineStd - Define a macro name and standard variants. More...
 
LLVM_LIBRARY_VISIBILITY void defineCPUMacros (clang::MacroBuilder &Builder, llvm::StringRef CPUName, bool Tuning=true)
 

Variables

static const char *const DataLayoutStringR600
 
static const char *const DataLayoutStringSIPrivateIsZero
 
static const char *const DataLayoutStringSIGenericIsZero
 
static const LangASMap AMDGPUPrivIsZeroDefIsGenMap
 
static const LangASMap AMDGPUGenIsZeroDefIsGenMap
 
static const LangASMap AMDGPUPrivIsZeroDefIsPrivMap
 
static const LangASMap AMDGPUGenIsZeroDefIsPrivMap
 
static ArrayRef< MCUInfoAVRMcus
 
static const unsigned NVPTXAddrSpaceMap []
 
static const unsigned SPIRAddrSpaceMap []
 
static const unsigned TCEOpenCLAddrSpaceMap []
 
const Builtin::Info BuiltinInfoX86 []
 
static const char *const GCCRegNames []
 
const TargetInfo::AddlRegName AddlRegNames []
 

Function Documentation

◆ addCygMingDefines()

LLVM_LIBRARY_VISIBILITY void clang::targets::addCygMingDefines ( const LangOptions Opts,
MacroBuilder Builder 
)

Definition at line 76 of file Targets.cpp.

◆ addMinGWDefines()

LLVM_LIBRARY_VISIBILITY void clang::targets::addMinGWDefines ( const LangOptions Opts,
MacroBuilder Builder 
)

Definition at line 100 of file Targets.cpp.

◆ AllocateTarget()

LLVM_LIBRARY_VISIBILITY clang::TargetInfo * clang::targets::AllocateTarget ( const llvm::Triple &  Triple,
const TargetOptions Opts 
)

◆ defineCPUMacros() [1/2]

LLVM_LIBRARY_VISIBILITY void clang::targets::defineCPUMacros ( clang::MacroBuilder Builder,
llvm::StringRef  CPUName,
bool  Tuning = true 
)

◆ defineCPUMacros() [2/2]

void clang::targets::defineCPUMacros ( MacroBuilder Builder,
StringRef  CPUName,
bool  Tuning 
)

Definition at line 69 of file Targets.cpp.

◆ DefineStd() [1/2]

LLVM_LIBRARY_VISIBILITY void clang::targets::DefineStd ( clang::MacroBuilder Builder,
llvm::StringRef  MacroName,
const clang::LangOptions Opts 
)

DefineStd - Define a macro name and standard variants.

For example if MacroName is "unix", then this will define "__unix", "__unix__", and "unix" when in GNU mode.

◆ DefineStd() [2/2]

void clang::targets::DefineStd ( MacroBuilder Builder,
StringRef  MacroName,
const LangOptions Opts 
)

◆ getDarwinDefines()

void clang::targets::getDarwinDefines ( MacroBuilder Builder,
const LangOptions Opts,
const llvm::Triple &  Triple,
StringRef &  PlatformName,
VersionTuple PlatformMinVersion 
)

Variable Documentation

◆ AddlRegNames

const TargetInfo::AddlRegName clang::targets::AddlRegNames[]
Initial value:
= {
{{"al", "ah", "eax", "rax"}, 0},
{{"bl", "bh", "ebx", "rbx"}, 3},
{{"cl", "ch", "ecx", "rcx"}, 2},
{{"dl", "dh", "edx", "rdx"}, 1},
{{"esi", "rsi"}, 4},
{{"edi", "rdi"}, 5},
{{"esp", "rsp"}, 7},
{{"ebp", "rbp"}, 6},
{{"r8d", "r8w", "r8b"}, 38},
{{"r9d", "r9w", "r9b"}, 39},
{{"r10d", "r10w", "r10b"}, 40},
{{"r11d", "r11w", "r11b"}, 41},
{{"r12d", "r12w", "r12b"}, 42},
{{"r13d", "r13w", "r13b"}, 43},
{{"r14d", "r14w", "r14b"}, 44},
{{"r15d", "r15w", "r15b"}, 45},
}

Definition at line 65 of file X86.cpp.

Referenced by clang::targets::AVRTargetInfo::getGCCAddlRegNames(), and clang::targets::X86TargetInfo::getGCCAddlRegNames().

◆ AMDGPUGenIsZeroDefIsGenMap

const LangASMap clang::targets::AMDGPUGenIsZeroDefIsGenMap
static
Initial value:
= {
0,
1,
3,
2,
5,
0,
1,
2,
3
}

Definition at line 57 of file AMDGPU.cpp.

Referenced by clang::targets::AMDGPUTargetInfo::setAddressSpaceMap().

◆ AMDGPUGenIsZeroDefIsPrivMap

const LangASMap clang::targets::AMDGPUGenIsZeroDefIsPrivMap
static
Initial value:
= {
5,
1,
3,
2,
5,
0,
1,
2,
3
}

Definition at line 81 of file AMDGPU.cpp.

Referenced by clang::targets::AMDGPUTargetInfo::setAddressSpaceMap().

◆ AMDGPUPrivIsZeroDefIsGenMap

const LangASMap clang::targets::AMDGPUPrivIsZeroDefIsGenMap
static
Initial value:
= {
4,
1,
3,
2,
0,
4,
1,
2,
3
}

Definition at line 45 of file AMDGPU.cpp.

Referenced by clang::targets::AMDGPUTargetInfo::setAddressSpaceMap().

◆ AMDGPUPrivIsZeroDefIsPrivMap

const LangASMap clang::targets::AMDGPUPrivIsZeroDefIsPrivMap
static
Initial value:
= {
0,
1,
3,
2,
0,
4,
1,
2,
3
}

Definition at line 69 of file AMDGPU.cpp.

Referenced by clang::targets::AMDGPUTargetInfo::setAddressSpaceMap().

◆ AVRMcus

ArrayRef<MCUInfo> clang::targets::AVRMcus
static

Definition at line 31 of file AVR.cpp.

◆ BuiltinInfoX86

const Builtin::Info clang::targets::BuiltinInfoX86[]
Initial value:
= {
#define BUILTIN(ID, TYPE, ATTRS)
#define TARGET_BUILTIN(ID, TYPE, ATTRS, FEATURE)
#define TARGET_HEADER_BUILTIN(ID, TYPE, ATTRS, HEADER, LANGS, FEATURE)
#define BUILTIN(ID, TYPE, ATTRS)
#define TARGET_BUILTIN(ID, TYPE, ATTRS, FEATURE)
#define TARGET_HEADER_BUILTIN(ID, TYPE, ATTRS, HEADER, LANGS, FEATURE)
}

Definition at line 24 of file X86.cpp.

Referenced by clang::targets::X86_32TargetInfo::getTargetBuiltins(), and clang::targets::X86_64TargetInfo::getTargetBuiltins().

◆ DataLayoutStringR600

const char* const clang::targets::DataLayoutStringR600
static
Initial value:
=
"e-p:32:32-i64:64-v16:16-v24:32-v32:32-v48:64-v96:128"
"-v192:256-v256:256-v512:512-v1024:1024-v2048:2048-n32:64"

Definition at line 31 of file AMDGPU.cpp.

Referenced by clang::targets::AMDGPUTargetInfo::AMDGPUTargetInfo().

◆ DataLayoutStringSIGenericIsZero

const char* const clang::targets::DataLayoutStringSIGenericIsZero
static
Initial value:
=
"e-p:64:64-p1:64:64-p2:64:64-p3:32:32-p4:32:32-p5:32:32"
"-i64:64-v16:16-v24:32-v32:32-v48:64-v96:128"
"-v192:256-v256:256-v512:512-v1024:1024-v2048:2048-n32:64-A5"

Definition at line 40 of file AMDGPU.cpp.

Referenced by clang::targets::AMDGPUTargetInfo::AMDGPUTargetInfo().

◆ DataLayoutStringSIPrivateIsZero

const char* const clang::targets::DataLayoutStringSIPrivateIsZero
static
Initial value:
=
"e-p:32:32-p1:64:64-p2:64:64-p3:32:32-p4:64:64-p5:32:32"
"-i64:64-v16:16-v24:32-v32:32-v48:64-v96:128"
"-v192:256-v256:256-v512:512-v1024:1024-v2048:2048-n32:64"

Definition at line 35 of file AMDGPU.cpp.

Referenced by clang::targets::AMDGPUTargetInfo::AMDGPUTargetInfo().

◆ GCCRegNames

const char* const clang::targets::GCCRegNames[]
static
Initial value:
= {
"ax", "dx", "cx", "bx", "si", "di", "bp", "sp",
"st", "st(1)", "st(2)", "st(3)", "st(4)", "st(5)", "st(6)", "st(7)",
"argp", "flags", "fpcr", "fpsr", "dirflag", "frame", "xmm0", "xmm1",
"xmm2", "xmm3", "xmm4", "xmm5", "xmm6", "xmm7", "mm0", "mm1",
"mm2", "mm3", "mm4", "mm5", "mm6", "mm7", "r8", "r9",
"r10", "r11", "r12", "r13", "r14", "r15", "xmm8", "xmm9",
"xmm10", "xmm11", "xmm12", "xmm13", "xmm14", "xmm15", "ymm0", "ymm1",
"ymm2", "ymm3", "ymm4", "ymm5", "ymm6", "ymm7", "ymm8", "ymm9",
"ymm10", "ymm11", "ymm12", "ymm13", "ymm14", "ymm15", "xmm16", "xmm17",
"xmm18", "xmm19", "xmm20", "xmm21", "xmm22", "xmm23", "xmm24", "xmm25",
"xmm26", "xmm27", "xmm28", "xmm29", "xmm30", "xmm31", "ymm16", "ymm17",
"ymm18", "ymm19", "ymm20", "ymm21", "ymm22", "ymm23", "ymm24", "ymm25",
"ymm26", "ymm27", "ymm28", "ymm29", "ymm30", "ymm31", "zmm0", "zmm1",
"zmm2", "zmm3", "zmm4", "zmm5", "zmm6", "zmm7", "zmm8", "zmm9",
"zmm10", "zmm11", "zmm12", "zmm13", "zmm14", "zmm15", "zmm16", "zmm17",
"zmm18", "zmm19", "zmm20", "zmm21", "zmm22", "zmm23", "zmm24", "zmm25",
"zmm26", "zmm27", "zmm28", "zmm29", "zmm30", "zmm31", "k0", "k1",
"k2", "k3", "k4", "k5", "k6", "k7",
"cr0", "cr2", "cr3", "cr4", "cr8",
"dr0", "dr1", "dr2", "dr3", "dr6", "dr7",
}

Definition at line 42 of file X86.cpp.

Referenced by clang::targets::XCoreTargetInfo::getGCCRegNames(), clang::targets::AVRTargetInfo::getGCCRegNames(), clang::targets::Nios2TargetInfo::getGCCRegNames(), clang::targets::AMDGPUTargetInfo::getGCCRegNames(), clang::targets::MipsTargetInfo::getGCCRegNames(), and clang::targets::X86TargetInfo::getGCCRegNames().

◆ NVPTXAddrSpaceMap

const unsigned clang::targets::NVPTXAddrSpaceMap[]
static
Initial value:
= {
0,
1,
3,
4,
0,
0,
1,
4,
3,
}

Definition at line 26 of file NVPTX.h.

Referenced by clang::targets::NVPTXTargetInfo::NVPTXTargetInfo().

◆ SPIRAddrSpaceMap

const unsigned clang::targets::SPIRAddrSpaceMap[]
static
Initial value:
= {
0,
1,
3,
2,
0,
4,
0,
0,
0
}

Definition at line 25 of file SPIR.h.

Referenced by clang::targets::SPIRTargetInfo::SPIRTargetInfo().

◆ TCEOpenCLAddrSpaceMap

const unsigned clang::targets::TCEOpenCLAddrSpaceMap[]
static
Initial value:
= {
0,
3,
4,
5,
0,
0,
0,
0,
0
}

Definition at line 33 of file TCE.h.

Referenced by clang::targets::TCETargetInfo::TCETargetInfo().