9#ifndef FORTRAN_OPTIMIZER_BUILDER_RUNTIME_NUMERIC_H
10#define FORTRAN_OPTIMIZER_BUILDER_RUNTIME_NUMERIC_H
12#include "mlir/Dialect/Func/IR/FuncOps.h"
19namespace fir::runtime {
22mlir::Value genErfcScaled(fir::FirOpBuilder &builder, mlir::Location loc,
26mlir::Value genExponent(fir::FirOpBuilder &builder, mlir::Location loc,
27 mlir::Type resultType, mlir::Value x);
30mlir::Value genFraction(fir::FirOpBuilder &builder, mlir::Location loc,
34mlir::Value genMod(fir::FirOpBuilder &builder, mlir::Location loc,
35 mlir::Value a, mlir::Value p);
38mlir::Value genModulo(fir::FirOpBuilder &builder, mlir::Location loc,
39 mlir::Value a, mlir::Value p);
42mlir::Value genNearest(fir::FirOpBuilder &builder, mlir::Location loc,
43 mlir::Value x, mlir::Value s);
46mlir::Value genRRSpacing(fir::FirOpBuilder &builder, mlir::Location loc,
50mlir::Value genScale(fir::FirOpBuilder &builder, mlir::Location loc,
51 mlir::Value x, mlir::Value i);
54mlir::Value genSelectedCharKind(fir::FirOpBuilder &builder, mlir::Location loc,
55 mlir::Value name, mlir::Value length);
58mlir::Value genSelectedIntKind(fir::FirOpBuilder &builder, mlir::Location loc,
62mlir::Value genSelectedLogicalKind(fir::FirOpBuilder &builder,
63 mlir::Location loc, mlir::Value x);
66mlir::Value genSelectedRealKind(fir::FirOpBuilder &builder, mlir::Location loc,
67 mlir::Value precision, mlir::Value range,
71mlir::Value genSetExponent(fir::FirOpBuilder &builder, mlir::Location loc,
72 mlir::Value x, mlir::Value i);
75mlir::Value genSpacing(fir::FirOpBuilder &builder, mlir::Location loc,
Definition BoxValue.h:478
Definition FIRBuilder.h:55
Definition AbstractConverter.h:34