Bob Wilson
cc7052343e
Avoid illegal integer promotion in fastisel
...
Stop folding constant adds into GEP when the type size doesn't match.
Otherwise, the adds' operands are effectively being promoted, changing the
conditions of an overflow. Results are different when:
sext(a) + sext(b) != sext(a + b)
Problem originally found on x86-64, but also fixed issues with ARM and PPC,
which used similar code.
<rdar://problem/15292280>
Patch by Duncan Exon Smith!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@194840 91177308-0d34-0410-b5e6-96231b3b80d8
2013-11-15 19:09:27 +00:00
..
2013-11-13 14:01:59 +00:00
2013-10-15 23:33:07 +00:00
2013-10-15 23:33:07 +00:00
2013-10-15 23:33:07 +00:00
2013-11-14 17:12:32 +00:00
2013-11-14 13:58:06 +00:00
2013-10-15 23:33:07 +00:00
2013-10-15 23:33:07 +00:00
2013-10-15 23:33:07 +00:00
2013-10-07 18:06:48 +00:00
2013-10-07 19:11:35 +00:00
2013-10-15 23:33:07 +00:00
2013-10-15 23:33:07 +00:00
2013-10-14 16:57:17 +00:00
2013-10-14 22:32:09 +00:00
2013-10-15 23:33:07 +00:00
2013-10-15 23:33:07 +00:00
2013-10-24 06:50:17 +00:00
2013-11-15 09:36:58 +00:00
2013-11-14 13:58:06 +00:00
2013-10-15 23:33:07 +00:00
2013-11-13 03:46:19 +00:00
2013-11-11 22:40:25 +00:00
2013-11-15 01:34:59 +00:00
2013-10-23 21:06:07 +00:00
2013-10-21 17:51:24 +00:00
2013-10-21 13:27:34 +00:00
2013-10-15 23:33:07 +00:00
2013-11-15 17:01:14 +00:00
2013-11-14 11:29:27 +00:00
2013-11-04 19:14:56 +00:00
2013-10-15 23:33:07 +00:00
2013-10-22 09:19:28 +00:00
2013-10-31 13:15:32 +00:00
2013-11-14 11:29:27 +00:00
2013-10-15 23:33:07 +00:00
2013-10-08 05:53:50 +00:00
2013-10-08 05:53:50 +00:00
2013-10-15 23:33:07 +00:00
2013-10-23 21:06:07 +00:00
2013-10-15 23:33:07 +00:00
2013-10-08 05:53:50 +00:00
2013-10-23 21:06:07 +00:00
2013-10-23 19:19:04 +00:00
2013-10-08 06:06:57 +00:00
2013-10-15 23:33:07 +00:00
2013-10-15 06:36:36 +00:00
2013-10-15 23:33:07 +00:00
2013-10-15 23:33:07 +00:00
2013-10-15 23:33:07 +00:00
2013-10-15 23:33:07 +00:00
2013-10-18 02:14:40 +00:00
2013-10-15 23:33:07 +00:00
2013-10-07 18:06:48 +00:00
2013-10-17 11:02:58 +00:00
2013-10-21 23:14:06 +00:00
2013-10-14 07:26:51 +00:00
2013-10-15 23:33:07 +00:00
2013-10-18 02:14:40 +00:00
2013-10-15 23:33:07 +00:00
2013-11-15 19:09:27 +00:00
2013-10-15 23:33:07 +00:00
2013-10-15 23:33:07 +00:00
2013-10-15 23:33:07 +00:00
2013-10-15 23:33:07 +00:00
2013-10-15 23:33:07 +00:00
2013-10-15 23:33:07 +00:00
2013-11-13 14:01:59 +00:00
2013-10-15 23:33:07 +00:00
2013-10-15 23:33:07 +00:00
2013-10-14 16:57:17 +00:00
2013-10-16 02:27:33 +00:00
2013-11-04 21:41:21 +00:00
2013-10-15 23:33:07 +00:00
2013-10-15 23:33:07 +00:00
2013-10-15 23:33:07 +00:00
2013-10-31 00:20:48 +00:00
2013-10-15 23:33:07 +00:00
2013-10-15 23:33:07 +00:00
2013-10-09 02:18:34 +00:00
2013-10-08 05:53:50 +00:00
2013-10-15 23:33:07 +00:00
2013-10-24 09:36:08 +00:00
2013-10-14 16:57:17 +00:00
2013-10-09 02:18:34 +00:00
2013-11-14 06:05:49 +00:00
2013-10-17 17:38:49 +00:00
2013-10-18 14:49:59 +00:00
2013-10-07 18:06:48 +00:00
2013-11-15 05:52:56 +00:00
2013-10-17 02:58:06 +00:00
2013-10-23 21:06:07 +00:00
2013-10-15 23:33:07 +00:00
2013-10-15 23:33:07 +00:00
2013-10-15 23:33:07 +00:00
2013-10-15 23:33:07 +00:00
2013-10-15 17:51:02 +00:00
2013-10-15 17:51:58 +00:00
2013-10-23 18:32:43 +00:00
2013-11-02 00:10:02 +00:00
2013-10-15 23:33:07 +00:00
2013-10-16 19:04:11 +00:00
2013-10-20 02:16:21 +00:00
2013-10-15 23:33:07 +00:00
2013-10-15 23:33:07 +00:00
2013-10-31 17:50:45 +00:00
2013-10-15 23:33:07 +00:00
2013-10-15 23:33:07 +00:00
2013-10-15 23:33:07 +00:00
2013-10-15 23:33:07 +00:00
2013-10-24 06:45:13 +00:00
2013-10-21 17:51:24 +00:00
2013-10-15 23:33:07 +00:00
2013-10-24 06:45:13 +00:00
2013-10-24 07:00:06 +00:00
2013-10-24 07:00:06 +00:00
2013-10-24 06:45:13 +00:00
2013-10-24 06:45:13 +00:00
2013-10-15 23:33:07 +00:00
2013-11-12 22:58:39 +00:00
2013-10-18 02:14:40 +00:00
2013-10-15 23:33:07 +00:00
2013-10-15 23:33:07 +00:00
2013-10-15 23:33:07 +00:00
2013-10-10 22:37:49 +00:00
2013-10-15 23:33:07 +00:00
2013-10-06 13:52:41 +00:00
2013-10-15 23:33:07 +00:00
2013-10-15 23:33:07 +00:00
2013-10-08 06:06:57 +00:00
2013-10-10 12:46:23 +00:00
2013-10-08 06:12:26 +00:00
2013-10-08 06:06:57 +00:00
2013-10-08 06:06:57 +00:00
2013-10-15 23:33:07 +00:00
2013-10-15 23:33:07 +00:00
2013-11-13 01:57:54 +00:00
2013-10-30 22:08:11 +00:00
2013-10-15 23:33:07 +00:00
2013-10-17 12:41:05 +00:00
2013-10-15 23:33:07 +00:00
2013-11-14 13:58:06 +00:00
2013-10-15 23:33:07 +00:00
2013-10-17 12:41:05 +00:00
2013-10-15 23:33:07 +00:00
2013-10-16 14:16:19 +00:00
2013-10-15 23:33:07 +00:00
2013-10-15 23:33:07 +00:00