LLVM  6.0.0svn
Macros | Functions
TargetParser.cpp File Reference
#include "llvm/Support/ARMBuildAttributes.h"
#include "llvm/Support/TargetParser.h"
#include "llvm/ADT/StringSwitch.h"
#include "llvm/ADT/Twine.h"
#include <cctype>
#include "llvm/Support/ARMTargetParser.def"
#include "llvm/Support/AArch64TargetParser.def"
Include dependency graph for TargetParser.cpp:

Go to the source code of this file.

Macros

#define ARM_FPU(NAME, KIND, VERSION, NEON_SUPPORT, RESTRICTION)   { NAME, sizeof(NAME) - 1, KIND, VERSION, NEON_SUPPORT, RESTRICTION },
 
#define ARM_ARCH(NAME, ID, CPU_ATTR, SUB_ARCH, ARCH_ATTR, ARCH_FPU, ARCH_BASE_EXT)
 
#define AARCH64_ARCH(NAME, ID, CPU_ATTR, SUB_ARCH, ARCH_ATTR, ARCH_FPU, ARCH_BASE_EXT)
 
#define ARM_ARCH_EXT_NAME(NAME, ID, FEATURE, NEGFEATURE)   { NAME, sizeof(NAME) - 1, ID, FEATURE, NEGFEATURE },
 
#define AARCH64_ARCH_EXT_NAME(NAME, ID, FEATURE, NEGFEATURE)   { NAME, sizeof(NAME) - 1, ID, FEATURE, NEGFEATURE },
 
#define ARM_HW_DIV_NAME(NAME, ID)   { NAME, sizeof(NAME) - 1, ID },
 
#define ARM_CPU_NAME(NAME, ID, DEFAULT_FPU, IS_DEFAULT, DEFAULT_EXT)   { NAME, sizeof(NAME) - 1, ARM::ArchKind::ID, IS_DEFAULT, DEFAULT_EXT },
 
#define AARCH64_CPU_NAME(NAME, ID, DEFAULT_FPU, IS_DEFAULT, DEFAULT_EXT)   { NAME, sizeof(NAME) - 1, AArch64::ArchKind::ID, IS_DEFAULT, DEFAULT_EXT },
 
#define ARM_CPU_NAME(NAME, ID, DEFAULT_FPU, IS_DEFAULT, DEFAULT_EXT)   .Case(NAME, DEFAULT_FPU)
 
#define ARM_CPU_NAME(NAME, ID, DEFAULT_FPU, IS_DEFAULT, DEFAULT_EXT)
 
#define AARCH64_CPU_NAME(NAME, ID, DEFAULT_FPU, IS_DEFAULT, DEFAULT_EXT)   .Case(NAME, DEFAULT_FPU)
 
#define AARCH64_CPU_NAME(NAME, ID, DEFAULT_FPU, IS_DEFAULT, DEFAULT_EXT)
 

Functions

static StringRef getHWDivSynonym (StringRef HWDiv)
 
static StringRef getFPUSynonym (StringRef FPU)
 
static StringRef getArchSynonym (StringRef Arch)
 

Macro Definition Documentation

◆ AARCH64_ARCH

#define AARCH64_ARCH (   NAME,
  ID,
  CPU_ATTR,
  SUB_ARCH,
  ARCH_ATTR,
  ARCH_FPU,
  ARCH_BASE_EXT 
)
Value:
{NAME, sizeof(NAME) - 1, CPU_ATTR, sizeof(CPU_ATTR) - 1, SUB_ARCH, \
sizeof(SUB_ARCH) - 1, ARCH_FPU, ARCH_BASE_EXT, AArch64::ArchKind::ID, ARCH_ATTR},

◆ AARCH64_ARCH_EXT_NAME

#define AARCH64_ARCH_EXT_NAME (   NAME,
  ID,
  FEATURE,
  NEGFEATURE 
)    { NAME, sizeof(NAME) - 1, ID, FEATURE, NEGFEATURE },

◆ AARCH64_CPU_NAME [1/3]

#define AARCH64_CPU_NAME (   NAME,
  ID,
  DEFAULT_FPU,
  IS_DEFAULT,
  DEFAULT_EXT 
)    { NAME, sizeof(NAME) - 1, AArch64::ArchKind::ID, IS_DEFAULT, DEFAULT_EXT },

◆ AARCH64_CPU_NAME [2/3]

#define AARCH64_CPU_NAME (   NAME,
  ID,
  DEFAULT_FPU,
  IS_DEFAULT,
  DEFAULT_EXT 
)    .Case(NAME, DEFAULT_FPU)

◆ AARCH64_CPU_NAME [3/3]

#define AARCH64_CPU_NAME (   NAME,
  ID,
  DEFAULT_FPU,
  IS_DEFAULT,
  DEFAULT_EXT 
)
Value:
.Case(NAME, \
AArch64ARCHNames[static_cast<unsigned>(AArch64::ArchKind::ID)] \
.ArchBaseExtensions | \
DEFAULT_EXT)

◆ ARM_ARCH

#define ARM_ARCH (   NAME,
  ID,
  CPU_ATTR,
  SUB_ARCH,
  ARCH_ATTR,
  ARCH_FPU,
  ARCH_BASE_EXT 
)
Value:
{NAME, sizeof(NAME) - 1, CPU_ATTR, sizeof(CPU_ATTR) - 1, SUB_ARCH, \
sizeof(SUB_ARCH) - 1, ARCH_FPU, ARCH_BASE_EXT, ARM::ArchKind::ID, ARCH_ATTR},

◆ ARM_ARCH_EXT_NAME

#define ARM_ARCH_EXT_NAME (   NAME,
  ID,
  FEATURE,
  NEGFEATURE 
)    { NAME, sizeof(NAME) - 1, ID, FEATURE, NEGFEATURE },

◆ ARM_CPU_NAME [1/3]

#define ARM_CPU_NAME (   NAME,
  ID,
  DEFAULT_FPU,
  IS_DEFAULT,
  DEFAULT_EXT 
)    { NAME, sizeof(NAME) - 1, ARM::ArchKind::ID, IS_DEFAULT, DEFAULT_EXT },

◆ ARM_CPU_NAME [2/3]

#define ARM_CPU_NAME (   NAME,
  ID,
  DEFAULT_FPU,
  IS_DEFAULT,
  DEFAULT_EXT 
)    .Case(NAME, DEFAULT_FPU)

◆ ARM_CPU_NAME [3/3]

#define ARM_CPU_NAME (   NAME,
  ID,
  DEFAULT_FPU,
  IS_DEFAULT,
  DEFAULT_EXT 
)
Value:
.Case(NAME, ARCHNames[static_cast<unsigned>(ARM::ArchKind::ID)]\
.ArchBaseExtensions | DEFAULT_EXT)

◆ ARM_FPU

#define ARM_FPU (   NAME,
  KIND,
  VERSION,
  NEON_SUPPORT,
  RESTRICTION 
)    { NAME, sizeof(NAME) - 1, KIND, VERSION, NEON_SUPPORT, RESTRICTION },

◆ ARM_HW_DIV_NAME

#define ARM_HW_DIV_NAME (   NAME,
  ID 
)    { NAME, sizeof(NAME) - 1, ID },

Function Documentation

◆ getArchSynonym()

static StringRef getArchSynonym ( StringRef  Arch)
static

◆ getFPUSynonym()

static StringRef getFPUSynonym ( StringRef  FPU)
static

◆ getHWDivSynonym()

static StringRef getHWDivSynonym ( StringRef  HWDiv)
static

Definition at line 549 of file TargetParser.cpp.

References llvm::StringSwitch< T, R >::Default().

Referenced by llvm::ARM::parseHWDiv().