[clang] [Clang][Driver] Add new flags to control IR verification (PR #68172)

Matheus Izvekov via cfe-commits cfe-commits at lists.llvm.org
Wed Oct 4 11:40:33 PDT 2023


================
@@ -146,6 +146,13 @@ Non-comprehensive list of changes in this release
 
 New Compiler Flags
 ------------------
+* ``-fverify-intermediate-code`` and it's complement ``-fno-verify-intermediate-code``.
+  Enables or disables verification of the generated LLVM IR.
+  It's strongly encouraged to enable this verification, as it can catch hard to
+  find code generation bugs.
----------------
mizvekov wrote:

Does it really not make sense, or do you simply not agree we should recommend it?

I understand LLVM developers generally test the toolchain with runtime checks enabled.

But the sticking point for me is that I find it implausible that this is a satisfactory level of coverage, specially when you consider that there are some platforms that have significant quirks, but that are not well represented within the developers subset.

For an example, see https://github.com/llvm/llvm-project/issues/67937
We have been generating ill-formed IR for many years on the MSVC platform, for simple basic scenario that should be covered by any real world use case.

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


More information about the cfe-commits mailing list