diff options
author | Thomas Koenig <tkoenig@gcc.gnu.org> | 2019-07-21 15:55:49 +0000 |
---|---|---|
committer | Thomas Koenig <tkoenig@gcc.gnu.org> | 2019-07-21 15:55:49 +0000 |
commit | c37b0163fe5307ab508489926114de9cf7e240c1 (patch) | |
tree | 205699e71034f0bc8b7603c02225124f390c4073 /gcc | |
parent | 037455d49c2c19521bf60253c098d0e1e48d68fa (diff) | |
download | gcc-c37b0163fe5307ab508489926114de9cf7e240c1.zip gcc-c37b0163fe5307ab508489926114de9cf7e240c1.tar.gz gcc-c37b0163fe5307ab508489926114de9cf7e240c1.tar.bz2 |
re PR libfortran/91030 (Poor performance of I/O -fconvert=big-endian)
2019-07-21 Thomas König <tkoenig@gcc.gnu.org>
PR libfortran/91030
* gfortran.texi (GFORTRAN_FORMATTED_BUFFER_SIZE): Document
(GFORTRAN_UNFORMATTED_BUFFER_SIZE): Likewise.
2019-07-21 Thomas König <tkoenig@gcc.gnu.org>
PR libfortran/91030
* io/unix.c (BUFFER_SIZE): Delete.
(BUFFER_FORMATTED_SIZE_DEFAULT): New variable.
(BUFFER_UNFORMATTED_SIZE_DEFAULT): New variable.
(unix_stream): Add buffer_size.
(buf_read): Use s->buffer_size instead of BUFFER_SIZE.
(buf_write): Likewise.
(buf_init): Add argument unformatted. Handle block sizes
for unformatted vs. formatted, using defaults if provided.
(fd_to_stream): Add argument unformatted in call to buf_init.
* libgfortran.h (options_t): Add buffer_size_formatted and
buffer_size_unformatted.
* runtime/environ.c (variable_table): Add
GFORTRAN_UNFORMATTED_BUFFER_SIZE and
GFORTRAN_FORMATTED_BUFFER_SIZE.
From-SVN: r273643
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/fortran/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/fortran/gfortran.texi | 16 |
2 files changed, 22 insertions, 0 deletions
diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index 342aaa5..c4c35ad 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,9 @@ +2019-07-21 Thomas König <tkoenig@gcc.gnu.org> + + PR libfortran/91030 + * gfortran.texi (GFORTRAN_FORMATTED_BUFFER_SIZE): Document + (GFORTRAN_UNFORMATTED_BUFFER_SIZE): Likewise. + 2019-07-16 Harald Anlauf <anlauf@gmx.de> PR fortran/90903 diff --git a/gcc/fortran/gfortran.texi b/gcc/fortran/gfortran.texi index 4f65450..16be9e0 100644 --- a/gcc/fortran/gfortran.texi +++ b/gcc/fortran/gfortran.texi @@ -611,6 +611,8 @@ Malformed environment variables are silently ignored. * GFORTRAN_LIST_SEPARATOR:: Separator for list output * GFORTRAN_CONVERT_UNIT:: Set endianness for unformatted I/O * GFORTRAN_ERROR_BACKTRACE:: Show backtrace on run-time errors +* GFORTRAN_FORMATTED_BUFFER_SIZE:: Buffer size for formatted files. +* GFORTRAN_UNFORMATTED_BUFFER_SIZE:: Buffer size for unformatted files. @end menu @node TMPDIR @@ -782,6 +784,20 @@ the backtracing, set the variable to @samp{n}, @samp{N}, @samp{0}. Default is to print a backtrace unless the @option{-fno-backtrace} compile option was used. +@node GFORTRAN_FORMATTED_BUFFER_SIZE +@section @env{GFORTRAN_FORMATTED_BUFFER_SIZE}---Set buffer size for formatted I/O + +The @env{GFORTRAN_FORMATTED_BUFFER_SIZE} environment variable +specifies buffer size in bytes to be used for formatted output. +The default value is 8192. + +@node GFORTRAN_UNFORMATTED_BUFFER_SIZE +@section @env{GFORTRAN_UNFORMATTED_BUFFER_SIZE}---Set buffer size for unformatted I/O + +The @env{GFORTRAN_UNFORMATTED_BUFFER_SIZE} environment variable +specifies buffer size in bytes to be used for unformatted output. +The default value is 131072. + @c ===================================================================== @c PART II: LANGUAGE REFERENCE @c ===================================================================== |