aboutsummaryrefslogtreecommitdiff
path: root/lib/Basic/Builtins.cpp
diff options
context:
space:
mode:
authorDouglas Gregor <dgregor@apple.com>2011-09-01 23:39:15 +0000
committerDouglas Gregor <dgregor@apple.com>2011-09-01 23:39:15 +0000
commit998b3d3e8528ebd9d2c5d78d3a82edd90a8953a4 (patch)
treeccd8215b16e0f4c088e7537c5e888af60a659805 /lib/Basic/Builtins.cpp
parentdb44a6b00768a14e8a4d388d67edef61a1ae2d63 (diff)
Allow the preprocessor to be constructed without performing target-
and language-specific initialization. Use this to allow ASTUnit to create a preprocessor object *before* loading the AST file. No actual functionality change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138983 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Basic/Builtins.cpp')
-rw-r--r--lib/Basic/Builtins.cpp8
1 files changed, 6 insertions, 2 deletions
diff --git a/lib/Basic/Builtins.cpp b/lib/Basic/Builtins.cpp
index 57b771ab5b..7bdcdc6885 100644
--- a/lib/Basic/Builtins.cpp
+++ b/lib/Basic/Builtins.cpp
@@ -32,11 +32,15 @@ const Builtin::Info &Builtin::Context::GetRecord(unsigned ID) const {
return TSRecords[ID - Builtin::FirstTSBuiltin];
}
-Builtin::Context::Context(const TargetInfo &Target) {
+Builtin::Context::Context() {
// Get the target specific builtins from the target.
TSRecords = 0;
NumTSRecords = 0;
- Target.getTargetBuiltins(TSRecords, NumTSRecords);
+}
+
+void Builtin::Context::InitializeTarget(const TargetInfo &Target) {
+ assert(NumTSRecords == 0 && "Already initialized target?");
+ Target.getTargetBuiltins(TSRecords, NumTSRecords);
}
/// InitializeBuiltins - Mark the identifiers for all the builtins with their