Daniel Neilson
afa2e7e6a6
Remove alignment argument from memcpy/memmove/memset in favour of alignment attributes (Step 1)
Summary:
This is a resurrection of work first proposed and discussed in Aug 2015:
http://lists.llvm.org/pipermail/llvm-dev/2015-August/089384.html
and initially landed (but then backed out) in Nov 2015:
http://lists.llvm.org/pipermail/llvm-commits/Week-of-Mon-20151109/312083.html
The @llvm.memcpy/memmove/memset intrinsics currently have an explicit argument
which is required to be a constant integer. It represents the alignment of the
dest (and source), and so must be the minimum of the actual alignment of the
two.
This change is the first in a series that allows source and dest to each
have their own alignments by using the alignment attribute on their arguments.
In this change we:
1) Remove the alignment argument.
2) Add alignment attributes to the source & dest arguments. We, temporarily,
require that the alignments for source & dest be equal.
For example, code which used to read:
call void @llvm.memcpy.p0i8.p0i8.i32(i8* %dest, i8* %src, i32 100, i32 4, i1 false)
will now read
call void @llvm.memcpy.p0i8.p0i8.i32(i8* align 4 %dest, i8* align 4 %src, i32 100, i1 false)
Downstream users may have to update their lit tests that check for
@llvm.memcpy/memmove/memset call/declaration patterns. The following extended sed script
may help with updating the majority of your tests, but it does not catch all possible
patterns so some manual checking and updating will be required.
s~declare void @llvm\.mem(set|cpy|move)\.p([^(]*)\((.*), i32, i1\)~declare void @llvm.mem\1.p\2(\3, i1)~g
s~call void @llvm\.memset\.p([^(]*)i8\(i8([^*]*)\* (.*), i8 (.*), i8 (.*), i32 [01], i1 ([^)]*)\)~call void @llvm.memset.p\1i8(i8\2* \3, i8 \4, i8 \5, i1 \6)~g
s~call void @llvm\.memset\.p([^(]*)i16\(i8([^*]*)\* (.*), i8 (.*), i16 (.*), i32 [01], i1 ([^)]*)\)~call void @llvm.memset.p\1i16(i8\2* \3, i8 \4, i16 \5, i1 \6)~g
s~call void @llvm\.memset\.p([^(]*)i32\(i8([^*]*)\* (.*), i8 (.*), i32 (.*), i32 [01], i1 ([^)]*)\)~call void @llvm.memset.p\1i32(i8\2* \3, i8 \4, i32 \5, i1 \6)~g
s~call void @llvm\.memset\.p([^(]*)i64\(i8([^*]*)\* (.*), i8 (.*), i64 (.*), i32 [01], i1 ([^)]*)\)~call void @llvm.memset.p\1i64(i8\2* \3, i8 \4, i64 \5, i1 \6)~g
s~call void @llvm\.memset\.p([^(]*)i128\(i8([^*]*)\* (.*), i8 (.*), i128 (.*), i32 [01], i1 ([^)]*)\)~call void @llvm.memset.p\1i128(i8\2* \3, i8 \4, i128 \5, i1 \6)~g
s~call void @llvm\.memset\.p([^(]*)i8\(i8([^*]*)\* (.*), i8 (.*), i8 (.*), i32 ([0-9]*), i1 ([^)]*)\)~call void @llvm.memset.p\1i8(i8\2* align \6 \3, i8 \4, i8 \5, i1 \7)~g
s~call void @llvm\.memset\.p([^(]*)i16\(i8([^*]*)\* (.*), i8 (.*), i16 (.*), i32 ([0-9]*), i1 ([^)]*)\)~call void @llvm.memset.p\1i16(i8\2* align \6 \3, i8 \4, i16 \5, i1 \7)~g
s~call void @llvm\.memset\.p([^(]*)i32\(i8([^*]*)\* (.*), i8 (.*), i32 (.*), i32 ([0-9]*), i1 ([^)]*)\)~call void @llvm.memset.p\1i32(i8\2* align \6 \3, i8 \4, i32 \5, i1 \7)~g
s~call void @llvm\.memset\.p([^(]*)i64\(i8([^*]*)\* (.*), i8 (.*), i64 (.*), i32 ([0-9]*), i1 ([^)]*)\)~call void @llvm.memset.p\1i64(i8\2* align \6 \3, i8 \4, i64 \5, i1 \7)~g
s~call void @llvm\.memset\.p([^(]*)i128\(i8([^*]*)\* (.*), i8 (.*), i128 (.*), i32 ([0-9]*), i1 ([^)]*)\)~call void @llvm.memset.p\1i128(i8\2* align \6 \3, i8 \4, i128 \5, i1 \7)~g
s~call void @llvm\.mem(cpy|move)\.p([^(]*)i8\(i8([^*]*)\* (.*), i8([^*]*)\* (.*), i8 (.*), i32 [01], i1 ([^)]*)\)~call void @llvm.mem\1.p\2i8(i8\3* \4, i8\5* \6, i8 \7, i1 \8)~g
s~call void @llvm\.mem(cpy|move)\.p([^(]*)i16\(i8([^*]*)\* (.*), i8([^*]*)\* (.*), i16 (.*), i32 [01], i1 ([^)]*)\)~call void @llvm.mem\1.p\2i16(i8\3* \4, i8\5* \6, i16 \7, i1 \8)~g
s~call void @llvm\.mem(cpy|move)\.p([^(]*)i32\(i8([^*]*)\* (.*), i8([^*]*)\* (.*), i32 (.*), i32 [01], i1 ([^)]*)\)~call void @llvm.mem\1.p\2i32(i8\3* \4, i8\5* \6, i32 \7, i1 \8)~g
s~call void @llvm\.mem(cpy|move)\.p([^(]*)i64\(i8([^*]*)\* (.*), i8([^*]*)\* (.*), i64 (.*), i32 [01], i1 ([^)]*)\)~call void @llvm.mem\1.p\2i64(i8\3* \4, i8\5* \6, i64 \7, i1 \8)~g
s~call void @llvm\.mem(cpy|move)\.p([^(]*)i128\(i8([^*]*)\* (.*), i8([^*]*)\* (.*), i128 (.*), i32 [01], i1 ([^)]*)\)~call void @llvm.mem\1.p\2i128(i8\3* \4, i8\5* \6, i128 \7, i1 \8)~g
s~call void @llvm\.mem(cpy|move)\.p([^(]*)i8\(i8([^*]*)\* (.*), i8([^*]*)\* (.*), i8 (.*), i32 ([0-9]*), i1 ([^)]*)\)~call void @llvm.mem\1.p\2i8(i8\3* align \8 \4, i8\5* align \8 \6, i8 \7, i1 \9)~g
s~call void @llvm\.mem(cpy|move)\.p([^(]*)i16\(i8([^*]*)\* (.*), i8([^*]*)\* (.*), i16 (.*), i32 ([0-9]*), i1 ([^)]*)\)~call void @llvm.mem\1.p\2i16(i8\3* align \8 \4, i8\5* align \8 \6, i16 \7, i1 \9)~g
s~call void @llvm\.mem(cpy|move)\.p([^(]*)i32\(i8([^*]*)\* (.*), i8([^*]*)\* (.*), i32 (.*), i32 ([0-9]*), i1 ([^)]*)\)~call void @llvm.mem\1.p\2i32(i8\3* align \8 \4, i8\5* align \8 \6, i32 \7, i1 \9)~g
s~call void @llvm\.mem(cpy|move)\.p([^(]*)i64\(i8([^*]*)\* (.*), i8([^*]*)\* (.*), i64 (.*), i32 ([0-9]*), i1 ([^)]*)\)~call void @llvm.mem\1.p\2i64(i8\3* align \8 \4, i8\5* align \8 \6, i64 \7, i1 \9)~g
s~call void @llvm\.mem(cpy|move)\.p([^(]*)i128\(i8([^*]*)\* (.*), i8([^*]*)\* (.*), i128 (.*), i32 ([0-9]*), i1 ([^)]*)\)~call void @llvm.mem\1.p\2i128(i8\3* align \8 \4, i8\5* align \8 \6, i128 \7, i1 \9)~g
The remaining changes in the series will:
Step 2) Expand the IRBuilder API to allow creation of memcpy/memmove with differing
source and dest alignments.
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.
Reviewers: pete, hfinkel, lhames, reames, bollu
Reviewed By: reames
Subscribers: niosHD, reames, jholewinski, qcolombet, jfb, sanjoy, arsenm, dschuff, dylanmckay, mehdi_amini, sdardis, nemanjai, david2050, nhaehnle, javed.absar, sbc100, jgravelle-google, eraman, aheejin, kbarton, JDevlieghere, asb, rbar, johnrusso, simoncook, jordy.potman.lists, apazos, sabuasal, llvm-commits
Differential Revision: https://reviews.llvm.org/D41675
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@322965 91177308-0d34-0410-b5e6-96231b3b80d8
2018-01-19 17:13:12 +00:00
..
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2017-12-04 17:18:51 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2016-08-03 18:17:35 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2016-08-03 18:17:35 +00:00
2017-08-01 22:20:41 +00:00
2016-08-03 18:17:35 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2015-04-16 23:24:18 +00:00
2015-04-16 23:24:18 +00:00
2016-08-03 18:17:35 +00:00
2017-04-06 22:42:18 +00:00
2017-08-01 22:20:41 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2017-12-14 10:02:58 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2017-06-20 18:43:14 +00:00
2017-08-01 22:20:41 +00:00
2016-08-03 18:17:35 +00:00
2017-08-01 22:20:41 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2018-01-19 17:13:12 +00:00
2018-01-19 17:13:12 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2016-01-12 21:00:43 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2017-09-27 10:33:02 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2016-08-03 18:17:35 +00:00
2018-01-10 00:56:48 +00:00
2018-01-19 17:13:12 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2017-12-04 17:18:51 +00:00
2017-04-10 20:18:21 +00:00
2016-09-07 07:36:11 +00:00
2017-08-01 22:20:41 +00:00
2016-08-25 01:27:13 +00:00
2016-08-03 18:17:35 +00:00
2017-11-28 17:15:09 +00:00
2016-12-15 00:01:53 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2017-12-04 17:18:51 +00:00
2017-06-27 08:35:35 +00:00
2016-10-24 15:46:58 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2017-08-01 22:20:41 +00:00
2016-08-03 18:17:35 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2016-08-28 16:17:58 +00:00
2017-08-01 22:20:41 +00:00
2017-12-04 17:18:51 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2018-01-12 14:58:41 +00:00
2017-08-01 22:20:41 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2017-03-15 16:04:53 +00:00
2017-08-01 22:20:41 +00:00
2017-06-08 18:27:24 +00:00
2017-06-08 18:27:24 +00:00
2016-08-03 18:17:35 +00:00
2017-12-04 17:18:51 +00:00
2015-12-12 00:32:00 +00:00
2017-08-01 22:20:41 +00:00
2017-04-10 20:18:21 +00:00
2017-11-06 19:09:38 +00:00
2017-08-01 22:20:41 +00:00
2017-12-15 07:27:53 +00:00
2017-08-01 22:20:41 +00:00
2016-11-11 14:41:19 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2017-12-12 17:53:59 +00:00
2016-08-03 18:17:35 +00:00
2017-08-01 22:20:41 +00:00
2016-08-03 18:17:35 +00:00
2016-07-12 12:16:27 +00:00
2016-08-03 18:17:35 +00:00
2017-01-10 23:43:04 +00:00
2017-12-20 05:18:19 +00:00
2017-08-01 22:20:41 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2016-08-03 18:17:35 +00:00
2017-12-28 21:36:10 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2017-08-01 22:20:41 +00:00
2017-11-30 13:39:10 +00:00
2017-06-24 01:29:24 +00:00
2016-08-03 18:17:35 +00:00
2017-08-01 22:20:41 +00:00
2017-12-29 12:22:27 +00:00
2017-12-15 07:27:53 +00:00
2018-01-12 15:03:24 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2017-08-01 22:20:41 +00:00
2016-08-03 18:17:35 +00:00
2016-05-17 19:52:01 +00:00
2017-01-16 20:12:26 +00:00
2017-11-30 13:39:10 +00:00
2016-09-06 12:30:00 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2017-10-12 16:43:33 +00:00
2017-08-01 22:20:41 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2017-04-11 02:03:17 +00:00
2017-04-10 20:18:21 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2018-01-19 17:13:12 +00:00
2017-08-01 22:20:41 +00:00
2016-08-03 18:17:35 +00:00
2017-10-12 16:43:33 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2016-08-03 18:17:35 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2017-11-30 16:12:24 +00:00
2016-08-03 18:17:35 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2016-08-03 18:17:35 +00:00
2017-11-30 16:12:24 +00:00
2017-09-21 18:52:08 +00:00
2017-08-01 22:20:41 +00:00
2017-11-20 14:38:30 +00:00
2017-08-01 22:20:41 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2017-12-30 08:09:04 +00:00
2017-06-17 02:08:18 +00:00
2015-12-01 11:40:55 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2016-04-07 15:30:55 +00:00
2016-09-01 10:28:47 +00:00
2017-10-10 00:57:36 +00:00
2018-01-19 17:13:12 +00:00
2015-07-28 20:38:29 +00:00
2017-08-01 22:20:41 +00:00
2017-12-11 20:42:37 +00:00
2017-12-11 20:42:37 +00:00
2017-01-16 20:12:26 +00:00
2017-01-16 20:12:26 +00:00
2017-01-16 20:12:26 +00:00
2017-01-16 20:12:26 +00:00
2017-01-16 20:12:26 +00:00
2017-01-16 20:12:26 +00:00
2017-01-16 20:12:26 +00:00
2017-01-16 20:12:26 +00:00
2017-12-11 20:42:37 +00:00
2017-12-11 20:42:37 +00:00
2017-12-11 20:42:37 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2017-08-01 22:20:41 +00:00
2016-08-03 18:17:35 +00:00
2017-12-04 17:18:51 +00:00
2015-07-24 01:07:50 +00:00
2016-12-15 00:01:53 +00:00
2017-12-18 19:21:56 +00:00
2015-07-24 01:07:50 +00:00
2015-07-24 01:07:50 +00:00
2015-07-24 01:07:50 +00:00
2017-10-11 20:20:58 +00:00
2015-07-24 01:07:50 +00:00
2017-09-23 09:50:12 +00:00
2016-10-24 17:31:09 +00:00
2015-07-24 01:07:50 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2015-07-24 01:07:50 +00:00
2017-01-26 15:02:31 +00:00
2015-07-24 01:07:50 +00:00
2017-09-23 09:50:12 +00:00
2015-07-24 01:07:50 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2016-10-04 11:25:52 +00:00
2017-06-27 04:52:17 +00:00
2016-08-03 18:17:35 +00:00
2017-12-04 17:18:51 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2017-10-03 16:59:13 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2017-01-16 20:12:26 +00:00
2016-08-03 18:17:35 +00:00
2017-12-04 17:18:51 +00:00
2017-03-15 16:04:53 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2017-03-15 16:04:53 +00:00
2017-08-01 22:20:41 +00:00
2017-09-06 03:08:26 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2017-08-01 22:20:41 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2016-08-03 18:17:35 +00:00
2018-01-19 17:13:12 +00:00
2018-01-19 17:13:12 +00:00
2017-08-01 22:20:41 +00:00
2016-12-15 00:01:53 +00:00
2016-12-15 00:01:53 +00:00
2018-01-19 17:13:12 +00:00
2017-10-03 16:59:13 +00:00
2017-12-04 17:18:51 +00:00
2017-08-01 22:20:41 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2017-01-16 20:12:26 +00:00
2017-08-01 22:20:41 +00:00
2016-08-03 18:17:35 +00:00
2017-02-24 18:03:16 +00:00
2017-08-01 22:20:41 +00:00
2016-10-04 11:25:52 +00:00
2017-08-01 22:20:41 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2017-08-01 22:20:41 +00:00
2016-08-24 21:34:27 +00:00
2017-01-16 20:12:26 +00:00
2017-08-01 22:20:41 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2017-08-01 22:20:41 +00:00
2016-08-03 18:17:35 +00:00
2016-10-04 06:59:23 +00:00
2017-08-01 22:20:41 +00:00
2017-10-03 16:59:13 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2018-01-19 17:13:12 +00:00
2017-01-16 20:12:26 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2017-03-14 00:34:14 +00:00
2017-08-01 22:20:41 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2017-08-01 22:20:41 +00:00
2018-01-19 17:13:12 +00:00
2017-12-04 17:18:51 +00:00
2017-05-26 16:23:08 +00:00
2017-08-01 22:20:41 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2016-10-04 06:59:23 +00:00
2017-12-04 17:18:51 +00:00
2017-08-01 22:20:41 +00:00
2016-08-30 00:59:23 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2017-04-10 20:18:21 +00:00
2016-08-03 18:17:35 +00:00
2018-01-19 17:13:12 +00:00
2016-09-22 09:52:19 +00:00
2017-12-04 17:18:51 +00:00
2016-08-03 18:17:35 +00:00
2017-08-01 22:20:41 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2016-12-15 00:01:53 +00:00
2016-10-04 11:25:52 +00:00
2016-11-16 00:37:30 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2016-12-15 00:01:53 +00:00
2016-10-04 11:25:52 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2016-12-15 00:01:53 +00:00
2017-01-26 15:02:31 +00:00
2017-11-14 21:09:45 +00:00
2018-01-12 13:12:49 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2017-12-04 17:18:51 +00:00
2017-07-31 18:08:24 +00:00
2017-12-04 17:18:51 +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
2017-06-27 12:43:08 +00:00
2018-01-19 17:13:12 +00:00
2017-08-01 22:20:41 +00:00
2016-08-03 18:17:35 +00:00
2017-01-31 23:48:32 +00:00
2018-01-19 17:13:12 +00:00
2017-07-25 18:26:35 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2016-08-03 18:17:35 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2017-08-01 22:20:41 +00:00
2017-12-04 17:18:51 +00:00
2016-08-03 18:17:35 +00:00
2016-08-31 00:52:03 +00:00
2016-10-27 05:17:58 +00:00
2016-08-03 18:17:35 +00:00
2017-09-26 20:42:47 +00:00
2017-10-24 18:04:54 +00:00
2018-01-09 03:03:41 +00:00
2016-08-03 18:17:35 +00:00
2018-01-09 15:39:44 +00:00
2017-10-03 16:59:13 +00:00
2016-08-25 01:27:13 +00:00
2017-11-30 13:39:10 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2017-08-23 08:55:18 +00:00
2017-01-16 20:12:26 +00:00
2017-10-30 19:55:38 +00:00
2017-05-24 23:48:29 +00:00
2016-10-28 19:38:24 +00:00
2017-11-07 20:55:43 +00:00
2017-11-20 14:38:30 +00:00
2016-12-15 00:01:53 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2017-08-01 22:20:41 +00:00
2016-08-03 18:17:35 +00:00
2016-12-15 11:16:20 +00:00
2017-11-30 16:12:24 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2017-08-01 22:20:41 +00:00
2016-08-03 18:17:35 +00:00
2017-12-04 17:18:51 +00:00
2016-09-22 17:22:43 +00:00
2016-09-22 17:22:43 +00:00
2016-08-05 08:47:26 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2017-06-27 04:52:17 +00:00
2017-08-01 22:20:41 +00:00
2015-04-16 23:24:18 +00:00
2017-04-28 04:48:42 +00:00
2017-08-21 17:35:32 +00:00
2017-08-01 22:20:41 +00:00
2017-08-21 17:35:32 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2017-04-06 22:42:18 +00:00
2017-08-01 22:20:41 +00:00
2017-07-25 18:26:35 +00:00
2015-09-18 17:41:00 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2017-12-04 17:18:51 +00:00
2016-12-15 00:01:53 +00:00
2017-06-12 17:58:42 +00:00
2017-08-02 20:07:21 +00:00
2015-07-14 22:53:11 +00:00
2017-08-21 13:36:18 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2016-12-15 00:01:53 +00:00
2017-12-30 08:09:04 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2017-04-28 04:48:42 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2016-08-03 18:17:35 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2017-11-20 14:38:30 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2017-11-30 13:39:10 +00:00
2017-10-20 00:36:46 +00:00
2018-01-19 17:13:12 +00:00
2016-08-03 18:17:35 +00:00
2018-01-12 13:12:49 +00:00
2018-01-12 13:12:49 +00:00
2017-08-01 22:20:41 +00:00
2016-08-03 18:17:35 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2016-08-03 18:17:35 +00:00
2017-05-16 19:43:56 +00:00
2016-10-02 02:10:20 +00:00
2017-08-01 22:20:41 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2017-08-30 18:06:51 +00:00
2016-08-03 18:17:35 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2017-08-30 18:06:51 +00:00
2016-08-03 18:17:35 +00:00
2017-11-20 14:38:30 +00:00
2017-11-20 14:38:30 +00:00
2016-02-29 16:42:27 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2017-05-24 23:48:29 +00:00
2018-01-19 17:13:12 +00:00
2016-08-03 18:17:35 +00:00
2016-08-05 15:22:05 +00:00
2017-04-10 20:18:21 +00:00
2016-10-14 21:25:29 +00:00
2016-10-12 00:48:25 +00:00
2016-10-26 19:51:35 +00:00
2016-12-12 22:09:02 +00:00
2017-03-02 21:07:59 +00:00
2017-12-04 17:18:51 +00:00
2017-12-04 17:18:51 +00:00
2017-12-29 12:22:27 +00:00
2017-10-10 08:46:10 +00:00
2017-07-05 05:14:43 +00:00
2017-07-13 18:17:10 +00:00
2018-01-17 22:04:36 +00:00
2017-10-26 15:00:26 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2017-08-01 22:20:41 +00:00
2016-08-03 18:17:35 +00:00
2016-10-27 19:10:09 +00:00
2017-08-01 22:20:41 +00:00
2016-08-03 18:17:35 +00:00
2017-08-01 22:20:41 +00:00
2016-08-03 18:17:35 +00:00
2017-08-01 22:20:41 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2016-08-03 18:17:35 +00:00
2017-08-01 22:20:41 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2017-12-07 10:40:31 +00:00
2016-08-03 18:17:35 +00:00
2016-10-04 20:46:43 +00:00
2017-08-01 22:20:41 +00:00
2017-11-29 23:05:56 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2017-08-14 18:09:29 +00:00
2017-11-27 20:26:36 +00:00
2018-01-19 17:13:12 +00:00
2018-01-19 17:13:12 +00:00
2017-08-01 22:20:41 +00:00
2016-08-03 18:17:35 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2017-08-01 22:20:41 +00:00
2016-08-03 18:17:35 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2016-08-03 18:17:35 +00:00
2017-08-01 22:20:41 +00:00
2016-08-03 18:17:35 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2016-08-03 18:17:35 +00:00
2017-08-01 22:20:41 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2017-06-17 02:08:18 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2017-12-04 17:18:51 +00:00
2017-08-01 22:20:41 +00:00
2017-12-04 17:18:51 +00:00
2017-08-01 22:20:41 +00:00
2017-12-13 14:47:35 +00:00
2016-08-03 18:17:35 +00:00
2017-10-27 21:54:24 +00:00
2016-08-03 18:17:35 +00:00
2017-08-01 22:20:41 +00:00
2017-12-18 19:21:56 +00:00
2017-12-04 17:18:51 +00:00
2016-09-06 23:02:23 +00:00
2017-08-01 22:20:41 +00:00
2017-05-17 21:54:41 +00:00
2017-12-04 17:18:51 +00:00
2016-09-02 02:34:44 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2017-12-15 07:27:53 +00:00
2017-02-01 14:33:57 +00:00
2017-12-04 17:18:51 +00:00
2017-08-01 22:20:41 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2017-08-08 13:52:45 +00:00
2016-08-03 18:17:35 +00:00
2017-02-24 18:03:16 +00:00
2016-09-22 17:22:43 +00:00
2016-08-03 18:17:35 +00:00
2016-09-22 17:22:43 +00:00
2017-05-09 13:35:13 +00:00
2017-03-08 02:41:35 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2017-08-01 22:20:41 +00:00
2017-12-12 12:09:34 +00:00
2017-08-01 22:20:41 +00:00
2016-08-03 18:17:35 +00:00
2018-01-19 17:13:12 +00:00
2018-01-19 17:13:12 +00:00
2016-08-03 18:17:35 +00:00
2018-01-19 17:13:12 +00:00
2016-08-03 18:17:35 +00:00
2016-04-07 15:30:55 +00:00
2016-08-03 18:17:35 +00:00
2017-08-01 22:20:41 +00:00
2017-11-03 16:24:53 +00:00
2017-01-16 20:12:26 +00:00
2017-02-24 18:16:06 +00:00
2017-07-11 16:42:20 +00:00
2017-05-02 01:47:34 +00:00
2017-05-02 01:47:34 +00:00
2016-08-03 18:17:35 +00:00
2017-04-10 20:18:21 +00:00
2016-08-03 18:17:35 +00:00
2017-07-13 18:17:10 +00:00
2017-01-26 18:59:15 +00:00
2016-10-24 17:31:09 +00:00
2017-12-04 17:18:51 +00:00
2017-02-15 19:49:14 +00:00
2017-12-13 14:47:35 +00:00
2017-07-12 01:16:50 +00:00
2017-08-01 22:20:41 +00:00
2018-01-19 17:13:12 +00:00
2016-08-03 18:17:35 +00:00
2017-12-04 17:18:51 +00:00
2017-12-04 17:18:51 +00:00
2017-12-04 17:18:51 +00:00
2017-12-04 17:18:51 +00:00
2017-12-04 17:18:51 +00:00
2017-12-04 17:18:51 +00:00
2017-12-04 17:18:51 +00:00
2017-12-04 17:18:51 +00:00
2017-12-04 17:18:51 +00:00
2017-12-04 17:18:51 +00:00
2017-12-04 17:18:51 +00:00
2017-12-04 17:18:51 +00:00
2017-12-04 17:18:51 +00:00
2017-12-04 17:18:51 +00:00
2017-12-04 17:18:51 +00:00
2017-12-04 17:18:51 +00:00
2017-12-12 12:09:34 +00:00
2017-12-11 14:35:48 +00:00
2017-11-30 13:39:10 +00:00
2017-12-12 12:09:34 +00:00
2017-12-04 17:18:51 +00:00
2017-12-04 17:18:51 +00:00
2017-12-04 17:18:51 +00:00
2017-12-04 17:18:51 +00:00
2017-11-30 13:39:10 +00:00
2017-11-30 13:39:10 +00:00
2017-11-30 13:39:10 +00:00
2017-12-04 17:18:51 +00:00
2017-12-04 17:18:51 +00:00
2017-12-04 17:18:51 +00:00
2017-12-04 17:18:51 +00:00
2017-11-30 13:39:10 +00:00
2017-11-30 13:39:10 +00:00
2017-11-30 13:39:10 +00:00
2017-11-30 13:39:10 +00:00
2017-12-04 17:18:51 +00:00
2017-12-04 17:18:51 +00:00
2017-12-04 17:18:51 +00:00
2017-12-04 17:18:51 +00:00
2017-11-30 13:39:10 +00:00
2017-11-30 13:39:10 +00:00
2017-11-30 13:39:10 +00:00
2017-11-30 13:39:10 +00:00
2017-11-30 13:39:10 +00:00
2017-12-04 17:18:51 +00:00
2017-11-30 13:39:10 +00:00
2017-12-04 17:18:51 +00:00
2017-11-30 13:39:10 +00:00
2017-12-04 17:18:51 +00:00
2017-12-04 17:18:51 +00:00
2017-12-04 17:18:51 +00:00
2017-12-04 17:18:51 +00:00
2017-12-04 17:18:51 +00:00
2017-12-04 17:18:51 +00:00
2017-12-04 17:18:51 +00:00
2017-12-04 17:18:51 +00:00
2017-12-04 17:18:51 +00:00
2017-12-04 17:18:51 +00:00
2017-12-04 17:18:51 +00:00
2017-12-04 17:18:51 +00:00
2017-12-04 17:18:51 +00:00
2017-12-04 17:18:51 +00:00
2017-12-12 12:09:34 +00:00
2017-12-11 14:35:48 +00:00
2017-11-30 13:39:10 +00:00
2017-12-12 12:09:34 +00:00
2017-12-04 17:18:51 +00:00
2017-11-30 13:39:10 +00:00
2017-11-30 13:39:10 +00:00
2017-12-04 17:18:51 +00:00
2017-12-04 17:18:51 +00:00
2017-12-04 17:18:51 +00:00
2017-12-04 17:18:51 +00:00
2017-12-04 17:18:51 +00:00
2017-11-30 13:39:10 +00:00
2017-11-30 13:39:10 +00:00
2017-11-30 13:39:10 +00:00
2017-11-30 13:39:10 +00:00
2017-12-04 17:18:51 +00:00
2017-12-04 17:18:51 +00:00
2017-12-04 17:18:51 +00:00
2017-12-04 17:18:51 +00:00
2017-12-04 17:18:51 +00:00
2017-12-04 17:18:51 +00:00
2016-08-03 18:17:35 +00:00
2018-01-12 13:12:49 +00:00
2017-10-24 18:04:54 +00:00
2017-06-29 14:13:38 +00:00
2016-08-03 18:17:35 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2018-01-19 17:13:12 +00:00
2017-08-01 22:20:41 +00:00
2017-12-21 15:42:50 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2017-12-15 07:27:53 +00:00
2017-08-01 22:20:41 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2017-12-22 17:18:13 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2017-01-22 20:28:56 +00:00
2016-08-03 18:17:35 +00:00
2017-12-04 17:18:51 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2016-08-03 18:17:35 +00:00
2017-02-07 18:57:29 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2017-12-04 17:18:51 +00:00
2017-12-04 17:18:51 +00:00
2016-08-03 18:17:35 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2017-12-04 17:18:51 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2017-08-01 22:20:41 +00:00
2016-08-03 18:17:35 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2016-08-03 18:17:35 +00:00
2017-12-04 17:18:51 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2017-08-01 22:20:41 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2017-08-01 22:20:41 +00:00
2017-05-24 23:48:29 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2017-08-01 22:20:41 +00:00
2017-05-31 13:09:57 +00:00
2017-08-01 22:20:41 +00:00
2016-08-03 18:17:35 +00:00
2016-05-17 19:52:01 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2017-08-01 22:20:41 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2017-12-04 17:18:51 +00:00
2017-11-20 14:38:30 +00:00
2017-11-20 14:38:30 +00:00
2017-05-24 17:50:37 +00:00
2017-01-31 13:43:11 +00:00
2016-10-04 11:25:52 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2016-04-07 15:30:55 +00:00
2016-08-03 18:17:35 +00:00
2017-01-31 13:43:11 +00:00
2016-08-03 18:17:35 +00:00
2017-05-24 17:50:37 +00:00
2017-05-24 17:50:37 +00:00
2016-08-03 18:17:35 +00:00
2016-10-04 06:59:23 +00:00
2017-07-13 18:17:10 +00:00
2017-07-10 16:44:45 +00:00
2016-08-03 18:17:35 +00:00
2016-10-04 06:59:23 +00:00
2017-10-11 20:20:58 +00:00
2016-10-04 07:37:38 +00:00
2016-08-03 18:17:35 +00:00
2017-11-20 14:38:30 +00:00
2017-10-11 20:20:58 +00:00
2018-01-12 13:12:49 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2017-09-14 07:08:23 +00:00
2017-09-22 18:30:02 +00:00
2017-09-22 18:30:02 +00:00
2017-09-08 01:47:56 +00:00
2017-09-08 01:47:56 +00:00
2016-04-07 15:30:55 +00:00
2016-08-03 18:17:35 +00:00
2016-08-03 18:17:35 +00:00
2017-11-29 04:09:29 +00:00
2017-10-02 09:24:00 +00:00
2016-08-03 18:17:35 +00:00