aboutsummaryrefslogtreecommitdiff
path: root/libgfortran/intrinsics
diff options
context:
space:
mode:
authorAndreas Jaeger <aj@suse.de>2005-05-15 17:37:18 +0200
committerAndreas Jaeger <aj@gcc.gnu.org>2005-05-15 17:37:18 +0200
commite606fb399e59f59bf0c56e3f2a04c18b85b4ea4f (patch)
tree86a911fd57b949150311c11e562e0608b3efc89c /libgfortran/intrinsics
parent6b0215364d3709b555115d4a1bdcdea70350dbc0 (diff)
downloadgcc-e606fb399e59f59bf0c56e3f2a04c18b85b4ea4f.zip
gcc-e606fb399e59f59bf0c56e3f2a04c18b85b4ea4f.tar.gz
gcc-e606fb399e59f59bf0c56e3f2a04c18b85b4ea4f.tar.bz2
pack_generic.c (pack): Remove unneeded calculation.
* intrinsics/pack_generic.c (pack): Remove unneeded calculation. * m4/matmull.m4 (matmul_): Remove unneeded calculations, fix pointer cast to avoid warning. * generated/matmul_l4.c: Regenerated. * generated/matmul_l8.c: Regenerated. * Makefile.am: Remove AM_CFLAGS here. * configure.ac: Define AM_CFLAGS and AM_FCFLAGS so that warnings are set. Set additionally -Wstrict-prototypes for CFLAGS. * Makefile.in: Regenerated * configure: Regenerated. From-SVN: r99723
Diffstat (limited to 'libgfortran/intrinsics')
-rw-r--r--libgfortran/intrinsics/pack_generic.c35
1 files changed, 17 insertions, 18 deletions
diff --git a/libgfortran/intrinsics/pack_generic.c b/libgfortran/intrinsics/pack_generic.c
index cdc043b..06298bb 100644
--- a/libgfortran/intrinsics/pack_generic.c
+++ b/libgfortran/intrinsics/pack_generic.c
@@ -1,5 +1,5 @@
/* Generic implementation of the PACK intrinsic
- Copyright (C) 2002, 2004 Free Software Foundation, Inc.
+ Copyright (C) 2002, 2004, 2005 Free Software Foundation, Inc.
Contributed by Paul Brook <paul@nowt.org>
This file is part of the GNU Fortran 95 runtime library (libgfortran).
@@ -37,7 +37,7 @@ Boston, MA 02111-1307, USA. */
/* PACK is specified as follows:
13.14.80 PACK (ARRAY, MASK, [VECTOR])
-
+
Description: Pack an array into an array of rank one under the
control of a mask.
@@ -49,7 +49,7 @@ Boston, MA 02111-1307, USA. */
VECTOR (optional) shall be of the same type and type parameters
as ARRAY. VECTOR shall have at least as many elements as
there are true elements in MASK. If MASK is a scalar
- with the value true, VECTOR shall have at least as many
+ with the value true, VECTOR shall have at least as many
elements as there are in ARRAY.
Result Characteristics: The result is an array of rank one with the
@@ -69,7 +69,7 @@ Boston, MA 02111-1307, USA. */
| 9 0 0 | may be "gathered" by the function PACK. The result of
| 0 0 7 |
PACK (M, MASK = M.NE.0) is [9,7] and the result of PACK (M, M.NE.0,
- VECTOR = (/ 2,4,6,8,10,12 /)) is [9,7,6,8,10,12].
+ VECTOR = (/ 2,4,6,8,10,12 /)) is [9,7,6,8,10,12].
There are two variants of the PACK intrinsic: one, where MASK is
array valued, and the other one where MASK is scalar. */
@@ -125,7 +125,6 @@ pack (gfc_array_char *ret, const gfc_array_char *array,
runtime_error ("Funny sized logical array");
for (n = 0; n < dim; n++)
mstride[n] <<= 1;
- mstride0 <<= 1;
mptr = GFOR_POINTER_L8_TO_L4 (mptr);
}
@@ -134,15 +133,15 @@ pack (gfc_array_char *ret, const gfc_array_char *array,
/* Allocate the memory for the result. */
int total;
- if (vector != NULL)
- {
+ if (vector != NULL)
+ {
/* The return array will have as many
- elements as there are in VECTOR. */
- total = vector->dim[0].ubound + 1 - vector->dim[0].lbound;
- }
- else
- {
- /* We have to count the true elements in MASK. */
+ elements as there are in VECTOR. */
+ total = vector->dim[0].ubound + 1 - vector->dim[0].lbound;
+ }
+ else
+ {
+ /* We have to count the true elements in MASK. */
/* TODO: We could speed up pack easily in the case of only
few .TRUE. entries in MASK, by keeping track of where we
@@ -152,7 +151,7 @@ pack (gfc_array_char *ret, const gfc_array_char *array,
only have to traverse the list, and copy those elements
into the result array. In the case of datatypes which fit
in one of the integer types we could also cache the
- value instead of a pointer to it.
+ value instead of a pointer to it.
This approach might be bad from the point of view of
cache behavior in the case where our cache is not big
enough to hold all elements that have to be copied. */
@@ -195,7 +194,7 @@ pack (gfc_array_char *ret, const gfc_array_char *array,
}
}
}
-
+
/* Setup the array descriptor. */
ret->dim[0].lbound = 0;
ret->dim[0].ubound = total - 1;
@@ -344,7 +343,7 @@ pack_s (gfc_array_char *ret, const gfc_array_char *array,
ret->dim[0].stride = 1;
ret->data = internal_malloc_size (0);
ret->base = 0;
-
+
return;
}
}
@@ -363,7 +362,7 @@ pack_s (gfc_array_char *ret, const gfc_array_char *array,
rstride0 = size;
rptr = ret->data;
- /* The remaining possibilities are now:
+ /* The remaining possibilities are now:
If MASK is .TRUE., we have to copy the source array into the
result array. We then have to fill it up with elements from VECTOR.
If MASK is .FALSE., we have to copy VECTOR into the result
@@ -404,7 +403,7 @@ pack_s (gfc_array_char *ret, const gfc_array_char *array,
}
}
}
-
+
/* Add any remaining elements from VECTOR. */
if (vector)
{