diff options
author | Jan Svoboda <jan_svoboda@apple.com> | 2025-07-15 12:45:09 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2025-07-15 12:45:09 -0700 |
commit | c592b61fc82c79366216ae12b25b0130359b0a26 (patch) | |
tree | 66b671ae5fdaaf321a94a9378b1af3b957586060 /clang/lib/Frontend/FrontendAction.cpp | |
parent | fccae859bc949ba390184614e07234267a734b86 (diff) | |
download | llvm-c592b61fc82c79366216ae12b25b0130359b0a26.zip llvm-c592b61fc82c79366216ae12b25b0130359b0a26.tar.gz llvm-c592b61fc82c79366216ae12b25b0130359b0a26.tar.bz2 |
[clang][modules] Serialize `CodeGenOptions` (#146422)
Some `LangOptions` duplicate their `CodeGenOptions` counterparts. My
understanding is that this was done solely because some infrastructure
(like preprocessor initialization, serialization, module compatibility
checks, etc.) were only possible/convenient for `LangOptions`. This PR
implements the missing support for `CodeGenOptions`, which makes it
possible to remove some duplicate `LangOptions` fields and simplify the
logic. Motivated by https://github.com/llvm/llvm-project/pull/146342.
Diffstat (limited to 'clang/lib/Frontend/FrontendAction.cpp')
-rw-r--r-- | clang/lib/Frontend/FrontendAction.cpp | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/clang/lib/Frontend/FrontendAction.cpp b/clang/lib/Frontend/FrontendAction.cpp index f5996a8..1d82fc7 100644 --- a/clang/lib/Frontend/FrontendAction.cpp +++ b/clang/lib/Frontend/FrontendAction.cpp @@ -947,8 +947,9 @@ bool FrontendAction::BeginSourceFile(CompilerInstance &CI, if (ASTReader::isAcceptableASTFile( Dir->path(), FileMgr, CI.getModuleCache(), CI.getPCHContainerReader(), CI.getLangOpts(), - CI.getTargetOpts(), CI.getPreprocessorOpts(), - SpecificModuleCachePath, /*RequireStrictOptionMatches=*/true)) { + CI.getCodeGenOpts(), CI.getTargetOpts(), + CI.getPreprocessorOpts(), SpecificModuleCachePath, + /*RequireStrictOptionMatches=*/true)) { PPOpts.ImplicitPCHInclude = std::string(Dir->path()); Found = true; break; |