[llvm] [DomTreeUpdater] Handle critical edge splitting (PR #100856)

Jakub Kuderski via llvm-commits llvm-commits at lists.llvm.org
Mon Aug 5 21:14:04 PDT 2024


================
@@ -146,8 +152,25 @@ class GenericDomTreeUpdater {
   /// 2. It is illegal to submit any update that has already been submitted,
   /// i.e., you are supposed not to insert an existent edge or delete a
   /// nonexistent edge.
+  /// 3. This kind updates are incompatible with critical edge splitting
+  /// updates, call this method will apply all critical edge updates in
+  /// lazy mode. It is not recommended to interleave applyUpdates and
+  /// applyUpdatesForCriticalEdgeSplitting.
----------------
kuhar wrote:

What do you think about exposing a more general update type that captures both edge additions/deletions and critical edge splitting? Would that make sense? I'm trying to see if we can avoid adding new methods and, in turn, having to document intricacies like this. 

https://github.com/llvm/llvm-project/pull/100856


More information about the llvm-commits mailing list