File tree Expand file tree Collapse file tree 1 file changed +10
-2
lines changed
lib/SILOptimizer/Mandatory Expand file tree Collapse file tree 1 file changed +10
-2
lines changed Original file line number Diff line number Diff line change 280
280
using namespace swift ;
281
281
using namespace swift ::siloptimizer;
282
282
283
+ llvm::cl::opt<bool > DisableMoveOnlyAddressCheckerLifetimeExtension (
284
+ " move-only-address-checker-disable-lifetime-extension" ,
285
+ llvm::cl::init (false ),
286
+ llvm::cl::desc(" Disable the lifetime extension of non-consumed fields of "
287
+ " move-only values." ));
288
+
283
289
// ===----------------------------------------------------------------------===//
284
290
// MARK: Memory Utilities
285
291
// ===----------------------------------------------------------------------===//
@@ -3181,8 +3187,10 @@ bool MoveOnlyAddressCheckerPImpl::performSingleCheck(
3181
3187
3182
3188
FieldSensitivePrunedLivenessBoundary boundary (liveness.getNumSubElements ());
3183
3189
liveness.computeBoundary (boundary);
3184
- ExtendUnconsumedLiveness extension (addressUseState, liveness, boundary);
3185
- extension.run ();
3190
+ if (!DisableMoveOnlyAddressCheckerLifetimeExtension) {
3191
+ ExtendUnconsumedLiveness extension (addressUseState, liveness, boundary);
3192
+ extension.run ();
3193
+ }
3186
3194
boundary.clear ();
3187
3195
liveness.computeBoundary (boundary);
3188
3196
insertDestroysOnBoundary (markedAddress, liveness, boundary);
You can’t perform that action at this time.
0 commit comments