From 1b812c38f49e1df84e21236f22377b51c6101d3c Mon Sep 17 00:00:00 2001 From: Ekaterina Ignasheva Date: Wed, 11 Jun 2025 16:43:44 -0700 Subject: [PATCH] Make core aten exception ops modifiable at runtime. (#11497) Summary: Pull Request resolved: https://github.com/pytorch/executorch/pull/11497 Right now we run the ir verifier with a hardcoded set of whitelisted ops. This diff modifies the API to pass the user-defined ops to extend the exception list. See the attached task for more details. Reviewed By: hsharma35 Differential Revision: D75997936 --- backends/cadence/aot/compiler.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/backends/cadence/aot/compiler.py b/backends/cadence/aot/compiler.py index b6f213c9d66..cb91c459cfd 100644 --- a/backends/cadence/aot/compiler.py +++ b/backends/cadence/aot/compiler.py @@ -217,6 +217,7 @@ def _lower_ep_to_edge( expo_program: ExportedProgram, dump_graphs: bool = False, constant_methods: Optional[dict[str, object]] = None, + core_aten_exceptions: Optional[list[torch._ops.OpOverload]] = None, ) -> EdgeProgramManager: """ Lower an ExportedProgram to an EdgeProgramManager (in edge IR). @@ -237,7 +238,8 @@ def _lower_ep_to_edge( torch.ops.aten.unfold.default, torch.ops.aten.angle.default, torch.ops.aten.rms_norm.default, - ], + ] + + (core_aten_exceptions or []), ), constant_methods=constant_methods, preserve_ops=(torch.ops.aten.rms_norm.default,),