"""Assembler pipeline helpers for the OR1 test suite.""" from textwrap import dedent from asm.lower import lower from asm.resolve import resolve def parse_and_lower(parser, source: str): """Parse source code and lower the resulting CST to IRGraph.""" tree = parser.parse(dedent(source)) return lower(tree) def parse_lower_resolve(parser, source: str): """Parse source code, lower to IRGraph, then resolve names.""" tree = parser.parse(dedent(source)) graph = lower(tree) return resolve(graph)