[patch, libgfortran] Some more transformational intrinsic speedups
Thomas Koenig
tkoenig@netcologne.de
Sun Apr 13 20:09:00 GMT 2008
On Wed, 2008-04-09 at 14:06 +0200, Dominique Dhumieres wrote:
> The first "Hunk" of libgfortran/libgfortran.h did applied because the copyright lines
> have been updated by Jerry DeLisle at revision 133943.
OK, so here's a version that does the Right Thing there
(minus the failing hunk).
Again, this is plus the regenerated files so that nobody
should have trouble building it. Already regression-tested
previously.
OK for trunk?
Thomas
2008-04-09 Thomas Koenig <tkoenig@gcc.gnu.org>
Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
PR libfortran/32972
PR libfortran/32512
configure.ac: Add test for uintptr_t.
configure: Regenerated.
config.h.in: Regenerated.
* libgfortran.h: GFC_DTYPE_DERIVED_1: New macro.
GFC_DTYPE_DERIVED_2: New macro.
GFC_DTYPE_DERIVED_4: New macro.
GFC_DTYPE_DERIVED_8: New macro.
GFC_DTYPE_DERIVED_16: New macro.
GFC_UNALIGNED_2: New macro.
GFC_UNALIGNED_4: New macro.
GFC_UNALIGNED_8: New macro.
GFC_UNALIGNED_16: New macro.
intptr_t: Define if we don't have it.
uintptr_t: Likewise.
* runtime/backtrace.c (show_backtrace): Use intptr_t.
* intrinsics/signal.c (signal_sub): Likewise.
(signal_sub_int): Likewise.
(alarm_sub_int_i4): Likewise.
* intrinsics/spread_generic.c (spread): Use the integer
routines for handling derived types of sizes 1, 2, 4, 8 and 16
if the alignment of all pointers is correct.
(spread_scalar): Likewise.
* intrinsics/pack_generic.c (pack): Likewise.
Use GFD_DTYPE_TYPE_SIZE to avoid nested switch statements.
* intrinsics/unpack_generic.c (unpack1): Likewise.
(unpack0): Likewise.
* runtime/in_pack_generic.c (internal_pack): Likewise.
* runtime/in_unpack_generic.c (internal_unpack): Likewise.
2008-04-09 Thomas Koenig <tkoenig@gcc.gnu.org>
PR libfortran/32972
PR libfortran/32512
* gfortran.dg/internal_pack_1.f90: Add test for derived type.
* gfortran.dg/intrinsic_spread_1.f90: Likewise.
* gfortran.dg/intrinsic_pack_1.f90: Likewise.
* gfortran.dg/intrinsic_unpack_1.f90: Likewise.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: spread-8.diff
Type: text/x-patch
Size: 46562 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/fortran/attachments/20080413/8f877185/attachment.bin>
More information about the Fortran
mailing list