llvm-project/llvm/test/Transforms/Scalarizer
Daniele Vettorel 67887b0f81 [Scalarizer] Do not insert instructions between PHI nodes and debug intrinsics.
The scalarizer pass seems to be inserting instructions in-between PHI nodes or debug intrinsics that end up staying at the end of the pass, resulting in malformed IR and violating assumptions.

This patch adds a check to make sure the `extractelement` instructions that it adds are correctly placed after all PHI nodes and debug intrinsics.

Patch by vettoreldaniele.

Reviewed By: bjope

Differential Revision: https://reviews.llvm.org/D112472
2021-11-02 09:53:59 -04:00
..
basic-inseltpoison.ll
basic.ll
cache-bug.ll
constant-extractelement.ll
constant-insertelement.ll
crash-bug.ll
dbg-invariant.ll [Scalarizer] Do not insert instructions between PHI nodes and debug intrinsics. 2021-11-02 09:53:59 -04:00
dbginfo.ll
dbgloc-bug-inseltpoison.ll
dbgloc-bug.ll
global-bug-2.ll
global-bug.ll
intrinsics.ll
order-bug-inseltpoison.ll
order-bug.ll
phi-bug-inseltpoison.ll
phi-bug.ll
phi-order.ll [Scalarizer] Do not insert instructions between PHI nodes and debug intrinsics. 2021-11-02 09:53:59 -04:00
phi-unreachable-pred.ll
scatter-order.ll
store-bug.ll
variable-extractelement.ll
variable-insertelement.ll
vector-gep.ll