+Wed Mar 11 15:07:18 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * final.c (shorten_branches): Remove conditionalizing on
+ SHORTEN_WITH_ADJUST_INSN_LENGTH
+ * sh.h, pa.h (SHORTEN_WITH_ADJUST_INSN_LENGTH): Remove.
+
Wed Mar 11 02:37:41 1998 Jeffrey A Law (law@cygnus.com)
* flow.c (find_basic_blocks_1): Keep the cfg accurate when removing
#define ADJUST_INSN_LENGTH(INSN, LENGTH) \
LENGTH += pa_adjust_insn_length (INSN, LENGTH);
-/* Enable a bug fix. (This is for extra caution.) */
-#define SHORTEN_WITH_ADJUST_INSN_LENGTH
-
/* Millicode insns are actually function calls with some special
constraints on arguments and register usage.
&& GET_CODE (PATTERN (NEXT_INSN (PREV_INSN (X)))) != SEQUENCE \
&& get_attr_needs_delay_slot (X) == NEEDS_DELAY_SLOT_YES) \
(LENGTH) += 2;
-
-/* Enable a bug fix for the shorten_branches pass. */
-#define SHORTEN_WITH_ADJUST_INSN_LENGTH
\f
/* Define the codes that are matched by predicates in sh.c. */
#define PREDICATE_CODES \
insn = NEXT_INSN (insn))
{
int new_length;
-#ifdef SHORTEN_WITH_ADJUST_INSN_LENGTH
#ifdef ADJUST_INSN_LENGTH
int tmp_length;
-#endif
#endif
int length_align;
insn_current_address += new_length;
}
-#ifdef SHORTEN_WITH_ADJUST_INSN_LENGTH
#ifdef ADJUST_INSN_LENGTH
/* If needed, do any adjustment. */
tmp_length = new_length;
ADJUST_INSN_LENGTH (insn, new_length);
insn_current_address += (new_length - tmp_length);
-#endif
#endif
if (new_length != insn_lengths[uid])
If defined, modifies the length assigned to instruction @var{insn} as a
function of the context in which it is used. @var{length} is an lvalue
that contains the initially computed length of the insn and should be
-updated with the correct length of the insn. If updating is required,
-@var{insn} must not be a varying-length insn.
+updated with the correct length of the insn.
This macro will normally not be required. A case in which it is
required is the ROMP. On this machine, the size of an @code{addr_vec}