================
@@ -1636,8 +1636,13 @@ RValue CIRGenFunction::emitBuiltinExpr(const GlobalDecl 
&gd, unsigned builtinID,
         builder.createIsFPClass(loc, v, cir::FPClassTest(test)),
         convertType(e->getType())));
   }
-  case Builtin::BI__builtin_nondeterministic_value:
-    return errorBuiltinNYI(*this, e, builtinID);
+  case Builtin::BI__builtin_nondeterministic_value: {
+    mlir::Type ty = convertType(e->getArg(0)->getType());
+    mlir::Value result =
+        cir::ConstantOp::create(builder, loc, ty, cir::PoisonAttr::get(ty));
+    result = builder.createFreeze(loc, result);
----------------
xlauko wrote:

```suggestion
    result = cir::FreezeOp::create(builder, loc, value);
```

https://github.com/llvm/llvm-project/pull/206149
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to