aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/validation
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 /validation
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 'validation')
-rw-r--r--validation/optim/multi-phisrc.c1
1 files changed, 0 insertions, 1 deletions
diff --git a/validation/optim/multi-phisrc.c b/validation/optim/multi-phisrc.c
index c6f21f2d..ff31c083 100644
--- a/validation/optim/multi-phisrc.c
+++ b/validation/optim/multi-phisrc.c
@@ -17,7 +17,6 @@ void foo(int p, int a)
/*
* check-name: multi-phisrc
* check-command: test-linearize -Wno-decl $file
- * check-known-to-fail
*
* check-output-ignore
* check-output-excludes: phi