Daniel Neilson c8bdc8db73 Change memcpy/memove/memset to have dest and source alignment attributes.
Summary:
  This change is step three in the series of changes to remove alignment argument from
memcpy/memmove/memset in favour of alignment attributes. Steps:

Step 1) Remove alignment parameter and create alignment parameter attributes for
memcpy/memmove/memset. ( rL322965, rC322964, rL322963 )
Step 2) Expand the IRBuilder API to allow creation of memcpy/memmove with differing
source and dest alignments. ( rL323597 )
Step 3) Update Clang to use the new IRBuilder API.
Step 4) Update Polly to use the new IRBuilder API.
Step 5) Update LLVM passes that create memcpy/memmove calls to use the new IRBuilder API,
and those that use use MemIntrinsicInst::[get|set]Alignment() to use getDestAlignment()
and getSourceAlignment() instead.
Step 6) Remove the single-alignment IRBuilder API for memcpy/memmove, and the
MemIntrinsicInst::[get|set]Alignment() methods.

Reference
   http://lists.llvm.org/pipermail/llvm-dev/2015-August/089384.html
   http://lists.llvm.org/pipermail/llvm-commits/Week-of-Mon-20151109/312083.html

Reviewers: rjmccall

Subscribers: jyknight, nemanjai, nhaehnle, javed.absar, sbc100, aheejin, kbarton, fedor.sergeev, cfe-commits

Differential Revision: https://reviews.llvm.org/D41677

llvm-svn: 323617
2018-01-28 17:27:45 +00:00
..
2016-04-04 23:14:14 +00:00
2017-05-04 08:37:59 +00:00
2013-01-31 23:17:12 +00:00
2016-02-19 06:54:47 +00:00
2014-10-02 20:53:50 +00:00
2016-11-09 17:02:07 +00:00
2014-10-02 20:53:50 +00:00
2016-06-14 21:02:05 +00:00
2015-11-07 00:48:18 +00:00
2017-12-27 11:25:07 +00:00
2016-04-28 14:13:28 +00:00
2016-03-07 14:22:46 +00:00
2017-12-27 10:01:00 +00:00
2017-11-06 07:04:12 +00:00
2017-12-27 11:25:07 +00:00
2017-11-06 07:04:12 +00:00
2017-12-27 11:25:07 +00:00
2017-12-27 10:37:51 +00:00
2017-12-27 10:37:51 +00:00
2015-09-14 21:27:36 +00:00
2013-12-13 19:44:40 +00:00
2015-01-24 17:39:36 +00:00
2016-02-20 09:23:41 +00:00
2016-02-20 09:23:41 +00:00
2017-01-31 17:00:35 +00:00
2014-05-20 17:12:51 +00:00
2017-04-04 21:18:36 +00:00
2017-03-31 13:48:18 +00:00
2017-12-27 08:37:47 +00:00
2016-04-11 07:48:59 +00:00
2015-08-11 00:19:54 +00:00
2016-05-04 23:37:40 +00:00
2013-01-31 23:17:12 +00:00
2017-08-11 11:03:54 +00:00
2016-06-14 21:02:05 +00:00
2016-05-19 17:47:47 +00:00
2016-06-14 21:02:05 +00:00
2013-01-24 23:34:51 +00:00
2017-05-23 00:35:09 +00:00
2016-01-28 22:56:41 +00:00
2013-07-04 14:51:11 +00:00
2013-07-03 01:43:57 +00:00
2016-06-24 13:11:15 +00:00
2013-01-24 23:29:37 +00:00
2017-12-27 08:16:54 +00:00
2015-01-24 17:39:36 +00:00
2015-01-24 17:39:36 +00:00
2014-08-14 15:14:51 +00:00
2016-06-14 21:02:05 +00:00