Home | History | Annotate | Download | only in Basic

Lines Matching defs:BUILTIN

1 //===--- Builtins.cpp - Builtin function implementation -------------------===//
9 // This file implements various things for builtin functions.
20 static const Builtin::Info BuiltinInfo[] = {
21 { "not a builtin function", nullptr, nullptr, nullptr, ALL_LANGUAGES,nullptr},
22 #define BUILTIN(ID, TYPE, ATTRS) \
31 const Builtin::Info &Builtin::Context::getRecord(unsigned ID) const {
32 if (ID < Builtin::FirstTSBuiltin)
34 assert(((ID - Builtin::FirstTSBuiltin) <
36 "Invalid builtin ID!");
38 return AuxTSRecords[getAuxBuiltinID(ID) - Builtin::FirstTSBuiltin];
39 return TSRecords[ID - Builtin::FirstTSBuiltin];
42 void Builtin::Context::InitializeTarget(const TargetInfo &Target,
50 bool Builtin::Context::isBuiltinFunc(llvm::StringRef FuncName) {
51 for (unsigned i = Builtin::NotBuiltin + 1; i != Builtin::FirstTSBuiltin; ++i)
58 bool Builtin::Context::builtinIsSupported(const Builtin::Info &BuiltinInfo,
88 /// appropriate builtin ID # and mark any non-portable builtin identifiers as
90 void Builtin::Context::initializeBuiltins(IdentifierTable &Table,
93 for (unsigned i = Builtin::NotBuiltin+1; i != Builtin::FirstTSBuiltin; ++i)
101 Table.get(TSRecords[i].Name).setBuiltinID(i + Builtin::FirstTSBuiltin);
106 .setBuiltinID(i + Builtin::FirstTSBuiltin + TSRecords.size());
109 unsigned Builtin::Context::getRequiredVectorWidth(unsigned ID) const {
125 bool Builtin::Context::isLike(unsigned ID, unsigned &FormatIdx,
148 bool Builtin::Context::isPrintfLike(unsigned ID, unsigned &FormatIdx,
153 bool Builtin::Context::isScanfLike(unsigned ID, unsigned &FormatIdx,
158 bool Builtin::Context::performsCallback(unsigned ID,
185 bool Builtin::Context::canBeRedeclared(unsigned ID) const {
186 return ID == Builtin::NotBuiltin ||
187 ID == Builtin::BI__va_start ||