aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/lib.c
diff options
authorLuc Van Oostenryck <luc.vanoostenryck@gmail.com>2021-03-26 00:41:22 +0100
committerLuc Van Oostenryck <luc.vanoostenryck@gmail.com>2021-04-02 20:50:34 +0200
commit8b89204e0d7e2caaaa03ff8ed79da5bf6f2e1b36 (patch)
treeb8b7390e92c502e625d3af68268382637ec4c76a /lib.c
parent78183a155b833ded168e9f72055a8a0f01a5ad46 (diff)
downloadsparse-dev-8b89204e0d7e2caaaa03ff8ed79da5bf6f2e1b36.tar.gz
fix remove_merging_phisrc()
The current implementation of remove_merging_phisrc() can't work correctly when these phi-sources belong to a basic block with several children to the same target basic block (this happens commonly with OP_SWITCH). Fix this by directly scanning the source basic block for the presence of any phi-source. Once identified, the processing is kept unchanged: remove these phi-sources if a sibling phi-source will 'overwrite' them in the target block. Fixes: 2fdaca9e7175e62f08d259f5cb3ec7c9725bba68 Signed-off-by: Luc Van Oostenryck <luc.vanoostenryck@gmail.com>
Diffstat (limited to 'lib.c')
0 files changed, 0 insertions, 0 deletions