[CFE] Fixes for instrumenter Change-Id: Ib63140b2a64a9ab1a235d1b8e2e8872e13eecd34 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/448401 Commit-Queue: Jens Johansen <jensj@google.com> Reviewed-by: Johnni Winther <johnniwinther@google.com>
diff --git a/pkg/front_end/tool/flame/instrumenter.dart b/pkg/front_end/tool/flame/instrumenter.dart index 2884758..16f7732 100644 --- a/pkg/front_end/tool/flame/instrumenter.dart +++ b/pkg/front_end/tool/flame/instrumenter.dart
@@ -247,7 +247,7 @@ Set<String> procedureNamesWantedInFile = wanted[p.fileUri.pathSegments.last] ?? const {}; return procedureNamesWantedInFile.contains(name) || - !procedureNamesWantedInFile.contains("*"); + procedureNamesWantedInFile.contains("*"); } @override
diff --git a/pkg/front_end/tool/flame/instrumenter_lib.dart b/pkg/front_end/tool/flame/instrumenter_lib.dart index 2b08302..7f18970 100644 --- a/pkg/front_end/tool/flame/instrumenter_lib.dart +++ b/pkg/front_end/tool/flame/instrumenter_lib.dart
@@ -112,22 +112,18 @@ "${withOutputInfo.names[enterProcedureNumber]}.", ); } - bool foundMatch = false; - int steps = 1; + int? foundAt; for (int i = _activeStack.length - 2; i >= 0; i -= 2) { - steps++; if (_activeStack[i] == procedureNumber) { - foundMatch = true; + foundAt = i; break; } } - if (foundMatch) { + if (foundAt != null) { _activeStack.add(enterProcedureNumber); _activeStack.add(enterTicks); - enterProcedureNumber = _activeStack.removeAt( - _activeStack.length - steps * 2, - ); - enterTicks = _activeStack.removeAt(_activeStack.length - steps * 2); + enterProcedureNumber = _activeStack.removeAt(foundAt); + enterTicks = _activeStack.removeAt(foundAt); assert(enterProcedureNumber != procedureNumber); } else { throw "Mismatching enter/exit with no matching "