Preston Gurd 9a2cfffdb6 Bypass Slow Divides
* Only apply divide bypass optimization when not optimizing for size. 
* Fixed bug caused by constant for 0 value of type Int32,
  used dividend type to generate the constant instead.
* For atom x86-64 apply the divide bypass to use 16-bit divides instead of
  64-bit divides when operand values are small enough.
* Added lit tests for 64-bit divide bypass.

Patch by Tyler Nowicki!




git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@176442 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-04 18:13:57 +00:00
..
2011-04-15 00:32:41 +00:00
2010-09-30 23:57:10 +00:00
2010-09-30 23:57:10 +00:00
2011-07-02 20:42:53 +00:00
2011-01-16 18:02:57 +00:00
2011-06-19 12:14:34 +00:00
2012-11-12 06:49:17 +00:00
2010-07-13 18:14:47 +00:00
2011-03-08 20:19:10 +00:00
2012-07-16 19:35:43 +00:00
2011-10-22 12:39:25 +00:00
2011-10-30 13:24:22 +00:00
2011-11-23 04:03:08 +00:00
2012-05-19 23:34:59 +00:00
2011-09-30 23:21:11 +00:00
2012-10-25 17:50:05 +00:00
2013-01-20 08:35:56 +00:00
2012-01-27 02:31:29 +00:00
2011-08-09 03:04:23 +00:00
2013-02-16 12:16:56 +00:00
2012-03-20 17:20:46 +00:00
2012-02-02 19:00:49 +00:00
2012-07-23 08:51:15 +00:00
2012-01-05 00:43:34 +00:00
2011-08-19 04:30:24 +00:00
2011-08-27 04:53:41 +00:00
2012-06-19 02:17:35 +00:00
2011-07-02 20:42:36 +00:00
2013-02-02 00:22:03 +00:00
2011-05-26 18:00:32 +00:00
2012-08-17 12:28:26 +00:00
2010-04-17 03:43:36 +00:00
2011-07-02 20:42:33 +00:00
2010-05-08 04:47:54 +00:00
2012-05-24 22:08:29 +00:00
2012-08-17 12:28:26 +00:00
2013-02-26 18:39:31 +00:00
2011-01-01 21:58:41 +00:00
2011-11-15 07:13:03 +00:00
2011-04-17 02:36:27 +00:00
2011-02-16 01:08:31 +00:00
2011-03-23 23:11:02 +00:00
2010-04-17 16:29:15 +00:00
2011-07-02 20:42:25 +00:00
2010-09-30 23:57:10 +00:00
2010-09-30 23:57:10 +00:00
2010-09-30 23:57:10 +00:00
2010-09-30 23:57:10 +00:00
2010-09-30 23:57:10 +00:00
2011-11-08 00:09:27 +00:00
2011-08-31 21:41:20 +00:00
2011-06-02 20:02:48 +00:00
2013-03-01 18:40:30 +00:00
2013-02-25 23:01:03 +00:00
2013-03-01 19:23:37 +00:00
2013-03-01 19:23:37 +00:00
2013-03-01 19:23:37 +00:00
2013-03-01 19:23:37 +00:00
2012-09-12 21:43:09 +00:00
2013-03-01 19:23:37 +00:00
2012-08-31 20:12:31 +00:00
2012-09-17 18:05:20 +00:00
2012-10-01 16:44:04 +00:00
2012-10-23 21:40:15 +00:00
2012-10-29 17:57:12 +00:00
2013-02-12 16:07:27 +00:00
2013-02-20 18:04:21 +00:00
2011-12-08 19:21:39 +00:00
2012-09-26 08:24:51 +00:00
2012-12-02 15:46:02 +00:00
2013-01-08 18:27:24 +00:00
2011-01-16 18:02:57 +00:00
2010-04-28 01:53:13 +00:00
2012-09-26 08:24:51 +00:00
2012-09-26 08:24:51 +00:00
2012-09-26 08:24:51 +00:00
2012-11-08 07:28:54 +00:00
2011-10-16 20:43:41 +00:00
2013-01-08 18:27:24 +00:00
2012-04-20 23:36:09 +00:00
2011-03-23 23:11:02 +00:00
2012-07-17 19:40:05 +00:00
2013-02-19 17:11:48 +00:00
2011-07-26 22:45:39 +00:00
2011-06-14 23:47:36 +00:00
2012-01-19 01:13:47 +00:00
2012-06-01 05:00:54 +00:00
2012-03-30 00:26:54 +00:00
2010-09-30 23:57:10 +00:00
2011-11-07 23:10:43 +00:00
2013-01-09 07:04:23 +00:00
2012-10-25 17:50:05 +00:00
2011-11-08 00:03:24 +00:00
2011-10-10 23:18:02 +00:00
2012-10-25 17:50:05 +00:00
2010-12-20 20:10:50 +00:00
2011-03-11 21:52:04 +00:00