================
@@ -807,20 +891,15 @@ CIRGenFunction::emitAMDGPUBuiltinExpr(unsigned builtinId,
return mlir::Value{};
}
case Builtin::BIlogbf:
- case Builtin::BI__builtin_logbf: {
- cgm.errorNYI(expr->getSourceRange(),
- std::string("unimplemented AMDGPU builtin call: ") +
- getContext().BuiltinInfo.getName(builtinId));
- return mlir::Value{};
- }
+ case Builtin::BI__builtin_logbf:
+ return emitLogbBuiltin(*this, expr, true);
case Builtin::BIscalbnf:
case Builtin::BI__builtin_scalbnf:
+ return emitLogbBuiltin(*this, expr, false);
case Builtin::BIscalbn:
case Builtin::BI__builtin_scalbn: {
- cgm.errorNYI(expr->getSourceRange(),
- std::string("unimplemented AMDGPU builtin call: ") +
- getContext().BuiltinInfo.getName(builtinId));
- return mlir::Value{};
+ return emitBinaryExpMaybeConstrainedFPBuiltin(
+ *this, expr, "llvm.ldexp", "llvm.experimental.constrained.ldexp");
----------------
andykaylor wrote:
```suggestion
*this, expr, "ldexp", "experimental.constrained.ldexp");
```
Even more unfortunately, the "llvm." prefix must be omitted.
https://github.com/llvm/llvm-project/pull/191344
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits