@@ -47,6 +47,17 @@ swift::CompilerInvocation::CompilerInvocation() {
47
47
setTargetTriple (llvm::sys::getDefaultTargetTriple ());
48
48
}
49
49
50
+ // / Converts a llvm::Triple to a llvm::VersionTuple.
51
+ static llvm::VersionTuple
52
+ getVersionTuple (const llvm::Triple &triple) {
53
+ unsigned major, minor, patch;
54
+ if (triple.isMacOSX ())
55
+ triple.getMacOSXVersion (major, minor, patch);
56
+ else
57
+ triple.getOSVersion (major, minor, patch);
58
+ return llvm::VersionTuple (major, minor, patch);
59
+ }
60
+
50
61
void CompilerInvocation::computeRuntimeResourcePathFromExecutablePath (
51
62
StringRef mainExecutablePath, bool shared,
52
63
llvm::SmallVectorImpl<char > &runtimeResourcePath) {
@@ -865,24 +876,19 @@ static bool ParseLangArgs(LangOptions &Opts, ArgList &Args,
865
876
// First, set up default minimum inlining target versions.
866
877
auto getDefaultMinimumInliningTargetVersion =
867
878
[&](const llvm::Triple &triple) -> llvm::VersionTuple {
868
- // FIXME: Re-enable with rdar://91387029
869
- # if SWIFT_DEFAULT_API_TARGET_MIN_INLINING_VERSION_TO_MIN
879
+ const auto targetVersion = getVersionTuple (triple);
880
+
870
881
// In API modules, default to the version when Swift first became available.
871
- if (Opts.LibraryLevel == LibraryLevel::API)
872
- if (auto minTriple = minimumAvailableOSVersionForTriple (triple))
873
- return *minTriple ;
874
- # endif
882
+ if (Opts.LibraryLevel == LibraryLevel::API) {
883
+ if (auto minVersion = minimumAvailableOSVersionForTriple (triple))
884
+ return *minVersion ;
885
+ }
875
886
876
887
// In other modules, assume that availability is used less consistently
877
888
// and that library clients will generally raise deployment targets as the
878
889
// library evolves so the min inlining version should be the deployment
879
890
// target by default.
880
- unsigned major, minor, patch;
881
- if (triple.isMacOSX ())
882
- triple.getMacOSXVersion (major, minor, patch);
883
- else
884
- triple.getOSVersion (major, minor, patch);
885
- return llvm::VersionTuple (major, minor, patch);
891
+ return targetVersion;
886
892
};
887
893
888
894
Opts.MinimumInliningTargetVersion =
0 commit comments