================
@@ -652,6 +652,134 @@ in the future. The expected roadmap for Reduced BMIs as 
of Clang 19.x is:
    comes, the term BMI will refer to the Reduced BMI and the Full BMI will only
    be meaningful to build systems which elect to support two-phase compilation.
 
+Experimental No Transitive Change
+---------------------------------
+
+Starting with clang19.x, we introduced an experimental feature: the 
non-transitive
+change for modules, aimed at reducing unnecessary recompilations. For example,
----------------
ilya-biryukov wrote:

NIT: Maybe call it "Avoiding unnecessary recompilations"?
It should carry the information people are interested in, but is more grounded 
in the terms that users are likely to recognize. We could introduce what it 
does right away:


```
Before Clang 19, a change in BMI of any (transitive) dependency would case the 
outputs of the BMI to change. Starting with Clang 19, changes to non-direct 
dependencies should not directly affect the output BMI, unless they affect the 
results of the compilations.
We expect that there are many more opportunities for this optimization than we 
currently have realized and would appreaciate feedback about missed 
optimization opportunities.
... 
```

Having an example after that should clarify this even more.
Does that seems reasonable? (Sorry if I got something wrong, I've probably 
speculated a bit beyond my undestanding in the comment I wrote)

https://github.com/llvm/llvm-project/pull/96453
_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to