summaryrefslogtreecommitdiffstats
path: root/testsuite
diff options
context:
space:
mode:
authorJosh Stone <joshua.i.stone@intel.com>2008-06-18 17:07:15 -0700
committerJosh Stone <joshua.i.stone@intel.com>2008-06-18 17:07:15 -0700
commitbea72737344238d12c4b4bcd197d7e6606780e45 (patch)
tree34b9507c7fa2147fcd9b601b162cf25fd90f691d /testsuite
parent7bbd87f91f4cc45394be5f7f0ca1bfea99bad066 (diff)
downloadsystemtap-steved-bea72737344238d12c4b4bcd197d7e6606780e45.tar.gz
systemtap-steved-bea72737344238d12c4b4bcd197d7e6606780e45.tar.xz
systemtap-steved-bea72737344238d12c4b4bcd197d7e6606780e45.zip
New optimization to break up statements in void contexts.
PR 6644 * elaborate.cxx (dead_stmtexpr_remover::visit_block): Flatten nested block statements into a single block. (dead_stmtexpr_remover::visit_if_statement): Remove the possibility of if_statements with a null thenblock. When an if lacks both then and else, either remove it completely or reduce it to a simple statment evaluating the condition. With an else and no then, invert the condition and else becomes then. (void_statement_reducer): New optimization visitor that breaks statements in void context into smaller pieces, to expose more optimization opportunities. (semantic_pass_opt5, semantic_pass_opt6): Bump opt5 to opt6, and create a new opt5 that runs through void_statement_reducer.
Diffstat (limited to 'testsuite')
0 files changed, 0 insertions, 0 deletions