This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] final.c max_skip without p2align


+ #ifndef ASM_OUTPUT_MAX_SKIP_ALIGN
+             if ((new_address - insn_current_address)
+                 <= LABEL_TO_MAX_SKIP (insn))
+               insn_lengths[uid] = new_address - insn_current_address;
+             else
+               LABEL_TO_ALIGNMENT (insn) = 0;
+ #else
              insn_lengths[uid] = new_address - insn_current_address;
+ #endif

This violates the assumption that the location counter is aligned after
an alignment.  As a result, you might see out-of-range branches and
shorten_branches looping forever.

-- 
--------------------------
SuperH (UK) Ltd.
2410 Aztec West / Almondsbury / BRISTOL / BS32 4QX
T:+44 1454 465658


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]