Add support for `AtenDivTensorOp` `AtenDivScalarOp` with integer operands
#456 aberto em 2 de dez. de 2021
Métricas do repositório
- Stars
- (1.888 estrelas)
- Métricas de merge de PR
- (Mesclagem média 11d 19h) (18 fundiu PRs em 30d)
Description
The type promotion rule for div ops are different when both operands are integers (integer operands are promoted to default float type) see https://pytorch.org/docs/stable/generated/torch.div.html.
To support this, AtenDivTensorOp and AtenDivScalarOp need to have some customized logic in RefineTypes rather than using visitBinaryBroadcastingOp or visitBinaryTensorScalarOp directly as it is now https://github.com/llvm/mlir-npcomp/blob/5475d02a0d03b2bda7ef9cc240773041d22a926b/lib/Dialect/Torch/Transforms/RefineTypes.cpp#L305-L308.
Once the changes in RefineTypes are made, the TorchToLinalg lowering code can be updated as well.