Lines Matching defs:reductionOp
579 verifyLogicalReductionOp(LogicalReductionOp reductionOp) {
580 mlir::Operation *op = reductionOp->getOperation();
585 mlir::Value mask = reductionOp->getMask();
586 mlir::Value dim = reductionOp->getDim();
597 return reductionOp->emitOpError(
605 return reductionOp->emitOpError("result must be an array");
608 return reductionOp->emitOpError(
614 return reductionOp->emitOpError(
617 return reductionOp->emitOpError("result must be of logical type");
620 return reductionOp->emitOpError("result must be of logical type");
759 verifyArrayAndMaskForReductionOp(NumericalReductionOp reductionOp) {
760 mlir::Value array = reductionOp->getArray();
761 mlir::Value mask = reductionOp->getMask();
777 return reductionOp->emitWarning("MASK must be conformable to ARRAY");
787 return reductionOp->emitWarning(
798 verifyNumericalReductionOp(NumericalReductionOp reductionOp) {
799 mlir::Operation *op = reductionOp->getOperation();
803 auto res = verifyArrayAndMaskForReductionOp(reductionOp);
807 mlir::Value array = reductionOp->getArray();
808 mlir::Value dim = reductionOp->getDim();
818 return reductionOp->emitOpError(
825 return reductionOp->emitOpError("result must be an array");
828 return reductionOp->emitOpError(
834 return reductionOp->emitOpError(
837 return reductionOp->emitOpError(
841 return reductionOp->emitOpError("result must be of numerical scalar type");
867 verifyCharacterReductionOp(CharacterReductionOp reductionOp) {
868 mlir::Operation *op = reductionOp->getOperation();
872 auto res = verifyArrayAndMaskForReductionOp(reductionOp);
876 mlir::Value array = reductionOp->getArray();
877 mlir::Value dim = reductionOp->getDim();
890 return reductionOp->emitOpError(
895 return reductionOp->emitOpError("result must be an array");
899 return reductionOp->emitOpError(
902 return reductionOp->emitOpError("result must be scalar character");
961 verifyResultForMinMaxLoc(NumericalReductionOp reductionOp) {
962 mlir::Operation *op = reductionOp->getOperation();
966 mlir::Value array = reductionOp->getArray();
967 mlir::Value dim = reductionOp->getDim();
975 return reductionOp->emitOpError("result must be scalar integer");
979 return reductionOp->emitOpError("result must be an array");
982 return reductionOp->emitOpError("result must have integer elements");
987 return reductionOp->emitOpError(
991 return reductionOp->emitOpError("result rank must be 1");
993 return reductionOp->emitOpError("result must be of numerical expr type");