Keith Randall 6a96a2fe5a [dev.ssa] cmd/compile: make cse faster
It is one of the slowest compiler phases right now, and we
run two of them.

Instead of using a map to make the initial partition, use a sort.
It is much less memory intensive.

Do a few optimizations to avoid work for size-1 equivalence classes.

Implement -N.

Change-Id: I1d2d85d3771abc918db4dd7cc30b0b2d854b15e1
Reviewed-on: https://go-review.googlesource.com/19024
Reviewed-by: David Chase <drchase@google.com>
2016-01-28 20:59:20 +00:00
..
2012-02-25 08:47:04 +11:00
2012-11-08 09:04:27 -08:00
2012-09-10 13:03:07 -07:00
2012-09-10 13:03:07 -07:00
2012-09-24 00:06:41 -04:00
2012-02-16 23:48:57 -05:00
2015-01-29 13:07:30 +00:00
2012-07-01 21:59:50 +04:00
2013-12-12 17:18:12 -08:00
2012-09-28 08:30:30 -07:00
2015-07-11 14:36:33 +00:00
2015-07-11 14:36:33 +00:00
2013-06-26 18:05:02 +02:00
2012-09-28 08:30:30 -07:00
2012-10-07 21:52:57 +02:00
2012-02-24 13:17:26 +11:00
2012-02-19 14:28:53 +11:00
2012-02-18 21:18:13 -08:00
2012-02-19 14:28:53 +11:00
2012-02-19 14:28:53 +11:00
2012-02-19 14:28:53 +11:00
2012-02-19 14:28:53 +11:00
2012-02-19 14:28:53 +11:00
2012-02-19 14:28:53 +11:00
2012-02-19 14:28:53 +11:00
2012-02-19 14:28:53 +11:00
2015-11-03 02:01:34 +00:00
2012-02-19 14:28:53 +11:00
2013-12-12 17:18:12 -08:00
2013-12-12 17:18:12 -08:00
2012-02-19 14:28:53 +11:00
2012-02-19 14:28:53 +11:00
2012-02-24 13:17:26 +11:00
2012-02-23 18:47:26 +11:00
2012-02-29 15:28:36 -05:00
2012-02-23 18:47:26 +11:00
2012-11-07 12:33:54 -08:00
2012-11-07 12:33:54 -08:00
2012-11-07 12:33:54 -08:00
2012-02-23 18:47:26 +11:00
2012-02-23 18:47:26 +11:00
2012-02-23 18:47:26 +11:00
2012-02-23 18:47:26 +11:00
2012-02-23 18:47:26 +11:00
2012-02-23 18:47:26 +11:00
2012-02-23 18:47:26 +11:00
2015-12-17 23:36:13 +00:00
2012-02-23 18:47:26 +11:00
2012-06-07 03:06:40 -04:00
2014-10-27 18:59:02 -04:00
2012-02-23 18:47:26 +11:00
2012-02-23 18:47:26 +11:00
2013-03-20 17:11:09 -04:00
2013-02-11 18:20:52 -05:00
2012-02-21 22:54:07 -05:00
2013-09-05 23:06:34 -04:00
2012-11-08 09:04:27 -08:00
2012-02-24 10:30:39 +11:00
2012-02-24 10:30:39 +11:00
2012-02-24 13:17:26 +11:00
2014-07-16 19:27:10 -04:00
2012-02-16 23:51:04 -05:00
2012-02-16 23:51:04 -05:00
2014-10-22 08:06:15 -07:00
2015-11-03 02:01:34 +00:00
2013-02-11 18:20:52 -05:00
2015-05-28 19:40:58 +00:00
2015-05-28 19:40:58 +00:00
2015-05-28 19:40:58 +00:00
2015-05-28 19:40:58 +00:00
2012-02-24 10:30:39 +11:00
2012-02-24 10:30:39 +11:00
2012-02-24 11:48:19 +11:00
2014-01-29 09:28:23 +01:00
2012-02-24 11:48:19 +11:00
2013-06-02 19:10:11 +02:00
2013-12-12 17:18:12 -08:00
2012-02-24 11:48:19 +11:00
2012-02-24 11:48:19 +11:00
2012-02-24 11:48:19 +11:00
2012-02-24 11:48:19 +11:00
2012-02-24 11:48:19 +11:00
2012-02-24 11:48:19 +11:00
2012-02-24 11:48:19 +11:00
2012-02-24 11:48:19 +11:00