Lines Matching defs:arith
26 namespace mlir::arith {
29 } // namespace mlir::arith
35 : arith::impl::ArithEmulateUnsupportedFloatsBase<
37 using arith::impl::ArithEmulateUnsupportedFloatsBase<
80 auto truncFOp = rewriter.create<arith::TruncFOp>(loc, oldType, res);
81 truncFOp.setFastmath(arith::FastMathFlags::contract);
88 void mlir::arith::populateEmulateUnsupportedFloatsConversions(
102 auto extFOp = b.create<arith::ExtFOp>(loc, target, input);
103 extFOp.setFastmath(arith::FastMathFlags::contract);
108 void mlir::arith::populateEmulateUnsupportedFloatsPatterns(
113 void mlir::arith::populateEmulateUnsupportedFloatsLegality(
117 target.addDynamicallyLegalDialect<arith::ArithDialect>(
126 target.addLegalOp<arith::BitcastOp, arith::ExtFOp, arith::TruncFOp,
127 arith::ConstantOp, vector::SplatOp>();
137 arith::parseFloatType(ctx, targetTypeStr);
147 arith::parseFloatType(ctx, sourceTypeStr);
167 arith::populateEmulateUnsupportedFloatsConversions(converter, sourceTypes,
170 arith::populateEmulateUnsupportedFloatsPatterns(patterns, converter);
172 arith::populateEmulateUnsupportedFloatsLegality(target, converter);