From 2ced5e02eacfc6b9e67435fe3a24dcb6c3a29037 Mon Sep 17 00:00:00 2001 From: "Luke T. Shumaker" Date: Mon, 31 Mar 2025 15:58:51 -0600 Subject: measurestack: Compile all regexes upfront --- build-aux/measurestack/analyze.py | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) (limited to 'build-aux/measurestack/analyze.py') diff --git a/build-aux/measurestack/analyze.py b/build-aux/measurestack/analyze.py index 45ac876..871ff2d 100644 --- a/build-aux/measurestack/analyze.py +++ b/build-aux/measurestack/analyze.py @@ -133,6 +133,16 @@ class Application(typing.Protocol): def skip_call(self, chain: typing.Sequence[QName], funcname: QName) -> bool: ... +re_node_label = re.compile( + r"(?P[^\n]+)\n" + + r"(?P[^\n]+:[0-9]+:[0-9]+)\n" + + r"(?P[0-9]+) bytes \((?Pstatic|dynamic|dynamic,bounded)\)\n" + + r"(?P[0-9]+) dynamic objects" + + r"(?:\n.*)*", + flags=re.MULTILINE, +) + + def analyze( *, ci_fnames: typing.Collection[str], @@ -140,15 +150,6 @@ def analyze( app: Application, cfg_max_call_depth: int, ) -> AnalyzeResult: - re_node_label = re.compile( - r"(?P[^\n]+)\n" - + r"(?P[^\n]+:[0-9]+:[0-9]+)\n" - + r"(?P[0-9]+) bytes \((?Pstatic|dynamic|dynamic,bounded)\)\n" - + r"(?P[0-9]+) dynamic objects" - + r"(?:\n.*)*", - flags=re.MULTILINE, - ) - graph: dict[QName, Node] = {} qualified: dict[BaseName, set[QName]] = {} -- cgit v1.2.3-2-g168b