clang API Documentation

Classes | Defines | Functions
Targets.cpp File Reference
#include "clang/Basic/TargetInfo.h"
#include "clang/Basic/Builtins.h"
#include "clang/Basic/Diagnostic.h"
#include "clang/Basic/LangOptions.h"
#include "clang/Basic/MacroBuilder.h"
#include "clang/Basic/TargetBuiltins.h"
#include "clang/Basic/TargetOptions.h"
#include "llvm/ADT/APFloat.h"
#include "llvm/ADT/STLExtras.h"
#include "llvm/ADT/StringExtras.h"
#include "llvm/ADT/StringRef.h"
#include "llvm/ADT/StringSwitch.h"
#include "llvm/ADT/Triple.h"
#include "llvm/IR/Type.h"
#include "llvm/MC/MCSectionMachO.h"
#include "llvm/Support/ErrorHandling.h"
#include <algorithm>
#include <memory>
#include "clang/Basic/BuiltinsPPC.def"
#include "clang/Basic/BuiltinsNVPTX.def"
#include "clang/Basic/BuiltinsR600.def"
#include "clang/Basic/BuiltinsX86.def"
#include "clang/Basic/BuiltinsNEON.def"
#include "clang/Basic/BuiltinsARM.def"
#include "clang/Basic/BuiltinsAArch64.def"
#include "clang/Basic/BuiltinsHexagon.def"
#include "clang/Basic/BuiltinsMips.def"
#include "clang/Basic/BuiltinsLe64.def"
#include "clang/Basic/BuiltinsXCore.def"
Include dependency graph for Targets.cpp:

Go to the source code of this file.

Classes

class  RTEMSTargetInfo< Target >

Defines

#define BUILTIN(ID, TYPE, ATTRS)   { #ID, TYPE, ATTRS, 0, ALL_LANGUAGES },
#define LIBBUILTIN(ID, TYPE, ATTRS, HEADER)
#define BUILTIN(ID, TYPE, ATTRS)   { #ID, TYPE, ATTRS, 0, ALL_LANGUAGES },
#define LIBBUILTIN(ID, TYPE, ATTRS, HEADER)
#define BUILTIN(ID, TYPE, ATTRS)   { #ID, TYPE, ATTRS, 0, ALL_LANGUAGES },
#define BUILTIN(ID, TYPE, ATTRS)   { #ID, TYPE, ATTRS, 0, ALL_LANGUAGES },
#define LIBBUILTIN(ID, TYPE, ATTRS, HEADER)
#define BUILTIN(ID, TYPE, ATTRS)   { #ID, TYPE, ATTRS, 0, ALL_LANGUAGES },
#define LIBBUILTIN(ID, TYPE, ATTRS, HEADER)
#define BUILTIN(ID, TYPE, ATTRS)   { #ID, TYPE, ATTRS, 0, ALL_LANGUAGES },
#define LANGBUILTIN(ID, TYPE, ATTRS, LANG)   { #ID, TYPE, ATTRS, 0, LANG },
#define LIBBUILTIN(ID, TYPE, ATTRS, HEADER)
#define BUILTIN(ID, TYPE, ATTRS)   { #ID, TYPE, ATTRS, 0, ALL_LANGUAGES },
#define BUILTIN(ID, TYPE, ATTRS)   { #ID, TYPE, ATTRS, 0, ALL_LANGUAGES },
#define BUILTIN(ID, TYPE, ATTRS)   { #ID, TYPE, ATTRS, 0, ALL_LANGUAGES },
#define LIBBUILTIN(ID, TYPE, ATTRS, HEADER)
#define BUILTIN(ID, TYPE, ATTRS)   { #ID, TYPE, ATTRS, 0, ALL_LANGUAGES },
#define LIBBUILTIN(ID, TYPE, ATTRS, HEADER)
#define BUILTIN(ID, TYPE, ATTRS)   { #ID, TYPE, ATTRS, 0, ALL_LANGUAGES },
#define BUILTIN(ID, TYPE, ATTRS)   { #ID, TYPE, ATTRS, 0, ALL_LANGUAGES },
#define LIBBUILTIN(ID, TYPE, ATTRS, HEADER)

Functions

static void DefineStd (MacroBuilder &Builder, StringRef MacroName, const LangOptions &Opts)
static void defineCPUMacros (MacroBuilder &Builder, StringRef CPUName, bool Tuning=true)
static void getDarwinDefines (MacroBuilder &Builder, const LangOptions &Opts, const llvm::Triple &Triple, StringRef &PlatformName, VersionTuple &PlatformMinVersion)
static void addMinGWDefines (const LangOptions &Opts, MacroBuilder &Builder)
static TargetInfoAllocateTarget (const llvm::Triple &Triple)

Define Documentation

#define BUILTIN (   ID,
  TYPE,
  ATTRS 
)    { #ID, TYPE, ATTRS, 0, ALL_LANGUAGES },
#define BUILTIN (   ID,
  TYPE,
  ATTRS 
)    { #ID, TYPE, ATTRS, 0, ALL_LANGUAGES },
#define BUILTIN (   ID,
  TYPE,
  ATTRS 
)    { #ID, TYPE, ATTRS, 0, ALL_LANGUAGES },
#define BUILTIN (   ID,
  TYPE,
  ATTRS 
)    { #ID, TYPE, ATTRS, 0, ALL_LANGUAGES },
#define BUILTIN (   ID,
  TYPE,
  ATTRS 
)    { #ID, TYPE, ATTRS, 0, ALL_LANGUAGES },
#define BUILTIN (   ID,
  TYPE,
  ATTRS 
)    { #ID, TYPE, ATTRS, 0, ALL_LANGUAGES },
#define BUILTIN (   ID,
  TYPE,
  ATTRS 
)    { #ID, TYPE, ATTRS, 0, ALL_LANGUAGES },
#define BUILTIN (   ID,
  TYPE,
  ATTRS 
)    { #ID, TYPE, ATTRS, 0, ALL_LANGUAGES },
#define BUILTIN (   ID,
  TYPE,
  ATTRS 
)    { #ID, TYPE, ATTRS, 0, ALL_LANGUAGES },
#define BUILTIN (   ID,
  TYPE,
  ATTRS 
)    { #ID, TYPE, ATTRS, 0, ALL_LANGUAGES },
#define BUILTIN (   ID,
  TYPE,
  ATTRS 
)    { #ID, TYPE, ATTRS, 0, ALL_LANGUAGES },
#define BUILTIN (   ID,
  TYPE,
  ATTRS 
)    { #ID, TYPE, ATTRS, 0, ALL_LANGUAGES },
#define LANGBUILTIN (   ID,
  TYPE,
  ATTRS,
  LANG 
)    { #ID, TYPE, ATTRS, 0, LANG },
#define LIBBUILTIN (   ID,
  TYPE,
  ATTRS,
  HEADER 
)
Value:
{ #ID, TYPE, ATTRS, HEADER,\
                                              ALL_LANGUAGES },
#define LIBBUILTIN (   ID,
  TYPE,
  ATTRS,
  HEADER 
)
Value:
{ #ID, TYPE, ATTRS, HEADER,\
                                              ALL_LANGUAGES },
#define LIBBUILTIN (   ID,
  TYPE,
  ATTRS,
  HEADER 
)
Value:
{ #ID, TYPE, ATTRS, HEADER,\
                                              ALL_LANGUAGES },
#define LIBBUILTIN (   ID,
  TYPE,
  ATTRS,
  HEADER 
)
Value:
{ #ID, TYPE, ATTRS, HEADER,\
                                              ALL_LANGUAGES },
#define LIBBUILTIN (   ID,
  TYPE,
  ATTRS,
  HEADER 
)
Value:
{ #ID, TYPE, ATTRS, HEADER,\
                                              ALL_LANGUAGES },
#define LIBBUILTIN (   ID,
  TYPE,
  ATTRS,
  HEADER 
)
Value:
{ #ID, TYPE, ATTRS, HEADER,\
                                              ALL_LANGUAGES },
#define LIBBUILTIN (   ID,
  TYPE,
  ATTRS,
  HEADER 
)
Value:
{ #ID, TYPE, ATTRS, HEADER,\
                                              ALL_LANGUAGES },
#define LIBBUILTIN (   ID,
  TYPE,
  ATTRS,
  HEADER 
)
Value:
{ #ID, TYPE, ATTRS, HEADER,\
                                              ALL_LANGUAGES },

Function Documentation

static void addMinGWDefines ( const LangOptions Opts,
MacroBuilder Builder 
) [static]

Definition at line 3284 of file Targets.cpp.

References clang::MacroBuilder::defineMacro().

static TargetInfo* AllocateTarget ( const llvm::Triple &  Triple) [static]

Definition at line 6240 of file Targets.cpp.

References clang::GNU.

Referenced by clang::TargetInfo::CreateTargetInfo().

static void defineCPUMacros ( MacroBuilder Builder,
StringRef  CPUName,
bool  Tuning = true 
) [static]

Definition at line 58 of file Targets.cpp.

References clang::MacroBuilder::defineMacro().

static void DefineStd ( MacroBuilder Builder,
StringRef  MacroName,
const LangOptions Opts 
) [static]

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.

Definition at line 42 of file Targets.cpp.

References clang::MacroBuilder::defineMacro().

static void getDarwinDefines ( MacroBuilder Builder,
const LangOptions Opts,
const llvm::Triple &  Triple,
StringRef &  PlatformName,
VersionTuple PlatformMinVersion 
) [static]