CVSROOT:        /cvs
Module name:    ports
Changes by:     [email protected]   2011/12/03 08:54:05

Modified files:
        lang/gcc/4.2   : Makefile 
        lang/gcc/4.2/patches: patch-gcc_config_alpha_openbsd_h 
Added files:
        lang/gcc/4.2/patches: patch-gcc_builtins_c 
                              patch-gcc_config_alpha_alpha_h 

Log message:
Merge in fixes for alpha from base (miod@):

builtins.c:
Allow MD backend to prevent the optimization of a bcopy() or memmove() of
size 1 (the size being known at compile-time) into an inline mempcpy()
expansion, which will in turn expand into a byte load and store operation.
This expansion loses precious address alignment information at some point
(because everybody knows that you can read a byte from any address, right?),
and this loses bigtime on strict alignment platforms which lack the ability
to accesse bytes directly, such as alpha (unless compiling with -mbwx and
runnning on a BWX-capable cpu).

config/alpha:
Require alignment of local arrays on word boundaries, and enable
the builtins.c `one-byte memcpy' workaround.

ok espie@

Reply via email to