Skip to content

Commit e351c70

Browse files
Sebastian-Larssonkirklandsign
authored andcommitted
Arm backend: Convert assert to throw TypeError in arm_pass_utils (#9866)
Part of an effort to move towards using try/except instead of asserts to have better debugging capabilities and traceability in the Arm backend. Signed-off-by: Sebastian Larsson <[email protected]>
1 parent 8811fa6 commit e351c70

File tree

2 files changed

+13
-4
lines changed

2 files changed

+13
-4
lines changed

backends/arm/_passes/arm_pass_utils.py

+8-3
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@
1313

1414
import torch
1515
import torch.fx
16+
from executorch.backends.arm.tosa_utils import get_node_debug_info
1617
from executorch.exir import ExportedProgram
1718
from executorch.exir.dialects._ops import ops as exir_ops
1819

@@ -169,9 +170,13 @@ def get_first_fake_tensor(node: torch.fx.Node) -> FakeTensor:
169170
else:
170171
fake_tensor = node.meta["val"]
171172

172-
assert isinstance(
173-
fake_tensor, FakeTensor
174-
), f'Found {fake_tensor} in meta["val"] of {node}, expected to find FakeTensor.'
173+
if not isinstance(fake_tensor, FakeTensor):
174+
raise TypeError(
175+
f'Expected a FakeTensor in meta["val"] of node {node}, but got '
176+
f"{type(fake_tensor).__name__}\n"
177+
f"{get_node_debug_info(node)}"
178+
)
179+
175180
return fake_tensor
176181

177182

backends/arm/tosa_utils.py

+5-1
Original file line numberDiff line numberDiff line change
@@ -30,9 +30,13 @@ def dbg_node(node: torch.fx.Node, graph_module: torch.fx.GraphModule):
3030
logger.info(get_node_debug_info(node, graph_module))
3131

3232

33-
def get_node_debug_info(node: torch.fx.Node, graph_module: torch.fx.GraphModule) -> str:
33+
def get_node_debug_info(
34+
node: torch.fx.Node, graph_module: torch.fx.GraphModule | None = None
35+
) -> str:
3436
output = (
3537
f" {inspect_node(graph=graph_module.graph, node=node)}\n"
38+
if graph_module
39+
else ""
3640
"-- NODE DEBUG INFO --\n"
3741
f" Op is {node.op}\n"
3842
f" Name is {node.name}\n"

0 commit comments

Comments
 (0)