| commit | 48596b6f7a422650987c7f2c2566917c7dfff61c | [log] [tgz] |
|---|---|---|
| author | Rong Xu <xur@google.com> | Tue Apr 04 16:42:20 2017 +0000 |
| committer | Rong Xu <xur@google.com> | Tue Apr 04 16:42:20 2017 +0000 |
| tree | 64be6663f30ef95bfcbab1f9d22f64184f0f2188 | |
| parent | e7cdcdea730e5edcaacb86e7feb8accbd0810d88 [diff] |
[PGO] Memory intrinsic calls optimization based on profiled size
This patch optimizes two memory intrinsic operations: memset and memcpy based
on the profiled size of the operation. The high level transformation is like:
mem_op(..., size)
==>
switch (size) {
case s1:
mem_op(..., s1);
goto merge_bb;
case s2:
mem_op(..., s2);
goto merge_bb;
...
default:
mem_op(..., size);
goto merge_bb;
}
merge_bb:
Differential Revision: http://reviews.llvm.org/D28966
llvm-svn: 299446