Mercurial > hg > CbC > CbC_gcc
diff libgfortran/generated/minloc0_4_i4.c @ 145:1830386684a0
gcc-9.2.0
author | anatofuz |
---|---|
date | Thu, 13 Feb 2020 11:34:05 +0900 |
parents | 84e7813d76e9 |
children |
line wrap: on
line diff
--- a/libgfortran/generated/minloc0_4_i4.c Thu Oct 25 07:37:49 2018 +0900 +++ b/libgfortran/generated/minloc0_4_i4.c Thu Feb 13 11:34:05 2020 +0900 @@ -1,5 +1,5 @@ /* Implementation of the MINLOC intrinsic - Copyright (C) 2002-2018 Free Software Foundation, Inc. + Copyright (C) 2002-2020 Free Software Foundation, Inc. Contributed by Paul Brook <paul@nowt.org> This file is part of the GNU Fortran 95 runtime library (libgfortran). @@ -123,27 +123,27 @@ } else #endif - if (back) - do - { - if (unlikely (*base <= minval)) - { - minval = *base; - for (n = 0; n < rank; n++) - dest[n * dstride] = count[n] + 1; - } - base += sstride[0]; - } - while (++count[0] != extent[0]); - else - do - { - if (unlikely (*base < minval)) - { - minval = *base; - for (n = 0; n < rank; n++) - dest[n * dstride] = count[n] + 1; - } + if (back) + do + { + if (unlikely (*base <= minval)) + { + minval = *base; + for (n = 0; n < rank; n++) + dest[n * dstride] = count[n] + 1; + } + base += sstride[0]; + } + while (++count[0] != extent[0]); + else + do + { + if (unlikely (*base < minval)) + { + minval = *base; + for (n = 0; n < rank; n++) + dest[n * dstride] = count[n] + 1; + } /* Implementation end. */ /* Advance to the next element. */ base += sstride[0]; @@ -198,6 +198,13 @@ index_type n; int mask_kind; + + if (mask == NULL) + { + minloc0_4_i4 (retarray, array, back); + return; + } + rank = GFC_DESCRIPTOR_RANK (array); if (rank <= 0) runtime_error ("Rank of array needs to be > 0"); @@ -368,7 +375,7 @@ index_type n; GFC_INTEGER_4 *dest; - if (*mask) + if (mask == NULL || *mask) { minloc0_4_i4 (retarray, array, back); return;