aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/optimize.c
diff options
authorLuc Van Oostenryck <luc.vanoostenryck@gmail.com>2018-04-09 16:49:09 +0200
committerLuc Van Oostenryck <luc.vanoostenryck@gmail.com>2018-07-01 00:18:44 +0200
commit6dea652c4ac3aec57ffb1ce7c333184d324971f8 (patch)
tree28932646258397c25555ec64592614a992696688 /optimize.c
parentb9d74dac4b2ddad5dd90ec36eb2e40963d09f9d8 (diff)
downloadsparse-dev-6dea652c4ac3aec57ffb1ce7c333184d324971f8.tar.gz
ssa: activate the new SSA conversion
This activate the new SSA conversion that will be used to replace simplify_symbol_usage() which created invalid SSA (phi-nodes were placed where the value was needed instead of where the paths meet, also and partially related, it was possible for a phi-node to have more operands/sources than the BB it was in had parents). Signed-off-by: Luc Van Oostenryck <luc.vanoostenryck@gmail.com>
Diffstat (limited to 'optimize.c')
-rw-r--r--optimize.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/optimize.c b/optimize.c
index e682b7b2..e8cb7fc3 100644
--- a/optimize.c
+++ b/optimize.c
@@ -13,6 +13,7 @@
#include "flow.h"
#include "cse.h"
#include "ir.h"
+#include "ssa.h"
int repeat_phase;
@@ -60,7 +61,7 @@ void optimize(struct entrypoint *ep)
* Turn symbols into pseudos
*/
if (fpasses & PASS_MEM2REG)
- simplify_symbol_usage(ep);
+ ssa_convert(ep);
ir_validate(ep);
if (fdump_ir & PASS_MEM2REG)
show_entry(ep);