Nikolai Bozhenov
fca527af5c
[BypassSlowDivision] Do not bypass division of hash-like values
...
Disable bypassing if one of the operands looks like a hash value. Slow
division often occurs in hashtable implementations and fast division is
never taken there because a hash value is extremely unlikely to have
enough upper bits set to zero.
A value is considered to be hash-like if it is produced by
1) XOR operation
2) Multiplication by a constant wider than the shorter type
3) PHI node with all incoming values being hash-like
Differential Revision: https://reviews.llvm.org/D28200
llvm-svn: 299329
2017-04-02 13:14:30 +00:00
..
2017-02-10 21:09:07 +00:00
2016-10-19 00:16:56 +00:00
2017-03-06 15:33:05 +00:00
2016-07-22 18:04:25 +00:00
2017-03-21 16:57:19 +00:00
2017-04-02 13:14:30 +00:00
2017-03-21 16:57:19 +00:00
2017-01-18 20:02:31 +00:00
2017-03-10 04:54:10 +00:00
2016-07-20 17:18:45 +00:00
2017-03-21 16:57:19 +00:00
2016-10-22 01:21:24 +00:00
2015-10-13 02:39:05 +00:00
2016-11-14 21:41:13 +00:00
2017-03-20 05:08:41 +00:00
2016-08-05 20:53:35 +00:00
2017-03-21 16:57:19 +00:00
2017-02-03 16:56:27 +00:00
2017-01-14 00:32:38 +00:00
2017-03-24 17:59:06 +00:00
2017-03-20 18:01:07 +00:00
2016-06-26 12:28:59 +00:00
2016-02-21 20:14:29 +00:00
2017-01-15 06:32:49 +00:00
2017-01-23 23:16:46 +00:00
2015-08-18 17:51:53 +00:00
2017-03-26 02:49:23 +00:00
2017-02-21 19:10:58 +00:00
2017-03-02 17:38:46 +00:00
2017-03-26 16:46:53 +00:00
2017-01-31 11:13:44 +00:00
2017-01-18 19:05:48 +00:00
2016-12-19 17:13:37 +00:00
2016-08-12 17:28:27 +00:00
2017-02-08 17:49:52 +00:00
2016-08-12 04:32:37 +00:00
2017-01-15 06:32:49 +00:00
2017-04-02 05:09:15 +00:00
2017-04-02 05:09:15 +00:00
2017-03-23 23:21:07 +00:00
2017-03-27 23:11:50 +00:00
2016-10-01 02:56:57 +00:00
2017-02-22 22:20:58 +00:00
2017-03-22 19:16:39 +00:00
2016-01-26 18:48:36 +00:00
2017-03-26 06:44:08 +00:00
2017-03-30 21:56:56 +00:00
2017-02-06 18:26:06 +00:00
2017-03-31 19:58:07 +00:00
2016-06-12 16:13:55 +00:00
2017-01-18 00:57:48 +00:00
2016-10-21 18:43:16 +00:00
2016-10-25 18:44:13 +00:00
2016-07-25 20:52:00 +00:00
2016-06-26 12:28:59 +00:00
2017-02-07 21:10:46 +00:00
2017-01-13 21:02:41 +00:00
2017-03-20 16:08:29 +00:00