From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 26858 invoked by alias); 13 Apr 2008 20:17:25 -0000 Received: (qmail 26764 invoked by alias); 13 Apr 2008 20:16:47 -0000 Date: Sun, 13 Apr 2008 20:17:00 -0000 Message-ID: <20080413201647.26763.qmail@sourceware.org> X-Bugzilla-Reason: CC References: Subject: [Bug libfortran/32972] performance of pack/unpack In-Reply-To: Reply-To: gcc-bugzilla@gcc.gnu.org To: gcc-bugs@gcc.gnu.org From: "tkoenig at gcc dot gnu dot org" Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-bugs-owner@gcc.gnu.org X-SW-Source: 2008-04/txt/msg00941.txt.bz2 ------- Comment #23 from tkoenig at gcc dot gnu dot org 2008-04-13 20:16 ------- Subject: Bug 32972 Author: tkoenig Date: Sun Apr 13 20:15:58 2008 New Revision: 134245 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=134245 Log: 2008-04-13 Thomas Koenig Francois-Xavier Coudert 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-13 Thomas Koenig 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. Modified: trunk/gcc/testsuite/ChangeLog trunk/gcc/testsuite/gfortran.dg/internal_pack_1.f90 trunk/gcc/testsuite/gfortran.dg/intrinsic_pack_1.f90 trunk/gcc/testsuite/gfortran.dg/intrinsic_spread_1.f90 trunk/gcc/testsuite/gfortran.dg/intrinsic_unpack_1.f90 trunk/libgfortran/ChangeLog trunk/libgfortran/config.h.in trunk/libgfortran/configure trunk/libgfortran/configure.ac trunk/libgfortran/intrinsics/pack_generic.c trunk/libgfortran/intrinsics/signal.c trunk/libgfortran/intrinsics/spread_generic.c trunk/libgfortran/intrinsics/unpack_generic.c trunk/libgfortran/libgfortran.h trunk/libgfortran/runtime/backtrace.c trunk/libgfortran/runtime/in_pack_generic.c trunk/libgfortran/runtime/in_unpack_generic.c -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32972