|
14 | 14 |
|
15 | 15 | import torch |
16 | 16 | import torch.fx |
| 17 | + |
| 18 | +from executorch.backends.cadence.aot.fuse_ops import FuseTransposeOrPermuteOpPairsPass |
17 | 19 | from executorch.backends.cadence.aot.pass_utils import ( |
18 | 20 | CadencePassAttribute, |
19 | 21 | get_arg, |
20 | 22 | register_cadence_pass, |
21 | 23 | RemoveOrReplacePassInterface, |
22 | 24 | set_arg, |
23 | 25 | ) |
24 | | - |
25 | 26 | from executorch.backends.cadence.aot.simplify_ops import SimplifySliceOpPass |
26 | 27 | from executorch.backends.cadence.aot.utils import get_edge_overload_packet |
27 | 28 | from executorch.backends.transforms.remove_clone_ops import RemoveCloneOpsTransform |
@@ -412,6 +413,9 @@ class Subgraph: |
412 | 413 | exir_ops.edge.quantized_decomposed.dequantize_per_tensor.default, |
413 | 414 | exir_ops.edge.cadence.quantize_per_tensor.default, |
414 | 415 | exir_ops.edge.cadence.dequantize_per_tensor.default, |
| 416 | + exir_ops.edge.cadence.quantized_relu.per_tensor, |
| 417 | + exir_ops.edge.cadence.requantize.per_tensor, |
| 418 | + exir_ops.edge.cadence.quantized_add.per_tensor, |
415 | 419 | # Ops that require special handling. |
416 | 420 | exir_ops.edge.aten.cat.default, |
417 | 421 | exir_ops.edge.aten.mean.dim, |
@@ -804,6 +808,7 @@ class CommonRemovePasses: |
804 | 808 | RemoveToOpsPass, |
805 | 809 | RemoveZeroSizedCatArgsPass, |
806 | 810 | RemovePermutesAroundElementwiseOps, |
| 811 | + FuseTransposeOrPermuteOpPairsPass, |
807 | 812 | RemoveSqueezeViewBeforeElementwiseOps, |
808 | 813 | RemoveCatFromSliceCopyPass, |
809 | 814 | RemoveCloneOpsTransformImported, |
|
0 commit comments