Ulrich Weigand
c3ec80fea1
[SystemZ] Handle SADDO et.al. and ADD/SUBCARRY
...
This provides an optimized implementation of SADDO/SSUBO/UADDO/USUBO
as well as ADDCARRY/SUBCARRY on top of the new CC implementation.
In particular, multi-word arithmetic now uses UADDO/ADDCARRY instead
of the old ADDC/ADDE logic, which means we no longer need to use
"glue" links for those instructions. This also allows making full
use of the memory-based instructions like ALSI, which couldn't be
recognized due to limitations in the DAG matcher previously.
Also, the llvm.sadd.with.overflow et.al. intrinsincs now expand to
directly using the ADD instructions and checking for a CC 3 result.
llvm-svn: 331203
2018-04-30 17:54:28 +00:00
..
2018-01-19 19:51:38 +00:00
2017-10-06 13:59:28 +00:00
2017-10-06 13:59:28 +00:00
2017-10-06 13:59:28 +00:00
2018-03-02 20:40:11 +00:00
2018-03-02 20:40:11 +00:00
2018-03-02 20:40:11 +00:00
2017-10-06 13:59:28 +00:00
2017-11-09 16:31:57 +00:00
2018-04-30 17:54:28 +00:00
2018-03-02 20:36:34 +00:00
2017-08-04 18:53:35 +00:00
2017-08-04 18:53:35 +00:00
2017-08-04 18:53:35 +00:00
2017-08-04 18:53:35 +00:00
2017-08-04 18:57:58 +00:00
2017-08-04 18:53:35 +00:00
2017-08-04 18:53:35 +00:00
2017-08-04 18:53:35 +00:00
2017-08-04 18:53:35 +00:00
2017-08-04 18:57:58 +00:00
2017-10-06 13:59:28 +00:00
2017-10-06 13:59:28 +00:00
2017-10-06 13:59:28 +00:00
2017-10-06 13:59:28 +00:00
2017-10-06 13:59:28 +00:00
2017-10-06 13:59:28 +00:00
2017-08-11 06:57:08 +00:00
2017-10-06 13:59:28 +00:00
2017-10-06 13:59:28 +00:00
2017-10-06 13:59:28 +00:00
2017-10-06 13:59:28 +00:00
2017-10-06 13:59:28 +00:00
2017-10-06 13:59:28 +00:00
2017-10-06 13:59:28 +00:00
2017-10-06 13:59:28 +00:00
2017-10-06 13:59:28 +00:00
2017-10-06 13:59:28 +00:00
2017-10-06 13:59:28 +00:00
2017-10-06 13:59:28 +00:00
2017-10-06 13:59:28 +00:00
2017-12-05 11:24:39 +00:00
2018-01-19 20:52:04 +00:00
2017-07-17 17:41:11 +00:00
2018-03-02 21:22:42 +00:00
2018-03-02 21:22:42 +00:00
2018-03-02 21:22:42 +00:00
2018-03-02 21:22:42 +00:00
2018-03-02 21:22:42 +00:00
2018-03-02 21:22:42 +00:00
2017-09-19 20:50:05 +00:00
2017-12-05 10:52:24 +00:00
2018-01-31 22:04:26 +00:00
2018-01-19 20:54:18 +00:00
2018-01-19 20:54:18 +00:00
2018-01-19 20:54:18 +00:00
2018-01-19 20:54:18 +00:00
2017-09-28 16:22:54 +00:00
2018-01-19 20:54:18 +00:00
2018-03-13 08:36:20 +00:00
2018-04-30 17:52:32 +00:00
2018-01-31 22:04:26 +00:00
2018-01-31 22:04:26 +00:00
2017-05-04 13:33:30 +00:00
2017-07-21 11:59:37 +00:00
2018-01-19 20:56:04 +00:00
2018-03-17 08:04:00 +00:00
2017-04-07 12:35:11 +00:00
2017-04-05 13:45:37 +00:00
2017-12-04 17:18:51 +00:00
2017-03-22 06:03:32 +00:00
2017-03-31 13:22:59 +00:00
2017-03-21 05:49:40 +00:00
2017-07-17 17:44:20 +00:00
2017-07-17 17:44:20 +00:00
2017-07-17 17:42:48 +00:00
2017-10-06 13:59:28 +00:00
2017-07-17 17:44:20 +00:00
2017-07-17 17:42:48 +00:00
2017-10-06 13:59:28 +00:00
2017-10-06 13:59:28 +00:00
2017-07-17 17:44:20 +00:00
2018-01-31 22:04:26 +00:00
2017-07-17 17:44:20 +00:00
2017-10-06 13:59:28 +00:00
2017-07-17 17:44:20 +00:00
2017-07-17 17:44:20 +00:00
2018-01-31 22:04:26 +00:00
2017-10-06 13:59:28 +00:00
2017-07-17 17:42:48 +00:00
2017-10-06 13:59:28 +00:00
2017-07-17 17:44:20 +00:00
2017-11-27 15:28:15 +00:00
2017-07-17 17:42:48 +00:00
2017-10-06 13:59:28 +00:00
2017-07-17 17:42:48 +00:00
2017-07-17 17:42:48 +00:00
2017-07-17 17:42:48 +00:00
2017-07-17 17:44:20 +00:00
2017-07-17 17:44:20 +00:00
2017-07-17 17:44:20 +00:00
2017-07-17 17:44:20 +00:00
2017-06-12 17:15:41 +00:00
2017-07-17 17:42:48 +00:00
2017-07-17 17:44:20 +00:00
2017-07-17 17:42:48 +00:00
2017-10-06 13:59:28 +00:00
2017-07-17 17:44:20 +00:00
2017-06-26 16:50:32 +00:00
2018-04-09 14:50:02 +00:00
2018-03-01 22:32:25 +00:00
2018-04-30 17:54:28 +00:00
2017-07-17 17:41:11 +00:00
2017-12-05 19:42:07 +00:00
2018-04-30 17:52:32 +00:00
2017-12-04 17:18:51 +00:00
2017-06-26 13:38:27 +00:00
2018-04-30 17:52:32 +00:00
2017-11-14 20:00:34 +00:00
2017-11-28 17:15:09 +00:00
2017-11-28 17:15:09 +00:00
2017-11-28 17:15:09 +00:00
2017-11-28 17:15:09 +00:00
2017-11-28 17:15:09 +00:00
2017-11-28 17:15:09 +00:00
2017-11-28 17:15:09 +00:00
2017-07-17 17:41:11 +00:00
2017-11-28 17:15:09 +00:00
2017-07-17 17:41:11 +00:00
2018-04-30 17:54:28 +00:00
2018-04-30 17:54:28 +00:00
2018-04-30 17:54:28 +00:00
2018-04-30 17:54:28 +00:00
2018-04-30 17:54:28 +00:00
2018-04-30 17:54:28 +00:00
2018-04-30 17:54:28 +00:00
2018-04-30 17:54:28 +00:00
2018-04-30 17:54:28 +00:00
2018-04-30 17:54:28 +00:00
2018-04-30 17:54:28 +00:00
2018-04-30 17:54:28 +00:00
2018-04-30 17:54:28 +00:00
2018-04-30 17:54:28 +00:00
2018-04-30 17:54:28 +00:00
2018-04-30 17:54:28 +00:00
2018-04-30 17:54:28 +00:00
2018-04-30 17:54:28 +00:00
2018-04-30 17:54:28 +00:00
2017-07-17 17:41:11 +00:00
2018-04-30 17:54:28 +00:00
2018-04-30 17:54:28 +00:00
2018-04-30 17:54:28 +00:00
2018-04-30 17:54:28 +00:00
2018-04-30 17:54:28 +00:00
2018-04-30 17:54:28 +00:00
2018-04-30 17:54:28 +00:00
2018-04-30 17:54:28 +00:00
2018-04-30 17:54:28 +00:00
2018-04-30 17:54:28 +00:00
2018-04-30 17:54:28 +00:00
2018-04-30 17:54:28 +00:00
2018-04-30 17:54:28 +00:00
2018-04-30 17:54:28 +00:00
2018-04-30 17:54:28 +00:00
2018-04-30 17:54:28 +00:00
2018-04-30 17:54:28 +00:00
2018-04-30 17:54:28 +00:00
2018-04-30 17:54:28 +00:00
2018-04-30 17:54:28 +00:00
2018-04-30 17:54:28 +00:00
2018-04-30 17:54:28 +00:00
2018-03-17 08:32:12 +00:00
2018-03-17 08:32:12 +00:00
2018-03-17 08:32:12 +00:00
2017-05-10 13:03:25 +00:00
2018-01-31 22:04:26 +00:00
2017-03-31 14:06:59 +00:00
2018-01-19 17:13:12 +00:00
2018-01-19 17:13:12 +00:00
2018-01-31 12:41:25 +00:00
2018-01-31 22:04:26 +00:00
2018-03-20 08:29:19 +00:00
2018-01-19 17:13:12 +00:00
2018-01-19 17:13:12 +00:00
2018-01-19 17:13:12 +00:00
2018-01-19 17:13:12 +00:00
2018-01-19 17:13:12 +00:00
2018-04-30 17:52:32 +00:00
2018-04-13 14:23:09 +00:00
2018-03-02 20:39:30 +00:00
2018-03-02 20:39:30 +00:00
2017-12-04 17:18:51 +00:00
2018-01-31 22:04:26 +00:00
2018-02-01 16:11:59 +00:00
2018-01-31 22:04:26 +00:00
2018-01-31 22:04:26 +00:00
2017-09-29 14:31:39 +00:00
2017-12-05 11:24:39 +00:00
2017-11-14 19:20:46 +00:00
2017-12-06 13:53:24 +00:00
2018-01-19 20:52:04 +00:00
2018-01-19 20:52:04 +00:00
2018-03-17 08:32:12 +00:00
2018-03-17 08:32:12 +00:00
2018-03-17 09:15:13 +00:00
2017-04-24 12:40:28 +00:00
2017-04-10 20:18:21 +00:00
2018-03-26 20:40:22 +00:00
2018-03-02 20:39:30 +00:00
2018-03-02 20:39:30 +00:00
2018-03-02 20:39:30 +00:00
2018-02-02 08:48:02 +00:00
2017-12-04 17:18:51 +00:00
2017-12-04 17:18:51 +00:00
2017-12-05 10:52:24 +00:00
2017-12-05 10:52:24 +00:00
2018-01-19 17:13:12 +00:00
2017-10-06 13:59:28 +00:00
2017-07-17 17:44:20 +00:00
2017-10-06 13:59:28 +00:00
2017-10-06 13:59:28 +00:00
2017-06-23 14:30:46 +00:00
2017-12-05 11:24:39 +00:00
2017-07-17 17:42:48 +00:00
2017-07-17 17:42:48 +00:00
2017-07-17 17:41:11 +00:00
2017-07-17 17:42:48 +00:00
2017-12-04 17:18:51 +00:00
2017-12-04 17:18:51 +00:00
2017-07-17 17:41:11 +00:00
2017-10-06 13:59:28 +00:00
2017-07-17 17:42:48 +00:00
2018-02-23 13:22:46 +00:00
2018-01-19 20:56:04 +00:00
2018-01-10 09:33:00 +00:00
2017-07-17 17:44:20 +00:00
2017-07-17 17:44:20 +00:00
2018-02-02 08:48:02 +00:00
2017-07-17 17:41:11 +00:00
2017-07-17 17:42:48 +00:00
2017-07-17 17:42:48 +00:00
2017-07-17 17:42:48 +00:00
2017-07-17 17:42:48 +00:00
2017-07-17 17:41:11 +00:00
2017-07-17 17:42:48 +00:00
2017-07-17 17:42:48 +00:00
2018-02-27 16:59:10 +00:00
2017-07-17 17:42:48 +00:00
2018-03-17 08:32:12 +00:00
2017-07-17 17:41:11 +00:00