genmatch.c (struct sinfo, [...]): New hash-map to record equivalent transforms.
authorRichard Biener <rguenther@suse.de>
Mon, 3 Aug 2015 07:39:12 +0000 (07:39 +0000)
committerRichard Biener <rguenth@gcc.gnu.org>
Mon, 3 Aug 2015 07:39:12 +0000 (07:39 +0000)
commit03038b8b7ad8e68a203cecdc43a44ee5ddbb7f6f
tree4200f65c79eb8b2ac1763c11afa220d75f6f2931
parent5c099d40da9eff21eea0606b7eb37e316d71c762
genmatch.c (struct sinfo, [...]): New hash-map to record equivalent transforms.

2015-08-03  Richard Biener  <rguenther@suse.de>

* genmatch.c (struct sinfo, struct sinfo_hashmap_traits, sinfo_map_t):
New hash-map to record equivalent transforms.
(dt_node::analyze): Populate the equivalent transforms hash-map.
(dt_simplify::info): Add reference to hash-map entry.
(dt_simplify::gen): If we have split out a function for the
transform, generate a call to it.
(sinfo_hashmap_traits::hash): New function.
(compare_op): New helper function for ...
(sinfo_hashmap_traits::equal_keys): ... this new function.
(decision_tree::gen): Split out common equivalent transforms
into functions.

From-SVN: r226490
gcc/ChangeLog
gcc/genmatch.c