From: Timothy Wall Date: Fri, 23 Jun 2000 03:31:06 +0000 (+0000) Subject: Move premature QP notation clearing to it's appropriate location. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=e9718fe12e2f9572afe65f44b98dbac8a25a2de4;p=binutils-gdb.git Move premature QP notation clearing to it's appropriate location. --- diff --git a/gas/ChangeLog b/gas/ChangeLog index ed8d51c487b..d66e9ce6ae3 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,8 @@ +2000-06-22 Timothy Wall + + * config/tc-ia64.c (note_register_values): Move premature QP + notation clearing into the appropriate place. + 2000-06-22 Alan Modra * dep-in.sed: Escape literal `.'s on patterns. Trim off `../' diff --git a/gas/config/tc-ia64.c b/gas/config/tc-ia64.c index d2e0ec08b18..9b2eaf45786 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)