clang  3.9.0
Macros | Functions
MicrosoftMangle.cpp File Reference
#include "clang/AST/Mangle.h"
#include "clang/AST/ASTContext.h"
#include "clang/AST/Attr.h"
#include "clang/AST/CXXInheritance.h"
#include "clang/AST/CharUnits.h"
#include "clang/AST/Decl.h"
#include "clang/AST/DeclCXX.h"
#include "clang/AST/DeclObjC.h"
#include "clang/AST/DeclOpenMP.h"
#include "clang/AST/DeclTemplate.h"
#include "clang/AST/Expr.h"
#include "clang/AST/ExprCXX.h"
#include "clang/AST/VTableBuilder.h"
#include "clang/Basic/ABI.h"
#include "clang/Basic/DiagnosticOptions.h"
#include "clang/Basic/TargetInfo.h"
#include "llvm/ADT/StringExtras.h"
#include "llvm/Support/JamCRC.h"
#include "llvm/Support/MD5.h"
#include "llvm/Support/MathExtras.h"
#include "clang/AST/TypeNodes.def"
#include "clang/AST/BuiltinTypes.def"
#include "clang/Basic/OpenCLImageTypes.def"
Include dependency graph for MicrosoftMangle.cpp:

Go to the source code of this file.

Macros

#define ABSTRACT_TYPE(CLASS, PARENT)
 
#define NON_CANONICAL_TYPE(CLASS, PARENT)
 
#define TYPE(CLASS, PARENT)
 
#define ABSTRACT_TYPE(CLASS, PARENT)
 
#define NON_CANONICAL_TYPE(CLASS, PARENT)
 
#define TYPE(CLASS, PARENT)
 
#define BUILTIN_TYPE(Id, SingletonId)
 
#define PLACEHOLDER_TYPE(Id, SingletonId)   case BuiltinType::Id:
 
#define IMAGE_TYPE(ImgType, Id, SingletonId, Access, Suffix)
 

Functions

static const TemplateDeclisTemplate (const NamedDecl *ND, const TemplateArgumentList *&TemplateArgs)
 
static void mangleThunkThisAdjustment (const CXXMethodDecl *MD, const ThisAdjustment &Adjustment, MicrosoftCXXNameMangler &Mangler, raw_ostream &Out)
 

Macro Definition Documentation

#define ABSTRACT_TYPE (   CLASS,
  PARENT 
)

Definition at line 337 of file MicrosoftMangle.cpp.

#define ABSTRACT_TYPE (   CLASS,
  PARENT 
)

Definition at line 337 of file MicrosoftMangle.cpp.

#define BUILTIN_TYPE (   Id,
  SingletonId 
)
#define IMAGE_TYPE (   ImgType,
  Id,
  SingletonId,
  Access,
  Suffix 
)
Value:
case BuiltinType::Id: \
Out << "PAUocl_" #ImgType "_" #Suffix "@@"; \
break;
#define NON_CANONICAL_TYPE (   CLASS,
  PARENT 
)

Definition at line 338 of file MicrosoftMangle.cpp.

#define NON_CANONICAL_TYPE (   CLASS,
  PARENT 
)
Value:
case Type::CLASS: \
llvm_unreachable("can't mangle non-canonical type " #CLASS "Type"); \
return(__x >> __y)|(__x<< (32-__y))

Definition at line 338 of file MicrosoftMangle.cpp.

#define PLACEHOLDER_TYPE (   Id,
  SingletonId 
)    case BuiltinType::Id:
#define TYPE (   CLASS,
  PARENT 
)
Value:
void mangleType(const CLASS##Type *T, \
Qualifiers Quals, \
SourceRange Range);
The base class of the type hierarchy.
Definition: Type.h:1281
The collection of all-type qualifiers we support.
Definition: Type.h:117
A trivial tuple used to represent a source range.

Definition at line 339 of file MicrosoftMangle.cpp.

#define TYPE (   CLASS,
  PARENT 
)
Value:
case Type::CLASS: \
mangleType(cast<CLASS##Type>(ty), Quals, Range); \
break;

Definition at line 339 of file MicrosoftMangle.cpp.

Function Documentation

static const TemplateDecl* isTemplate ( const NamedDecl ND,
const TemplateArgumentList *&  TemplateArgs 
)
static
static void mangleThunkThisAdjustment ( const CXXMethodDecl MD,
const ThisAdjustment Adjustment,
MicrosoftCXXNameMangler &  Mangler,
raw_ostream &  Out 
)
static