]> granicus.if.org Git - re2c/commit
Skeleton: don't keep expanded range representation in nodes.
authorUlya Trofimovich <skvadrik@gmail.com>
Sun, 6 Nov 2016 15:11:31 +0000 (15:11 +0000)
committerUlya Trofimovich <skvadrik@gmail.com>
Sun, 6 Nov 2016 15:11:31 +0000 (15:11 +0000)
commit4b074270111bc7ce7f40a58fe82f1b26bde59b5a
tree8f02306af5279b09b3248b0041fa3e47b5120b5d
parentcdaad4b15030f5c314f2a731fae16f80135b7b7c
Skeleton: don't keep expanded range representation in nodes.

For the most part character range is represented as a pair of bounds.
When generating data for skeleton programs we need to pick some
256 distinct characters from each range; only these characters will
participate in data generation.

Before this commit range expansion happened at the time of skeleton
construction. Now it is delayed until the time of dumping skeleton
paths to file. This means that expansion of particular range is done
multiple times (every time the corresponding skeleton multiarc is
dumped to file). However, data generation only happens with '--skeleton'
option, while skeleton construction is unavoidable.
re2c/src/ir/skeleton/control_flow.cc
re2c/src/ir/skeleton/generate_data.cc
re2c/src/ir/skeleton/path.h
re2c/src/ir/skeleton/skeleton.cc
re2c/src/ir/skeleton/skeleton.h