ScopInfo: Never add read accesses for synthesizable values
authorMichael Kruse <llvm@meinersbur.de>
Wed, 27 Jan 2016 22:51:56 +0000 (22:51 +0000)
committerMichael Kruse <llvm@meinersbur.de>
Wed, 27 Jan 2016 22:51:56 +0000 (22:51 +0000)
commitfd46308de4ce8f824bf02d560b81084112ea6e95
tree1074c4d73d6178874d33f1fc641a07b26d14144c
parent2952bf50052021edcfab086f28446740846f2eff
ScopInfo: Never add read accesses for synthesizable values

Before adding a MK_Value READ MemoryAccess, check whether the read is
necessary or synthesizable. Synthesizable values are later generated by
the SCEVExpander and therefore do not need to be transferred
explicitly. This can happen because the check for synthesizability has
presumbly been forgotten in the case where a phi's incoming value has
been defined in a different statement.

Differential Revision: http://reviews.llvm.org/D15687

llvm-svn: 258998
polly/lib/Analysis/ScopInfo.cpp
polly/test/Isl/CodeGen/phi-defined-before-scop.ll
polly/test/Isl/CodeGen/synthesizable_phi_write_after_loop.ll
polly/test/Isl/CodeGen/uninitialized_scalar_memory.ll
polly/test/ScopInfo/NonAffine/non_affine_loop_used_later.ll
polly/test/ScopInfo/non_affine_region_1.ll
polly/test/ScopInfo/non_affine_region_3.ll
polly/test/ScopInfo/pointer-used-as-base-pointer-and-scalar-read.ll
polly/test/ScopInfo/same-base-address-scalar-and-array.ll