[Polly][SchedOpt] Account for prevectorization of multiple statements.
authorMichael Kruse <llvm-project@meinersbur.de>
Thu, 23 Dec 2021 19:45:42 +0000 (13:45 -0600)
committerMichael Kruse <llvm-project@meinersbur.de>
Thu, 23 Dec 2021 20:06:41 +0000 (14:06 -0600)
commit937b00ab2cf05d0eba7a96fe7b14d277996e663e
tree376c19a22860b5dbcb6d8285bcf3c220e47bb297
parent3042091168e99323217223a959df8675bdfa9b3c
[Polly][SchedOpt] Account for prevectorization of multiple statements.

A prevectorized loop may contain multiple statements, in which case
isl_schedule_node_band_sink will sink the vector band to multiple
leaves. Instead of statically assuming a specific tree structure after
sinking, add a SIMD marker to all inner bands.

Fixes llvm.org/PR52637
polly/include/polly/ScheduleTreeTransform.h
polly/lib/Transform/ScheduleOptimizer.cpp
polly/lib/Transform/ScheduleTreeTransform.cpp
polly/test/ScheduleOptimizer/focaltech_test_detail_threshold-7bc17e.ll
polly/test/ScheduleOptimizer/vivid-vbi-gen-vivid_vbi_gen_sliced-before-llvmreduced.ll [new file with mode: 0644]