* sh.h (LOOP_ALIGN): Only align when optimizing.
* sh.c (find_barrier): Clear inc for CODE_LABELs.
When not optimizing, calculate alignment for BARRIERs directly.
From-SVN: r18473
+Wed Mar 11 18:26:25 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * sh.h (LOOP_ALIGN): Only align when optimizing.
+ * sh.c (find_barrier): Clear inc for CODE_LABELs.
+ When not optimizing, calculate alignment for BARRIERs directly.
+
Wed Mar 11 15:07:18 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
* final.c (shorten_branches): Remove conditionalizing on
int new_align = 1;
if (GET_CODE (from) == CODE_LABEL)
- new_align = optimize ? 1 << label_to_alignment (from) : 1;
+ {
+ if (optimize)
+ new_align = 1 << label_to_alignment (from);
+ else if (GET_CODE (prev_nonnote_insn (from)) == BARRIER)
+ new_align = 1 << barrier_align (from);
+ else
+ new_align = 1;
+ inc = 0;
+ }
if (GET_CODE (from) == BARRIER)
{
#define LABEL_ALIGN_AFTER_BARRIER(LABEL_AFTER_BARRIER) \
barrier_align (LABEL_AFTER_BARRIER)
-#define LOOP_ALIGN(A_LABEL) (TARGET_SMALLCODE ? 0 : 2)
+#define LOOP_ALIGN(A_LABEL) \
+ ((! optimize || TARGET_SMALLCODE) ? 0 : 2)
#define LABEL_ALIGN(A_LABEL) \
( \