mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-01-08 18:31:23 +00:00
[objc-arc-annotations] Moved the disabling of call movement to ConnectTDBUTraversals so that I can prevent Changed = true from being set. This prevents an infinite loop.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@180693 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
d922518844
commit
e056397e81
@ -2581,6 +2581,11 @@ ObjCARCOpt::ConnectTDBUTraversals(DenseMap<const BasicBlock *, BBState>
|
||||
// long as the existing imbalances are maintained.
|
||||
if (OldDelta != 0)
|
||||
return false;
|
||||
|
||||
#ifdef ARC_ANNOTATIONS
|
||||
// Do not move calls if ARC annotations are requested.
|
||||
return false;
|
||||
#endif // ARC_ANNOTATIONS
|
||||
|
||||
Changed = true;
|
||||
assert(OldCount != 0 && "Unreachable code?");
|
||||
@ -2644,12 +2649,6 @@ ObjCARCOpt::PerformCodePlacement(DenseMap<const BasicBlock *, BBState>
|
||||
ReleasesToMove, Arg, KnownSafe,
|
||||
AnyPairsCompletelyEliminated);
|
||||
|
||||
#ifdef ARC_ANNOTATIONS
|
||||
// Do not move calls if ARC annotations are requested. If we were to move
|
||||
// calls in this case, we would not be able
|
||||
PerformMoveCalls = PerformMoveCalls && !EnableARCAnnotations;
|
||||
#endif // ARC_ANNOTATIONS
|
||||
|
||||
if (PerformMoveCalls) {
|
||||
// Ok, everything checks out and we're all set. Let's move/delete some
|
||||
// code!
|
||||
|
Loading…
Reference in New Issue
Block a user