#include "CGBuiltin.h"
#include "clang/Basic/TargetBuiltins.h"
#include "llvm/IR/InlineAsm.h"
#include "llvm/IR/IntrinsicsPowerPC.h"
#include "llvm/Support/ScopedPrinter.h"
#include "llvm/TargetParser/PPCTargetParser.def"
#include "clang/Basic/BuiltinsPPC.def"
Go to the source code of this file.
|
#define | PPC_CPU(NAME, Linux_SUPPORT_METHOD, LinuxID, AIX_SUPPORT_METHOD, AIXID) .Case(NAME, {Linux_SUPPORT_METHOD, LinuxID, AIX_SUPPORT_METHOD, AIXID}) |
|
#define | PPC_AIX_FEATURE(NAME, DESC, SUPPORT_METHOD, INDEX, MASK, COMP_OP, VALUE) .Case(NAME, {SUPPORT_METHOD, INDEX, MASK, COMP_OP, VALUE}) |
|
#define | PPC_LNX_FEATURE(Name, Description, EnumName, Bitmask, FA_WORD) .Case(Name, {FA_WORD, Bitmask}) |
|
#define | CUSTOM_BUILTIN(Name, Intr, Types, Accumulate, Feature) case PPC::BI__builtin_##Name: |
|
#define | CUSTOM_BUILTIN(Name, Intr, Types, Acc, Feature) |
|
◆ CUSTOM_BUILTIN [1/2]
#define CUSTOM_BUILTIN |
( |
|
Name, |
|
|
|
Intr, |
|
|
|
Types, |
|
|
|
Acc, |
|
|
|
Feature |
|
) |
| |
Value: case PPC::BI__builtin_##Name: \
ID = Intrinsic::ppc_##Intr; \
break;
static void Accumulate(SMap &SM, CFGBlock *B)
◆ CUSTOM_BUILTIN [2/2]
#define CUSTOM_BUILTIN |
( |
|
Name, |
|
|
|
Intr, |
|
|
|
Types, |
|
|
|
Accumulate, |
|
|
|
Feature |
|
) |
| case PPC::BI__builtin_##Name: |
◆ PPC_AIX_FEATURE
#define PPC_AIX_FEATURE |
( |
|
NAME, |
|
|
|
DESC, |
|
|
|
SUPPORT_METHOD, |
|
|
|
INDEX, |
|
|
|
MASK, |
|
|
|
COMP_OP, |
|
|
|
VALUE |
|
) |
| .Case(NAME, {SUPPORT_METHOD, INDEX, MASK, COMP_OP, VALUE}) |
◆ PPC_CPU
#define PPC_CPU |
( |
|
NAME, |
|
|
|
Linux_SUPPORT_METHOD, |
|
|
|
LinuxID, |
|
|
|
AIX_SUPPORT_METHOD, |
|
|
|
AIXID |
|
) |
| .Case(NAME, {Linux_SUPPORT_METHOD, LinuxID, AIX_SUPPORT_METHOD, AIXID}) |
◆ PPC_LNX_FEATURE
#define PPC_LNX_FEATURE |
( |
|
Name, |
|
|
|
Description, |
|
|
|
EnumName, |
|
|
|
Bitmask, |
|
|
|
FA_WORD |
|
) |
| .Case(Name, {FA_WORD, Bitmask}) |
◆ emitPPCLoadReserveIntrinsic()
Definition at line 23 of file PPC.cpp.
References clang::Addr, clang::Asm, clang::CodeGen::CodeGenFunction::Builder, E, clang::CodeGen::CodeGenFunction::EmitScalarExpr(), clang::TargetInfo::getClobbers(), clang::CodeGen::CodeGenFunction::getLLVMContext(), clang::CodeGen::CodeGenFunction::getTarget(), clang::CodeGen::CodeGenTypeCache::Int16Ty, clang::CodeGen::CodeGenTypeCache::Int32Ty, clang::CodeGen::CodeGenTypeCache::Int64Ty, clang::CodeGen::CodeGenTypeCache::Int8Ty, and clang::CodeGen::CodeGenTypeCache::UnqualPtrTy.
Referenced by clang::CodeGen::CodeGenFunction::EmitPPCBuiltinExpr().