Changes since v2: * Add some additional tests, based on actual uncaught exceptions I saw while using pattern groups in an ARM32 conversion. * Allow negative numbers in field=number. * Push extraction functions into the namespace of the decoder.
I'll probably give a PR for this on the weekend. r~ Bastian Koppelmann (1): test/decode: Add tests for PatternGroups Philippe Mathieu-Daudé (2): MAINTAINERS: Add scripts/decodetree.py to the TCG section decodetree: Ensure build_tree does not include values outside insnmask Richard Henderson (9): decodetree: Move documentation to docs/devel/decodetree.rst decodetree: Document the usefulness of argument sets decodetree: Do not unconditionaly return from Pattern.output_code decodetree: Allow grouping of overlapping patterns decodetree: Add --static-decode option decodetree: Produce clean output for an empty input file decodetree: Allow +- to begin a number initializing a field decodetree: Prefix extract function names with decode_function decodetree: Properly diagnose fields overflowing an insn MAINTAINERS | 2 + docs/devel/decodetree.rst | 221 ++++++++++++ docs/devel/index.rst | 2 +- scripts/decodetree.py | 330 +++++++++--------- tests/decode/check.sh | 6 + tests/decode/err_pattern_group_empty.decode | 6 + tests/decode/err_pattern_group_ident1.decode | 10 + tests/decode/err_pattern_group_ident2.decode | 11 + tests/decode/err_pattern_group_nest1.decode | 13 + .../decode/err_pattern_group_overlap1.decode | 6 + tests/decode/err_width1.decode | 5 + tests/decode/err_width2.decode | 5 + tests/decode/err_width3.decode | 5 + tests/decode/err_width4.decode | 5 + tests/decode/succ_pattern_group_nest1.decode | 22 ++ 15 files changed, 480 insertions(+), 169 deletions(-) create mode 100644 docs/devel/decodetree.rst create mode 100644 tests/decode/err_pattern_group_empty.decode create mode 100644 tests/decode/err_pattern_group_ident1.decode create mode 100644 tests/decode/err_pattern_group_ident2.decode create mode 100644 tests/decode/err_pattern_group_nest1.decode create mode 100644 tests/decode/err_pattern_group_overlap1.decode create mode 100644 tests/decode/err_width1.decode create mode 100644 tests/decode/err_width2.decode create mode 100644 tests/decode/err_width3.decode create mode 100644 tests/decode/err_width4.decode create mode 100644 tests/decode/succ_pattern_group_nest1.decode -- 2.17.2