summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp
diff options
context:
space:
mode:
authorMichael Kruse <llvm@meinersbur.de>2017-05-21 22:46:57 +0000
committerMichael Kruse <llvm@meinersbur.de>2017-05-21 22:46:57 +0000
commit706f79ab14a4fdfe465520bab713570316462889 (patch)
tree62ede8989b473108c5e182869b93cfdc197bb48e /llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp
parent3318970cd32082a799d5a7d833d44728d057a126 (diff)
downloadbcm5719-llvm-706f79ab14a4fdfe465520bab713570316462889.tar.gz
bcm5719-llvm-706f79ab14a4fdfe465520bab713570316462889.zip
[CodeGen] Support partial write accesses.
Allow the BlockGenerator to generate memory writes that are not defined over the complete statement domain, but only over a subset of it. It generates a condition that evaluates to 1 if executing the subdomain, and only then execute the access. Only write accesses are supported. Read accesses would require a PHINode which has a value if the access is not executed. Partial write makes DeLICM able to apply mappings that are not defined over the entire domain (for instance, a branch that leaves a loop with a PHINode in its header; a MemoryKind::PHI write when leaving is never read by its PHI read). Differential Revision: https://reviews.llvm.org/D33255 llvm-svn: 303517
Diffstat (limited to 'llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud