AbortedChanges

Summary

  1. [clang-format] successive C# attributes cause line breaking issues (details)
  2. [Verifier] Inline a method to simplify the code in preparation for bigger changes, NFC. (details)
  3. [Dominance] Speed up recalculate noticable, NFC. (details)
Commit ffb48d48e45c72ed81dda4983ccb06e800cdbbd0 by mydeveloperday
[clang-format] successive C# attributes cause line breaking issues

{D74265} reduced the aggressiveness of line breaking following C# attributes, however this change removed any support for attributes on properties, causing significant ugliness to be introduced.

This revision goes some way to addressing that by re-introducing the more aggressive check to `mustBreakBefore()`, but constraining it to the most common cases where we use properties which should not impact the "caller info attributes"  or the "[In , Out]" decorations that are normally put on pinvoke

It does not address my additional concerns of the original change regarding multiple C# attributes, as these are somewhat incorrectly handled by virtue of the fact its not recognising the second attribute as an attribute at all. But instead thinking its an array.

The purpose of this revision is to get back to where we were for the most common of cases as a stepping stone to resolving this. However {D74265} has broken a lot of C# code and this revision will go someway alone to addressing the majority.

Reviewed By: jbcoe, HazardyKnusperkeks, curdeius

Differential Revision: https://reviews.llvm.org/D103307
The file was modifiedclang/unittests/Format/FormatTestCSharp.cpp
The file was modifiedclang/lib/Format/TokenAnnotator.cpp
Commit d11abdfd5a270c35d776a83bb9c90f9667ad114f by clattner
[Verifier] Inline a method to simplify the code in preparation for bigger changes, NFC.

Differential Revision: https://reviews.llvm.org/D103365
The file was modifiedmlir/lib/IR/Verifier.cpp
Commit 67d0e79b1f41256ac99e4aa0b88ce2cd7865f960 by clattner
[Dominance] Speed up recalculate noticable, NFC.

This avoids trying to find the RegionKindInterface for every
operation in the program, we only need it if they have regions.

Differential Revision: https://reviews.llvm.org/D103367
The file was modifiedmlir/lib/IR/Dominance.cpp