2018-12-29 19:10:57 +01:00
|
|
|
|
2018-12-29 Steven G. Kargl <kargl@gcc.gnu.org>
|
|
|
|
|
|
|
|
|
|
PR fortran/88342
|
|
|
|
|
* ieee/ieee_arithmetic.F90: Prevent exceptions in IEEE_VALUE if
|
|
|
|
|
-ffpe-trap=invalid or -ffpe-trap=overflow is used.
|
|
|
|
|
|
2018-12-28 19:26:09 +01:00
|
|
|
|
2018-12-28 Steven G. Kargl <kargl@gcc.gnu.org>
|
|
|
|
|
|
|
|
|
|
PR fortran/81984
|
|
|
|
|
* intrinsics/string_intrinsics_inc.c: Placate the sanitizer.
|
|
|
|
|
|
2018-12-21 22:09:17 +01:00
|
|
|
|
2018-12-21 Steven G. Kargl <kargl@gcc.gnu.org>
|
|
|
|
|
|
|
|
|
|
PR fortran/69121
|
|
|
|
|
* ieee/ieee_arithmetic.F90: Provide missing interfaces for IEEE_SCALB.
|
|
|
|
|
|
2018-12-20 20:39:30 +01:00
|
|
|
|
2018-12-20 Steven G. Kargl <kargl@gcc.gnu.org>
|
|
|
|
|
|
2018-12-21 22:09:17 +01:00
|
|
|
|
* ieee/ieee_arithmetic.F90: Re-organize file to
|
2018-12-20 20:39:30 +01:00
|
|
|
|
eliminate #ifdef ... #endif. No functional change.
|
|
|
|
|
|
2018-12-09 19:54:47 +01:00
|
|
|
|
2018-12-09 Thomas Koenig <tkoenig@gcc.gnu.org>
|
|
|
|
|
|
|
|
|
|
PR fortran/88411
|
|
|
|
|
* io/transfer.c (dta_transfer_init): Do not treat as an
|
|
|
|
|
asynchronous statement unless the statement has
|
|
|
|
|
ASYNCHRONOUS="YES".
|
|
|
|
|
(st_write_done): Likewise.
|
|
|
|
|
(st_read_done): Do not perform async_wait for synchronous I/O
|
|
|
|
|
on an async unit.
|
|
|
|
|
(st_read_done): Likewise.
|
|
|
|
|
|
2018-12-02 16:12:44 +01:00
|
|
|
|
2018-12-02 Janne Blomqvist <jb@gcc.gnu.org>
|
|
|
|
|
|
|
|
|
|
PR libfortran/88137
|
|
|
|
|
* runtime/backtrace.c (show_backtrace): Use atomic load/store to
|
|
|
|
|
access the static lbstate pointer.
|
|
|
|
|
|
2018-11-30 17:44:27 +01:00
|
|
|
|
2018-11-30 Janne Blomqvist <jb@gcc.gnu.org>
|
|
|
|
|
|
|
|
|
|
PR libfortran/88137
|
|
|
|
|
* runtime/backtrace.c (show_backtrace): Make lbstate a static
|
|
|
|
|
variable, initialize once.
|
|
|
|
|
|
2018-11-23 21:42:03 +01:00
|
|
|
|
2018-11-23 Janne Blomqvist <jb@gcc.gnu.org>
|
|
|
|
|
|
|
|
|
|
* runtime/error.c (MAGIC): Remove.
|
|
|
|
|
(recursion_key): New variable.
|
|
|
|
|
(recursion_check): Use thread-specific variable for recursion
|
|
|
|
|
check if threads are active.
|
|
|
|
|
(constructor_recursion_check): New function.
|
|
|
|
|
(destructor_recursion_check): New funcion.
|
|
|
|
|
|
2018-11-22 08:58:29 +01:00
|
|
|
|
2018-11-22 Janne Blomqvist <jb@gcc.gnu.org>
|
|
|
|
|
|
|
|
|
|
* acinclude.m4 (LIBGFOR_CHECK_ATOMIC_FETCH_ADD): Rename and test
|
|
|
|
|
presence of atomic builtins instead of sync builtins.
|
|
|
|
|
* configure.ac (LIBGFOR_CHECK_ATOMIC_FETCH_ADD): Call new test.
|
|
|
|
|
* io/io.h (inc_waiting_locked): Use __atomic_fetch_add.
|
|
|
|
|
(predec_waiting_locked): Use __atomic_add_fetch.
|
|
|
|
|
(dec_waiting_unlocked): Use __atomic_fetch_add.
|
|
|
|
|
* config.h.in: Regenerated.
|
|
|
|
|
* configure: Regenerated.
|
|
|
|
|
* Makefile.in: Regenerated.
|
|
|
|
|
|
2018-11-09 18:29:33 +01:00
|
|
|
|
2018-11-09 Jerry DeLisle <jvdelisle@gcc.gnu.org>
|
|
|
|
|
|
|
|
|
|
PR libfortran/78351
|
|
|
|
|
* io/transfer.c (read_sf_internal): Delete leftover
|
|
|
|
|
debug code.
|
|
|
|
|
|
2018-11-09 03:46:03 +01:00
|
|
|
|
2018-11-08 Jerry DeLisle <jvdelisle@gcc.gnu.org>
|
|
|
|
|
|
|
|
|
|
PR libfortran/78351
|
|
|
|
|
* io/transfer.c (read_sf_internal): Add support for early
|
|
|
|
|
comma termination of internal unit formatted reads.
|
|
|
|
|
|
Update GCC to autoconf 2.69, automake 1.15.1 (PR bootstrap/82856).
This patch updates GCC to use autoconf 2.69 and automake 1.15.1.
(That's not the latest automake version, but it's the one used by
binutils-gdb, with which consistency is desirable, and in any case
seems a useful incremental update that should make a future update to
1.16.1 easier.)
The changes are generally similar to the binutils-gdb ones, and are
copied from there where shared files and directories are involved
(there are some further changes to such shared directories, however,
which I'd expect to apply to binutils-gdb once this patch is in GCC).
Largely, obsolete AC_PREREQ calls are removed, while many
AC_LANG_SOURCE calls are added to avoid warnings from aclocal and
autoconf. Multilib support is no longer included in core automake,
meaning that multilib.am needs copying from automake's contrib
directory into the GCC source tree. Autoconf 2.69 has Go support, so
local copies of that support are removed. I hope the D support will
soon be submitted to upstream autoconf so the local copy of that can
be removed in a future update. Changes to how automake generates
runtest calls mean quotes are removed from RUNTEST definitions in five
lib*/testsuite/Makefile.am files (libatomic, libgomp, libitm,
libphobos, libvtv; some others have RUNTEST definitions without
quotes, which are still OK); libgo and libphobos also get
-Wno-override added to AM_INIT_AUTOMAKE so those overrides of RUNTEST
do not generate automake warnings.
Note that the regeneration did not include regeneration of
fixincludes/config.h.in (attempting such regeneration resulted in all
the USED_FOR_TARGET conditionals disappearing; and I don't see
anything in the fixincludes/ directory that would result in such
conditionals being generated, unlike in the gcc/ directory). Also
note that libvtv/testsuite/other-tests/Makefile.in was not
regenerated; that directory is not listed as a subdirectory for which
Makefile.in gets regenerated by calling "automake" in libvtv/, so I'm
not sure how it's meant to be regenerated.
While I mostly fixed warnings should running aclocal / automake /
autoconf, there were various such warnings from automake in the
libgfortran, libgo, libgomp, liboffloadmic, libsanitizer, libphobos
directories that I did not fix, preferring to leave those to the
relevant subsystem maintainers. Specifically, most of those warnings
were of the following form (example from libgfortran):
Makefile.am:48: warning: source file 'caf/single.c' is in a subdirectory,
Makefile.am:48: but option 'subdir-objects' is disabled
automake: warning: possible forward-incompatibility.
automake: At least a source file is in a subdirectory, but the 'subdir-objects'
automake: automake option hasn't been enabled. For now, the corresponding output
automake: object file(s) will be placed in the top-level directory. However,
automake: this behaviour will change in future Automake versions: they
will
automake: unconditionally cause object files to be placed in the same subdirectory
automake: of the corresponding sources.
automake: You are advised to start using 'subdir-objects' option throughout your
automake: project, to avoid future incompatibilities.
I think it's best for the relevant maintainers to add subdir-objects
and do any other associated Makefile.am changes needed. In some cases
the paths in the warnings involved ../; I don't know if that adds any
extra complications to the use of subdir-objects.
I've tested this with native, cross and Canadian cross builds. The
risk of any OS-specific issues should I hope be rather lower than if a
libtool upgrade were included (we *should* do such an upgrade at some
point, but it's more complicated - it involves identifying all our
local libtool changes to see if any aren't included in the upstream
version we update to, and reverting an upstream libtool patch that's
inappropriate for use in GCC); I think it would be better to get this
update into GCC so that people can test in different configurations
and we can fix any issues found, rather than to try to get more and
more testing done before it goes in.
top level:
2018-10-31 Joseph Myers <joseph@codesourcery.com>
PR bootstrap/82856
* multilib.am: New file. From automake.
Merge from binutils-gdb:
2018-06-19 Simon Marchi <simon.marchi@ericsson.com>
* libtool.m4: Use AC_LANG_SOURCE.
* configure.ac: Remove AC_PREREQ, use AC_LANG_SOURCE.
* ar-lib: New file.
* test-driver: New file.
* configure: Re-generate.
config:
2018-10-31 Joseph Myers <joseph@codesourcery.com>
PR bootstrap/82856
* math.m4, tls.m4: Use AC_LANG_SOURCE.
Merge from binutils-gdb:
2018-06-19 Simon Marchi <simon.marchi@ericsson.com>
* override.m4 (_GCC_AUTOCONF_VERSION): Bump from 2.64 to 2.69.
fixincludes:
2018-10-31 Joseph Myers <joseph@codesourcery.com>
PR bootstrap/82856
* configure.ac: Remove AC_PREREQ.
* aclocal.m4, configure: Regenerate.
gcc:
2018-10-31 Joseph Myers <joseph@codesourcery.com>
PR bootstrap/82856
* configure.ac: Remove AC_PREREQ. Use AC_LANG_SOURCE. Use single
line for second argument of AC_DEFINE_UNQUOTED.
* doc/install.texi (Tools/packages necessary for modifying GCC):
Update to autoconf 2.69 and automake 1.15.1.
* aclocal.m4, config.in, configure: Regenerate.
gnattools:
2018-10-31 Joseph Myers <joseph@codesourcery.com>
PR bootstrap/82856
* configure.ac: Remove AC_PREREQ.
* configure: Regenerate.
gotools:
2018-10-31 Joseph Myers <joseph@codesourcery.com>
PR bootstrap/82856
* config/go.m4: Remove file.
* Makefile.am (ACLOCAL_AMFLAGS): Do not use -I ./config.
* configure.ac: Remove AC_PREREQ. Do not include config/go.m4.
* Makefile.in, aclocal.m4, configure: Regenerate.
intl:
2018-10-31 Joseph Myers <joseph@codesourcery.com>
PR bootstrap/82856
Merge from binutils-gdb:
2018-06-19 Simon Marchi <simon.marchi@ericsson.com>
* configure.ac: Add AC_USE_SYSTEM_EXTENSIONS, remove AC_PREREQ.
* configure: Re-generate.
* config.h.in: Re-generate.
* aclocal.m4: Re-generate.
libada:
2018-10-31 Joseph Myers <joseph@codesourcery.com>
PR bootstrap/82856
* configure.ac: Remove AC_PREREQ.
* configure: Regenerate.
libatomic:
2018-10-31 Joseph Myers <joseph@codesourcery.com>
PR bootstrap/82856
* Makefile.am: Include multilib.am.
* acinclude.m4: Use AC_LANG_SOURCE.
* configure.ac: Remove AC_PREREQ.
* testsuite/Makefile.am (RUNTEST): Remove quotes.
* Makefile.in, aclocal.m4, configure, testsuite/Makefile.in:
Regenerate.
libbacktrace:
2018-10-31 Joseph Myers <joseph@codesourcery.com>
PR bootstrap/82856
* Makefile.am: Include multilib.am.
* configure.ac: Remove AC_PREREQ. Use AC_LANG_SOURCE.
* Makefile.in, aclocal.m4, config.h.in, configure: Regenerate.
libcc1:
2018-10-31 Joseph Myers <joseph@codesourcery.com>
PR bootstrap/82856
* configure.ac: Remove AC_PREREQ.
* Makefile.in, aclocal.m4, configure: Regenerate.
libcpp:
2018-10-31 Joseph Myers <joseph@codesourcery.com>
PR bootstrap/82856
* configure.ac: Remove AC_PREREQ. Use AC_LANG_SOURCE.
* aclocal.m4, config.in, configure: Regenerate.
libdecnumber:
2018-10-31 Joseph Myers <joseph@codesourcery.com>
PR bootstrap/82856
Merge from binutils-gdb:
2018-06-19 Simon Marchi <simon.marchi@ericsson.com>
* configure.ac: Remove AC_PREREQ.
* configure: Re-generate.
* aclocal.m4.
libffi:
2018-10-31 Joseph Myers <joseph@codesourcery.com>
PR bootstrap/82856
* Makefile.am: Include multilib.am.
(AUTOMAKE_OPTIONS): Add info-in-builddir.
(CLEANFILES): Remove doc/libffi.info.
* configure.ac: Remove AC_PREREQ.
* Makefile.in, aclocal.m4, configure, fficonfig.h.in,
include/Makefile.in, man/Makefile.in, testsuite/Makefile.in:
Regenerate.
libgcc:
2018-10-31 Joseph Myers <joseph@codesourcery.com>
PR bootstrap/82856
* configure.ac: Remove AC_PREREQ. Use AC_LANG_SOURCE.
* configure: Regenerate.
libgfortran:
2018-10-31 Joseph Myers <joseph@codesourcery.com>
PR bootstrap/82856
* Makefile.am: Include multilib.am.
* configure.ac: Remove AC_PREREQ.
* Makefile.in, aclocal.m4, config.h.in, configure: Regenerate.
libgo [logically part of this change but omitted from the commit]:
2018-10-31 Joseph Myers <joseph@codesourcery.com>
PR bootstrap/82856
* Makefile.am: Include multilib.am.
* config/go.m4: Remove file.
* config/libtool.m4: Use AC_LANG_SOURCE.
* configure.ac: Remove AC_PREREQ. Use AC_LANG_SOURCE. Use
-Wno-override in AM_INIT_AUTOMAKE call.
* Makefile.in, aclocal.m4, configure, testsuite/Makefile.in:
Regenerate.
libgomp:
2018-10-31 Joseph Myers <joseph@codesourcery.com>
PR bootstrap/82856
* Makefile.am: Include multilib.am
(AUTOMAKE_OPTIONS): Add info-in-builddir.
(CLEANFILES): Remove libgomp.info.
* configure.ac: Remove AC_PREREQ.
* testsuite/Makefile.am (RUNTEST): Remove quotes.
* Makefile.in, aclocal.m4, configure, testsuite/Makefile.in:
Regenerate.
libhsail-rt:
2018-10-31 Joseph Myers <joseph@codesourcery.com>
PR bootstrap/82856
* configure.ac: Remove AC_PREREQ.
* Makefile.in, aclocal.m4, configure: Regenerate.
libiberty:
2018-10-31 Joseph Myers <joseph@codesourcery.com>
PR bootstrap/82856
Merge from binutils-gdb:
2018-06-19 Simon Marchi <simon.marchi@ericsson.com>
* configure.ac: Remove AC_PREREQ.
* configure: Re-generate.
* config.in: Re-generate.
libitm:
2018-10-31 Joseph Myers <joseph@codesourcery.com>
PR bootstrap/82856
* Makefile.am: Include multilib.am.
(AUTOMAKE_OPTIONS): Add info-in-builddir.
(CLEANFILES): Remove libitm.info.
* configure.ac: Remove AC_PREREQ.
* testsuite/Makefile.am (RUNTEST): Remove quotes.
* Makefile.in, aclocal.m4, configure, testsuite/Makefile.in:
Regenerate.
libobjc:
2018-10-31 Joseph Myers <joseph@codesourcery.com>
PR bootstrap/82856
* configure.ac: Remove AC_PREREQ.
* aclocal.m4, config.h.in, configure: Regenerate.
liboffloadmic:
2018-10-31 Joseph Myers <joseph@codesourcery.com>
PR bootstrap/82856
* Makefile.am: Include multilib.am.
* configure.ac: Remove AC_PREREQ.
* plugin/Makefile.am: Include multilib.am.
* plugin/configure.ac: Remove AC_PREREQ.
* Makefile.in, aclocal.m4, configure, plugin/Makefile.in,
plugin/aclocal.m4, plugin/configure: Regenerate.
libphobos:
2018-10-31 Joseph Myers <joseph@codesourcery.com>
PR bootstrap/82856
* Makefile.am: Include multilib.am.
* configure.ac: Remove AC_PREREQ. Use -Wno-override in
AM_INIT_AUTOMAKE call.
* m4/autoconf.m4: Add extra argument to AC_LANG_DEFINE call.
* m4/druntime/os.m4: Use AC_LANG_SOURCE.
* testsuite/Makefile.am (RUNTEST): Remove quotes.
* Makefile.in, aclocal.m4, configure, libdruntime/Makefile.in,
src/Makefile.in, testsuite/Makefile.in: Regenerate.
libquadmath:
2018-10-31 Joseph Myers <joseph@codesourcery.com>
PR bootstrap/82856
* Makefile.am: Include multilib.am.
(AUTOMAKE_OPTIONS): Remove 1.8. Add info-in-builddir.
(all-local): Define outside conditional code.
(CLEANFILES): Remove libquadmath.info.
* configure.ac: Remove AC_PREREQ.
* Makefile.in, aclocal.m4, config.h.in, configure: Regenerate.
libsanitizer:
2018-10-31 Joseph Myers <joseph@codesourcery.com>
PR bootstrap/82856
* Makefile.am: Include multilib.am.
* configure.ac: Remove AC_PREREQ. Use AC_LANG_SOURCE.
* Makefile.in, aclocal.m4, asan/Makefile.in, configure,
interception/Makefile.in, libbacktrace/Makefile.in,
lsan/Makefile.in, sanitizer_common/Makefile.in, tsan/Makefile.in,
ubsan/Makefile.in: Regenerate.
libssp:
2018-10-31 Joseph Myers <joseph@codesourcery.com>
PR bootstrap/82856
* Makefile.am: Include multilib.am.
(AUTOMAKE_OPTIONS): Remove 1.9.5.
* configure.ac: Remove AC_PREREQ. Quote argument to
AC_RUN_IFELSE.
* Makefile.in, aclocal.m4, configure: Regenerate.
libstdc++-v3:
2018-10-31 Joseph Myers <joseph@codesourcery.com>
PR bootstrap/82856
* Makefile.am: Include multilib.am.
* configure.ac: Remove AC_PREREQ.
* Makefile.in, aclocal.m4, configure, doc/Makefile.in,
include/Makefile.in, libsupc++/Makefile.in, po/Makefile.in,
python/Makefile.in, src/Makefile.in, src/c++11/Makefile.in,
src/c++17/Makefile.in, src/c++98/Makefile.in,
src/filesystem/Makefile.in, testsuite/Makefile.in: Regenerate.
libvtv:
2018-10-31 Joseph Myers <joseph@codesourcery.com>
PR bootstrap/82856
* Makefile.am: Include multilib.am.
* configure.ac: Remove AC_PREREQ.
* testsuite/Makefile.am (RUNTEST): Remove quotes.
* Makefile.in, aclocal.m4, configure, testsuite/Makefile.in:
Regenerate.
lto-plugin:
2018-10-31 Joseph Myers <joseph@codesourcery.com>
PR bootstrap/82856
* configure.ac: Remove AC_PREREQ. Use AC_LANG_SOURCE.
* Makefile.in, aclocal.m4, config.h.in, configure: Regenerate.
zlib:
2018-10-31 Joseph Myers <joseph@codesourcery.com>
PR bootstrap/82856
* Makefile.am: Include multilib.am.
Merge from binutils-gdb:
2018-06-19 Simon Marchi <simon.marchi@ericsson.com>
* configure.ac: Modernize AC_INIT call, remove AC_PREREQ.
* Makefile.am (AUTOMAKE_OPTIONS): Remove 1.8, cygnus, add foreign.
* Makefile.in: Re-generate.
* aclocal.m4: Re-generate.
* configure: Re-generate.
From-SVN: r265695
2018-10-31 18:03:16 +01:00
|
|
|
|
2018-10-31 Joseph Myers <joseph@codesourcery.com>
|
|
|
|
|
|
|
|
|
|
PR bootstrap/82856
|
|
|
|
|
* Makefile.am: Include multilib.am.
|
|
|
|
|
* configure.ac: Remove AC_PREREQ.
|
|
|
|
|
* Makefile.in, aclocal.m4, config.h.in, configure: Regenerate.
|
|
|
|
|
|
2018-10-28 12:05:05 +01:00
|
|
|
|
2017-10-28 Thomas Koenig <tkoenig@gcc.gnu.org>
|
|
|
|
|
|
|
|
|
|
PR fortran/54613
|
|
|
|
|
* Makefile.am: Add files for findloc.
|
|
|
|
|
* Makefile.in: Regenerated.
|
|
|
|
|
* libgfortran.h (gfc_array_index_type): Add.
|
|
|
|
|
(gfc_array_s1): Add using GFC_UINTEGER_1.
|
|
|
|
|
(gfc_array_s4): Likewise.
|
|
|
|
|
Replace unnecessary comment.
|
|
|
|
|
(HAVE_GFC_UINTEGER_1): Define.
|
|
|
|
|
(HAVE_GFC_UINTEGER_4): Define.
|
|
|
|
|
* m4/findloc0.m4: New file.
|
|
|
|
|
* m4/findloc0s.m4: New file.
|
|
|
|
|
* m4/findloc1.m4: New file.
|
|
|
|
|
* m4/findloc1s.m4: New file.
|
|
|
|
|
* m4/findloc2s.m4: New file.
|
|
|
|
|
* m4/ifindloc0.m4: New file.
|
|
|
|
|
* m4/ifindloc1.m4: New file.
|
|
|
|
|
* m4/ifindloc2.m4: New file.
|
|
|
|
|
* m4/iparm.m4: Use unsigned integer for characters.
|
|
|
|
|
* generated/findloc0_c16.c: New file.
|
|
|
|
|
* generated/findloc0_c4.c: New file.
|
|
|
|
|
* generated/findloc0_c8.c: New file.
|
|
|
|
|
* generated/findloc0_i1.c: New file.
|
|
|
|
|
* generated/findloc0_i16.c: New file.
|
|
|
|
|
* generated/findloc0_i2.c: New file.
|
|
|
|
|
* generated/findloc0_i4.c: New file.
|
|
|
|
|
* generated/findloc0_i8.c: New file.
|
|
|
|
|
* generated/findloc0_r16.c: New file.
|
|
|
|
|
* generated/findloc0_r4.c: New file.
|
|
|
|
|
* generated/findloc0_r8.c: New file.
|
|
|
|
|
* generated/findloc0_s1.c: New file.
|
|
|
|
|
* generated/findloc0_s4.c: New file.
|
|
|
|
|
* generated/findloc1_c16.c: New file.
|
|
|
|
|
* generated/findloc1_c4.c: New file.
|
|
|
|
|
* generated/findloc1_c8.c: New file.
|
|
|
|
|
* generated/findloc1_i1.c: New file.
|
|
|
|
|
* generated/findloc1_i16.c: New file.
|
|
|
|
|
* generated/findloc1_i2.c: New file.
|
|
|
|
|
* generated/findloc1_i4.c: New file.
|
|
|
|
|
* generated/findloc1_i8.c: New file.
|
|
|
|
|
* generated/findloc1_r16.c: New file.
|
|
|
|
|
* generated/findloc1_r4.c: New file.
|
|
|
|
|
* generated/findloc1_r8.c: New file.
|
|
|
|
|
* generated/findloc1_s1.c: New file.
|
|
|
|
|
* generated/findloc1_s4.c: New file.
|
|
|
|
|
* generated/findloc2_s1.c: New file.
|
|
|
|
|
* generated/findloc2_s4.c: New file.
|
|
|
|
|
* generated/maxloc0_16_s1.c: Regenerated.
|
|
|
|
|
* generated/maxloc0_16_s4.c: Regenerated.
|
|
|
|
|
* generated/maxloc0_4_s1.c: Regenerated.
|
|
|
|
|
* generated/maxloc0_4_s4.c: Regenerated.
|
|
|
|
|
* generated/maxloc0_8_s1.c: Regenerated.
|
|
|
|
|
* generated/maxloc0_8_s4.c: Regenerated.
|
|
|
|
|
* generated/maxloc1_16_s1.c: Regenerated.
|
|
|
|
|
* generated/maxloc1_16_s4.c: Regenerated.
|
|
|
|
|
* generated/maxloc1_4_s1.c: Regenerated.
|
|
|
|
|
* generated/maxloc1_4_s4.c: Regenerated.
|
|
|
|
|
* generated/maxloc1_8_s1.c: Regenerated.
|
|
|
|
|
* generated/maxloc1_8_s4.c: Regenerated.
|
|
|
|
|
* generated/maxloc2_16_s1.c: Regenerated.
|
|
|
|
|
* generated/maxloc2_16_s4.c: Regenerated.
|
|
|
|
|
* generated/maxloc2_4_s1.c: Regenerated.
|
|
|
|
|
* generated/maxloc2_4_s4.c: Regenerated.
|
|
|
|
|
* generated/maxloc2_8_s1.c: Regenerated.
|
|
|
|
|
* generated/maxloc2_8_s4.c: Regenerated.
|
|
|
|
|
* generated/maxval0_s1.c: Regenerated.
|
|
|
|
|
* generated/maxval0_s4.c: Regenerated.
|
|
|
|
|
* generated/maxval1_s1.c: Regenerated.
|
|
|
|
|
* generated/maxval1_s4.c: Regenerated.
|
|
|
|
|
* generated/minloc0_16_s1.c: Regenerated.
|
|
|
|
|
* generated/minloc0_16_s4.c: Regenerated.
|
|
|
|
|
* generated/minloc0_4_s1.c: Regenerated.
|
|
|
|
|
* generated/minloc0_4_s4.c: Regenerated.
|
|
|
|
|
* generated/minloc0_8_s1.c: Regenerated.
|
|
|
|
|
* generated/minloc0_8_s4.c: Regenerated.
|
|
|
|
|
* generated/minloc1_16_s1.c: Regenerated.
|
|
|
|
|
* generated/minloc1_16_s4.c: Regenerated.
|
|
|
|
|
* generated/minloc1_4_s1.c: Regenerated.
|
|
|
|
|
* generated/minloc1_4_s4.c: Regenerated.
|
|
|
|
|
* generated/minloc1_8_s1.c: Regenerated.
|
|
|
|
|
* generated/minloc1_8_s4.c: Regenerated.
|
|
|
|
|
* generated/minloc2_16_s1.c: Regenerated.
|
|
|
|
|
* generated/minloc2_16_s4.c: Regenerated.
|
|
|
|
|
* generated/minloc2_4_s1.c: Regenerated.
|
|
|
|
|
* generated/minloc2_4_s4.c: Regenerated.
|
|
|
|
|
* generated/minloc2_8_s1.c: Regenerated.
|
|
|
|
|
* generated/minloc2_8_s4.c: Regenerated.
|
|
|
|
|
* generated/minval0_s1.c: Regenerated.
|
|
|
|
|
* generated/minval0_s4.c: Regenerated.
|
|
|
|
|
* generated/minval1_s1.c: Regenerated.
|
|
|
|
|
* generated/minval1_s4.c: Regenerated.
|
|
|
|
|
|
2018-10-06 20:21:00 +02:00
|
|
|
|
2018-10-06 Janne Blomqvist <jb@gcc.gnu.org>
|
|
|
|
|
|
|
|
|
|
* io/unix.c (compare_file_filename): Use gfc_charlen_type instead
|
|
|
|
|
of int for string length.
|
|
|
|
|
(inquire_sequential): Likewise.
|
|
|
|
|
(inquire_direct): Likewise.
|
|
|
|
|
(inquire_formatted): Likewise.
|
|
|
|
|
(inquire_unformatted): Likewise.
|
|
|
|
|
(inquire_access): Likewise.
|
|
|
|
|
(inquire_read): Likewise.
|
|
|
|
|
(inquire_write): Likewise.
|
|
|
|
|
(inquire_readwrite): Likewise.
|
|
|
|
|
* io/unix.h (compare_file_filename): Likewise.
|
|
|
|
|
(inquire_sequential): Likewise.
|
|
|
|
|
(inquire_direct): Likewise.
|
|
|
|
|
(inquire_formatted): Likewise.
|
|
|
|
|
(inquire_unformatted): Likewise.
|
|
|
|
|
(inquire_read): Likewise.
|
|
|
|
|
(inquire_write): Likewise.
|
|
|
|
|
(inquire_readwrite): Likewise.
|
|
|
|
|
|
2018-10-02 22:02:03 +02:00
|
|
|
|
2018-10-02 Gerald Pfeifer <gerald@pfeifer.com>
|
|
|
|
|
|
|
|
|
|
* io/close.c [!HAVE_UNLINK_OPEN_FILE]: Include <string.h>.
|
|
|
|
|
|
2018-09-21 20:12:59 +02:00
|
|
|
|
2018-09-21 Janne Blomqvist <jb@gcc.gnu.org>
|
|
|
|
|
|
|
|
|
|
* config.h.in: Regenerated.
|
|
|
|
|
* configure: Regenerated.
|
|
|
|
|
* configure.ac: Check for writev and sys/uio.h.
|
|
|
|
|
* libgfortran.h: Include sys/uio.h.
|
|
|
|
|
(st_vprintf): Remove prototype.
|
|
|
|
|
(struct iovec): Define if not available.
|
|
|
|
|
(estr_writev): New prototype.
|
|
|
|
|
* runtime/backtrace.c (error_callback): Use estr_writev.
|
|
|
|
|
* runtime/error.c (ST_VPRINTF_SIZE): Remove.
|
|
|
|
|
(estr_writev): New function.
|
|
|
|
|
(st_vprintf): Remove.
|
|
|
|
|
(gf_vsnprintf): New function.
|
|
|
|
|
(ST_ERRBUF_SIZE): New macro.
|
|
|
|
|
(st_printf): Use vsnprintf.
|
|
|
|
|
(os_error): Use estr_writev.
|
|
|
|
|
(runtime_error): Use vsnprintf and estr_writev.
|
|
|
|
|
(runtime_error_at): Likewise.
|
|
|
|
|
(runtime_warning_at): Likewise.
|
|
|
|
|
(internal_error): Use estr_writev.
|
|
|
|
|
(generate_error_common): Likewise.
|
|
|
|
|
(generate_warning): Likewise.
|
|
|
|
|
(notify_std): Likewise.
|
|
|
|
|
* runtime/pause.c (pause_string): Likewise.
|
|
|
|
|
* runtime/stop.c (report_exception): Likewise.
|
|
|
|
|
(stop_string): Likewise.
|
|
|
|
|
(error_stop_string): Likewise.
|
|
|
|
|
|
2018-09-16 21:37:44 +02:00
|
|
|
|
2018-09-16 Thomas Koenig <tkoenig@gcc.gnu.org>
|
|
|
|
|
|
|
|
|
|
PR fortran/37802
|
|
|
|
|
* m4/matmul_internal.m4: Adjust error messages.
|
|
|
|
|
* generated/matmul_c10.c: Regenerated.
|
|
|
|
|
* generated/matmul_c16.c: Regenerated.
|
|
|
|
|
* generated/matmul_c4.c: Regenerated.
|
|
|
|
|
* generated/matmul_c8.c: Regenerated.
|
|
|
|
|
* generated/matmul_i1.c: Regenerated.
|
|
|
|
|
* generated/matmul_i16.c: Regenerated.
|
|
|
|
|
* generated/matmul_i2.c: Regenerated.
|
|
|
|
|
* generated/matmul_i4.c: Regenerated.
|
|
|
|
|
* generated/matmul_i8.c: Regenerated.
|
|
|
|
|
* generated/matmul_r10.c: Regenerated.
|
|
|
|
|
* generated/matmul_r16.c: Regenerated.
|
|
|
|
|
* generated/matmul_r4.c: Regenerated.
|
|
|
|
|
* generated/matmul_r8.c: Regenerated.
|
|
|
|
|
* generated/matmulavx128_c10.c: Regenerated.
|
|
|
|
|
* generated/matmulavx128_c16.c: Regenerated.
|
|
|
|
|
* generated/matmulavx128_c4.c: Regenerated.
|
|
|
|
|
* generated/matmulavx128_c8.c: Regenerated.
|
|
|
|
|
* generated/matmulavx128_i1.c: Regenerated.
|
|
|
|
|
* generated/matmulavx128_i16.c: Regenerated.
|
|
|
|
|
* generated/matmulavx128_i2.c: Regenerated.
|
|
|
|
|
* generated/matmulavx128_i4.c: Regenerated.
|
|
|
|
|
* generated/matmulavx128_i8.c: Regenerated.
|
|
|
|
|
* generated/matmulavx128_r10.c: Regenerated.
|
|
|
|
|
* generated/matmulavx128_r16.c: Regenerated.
|
|
|
|
|
* generated/matmulavx128_r4.c: Regenerated.
|
|
|
|
|
* generated/matmulavx128_r8.c: Regenerated.
|
|
|
|
|
|
2018-09-14 11:22:01 +02:00
|
|
|
|
2018-09-14 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
|
|
|
|
|
|
|
|
|
|
* io/unix.c (fallback_access): Avoid calling close on
|
|
|
|
|
uninitialized file descriptor.
|
|
|
|
|
|
2018-09-12 15:53:34 +02:00
|
|
|
|
2018-09-12 Kwok Cheung Yeung <kcy@codesourcery.com>
|
|
|
|
|
|
|
|
|
|
* runtime/minimal.c (estr_write): Define in terms of write.
|
|
|
|
|
|
2018-09-12 15:53:32 +02:00
|
|
|
|
2018-09-12 Andrew Stubbs <ams@codesourcery.com>
|
|
|
|
|
|
|
|
|
|
* runtime/minimal.c (exit): Only work around nvptx bugs on nvptx.
|
|
|
|
|
|
2018-09-07 20:59:50 +02:00
|
|
|
|
2018-09-07 Janne Blomqvist <jb@gcc.gnu.org>
|
|
|
|
|
|
|
|
|
|
* runtime/environ.c (init_unsigned_integer): Remove.
|
|
|
|
|
|
2018-09-05 12:28:45 +02:00
|
|
|
|
2018-09-05 Hans-Peter Nilsson <hp@axis.com>
|
|
|
|
|
|
|
|
|
|
* io/async.h: Use __gthread_mutex_t, not pthread_mutex_t.
|
|
|
|
|
|
2018-09-02 17:55:51 +02:00
|
|
|
|
2018-09-01 Jerry DeLisle <jvdelisle@gcc.gnu.org>
|
|
|
|
|
|
|
|
|
|
* io/io.h: Change declaration of vlist type to
|
|
|
|
|
gfc_full_array_i4 to eliminate warning for mismatched type.
|
|
|
|
|
* io/format.c ((parse_format_list): Use gfc_full_array_i4.
|
|
|
|
|
* io/io.h: Use gfc_full_array_i4.
|
|
|
|
|
|
2018-08-25 23:31:30 +02:00
|
|
|
|
2018-08-25 Thomas Koenig <tkoenig@gcc.gnu.org>
|
|
|
|
|
|
|
|
|
|
PR libfortran/86704
|
|
|
|
|
* m4/matmul_internal.m4: Correct calculation of needed buffer size
|
|
|
|
|
for arrays of shape (1,n).
|
|
|
|
|
* generated/matmul_c10.c: Regenerated
|
|
|
|
|
* generated/matmul_c16.c: Regenerated
|
|
|
|
|
* generated/matmul_c4.c: Regenerated
|
|
|
|
|
* generated/matmul_c8.c: Regenerated
|
|
|
|
|
* generated/matmul_i1.c: Regenerated
|
|
|
|
|
* generated/matmul_i16.c: Regenerated
|
|
|
|
|
* generated/matmul_i2.c: Regenerated
|
|
|
|
|
* generated/matmul_i4.c: Regenerated
|
|
|
|
|
* generated/matmul_i8.c: Regenerated
|
|
|
|
|
* generated/matmul_r10.c: Regenerated
|
|
|
|
|
* generated/matmul_r16.c: Regenerated
|
|
|
|
|
* generated/matmul_r4.c: Regenerated
|
|
|
|
|
* generated/matmul_r8.c: Regenerated
|
|
|
|
|
* generated/matmulavx128_c10.c: Regenerated
|
|
|
|
|
* generated/matmulavx128_c16.c: Regenerated
|
|
|
|
|
* generated/matmulavx128_c4.c: Regenerated
|
|
|
|
|
* generated/matmulavx128_c8.c: Regenerated
|
|
|
|
|
* generated/matmulavx128_i1.c: Regenerated
|
|
|
|
|
* generated/matmulavx128_i16.c: Regenerated
|
|
|
|
|
* generated/matmulavx128_i2.c: Regenerated
|
|
|
|
|
* generated/matmulavx128_i4.c: Regenerated
|
|
|
|
|
* generated/matmulavx128_i8.c: Regenerated
|
|
|
|
|
* generated/matmulavx128_r10.c: Regenerated
|
|
|
|
|
* generated/matmulavx128_r16.c: Regenerated
|
|
|
|
|
* generated/matmulavx128_r4.c: Regenerated
|
|
|
|
|
* generated/matmulavx128_r8.c: Regenerated
|
|
|
|
|
|
2018-08-23 21:33:45 +02:00
|
|
|
|
2018-08-23 David Edelsohn <dje.gcc@gmail.com>
|
|
|
|
|
|
|
|
|
|
* async.h (ASYNC_IO): Revert _AIX test.
|
|
|
|
|
|
2018-08-22 23:29:49 +02:00
|
|
|
|
2018-08-22 Thomas Koenig <tkoenig@gcc.gnu.org>
|
|
|
|
|
|
|
|
|
|
* async.h: Set ASYNC_IO to zero if _AIX is defined.
|
|
|
|
|
(struct adv_cond): If ASYNC_IO is zero, the struct has no members.
|
|
|
|
|
(async_unit): If ASYNC_IO is zero, remove unneeded members.
|
|
|
|
|
|
2018-08-21 20:48:59 +02:00
|
|
|
|
2018-08-21 Nicolas Koenig <koenigni@gcc.gnu.org>
|
|
|
|
|
Thomas Koenig <tkoenig@gcc.gnu.org>
|
|
|
|
|
|
|
|
|
|
PR fortran/25829
|
|
|
|
|
* Makefile.am: Add async.c to gfor_io_src.
|
|
|
|
|
Add async.h to gfor_io_headers.
|
|
|
|
|
* Makefile.in: Regenerated.
|
|
|
|
|
* gfortran.map: Add _gfortran_st_wait_async.
|
|
|
|
|
* io/async.c: New file.
|
|
|
|
|
* io/async.h: New file.
|
|
|
|
|
* io/close.c: Include async.h.
|
|
|
|
|
(st_close): Call async_wait for an asynchronous unit.
|
|
|
|
|
* io/file_pos.c (st_backspace): Likewise.
|
|
|
|
|
(st_endfile): Likewise.
|
|
|
|
|
(st_rewind): Likewise.
|
|
|
|
|
(st_flush): Likewise.
|
|
|
|
|
* io/inquire.c: Add handling for asynchronous PENDING
|
|
|
|
|
and ID arguments.
|
|
|
|
|
* io/io.h (st_parameter_dt): Add async bit.
|
|
|
|
|
(st_parameter_wait): Correct.
|
|
|
|
|
(gfc_unit): Add au pointer.
|
|
|
|
|
(st_wait_async): Add prototype.
|
|
|
|
|
(transfer_array_inner): Likewise.
|
|
|
|
|
(st_write_done_worker): Likewise.
|
|
|
|
|
* io/open.c: Include async.h.
|
|
|
|
|
(new_unit): Initialize asynchronous unit.
|
|
|
|
|
* io/transfer.c (async_opt): New struct.
|
|
|
|
|
(wrap_scalar_transfer): New function.
|
|
|
|
|
(transfer_integer): Call wrap_scalar_transfer to do the work.
|
|
|
|
|
(transfer_real): Likewise.
|
|
|
|
|
(transfer_real_write): Likewise.
|
|
|
|
|
(transfer_character): Likewise.
|
|
|
|
|
(transfer_character_wide): Likewise.
|
|
|
|
|
(transfer_complex): Likewise.
|
|
|
|
|
(transfer_array_inner): New function.
|
|
|
|
|
(transfer_array): Call transfer_array_inner.
|
|
|
|
|
(transfer_derived): Call wrap_scalar_transfer.
|
|
|
|
|
(data_transfer_init): Check for asynchronous I/O.
|
|
|
|
|
Perform a wait operation on any pending asynchronous I/O
|
|
|
|
|
if the data transfer is synchronous. Copy PDT and enqueue
|
|
|
|
|
thread for data transfer.
|
|
|
|
|
(st_read_done_worker): New function.
|
|
|
|
|
(st_read_done): Enqueue transfer or call st_read_done_worker.
|
|
|
|
|
(st_write_done_worker): New function.
|
|
|
|
|
(st_write_done): Enqueue transfer or call st_read_done_worker.
|
|
|
|
|
(st_wait): Document as no-op for compatibility reasons.
|
|
|
|
|
(st_wait_async): New function.
|
|
|
|
|
* io/unit.c (insert_unit): Use macros LOCK, UNLOCK and TRYLOCK;
|
|
|
|
|
add NOTE where necessary.
|
|
|
|
|
(get_gfc_unit): Likewise.
|
|
|
|
|
(init_units): Likewise.
|
|
|
|
|
(close_unit_1): Likewise. Call async_close if asynchronous.
|
|
|
|
|
(close_unit): Use macros LOCK and UNLOCK.
|
|
|
|
|
(finish_last_advance_record): Likewise.
|
|
|
|
|
(newunit_alloc): Likewise.
|
|
|
|
|
* io/unix.c (find_file): Likewise.
|
|
|
|
|
(flush_all_units_1): Likewise.
|
|
|
|
|
(flush_all_units): Likewise.
|
|
|
|
|
* libgfortran.h (generate_error_common): Add prototype.
|
|
|
|
|
* runtime/error.c: Include io.h and async.h.
|
|
|
|
|
(generate_error_common): New function.
|
|
|
|
|
|
2018-08-15 00:51:36 +02:00
|
|
|
|
2018-08-15 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
|
|
|
|
|
|
|
|
|
|
* configure.ac: Check for <sys/random.h>.
|
|
|
|
|
* configure, config.h.in: Regenerate.
|
|
|
|
|
* intrinsics/random.c [HAVE_SYS_RANDOM_H]: Include <sys/random.h>.
|
|
|
|
|
|
2018-08-13 22:21:50 +02:00
|
|
|
|
2018-08-13 Janne Blomqvist <jb@gcc.gnu.org>
|
|
|
|
|
|
|
|
|
|
* configure.ac: Check for getentropy.
|
|
|
|
|
* intrinsics/random.c (getosrandom): Use getentropy if available.
|
|
|
|
|
* config.h.in: Regenerated.
|
|
|
|
|
* configure: Regenerated.
|
|
|
|
|
|
2018-07-31 10:42:21 +02:00
|
|
|
|
2018-07-31 Andre Vieira <andre.simoesdiasvieira@arm.com>
|
|
|
|
|
|
|
|
|
|
Revert 'AsyncI/O patch committed'
|
|
|
|
|
2018-07-25 Nicolas Koenig <koenigni@gcc.gnu.org>
|
|
|
|
|
Thomas Koenig <tkoenig@gcc.gnu.org>
|
|
|
|
|
|
|
|
|
|
PR fortran/25829
|
|
|
|
|
* Makefile.am: Add async.c to gfor_io_src.
|
|
|
|
|
Add async.h to gfor_io_headers.
|
|
|
|
|
* Makefile.in: Regenerated.
|
|
|
|
|
* gfortran.map: Add _gfortran_st_wait_async.
|
|
|
|
|
* io/async.c: New file.
|
|
|
|
|
* io/async.h: New file.
|
|
|
|
|
* io/close.c: Include async.h.
|
|
|
|
|
(st_close): Call async_wait for an asynchronous unit.
|
|
|
|
|
* io/file_pos.c (st_backspace): Likewise.
|
|
|
|
|
(st_endfile): Likewise.
|
|
|
|
|
(st_rewind): Likewise.
|
|
|
|
|
(st_flush): Likewise.
|
|
|
|
|
* io/inquire.c: Add handling for asynchronous PENDING
|
|
|
|
|
and ID arguments.
|
|
|
|
|
* io/io.h (st_parameter_dt): Add async bit.
|
|
|
|
|
(st_parameter_wait): Correct.
|
|
|
|
|
(gfc_unit): Add au pointer.
|
|
|
|
|
(st_wait_async): Add prototype.
|
|
|
|
|
(transfer_array_inner): Likewise.
|
|
|
|
|
(st_write_done_worker): Likewise.
|
|
|
|
|
* io/open.c: Include async.h.
|
|
|
|
|
(new_unit): Initialize asynchronous unit.
|
|
|
|
|
* io/transfer.c (async_opt): New struct.
|
|
|
|
|
(wrap_scalar_transfer): New function.
|
|
|
|
|
(transfer_integer): Call wrap_scalar_transfer to do the work.
|
|
|
|
|
(transfer_real): Likewise.
|
|
|
|
|
(transfer_real_write): Likewise.
|
|
|
|
|
(transfer_character): Likewise.
|
|
|
|
|
(transfer_character_wide): Likewise.
|
|
|
|
|
(transfer_complex): Likewise.
|
|
|
|
|
(transfer_array_inner): New function.
|
|
|
|
|
(transfer_array): Call transfer_array_inner.
|
|
|
|
|
(transfer_derived): Call wrap_scalar_transfer.
|
|
|
|
|
(data_transfer_init): Check for asynchronous I/O.
|
|
|
|
|
Perform a wait operation on any pending asynchronous I/O
|
|
|
|
|
if the data transfer is synchronous. Copy PDT and enqueue
|
|
|
|
|
thread for data transfer.
|
|
|
|
|
(st_read_done_worker): New function.
|
|
|
|
|
(st_read_done): Enqueue transfer or call st_read_done_worker.
|
|
|
|
|
(st_write_done_worker): New function.
|
|
|
|
|
(st_write_done): Enqueue transfer or call st_read_done_worker.
|
|
|
|
|
(st_wait): Document as no-op for compatibility reasons.
|
|
|
|
|
(st_wait_async): New function.
|
|
|
|
|
* io/unit.c (insert_unit): Use macros LOCK, UNLOCK and TRYLOCK;
|
|
|
|
|
add NOTE where necessary.
|
|
|
|
|
(get_gfc_unit): Likewise.
|
|
|
|
|
(init_units): Likewise.
|
|
|
|
|
(close_unit_1): Likewise. Call async_close if asynchronous.
|
|
|
|
|
(close_unit): Use macros LOCK and UNLOCK.
|
|
|
|
|
(finish_last_advance_record): Likewise.
|
|
|
|
|
(newunit_alloc): Likewise.
|
|
|
|
|
* io/unix.c (find_file): Likewise.
|
|
|
|
|
(flush_all_units_1): Likewise.
|
|
|
|
|
(flush_all_units): Likewise.
|
|
|
|
|
* libgfortran.h (generate_error_common): Add prototype.
|
|
|
|
|
* runtime/error.c: Include io.h and async.h.
|
|
|
|
|
(generate_error_common): New function.
|
|
|
|
|
|
2018-07-25 20:48:39 +02:00
|
|
|
|
2018-07-25 Nicolas Koenig <koenigni@gcc.gnu.org>
|
|
|
|
|
Thomas Koenig <tkoenig@gcc.gnu.org>
|
|
|
|
|
|
|
|
|
|
PR fortran/25829
|
|
|
|
|
* Makefile.am: Add async.c to gfor_io_src.
|
|
|
|
|
Add async.h to gfor_io_headers.
|
|
|
|
|
* Makefile.in: Regenerated.
|
|
|
|
|
* gfortran.map: Add _gfortran_st_wait_async.
|
|
|
|
|
* io/async.c: New file.
|
|
|
|
|
* io/async.h: New file.
|
|
|
|
|
* io/close.c: Include async.h.
|
|
|
|
|
(st_close): Call async_wait for an asynchronous unit.
|
|
|
|
|
* io/file_pos.c (st_backspace): Likewise.
|
|
|
|
|
(st_endfile): Likewise.
|
|
|
|
|
(st_rewind): Likewise.
|
|
|
|
|
(st_flush): Likewise.
|
|
|
|
|
* io/inquire.c: Add handling for asynchronous PENDING
|
|
|
|
|
and ID arguments.
|
|
|
|
|
* io/io.h (st_parameter_dt): Add async bit.
|
|
|
|
|
(st_parameter_wait): Correct.
|
|
|
|
|
(gfc_unit): Add au pointer.
|
|
|
|
|
(st_wait_async): Add prototype.
|
|
|
|
|
(transfer_array_inner): Likewise.
|
|
|
|
|
(st_write_done_worker): Likewise.
|
|
|
|
|
* io/open.c: Include async.h.
|
|
|
|
|
(new_unit): Initialize asynchronous unit.
|
|
|
|
|
* io/transfer.c (async_opt): New struct.
|
|
|
|
|
(wrap_scalar_transfer): New function.
|
|
|
|
|
(transfer_integer): Call wrap_scalar_transfer to do the work.
|
|
|
|
|
(transfer_real): Likewise.
|
|
|
|
|
(transfer_real_write): Likewise.
|
|
|
|
|
(transfer_character): Likewise.
|
|
|
|
|
(transfer_character_wide): Likewise.
|
|
|
|
|
(transfer_complex): Likewise.
|
|
|
|
|
(transfer_array_inner): New function.
|
|
|
|
|
(transfer_array): Call transfer_array_inner.
|
|
|
|
|
(transfer_derived): Call wrap_scalar_transfer.
|
|
|
|
|
(data_transfer_init): Check for asynchronous I/O.
|
|
|
|
|
Perform a wait operation on any pending asynchronous I/O
|
|
|
|
|
if the data transfer is synchronous. Copy PDT and enqueue
|
|
|
|
|
thread for data transfer.
|
|
|
|
|
(st_read_done_worker): New function.
|
|
|
|
|
(st_read_done): Enqueue transfer or call st_read_done_worker.
|
|
|
|
|
(st_write_done_worker): New function.
|
|
|
|
|
(st_write_done): Enqueue transfer or call st_read_done_worker.
|
|
|
|
|
(st_wait): Document as no-op for compatibility reasons.
|
|
|
|
|
(st_wait_async): New function.
|
|
|
|
|
* io/unit.c (insert_unit): Use macros LOCK, UNLOCK and TRYLOCK;
|
|
|
|
|
add NOTE where necessary.
|
|
|
|
|
(get_gfc_unit): Likewise.
|
|
|
|
|
(init_units): Likewise.
|
|
|
|
|
(close_unit_1): Likewise. Call async_close if asynchronous.
|
|
|
|
|
(close_unit): Use macros LOCK and UNLOCK.
|
|
|
|
|
(finish_last_advance_record): Likewise.
|
|
|
|
|
(newunit_alloc): Likewise.
|
|
|
|
|
* io/unix.c (find_file): Likewise.
|
|
|
|
|
(flush_all_units_1): Likewise.
|
|
|
|
|
(flush_all_units): Likewise.
|
|
|
|
|
* libgfortran.h (generate_error_common): Add prototype.
|
|
|
|
|
* runtime/error.c: Include io.h and async.h.
|
|
|
|
|
(generate_error_common): New function.
|
|
|
|
|
|
2018-06-10 03:49:02 +02:00
|
|
|
|
2018-06-09 Jerry DeLisle <jvdelisle@gcc.gnu.org>
|
|
|
|
|
|
|
|
|
|
PR libgfortran/86070
|
|
|
|
|
* io/write_float.def (build_float_string): Initialize *len.
|
|
|
|
|
|
2018-06-01 22:20:35 +02:00
|
|
|
|
2018-06-01 Steven G. Kargl <kargl@gcc.gnu.org>
|
|
|
|
|
|
|
|
|
|
PR fortran/85816
|
|
|
|
|
PR fortran/85975
|
|
|
|
|
* libgfortran.h: Remove the GFC_DTYPE_COPY_SETRANK macro.
|
|
|
|
|
* intrinsics/reshape_generic.c: Directly assign rank.
|
|
|
|
|
* intrinsics/spread_generic.c: Ditto.
|
|
|
|
|
* m4/iforeach-s.m4: Ditto.
|
|
|
|
|
* m4/iforeach.m4: Ditto.
|
|
|
|
|
* m4/ifunction-s.m4: Ditto.
|
|
|
|
|
* m4/ifunction-s2.m4: Ditto.
|
|
|
|
|
* m4/ifunction.m4: Ditto.
|
|
|
|
|
* m4/ifunction_logical.m4: Ditto.
|
|
|
|
|
* m4/reshape.m4: Ditto.
|
|
|
|
|
* m4/spread.m4: Ditto.
|
|
|
|
|
* generated/all_l1.c: Regenerated from m4 files.
|
|
|
|
|
* generated/all_l16.c: Ditto.
|
|
|
|
|
* generated/all_l2.c: Ditto.
|
|
|
|
|
* generated/all_l4.c: Ditto.
|
|
|
|
|
* generated/all_l8.c: Ditto.
|
|
|
|
|
* generated/any_l1.c: Ditto.
|
|
|
|
|
* generated/any_l16.c: Ditto.
|
|
|
|
|
* generated/any_l2.c: Ditto.
|
|
|
|
|
* generated/any_l4.c: Ditto.
|
|
|
|
|
* generated/any_l8.c: Ditto.
|
|
|
|
|
* generated/count_16_l.c: Ditto.
|
|
|
|
|
* generated/count_1_l.c: Ditto.
|
|
|
|
|
* generated/count_2_l.c: Ditto.
|
|
|
|
|
* generated/count_4_l.c: Ditto.
|
|
|
|
|
* generated/count_8_l.c: Ditto.
|
|
|
|
|
* generated/iall_i1.c: Ditto.
|
|
|
|
|
* generated/iall_i16.c: Ditto.
|
|
|
|
|
* generated/iall_i2.c: Ditto.
|
|
|
|
|
* generated/iall_i4.c: Ditto.
|
|
|
|
|
* generated/iall_i8.c: Ditto.
|
|
|
|
|
* generated/iany_i1.c: Ditto.
|
|
|
|
|
* generated/iany_i16.c: Ditto.
|
|
|
|
|
* generated/iany_i2.c: Ditto.
|
|
|
|
|
* generated/iany_i4.c: Ditto.
|
|
|
|
|
* generated/iany_i8.c: Ditto.
|
|
|
|
|
* generated/iparity_i1.c: Ditto.
|
|
|
|
|
* generated/iparity_i16.c: Ditto.
|
|
|
|
|
* generated/iparity_i2.c: Ditto.
|
|
|
|
|
* generated/iparity_i4.c: Ditto.
|
|
|
|
|
* generated/iparity_i8.c: Ditto.
|
|
|
|
|
* generated/maxloc0_16_i1.c: Ditto.
|
|
|
|
|
* generated/maxloc0_16_i16.c: Ditto.
|
|
|
|
|
* generated/maxloc0_16_i2.c: Ditto.
|
|
|
|
|
* generated/maxloc0_16_i4.c: Ditto.
|
|
|
|
|
* generated/maxloc0_16_i8.c: Ditto.
|
|
|
|
|
* generated/maxloc0_16_r10.c: Ditto.
|
|
|
|
|
* generated/maxloc0_16_r16.c: Ditto.
|
|
|
|
|
* generated/maxloc0_16_r4.c: Ditto.
|
|
|
|
|
* generated/maxloc0_16_r8.c: Ditto.
|
|
|
|
|
* generated/maxloc0_16_s1.c: Ditto.
|
|
|
|
|
* generated/maxloc0_16_s4.c: Ditto.
|
|
|
|
|
* generated/maxloc0_4_i1.c: Ditto.
|
|
|
|
|
* generated/maxloc0_4_i16.c: Ditto.
|
|
|
|
|
* generated/maxloc0_4_i2.c: Ditto.
|
|
|
|
|
* generated/maxloc0_4_i4.c: Ditto.
|
|
|
|
|
* generated/maxloc0_4_i8.c: Ditto.
|
|
|
|
|
* generated/maxloc0_4_r10.c: Ditto.
|
|
|
|
|
* generated/maxloc0_4_r16.c: Ditto.
|
|
|
|
|
* generated/maxloc0_4_r4.c: Ditto.
|
|
|
|
|
* generated/maxloc0_4_r8.c: Ditto.
|
|
|
|
|
* generated/maxloc0_4_s1.c: Ditto.
|
|
|
|
|
* generated/maxloc0_4_s4.c: Ditto.
|
|
|
|
|
* generated/maxloc0_8_i1.c: Ditto.
|
|
|
|
|
* generated/maxloc0_8_i16.c: Ditto.
|
|
|
|
|
* generated/maxloc0_8_i2.c: Ditto.
|
|
|
|
|
* generated/maxloc0_8_i4.c: Ditto.
|
|
|
|
|
* generated/maxloc0_8_i8.c: Ditto.
|
|
|
|
|
* generated/maxloc0_8_r10.c: Ditto.
|
|
|
|
|
* generated/maxloc0_8_r16.c: Ditto.
|
|
|
|
|
* generated/maxloc0_8_r4.c: Ditto.
|
|
|
|
|
* generated/maxloc0_8_r8.c: Ditto.
|
|
|
|
|
* generated/maxloc0_8_s1.c: Ditto.
|
|
|
|
|
* generated/maxloc0_8_s4.c: Ditto.
|
|
|
|
|
* generated/maxloc1_16_i1.c: Ditto.
|
|
|
|
|
* generated/maxloc1_16_i16.c: Ditto.
|
|
|
|
|
* generated/maxloc1_16_i2.c: Ditto.
|
|
|
|
|
* generated/maxloc1_16_i4.c: Ditto.
|
|
|
|
|
* generated/maxloc1_16_i8.c: Ditto.
|
|
|
|
|
* generated/maxloc1_16_r10.c: Ditto.
|
|
|
|
|
* generated/maxloc1_16_r16.c: Ditto.
|
|
|
|
|
* generated/maxloc1_16_r4.c: Ditto.
|
|
|
|
|
* generated/maxloc1_16_r8.c: Ditto.
|
|
|
|
|
* generated/maxloc1_16_s1.c: Ditto.
|
|
|
|
|
* generated/maxloc1_16_s4.c: Ditto.
|
|
|
|
|
* generated/maxloc1_4_i1.c: Ditto.
|
|
|
|
|
* generated/maxloc1_4_i16.c: Ditto.
|
|
|
|
|
* generated/maxloc1_4_i2.c: Ditto.
|
|
|
|
|
* generated/maxloc1_4_i4.c: Ditto.
|
|
|
|
|
* generated/maxloc1_4_i8.c: Ditto.
|
|
|
|
|
* generated/maxloc1_4_r10.c: Ditto.
|
|
|
|
|
* generated/maxloc1_4_r16.c: Ditto.
|
|
|
|
|
* generated/maxloc1_4_r4.c: Ditto.
|
|
|
|
|
* generated/maxloc1_4_r8.c: Ditto.
|
|
|
|
|
* generated/maxloc1_4_s1.c: Ditto.
|
|
|
|
|
* generated/maxloc1_4_s4.c: Ditto.
|
|
|
|
|
* generated/maxloc1_8_i1.c: Ditto.
|
|
|
|
|
* generated/maxloc1_8_i16.c: Ditto.
|
|
|
|
|
* generated/maxloc1_8_i2.c: Ditto.
|
|
|
|
|
* generated/maxloc1_8_i4.c: Ditto.
|
|
|
|
|
* generated/maxloc1_8_i8.c: Ditto.
|
|
|
|
|
* generated/maxloc1_8_r10.c: Ditto.
|
|
|
|
|
* generated/maxloc1_8_r16.c: Ditto.
|
|
|
|
|
* generated/maxloc1_8_r4.c: Ditto.
|
|
|
|
|
* generated/maxloc1_8_r8.c: Ditto.
|
|
|
|
|
* generated/maxloc1_8_s1.c: Ditto.
|
|
|
|
|
* generated/maxloc1_8_s4.c: Ditto.
|
|
|
|
|
* generated/maxval1_s1.c: Ditto.
|
|
|
|
|
* generated/maxval1_s4.c: Ditto.
|
|
|
|
|
* generated/maxval_i1.c: Ditto.
|
|
|
|
|
* generated/maxval_i16.c: Ditto.
|
|
|
|
|
* generated/maxval_i2.c: Ditto.
|
|
|
|
|
* generated/maxval_i4.c: Ditto.
|
|
|
|
|
* generated/maxval_i8.c: Ditto.
|
|
|
|
|
* generated/maxval_r10.c: Ditto.
|
|
|
|
|
* generated/maxval_r16.c: Ditto.
|
|
|
|
|
* generated/maxval_r4.c: Ditto.
|
|
|
|
|
* generated/maxval_r8.c: Ditto.
|
|
|
|
|
* generated/minloc0_16_i1.c: Ditto.
|
|
|
|
|
* generated/minloc0_16_i16.c: Ditto.
|
|
|
|
|
* generated/minloc0_16_i2.c: Ditto.
|
|
|
|
|
* generated/minloc0_16_i4.c: Ditto.
|
|
|
|
|
* generated/minloc0_16_i8.c: Ditto.
|
|
|
|
|
* generated/minloc0_16_r10.c: Ditto.
|
|
|
|
|
* generated/minloc0_16_r16.c: Ditto.
|
|
|
|
|
* generated/minloc0_16_r4.c: Ditto.
|
|
|
|
|
* generated/minloc0_16_r8.c: Ditto.
|
|
|
|
|
* generated/minloc0_16_s1.c: Ditto.
|
|
|
|
|
* generated/minloc0_16_s4.c: Ditto.
|
|
|
|
|
* generated/minloc0_4_i1.c: Ditto.
|
|
|
|
|
* generated/minloc0_4_i16.c: Ditto.
|
|
|
|
|
* generated/minloc0_4_i2.c: Ditto.
|
|
|
|
|
* generated/minloc0_4_i4.c: Ditto.
|
|
|
|
|
* generated/minloc0_4_i8.c: Ditto.
|
|
|
|
|
* generated/minloc0_4_r10.c: Ditto.
|
|
|
|
|
* generated/minloc0_4_r16.c: Ditto.
|
|
|
|
|
* generated/minloc0_4_r4.c: Ditto.
|
|
|
|
|
* generated/minloc0_4_r8.c: Ditto.
|
|
|
|
|
* generated/minloc0_4_s1.c: Ditto.
|
|
|
|
|
* generated/minloc0_4_s4.c: Ditto.
|
|
|
|
|
* generated/minloc0_8_i1.c: Ditto.
|
|
|
|
|
* generated/minloc0_8_i16.c: Ditto.
|
|
|
|
|
* generated/minloc0_8_i2.c: Ditto.
|
|
|
|
|
* generated/minloc0_8_i4.c: Ditto.
|
|
|
|
|
* generated/minloc0_8_i8.c: Ditto.
|
|
|
|
|
* generated/minloc0_8_r10.c: Ditto.
|
|
|
|
|
* generated/minloc0_8_r16.c: Ditto.
|
|
|
|
|
* generated/minloc0_8_r4.c: Ditto.
|
|
|
|
|
* generated/minloc0_8_r8.c: Ditto.
|
|
|
|
|
* generated/minloc0_8_s1.c: Ditto.
|
|
|
|
|
* generated/minloc0_8_s4.c: Ditto.
|
|
|
|
|
* generated/minloc1_16_i1.c: Ditto.
|
|
|
|
|
* generated/minloc1_16_i16.c: Ditto.
|
|
|
|
|
* generated/minloc1_16_i2.c: Ditto.
|
|
|
|
|
* generated/minloc1_16_i4.c: Ditto.
|
|
|
|
|
* generated/minloc1_16_i8.c: Ditto.
|
|
|
|
|
* generated/minloc1_16_r10.c: Ditto.
|
|
|
|
|
* generated/minloc1_16_r16.c: Ditto.
|
|
|
|
|
* generated/minloc1_16_r4.c: Ditto.
|
|
|
|
|
* generated/minloc1_16_r8.c: Ditto.
|
|
|
|
|
* generated/minloc1_16_s1.c: Ditto.
|
|
|
|
|
* generated/minloc1_16_s4.c: Ditto.
|
|
|
|
|
* generated/minloc1_4_i1.c: Ditto.
|
|
|
|
|
* generated/minloc1_4_i16.c: Ditto.
|
|
|
|
|
* generated/minloc1_4_i2.c: Ditto.
|
|
|
|
|
* generated/minloc1_4_i4.c: Ditto.
|
|
|
|
|
* generated/minloc1_4_i8.c: Ditto.
|
|
|
|
|
* generated/minloc1_4_r10.c: Ditto.
|
|
|
|
|
* generated/minloc1_4_r16.c: Ditto.
|
|
|
|
|
* generated/minloc1_4_r4.c: Ditto.
|
|
|
|
|
* generated/minloc1_4_r8.c: Ditto.
|
|
|
|
|
* generated/minloc1_4_s1.c: Ditto.
|
|
|
|
|
* generated/minloc1_4_s4.c: Ditto.
|
|
|
|
|
* generated/minloc1_8_i1.c: Ditto.
|
|
|
|
|
* generated/minloc1_8_i16.c: Ditto.
|
|
|
|
|
* generated/minloc1_8_i2.c: Ditto.
|
|
|
|
|
* generated/minloc1_8_i4.c: Ditto.
|
|
|
|
|
* generated/minloc1_8_i8.c: Ditto.
|
|
|
|
|
* generated/minloc1_8_r10.c: Ditto.
|
|
|
|
|
* generated/minloc1_8_r16.c: Ditto.
|
|
|
|
|
* generated/minloc1_8_r4.c: Ditto.
|
|
|
|
|
* generated/minloc1_8_r8.c: Ditto.
|
|
|
|
|
* generated/minloc1_8_s1.c: Ditto.
|
|
|
|
|
* generated/minloc1_8_s4.c: Ditto.
|
|
|
|
|
* generated/minval1_s1.c: Ditto.
|
|
|
|
|
* generated/minval1_s4.c: Ditto.
|
|
|
|
|
* generated/minval_i1.c: Ditto.
|
|
|
|
|
* generated/minval_i16.c: Ditto.
|
|
|
|
|
* generated/minval_i2.c: Ditto.
|
|
|
|
|
* generated/minval_i4.c: Ditto.
|
|
|
|
|
* generated/minval_i8.c: Ditto.
|
|
|
|
|
* generated/minval_r10.c: Ditto.
|
|
|
|
|
* generated/minval_r16.c: Ditto.
|
|
|
|
|
* generated/minval_r4.c: Ditto.
|
|
|
|
|
* generated/minval_r8.c: Ditto.
|
|
|
|
|
* generated/norm2_r10.c: Ditto.
|
|
|
|
|
* generated/norm2_r16.c: Ditto.
|
|
|
|
|
* generated/norm2_r4.c: Ditto.
|
|
|
|
|
* generated/norm2_r8.c: Ditto.
|
|
|
|
|
* generated/parity_l1.c: Ditto.
|
|
|
|
|
* generated/parity_l16.c: Ditto.
|
|
|
|
|
* generated/parity_l2.c: Ditto.
|
|
|
|
|
* generated/parity_l4.c: Ditto.
|
|
|
|
|
* generated/parity_l8.c: Ditto.
|
|
|
|
|
* generated/product_c10.c: Ditto.
|
|
|
|
|
* generated/product_c16.c: Ditto.
|
|
|
|
|
* generated/product_c4.c: Ditto.
|
|
|
|
|
* generated/product_c8.c: Ditto.
|
|
|
|
|
* generated/product_i1.c: Ditto.
|
|
|
|
|
* generated/product_i16.c: Ditto.
|
|
|
|
|
* generated/product_i2.c: Ditto.
|
|
|
|
|
* generated/product_i4.c: Ditto.
|
|
|
|
|
* generated/product_i8.c: Ditto.
|
|
|
|
|
* generated/product_r10.c: Ditto.
|
|
|
|
|
* generated/product_r16.c: Ditto.
|
|
|
|
|
* generated/product_r4.c: Ditto.
|
|
|
|
|
* generated/product_r8.c: Ditto.
|
|
|
|
|
* generated/reshape_c10.c: Ditto.
|
|
|
|
|
* generated/reshape_c16.c: Ditto.
|
|
|
|
|
* generated/reshape_c4.c: Ditto.
|
|
|
|
|
* generated/reshape_c8.c: Ditto.
|
|
|
|
|
* generated/reshape_i16.c: Ditto.
|
|
|
|
|
* generated/reshape_i4.c: Ditto.
|
|
|
|
|
* generated/reshape_i8.c: Ditto.
|
|
|
|
|
* generated/reshape_r10.c: Ditto.
|
|
|
|
|
* generated/reshape_r16.c: Ditto.
|
|
|
|
|
* generated/reshape_r4.c: Ditto.
|
|
|
|
|
* generated/reshape_r8.c: Ditto.
|
|
|
|
|
* generated/spread_c10.c: Ditto.
|
|
|
|
|
* generated/spread_c16.c: Ditto.
|
|
|
|
|
* generated/spread_c4.c: Ditto.
|
|
|
|
|
* generated/spread_c8.c: Ditto.
|
|
|
|
|
* generated/spread_i1.c: Ditto.
|
|
|
|
|
* generated/spread_i16.c: Ditto.
|
|
|
|
|
* generated/spread_i2.c: Ditto.
|
|
|
|
|
* generated/spread_i4.c: Ditto.
|
|
|
|
|
* generated/spread_i8.c: Ditto.
|
|
|
|
|
* generated/spread_r10.c: Ditto.
|
|
|
|
|
* generated/spread_r16.c: Ditto.
|
|
|
|
|
* generated/spread_r4.c: Ditto.
|
|
|
|
|
* generated/spread_r8.c: Ditto.
|
|
|
|
|
* generated/sum_c10.c: Ditto.
|
|
|
|
|
* generated/sum_c16.c: Ditto.
|
|
|
|
|
* generated/sum_c4.c: Ditto.
|
|
|
|
|
* generated/sum_c8.c: Ditto.
|
|
|
|
|
* generated/sum_i1.c: Ditto.
|
|
|
|
|
* generated/sum_i16.c: Ditto.
|
|
|
|
|
* generated/sum_i2.c: Ditto.
|
|
|
|
|
* generated/sum_i4.c: Ditto.
|
|
|
|
|
* generated/sum_i8.c: Ditto.
|
|
|
|
|
* generated/sum_r10.c: Ditto.
|
|
|
|
|
* generated/sum_r16.c: Ditto.
|
|
|
|
|
* generated/sum_r4.c: Ditto.
|
|
|
|
|
* generated/sum_r8.c: Ditto.
|
|
|
|
|
|
2018-06-01 19:05:02 +02:00
|
|
|
|
2018-06-01 Steven G. Kargl <kargl@gcc.gnu.org>
|
|
|
|
|
|
|
|
|
|
PR fortran/63570
|
|
|
|
|
* libgfortran/Makefile.am: Add random_init.f90 to build.
|
|
|
|
|
* libgfortran/Makefile.in: Regenerated.
|
|
|
|
|
* libgfortran/gfortran.map: Expose symbol for _gfortran_random_init.
|
|
|
|
|
* libgfortran/intrinsics/random_init.f90: Implementation.
|
|
|
|
|
|
2018-05-28 23:55:31 +02:00
|
|
|
|
2018-05-28 Jerry DeLisle <jvdelisle@gcc.gnu.org>
|
|
|
|
|
|
|
|
|
|
PR libgfortran/85840
|
|
|
|
|
* io/write.c (write_real, write_real_g0, write_complex): Use
|
|
|
|
|
separate local variables for the float string length.
|
|
|
|
|
|
2018-05-26 20:22:18 +02:00
|
|
|
|
2018-05-26 Jerry DeLisle <jvdelisle@gcc.gnu.org>
|
|
|
|
|
|
2018-05-26 20:28:02 +02:00
|
|
|
|
PR libgfortran/85906
|
2018-05-26 20:22:18 +02:00
|
|
|
|
* io/write.c (write_integer): Initialise the fnode format to
|
|
|
|
|
FMT_NONE, used for list directed write.
|
|
|
|
|
(BUF_STACK_SZ): Bump default buffer size up to avoid allocs on
|
|
|
|
|
small stuff.
|
|
|
|
|
|
2018-05-26 19:32:00 +02:00
|
|
|
|
2018-05-26 Jerry DeLisle <jvdelisle@gcc.gnu.org>
|
|
|
|
|
|
|
|
|
|
PR libgfortran/85840
|
|
|
|
|
* io/write.c (write_float_0): Use separate local variable for
|
|
|
|
|
the float string length.
|
|
|
|
|
|
2018-05-08 09:47:19 +02:00
|
|
|
|
2018-05-08 Thomas Koenig <tkoenig@gcc.gnu.org>
|
|
|
|
|
|
|
|
|
|
PR fortran/54613
|
|
|
|
|
* m4/iforeach-s.m4: Remove assertion that back is zero.
|
|
|
|
|
* m4/iforeach.m4: Likewise. Remove leading 'do'
|
|
|
|
|
before implementation start.
|
|
|
|
|
* m4/ifunction-s.m4: Remove assertion that back is zero.
|
|
|
|
|
* m4/ifunction.m4: Likewise. Remove for loop if HAVE_BACK_ARG
|
|
|
|
|
is defined.
|
|
|
|
|
* m4/maxloc0.m4: Reorganize loops. Split loops between >= and =,
|
|
|
|
|
depending if back is true. Mark the condition of having
|
|
|
|
|
found a value which exceeds the limit as unlikely.
|
|
|
|
|
* m4/minloc0.m4: Likewise.
|
|
|
|
|
* m4/maxloc1.m4: Likewise.
|
|
|
|
|
* m4/minloc1.m4: Likewise.
|
|
|
|
|
* m4/maxloc1s.m4: Handle back argument.
|
|
|
|
|
* m4/minloc1s.m4: Likewise.
|
|
|
|
|
* m4/maxloc2s.m4: Remove assertion that back is zero.
|
|
|
|
|
Remove special handling of loop start. Handle back argument.
|
|
|
|
|
* m4/minloc2s.m4: Likewise.
|
|
|
|
|
* generated/iall_i1.c: Regenerated.
|
|
|
|
|
* generated/iall_i16.c: Regenerated.
|
|
|
|
|
* generated/iall_i2.c: Regenerated.
|
|
|
|
|
* generated/iall_i4.c: Regenerated.
|
|
|
|
|
* generated/iall_i8.c: Regenerated.
|
|
|
|
|
* generated/iany_i1.c: Regenerated.
|
|
|
|
|
* generated/iany_i16.c: Regenerated.
|
|
|
|
|
* generated/iany_i2.c: Regenerated.
|
|
|
|
|
* generated/iany_i4.c: Regenerated.
|
|
|
|
|
* generated/iany_i8.c: Regenerated.
|
|
|
|
|
* generated/iparity_i1.c: Regenerated.
|
|
|
|
|
* generated/iparity_i16.c: Regenerated.
|
|
|
|
|
* generated/iparity_i2.c: Regenerated.
|
|
|
|
|
* generated/iparity_i4.c: Regenerated.
|
|
|
|
|
* generated/iparity_i8.c: Regenerated.
|
|
|
|
|
* generated/maxloc0_16_i1.c: Regenerated.
|
|
|
|
|
* generated/maxloc0_16_i16.c: Regenerated.
|
|
|
|
|
* generated/maxloc0_16_i2.c: Regenerated.
|
|
|
|
|
* generated/maxloc0_16_i4.c: Regenerated.
|
|
|
|
|
* generated/maxloc0_16_i8.c: Regenerated.
|
|
|
|
|
* generated/maxloc0_16_r10.c: Regenerated.
|
|
|
|
|
* generated/maxloc0_16_r16.c: Regenerated.
|
|
|
|
|
* generated/maxloc0_16_r4.c: Regenerated.
|
|
|
|
|
* generated/maxloc0_16_r8.c: Regenerated.
|
|
|
|
|
* generated/maxloc0_16_s1.c: Regenerated.
|
|
|
|
|
* generated/maxloc0_16_s4.c: Regenerated.
|
|
|
|
|
* generated/maxloc0_4_i1.c: Regenerated.
|
|
|
|
|
* generated/maxloc0_4_i16.c: Regenerated.
|
|
|
|
|
* generated/maxloc0_4_i2.c: Regenerated.
|
|
|
|
|
* generated/maxloc0_4_i4.c: Regenerated.
|
|
|
|
|
* generated/maxloc0_4_i8.c: Regenerated.
|
|
|
|
|
* generated/maxloc0_4_r10.c: Regenerated.
|
|
|
|
|
* generated/maxloc0_4_r16.c: Regenerated.
|
|
|
|
|
* generated/maxloc0_4_r4.c: Regenerated.
|
|
|
|
|
* generated/maxloc0_4_r8.c: Regenerated.
|
|
|
|
|
* generated/maxloc0_4_s1.c: Regenerated.
|
|
|
|
|
* generated/maxloc0_4_s4.c: Regenerated.
|
|
|
|
|
* generated/maxloc0_8_i1.c: Regenerated.
|
|
|
|
|
* generated/maxloc0_8_i16.c: Regenerated.
|
|
|
|
|
* generated/maxloc0_8_i2.c: Regenerated.
|
|
|
|
|
* generated/maxloc0_8_i4.c: Regenerated.
|
|
|
|
|
* generated/maxloc0_8_i8.c: Regenerated.
|
|
|
|
|
* generated/maxloc0_8_r10.c: Regenerated.
|
|
|
|
|
* generated/maxloc0_8_r16.c: Regenerated.
|
|
|
|
|
* generated/maxloc0_8_r4.c: Regenerated.
|
|
|
|
|
* generated/maxloc0_8_r8.c: Regenerated.
|
|
|
|
|
* generated/maxloc0_8_s1.c: Regenerated.
|
|
|
|
|
* generated/maxloc0_8_s4.c: Regenerated.
|
|
|
|
|
* generated/maxloc1_16_i1.c: Regenerated.
|
|
|
|
|
* generated/maxloc1_16_i16.c: Regenerated.
|
|
|
|
|
* generated/maxloc1_16_i2.c: Regenerated.
|
|
|
|
|
* generated/maxloc1_16_i4.c: Regenerated.
|
|
|
|
|
* generated/maxloc1_16_i8.c: Regenerated.
|
|
|
|
|
* generated/maxloc1_16_r10.c: Regenerated.
|
|
|
|
|
* generated/maxloc1_16_r16.c: Regenerated.
|
|
|
|
|
* generated/maxloc1_16_r4.c: Regenerated.
|
|
|
|
|
* generated/maxloc1_16_r8.c: Regenerated.
|
|
|
|
|
* generated/maxloc1_16_s1.c: Regenerated.
|
|
|
|
|
* generated/maxloc1_16_s4.c: Regenerated.
|
|
|
|
|
* generated/maxloc1_4_i1.c: Regenerated.
|
|
|
|
|
* generated/maxloc1_4_i16.c: Regenerated.
|
|
|
|
|
* generated/maxloc1_4_i2.c: Regenerated.
|
|
|
|
|
* generated/maxloc1_4_i4.c: Regenerated.
|
|
|
|
|
* generated/maxloc1_4_i8.c: Regenerated.
|
|
|
|
|
* generated/maxloc1_4_r10.c: Regenerated.
|
|
|
|
|
* generated/maxloc1_4_r16.c: Regenerated.
|
|
|
|
|
* generated/maxloc1_4_r4.c: Regenerated.
|
|
|
|
|
* generated/maxloc1_4_r8.c: Regenerated.
|
|
|
|
|
* generated/maxloc1_4_s1.c: Regenerated.
|
|
|
|
|
* generated/maxloc1_4_s4.c: Regenerated.
|
|
|
|
|
* generated/maxloc1_8_i1.c: Regenerated.
|
|
|
|
|
* generated/maxloc1_8_i16.c: Regenerated.
|
|
|
|
|
* generated/maxloc1_8_i2.c: Regenerated.
|
|
|
|
|
* generated/maxloc1_8_i4.c: Regenerated.
|
|
|
|
|
* generated/maxloc1_8_i8.c: Regenerated.
|
|
|
|
|
* generated/maxloc1_8_r10.c: Regenerated.
|
|
|
|
|
* generated/maxloc1_8_r16.c: Regenerated.
|
|
|
|
|
* generated/maxloc1_8_r4.c: Regenerated.
|
|
|
|
|
* generated/maxloc1_8_r8.c: Regenerated.
|
|
|
|
|
* generated/maxloc1_8_s1.c: Regenerated.
|
|
|
|
|
* generated/maxloc1_8_s4.c: Regenerated.
|
|
|
|
|
* generated/maxloc2_16_s1.c: Regenerated.
|
|
|
|
|
* generated/maxloc2_16_s4.c: Regenerated.
|
|
|
|
|
* generated/maxloc2_4_s1.c: Regenerated.
|
|
|
|
|
* generated/maxloc2_4_s4.c: Regenerated.
|
|
|
|
|
* generated/maxloc2_8_s1.c: Regenerated.
|
|
|
|
|
* generated/maxloc2_8_s4.c: Regenerated.
|
|
|
|
|
* generated/maxval_i1.c: Regenerated.
|
|
|
|
|
* generated/maxval_i16.c: Regenerated.
|
|
|
|
|
* generated/maxval_i2.c: Regenerated.
|
|
|
|
|
* generated/maxval_i4.c: Regenerated.
|
|
|
|
|
* generated/maxval_i8.c: Regenerated.
|
|
|
|
|
* generated/maxval_r10.c: Regenerated.
|
|
|
|
|
* generated/maxval_r16.c: Regenerated.
|
|
|
|
|
* generated/maxval_r4.c: Regenerated.
|
|
|
|
|
* generated/maxval_r8.c: Regenerated.
|
|
|
|
|
* generated/minloc0_16_i1.c: Regenerated.
|
|
|
|
|
* generated/minloc0_16_i16.c: Regenerated.
|
|
|
|
|
* generated/minloc0_16_i2.c: Regenerated.
|
|
|
|
|
* generated/minloc0_16_i4.c: Regenerated.
|
|
|
|
|
* generated/minloc0_16_i8.c: Regenerated.
|
|
|
|
|
* generated/minloc0_16_r10.c: Regenerated.
|
|
|
|
|
* generated/minloc0_16_r16.c: Regenerated.
|
|
|
|
|
* generated/minloc0_16_r4.c: Regenerated.
|
|
|
|
|
* generated/minloc0_16_r8.c: Regenerated.
|
|
|
|
|
* generated/minloc0_16_s1.c: Regenerated.
|
|
|
|
|
* generated/minloc0_16_s4.c: Regenerated.
|
|
|
|
|
* generated/minloc0_4_i1.c: Regenerated.
|
|
|
|
|
* generated/minloc0_4_i16.c: Regenerated.
|
|
|
|
|
* generated/minloc0_4_i2.c: Regenerated.
|
|
|
|
|
* generated/minloc0_4_i4.c: Regenerated.
|
|
|
|
|
* generated/minloc0_4_i8.c: Regenerated.
|
|
|
|
|
* generated/minloc0_4_r10.c: Regenerated.
|
|
|
|
|
* generated/minloc0_4_r16.c: Regenerated.
|
|
|
|
|
* generated/minloc0_4_r4.c: Regenerated.
|
|
|
|
|
* generated/minloc0_4_r8.c: Regenerated.
|
|
|
|
|
* generated/minloc0_4_s1.c: Regenerated.
|
|
|
|
|
* generated/minloc0_4_s4.c: Regenerated.
|
|
|
|
|
* generated/minloc0_8_i1.c: Regenerated.
|
|
|
|
|
* generated/minloc0_8_i16.c: Regenerated.
|
|
|
|
|
* generated/minloc0_8_i2.c: Regenerated.
|
|
|
|
|
* generated/minloc0_8_i4.c: Regenerated.
|
|
|
|
|
* generated/minloc0_8_i8.c: Regenerated.
|
|
|
|
|
* generated/minloc0_8_r10.c: Regenerated.
|
|
|
|
|
* generated/minloc0_8_r16.c: Regenerated.
|
|
|
|
|
* generated/minloc0_8_r4.c: Regenerated.
|
|
|
|
|
* generated/minloc0_8_r8.c: Regenerated.
|
|
|
|
|
* generated/minloc0_8_s1.c: Regenerated.
|
|
|
|
|
* generated/minloc0_8_s4.c: Regenerated.
|
|
|
|
|
* generated/minloc1_16_i1.c: Regenerated.
|
|
|
|
|
* generated/minloc1_16_i16.c: Regenerated.
|
|
|
|
|
* generated/minloc1_16_i2.c: Regenerated.
|
|
|
|
|
* generated/minloc1_16_i4.c: Regenerated.
|
|
|
|
|
* generated/minloc1_16_i8.c: Regenerated.
|
|
|
|
|
* generated/minloc1_16_r10.c: Regenerated.
|
|
|
|
|
* generated/minloc1_16_r16.c: Regenerated.
|
|
|
|
|
* generated/minloc1_16_r4.c: Regenerated.
|
|
|
|
|
* generated/minloc1_16_r8.c: Regenerated.
|
|
|
|
|
* generated/minloc1_16_s1.c: Regenerated.
|
|
|
|
|
* generated/minloc1_16_s4.c: Regenerated.
|
|
|
|
|
* generated/minloc1_4_i1.c: Regenerated.
|
|
|
|
|
* generated/minloc1_4_i16.c: Regenerated.
|
|
|
|
|
* generated/minloc1_4_i2.c: Regenerated.
|
|
|
|
|
* generated/minloc1_4_i4.c: Regenerated.
|
|
|
|
|
* generated/minloc1_4_i8.c: Regenerated.
|
|
|
|
|
* generated/minloc1_4_r10.c: Regenerated.
|
|
|
|
|
* generated/minloc1_4_r16.c: Regenerated.
|
|
|
|
|
* generated/minloc1_4_r4.c: Regenerated.
|
|
|
|
|
* generated/minloc1_4_r8.c: Regenerated.
|
|
|
|
|
* generated/minloc1_4_s1.c: Regenerated.
|
|
|
|
|
* generated/minloc1_4_s4.c: Regenerated.
|
|
|
|
|
* generated/minloc1_8_i1.c: Regenerated.
|
|
|
|
|
* generated/minloc1_8_i16.c: Regenerated.
|
|
|
|
|
* generated/minloc1_8_i2.c: Regenerated.
|
|
|
|
|
* generated/minloc1_8_i4.c: Regenerated.
|
|
|
|
|
* generated/minloc1_8_i8.c: Regenerated.
|
|
|
|
|
* generated/minloc1_8_r10.c: Regenerated.
|
|
|
|
|
* generated/minloc1_8_r16.c: Regenerated.
|
|
|
|
|
* generated/minloc1_8_r4.c: Regenerated.
|
|
|
|
|
* generated/minloc1_8_r8.c: Regenerated.
|
|
|
|
|
* generated/minloc1_8_s1.c: Regenerated.
|
|
|
|
|
* generated/minloc1_8_s4.c: Regenerated.
|
|
|
|
|
* generated/minloc2_16_s1.c: Regenerated.
|
|
|
|
|
* generated/minloc2_16_s4.c: Regenerated.
|
|
|
|
|
* generated/minloc2_4_s1.c: Regenerated.
|
|
|
|
|
* generated/minloc2_4_s4.c: Regenerated.
|
|
|
|
|
* generated/minloc2_8_s1.c: Regenerated.
|
|
|
|
|
* generated/minloc2_8_s4.c: Regenerated.
|
|
|
|
|
* generated/minval_i1.c: Regenerated.
|
|
|
|
|
* generated/minval_i16.c: Regenerated.
|
|
|
|
|
* generated/minval_i2.c: Regenerated.
|
|
|
|
|
* generated/minval_i4.c: Regenerated.
|
|
|
|
|
* generated/minval_i8.c: Regenerated.
|
|
|
|
|
* generated/minval_r10.c: Regenerated.
|
|
|
|
|
* generated/minval_r16.c: Regenerated.
|
|
|
|
|
* generated/minval_r4.c: Regenerated.
|
|
|
|
|
* generated/minval_r8.c: Regenerated.
|
|
|
|
|
* generated/norm2_r10.c: Regenerated.
|
|
|
|
|
* generated/norm2_r16.c: Regenerated.
|
|
|
|
|
* generated/norm2_r4.c: Regenerated.
|
|
|
|
|
* generated/norm2_r8.c: Regenerated.
|
|
|
|
|
* generated/parity_l1.c: Regenerated.
|
|
|
|
|
* generated/parity_l16.c: Regenerated.
|
|
|
|
|
* generated/parity_l2.c: Regenerated.
|
|
|
|
|
* generated/parity_l4.c: Regenerated.
|
|
|
|
|
* generated/parity_l8.c: Regenerated.
|
|
|
|
|
* generated/product_c10.c: Regenerated.
|
|
|
|
|
* generated/product_c16.c: Regenerated.
|
|
|
|
|
* generated/product_c4.c: Regenerated.
|
|
|
|
|
* generated/product_c8.c: Regenerated.
|
|
|
|
|
* generated/product_i1.c: Regenerated.
|
|
|
|
|
* generated/product_i16.c: Regenerated.
|
|
|
|
|
* generated/product_i2.c: Regenerated.
|
|
|
|
|
* generated/product_i4.c: Regenerated.
|
|
|
|
|
* generated/product_i8.c: Regenerated.
|
|
|
|
|
* generated/product_r10.c: Regenerated.
|
|
|
|
|
* generated/product_r16.c: Regenerated.
|
|
|
|
|
* generated/product_r4.c: Regenerated.
|
|
|
|
|
* generated/product_r8.c: Regenerated.
|
|
|
|
|
* generated/sum_c10.c: Regenerated.
|
|
|
|
|
* generated/sum_c16.c: Regenerated.
|
|
|
|
|
* generated/sum_c4.c: Regenerated.
|
|
|
|
|
* generated/sum_c8.c: Regenerated.
|
|
|
|
|
* generated/sum_i1.c: Regenerated.
|
|
|
|
|
* generated/sum_i16.c: Regenerated.
|
|
|
|
|
* generated/sum_i2.c: Regenerated.
|
|
|
|
|
* generated/sum_i4.c: Regenerated.
|
|
|
|
|
* generated/sum_i8.c: Regenerated.
|
|
|
|
|
* generated/sum_r10.c: Regenerated.
|
|
|
|
|
* generated/sum_r16.c: Regenerated.
|
|
|
|
|
* generated/sum_r4.c: Regenerated.
|
|
|
|
|
* generated/sum_r8.c: Regenerated.
|
|
|
|
|
|
2018-04-24 18:45:26 +02:00
|
|
|
|
2018-04-24 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
* configure: Regenerated.
|
|
|
|
|
|
2018-04-19 10:53:38 +02:00
|
|
|
|
2018-04-19 Thomas Schwinge <thomas@codesourcery.com>
|
|
|
|
|
|
|
|
|
|
PR libfortran/85166
|
|
|
|
|
PR libgomp/85463
|
|
|
|
|
* runtime/minimal.c (stop_numeric): Reimplement.
|
|
|
|
|
(stop_string, error_stop_string, error_stop_numeric): New
|
|
|
|
|
functions.
|
|
|
|
|
|
2018-04-19 09:45:51 +02:00
|
|
|
|
2018-04-19 Jakub Jelinek <jakub@redhat.com>
|
|
|
|
|
|
|
|
|
|
* configure: Regenerated.
|
|
|
|
|
|
2018-04-18 11:46:58 +02:00
|
|
|
|
2018-04-18 David Malcolm <dmalcolm@redhat.com>
|
|
|
|
|
|
|
|
|
|
PR jit/85384
|
|
|
|
|
* configure: Regenerate.
|
|
|
|
|
|
2018-04-06 20:49:21 +02:00
|
|
|
|
2018-04-06 Thomas Koenig <tkoenig@gcc.gnu.org>
|
|
|
|
|
|
|
|
|
|
PR libfortran/85253
|
|
|
|
|
* m4/matmul_internal.m4: If ycount == 1, add one more row to
|
|
|
|
|
the internal buffer.
|
|
|
|
|
* generated/matmul_c10.c: Regenerated.
|
|
|
|
|
* generated/matmul_c16.c: Regenerated.
|
|
|
|
|
* generated/matmul_c4.c: Regenerated.
|
|
|
|
|
* generated/matmul_c8.c: Regenerated.
|
|
|
|
|
* generated/matmul_i1.c: Regenerated.
|
|
|
|
|
* generated/matmul_i16.c: Regenerated.
|
|
|
|
|
* generated/matmul_i2.c: Regenerated.
|
|
|
|
|
* generated/matmul_i4.c: Regenerated.
|
|
|
|
|
* generated/matmul_i8.c: Regenerated.
|
|
|
|
|
* generated/matmul_r10.c: Regenerated.
|
|
|
|
|
* generated/matmul_r16.c: Regenerated.
|
|
|
|
|
* generated/matmul_r4.c: Regenerated.
|
|
|
|
|
* generated/matmul_r8.c: Regenerated.
|
|
|
|
|
* generated/matmulavx128_c10.c: Regenerated.
|
|
|
|
|
* generated/matmulavx128_c16.c: Regenerated.
|
|
|
|
|
* generated/matmulavx128_c4.c: Regenerated.
|
|
|
|
|
* generated/matmulavx128_c8.c: Regenerated.
|
|
|
|
|
* generated/matmulavx128_i1.c: Regenerated.
|
|
|
|
|
* generated/matmulavx128_i16.c: Regenerated.
|
|
|
|
|
* generated/matmulavx128_i2.c: Regenerated.
|
|
|
|
|
* generated/matmulavx128_i4.c: Regenerated.
|
|
|
|
|
* generated/matmulavx128_i8.c: Regenerated.
|
|
|
|
|
* generated/matmulavx128_r10.c: Regenerated.
|
|
|
|
|
* generated/matmulavx128_r16.c: Regenerated.
|
|
|
|
|
* generated/matmulavx128_r4.c: Regenerated.
|
|
|
|
|
* generated/matmulavx128_r8.c: Regenerated.
|
|
|
|
|
|
2018-04-04 11:26:13 +02:00
|
|
|
|
2018-04-04 Thomas Koenig <tkoenig@gcc.gnu.org>
|
|
|
|
|
|
|
|
|
|
PR libfortran/85166
|
|
|
|
|
* runtime/minimal.c (stop_numeric): Add new function in order to
|
|
|
|
|
implement numeric stop on minimal targets.
|
|
|
|
|
|
2018-03-28 13:59:06 +02:00
|
|
|
|
2018-03-28 Jakub Jelinek <jakub@redhat.com>
|
|
|
|
|
|
|
|
|
|
* io/io.h (IOPARM_DT_DEFAULT_EXP): Rename to ...
|
|
|
|
|
(IOPARM_DT_DEC_EXT): ... this.
|
|
|
|
|
* io/list_read.c (parse_real): Adjust for IOPARM_DT_DEFAULT_EXP
|
|
|
|
|
renaming to IOPARM_DT_DEC_EXT.
|
|
|
|
|
(read_real): Likewise.
|
|
|
|
|
* io/read.c (read_f): Likewise.
|
|
|
|
|
|
2018-03-15 19:04:59 +01:00
|
|
|
|
2018-03-15 Jakub Jelinek <jakub@redhat.com>
|
|
|
|
|
|
|
|
|
|
PR libgfortran/84880
|
|
|
|
|
* intrinsics/kill.c (kill): Rename to...
|
|
|
|
|
(PREFIX (kill)): ... this. Use export_proto_np instead of export_proto.
|
|
|
|
|
|
2018-03-14 01:56:48 +01:00
|
|
|
|
2018-03-13 Steven G. Kargl <kargl@gcc.gnu.org>
|
|
|
|
|
|
|
|
|
|
* libgfortran/gfortran.map: Remove _gfortran_kill_i4,
|
|
|
|
|
_gfortran_kill_i4_sub, _gfortran_kill_i8, and _gfortran_kill_i8_sub.
|
|
|
|
|
Add _gfortran_kill and _gfortran_kill_sub.
|
|
|
|
|
* libgfortran/intrinsics/kill.c: Eliminate _gfortran_kill_i4,
|
|
|
|
|
_gfortran_kill_i4_sub, _gfortran_kill_i8, and _gfortran_kill_i8_sub.
|
|
|
|
|
Add _gfortran_kill and _gfortran_kill_sub.
|
|
|
|
|
|
2018-02-23 10:33:27 +01:00
|
|
|
|
2018-02-23 Janne Blomqvist <jb@gcc.gnu.org>
|
|
|
|
|
|
|
|
|
|
PR fortran/84519
|
|
|
|
|
* caf/libcaf.h (_gfortran_caf_stop_numeric): Add bool argument.
|
|
|
|
|
(_gfortran_caf_stop_str): Likewise.
|
|
|
|
|
(_gfortran_caf_error_stop_str): Likewise.
|
|
|
|
|
(_gfortran_caf_error_stop): Likewise.
|
|
|
|
|
* caf/mpi.c (_gfortran_caf_error_stop_str): Handle new argument.
|
|
|
|
|
(_gfortran_caf_error_stop): Likewise.
|
|
|
|
|
* caf/single.c (_gfortran_caf_stop_numeric): Likewise.
|
|
|
|
|
(_gfortran_caf_stop_str): Likewise.
|
|
|
|
|
(_gfortran_caf_error_stop_str): Likewise.
|
|
|
|
|
(_gfortran_caf_error_stop): Likewise.
|
|
|
|
|
(_gfortran_caf_lock): Likewise.
|
|
|
|
|
(_gfortran_caf_unlock): Likewise.
|
|
|
|
|
* libgfortran.h (stop_string): Add bool argument.
|
|
|
|
|
* runtime/pause.c (do_pause): Add false argument.
|
|
|
|
|
* runtime/stop.c (stop_numeric): Handle new argument.
|
|
|
|
|
(stop_string): Likewise.
|
|
|
|
|
(error_stop_string): Likewise.
|
|
|
|
|
(error_stop_numeric): Likewise.
|
|
|
|
|
|
2018-02-22 17:14:21 +01:00
|
|
|
|
2018-02-22 Janne Blomqvist <jb@gcc.gnu.org>
|
|
|
|
|
|
|
|
|
|
PR 78534
|
|
|
|
|
PR 84509
|
|
|
|
|
* runtime/pause.c (pause_numeric): Modify to take GFC_INTEGER_8
|
|
|
|
|
argument.
|
|
|
|
|
(pause_string): Modify to take size_t character length argument.
|
|
|
|
|
|
2018-02-22 10:44:31 +01:00
|
|
|
|
2018-02-22 Janne Blomqvist <jb@gcc.gnu.org>
|
|
|
|
|
|
|
|
|
|
* libgfortran.h (stop_string): Use size_t for character length.
|
|
|
|
|
* runtime/stop.c (stop_string): Likewise.
|
|
|
|
|
(error_stop_string): Likewise.
|
|
|
|
|
(stop_numeric): Use int for exit code.
|
|
|
|
|
(error_stop_numeric): Likewise.
|
|
|
|
|
* caf/libcaf.h: Remove stdint.h include.
|
|
|
|
|
(_gfortran_caf_register): Use size_t for character length.
|
|
|
|
|
(_gfortran_caf_deregister): Likewise.
|
|
|
|
|
(_gfortran_caf_sync_all): Likewise.
|
|
|
|
|
(_gfortran_caf_sync_memory): Likewise.
|
|
|
|
|
(_gfortran_caf_sync_images): Likewise.
|
|
|
|
|
(_gfortran_caf_stop_numeric): Use int for exit code.
|
|
|
|
|
(_gfortran_caf_stop_str): Use size_t for character length.
|
|
|
|
|
(_gfortran_caf_error_stop_str): Likewise.
|
|
|
|
|
(_gfortran_caf_error_stop): Use int for exit code.
|
|
|
|
|
(_gfortran_caf_co_broadcast): Use size_t for character length.
|
|
|
|
|
(_gfortran_caf_co_sum): Likewise.
|
|
|
|
|
(_gfortran_caf_co_min): Likewise.
|
|
|
|
|
(_gfortran_caf_co_max): Likewise.
|
|
|
|
|
(_gfortran_caf_co_reduce): Likewise.
|
|
|
|
|
(_gfortran_caf_lock): Likewise.
|
|
|
|
|
(_gfortran_caf_unlock): Likewise.
|
|
|
|
|
(_gfortran_caf_event_post): Likewise.
|
|
|
|
|
(_gfortran_caf_event_wait): Likewise.
|
|
|
|
|
* caf/mpi.c (_gfortran_caf_register): Update implementation to
|
|
|
|
|
match prototype.
|
|
|
|
|
(_gfortran_caf_deregister): Likewise.
|
|
|
|
|
(_gfortran_caf_sync_all): Likewise.
|
|
|
|
|
(_gfortran_caf_sync_images): Likewise.
|
|
|
|
|
(_gfortran_caf_error_stop_str): Likewise.
|
|
|
|
|
(_gfortran_caf_error_stop): Likewise.
|
|
|
|
|
* caf/single.c (caf_internal_error): Likewise.
|
|
|
|
|
(_gfortran_caf_register): Likewise.
|
|
|
|
|
(_gfortran_caf_deregister): Likewise.
|
|
|
|
|
(_gfortran_caf_sync_all): Likewise.
|
|
|
|
|
(_gfortran_caf_sync_memory): Likewise.
|
|
|
|
|
(_gfortran_caf_sync_images): Likewise.
|
|
|
|
|
(_gfortran_caf_stop_numeric): Likewise.
|
|
|
|
|
(_gfortran_caf_stop_str): Likewise.
|
|
|
|
|
(_gfortran_caf_error_stop_str): Likewise.
|
|
|
|
|
(_gfortran_caf_error_stop): Likewise.
|
|
|
|
|
(_gfortran_caf_co_broadcast): Likewise.
|
|
|
|
|
(_gfortran_caf_co_sum): Likewise.
|
|
|
|
|
(_gfortran_caf_co_min): Likewise.
|
|
|
|
|
(_gfortran_caf_co_max): Likewise.
|
|
|
|
|
(_gfortran_caf_co_reduce): Likewise.
|
|
|
|
|
(_gfortran_caf_event_post): Likewise.
|
|
|
|
|
(_gfortran_caf_event_wait): Likewise.
|
|
|
|
|
(_gfortran_caf_lock): Likewise.
|
|
|
|
|
(_gfortran_caf_unlock): Likewise.
|
|
|
|
|
|
2018-02-19 18:30:57 +01:00
|
|
|
|
2018-02-19 Andre Vehreschild <vehre@gcc.gnu.org>
|
|
|
|
|
|
|
|
|
|
* caf/libcaf.h: Add type parameters to the caf_*_by_ref prototypes.
|
|
|
|
|
* caf/single.c (get_for_ref): Simplifications and now respecting
|
|
|
|
|
the type argument.
|
|
|
|
|
(_gfortran_caf_get_by_ref): Added source type handing to get_for_ref().
|
|
|
|
|
(send_by_ref): Simplifications and respecting the dst_type now.
|
|
|
|
|
(_gfortran_caf_send_by_ref): Added destination type hand over to
|
|
|
|
|
send_by_ref().
|
|
|
|
|
(_gfortran_caf_sendget_by_ref): Added general support and fixed stack
|
|
|
|
|
corruption. The function is now really usable.
|
|
|
|
|
|
2018-02-19 17:25:49 +01:00
|
|
|
|
2018-02-14 Igor Tsimbalist <igor.v.tsimbalist@intel.com>
|
|
|
|
|
|
|
|
|
|
PR target/84148
|
|
|
|
|
* configure: Regenerate.
|
|
|
|
|
|
2018-02-18 16:32:39 +01:00
|
|
|
|
2018-02-18 Jerry DeLisle <jvdelisle@gcc.gnu.org>
|
|
|
|
|
|
|
|
|
|
PR libgfortran/84412
|
|
|
|
|
* io/transfer.c (finalize_transfer): After completng an internal unit
|
|
|
|
|
I/O operation, clear internal_unit_kind.
|
|
|
|
|
|
2018-02-12 20:53:17 +01:00
|
|
|
|
2018-02-12 Thomas Koenig <tkoenig@gcc.gnu.org>
|
|
|
|
|
|
|
|
|
|
* libgfortran.h (GFC_ARRAY_DESCRIPTOR): Remove dimension
|
|
|
|
|
of descriptor to use vaiable members for dim.
|
|
|
|
|
Change usage of GFC_ARRAY_DESCRIPTOR accordingly.
|
|
|
|
|
(GFC_FILL_ARRAY_DESCRIPTOR): New macro.
|
|
|
|
|
(gfc_full_array_i4): New type.
|
|
|
|
|
* intrinsics/date_and_time.c (secnds): Use sizeof
|
|
|
|
|
(gfc_array_i4) + sizeof (descriptor_dimension) for memory
|
|
|
|
|
allocation.
|
|
|
|
|
* intrinsics/reshape_generic.c: Use GFC_FULL_ARRAY_DESCRIPTOR.
|
|
|
|
|
* io/format.c: Use sizeof (gfc_array_i4) + sizeof
|
|
|
|
|
(descriptor_dimension) for memoy allocation.
|
|
|
|
|
* io/list_read.c (list_formatted_read_scalar): Use
|
|
|
|
|
gfc_full_array_i4 for variable.
|
|
|
|
|
(nml_read_obj): Likewise.
|
|
|
|
|
* io/write.c (list_formatted_write_scalar): Likewise.
|
|
|
|
|
(nml_write_obj): Likewise.
|
|
|
|
|
* m4/reshape.m4: Use GFC_FULL_ARRAY_DESCRIPTOR.
|
|
|
|
|
* generated/reshape_c10.c: Regenerated.
|
|
|
|
|
* generated/reshape_c16.c: Regenerated.
|
|
|
|
|
* generated/reshape_c4.c: Regenerated.
|
|
|
|
|
* generated/reshape_c8.c: Regenerated.
|
|
|
|
|
* generated/reshape_i16.c: Regenerated.
|
|
|
|
|
* generated/reshape_i4.c: Regenerated.
|
|
|
|
|
* generated/reshape_i8.c: Regenerated.
|
|
|
|
|
* generated/reshape_r10.c: Regenerated.
|
|
|
|
|
* generated/reshape_r16.c: Regenerated.
|
|
|
|
|
* generated/reshape_r4.c: Regenerated.
|
|
|
|
|
* generated/reshape_r8.c: Regenerated.
|
|
|
|
|
|
2018-01-31 15:16:22 +01:00
|
|
|
|
2018-01-31 Janne Blomqvist <jb@gcc.gnu.org>
|
|
|
|
|
|
|
|
|
|
* generated/cshift1_16.c (cshift1): Regenerated.
|
|
|
|
|
* generated/cshift1_4.c (cshift1): Regenerated.
|
|
|
|
|
* generated/cshift1_8.c (cshift1): Regenerated.
|
|
|
|
|
* generated/eoshift1_16.c (eoshift1): Regenerated.
|
|
|
|
|
* generated/eoshift1_4.c (eoshift1): Regenerated.
|
|
|
|
|
* generated/eoshift1_8.c (eoshift1): Regenerated.
|
|
|
|
|
* generated/eoshift3_16.c (eoshift3): Regenerated.
|
|
|
|
|
* generated/eoshift3_4.c (eoshift3): Regenerated.
|
|
|
|
|
* generated/eoshift3_8.c (eoshift3): Regenerated.
|
|
|
|
|
* generated/in_pack_c10.c (internal_pack_c10): Regenerated.
|
|
|
|
|
* generated/in_pack_c16.c (internal_pack_c16): Regenerated.
|
|
|
|
|
* generated/in_pack_c4.c (internal_pack_c4): Regenerated.
|
|
|
|
|
* generated/in_pack_c8.c (internal_pack_c8): Regenerated.
|
|
|
|
|
* generated/in_pack_i1.c (internal_pack_1): Regenerated.
|
|
|
|
|
* generated/in_pack_i16.c (internal_pack_16): Regenerated.
|
|
|
|
|
* generated/in_pack_i2.c (internal_pack_2): Regenerated.
|
|
|
|
|
* generated/in_pack_i4.c (internal_pack_4): Regenerated.
|
|
|
|
|
* generated/in_pack_i8.c (internal_pack_8): Regenerated.
|
|
|
|
|
* generated/in_pack_r10.c (internal_pack_r10): Regenerated.
|
|
|
|
|
* generated/in_pack_r16.c (internal_pack_r16): Regenerated.
|
|
|
|
|
* generated/in_pack_r4.c (internal_pack_r4): Regenerated.
|
|
|
|
|
* generated/in_pack_r8.c (internal_pack_r8): Regenerated.
|
|
|
|
|
* generated/in_unpack_c10.c (internal_unpack_c10): Regenerated.
|
|
|
|
|
* generated/in_unpack_c16.c (internal_unpack_c16): Regenerated.
|
|
|
|
|
* generated/in_unpack_c4.c (internal_unpack_c4): Regenerated.
|
|
|
|
|
* generated/in_unpack_c8.c (internal_unpack_c8): Regenerated.
|
|
|
|
|
* generated/in_unpack_i1.c (internal_unpack_1): Regenerated.
|
|
|
|
|
* generated/in_unpack_i16.c (internal_unpack_16): Regenerated.
|
|
|
|
|
* generated/in_unpack_i2.c (internal_unpack_2): Regenerated.
|
|
|
|
|
* generated/in_unpack_i4.c (internal_unpack_4): Regenerated.
|
|
|
|
|
* generated/in_unpack_i8.c (internal_unpack_8): Regenerated.
|
|
|
|
|
* generated/in_unpack_r10.c (internal_unpack_r10): Regenerated.
|
|
|
|
|
* generated/in_unpack_r16.c (internal_unpack_r16): Regenerated.
|
|
|
|
|
* generated/in_unpack_r4.c (internal_unpack_r4): Regenerated.
|
|
|
|
|
* generated/in_unpack_r8.c (internal_unpack_r8): Regenerated.
|
|
|
|
|
* generated/reshape_c10.c (reshape_c10): Regenerated.
|
|
|
|
|
* generated/reshape_c16.c (reshape_c16): Regenerated.
|
|
|
|
|
* generated/reshape_c4.c (reshape_c4): Regenerated.
|
|
|
|
|
* generated/reshape_c8.c (reshape_c8): Regenerated.
|
|
|
|
|
* generated/reshape_i16.c (reshape_16): Regenerated.
|
|
|
|
|
* generated/reshape_i4.c (reshape_4): Regenerated.
|
|
|
|
|
* generated/reshape_i8.c (reshape_8): Regenerated.
|
|
|
|
|
* generated/reshape_r10.c (reshape_r10): Regenerated.
|
|
|
|
|
* generated/reshape_r16.c (reshape_r16): Regenerated.
|
|
|
|
|
* generated/reshape_r4.c (reshape_r4): Regenerated.
|
|
|
|
|
* generated/reshape_r8.c (reshape_r8): Regenerated.
|
|
|
|
|
* generated/shape_i1.c (shape_1): Regenerated.
|
|
|
|
|
* generated/shape_i16.c (shape_16): Regenerated.
|
|
|
|
|
* generated/shape_i2.c (shape_2): Regenerated.
|
|
|
|
|
* generated/shape_i4.c (shape_4): Regenerated.
|
|
|
|
|
* generated/shape_i8.c (shape_8): Regenerated.
|
|
|
|
|
* generated/spread_c10.c (spread_scalar_c10): Regenerated.
|
|
|
|
|
* generated/spread_c16.c (spread_scalar_c16): Regenerated.
|
|
|
|
|
* generated/spread_c4.c (spread_scalar_c4): Regenerated.
|
|
|
|
|
* generated/spread_c8.c (spread_scalar_c8): Regenerated.
|
|
|
|
|
* generated/spread_i1.c (spread_scalar_i1): Regenerated.
|
|
|
|
|
* generated/spread_i16.c (spread_scalar_i16): Regenerated.
|
|
|
|
|
* generated/spread_i2.c (spread_scalar_i2): Regenerated.
|
|
|
|
|
* generated/spread_i4.c (spread_scalar_i4): Regenerated.
|
|
|
|
|
* generated/spread_i8.c (spread_scalar_i8): Regenerated.
|
|
|
|
|
* generated/spread_r10.c (spread_scalar_r10): Regenerated.
|
|
|
|
|
* generated/spread_r16.c (spread_scalar_r16): Regenerated.
|
|
|
|
|
* generated/spread_r4.c (spread_scalar_r4): Regenerated.
|
|
|
|
|
* generated/spread_r8.c (spread_scalar_r8): Regenerated.
|
|
|
|
|
* intrinsics/random.c (jump): Use size_t for array index in loop.
|
|
|
|
|
(getosrandom): Likewise.
|
|
|
|
|
(arandom_r4): Make n an index_type.
|
|
|
|
|
(arandom_r8): Likewise.
|
|
|
|
|
(arandom_r10): Likewise.
|
|
|
|
|
(arandom_r16): Likewise.
|
|
|
|
|
(scramble_seed): Use size_t for array index in loop.
|
|
|
|
|
* m4/cshift1.m4: Make i an index_type.
|
|
|
|
|
* m4/eoshift1.m4: Likewise.
|
|
|
|
|
* m4/eoshift3.m4: Likewise.
|
|
|
|
|
* m4/in_pack.m4: Make n an index_type.
|
|
|
|
|
* m4/in_unpack.m4: Likewise.
|
|
|
|
|
* m4/reshape.m4: Make n and dim index_type's.
|
|
|
|
|
* m4/shape.m4: Make n an index_type.
|
|
|
|
|
* m4/spread.m4: Likewise, use index_type argument rather than
|
|
|
|
|
copying to int.
|
|
|
|
|
* runtime/bounds.c (bounds_ifunction_return): Make n an
|
|
|
|
|
index_type.
|
|
|
|
|
* runtime/in_pack_generic.c (internal_pack): Likewise.
|
|
|
|
|
* runtime/in_unpack_generic.c (internal_unpack): Make n and size
|
|
|
|
|
index_type's.
|
|
|
|
|
|
2018-01-30 19:20:27 +01:00
|
|
|
|
2018-01-30 Thomas Koenig <tkoenig@gcc.gnu.org>
|
|
|
|
|
|
|
|
|
|
PR fortran/37577
|
|
|
|
|
* libgfortran.h: Remove GFC_DTYPE_DERIVED_1, GFC_DTYPE_DERIVED_2,
|
|
|
|
|
GFC_DTYPE_DERIVED_4, GFC_DTYPE_DERIVED_8 and GFC_DTYPE_DERIVED_16.
|
|
|
|
|
* m4/cshift1.m4: Remove GFC_DTYPE_DERIVED_1.
|
|
|
|
|
* generated/cshift1_16.c: Regenerated.
|
|
|
|
|
* generated/cshift1_4.c: Regenerated.
|
|
|
|
|
* generated/cshift1_8.c: Regenerated.
|
|
|
|
|
* intrinsics/cshift0.c: Remove GFC_DTYPE_DERIVED_1.
|
|
|
|
|
* intrinsics/pack_generic.c (pack): Move handling of other types
|
|
|
|
|
into separate switch statement.
|
|
|
|
|
* intrinsics/spread_generic.c (spread): Likewise.
|
|
|
|
|
(spread_scalar): Likewise.
|
|
|
|
|
* intrinsics/unpack_generic.c (unpack1): Likewise.
|
|
|
|
|
(unpack0): Likewise.
|
|
|
|
|
* runtime/in_pack_generic.c (internal_pack): Likewise.
|
|
|
|
|
* runtime/in_unpack_generic.c (internal_unpack): Likewise.
|
|
|
|
|
|
|
|
|
|
2018-01-25 Paul Thomas <pault@gcc.gnu.org>
|
2018-01-25 20:09:40 +01:00
|
|
|
|
|
|
|
|
|
PR fortran/37577
|
|
|
|
|
* caf/single.c (_gfortran_caf_failed_images): Access the 'type'
|
|
|
|
|
and 'elem_len' fields of the dtype instead of the shifts.
|
|
|
|
|
(_gfortran_caf_stopped_images): Likewise.
|
|
|
|
|
* intrinsics/associated.c (associated): Compare the 'type' and
|
|
|
|
|
'elem_len' fields instead of the dtype.
|
|
|
|
|
* caf/date_and_time.c : Access the dtype fields rather using
|
|
|
|
|
shifts and masks.
|
|
|
|
|
* io/transfer.c (transfer_array ): Comment on item count.
|
|
|
|
|
(set_nml_var,st_set_nml_var): Change dtype type and use fields.
|
|
|
|
|
(st_set_nml_dtio_var): Likewise.
|
|
|
|
|
* libgfortran.h : Change definition of GFC_ARRAY_DESCRIPTOR and
|
|
|
|
|
add a typedef for the dtype_type. Change the GFC_DTYPE_* macros
|
|
|
|
|
to access the dtype fields.
|
|
|
|
|
|
2018-01-15 19:35:13 +01:00
|
|
|
|
2018-01-15 Thomas Koenig <tkoenig@gcc.gnu.org>
|
|
|
|
|
|
|
|
|
|
PR fortran/54613
|
|
|
|
|
* m4/iparm.m4: Add back_arg macro if in minloc or maxloc.
|
|
|
|
|
* m4/iforeach-s.m4: Add optional argument back with back_arg
|
|
|
|
|
macro. Improve m4 quoting. If HAVE_BACK_ARG is defined, assert
|
|
|
|
|
that back is non-true.
|
|
|
|
|
* m4/iforeach.m4: Likewise.
|
|
|
|
|
* m4/ifunction-s.m4: Likewise.
|
|
|
|
|
* m4/ifunction.m4: Likewise.
|
|
|
|
|
* m4/maxloc0.m4: Include assert.h
|
|
|
|
|
* m4/minloc0.m4: Likewise.
|
|
|
|
|
* m4/maxloc0s.m4: #define HAVE_BACK_ARG.
|
|
|
|
|
* m4/minloc0s.m4: Likewise.
|
|
|
|
|
* m4/maxloc1s.m4: Likewise.
|
|
|
|
|
* m4/minloc1s.m4: Likewise.
|
|
|
|
|
* m4/maxloc1.m4: Include assert.h, #define HAVE_BACK_ARG.
|
|
|
|
|
* m4/minloc1.m4: Likewise.
|
|
|
|
|
* m4/maxloc2s.m4: Add assert.h, add back_arg, assert that
|
|
|
|
|
back is non-true.
|
|
|
|
|
* m4/minloc2s.m4: Likewise.
|
|
|
|
|
* generated/iall_i1.c: Regenerated.
|
|
|
|
|
* generated/iall_i16.c: Regenerated.
|
|
|
|
|
* generated/iall_i2.c: Regenerated.
|
|
|
|
|
* generated/iall_i4.c: Regenerated.
|
|
|
|
|
* generated/iall_i8.c: Regenerated.
|
|
|
|
|
* generated/iany_i1.c: Regenerated.
|
|
|
|
|
* generated/iany_i16.c: Regenerated.
|
|
|
|
|
* generated/iany_i2.c: Regenerated.
|
|
|
|
|
* generated/iany_i4.c: Regenerated.
|
|
|
|
|
* generated/iany_i8.c: Regenerated.
|
|
|
|
|
* generated/iparity_i1.c: Regenerated.
|
|
|
|
|
* generated/iparity_i16.c: Regenerated.
|
|
|
|
|
* generated/iparity_i2.c: Regenerated.
|
|
|
|
|
* generated/iparity_i4.c: Regenerated.
|
|
|
|
|
* generated/iparity_i8.c: Regenerated.
|
|
|
|
|
* generated/maxloc0_16_i1.c: Regenerated.
|
|
|
|
|
* generated/maxloc0_16_i16.c: Regenerated.
|
|
|
|
|
* generated/maxloc0_16_i2.c: Regenerated.
|
|
|
|
|
* generated/maxloc0_16_i4.c: Regenerated.
|
|
|
|
|
* generated/maxloc0_16_i8.c: Regenerated.
|
|
|
|
|
* generated/maxloc0_16_r10.c: Regenerated.
|
|
|
|
|
* generated/maxloc0_16_r16.c: Regenerated.
|
|
|
|
|
* generated/maxloc0_16_r4.c: Regenerated.
|
|
|
|
|
* generated/maxloc0_16_r8.c: Regenerated.
|
|
|
|
|
* generated/maxloc0_16_s1.c: Regenerated.
|
|
|
|
|
* generated/maxloc0_16_s4.c: Regenerated.
|
|
|
|
|
* generated/maxloc0_4_i1.c: Regenerated.
|
|
|
|
|
* generated/maxloc0_4_i16.c: Regenerated.
|
|
|
|
|
* generated/maxloc0_4_i2.c: Regenerated.
|
|
|
|
|
* generated/maxloc0_4_i4.c: Regenerated.
|
|
|
|
|
* generated/maxloc0_4_i8.c: Regenerated.
|
|
|
|
|
* generated/maxloc0_4_r10.c: Regenerated.
|
|
|
|
|
* generated/maxloc0_4_r16.c: Regenerated.
|
|
|
|
|
* generated/maxloc0_4_r4.c: Regenerated.
|
|
|
|
|
* generated/maxloc0_4_r8.c: Regenerated.
|
|
|
|
|
* generated/maxloc0_4_s1.c: Regenerated.
|
|
|
|
|
* generated/maxloc0_4_s4.c: Regenerated.
|
|
|
|
|
* generated/maxloc0_8_i1.c: Regenerated.
|
|
|
|
|
* generated/maxloc0_8_i16.c: Regenerated.
|
|
|
|
|
* generated/maxloc0_8_i2.c: Regenerated.
|
|
|
|
|
* generated/maxloc0_8_i4.c: Regenerated.
|
|
|
|
|
* generated/maxloc0_8_i8.c: Regenerated.
|
|
|
|
|
* generated/maxloc0_8_r10.c: Regenerated.
|
|
|
|
|
* generated/maxloc0_8_r16.c: Regenerated.
|
|
|
|
|
* generated/maxloc0_8_r4.c: Regenerated.
|
|
|
|
|
* generated/maxloc0_8_r8.c: Regenerated.
|
|
|
|
|
* generated/maxloc0_8_s1.c: Regenerated.
|
|
|
|
|
* generated/maxloc0_8_s4.c: Regenerated.
|
|
|
|
|
* generated/maxloc1_16_i1.c: Regenerated.
|
|
|
|
|
* generated/maxloc1_16_i16.c: Regenerated.
|
|
|
|
|
* generated/maxloc1_16_i2.c: Regenerated.
|
|
|
|
|
* generated/maxloc1_16_i4.c: Regenerated.
|
|
|
|
|
* generated/maxloc1_16_i8.c: Regenerated.
|
|
|
|
|
* generated/maxloc1_16_r10.c: Regenerated.
|
|
|
|
|
* generated/maxloc1_16_r16.c: Regenerated.
|
|
|
|
|
* generated/maxloc1_16_r4.c: Regenerated.
|
|
|
|
|
* generated/maxloc1_16_r8.c: Regenerated.
|
|
|
|
|
* generated/maxloc1_16_s1.c: Regenerated.
|
|
|
|
|
* generated/maxloc1_16_s4.c: Regenerated.
|
|
|
|
|
* generated/maxloc1_4_i1.c: Regenerated.
|
|
|
|
|
* generated/maxloc1_4_i16.c: Regenerated.
|
|
|
|
|
* generated/maxloc1_4_i2.c: Regenerated.
|
|
|
|
|
* generated/maxloc1_4_i4.c: Regenerated.
|
|
|
|
|
* generated/maxloc1_4_i8.c: Regenerated.
|
|
|
|
|
* generated/maxloc1_4_r10.c: Regenerated.
|
|
|
|
|
* generated/maxloc1_4_r16.c: Regenerated.
|
|
|
|
|
* generated/maxloc1_4_r4.c: Regenerated.
|
|
|
|
|
* generated/maxloc1_4_r8.c: Regenerated.
|
|
|
|
|
* generated/maxloc1_4_s1.c: Regenerated.
|
|
|
|
|
* generated/maxloc1_4_s4.c: Regenerated.
|
|
|
|
|
* generated/maxloc1_8_i1.c: Regenerated.
|
|
|
|
|
* generated/maxloc1_8_i16.c: Regenerated.
|
|
|
|
|
* generated/maxloc1_8_i2.c: Regenerated.
|
|
|
|
|
* generated/maxloc1_8_i4.c: Regenerated.
|
|
|
|
|
* generated/maxloc1_8_i8.c: Regenerated.
|
|
|
|
|
* generated/maxloc1_8_r10.c: Regenerated.
|
|
|
|
|
* generated/maxloc1_8_r16.c: Regenerated.
|
|
|
|
|
* generated/maxloc1_8_r4.c: Regenerated.
|
|
|
|
|
* generated/maxloc1_8_r8.c: Regenerated.
|
|
|
|
|
* generated/maxloc1_8_s1.c: Regenerated.
|
|
|
|
|
* generated/maxloc1_8_s4.c: Regenerated.
|
|
|
|
|
* generated/maxval_i1.c: Regenerated.
|
|
|
|
|
* generated/maxval_i16.c: Regenerated.
|
|
|
|
|
* generated/maxval_i2.c: Regenerated.
|
|
|
|
|
* generated/maxval_i4.c: Regenerated.
|
|
|
|
|
* generated/maxval_i8.c: Regenerated.
|
|
|
|
|
* generated/maxval_r10.c: Regenerated.
|
|
|
|
|
* generated/maxval_r16.c: Regenerated.
|
|
|
|
|
* generated/maxval_r4.c: Regenerated.
|
|
|
|
|
* generated/maxval_r8.c: Regenerated.
|
|
|
|
|
* generated/minloc0_16_i1.c: Regenerated.
|
|
|
|
|
* generated/minloc0_16_i16.c: Regenerated.
|
|
|
|
|
* generated/minloc0_16_i2.c: Regenerated.
|
|
|
|
|
* generated/minloc0_16_i4.c: Regenerated.
|
|
|
|
|
* generated/minloc0_16_i8.c: Regenerated.
|
|
|
|
|
* generated/minloc0_16_r10.c: Regenerated.
|
|
|
|
|
* generated/minloc0_16_r16.c: Regenerated.
|
|
|
|
|
* generated/minloc0_16_r4.c: Regenerated.
|
|
|
|
|
* generated/minloc0_16_r8.c: Regenerated.
|
|
|
|
|
* generated/minloc0_16_s1.c: Regenerated.
|
|
|
|
|
* generated/minloc0_16_s4.c: Regenerated.
|
|
|
|
|
* generated/minloc0_4_i1.c: Regenerated.
|
|
|
|
|
* generated/minloc0_4_i16.c: Regenerated.
|
|
|
|
|
* generated/minloc0_4_i2.c: Regenerated.
|
|
|
|
|
* generated/minloc0_4_i4.c: Regenerated.
|
|
|
|
|
* generated/minloc0_4_i8.c: Regenerated.
|
|
|
|
|
* generated/minloc0_4_r10.c: Regenerated.
|
|
|
|
|
* generated/minloc0_4_r16.c: Regenerated.
|
|
|
|
|
* generated/minloc0_4_r4.c: Regenerated.
|
|
|
|
|
* generated/minloc0_4_r8.c: Regenerated.
|
|
|
|
|
* generated/minloc0_4_s1.c: Regenerated.
|
|
|
|
|
* generated/minloc0_4_s4.c: Regenerated.
|
|
|
|
|
* generated/minloc0_8_i1.c: Regenerated.
|
|
|
|
|
* generated/minloc0_8_i16.c: Regenerated.
|
|
|
|
|
* generated/minloc0_8_i2.c: Regenerated.
|
|
|
|
|
* generated/minloc0_8_i4.c: Regenerated.
|
|
|
|
|
* generated/minloc0_8_i8.c: Regenerated.
|
|
|
|
|
* generated/minloc0_8_r10.c: Regenerated.
|
|
|
|
|
* generated/minloc0_8_r16.c: Regenerated.
|
|
|
|
|
* generated/minloc0_8_r4.c: Regenerated.
|
|
|
|
|
* generated/minloc0_8_r8.c: Regenerated.
|
|
|
|
|
* generated/minloc0_8_s1.c: Regenerated.
|
|
|
|
|
* generated/minloc0_8_s4.c: Regenerated.
|
|
|
|
|
* generated/minloc1_16_i1.c: Regenerated.
|
|
|
|
|
* generated/minloc1_16_i16.c: Regenerated.
|
|
|
|
|
* generated/minloc1_16_i2.c: Regenerated.
|
|
|
|
|
* generated/minloc1_16_i4.c: Regenerated.
|
|
|
|
|
* generated/minloc1_16_i8.c: Regenerated.
|
|
|
|
|
* generated/minloc1_16_r10.c: Regenerated.
|
|
|
|
|
* generated/minloc1_16_r16.c: Regenerated.
|
|
|
|
|
* generated/minloc1_16_r4.c: Regenerated.
|
|
|
|
|
* generated/minloc1_16_r8.c: Regenerated.
|
|
|
|
|
* generated/minloc1_16_s1.c: Regenerated.
|
|
|
|
|
* generated/minloc1_16_s4.c: Regenerated.
|
|
|
|
|
* generated/minloc1_4_i1.c: Regenerated.
|
|
|
|
|
* generated/minloc1_4_i16.c: Regenerated.
|
|
|
|
|
* generated/minloc1_4_i2.c: Regenerated.
|
|
|
|
|
* generated/minloc1_4_i4.c: Regenerated.
|
|
|
|
|
* generated/minloc1_4_i8.c: Regenerated.
|
|
|
|
|
* generated/minloc1_4_r10.c: Regenerated.
|
|
|
|
|
* generated/minloc1_4_r16.c: Regenerated.
|
|
|
|
|
* generated/minloc1_4_r4.c: Regenerated.
|
|
|
|
|
* generated/minloc1_4_r8.c: Regenerated.
|
|
|
|
|
* generated/minloc1_4_s1.c: Regenerated.
|
|
|
|
|
* generated/minloc1_4_s4.c: Regenerated.
|
|
|
|
|
* generated/minloc1_8_i1.c: Regenerated.
|
|
|
|
|
* generated/minloc1_8_i16.c: Regenerated.
|
|
|
|
|
* generated/minloc1_8_i2.c: Regenerated.
|
|
|
|
|
* generated/minloc1_8_i4.c: Regenerated.
|
|
|
|
|
* generated/minloc1_8_i8.c: Regenerated.
|
|
|
|
|
* generated/minloc1_8_r10.c: Regenerated.
|
|
|
|
|
* generated/minloc1_8_r16.c: Regenerated.
|
|
|
|
|
* generated/minloc1_8_r4.c: Regenerated.
|
|
|
|
|
* generated/minloc1_8_r8.c: Regenerated.
|
|
|
|
|
* generated/minloc1_8_s1.c: Regenerated.
|
|
|
|
|
* generated/minloc1_8_s4.c: Regenerated.
|
|
|
|
|
* generated/minval_i1.c: Regenerated.
|
|
|
|
|
* generated/minval_i16.c: Regenerated.
|
|
|
|
|
* generated/minval_i2.c: Regenerated.
|
|
|
|
|
* generated/minval_i4.c: Regenerated.
|
|
|
|
|
* generated/minval_i8.c: Regenerated.
|
|
|
|
|
* generated/minval_r10.c: Regenerated.
|
|
|
|
|
* generated/minval_r16.c: Regenerated.
|
|
|
|
|
* generated/minval_r4.c: Regenerated.
|
|
|
|
|
* generated/minval_r8.c: Regenerated.
|
|
|
|
|
* generated/norm2_r10.c: Regenerated.
|
|
|
|
|
* generated/norm2_r16.c: Regenerated.
|
|
|
|
|
* generated/norm2_r4.c: Regenerated.
|
|
|
|
|
* generated/norm2_r8.c: Regenerated.
|
|
|
|
|
* generated/parity_l1.c: Regenerated.
|
|
|
|
|
* generated/parity_l16.c: Regenerated.
|
|
|
|
|
* generated/parity_l2.c: Regenerated.
|
|
|
|
|
* generated/parity_l4.c: Regenerated.
|
|
|
|
|
* generated/parity_l8.c: Regenerated.
|
|
|
|
|
* generated/product_c10.c: Regenerated.
|
|
|
|
|
* generated/product_c16.c: Regenerated.
|
|
|
|
|
* generated/product_c4.c: Regenerated.
|
|
|
|
|
* generated/product_c8.c: Regenerated.
|
|
|
|
|
* generated/product_i1.c: Regenerated.
|
|
|
|
|
* generated/product_i16.c: Regenerated.
|
|
|
|
|
* generated/product_i2.c: Regenerated.
|
|
|
|
|
* generated/product_i4.c: Regenerated.
|
|
|
|
|
* generated/product_i8.c: Regenerated.
|
|
|
|
|
* generated/product_r10.c: Regenerated.
|
|
|
|
|
* generated/product_r16.c: Regenerated.
|
|
|
|
|
* generated/product_r4.c: Regenerated.
|
|
|
|
|
* generated/product_r8.c: Regenerated.
|
|
|
|
|
* generated/sum_c10.c: Regenerated.
|
|
|
|
|
* generated/sum_c16.c: Regenerated.
|
|
|
|
|
* generated/sum_c4.c: Regenerated.
|
|
|
|
|
* generated/sum_c8.c: Regenerated.
|
|
|
|
|
* generated/sum_i1.c: Regenerated.
|
|
|
|
|
* generated/sum_i16.c: Regenerated.
|
|
|
|
|
* generated/sum_i2.c: Regenerated.
|
|
|
|
|
* generated/sum_i4.c: Regenerated.
|
|
|
|
|
* generated/sum_i8.c: Regenerated.
|
|
|
|
|
* generated/sum_r10.c: Regenerated.
|
|
|
|
|
* generated/sum_r16.c: Regenerated.
|
|
|
|
|
* generated/sum_r4.c: Regenerated.
|
|
|
|
|
* generated/sum_r8.c: Regenerated.
|
|
|
|
|
|
2018-01-14 22:00:29 +01:00
|
|
|
|
2018-01-14 Jerry DeLisle <jvdelisle@gcc.gnu.org>
|
2018-01-14 18:36:29 +01:00
|
|
|
|
|
|
|
|
|
PR libgfortran/83811
|
|
|
|
|
* write.c (select_buffer): Adjust buffer size up by 1.
|
|
|
|
|
|
2018-01-08 13:12:05 +01:00
|
|
|
|
2018-01-08 Janne Blomqvist <jb@gcc.gnu.org>
|
|
|
|
|
|
|
|
|
|
PR 78534, bugfix for r256322
|
|
|
|
|
* io/transfer.c (next_record_w): Use correct type for return value
|
|
|
|
|
of next_array_record.
|
|
|
|
|
|
2018-01-07 15:11:11 +01:00
|
|
|
|
2018-01-07 Thomas Koenig <tkoenig@gcc.gnu.org>
|
|
|
|
|
|
|
|
|
|
* libgfortran.h (GFC_DTYPE_COPY): New macro.
|
|
|
|
|
(GFC_DTYPE_COPY_SETRANK): New macro.
|
|
|
|
|
(GFC_DTYPE_IS_UNSET): New macro.
|
|
|
|
|
* intrinsics/cshift0.c (cshift0): Use new macros.
|
|
|
|
|
* intrinsics/eoshift0.c (eoshift0): Likewise.
|
|
|
|
|
* intrinsics/eoshift2.c (eoshift2): Likewise.
|
|
|
|
|
* intrinsics/move_alloc.c (move_alloc): Likewise.
|
|
|
|
|
* intrinsics/reshape_generic.c (reshape_internal): Likewise.
|
|
|
|
|
* intrinsics/spread_generic.c (spread_internal): Likewise.
|
|
|
|
|
* intrinsics/spread_generic.c (spread_scalar): Likewise.
|
|
|
|
|
* intrinsics/spread_generic.c (spread_char_scalar): Likewise.
|
|
|
|
|
* intrinsics/spread_generic.c (spread_char4_scalar): Likewise.
|
|
|
|
|
* intrinsics/unpack_generic.c (unpack0): Likewise.
|
|
|
|
|
* intrinsics/unpack_generic.c (unpack0_char): Likewise.
|
|
|
|
|
* intrinsics/unpack_generic.c (unpack0_char4): Likewise.
|
|
|
|
|
* m4/cshift1.m4 (cshift1): Likewise.
|
|
|
|
|
* m4/eoshift1.m4 (eoshift1): Likewise.
|
|
|
|
|
* m4/eoshift3.m4 (eoshift3): Likewise.
|
|
|
|
|
* m4/iforeach-s.m4: Likewise.
|
|
|
|
|
* m4/iforeach.m4: Likewise.
|
|
|
|
|
* m4/ifunction-s.m4: Likewise.
|
|
|
|
|
* m4/ifunction-s2.m4: Likewise.
|
|
|
|
|
* m4/ifunction.m4: Likewise.
|
|
|
|
|
* m4/ifunction_logical.m4: Likewise.
|
|
|
|
|
* m4/reshape.m4: Likewise.
|
|
|
|
|
* m4/spread.m4: Likewise.
|
|
|
|
|
* generated/all_l1.c : Regenerated.
|
|
|
|
|
* generated/all_l16.c : Regenerated.
|
|
|
|
|
* generated/all_l2.c : Regenerated.
|
|
|
|
|
* generated/all_l4.c : Regenerated.
|
|
|
|
|
* generated/all_l8.c : Regenerated.
|
|
|
|
|
* generated/any_l1.c : Regenerated.
|
|
|
|
|
* generated/any_l16.c : Regenerated.
|
|
|
|
|
* generated/any_l2.c : Regenerated.
|
|
|
|
|
* generated/any_l4.c : Regenerated.
|
|
|
|
|
* generated/any_l8.c : Regenerated.
|
|
|
|
|
* generated/count_16_l.c : Regenerated.
|
|
|
|
|
* generated/count_1_l.c : Regenerated.
|
|
|
|
|
* generated/count_2_l.c : Regenerated.
|
|
|
|
|
* generated/count_4_l.c : Regenerated.
|
|
|
|
|
* generated/count_8_l.c : Regenerated.
|
|
|
|
|
* generated/cshift1_16.c : Regenerated.
|
|
|
|
|
* generated/cshift1_4.c : Regenerated.
|
|
|
|
|
* generated/cshift1_8.c : Regenerated.
|
|
|
|
|
* generated/eoshift1_16.c : Regenerated.
|
|
|
|
|
* generated/eoshift1_4.c : Regenerated.
|
|
|
|
|
* generated/eoshift1_8.c : Regenerated.
|
|
|
|
|
* generated/eoshift3_16.c : Regenerated.
|
|
|
|
|
* generated/eoshift3_4.c : Regenerated.
|
|
|
|
|
* generated/eoshift3_8.c : Regenerated.
|
|
|
|
|
* generated/iall_i1.c : Regenerated.
|
|
|
|
|
* generated/iall_i16.c : Regenerated.
|
|
|
|
|
* generated/iall_i2.c : Regenerated.
|
|
|
|
|
* generated/iall_i4.c : Regenerated.
|
|
|
|
|
* generated/iall_i8.c : Regenerated.
|
|
|
|
|
* generated/iany_i1.c : Regenerated.
|
|
|
|
|
* generated/iany_i16.c : Regenerated.
|
|
|
|
|
* generated/iany_i2.c : Regenerated.
|
|
|
|
|
* generated/iany_i4.c : Regenerated.
|
|
|
|
|
* generated/iany_i8.c : Regenerated.
|
|
|
|
|
* generated/iparity_i1.c : Regenerated.
|
|
|
|
|
* generated/iparity_i16.c : Regenerated.
|
|
|
|
|
* generated/iparity_i2.c : Regenerated.
|
|
|
|
|
* generated/iparity_i4.c : Regenerated.
|
|
|
|
|
* generated/iparity_i8.c : Regenerated.
|
|
|
|
|
* generated/maxloc0_16_i1.c : Regenerated.
|
|
|
|
|
* generated/maxloc0_16_i16.c : Regenerated.
|
|
|
|
|
* generated/maxloc0_16_i2.c : Regenerated.
|
|
|
|
|
* generated/maxloc0_16_i4.c : Regenerated.
|
|
|
|
|
* generated/maxloc0_16_i8.c : Regenerated.
|
|
|
|
|
* generated/maxloc0_16_r10.c : Regenerated.
|
|
|
|
|
* generated/maxloc0_16_r16.c : Regenerated.
|
|
|
|
|
* generated/maxloc0_16_r4.c : Regenerated.
|
|
|
|
|
* generated/maxloc0_16_r8.c : Regenerated.
|
|
|
|
|
* generated/maxloc0_16_s1.c : Regenerated.
|
|
|
|
|
* generated/maxloc0_16_s4.c : Regenerated.
|
|
|
|
|
* generated/maxloc0_4_i1.c : Regenerated.
|
|
|
|
|
* generated/maxloc0_4_i16.c : Regenerated.
|
|
|
|
|
* generated/maxloc0_4_i2.c : Regenerated.
|
|
|
|
|
* generated/maxloc0_4_i4.c : Regenerated.
|
|
|
|
|
* generated/maxloc0_4_i8.c : Regenerated.
|
|
|
|
|
* generated/maxloc0_4_r10.c : Regenerated.
|
|
|
|
|
* generated/maxloc0_4_r16.c : Regenerated.
|
|
|
|
|
* generated/maxloc0_4_r4.c : Regenerated.
|
|
|
|
|
* generated/maxloc0_4_r8.c : Regenerated.
|
|
|
|
|
* generated/maxloc0_4_s1.c : Regenerated.
|
|
|
|
|
* generated/maxloc0_4_s4.c : Regenerated.
|
|
|
|
|
* generated/maxloc0_8_i1.c : Regenerated.
|
|
|
|
|
* generated/maxloc0_8_i16.c : Regenerated.
|
|
|
|
|
* generated/maxloc0_8_i2.c : Regenerated.
|
|
|
|
|
* generated/maxloc0_8_i4.c : Regenerated.
|
|
|
|
|
* generated/maxloc0_8_i8.c : Regenerated.
|
|
|
|
|
* generated/maxloc0_8_r10.c : Regenerated.
|
|
|
|
|
* generated/maxloc0_8_r16.c : Regenerated.
|
|
|
|
|
* generated/maxloc0_8_r4.c : Regenerated.
|
|
|
|
|
* generated/maxloc0_8_r8.c : Regenerated.
|
|
|
|
|
* generated/maxloc0_8_s1.c : Regenerated.
|
|
|
|
|
* generated/maxloc0_8_s4.c : Regenerated.
|
|
|
|
|
* generated/maxloc1_16_i1.c : Regenerated.
|
|
|
|
|
* generated/maxloc1_16_i16.c : Regenerated.
|
|
|
|
|
* generated/maxloc1_16_i2.c : Regenerated.
|
|
|
|
|
* generated/maxloc1_16_i4.c : Regenerated.
|
|
|
|
|
* generated/maxloc1_16_i8.c : Regenerated.
|
|
|
|
|
* generated/maxloc1_16_r10.c : Regenerated.
|
|
|
|
|
* generated/maxloc1_16_r16.c : Regenerated.
|
|
|
|
|
* generated/maxloc1_16_r4.c : Regenerated.
|
|
|
|
|
* generated/maxloc1_16_r8.c : Regenerated.
|
|
|
|
|
* generated/maxloc1_16_s1.c : Regenerated.
|
|
|
|
|
* generated/maxloc1_16_s4.c : Regenerated.
|
|
|
|
|
* generated/maxloc1_4_i1.c : Regenerated.
|
|
|
|
|
* generated/maxloc1_4_i16.c : Regenerated.
|
|
|
|
|
* generated/maxloc1_4_i2.c : Regenerated.
|
|
|
|
|
* generated/maxloc1_4_i4.c : Regenerated.
|
|
|
|
|
* generated/maxloc1_4_i8.c : Regenerated.
|
|
|
|
|
* generated/maxloc1_4_r10.c : Regenerated.
|
|
|
|
|
* generated/maxloc1_4_r16.c : Regenerated.
|
|
|
|
|
* generated/maxloc1_4_r4.c : Regenerated.
|
|
|
|
|
* generated/maxloc1_4_r8.c : Regenerated.
|
|
|
|
|
* generated/maxloc1_4_s1.c : Regenerated.
|
|
|
|
|
* generated/maxloc1_4_s4.c : Regenerated.
|
|
|
|
|
* generated/maxloc1_8_i1.c : Regenerated.
|
|
|
|
|
* generated/maxloc1_8_i16.c : Regenerated.
|
|
|
|
|
* generated/maxloc1_8_i2.c : Regenerated.
|
|
|
|
|
* generated/maxloc1_8_i4.c : Regenerated.
|
|
|
|
|
* generated/maxloc1_8_i8.c : Regenerated.
|
|
|
|
|
* generated/maxloc1_8_r10.c : Regenerated.
|
|
|
|
|
* generated/maxloc1_8_r16.c : Regenerated.
|
|
|
|
|
* generated/maxloc1_8_r4.c : Regenerated.
|
|
|
|
|
* generated/maxloc1_8_r8.c : Regenerated.
|
|
|
|
|
* generated/maxloc1_8_s1.c : Regenerated.
|
|
|
|
|
* generated/maxloc1_8_s4.c : Regenerated.
|
|
|
|
|
* generated/maxval1_s1.c : Regenerated.
|
|
|
|
|
* generated/maxval1_s4.c : Regenerated.
|
|
|
|
|
* generated/maxval_i1.c : Regenerated.
|
|
|
|
|
* generated/maxval_i16.c : Regenerated.
|
|
|
|
|
* generated/maxval_i2.c : Regenerated.
|
|
|
|
|
* generated/maxval_i4.c : Regenerated.
|
|
|
|
|
* generated/maxval_i8.c : Regenerated.
|
|
|
|
|
* generated/maxval_r10.c : Regenerated.
|
|
|
|
|
* generated/maxval_r16.c : Regenerated.
|
|
|
|
|
* generated/maxval_r4.c : Regenerated.
|
|
|
|
|
* generated/maxval_r8.c : Regenerated.
|
|
|
|
|
* generated/minloc0_16_i1.c : Regenerated.
|
|
|
|
|
* generated/minloc0_16_i16.c : Regenerated.
|
|
|
|
|
* generated/minloc0_16_i2.c : Regenerated.
|
|
|
|
|
* generated/minloc0_16_i4.c : Regenerated.
|
|
|
|
|
* generated/minloc0_16_i8.c : Regenerated.
|
|
|
|
|
* generated/minloc0_16_r10.c : Regenerated.
|
|
|
|
|
* generated/minloc0_16_r16.c : Regenerated.
|
|
|
|
|
* generated/minloc0_16_r4.c : Regenerated.
|
|
|
|
|
* generated/minloc0_16_r8.c : Regenerated.
|
|
|
|
|
* generated/minloc0_16_s1.c : Regenerated.
|
|
|
|
|
* generated/minloc0_16_s4.c : Regenerated.
|
|
|
|
|
* generated/minloc0_4_i1.c : Regenerated.
|
|
|
|
|
* generated/minloc0_4_i16.c : Regenerated.
|
|
|
|
|
* generated/minloc0_4_i2.c : Regenerated.
|
|
|
|
|
* generated/minloc0_4_i4.c : Regenerated.
|
|
|
|
|
* generated/minloc0_4_i8.c : Regenerated.
|
|
|
|
|
* generated/minloc0_4_r10.c : Regenerated.
|
|
|
|
|
* generated/minloc0_4_r16.c : Regenerated.
|
|
|
|
|
* generated/minloc0_4_r4.c : Regenerated.
|
|
|
|
|
* generated/minloc0_4_r8.c : Regenerated.
|
|
|
|
|
* generated/minloc0_4_s1.c : Regenerated.
|
|
|
|
|
* generated/minloc0_4_s4.c : Regenerated.
|
|
|
|
|
* generated/minloc0_8_i1.c : Regenerated.
|
|
|
|
|
* generated/minloc0_8_i16.c : Regenerated.
|
|
|
|
|
* generated/minloc0_8_i2.c : Regenerated.
|
|
|
|
|
* generated/minloc0_8_i4.c : Regenerated.
|
|
|
|
|
* generated/minloc0_8_i8.c : Regenerated.
|
|
|
|
|
* generated/minloc0_8_r10.c : Regenerated.
|
|
|
|
|
* generated/minloc0_8_r16.c : Regenerated.
|
|
|
|
|
* generated/minloc0_8_r4.c : Regenerated.
|
|
|
|
|
* generated/minloc0_8_r8.c : Regenerated.
|
|
|
|
|
* generated/minloc0_8_s1.c : Regenerated.
|
|
|
|
|
* generated/minloc0_8_s4.c : Regenerated.
|
|
|
|
|
* generated/minloc1_16_i1.c : Regenerated.
|
|
|
|
|
* generated/minloc1_16_i16.c : Regenerated.
|
|
|
|
|
* generated/minloc1_16_i2.c : Regenerated.
|
|
|
|
|
* generated/minloc1_16_i4.c : Regenerated.
|
|
|
|
|
* generated/minloc1_16_i8.c : Regenerated.
|
|
|
|
|
* generated/minloc1_16_r10.c : Regenerated.
|
|
|
|
|
* generated/minloc1_16_r16.c : Regenerated.
|
|
|
|
|
* generated/minloc1_16_r4.c : Regenerated.
|
|
|
|
|
* generated/minloc1_16_r8.c : Regenerated.
|
|
|
|
|
* generated/minloc1_16_s1.c : Regenerated.
|
|
|
|
|
* generated/minloc1_16_s4.c : Regenerated.
|
|
|
|
|
* generated/minloc1_4_i1.c : Regenerated.
|
|
|
|
|
* generated/minloc1_4_i16.c : Regenerated.
|
|
|
|
|
* generated/minloc1_4_i2.c : Regenerated.
|
|
|
|
|
* generated/minloc1_4_i4.c : Regenerated.
|
|
|
|
|
* generated/minloc1_4_i8.c : Regenerated.
|
|
|
|
|
* generated/minloc1_4_r10.c : Regenerated.
|
|
|
|
|
* generated/minloc1_4_r16.c : Regenerated.
|
|
|
|
|
* generated/minloc1_4_r4.c : Regenerated.
|
|
|
|
|
* generated/minloc1_4_r8.c : Regenerated.
|
|
|
|
|
* generated/minloc1_4_s1.c : Regenerated.
|
|
|
|
|
* generated/minloc1_4_s4.c : Regenerated.
|
|
|
|
|
* generated/minloc1_8_i1.c : Regenerated.
|
|
|
|
|
* generated/minloc1_8_i16.c : Regenerated.
|
|
|
|
|
* generated/minloc1_8_i2.c : Regenerated.
|
|
|
|
|
* generated/minloc1_8_i4.c : Regenerated.
|
|
|
|
|
* generated/minloc1_8_i8.c : Regenerated.
|
|
|
|
|
* generated/minloc1_8_r10.c : Regenerated.
|
|
|
|
|
* generated/minloc1_8_r16.c : Regenerated.
|
|
|
|
|
* generated/minloc1_8_r4.c : Regenerated.
|
|
|
|
|
* generated/minloc1_8_r8.c : Regenerated.
|
|
|
|
|
* generated/minloc1_8_s1.c : Regenerated.
|
|
|
|
|
* generated/minloc1_8_s4.c : Regenerated.
|
|
|
|
|
* generated/minval1_s1.c : Regenerated.
|
|
|
|
|
* generated/minval1_s4.c : Regenerated.
|
|
|
|
|
* generated/minval_i1.c : Regenerated.
|
|
|
|
|
* generated/minval_i16.c : Regenerated.
|
|
|
|
|
* generated/minval_i2.c : Regenerated.
|
|
|
|
|
* generated/minval_i4.c : Regenerated.
|
|
|
|
|
* generated/minval_i8.c : Regenerated.
|
|
|
|
|
* generated/minval_r10.c : Regenerated.
|
|
|
|
|
* generated/minval_r16.c : Regenerated.
|
|
|
|
|
* generated/minval_r4.c : Regenerated.
|
|
|
|
|
* generated/minval_r8.c : Regenerated.
|
|
|
|
|
* generated/norm2_r10.c : Regenerated.
|
|
|
|
|
* generated/norm2_r16.c : Regenerated.
|
|
|
|
|
* generated/norm2_r4.c : Regenerated.
|
|
|
|
|
* generated/norm2_r8.c : Regenerated.
|
|
|
|
|
* generated/parity_l1.c : Regenerated.
|
|
|
|
|
* generated/parity_l16.c : Regenerated.
|
|
|
|
|
* generated/parity_l2.c : Regenerated.
|
|
|
|
|
* generated/parity_l4.c : Regenerated.
|
|
|
|
|
* generated/parity_l8.c : Regenerated.
|
|
|
|
|
* generated/product_c10.c : Regenerated.
|
|
|
|
|
* generated/product_c16.c : Regenerated.
|
|
|
|
|
* generated/product_c4.c : Regenerated.
|
|
|
|
|
* generated/product_c8.c : Regenerated.
|
|
|
|
|
* generated/product_i1.c : Regenerated.
|
|
|
|
|
* generated/product_i16.c : Regenerated.
|
|
|
|
|
* generated/product_i2.c : Regenerated.
|
|
|
|
|
* generated/product_i4.c : Regenerated.
|
|
|
|
|
* generated/product_i8.c : Regenerated.
|
|
|
|
|
* generated/product_r10.c : Regenerated.
|
|
|
|
|
* generated/product_r16.c : Regenerated.
|
|
|
|
|
* generated/product_r4.c : Regenerated.
|
|
|
|
|
* generated/product_r8.c : Regenerated.
|
|
|
|
|
* generated/reshape_c10.c : Regenerated.
|
|
|
|
|
* generated/reshape_c16.c : Regenerated.
|
|
|
|
|
* generated/reshape_c4.c : Regenerated.
|
|
|
|
|
* generated/reshape_c8.c : Regenerated.
|
|
|
|
|
* generated/reshape_i16.c : Regenerated.
|
|
|
|
|
* generated/reshape_i4.c : Regenerated.
|
|
|
|
|
* generated/reshape_i8.c : Regenerated.
|
|
|
|
|
* generated/reshape_r10.c : Regenerated.
|
|
|
|
|
* generated/reshape_r16.c : Regenerated.
|
|
|
|
|
* generated/reshape_r4.c : Regenerated.
|
|
|
|
|
* generated/reshape_r8.c : Regenerated.
|
|
|
|
|
* generated/spread_c10.c : Regenerated.
|
|
|
|
|
* generated/spread_c16.c : Regenerated.
|
|
|
|
|
* generated/spread_c4.c : Regenerated.
|
|
|
|
|
* generated/spread_c8.c : Regenerated.
|
|
|
|
|
* generated/spread_i1.c : Regenerated.
|
|
|
|
|
* generated/spread_i16.c : Regenerated.
|
|
|
|
|
* generated/spread_i2.c : Regenerated.
|
|
|
|
|
* generated/spread_i4.c : Regenerated.
|
|
|
|
|
* generated/spread_i8.c : Regenerated.
|
|
|
|
|
* generated/spread_r10.c : Regenerated.
|
|
|
|
|
* generated/spread_r16.c : Regenerated.
|
|
|
|
|
* generated/spread_r4.c : Regenerated.
|
|
|
|
|
* generated/spread_r8.c : Regenerated.
|
|
|
|
|
* generated/sum_c10.c : Regenerated.
|
|
|
|
|
* generated/sum_c16.c : Regenerated.
|
|
|
|
|
* generated/sum_c4.c : Regenerated.
|
|
|
|
|
* generated/sum_c8.c : Regenerated.
|
|
|
|
|
* generated/sum_i1.c : Regenerated.
|
|
|
|
|
* generated/sum_i16.c : Regenerated.
|
|
|
|
|
* generated/sum_i2.c : Regenerated.
|
|
|
|
|
* generated/sum_i4.c : Regenerated.
|
|
|
|
|
* generated/sum_i8.c : Regenerated.
|
|
|
|
|
* generated/sum_r10.c : Regenerated.
|
|
|
|
|
* generated/sum_r16.c : Regenerated.
|
|
|
|
|
* generated/sum_r4.c : Regenerated.
|
|
|
|
|
* generated/sum_r8.c : Regenerated.
|
|
|
|
|
|
2018-01-07 11:17:52 +01:00
|
|
|
|
2018-01-07 Janne Blomqvist <jb@gcc.gnu.org>
|
|
|
|
|
|
|
|
|
|
PR fortran/78534
|
|
|
|
|
PR fortran/83704
|
|
|
|
|
* io/fbuf.c (fbuf_init): Use size_t instead of int for length.
|
|
|
|
|
(fbuf_debug): Convert debug output to unsigned long.
|
|
|
|
|
(fbuf_reset): Use ptrdiff_t for return value.
|
|
|
|
|
(fbuf_alloc): Use size_t for length argument.
|
|
|
|
|
(fbuf_flush): Handle large buffers.
|
|
|
|
|
(fbuf_flush_list): Likewise.
|
|
|
|
|
(fbuf_seek): Use ptrdiff_t for offset and return value.
|
|
|
|
|
(fbuf_read): Use size_t for length argument.
|
|
|
|
|
(fbuf_getc_refill): Use size_t to match fbuf_read.
|
|
|
|
|
* io/fbuf.h (struct fbuf): Use size_t for lengths.
|
|
|
|
|
(fbuf_init): Use size_t instead of int for length.
|
|
|
|
|
(fbuf_reset): Use ptrdiff_t for return value.
|
|
|
|
|
(fbuf_alloc): Use size_t for length argument.
|
|
|
|
|
(fbuf_seek): Use ptrdiff_t for offset and return value.
|
|
|
|
|
(fbuf_read): Use size_t for length argument.
|
|
|
|
|
* io/io.h (read_block_form): Likewise.
|
|
|
|
|
(read_block_form4): Likewise.
|
|
|
|
|
(write_block): Likewise.
|
|
|
|
|
(read_a): Likewise.
|
|
|
|
|
(read_a_char4): Likewise.
|
|
|
|
|
(read_x): Likewise.
|
|
|
|
|
(write_a): Likewise.
|
|
|
|
|
(write_a_char4): Likewise.
|
|
|
|
|
* io/list_read.c (list_formatted_read_scalar): Use size_t to
|
|
|
|
|
handle large buffers.
|
|
|
|
|
* io/read.c (read_l): Likewise.
|
|
|
|
|
(read_utf8): Likewise.
|
|
|
|
|
(read_utf8_char1): Likewise.
|
|
|
|
|
(read_default_char1): Likewise.
|
|
|
|
|
(read_utf8_char4): Likewise.
|
|
|
|
|
(read_default_char4): Likewise.
|
|
|
|
|
(read_a): Likewise.
|
|
|
|
|
(read_a_char4): Likewise.
|
|
|
|
|
(eat_leading_spaces): Likewise.
|
|
|
|
|
(next_char): Likewise.
|
|
|
|
|
(read_decimal): Likewise.
|
|
|
|
|
(read_radix): Likewise.
|
|
|
|
|
(read_f): Likewise.
|
|
|
|
|
(read_x): Likewise.
|
|
|
|
|
* io/transfer.c (read_sf_internal): Likewise.
|
|
|
|
|
(read_sf): Likewise.
|
|
|
|
|
(read_block_form): Likewise.
|
|
|
|
|
(read_block_form4): Likewise.
|
|
|
|
|
(write_block): Likewise.
|
|
|
|
|
(formatted_transfer_scalar_write): Likewise.
|
|
|
|
|
(next_record_w): Likewise.
|
|
|
|
|
* io/unix.c (mem_alloc_r): Likewise.
|
|
|
|
|
(mem_alloc_r4): Likewise.
|
|
|
|
|
(mem_alloc_w): Likewise.
|
|
|
|
|
(mem_alloc_w4): Likewise.
|
|
|
|
|
(mem_read): Likewise.
|
|
|
|
|
(mem_read4): Likewise.
|
|
|
|
|
(mem_write): Likewise.
|
|
|
|
|
(mem_write4): Likewise.
|
|
|
|
|
(open_internal): Likewise.
|
|
|
|
|
(open_internal4): Likewise.
|
|
|
|
|
* io/unix.h (open_internal): Likewise.
|
|
|
|
|
(open_internal4): Likewise.
|
|
|
|
|
(mem_alloc_w): Likewise.
|
|
|
|
|
(mem_alloc_r): Likewise.
|
|
|
|
|
(mem_alloc_w4): Likewise.
|
|
|
|
|
(mem_alloc_r4): Likewise.
|
|
|
|
|
* io/write.c (write_check_cc): Likewise.
|
|
|
|
|
(write_cc): Likewise.
|
|
|
|
|
(write_a): Likewise.
|
|
|
|
|
(write_a_char4): Likewise.
|
|
|
|
|
|
2018-01-06 20:16:55 +01:00
|
|
|
|
2018-01-06 Janne Blomqvist <jb@gcc.gnu.org>
|
|
|
|
|
|
|
|
|
|
* io/write.c (namelist_write): Remove unused variable "i".
|
|
|
|
|
|
2018-01-06 20:09:52 +01:00
|
|
|
|
2018-01-06 Dominique d'Humieres <dominiq@lps.ens.fr>
|
|
|
|
|
Janne Blomqvist <jb@gcc.gnu.org>
|
|
|
|
|
|
|
|
|
|
PR fortran/83704
|
|
|
|
|
* io/write.c (write_character): Use size_t instead of int for
|
|
|
|
|
length.
|
|
|
|
|
|
2018-01-06 20:16:55 +01:00
|
|
|
|
2018-01-05 Janne Blomqvist <jb@gcc.gnu.org>
|
2018-01-06 11:42:57 +01:00
|
|
|
|
|
|
|
|
|
PR fortran/78534
|
|
|
|
|
* intrinsics/args.c (getarg_i4): Use gfc_charlen_type.
|
|
|
|
|
(get_command_argument_i4): Likewise.
|
|
|
|
|
(get_command_i4): Likewise.
|
|
|
|
|
* intrinsics/chmod.c (chmod_internal): Likewise.
|
|
|
|
|
* intrinsics/env.c (get_environment_variable_i4): Likewise.
|
|
|
|
|
* intrinsics/extends_type_of.c (struct vtype): Use size_t for size
|
|
|
|
|
member.
|
|
|
|
|
* intrinsics/gerror.c (gerror): Use gfc_charlen_type.
|
|
|
|
|
* intrinsics/getlog.c (getlog): Likewise.
|
|
|
|
|
* intrinsics/hostnm.c (hostnm_0): Likewise.
|
|
|
|
|
* intrinsics/string_intrinsics_inc.c (string_len_trim): Rework to
|
|
|
|
|
work if gfc_charlen_type is unsigned.
|
|
|
|
|
(string_scan): Likewise.
|
|
|
|
|
* io/transfer.c (transfer_character): Modify prototype.
|
|
|
|
|
(transfer_character_write): Likewise.
|
|
|
|
|
(transfer_character_wide): Likewise.
|
|
|
|
|
(transfer_character_wide_write): Likewise.
|
|
|
|
|
(transfer_array): Typecast to avoid signed-unsigned comparison.
|
|
|
|
|
* io/unit.c (is_trim_ok): Use gfc_charlen_type.
|
|
|
|
|
* io/write.c (namelist_write): Likewise.
|
|
|
|
|
* libgfortran.h (gfc_charlen_type): Change typedef to size_t.
|
|
|
|
|
|
2018-01-03 11:03:58 +01:00
|
|
|
|
2018-01-03 Jakub Jelinek <jakub@redhat.com>
|
|
|
|
|
|
|
|
|
|
Update copyright years.
|
|
|
|
|
|
PR libgfortran/83649 Chunk large reads and writes
It turns out that Linux never reads or writes more than 2147479552
bytes in a single syscall. For writes this is not a problem as
libgfortran already contains a loop around write() to handle short
writes. But for reads we cannot do this, since then read will hang if
we have a short read when reading from the terminal. Also, there are
reports that macOS fails I/O's larger than 2 GB. Thus, to work around
these issues do large reads/writes in chunks.
The testcase from the PR
program largewr
integer(kind=1) :: a(2_8**31+1)
a = 0
a(size(a, kind=8)) = 1
open(10, file="largewr.dat", access="stream", form="unformatted")
write (10) a
close(10)
a(size(a, kind=8)) = 2
open(10, file="largewr.dat", access="stream", form="unformatted")
read (10) a
if (a(size(a, kind=8)) == 1) then
print *, "All is well"
else
print *, "Oh no"
end if
end program largewr
fails on trunk but works with the patch.
Regtested on x86_64-pc-linux-gnu, committed to trunk.
libgfortran/ChangeLog:
2018-01-02 Janne Blomqvist <jb@gcc.gnu.org>
PR libgfortran/83649
* io/unix.c (MAX_CHUNK): New define.
(raw_read): For reads larger than MAX_CHUNK, loop.
(raw_write): Write no more than MAX_CHUNK bytes per iteration.
From-SVN: r256074
2018-01-02 14:25:10 +01:00
|
|
|
|
2018-01-02 Janne Blomqvist <jb@gcc.gnu.org>
|
|
|
|
|
|
|
|
|
|
PR libgfortran/83649
|
|
|
|
|
* io/unix.c (MAX_CHUNK): New define.
|
|
|
|
|
(raw_read): For reads larger than MAX_CHUNK, loop.
|
|
|
|
|
(raw_write): Write no more than MAX_CHUNK bytes per iteration.
|
2016-01-04 15:30:50 +01:00
|
|
|
|
|
2018-01-03 11:03:58 +01:00
|
|
|
|
Copyright (C) 2018 Free Software Foundation, Inc.
|
2010-01-04 09:59:59 +01:00
|
|
|
|
|
|
|
|
|
Copying and distribution of this file, with or without modification,
|
|
|
|
|
are permitted in any medium without royalty provided the copyright
|
|
|
|
|
notice and this notice are preserved.
|