summaryrefslogtreecommitdiffstats
path: root/lib/Basic/Builtins.cpp
diff options
context:
space:
mode:
authorCraig Topper <craig.topper@gmail.com>2015-10-19 04:51:35 +0000
committerCraig Topper <craig.topper@gmail.com>2015-10-19 04:51:35 +0000
commit670993162a3ae969cdba37b9589c579bdb839ac5 (patch)
tree29f661100567bcaec8dcb0db9c1fecb936ee570c /lib/Basic/Builtins.cpp
parent6c3305f4d8c2f9c1fa7278175c6e8a8334e5fc9f (diff)
Make getTargetBuiltins return an ArrayRef instead of having two out parameters of a pointer and length. NFC
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@250681 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Basic/Builtins.cpp')
-rw-r--r--lib/Basic/Builtins.cpp23
1 files changed, 8 insertions, 15 deletions
diff --git a/lib/Basic/Builtins.cpp b/lib/Basic/Builtins.cpp
index cb8a0b37bb..69b10c13ed 100644
--- a/lib/Basic/Builtins.cpp
+++ b/lib/Basic/Builtins.cpp
@@ -32,27 +32,20 @@ static const Builtin::Info BuiltinInfo[] = {
const Builtin::Info &Builtin::Context::getRecord(unsigned ID) const {
if (ID < Builtin::FirstTSBuiltin)
return BuiltinInfo[ID];
- assert(ID - Builtin::FirstTSBuiltin < (NumTSRecords + NumAuxTSRecords) &&
+ assert(((ID - Builtin::FirstTSBuiltin) <
+ (TSRecords.size() + AuxTSRecords.size())) &&
"Invalid builtin ID!");
if (isAuxBuiltinID(ID))
return AuxTSRecords[getAuxBuiltinID(ID) - Builtin::FirstTSBuiltin];
return TSRecords[ID - Builtin::FirstTSBuiltin];
}
-Builtin::Context::Context() {
- // Get the target specific builtins from the target.
- TSRecords = nullptr;
- AuxTSRecords = nullptr;
- NumTSRecords = 0;
- NumAuxTSRecords = 0;
-}
-
void Builtin::Context::InitializeTarget(const TargetInfo &Target,
const TargetInfo *AuxTarget) {
- assert(NumTSRecords == 0 && "Already initialized target?");
- Target.getTargetBuiltins(TSRecords, NumTSRecords);
+ assert(TSRecords.empty() && "Already initialized target?");
+ TSRecords = Target.getTargetBuiltins();
if (AuxTarget)
- AuxTarget->getTargetBuiltins(AuxTSRecords, NumAuxTSRecords);
+ AuxTSRecords = AuxTarget->getTargetBuiltins();
}
bool Builtin::Context::builtinIsSupported(const Builtin::Info &BuiltinInfo,
@@ -82,14 +75,14 @@ void Builtin::Context::initializeBuiltins(IdentifierTable &Table,
}
// Step #2: Register target-specific builtins.
- for (unsigned i = 0, e = NumTSRecords; i != e; ++i)
+ for (unsigned i = 0, e = TSRecords.size(); i != e; ++i)
if (builtinIsSupported(TSRecords[i], LangOpts))
Table.get(TSRecords[i].Name).setBuiltinID(i + Builtin::FirstTSBuiltin);
// Step #3: Register target-specific builtins for AuxTarget.
- for (unsigned i = 0, e = NumAuxTSRecords; i != e; ++i)
+ for (unsigned i = 0, e = AuxTSRecords.size(); i != e; ++i)
Table.get(AuxTSRecords[i].Name)
- .setBuiltinID(i + Builtin::FirstTSBuiltin + NumTSRecords);
+ .setBuiltinID(i + Builtin::FirstTSBuiltin + TSRecords.size());
}
void Builtin::Context::forgetBuiltin(unsigned ID, IdentifierTable &Table) {