This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH] PR opt/6627: New target macro MINIMUM_FUNCTION_BOUNDARY
On Sun, Sep 29, 2002 at 01:51:34PM -0600, Roger Sayle wrote:
> The only difficulty is that the code in varasm.c currently
> views user alignment as a hint, and only guarantees atleast
> FUNCTION_BOUNDARY alignment. See the code in assemble_start_function
> that mentions ASM_OUTPUT_MAX_SKIP_ALIGN might not do anything and
> the cfun->function_frequency != FUNCTION_FREQUENCY_UNLIKELY_EXECUTED
> My patch guaranteed FUNCTION_BOUNDARY alignment in align_functions
> was >= FUNCTION_BOUNDARY, and MINIMUM_FUNCTION_BOUNDARY alignment
> otherwise.
Hum. Dunno. I'd have said that MAX_SKIP_ALIGN was a useful
thing here, but not as we're using it here (hint: (1<<align)-1 is
always the maximum space to be added). In your cleanup you
can remove it.
As for FUNCTION_FREQUENCY_UNLIKELY_EXECUTED... I guess that's
a good thing to be minding.o
So I think we want separate variables here. One that might be
ignored, and one that shouldn't be. force_align_functions?
> Ok, 16 byte alignment makes sense for IA-64. How about i960?
i960 is a regular risc target with a 32-bit instruction size.
r~