summaryrefslogtreecommitdiffstats
path: root/clang/lib/Format/TokenAnnotator.h
diff options
context:
space:
mode:
authorDan Gohman <dan433584@gmail.com>2017-12-20 01:36:25 +0000
committerDan Gohman <dan433584@gmail.com>2017-12-20 01:36:25 +0000
commitaa3922819e1e80ccf7cf7e8bf61e86cd240b056b (patch)
treec6ffcd1acc31d099209cb806ad09855822edb34a /clang/lib/Format/TokenAnnotator.h
parentb1ae03fd6141a5511b6de6bc600b29a476b7ee70 (diff)
downloadbcm5719-llvm-aa3922819e1e80ccf7cf7e8bf61e86cd240b056b.tar.gz
bcm5719-llvm-aa3922819e1e80ccf7cf7e8bf61e86cd240b056b.zip
[memcpyopt] Teach memcpyopt to optimize across basic blocks
This teaches memcpyopt to make a non-local memdep query when a local query indicates that the dependency is non-local. This notably allows it to eliminate many more llvm.memcpy calls in common Rust code, often by 20-30%. This is r319482 and r319483, along with fixes for PR35519: fix the optimization that merges stores into memsets to preserve cached memdep info, and fix memdep's non-local caching strategy to not assume that larger queries are always more conservative than smaller ones. Fixes PR28958 and PR35519. Differential Revision: https://reviews.llvm.org/D40802 llvm-svn: 321138
Diffstat (limited to 'clang/lib/Format/TokenAnnotator.h')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud