From 0a41cb044c848efe802ec8e965bc1408f49d2567 Mon Sep 17 00:00:00 2001 From: drmortalwombat <90205530+drmortalwombat@users.noreply.github.com> Date: Tue, 5 Nov 2024 17:20:22 +0100 Subject: [PATCH] Relax rules for argument forwarding in direct call chains --- oscar64/GlobalOptimizer.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/oscar64/GlobalOptimizer.cpp b/oscar64/GlobalOptimizer.cpp index 062a63d..3855974 100644 --- a/oscar64/GlobalOptimizer.cpp +++ b/oscar64/GlobalOptimizer.cpp @@ -645,7 +645,7 @@ Declaration* GlobalOptimizer::Analyze(Expression* exp, Declaration* procDec, uin if (flags & ANAFL_LHS) exp->mDecValue->mOptFlags |= OPTF_VAR_ADDRESS; - if (exp->mDecValue->mType == DT_ARGUMENT) + if (exp->mDecValue->mType == DT_ARGUMENT && (flags & ANAFL_LHS)) { exp->mDecValue->mOptFlags |= OPTF_VAR_NO_FORWARD; exp->mDecValue->mForwardParam = nullptr;