efriedma-quic wrote:

Hmm... so basically, the program is partitioned into parts with branch 
enforcement disabled, and parts with branch enforcement enabled, and there's 
some defined transition between the two?  So in this case, the metadata is 
nonsense, and you want to ignore it.  I guess that makes sense.

This means missed optimizations for the case where the program can't mess with 
the BTI-enabled state, though: if you build a library with BTI enabled and link 
it into a program with BTI disabled, LTO becomes severely restricted.  I guess 
that might be rare enough it doesn't matter.

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

Reply via email to