From e9718fe12e2f9572afe65f44b98dbac8a25a2de4 Mon Sep 17 00:00:00 2001 From: Timothy Wall Date: Fri, 23 Jun 2000 03:31:06 +0000 Subject: Move premature QP notation clearing to it's appropriate location. --- gas/config/tc-ia64.c | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) (limited to 'gas/config/tc-ia64.c') diff --git a/gas/config/tc-ia64.c b/gas/config/tc-ia64.c index d2e0ec0..9b2eaf4 100644 --- a/gas/config/tc-ia64.c +++ b/gas/config/tc-ia64.c @@ -7706,6 +7706,13 @@ note_register_values (idesc) clear_qp_implies (~qp_safe_across_calls, ~qp_safe_across_calls); clear_qp_branch_flag (~qp_safe_across_calls); } + else if (is_interruption_or_rfi (idesc) + || is_taken_branch (idesc)) + { + clear_register_values (); + clear_qp_mutex (~(valueT)0); + clear_qp_implies (~(valueT)0, ~(valueT)0); + } /* Look for mutex and implies relations */ else if ((idesc->operands[0] == IA64_OPND_P1 || idesc->operands[0] == IA64_OPND_P2) @@ -8324,9 +8331,6 @@ update_dependencies (idesc) which require a srlz.[id], we don't follow the branch; the next instruction is assumed to start with a clean slate */ regdepslen = 0; - clear_register_values (); - clear_qp_mutex (~(valueT)0); - clear_qp_implies (~(valueT)0, ~(valueT)0); md.path = 0; } else if (is_conditional_branch (idesc) -- cgit v1.1