polynomial.mul currently lowers via polynoimal-to-mod-arith to a convolution-based polynomial multiplication routine, assuming coefficient form. Now that we have NTT outputs as polynomial types with a "form" attribute, we need to support lowering a polynomial.mul op in eval form to an elementwise product with no ring reduction.
Similarly, we should review all the polynomial-to-mod-arith op lowerings and see which need to branch based on eval/coeff form differences in the input.
polynomial.mul currently lowers via
polynoimal-to-mod-arithto a convolution-based polynomial multiplication routine, assuming coefficient form. Now that we have NTT outputs as polynomial types with a "form" attribute, we need to support lowering a polynomial.mul op inevalform to an elementwise product with no ring reduction.Similarly, we should review all the polynomial-to-mod-arith op lowerings and see which need to branch based on eval/coeff form differences in the input.