diff options
author | Victor Leikehman <lei@il.ibm.com> | 2004-08-09 14:34:39 +0000 |
---|---|---|
committer | Paul Brook <pbrook@gcc.gnu.org> | 2004-08-09 14:34:39 +0000 |
commit | 883c9d4d1237863941b95b3e7b8dba71fb49a78e (patch) | |
tree | c587895dd83e037b88dc7cd3d97ecb67add9aa8f /libgfortran/generated/transpose_i4.c | |
parent | 705debec1e0d71c1d6c0c3e7f9346c8eed391111 (diff) | |
download | gcc-883c9d4d1237863941b95b3e7b8dba71fb49a78e.zip gcc-883c9d4d1237863941b95b3e7b8dba71fb49a78e.tar.gz gcc-883c9d4d1237863941b95b3e7b8dba71fb49a78e.tar.bz2 |
matmul.m4, [...]: Allocate space if return value has NULL in its data field.
2004-09-09 Victor Leikehman <lei@il.ibm.com>
* m4/matmul.m4, m4/matmull.m4, intrinsics/eoshift0.c,
intrinsics/eoshift2.c, intrinsics/transpose_generic.c:
Allocate space if return value has NULL in its data field.
* generated/*.c: Regenerate.
From-SVN: r85717
Diffstat (limited to 'libgfortran/generated/transpose_i4.c')
-rw-r--r-- | libgfortran/generated/transpose_i4.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/libgfortran/generated/transpose_i4.c b/libgfortran/generated/transpose_i4.c index 930aad9..97eb1a0 100644 --- a/libgfortran/generated/transpose_i4.c +++ b/libgfortran/generated/transpose_i4.c @@ -40,9 +40,8 @@ __transpose_4 (gfc_array_i4 * ret, gfc_array_i4 * source) if (ret->data == NULL) { - ret->data = internal_malloc (sizeof (GFC_INTEGER_4) * size0 (source)); - ret->base = 0; - ret->dtype = source->dtype; + assert (GFC_DESCRIPTOR_RANK (ret) == 2); + assert (ret->dtype == source->dtype); ret->dim[0].lbound = 0; ret->dim[0].ubound = source->dim[1].ubound - source->dim[1].lbound; @@ -51,6 +50,9 @@ __transpose_4 (gfc_array_i4 * ret, gfc_array_i4 * source) ret->dim[1].lbound = 0; ret->dim[1].ubound = source->dim[0].ubound - source->dim[0].lbound; ret->dim[1].stride = ret->dim[0].ubound+1; + + ret->data = internal_malloc (sizeof (GFC_INTEGER_4) * size0 (ret)); + ret->base = 0; } if (ret->dim[0].stride == 0) |