summaryrefslogtreecommitdiff
path: root/scripts
diff options
context:
space:
mode:
authorThomas Lively <tlively@google.com>2023-01-25 15:43:18 -0600
committerGitHub <noreply@github.com>2023-01-25 13:43:18 -0800
commit17d120a3337fe56567d4e45583db8ea62ee8bf6f (patch)
treebbca8d1805eb9ef1104fff42299780a083dd6ad9 /scripts
parent720d64413af87518863bf481113702520bb81f7e (diff)
downloadbinaryen-17d120a3337fe56567d4e45583db8ea62ee8bf6f.tar.gz
binaryen-17d120a3337fe56567d4e45583db8ea62ee8bf6f.tar.bz2
binaryen-17d120a3337fe56567d4e45583db8ea62ee8bf6f.zip
Merge more sibling types in TypeMerging (#5452)
TypeMerging was previously able to merge identical root types and identical siblings that were children of a distinct type, but only when the siblings had the same top-level structure as their parent. Improve the optimization by also merging identical children when they have a different top-level structure from their parent. This solution is not fully general because it does not merge shape-refining children of separate types that would become identical siblings only after their parent types are merged, but that full generality would require either modifying Valmari-Lehtinen DFA minimization or performing the DFA minimization in a loop until reaching a fixpoint.
Diffstat (limited to 'scripts')
0 files changed, 0 insertions, 0 deletions