[clang] [CIR] Support __builtin_nondeterministic_value (PR #206149)

Andy Kaylor via cfe-commits cfe-commits at lists.llvm.org
Fri Jun 26 15:55:31 PDT 2026


================
@@ -2026,6 +2026,35 @@ def CIR_FNegOp : CIR_UnaryOp<"fneg", CIR_AnyFloatOrVecOfFloatType> {
   let llvmOp = "FNegOp";
 }
 
+//===----------------------------------------------------------------------===//
+// FreezeOp
+//===----------------------------------------------------------------------===//
+
+def CIR_FreezeOp : CIR_Op<"freeze", [Pure, SameOperandsAndResultType]> {
+  let summary = "Stop propagation of undef and poison values";
+  let description = [{
+    The `cir.freeze` operation takes a single operand and returns a value of the
+    same type. If the operand is a poison or undef value, `cir.freeze` returns an
----------------
andykaylor wrote:

Nit: can you reformat this to fit in 80 columns?

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


More information about the cfe-commits mailing list