summaryrefslogtreecommitdiffstats
path: root/clang/lib
diff options
context:
space:
mode:
authorSiddharth Bhat <siddu.druid@gmail.com>2017-08-21 11:57:04 +0000
committerSiddharth Bhat <siddu.druid@gmail.com>2017-08-21 11:57:04 +0000
commit7bc77e87c8c55c2ec68443d4911f2d72fde6fbf0 (patch)
treec3db1b924891c502174933b4e8480e1bd8f38e9b /clang/lib
parent7b9f5ca27ea2d3ef5359d2916463d1a5d8315979 (diff)
downloadbcm5719-llvm-7bc77e87c8c55c2ec68443d4911f2d72fde6fbf0.tar.gz
bcm5719-llvm-7bc77e87c8c55c2ec68443d4911f2d72fde6fbf0.zip
[ScopInfo] Add option to treat all function parameters as dereferencible.
Dragonegg generates most function parameters as pointers to the actual parameters. However, it does not mark these parameters with the dereferencable attribute. Polly is conservative when it comes to invariant load hoisting, thus we add runtime checks to invariant load hoisted pointers when we do not know that pointers are dereferencable. This is correct behaviour, but is a performance penalty. Add a flag that allows all pointer parameters to be dereferencable. That way, polly can speculatively load-hoist paramters to functions without runtime checks. Differential Revision: https://reviews.llvm.org/D36461 llvm-svn: 311329
Diffstat (limited to 'clang/lib')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud