David Tweed
042e0883cb
Scalar shifts in the OpenCL specification (as of v. 1.2) are defined to be
...
with respect to the lower "left-hand-side bitwidth" bits, even when negative);
see OpenCL spec 6.3j. This patch both implements this behaviour in the code
generator and "constant folding" bits of Sema, and also prevents tests
to detect undefinedness in terms of the weaker C99 or C++ specifications
from being applied.
llvm-svn: 171755
2013-01-07 16:43:27 +00:00
..
2012-05-03 23:38:51 +00:00
2011-10-21 03:57:52 +00:00
2012-11-29 05:41:51 +00:00
2011-07-23 02:16:25 +00:00
2011-07-26 00:47:54 +00:00
2011-07-26 00:47:54 +00:00
2011-07-26 00:47:54 +00:00
2011-07-26 00:47:54 +00:00
2011-07-27 20:30:05 +00:00
2012-10-19 12:44:48 +00:00
2012-10-19 12:44:48 +00:00
2012-10-19 12:44:48 +00:00
2012-10-19 12:44:48 +00:00
2012-06-30 21:33:57 +00:00
2012-06-18 16:39:04 +00:00
2011-03-27 09:32:40 +00:00
2012-04-28 17:39:16 +00:00
2012-02-03 15:47:04 +00:00
2012-02-07 05:00:47 +00:00
2010-02-22 00:40:25 +00:00
2012-10-19 12:44:48 +00:00
2012-10-19 12:44:48 +00:00
2012-08-16 23:50:41 +00:00
2012-10-19 12:44:48 +00:00
2012-03-15 05:09:31 +00:00
2012-05-09 05:35:08 +00:00
2011-01-04 04:44:35 +00:00
2009-12-15 20:14:24 +00:00
2012-09-20 01:02:05 +00:00
2010-08-18 00:39:00 +00:00
2010-08-18 00:39:00 +00:00
2012-08-17 21:44:55 +00:00
2012-10-19 12:44:48 +00:00
2009-12-15 20:14:24 +00:00
2012-11-12 19:12:12 +00:00
2012-09-15 06:09:58 +00:00
2012-02-11 18:03:45 +00:00
2010-12-07 15:23:23 +00:00
2012-05-11 23:01:43 +00:00
2011-04-19 00:23:31 +00:00
2012-04-23 20:30:52 +00:00
2012-10-01 18:42:25 +00:00
2012-10-01 18:42:25 +00:00
2011-03-02 12:15:05 +00:00
2012-05-12 21:10:52 +00:00
2012-07-15 01:33:40 +00:00
2011-12-20 01:45:15 +00:00
2012-08-08 21:52:41 +00:00
2012-08-08 23:04:35 +00:00
2009-12-15 20:14:24 +00:00
2010-04-22 00:20:18 +00:00
2010-11-16 10:26:08 +00:00
2012-11-01 23:55:47 +00:00
2010-01-26 06:39:24 +00:00
2011-07-11 15:24:01 +00:00
2012-07-24 01:40:49 +00:00
2011-03-02 12:15:05 +00:00
2011-03-02 12:15:05 +00:00
2011-03-02 12:15:05 +00:00
2011-10-12 19:51:18 +00:00
2012-05-13 02:42:42 +00:00
2011-09-27 23:46:37 +00:00
2012-06-23 13:16:37 +00:00
2012-08-08 21:52:41 +00:00
2011-06-01 20:09:40 +00:00
2011-03-02 12:15:05 +00:00
2012-11-23 13:54:40 +00:00
2012-05-10 03:01:34 +00:00
2011-06-22 22:08:50 +00:00
2012-10-19 12:44:48 +00:00
2012-10-19 12:44:48 +00:00
2011-07-13 02:05:57 +00:00
2011-03-22 23:15:50 +00:00
2011-02-11 18:46:17 +00:00
2011-12-03 17:47:53 +00:00
2011-02-18 01:25:14 +00:00
2010-01-19 23:08:01 +00:00
2011-12-15 00:38:15 +00:00
2012-01-25 00:55:11 +00:00
2009-12-15 20:14:24 +00:00
2009-12-15 20:14:24 +00:00
2009-12-15 20:14:24 +00:00
2012-10-16 18:53:14 +00:00
2012-01-06 01:23:10 +00:00
2012-10-19 12:44:48 +00:00
2012-10-19 12:44:48 +00:00
2009-12-15 20:14:24 +00:00
2010-04-19 18:23:02 +00:00
2010-04-19 18:23:02 +00:00
2010-02-15 22:42:31 +00:00
2012-10-10 06:56:20 +00:00
2012-10-19 12:44:48 +00:00
2012-12-18 21:09:25 +00:00
2012-01-11 22:43:46 +00:00
2012-09-24 18:19:21 +00:00
2012-12-25 08:53:55 +00:00
2011-06-06 22:25:48 +00:00
2010-07-17 20:43:49 +00:00
2012-11-02 01:40:23 +00:00
2012-10-16 18:53:14 +00:00
2012-10-19 12:44:48 +00:00
2012-09-20 19:36:41 +00:00
2012-02-18 20:53:32 +00:00
2012-01-10 04:58:17 +00:00
2010-12-11 16:05:48 +00:00
2012-10-19 12:44:48 +00:00
2012-10-19 12:36:49 +00:00
2012-07-23 08:59:39 +00:00
2010-04-09 00:35:39 +00:00
2012-10-19 12:44:48 +00:00
2012-07-17 21:03:05 +00:00
2012-10-19 12:44:48 +00:00
2012-10-06 14:42:22 +00:00
2012-10-19 12:44:48 +00:00
2012-02-02 00:40:20 +00:00
2011-03-02 12:15:05 +00:00
2012-04-12 22:40:54 +00:00
2011-10-22 02:37:33 +00:00
2011-07-22 07:26:22 +00:00
2012-10-19 12:44:48 +00:00
2012-02-29 10:24:19 +00:00
2010-04-08 21:33:23 +00:00
2009-12-15 20:14:24 +00:00
2010-04-08 21:33:23 +00:00
2009-12-15 20:14:24 +00:00
2012-02-14 22:14:32 +00:00
2009-12-15 20:14:24 +00:00
2010-10-08 20:44:28 +00:00
2012-05-10 02:50:16 +00:00
2012-10-19 12:44:48 +00:00
2012-02-07 04:34:38 +00:00
2011-04-19 18:51:51 +00:00
2012-10-19 12:44:48 +00:00
2012-10-19 12:44:48 +00:00
2012-11-02 01:40:23 +00:00
2011-06-23 18:10:35 +00:00
2010-06-08 19:50:34 +00:00
2010-09-19 23:03:35 +00:00
2012-12-17 22:23:47 +00:00
2011-08-23 22:24:57 +00:00
2009-12-15 20:14:24 +00:00
2012-02-29 10:24:19 +00:00
2009-12-15 20:14:24 +00:00
2012-10-19 12:44:48 +00:00
2012-03-09 10:10:54 +00:00
2012-09-13 02:11:15 +00:00
2012-06-04 22:48:57 +00:00
2012-06-04 22:48:57 +00:00
2011-10-19 07:55:50 +00:00
2012-07-27 19:17:46 +00:00
2012-09-08 04:00:03 +00:00
2012-01-20 21:52:58 +00:00
2011-10-28 00:41:25 +00:00
2012-09-08 04:00:12 +00:00
2012-09-08 12:06:00 +00:00
2012-08-07 09:13:19 +00:00
2012-09-08 04:00:12 +00:00
2011-10-14 23:32:50 +00:00
2012-05-01 14:57:16 +00:00
2009-12-15 20:14:24 +00:00
2010-04-09 00:35:39 +00:00
2012-08-30 00:44:15 +00:00
2012-01-13 23:06:53 +00:00
2011-04-15 00:35:48 +00:00
2012-02-14 19:50:52 +00:00
2009-12-15 20:14:24 +00:00
2012-10-26 07:02:46 +00:00
2012-12-28 12:53:55 +00:00
2011-05-02 20:39:21 +00:00
2012-05-08 18:29:52 +00:00
2012-10-19 12:44:48 +00:00
2011-12-15 00:38:15 +00:00
2013-01-04 20:34:32 +00:00
2009-12-15 20:14:24 +00:00
2012-01-18 21:41:41 +00:00
2009-12-15 20:14:24 +00:00
2011-10-12 19:55:31 +00:00
2010-04-22 00:20:18 +00:00
2011-04-26 17:41:22 +00:00
2011-06-27 08:02:19 +00:00
2010-01-31 10:26:25 +00:00
2012-10-19 12:44:48 +00:00
2012-10-19 12:44:48 +00:00
2012-08-29 09:04:10 +00:00
2011-10-05 00:05:34 +00:00
2011-06-13 23:56:42 +00:00
2012-08-13 21:15:02 +00:00
2012-10-19 12:44:48 +00:00
2012-09-05 17:52:12 +00:00
2010-04-09 17:53:29 +00:00
2012-03-12 07:56:15 +00:00
2012-05-15 16:56:36 +00:00
2012-10-19 12:44:48 +00:00
2012-10-19 12:44:48 +00:00
2011-10-06 05:00:56 +00:00
2012-10-19 12:44:48 +00:00
2011-04-28 01:38:02 +00:00
2012-11-29 16:09:03 +00:00
2012-10-02 14:26:08 +00:00
2012-10-05 19:46:32 +00:00
2012-10-02 14:56:00 +00:00
2012-08-08 21:52:41 +00:00
2011-03-07 22:57:45 +00:00
2012-10-19 12:44:48 +00:00
2012-05-01 19:57:05 +00:00
2012-10-19 12:44:48 +00:00
2012-12-12 22:46:23 +00:00
2011-03-02 12:15:05 +00:00
2010-03-21 22:56:43 +00:00
2012-09-26 09:02:07 +00:00
2011-06-27 21:12:03 +00:00
2011-10-17 05:48:07 +00:00
2012-09-20 19:36:41 +00:00
2011-12-15 00:38:15 +00:00
2011-12-15 00:38:15 +00:00
2012-10-19 12:44:48 +00:00
2012-10-08 01:19:49 +00:00
2012-10-19 18:26:06 +00:00
2012-11-27 02:58:49 +00:00
2011-06-27 16:32:27 +00:00
2010-04-09 00:35:39 +00:00
2011-06-27 08:02:19 +00:00
2012-11-15 01:21:59 +00:00
2012-10-19 12:44:48 +00:00
2012-10-19 12:44:48 +00:00
2009-12-15 20:14:24 +00:00
2012-10-19 12:44:48 +00:00
2012-01-15 03:51:30 +00:00
2010-06-29 16:52:18 +00:00
2012-10-19 12:44:48 +00:00
2012-10-19 12:44:48 +00:00
2011-09-30 05:12:12 +00:00
2012-10-12 23:29:20 +00:00
2012-10-19 12:44:48 +00:00
2012-10-19 12:44:48 +00:00
2012-10-19 12:44:48 +00:00
2012-10-19 12:44:48 +00:00
2012-10-19 12:44:48 +00:00
2012-10-04 02:36:51 +00:00
2011-11-02 01:53:16 +00:00
2009-12-15 20:14:24 +00:00
2011-01-27 18:16:48 +00:00
2010-09-05 00:04:01 +00:00
2010-04-22 00:20:18 +00:00
2012-08-17 21:44:55 +00:00
2010-12-04 03:47:34 +00:00
2010-09-01 15:49:26 +00:00
2010-09-07 15:51:01 +00:00
2011-08-31 09:01:53 +00:00
2012-10-19 12:44:48 +00:00
2012-03-21 23:30:30 +00:00
2011-02-18 21:16:39 +00:00
2010-09-16 00:03:01 +00:00
2011-03-02 12:15:05 +00:00
2011-06-15 00:54:52 +00:00
2013-01-07 16:43:27 +00:00
2012-10-19 12:44:48 +00:00
2011-06-24 23:30:52 +00:00
2012-02-14 22:14:32 +00:00
2012-08-15 19:53:19 +00:00
2012-11-17 19:16:52 +00:00
2011-12-21 01:57:31 +00:00
2012-10-05 19:46:32 +00:00
2012-10-02 14:26:08 +00:00
2012-10-19 12:44:48 +00:00
2010-04-09 17:53:29 +00:00
2011-06-14 06:38:10 +00:00
2012-10-19 12:44:48 +00:00
2012-10-19 12:44:48 +00:00
2012-05-30 01:01:11 +00:00
2012-08-28 04:13:54 +00:00
2012-08-17 21:44:55 +00:00
2009-12-15 20:14:24 +00:00
2012-08-29 09:04:10 +00:00
2012-11-08 12:59:15 +00:00
2012-10-19 12:44:48 +00:00
2010-12-02 21:00:06 +00:00
2009-12-15 20:14:24 +00:00
2011-06-27 08:02:19 +00:00
2012-10-19 12:44:48 +00:00
2009-12-15 20:14:24 +00:00
2011-01-19 10:06:00 +00:00
2011-06-14 06:38:10 +00:00
2012-08-08 21:52:41 +00:00
2012-09-20 18:38:57 +00:00
2012-03-09 22:27:51 +00:00
2011-04-08 06:33:38 +00:00
2012-09-12 05:53:43 +00:00
2012-10-19 12:44:48 +00:00
2012-01-06 22:43:58 +00:00
2012-10-24 01:14:28 +00:00
2009-12-15 20:14:24 +00:00
2009-12-15 20:14:24 +00:00
2012-10-19 12:44:48 +00:00
2010-06-21 16:08:37 +00:00
2010-09-05 00:07:29 +00:00
2011-07-11 21:45:59 +00:00
2012-10-19 12:44:48 +00:00
2012-03-02 17:05:03 +00:00
2012-03-15 05:09:31 +00:00
2012-10-19 12:36:49 +00:00
2010-10-30 00:11:39 +00:00
2012-05-05 04:20:37 +00:00
2009-12-15 20:14:24 +00:00
2012-10-19 12:44:48 +00:00
2012-01-21 01:01:51 +00:00
2012-02-06 23:29:57 +00:00
2009-12-15 20:14:24 +00:00
2012-08-17 20:23:06 +00:00
2011-12-17 00:36:09 +00:00
2009-12-15 20:14:24 +00:00
2012-07-11 21:38:39 +00:00
2012-12-19 17:34:55 +00:00
2012-09-29 11:40:46 +00:00
2012-11-18 02:34:33 +00:00
2012-08-24 17:45:39 +00:00
2012-12-22 01:34:09 +00:00
2009-12-15 20:14:24 +00:00
2012-10-19 12:44:48 +00:00
2010-04-07 22:58:06 +00:00
2012-12-18 01:29:20 +00:00
2012-10-23 20:23:23 +00:00
2012-07-17 18:00:08 +00:00
2012-07-25 07:26:32 +00:00
2011-01-31 07:04:50 +00:00
2011-06-15 02:47:03 +00:00
2011-08-19 14:35:32 +00:00
2012-08-08 21:42:23 +00:00
2013-01-02 21:12:03 +00:00
2012-11-03 16:07:49 +00:00
2012-11-03 16:07:49 +00:00
2012-08-24 07:42:09 +00:00
2012-09-06 16:43:18 +00:00
2011-02-17 20:34:02 +00:00
2012-03-06 18:41:35 +00:00
2011-03-01 20:34:48 +00:00
2010-03-01 23:15:13 +00:00
2011-04-23 06:30:43 +00:00
2012-09-25 10:11:17 +00:00
2012-10-19 12:44:48 +00:00
2011-01-25 03:51:08 +00:00
2011-11-05 06:08:06 +00:00