efriedma-quic wrote: > This would be run during the backend after we've already selected the target, > so it can be target-dependent.
All IR is "target-dependent" in the sense that it depends on the datalayout. But it's target-independent in the sense that the validity rules don't depend on the triple. That separation of concerns is what allows people to write IR optimizations without worrying about specific targets: the rules are the same everywhere. You break that when you forbid the use of `i24`, or restrict what control flow is allowed after calls to specific intrinsics. https://github.com/llvm/llvm-project/pull/123609 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits