[PATCH] D101542: [NFC] Refactor ExecuteAssembler in cc1as_main.cpp
Scott Linder via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Thu Apr 29 09:11:35 PDT 2021
scott.linder created this revision.
scott.linder requested review of this revision.
Herald added a project: clang.
Herald added a subscriber: cfe-commits.
Introduce an extra scope (another static function) to replace calls to
`unique_ptr::reset` with implicit destructors via RAII.
Repository:
rG LLVM Github Monorepo
https://reviews.llvm.org/D101542
Files:
clang/tools/driver/cc1as_main.cpp
Index: clang/tools/driver/cc1as_main.cpp
===================================================================
--- clang/tools/driver/cc1as_main.cpp
+++ clang/tools/driver/cc1as_main.cpp
@@ -333,8 +333,8 @@
return Out;
}
-static bool ExecuteAssembler(AssemblerInvocation &Opts,
- DiagnosticsEngine &Diags) {
+static bool ExecuteAssemblerImpl(AssemblerInvocation &Opts,
+ DiagnosticsEngine &Diags) {
// Get the target specific parser.
std::string Error;
const Target *TheTarget = TargetRegistry::lookupTarget(Opts.Triple, Error);
@@ -531,12 +531,12 @@
Failed = Parser->Run(Opts.NoInitialTextSection);
}
- // Parser has a reference to the output stream (Str), so close Parser first.
- Parser.reset();
- Str.reset();
- // Close the output stream early.
- BOS.reset();
- FDOS.reset();
+ return Failed;
+}
+
+static bool ExecuteAssembler(AssemblerInvocation &Opts,
+ DiagnosticsEngine &Diags) {
+ bool Failed = ExecuteAssemblerImpl(Opts, Diags);
// Delete output file if there were errors.
if (Failed) {
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D101542.341542.patch
Type: text/x-patch
Size: 1126 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20210429/3a19080e/attachment-0001.bin>
More information about the cfe-commits
mailing list