From f0eccda1801eab44aa2d42c504bb2b81eec2a1f9 Mon Sep 17 00:00:00 2001 From: Vern Paxson Date: Mon, 27 Nov 2023 22:31:03 -0800 Subject: [PATCH] fixes for missed optimization opportunities --- src/script_opt/Reduce.cc | 7 +++++-- src/script_opt/Stmt.cc | 9 ++++++--- 2 files changed, 11 insertions(+), 5 deletions(-) diff --git a/src/script_opt/Reduce.cc b/src/script_opt/Reduce.cc index fb8d3de78a..1a6a181180 100644 --- a/src/script_opt/Reduce.cc +++ b/src/script_opt/Reduce.cc @@ -1007,9 +1007,12 @@ bool CSE_ValidityChecker::CheckID(const ID* id, bool ignore_orig) const { if ( id == i ) return true; // reassignment - if ( id_t && same_type(id_t, i->GetType()) ) - // Same-type aggregate. + if ( id_t && same_type(id_t, i->GetType()) ) { + // printf("identifier %s (%d), start %s, end %s\n", id->Name(), ignore_orig, obj_desc(start_e).c_str(), + // obj_desc(end_e).c_str()); Same-type aggregate. + // if ( ignore_orig ) return true; + } } return false; diff --git a/src/script_opt/Stmt.cc b/src/script_opt/Stmt.cc index 73f14649f9..9fc0de06f5 100644 --- a/src/script_opt/Stmt.cc +++ b/src/script_opt/Stmt.cc @@ -951,10 +951,13 @@ TraversalCode CatchReturnStmt::Traverse(TraversalCallback* cb) const { TraversalCode tc = cb->PreStmt(this); HANDLE_TC_STMT_PRE(tc); - block->Traverse(cb); + tc = block->Traverse(cb); + HANDLE_TC_STMT_PRE(tc); - if ( ret_var ) - ret_var->Traverse(cb); + if ( ret_var ) { + tc = ret_var->Traverse(cb); + HANDLE_TC_STMT_PRE(tc); + } tc = cb->PostStmt(this); HANDLE_TC_STMT_POST(tc);