re PR fortran/83560 (list-directed formatting of INTEGER is missing plus on output...
[official-gcc.git] / libgfortran / ChangeLog
blobe94df2c75bd76b802b83ab4ddc007f62b2594925
1 2017-12-29  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
3         PR libgfortran/83560
4         * io/write.c (write_integer): Modify to use write_decimal.
5         For namelist mode, suppress leading blanks and emit them as
6         trailing blanks. Change parameter from len to kind for better
7         readability. (nml_write_obj): Fix comment style.
9 2017-12-16  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
11         PR libgfortran/81937
12         * io/list_read.c (next_char_internal): Don't attempt to read
13         from the internal unit stream if no bytes are left. Decrement
14         bytes_left in the right place.
16 2017-12-12  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
18         PR libgfortran/78549
19         * io/inquire.c (inquire_via_unit): Adjust test for existence for
20         pre-connected internal units.
21         * io/transfer.c (finalize_transfer): When done with a transfer
22         to internal units, free the format buffer and close the stream.
23         (st_read_done): Delete freeing the stream, now handled using
24         sclose in finalize_transfer. (st_write_done): Likewise.
25         * io/unit.c (get_unit): Return NULL for special reserved unit
26         numbers, signifying not accessible to the user.
27         (init_units): Insert the two special internal units into the
28         unit treap. This makes these unit structures available without
29         further allocations for later use by internal unit I/O. These
30         units are automatically deleted by normal program termination.
31         * io/unix.c (mem_close): Add a guard check to protect from double free.
33 2017-12-03  Thomas Koenig  <tkoenig@gcc.gnu.org>
35         PR fortran/36313
36         * Makefile.am: Add new files for character-valued
37         maxval and minval.
38         * Makefile.in: Regenerated.
39         * gfortran.map: Add new functions.
40         * m4/iforeach-s2.m4: New file.
41         * m4/ifunction-s2.m4: New file.
42         * m4/iparm.m4: Add intitval for minval and maxval.
43         * m4/maxval0s.m4: New file.
44         * m4/maxval1s.m4: New file.
45         * m4/minval0s.m4: New file.
46         * m4/minval1s.m4: New file.
47         * generated/maxval0_s1.c: New file.
48         * generated/maxval0_s4.c: New file.
49         * generated/maxval1_s1.c: New file.
50         * generated/maxval1_s4.c: New file.
51         * generated/minval0_s1.c: New file.
52         * generated/minval0_s4.c: New file.
53         * generated/minval1_s1.c: New file.
54         * generated/minval1_s4.c: New file.
56 2017-12-03  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
57             Dominique d'Humieres  <dominiq@lps.ens.fr>
59         PR libgfortran/83191
60         * io/transfer.c (list_formatted_read_scalar): Do not set
61         namelist_mode bit here. (namelist_read): Likewise.
62         (data_transfer_init): Clear the mode bit here.
63         (finalize_transfer): Do set the mode bit just before any calls
64         to namelist_read or namelist_write. It can now be referred to
65         in complex_write.
66         * io/write.c (write_complex): Suppress the leading blanks when
67         namelist_mode bit is not set to 1.
69 2017-12-02  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
71         PR libgfortran/83225
72         * io/io.h (is_internal_unit): Use the unit_is_internal bit.
73         * io/transfer.c (data_transfer_init): Set the bit to true for
74         internal units. Use that bit for checks for internal unit
75         initializations.
76         * io/unit.c (insert_unit): As a precaution, set the
77         internal_unit_kind to zero when a unit structure is first created.
79 2017-11-28  Janne Blomqvist  <jb@gcc.gnu.org>
81         PR fortran/53796
82         * io/inquire.c (inquire_via_unit): Set recl to -1 for unconnected
83         units.
84         * io/io.h (default_recl): New variable.
85         * io/open.c (new_unit): Set recl to default_recl for sequential,
86         -2 for stream access.
87         * io/transfer.c (read_block_form): Test against default_recl
88         instead of DEFAULT_RECL.
89         (write_block): Likewise.
90         * io/unit.c (init_units): Calculate max_offset, default_recl.
91         * libgfortran.h (DEFAULT_RECL): Remove.
92         * runtime/environ.c: Remove GFORTRAN_DEFAULT_RECL.
94 2017-11-28  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
96         PR libgfortran/83168
97         * io/write.c (select_string): Bump size by one to avoid
98         overrun.
100 2017-11-24  Janne Blomqvist  <jb@gcc.gnu.org>
102         PR fortran/36313
103         * m4/maxloc2s.m4: Replace int with gfc_charlen_type, take 3.
104         * m4/minloc2s.m4: Likewise.
105         * generated/maxloc2_16_s1.c: Regenerated.
106         * generated/maxloc2_16_s4.c: Regenerated.
107         * generated/maxloc2_4_s1.c: Regenerated.
108         * generated/maxloc2_4_s4.c: Regenerated.
109         * generated/maxloc2_8_s1.c: Regenerated.
110         * generated/maxloc2_8_s4.c: Regenerated.
111         * generated/minloc2_16_s1.c: Regenerated.
112         * generated/minloc2_16_s4.c: Regenerated.
113         * generated/minloc2_4_s1.c: Regenerated.
114         * generated/minloc2_4_s4.c: Regenerated.
115         * generated/minloc2_8_s1.c: Regenerated.
116         * generated/minloc2_8_s4.c: Regenerated.
118 2017-11-23  Thomas Koenig  <tkoenig@gcc.gnu.org>
120         PR fortran/36313
121         * m4/maxloc2s.m4: Replace int for character length by
122         gfc_charlen_type.
123         * m4/minloc2s.m4: Likewise.
124         * generated./maxloc2_16_s1.c: Regenerated.
125         * generated./maxloc2_16_s4.c: Regenerated.
126         * generated./maxloc2_4_s1.c: Regenerated.
127         * generated./maxloc2_4_s4.c: Regenerated.
128         * generated./maxloc2_8_s1.c: Regenerated.
129         * generated./maxloc2_8_s4.c: Regenerated.
130         * generated./minloc2_16_s1.c: Regenerated.
131         * generated./minloc2_16_s4.c: Regenerated.
132         * generated./minloc2_4_s1.c: Regenerated.
133         * generated./minloc2_4_s4.c: Regenerated.
134         * generated./minloc2_8_s1.c: Regenerated.
135         * generated./minloc2_8_s4.c: Regenerated.
137 2017-11-22  Janne Blomqvist  <jb@gcc.gnu.org>
139         * intrinsics/eoshift0.c (eoshift0): Make shift an index_type.
140         * intrinsics/eoshift2.c (eoshift2): Make shift an index_type.
142 2017-11-22  Janne Blomqvist  <jb@gcc.gnu.org>
144         PR libfortran/83097
145         * io/inquire.c (inquire_via_unit): Use __BYTE_ORDER__ predefined
146         macro.
147         * io/open.c (st_open): Likewise.
148         * io/transfer.c (data_transfer_init): Likewise.
149         * io/write.c (btoa_big): Likewise.
150         (otoa_big): Likewise.
151         (ztoa_big): Likewise.
152         * libgfortran.h (big_endian): Remove variable.
153         (GFOR_POINTER_TO_L1): Use __BYTE_ORDER__ macro.
154         * runtime/main.c (determine_endianness): Remove function.
155         (init): Remove call to determine_endianness.
156         * runtime/minimal.c: Remove setting big_endian variable.
158 2017-11-22  Thomas Koenig  <tkoenig@gcc.gnu.org>
160         PR fortran/36313
161         * Makefile.am: Add i_maxloc0s_c, i_maxloc1s_c, i_maxloc2s_c,
162         i_minloc0s_c, i_minloc1s_c and i_minloc2s_c.
163         * Makefile.in: Regenerated.
164         * generated/maxloc0_16_s1.c: New file.
165         * generated/maxloc0_16_s4.c: New file.
166         * generated/maxloc0_4_s1.c: New file.
167         * generated/maxloc0_4_s4.c: New file.
168         * generated/maxloc0_8_s1.c: New file.
169         * generated/maxloc0_8_s4.c: New file.
170         * generated/maxloc1_16_s1.c: New file.
171         * generated/maxloc1_16_s4.c: New file.
172         * generated/maxloc1_4_s1.c: New file.
173         * generated/maxloc1_4_s4.c: New file.
174         * generated/maxloc1_8_s1.c: New file.
175         * generated/maxloc1_8_s4.c: New file.
176         * generated/maxloc2_16_s1.c: New file.
177         * generated/maxloc2_16_s4.c: New file.
178         * generated/maxloc2_4_s1.c: New file.
179         * generated/maxloc2_4_s4.c: New file.
180         * generated/maxloc2_8_s1.c: New file.
181         * generated/maxloc2_8_s4.c: New file.
182         * generated/minloc0_16_s1.c: New file.
183         * generated/minloc0_16_s4.c: New file.
184         * generated/minloc0_4_s1.c: New file.
185         * generated/minloc0_4_s4.c: New file.
186         * generated/minloc0_8_s1.c: New file.
187         * generated/minloc0_8_s4.c: New file.
188         * generated/minloc1_16_s1.c: New file.
189         * generated/minloc1_16_s4.c: New file.
190         * generated/minloc1_4_s1.c: New file.
191         * generated/minloc1_4_s4.c: New file.
192         * generated/minloc1_8_s1.c: New file.
193         * generated/minloc1_8_s4.c: New file.
194         * generated/minloc2_16_s1.c: New file.
195         * generated/minloc2_16_s4.c: New file.
196         * generated/minloc2_4_s1.c: New file.
197         * generated/minloc2_4_s4.c: New file.
198         * generated/minloc2_8_s1.c: New file.
199         * generated/minloc2_8_s4.c: New file.
200         * m4/iforeach-s.m4: New file.
201         * m4/ifunction-s.m4: New file.
202         * m4/maxloc0s.m4: New file.
203         * m4/maxloc1s.m4: New file.
204         * m4/maxloc2s.m4: New file.
205         * m4/minloc0s.m4: New file.
206         * m4/minloc1s.m4: New file.
207         * m4/minloc2s.m4: New file.
208         * gfortran.map: Add new functions.
209         * libgfortran.h: Add gfc_array_s1 and gfc_array_s4.
211 2017-11-22  Janne Blomqvist  <jb@gcc.gnu.org>
213         PR libfortran/83070
214         * intrinsics/eoshift0.c (eoshift0): Fix -Wsign-compare warning by
215         making a_ex and r_ex index_type instead of size_t.
217 2017-11-20  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
219         PR libgfortran/78549
220         * io/io.h (newunit_free): Add declaration. Clean some whitespace.
221         * io/transfer.c (st_read_done, st_write_done): Call newunit_free.
222         * io/unit.c (newunit_free): Change type from static void to void.
224 2017-11-19  Janne Blomqvist  <jb@gcc.gnu.org>
226         PR fortran/44292
227         * io/transfer.c (skip_record): Use gfc_offset to handle large
228         records.
229         (next_record_r): Likewise.
230         (sset): Likewise.
231         (next_record_w): Use gfc_offset/ptrdiff_t appropriately.
233 2017-11-18  Janne Blomqvist  <jb@gcc.gnu.org>
235         PR fortran/83036
236         * io/io.h: Make nextrec a GFC_IO_INT*.
238 2017-11-18  Janne Blomqvist  <jb@gcc.gnu.org>
240         PR fortran/44292
241         * io/io.h: Make recl_in a GC_IO_INT and recl_out a type
242         GFC_IO_INT*.
244 2017-11-17  Igor Tsimbalist  <igor.v.tsimbalist@intel.com>
246         * acinclude.m4: Add enable.m4, cet.m4.
247         * Makefile.in: Regenerate.
248         * configure: Likewise.
249         * configure.ac: Set CET_FLAGS. Update AM_FCFLAGS,
250         AM_CFLAGS, CFLAGS.
252 2017-10-27  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
253             Rimvydas (RJ)
255         PR libgfortran/81938
256         io/format.c (free_format_data): Don't try to free vlist
257         descriptors past the end of the fnode array.
259 2017-10-10  Thomas Koenig  <tkoenig@gcc.gnu.org>
261         PR libfortran/82233
262         * intrinsics/execute_command_line.c (execute_command_line):
263         No call to runtime_error if cmdstat is present.
265 2017-09-24  Dominique d'Humieres  <dominiq@lps.ens.fr>
267         PR libgfortran/79612
268         * runtime/bounds.c: Use GFC_ASSERT.
270 2017-09-10  Paul Thomas  <pault@gcc.gnu.org>
272         PR fortran/34640
273         * libgfortran/libgfortran.h: Add span field to descriptor.
274         * libgfortran/libtool-version : Bump up version number to 5:0:0.
276 2017-08-27  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
278         PR libgfortran/78387
279         * io/list_read.c (nml_read_obj): Remove use of stash.
280         * io/transfer.c (st_read_done, st_write_done): Likewise.
281         * io/unit.c (stash_internal_unit): Delete function.
282         (get_unit): Remove use of stash.
283         (init_units): Likewise.
284         (close_units): Likewise.
285         * io/write.c (nml_write_obj): Likewise:
287 2017-07-31  Thomas Koenig  <tkoenig@gcc.gnu.org>
289         PR fortran/81581
290         * m4/ifuntion.m4 (name`'rtype_qual`_'atype_code): Perform check
291         for dim.
292         (`m'name`'rtype_qual`_'atype_code): Likewise. Change type of rank
293         and tim to index_type.
294         (`s'name`'rtype_qual`_'atype_code): Perform check for dim.
295         * generated/iall_i16.c: Regenerated.
296         * generated/iall_i1.c: Regenerated.
297         * generated/iall_i2.c: Regenerated.
298         * generated/iall_i4.c: Regenerated.
299         * generated/iall_i8.c: Regenerated.
300         * generated/iany_i16.c: Regenerated.
301         * generated/iany_i1.c: Regenerated.
302         * generated/iany_i2.c: Regenerated.
303         * generated/iany_i4.c: Regenerated.
304         * generated/iany_i8.c: Regenerated.
305         * generated/iparity_i16.c: Regenerated.
306         * generated/iparity_i1.c: Regenerated.
307         * generated/iparity_i2.c: Regenerated.
308         * generated/iparity_i4.c: Regenerated.
309         * generated/iparity_i8.c: Regenerated.
310         * generated/maxloc1_16_i16.c: Regenerated.
311         * generated/maxloc1_16_i1.c: Regenerated.
312         * generated/maxloc1_16_i2.c: Regenerated.
313         * generated/maxloc1_16_i4.c: Regenerated.
314         * generated/maxloc1_16_i8.c: Regenerated.
315         * generated/maxloc1_16_r10.c: Regenerated.
316         * generated/maxloc1_16_r16.c: Regenerated.
317         * generated/maxloc1_16_r4.c: Regenerated.
318         * generated/maxloc1_16_r8.c: Regenerated.
319         * generated/maxloc1_4_i16.c: Regenerated.
320         * generated/maxloc1_4_i1.c: Regenerated.
321         * generated/maxloc1_4_i2.c: Regenerated.
322         * generated/maxloc1_4_i4.c: Regenerated.
323         * generated/maxloc1_4_i8.c: Regenerated.
324         * generated/maxloc1_4_r10.c: Regenerated.
325         * generated/maxloc1_4_r16.c: Regenerated.
326         * generated/maxloc1_4_r4.c: Regenerated.
327         * generated/maxloc1_4_r8.c: Regenerated.
328         * generated/maxloc1_8_i16.c: Regenerated.
329         * generated/maxloc1_8_i1.c: Regenerated.
330         * generated/maxloc1_8_i2.c: Regenerated.
331         * generated/maxloc1_8_i4.c: Regenerated.
332         * generated/maxloc1_8_i8.c: Regenerated.
333         * generated/maxloc1_8_r10.c: Regenerated.
334         * generated/maxloc1_8_r16.c: Regenerated.
335         * generated/maxloc1_8_r4.c: Regenerated.
336         * generated/maxloc1_8_r8.c: Regenerated.
337         * generated/maxval_i16.c: Regenerated.
338         * generated/maxval_i1.c: Regenerated.
339         * generated/maxval_i2.c: Regenerated.
340         * generated/maxval_i4.c: Regenerated.
341         * generated/maxval_i8.c: Regenerated.
342         * generated/maxval_r10.c: Regenerated.
343         * generated/maxval_r16.c: Regenerated.
344         * generated/maxval_r4.c: Regenerated.
345         * generated/maxval_r8.c: Regenerated.
346         * generated/minloc1_16_i16.c: Regenerated.
347         * generated/minloc1_16_i1.c: Regenerated.
348         * generated/minloc1_16_i2.c: Regenerated.
349         * generated/minloc1_16_i4.c: Regenerated.
350         * generated/minloc1_16_i8.c: Regenerated.
351         * generated/minloc1_16_r10.c: Regenerated.
352         * generated/minloc1_16_r16.c: Regenerated.
353         * generated/minloc1_16_r4.c: Regenerated.
354         * generated/minloc1_16_r8.c: Regenerated.
355         * generated/minloc1_4_i16.c: Regenerated.
356         * generated/minloc1_4_i1.c: Regenerated.
357         * generated/minloc1_4_i2.c: Regenerated.
358         * generated/minloc1_4_i4.c: Regenerated.
359         * generated/minloc1_4_i8.c: Regenerated.
360         * generated/minloc1_4_r10.c: Regenerated.
361         * generated/minloc1_4_r16.c: Regenerated.
362         * generated/minloc1_4_r4.c: Regenerated.
363         * generated/minloc1_4_r8.c: Regenerated.
364         * generated/minloc1_8_i16.c: Regenerated.
365         * generated/minloc1_8_i1.c: Regenerated.
366         * generated/minloc1_8_i2.c: Regenerated.
367         * generated/minloc1_8_i4.c: Regenerated.
368         * generated/minloc1_8_i8.c: Regenerated.
369         * generated/minloc1_8_r10.c: Regenerated.
370         * generated/minloc1_8_r16.c: Regenerated.
371         * generated/minloc1_8_r4.c: Regenerated.
372         * generated/minloc1_8_r8.c: Regenerated.
373         * generated/minval_i16.c: Regenerated.
374         * generated/minval_i1.c: Regenerated.
375         * generated/minval_i2.c: Regenerated.
376         * generated/minval_i4.c: Regenerated.
377         * generated/minval_i8.c: Regenerated.
378         * generated/minval_r10.c: Regenerated.
379         * generated/minval_r16.c: Regenerated.
380         * generated/minval_r4.c: Regenerated.
381         * generated/minval_r8.c: Regenerated.
382         * generated/norm2_r10.c: Regenerated.
383         * generated/norm2_r16.c: Regenerated.
384         * generated/norm2_r4.c: Regenerated.
385         * generated/norm2_r8.c: Regenerated.
386         * generated/parity_l16.c: Regenerated.
387         * generated/parity_l1.c: Regenerated.
388         * generated/parity_l2.c: Regenerated.
389         * generated/parity_l4.c: Regenerated.
390         * generated/parity_l8.c: Regenerated.
391         * generated/product_c10.c: Regenerated.
392         * generated/product_c16.c: Regenerated.
393         * generated/product_c4.c: Regenerated.
394         * generated/product_c8.c: Regenerated.
395         * generated/product_i16.c: Regenerated.
396         * generated/product_i1.c: Regenerated.
397         * generated/product_i2.c: Regenerated.
398         * generated/product_i4.c: Regenerated.
399         * generated/product_i8.c: Regenerated.
400         * generated/product_r10.c: Regenerated.
401         * generated/product_r16.c: Regenerated.
402         * generated/product_r4.c: Regenerated.
403         * generated/product_r8.c: Regenerated.
404         * generated/sum_c10.c: Regenerated.
405         * generated/sum_c16.c: Regenerated.
406         * generated/sum_c4.c: Regenerated.
407         * generated/sum_c8.c: Regenerated.
408         * generated/sum_i16.c: Regenerated.
409         * generated/sum_i1.c: Regenerated.
410         * generated/sum_i2.c: Regenerated.
411         * generated/sum_i4.c: Regenerated.
412         * generated/sum_i8.c: Regenerated.
413         * generated/sum_r10.c: Regenerated.
414         * generated/sum_r16.c: Regenerated.
415         * generated/sum_r4.c: Regenerated.
416         * generated/sum_r8.c: Regenerated.
418 2017-07-24  Thomas Koenig  <tkoenig@gcc.gnu.org>
420         PR fortran/80365
421         * io/unix.c (buf_write):  Return early if there is
422         nothing to write.
424 2017-07-09  Thomas Koenig  <tkoenig@gcc.gnu.org>
426         * intrinsics/eoshift2.c (eoshift2):  Use memcpy
427         for innermost copy where possible.
428         * m4/eoshift1.m4 (eoshift1): Likewise.
429         * m4/eoshift3.m4 (eoshift3): Likewise.
430         * generated/eoshift1_16.c: Regenerated.
431         * generated/eoshift1_4.c: Regenerated.
432         * generated/eoshift1_8.c: Regenerated.
433         * generated/eoshift3_16.c: Regenerated.
434         * generated/eoshift3_4.c: Regenerated.
435         * generated/eoshift3_8.c: Regenerated.
437 2017-07-02  Thomas Koenig  <tkoenig@gcc.gnu.org>
439         * intrinsics/eoshift0.c:  For contiguous arrays, use
440         block algorithm.  Use memcpy where possible.
442 2017-06-26  Jim Wilson  <jim.wilson@r3-a15.aus-colo>
444         PR libfortran/81195
445         * io/unit.c (get_unit): Call __gthread_mutex_lock before newunit_stack
446         and newunit_tos references.  Call __gthread_mutex_unlock afterward.
448 2017-06-24  Thomas Koenig  <tkoenig@gcc.gnu.org>
450         PR fortran/52473
451         * Makefile.am:  Add i_cshift1a_c.  Add rules to generate files
452         from cshift1a.m4.
453         * Makefile.in: Regenerated.
454         * m4/cshift1a.m4: New file.
455         * m4/cshift.m4 (cshift1): Split up inner loop by removing
456         condition. Use memcpy where possible.  Call helper functions
457         based on dtype.
458         * libgfortran.h: Add prototypes for cshift1_16_c10,
459         cshift1_16_c16, cshift1_16_c4, cshift1_16_c8, cshift1_16_i1,
460         cshift1_16_i16, cshift1_16_i2, cshift1_16_i4, cshift1_16_i8,
461         cshift1_16_r10, cshift1_16_r16, cshift1_16_r4, cshift1_16_r8,
462         cshift1_4_c10, cshift1_4_c16, cshift1_4_c4, cshift1_4_c8,
463         cshift1_4_i1, cshift1_4_i16, cshift1_4_i2, cshift1_4_i4,
464         cshift1_4_i8, cshift1_4_r10, cshift1_4_r16, cshift1_4_r4,
465         cshift1_4_r8, cshift1_8_c10, cshift1_8_c16, cshift1_8_c4,
466         cshift1_8_c8, cshift1_8_i1, cshift1_8_i16, cshift1_8_i2,
467         cshift1_8_i4, cshift1_8_i8, cshift1_8_r10, cshift1_8_r16,
468         cshift1_8_r4 and cshift1_8_r8.
469         * generated/cshift1_16_c10.c: New file, generated from cshift1a.m4.
470         * generated/cshift1_16_c16.c: New file, generated from cshift1a.m4.
471         * generated/cshift1_16_c4.c: New file, generated from cshift1a.m4.
472         * generated/cshift1_16_c8.c: New file, generated from cshift1a.m4.
473         * generated/cshift1_16_i1.c: New file, generated from cshift1a.m4.
474         * generated/cshift1_16_i16.c: New file, generated from cshift1a.m4.
475         * generated/cshift1_16_i2.c: New file, generated from cshift1a.m4.
476         * generated/cshift1_16_i4.c: New file, generated from cshift1a.m4.
477         * generated/cshift1_16_i8.c: New file, generated from cshift1a.m4.
478         * generated/cshift1_16_r10.c: New file, generated from cshift1a.m4.
479         * generated/cshift1_16_r16.c: New file, generated from cshift1a.m4.
480         * generated/cshift1_16_r4.c: New file, generated from cshift1a.m4.
481         * generated/cshift1_16_r8.c: New file, generated from cshift1a.m4.
482         * generated/cshift1_4_c10.c: New file, generated from cshift1a.m4.
483         * generated/cshift1_4_c16.c: New file, generated from cshift1a.m4.
484         * generated/cshift1_4_c4.c: New file, generated from cshift1a.m4.
485         * generated/cshift1_4_c8.c: New file, generated from cshift1a.m4.
486         * generated/cshift1_4_i1.c: New file, generated from cshift1a.m4.
487         * generated/cshift1_4_i16.c: New file, generated from cshift1a.m4.
488         * generated/cshift1_4_i2.c: New file, generated from cshift1a.m4.
489         * generated/cshift1_4_i4.c: New file, generated from cshift1a.m4.
490         * generated/cshift1_4_i8.c: New file, generated from cshift1a.m4.
491         * generated/cshift1_4_r10.c: New file, generated from cshift1a.m4.
492         * generated/cshift1_4_r16.c: New file, generated from cshift1a.m4.
493         * generated/cshift1_4_r4.c: New file, generated from cshift1a.m4.
494         * generated/cshift1_4_r8.c: New file, generated from cshift1a.m4.
495         * generated/cshift1_8_c10.c: New file, generated from cshift1a.m4.
496         * generated/cshift1_8_c16.c: New file, generated from cshift1a.m4.
497         * generated/cshift1_8_c4.c: New file, generated from cshift1a.m4.
498         * generated/cshift1_8_c8.c: New file, generated from cshift1a.m4.
499         * generated/cshift1_8_i1.c: New file, generated from cshift1a.m4.
500         * generated/cshift1_8_i16.c: New file, generated from cshift1a.m4.
501         * generated/cshift1_8_i2.c: New file, generated from cshift1a.m4.
502         * generated/cshift1_8_i4.c: New file, generated from cshift1a.m4.
503         * generated/cshift1_8_i8.c: New file, generated from cshift1a.m4.
504         * generated/cshift1_8_r10.c: New file, generated from cshift1a.m4.
505         * generated/cshift1_8_r16.c: New file, generated from cshift1a.m4.
506         * generated/cshift1_8_r4.c: New file, generated from cshift1a.m4.
507         * generated/cshift1_8_r8.c: New file, generated from cshift1a.m4.
509 2017-06-18  Thomas Koenig  <tkoenig@gcc.gnu.org>
511         PR fortran/52473
512         * m4/cshift0.m4:  For arrays that are contiguous up to
513         shift, implement blocked algorighm for cshift.
514         * generated/cshift0_c10.c:  Regenerated.
515         * generated/cshift0_c16.c:  Regenerated.
516         * generated/cshift0_c4.c:  Regenerated.
517         * generated/cshift0_c8.c:  Regenerated.
518         * generated/cshift0_i1.c:  Regenerated.
519         * generated/cshift0_i16.c:  Regenerated.
520         * generated/cshift0_i2.c:  Regenerated.
521         * generated/cshift0_i4.c:  Regenerated.
522         * generated/cshift0_i8.c:  Regenerated.
523         * generated/cshift0_r10.c:  Regenerated.
524         * generated/cshift0_r16.c:  Regenerated.
525         * generated/cshift0_r4.c:  Regenerated.
526         * generated/cshift0_r8.c:  Regenerated.
528 2017-06-06  Thomas Koenig  <tkoenig@gcc.gnu.org>
530         PR fortran/80975
531         * m4/matmul_internal.m4:  Move zeroing before early return.
532         * generated/matmul_c10.c: Regenerated.
533         * generated/matmul_c16.c: Regenerated.
534         * generated/matmul_c4.c: Regenerated.
535         * generated/matmul_c8.c: Regenerated.
536         * generated/matmul_i1.c: Regenerated.
537         * generated/matmul_i16.c: Regenerated.
538         * generated/matmul_i2.c: Regenerated.
539         * generated/matmul_i4.c: Regenerated.
540         * generated/matmul_i8.c: Regenerated.
541         * generated/matmul_r10.c: Regenerated.
542         * generated/matmul_r16.c: Regenerated.
543         * generated/matmul_r4.c: Regenerated.
544         * generated/matmul_r8.c: Regenerated.
545         * generated/matmulavx128_c10.c: Regenerated.
546         * generated/matmulavx128_c16.c: Regenerated.
547         * generated/matmulavx128_c4.c: Regenerated.
548         * generated/matmulavx128_c8.c: Regenerated.
549         * generated/matmulavx128_i1.c: Regenerated.
550         * generated/matmulavx128_i16.c: Regenerated.
551         * generated/matmulavx128_i2.c: Regenerated.
552         * generated/matmulavx128_i4.c: Regenerated.
553         * generated/matmulavx128_i8.c: Regenerated.
554         * generated/matmulavx128_r10.c: Regenerated.
555         * generated/matmulavx128_r16.c: Regenerated.
556         * generated/matmulavx128_r4.c: Regenerated.
557         * generated/matmulavx128_r8.c: Regenerated.
559 2017-05-29  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
561         PR libgfortran/53029
562         * list_read.c (list_formatted_read_scala): Set the err return
563         value to the common.flags error values.
565 2017-05-28  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
567         * acinclude.m4 (LIBGFOR_CHECK_FMA3): Use test from
568         check_effective_target_fma in gcc.target/i386/i386.exp.
569         (LIBGFOR_CHECK_FMA4): Use test from check_effective_target_fma4.
570         * configure: Regenerate.
572 2017-05-26  Thomas Koenig  <tkoenig@gcc.gnu.org>
574         PR boostrap/80889
575         * acinclude.m4: Also set HAVE_AVX128 on the false
576         branch of LIBGFOR_CHECK_AVX128.
577         * configure:  Regenerated.
579 2017-05-25  Thomas Koenig  <tkoenig@gcc.gnu.org>
581         PR libfortran/78379
582         * Makefile.am: Add generated/matmulavx128_*.c files.
583         Handle them for compiling and setting the right flags.
584         * acinclude.m4: Add tests for FMA3, FMA4 and AVX128.
585         * configure.ac: Call them.
586         * Makefile.in: Regenerated.
587         * config.h.in: Regenerated.
588         * configure: Regenerated.
589         * m4/matmul.m4:  Handle AMD chips by calling 128-bit AVX
590         versions which use FMA3 or FMA4.
591         * m4/matmulavx128.m4: New file.
592         * generated/matmul_c10.c: Regenerated.
593         * generated/matmul_c16.c: Regenerated.
594         * generated/matmul_c4.c: Regenerated.
595         * generated/matmul_c8.c: Regenerated.
596         * generated/matmul_i1.c: Regenerated.
597         * generated/matmul_i16.c: Regenerated.
598         * generated/matmul_i2.c: Regenerated.
599         * generated/matmul_i4.c: Regenerated.
600         * generated/matmul_i8.c: Regenerated.
601         * generated/matmul_r10.c: Regenerated.
602         * generated/matmul_r16.c: Regenerated.
603         * generated/matmul_r4.c: Regenerated.
604         * generated/matmul_r8.c: Regenerated.
605         * generated/matmulavx128_c10.c: New file.
606         * generated/matmulavx128_c16.c: New file.
607         * generated/matmulavx128_c4.c: New file.
608         * generated/matmulavx128_c8.c: New file.
609         * generated/matmulavx128_i1.c: New file.
610         * generated/matmulavx128_i16.c: New file.
611         * generated/matmulavx128_i2.c: New file.
612         * generated/matmulavx128_i4.c: New file.
613         * generated/matmulavx128_i8.c: New file.
614         * generated/matmulavx128_r10.c: New file.
615         * generated/matmulavx128_r16.c: New file.
616         * generated/matmulavx128_r4.c: New file.
617         * generated/matmulavx128_r8.c: New file.
619 2017-05-19  Paul Thomas  <pault@gcc.gnu.org>
620             Jerry DeLisle  <jvdelisle@gcc.gnu.org>
622         PR fortran/80333
623         * list_read.c (nml_read_obj): Compute pointer into class/type
624         arrays from the nl->dim information. Update it for each iteration
625         of the loop for the given object.
627 2017-05-17  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
629         PR libgfortran/80741
630         * transfer.c (finalize_transfer): Reset last_char to 'empty'.
631         * file_pos.c (formatted_backspace): Likewise.
632         (st_endfile): Likewise.
633         (st_rewind): Likewise.
634         (st_flush): Likewise.
636 2017-05-15  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
638         PR libgfortran/80727
639         * transfer.c (read_sf_internal): Remove bogus code to detect EOR.
640         (read_block_form): For internal units, generate EOR if no more
641         bytes left in unit and we are trying to read with ADVANCE='NO'.
643 2017-05-15  Thomas Koenig  <tkoenig@gcc.gnu.org>
645         PR fortran/80765
646         * m4/matmul_internal.m4: Set bystride to correct value in
647         vector-matrix multiplicatin for later calculation of buffer
648         size.
649         * generated/matmul_c10.c: Regenerated.
650         * generated/matmul_c16.c: Regenerated.
651         * generated/matmul_c4.c: Regenerated.
652         * generated/matmul_c8.c: Regenerated.
653         * generated/matmul_i1.c: Regenerated.
654         * generated/matmul_i16.c: Regenerated.
655         * generated/matmul_i2.c: Regenerated.
656         * generated/matmul_i4.c: Regenerated.
657         * generated/matmul_i8.c: Regenerated.
658         * generated/matmul_r10.c: Regenerated.
659         * generated/matmul_r16.c: Regenerated.
660         * generated/matmul_r4.c: Regenerated.
661         * generated/matmul_r8.c: Regenerated.
663 2017-05-12  Thomas Schwinge  <thomas@codesourcery.com>
665         * runtime/environ.c (weak_secure_getenv): Fix "__secure_gettime"
666         vs. "__secure_getenv" typo.
667         (secure_getenv): Fix "HAVE__SECURE_GETENV"
668         vs. "HAVE___SECURE_GETENV" typo.
670 2017-05-11  Janne Blomqvist  <jb@gcc.gnu.org>
672         * libgfortran.h: HAVE_SECURE_GETENV: Don't check
673         HAVE___SECURE_GETENV.
674         * environ/runtime.c (secure_getenv): Use __secure_getenv via a
675         weak reference.
677 2017-05-10  Thomas Koenig  <tkoenig@gcc.gnu.org>
679         PR fortran/80687
680         PR fortran/80696
681         * m4/matmul_internal.m4:  'matmul_name`:  Always
682         use malloc/free to allocate t1.
683         * generated/matmul_c10.c: Regenerated.
684         * generated/matmul_c16.c: Regenerated.
685         * generated/matmul_c4.c: Regenerated.
686         * generated/matmul_c8.c: Regenerated.
687         * generated/matmul_i1.c: Regenerated.
688         * generated/matmul_i16.c: Regenerated.
689         * generated/matmul_i2.c: Regenerated.
690         * generated/matmul_i4.c: Regenerated.
691         * generated/matmul_i8.c: Regenerated.
692         * generated/matmul_r10.c: Regenerated.
693         * generated/matmul_r16.c: Regenerated.
694         * generated/matmul_r4.c: Regenerated.
695         * generated/matmul_r8.c: Regenerated.
697 2017-05-08  Thomas Koenig  <tkoenig@gcc.gnu.org>
699         PR fortran/80602
700         * m4/matmul_internal.m4:  'matmul_name`:  Change
701         t1 to a VLA of the required size.
702         * generated/matmul_c10.c: Regenerated.
703         * generated/matmul_c16.c: Regenerated.
704         * generated/matmul_c4.c: Regenerated.
705         * generated/matmul_c8.c: Regenerated.
706         * generated/matmul_i1.c: Regenerated.
707         * generated/matmul_i16.c: Regenerated.
708         * generated/matmul_i2.c: Regenerated.
709         * generated/matmul_i4.c: Regenerated.
710         * generated/matmul_i8.c: Regenerated.
711         * generated/matmul_r10.c: Regenerated.
712         * generated/matmul_r16.c: Regenerated.
713         * generated/matmul_r4.c: Regenerated.
714         * generated/matmul_r8.c: Regenerated.
716 2017-04-11  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
718         * close.c: Fix white space in pointer declarations and comment
719         formats where applicable.
720         * fbuf.c: Likewise.
721         * fbuf.h: Likewise.
722         * format.c: Likewise.
723         * inquire.c: Likewise.
724         * intrinsics.c: Likewise.
725         * list_read.c: Likewise.
726         * lock.c: Likewise.
727         * open.c: Likewise.
728         * read.c: Likewise.
729         * transfer.c: Likewise.
730         * unit.c: Likewise.
731         * unix.c: Likewise.
732         * unix.h: Likewise.
733         * write.c: Likewise.
735 2017-03-29  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
737         PR libgfortran/78670
738         * io/list_read.c (nml_get_obj_data): Delete code which calls the
739         child read procedure. (nml_read_obj): Insert the code which
740         calls the child procedure. Don't need to touch nodes if using
741         dtio since parent will not be traversing the components.
743 2017-03-28  Janus Weil  <janus@gcc.gnu.org>
745         PR fortran/78661
746         * io/write.c (nml_write_obj): Build a class container only if necessary.
748 2017-03-27  Dominique d'Humieres  <dominiq@lps.ens.fr>
750         * io/list_read.c: Insert /* Fall through. */ in the macro
751         CASE_SEPARATORS in order to silence warnings.
753 2017-03-25  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
755         PR libgfortran/78881
756         * io/io.h (st_parameter_dt): Rename unused component last_char to
757         child_saved_iostat. Move comment to gfc_unit.
758         * io/list_read.c (list_formatted_read_scalar): After call to
759         child READ procedure, save the returned iostat value for later
760         check. (finish_list_read): Only finish READ if child_saved_iostat
761         was OK.
762         * io/transfer.c (read_sf_internal): If there is a saved character
763         in last character, seek back one. Add a new check for EOR
764         condition. (read_sf): If there is a saved character
765         in last character, seek back one. (formatted_transfer_scalar_read):
766         Initialize last character before invoking child procedure.
767         (data_transfer_init): If child dtio, set advance
768         status to nonadvancing. Move update of size and check for EOR
769         condition to before child dtio return.
771 2017-03-17  Thomas Koenig  <tkoenig@gcc.gnu.org>
773         PR libfortran/79956
774         * m4/reshape.m4 (reshape_'rtype_ccode`):  Correct use
775         of GFC_ASSERT.
776         * generated/reshape_c10.c: Regenerated.
777         * generated/reshape_c16.c: Regenerated.
778         * generated/reshape_c4.c: Regenerated.
779         * generated/reshape_c8.c: Regenerated.
780         * generated/reshape_i16.c: Regenerated.
781         * generated/reshape_i4.c: Regenerated.
782         * generated/reshape_i8.c: Regenerated.
783         * generated/reshape_r10.c: Regenerated.
784         * generated/reshape_r16.c: Regenerated.
785         * generated/reshape_r4.c: Regenerated.
786         * generated/reshape_r8.c: Regenerated.
788 2017-03-15  NightStrike  <nightstrike@gmail.com>
789             Janne Blomqvist  <jb@gcc.gnu.org>
791         * intrinsics/random.c (getosrandom): Remove check for __CYGWIN__
792         preprocessor flag.
793         * intrinsics/system_clock.c: Likewise.
794         (system_clock_4): Likewise.
795         (system_clock_8): Likewise.
796         * intrinsics/time_1.h: Don't include windows.h if __CYGWIN__ is
797         defined.
799 2017-03-10  Thomas Koenig  <tkoenig@gcc.gnu.org>
801         PR libfortran/79956
802         * libgfortran.h (GFC_ASSERT):  New macro.
803         * m4/reshape.m4 (reshape_'rtype_ccode`):  Use GFC_ASSERT
804         to specify that sdim > 0 and rdim > 0.
805         * intrinsic/reshape_generic.c (reshape_internal):  Likweise.
806         * generated/reshape_c10.c: Regenerated.
807         * generated/reshape_c16.c: Regenerated.
808         * generated/reshape_c4.c: Regenerated.
809         * generated/reshape_c8.c: Regenerated.
810         * generated/reshape_i16.c: Regenerated.
811         * generated/reshape_i4.c: Regenerated.
812         * generated/reshape_i8.c: Regenerated.
813         * generated/reshape_r10.c: Regenerated.
814         * generated/reshape_r16.c: Regenerated.
815         * generated/reshape_r4.c: Regenerated.
816         * generated/reshape_r8.c: Regenerated.
818 2017-03-11  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
820         PR libgfortran/78854
821         * io/list_read.c (nml_get_obj_data): Stash internal unit for
822         later use by child procedures.
823         * io/write.c (nml_write_obj): Likewise.
824         * io/tranfer.c (data_transfer_init): Minor whitespace.
825         * io/unit.c (set_internal_uit): Look for the stashed internal
826         unit and use it if found.
828 2017-03-10  Thomas Koenig  <tkoenig@gcc.gnu.org>
830         PR libfortran/79956
831         * m4/iforeach.m4:  Change exit condition from loop for
832         increasing dimension to >=.  Fix type in comment.
833         * m4/ifunction.m4:  Likewise.
834         * m4/ifunction_logical.m4: Likewise.
835         * generated/all_l1.c: Regenerated.
836         * generated/all_l16.c: Regenerated.
837         * generated/all_l2.c: Regenerated.
838         * generated/all_l4.c: Regenerated.
839         * generated/all_l8.c: Regenerated.
840         * generated/any_l1.c: Regenerated.
841         * generated/any_l16.c: Regenerated.
842         * generated/any_l2.c: Regenerated.
843         * generated/any_l4.c: Regenerated.
844         * generated/any_l8.c: Regenerated.
845         * generated/count_16_l.c: Regenerated.
846         * generated/count_1_l.c: Regenerated.
847         * generated/count_2_l.c: Regenerated.
848         * generated/count_4_l.c: Regenerated.
849         * generated/count_8_l.c: Regenerated.
850         * generated/iall_i1.c: Regenerated.
851         * generated/iall_i16.c: Regenerated.
852         * generated/iall_i2.c: Regenerated.
853         * generated/iall_i4.c: Regenerated.
854         * generated/iall_i8.c: Regenerated.
855         * generated/iany_i1.c: Regenerated.
856         * generated/iany_i16.c: Regenerated.
857         * generated/iany_i2.c: Regenerated.
858         * generated/iany_i4.c: Regenerated.
859         * generated/iany_i8.c: Regenerated.
860         * generated/iparity_i1.c: Regenerated.
861         * generated/iparity_i16.c: Regenerated.
862         * generated/iparity_i2.c: Regenerated.
863         * generated/iparity_i4.c: Regenerated.
864         * generated/iparity_i8.c: Regenerated.
865         * generated/maxloc0_16_i1.c: Regenerated.
866         * generated/maxloc0_16_i16.c: Regenerated.
867         * generated/maxloc0_16_i2.c: Regenerated.
868         * generated/maxloc0_16_i4.c: Regenerated.
869         * generated/maxloc0_16_i8.c: Regenerated.
870         * generated/maxloc0_16_r10.c: Regenerated.
871         * generated/maxloc0_16_r16.c: Regenerated.
872         * generated/maxloc0_16_r4.c: Regenerated.
873         * generated/maxloc0_16_r8.c: Regenerated.
874         * generated/maxloc0_4_i1.c: Regenerated.
875         * generated/maxloc0_4_i16.c: Regenerated.
876         * generated/maxloc0_4_i2.c: Regenerated.
877         * generated/maxloc0_4_i4.c: Regenerated.
878         * generated/maxloc0_4_i8.c: Regenerated.
879         * generated/maxloc0_4_r10.c: Regenerated.
880         * generated/maxloc0_4_r16.c: Regenerated.
881         * generated/maxloc0_4_r4.c: Regenerated.
882         * generated/maxloc0_4_r8.c: Regenerated.
883         * generated/maxloc0_8_i1.c: Regenerated.
884         * generated/maxloc0_8_i16.c: Regenerated.
885         * generated/maxloc0_8_i2.c: Regenerated.
886         * generated/maxloc0_8_i4.c: Regenerated.
887         * generated/maxloc0_8_i8.c: Regenerated.
888         * generated/maxloc0_8_r10.c: Regenerated.
889         * generated/maxloc0_8_r16.c: Regenerated.
890         * generated/maxloc0_8_r4.c: Regenerated.
891         * generated/maxloc0_8_r8.c: Regenerated.
892         * generated/maxloc1_16_i1.c: Regenerated.
893         * generated/maxloc1_16_i16.c: Regenerated.
894         * generated/maxloc1_16_i2.c: Regenerated.
895         * generated/maxloc1_16_i4.c: Regenerated.
896         * generated/maxloc1_16_i8.c: Regenerated.
897         * generated/maxloc1_16_r10.c: Regenerated.
898         * generated/maxloc1_16_r16.c: Regenerated.
899         * generated/maxloc1_16_r4.c: Regenerated.
900         * generated/maxloc1_16_r8.c: Regenerated.
901         * generated/maxloc1_4_i1.c: Regenerated.
902         * generated/maxloc1_4_i16.c: Regenerated.
903         * generated/maxloc1_4_i2.c: Regenerated.
904         * generated/maxloc1_4_i4.c: Regenerated.
905         * generated/maxloc1_4_i8.c: Regenerated.
906         * generated/maxloc1_4_r10.c: Regenerated.
907         * generated/maxloc1_4_r16.c: Regenerated.
908         * generated/maxloc1_4_r4.c: Regenerated.
909         * generated/maxloc1_4_r8.c: Regenerated.
910         * generated/maxloc1_8_i1.c: Regenerated.
911         * generated/maxloc1_8_i16.c: Regenerated.
912         * generated/maxloc1_8_i2.c: Regenerated.
913         * generated/maxloc1_8_i4.c: Regenerated.
914         * generated/maxloc1_8_i8.c: Regenerated.
915         * generated/maxloc1_8_r10.c: Regenerated.
916         * generated/maxloc1_8_r16.c: Regenerated.
917         * generated/maxloc1_8_r4.c: Regenerated.
918         * generated/maxloc1_8_r8.c: Regenerated.
919         * generated/maxval_i1.c: Regenerated.
920         * generated/maxval_i16.c: Regenerated.
921         * generated/maxval_i2.c: Regenerated.
922         * generated/maxval_i4.c: Regenerated.
923         * generated/maxval_i8.c: Regenerated.
924         * generated/maxval_r10.c: Regenerated.
925         * generated/maxval_r16.c: Regenerated.
926         * generated/maxval_r4.c: Regenerated.
927         * generated/maxval_r8.c: Regenerated.
928         * generated/minloc0_16_i1.c: Regenerated.
929         * generated/minloc0_16_i16.c: Regenerated.
930         * generated/minloc0_16_i2.c: Regenerated.
931         * generated/minloc0_16_i4.c: Regenerated.
932         * generated/minloc0_16_i8.c: Regenerated.
933         * generated/minloc0_16_r10.c: Regenerated.
934         * generated/minloc0_16_r16.c: Regenerated.
935         * generated/minloc0_16_r4.c: Regenerated.
936         * generated/minloc0_16_r8.c: Regenerated.
937         * generated/minloc0_4_i1.c: Regenerated.
938         * generated/minloc0_4_i16.c: Regenerated.
939         * generated/minloc0_4_i2.c: Regenerated.
940         * generated/minloc0_4_i4.c: Regenerated.
941         * generated/minloc0_4_i8.c: Regenerated.
942         * generated/minloc0_4_r10.c: Regenerated.
943         * generated/minloc0_4_r16.c: Regenerated.
944         * generated/minloc0_4_r4.c: Regenerated.
945         * generated/minloc0_4_r8.c: Regenerated.
946         * generated/minloc0_8_i1.c: Regenerated.
947         * generated/minloc0_8_i16.c: Regenerated.
948         * generated/minloc0_8_i2.c: Regenerated.
949         * generated/minloc0_8_i4.c: Regenerated.
950         * generated/minloc0_8_i8.c: Regenerated.
951         * generated/minloc0_8_r10.c: Regenerated.
952         * generated/minloc0_8_r16.c: Regenerated.
953         * generated/minloc0_8_r4.c: Regenerated.
954         * generated/minloc0_8_r8.c: Regenerated.
955         * generated/minloc1_16_i1.c: Regenerated.
956         * generated/minloc1_16_i16.c: Regenerated.
957         * generated/minloc1_16_i2.c: Regenerated.
958         * generated/minloc1_16_i4.c: Regenerated.
959         * generated/minloc1_16_i8.c: Regenerated.
960         * generated/minloc1_16_r10.c: Regenerated.
961         * generated/minloc1_16_r16.c: Regenerated.
962         * generated/minloc1_16_r4.c: Regenerated.
963         * generated/minloc1_16_r8.c: Regenerated.
964         * generated/minloc1_4_i1.c: Regenerated.
965         * generated/minloc1_4_i16.c: Regenerated.
966         * generated/minloc1_4_i2.c: Regenerated.
967         * generated/minloc1_4_i4.c: Regenerated.
968         * generated/minloc1_4_i8.c: Regenerated.
969         * generated/minloc1_4_r10.c: Regenerated.
970         * generated/minloc1_4_r16.c: Regenerated.
971         * generated/minloc1_4_r4.c: Regenerated.
972         * generated/minloc1_4_r8.c: Regenerated.
973         * generated/minloc1_8_i1.c: Regenerated.
974         * generated/minloc1_8_i16.c: Regenerated.
975         * generated/minloc1_8_i2.c: Regenerated.
976         * generated/minloc1_8_i4.c: Regenerated.
977         * generated/minloc1_8_i8.c: Regenerated.
978         * generated/minloc1_8_r10.c: Regenerated.
979         * generated/minloc1_8_r16.c: Regenerated.
980         * generated/minloc1_8_r4.c: Regenerated.
981         * generated/minloc1_8_r8.c: Regenerated.
982         * generated/minval_i1.c: Regenerated.
983         * generated/minval_i16.c: Regenerated.
984         * generated/minval_i2.c: Regenerated.
985         * generated/minval_i4.c: Regenerated.
986         * generated/minval_i8.c: Regenerated.
987         * generated/minval_r10.c: Regenerated.
988         * generated/minval_r16.c: Regenerated.
989         * generated/minval_r4.c: Regenerated.
990         * generated/minval_r8.c: Regenerated.
991         * generated/norm2_r10.c: Regenerated.
992         * generated/norm2_r16.c: Regenerated.
993         * generated/norm2_r4.c: Regenerated.
994         * generated/norm2_r8.c: Regenerated.
995         * generated/parity_l1.c: Regenerated.
996         * generated/parity_l16.c: Regenerated.
997         * generated/parity_l2.c: Regenerated.
998         * generated/parity_l4.c: Regenerated.
999         * generated/parity_l8.c: Regenerated.
1000         * generated/product_c10.c: Regenerated.
1001         * generated/product_c16.c: Regenerated.
1002         * generated/product_c4.c: Regenerated.
1003         * generated/product_c8.c: Regenerated.
1004         * generated/product_i1.c: Regenerated.
1005         * generated/product_i16.c: Regenerated.
1006         * generated/product_i2.c: Regenerated.
1007         * generated/product_i4.c: Regenerated.
1008         * generated/product_i8.c: Regenerated.
1009         * generated/product_r10.c: Regenerated.
1010         * generated/product_r16.c: Regenerated.
1011         * generated/product_r4.c: Regenerated.
1012         * generated/product_r8.c: Regenerated.
1013         * generated/sum_c10.c: Regenerated.
1014         * generated/sum_c16.c: Regenerated.
1015         * generated/sum_c4.c: Regenerated.
1016         * generated/sum_c8.c: Regenerated.
1017         * generated/sum_i1.c: Regenerated.
1018         * generated/sum_i16.c: Regenerated.
1019         * generated/sum_i2.c: Regenerated.
1020         * generated/sum_i4.c: Regenerated.
1021         * generated/sum_i8.c: Regenerated.
1022         * generated/sum_r10.c: Regenerated.
1023         * generated/sum_r16.c: Regenerated.
1024         * generated/sum_r4.c: Regenerated.
1025         * generated/sum_r8.c: Regenerated.
1027 2017-03-05  Andre Vehreschild  <vehre@gcc.gnu.org>
1028             Alessandro Fanfarillo  <fanfarillo.gcc@gmail.com>
1030         * caf/libcaf.h: Added prototypes and stat codes for failed and stopped
1031         images.
1032         * caf/single.c (void _gfortran_caf_fail_image): Add the routine.
1033         (int _gfortran_caf_image_status): Same.
1034         (_gfortran_caf_failed_images): Same.
1035         (_gfortran_caf_stopped_images): Same.
1037 2017-03-02  Thomas Koenig  <tkoenig@gcc.gnu.org>
1038             Jakub Jelinek  <jakub@redhat.com>
1040         * m4/matmul.m4 (matmul_'rtype_code`):  Avoid
1041         race condition on storing function pointer.
1042         * generated/matmul_c10.c: Regenerated.
1043         * generated/matmul_c16.c: Regenerated.
1044         * generated/matmul_c4.c: Regenerated.
1045         * generated/matmul_c8.c: Regenerated.
1046         * generated/matmul_i1.c: Regenerated.
1047         * generated/matmul_i16.c: Regenerated.
1048         * generated/matmul_i2.c: Regenerated.
1049         * generated/matmul_i4.c: Regenerated.
1050         * generated/matmul_i8.c: Regenerated.
1051         * generated/matmul_r10.c: Regenerated.
1052         * generated/matmul_r16.c: Regenerated.
1053         * generated/matmul_r4.c: Regenerated.
1054         * generated/matmul_r8.c: Regenerated.
1056 2017-03-02  Thomas Koenig  <tkoenig@gcc.gnu.org>
1058         PR fortran/78379
1059         * m4/matmul.m4: (matmul_'rtype_code`_avx2): Also generate for
1060         reals.  Add fma to target options.
1061         (matmul_'rtype_code`):  Call AVX2 only if FMA is available.
1062         * generated/matmul_c10.c: Regenerated.
1063         * generated/matmul_c16.c: Regenerated.
1064         * generated/matmul_c4.c: Regenerated.
1065         * generated/matmul_c8.c: Regenerated.
1066         * generated/matmul_i1.c: Regenerated.
1067         * generated/matmul_i16.c: Regenerated.
1068         * generated/matmul_i2.c: Regenerated.
1069         * generated/matmul_i4.c: Regenerated.
1070         * generated/matmul_i8.c: Regenerated.
1071         * generated/matmul_r10.c: Regenerated.
1072         * generated/matmul_r16.c: Regenerated.
1073         * generated/matmul_r4.c: Regenerated.
1074         * generated/matmul_r8.c: Regenerated.
1076 2017-02-27  Janne Blomqvist  <jb@gcc.gnu.org>
1078         * intrinsics/random.c (getosrandom): Don't try to use rand_s on
1079         CYGWIN.
1081 2017-02-16  Paul Thomas  <pault@gcc.gnu.org>
1083         PR fortran/79382
1084         * io/transfer.c (check_dtio_proc): New function.
1085         (formatted_transfer_scalar_read): Use it.
1086         (formatted_transfer_scalar_write): ditto.
1088 2017-01-31  Steven G. Kargl  <kargl@gcc.gnu.org>
1090         PR fortran/79305
1091         * c99_protos.h: Spell HAVE_EXPL correctly.
1092         * intrinsics/c99_functions.c: Ditto.
1094 2017-01-19  Uros Bizjak  <ubizjak@gmail.com>
1096         PR target/78478
1097         * acinclude.m4: Include ../config/ax_check_define.m4
1098         * configure.ac: Check if _SOFT_FLOAT is defined.
1099         * configure.host (i?86 | x86_64): Use fpu-generic when
1100         have_soft_float is set.
1101         * configure: Regenerate.
1103 2017-01-19  Jakub Jelinek  <jakub@redhat.com>
1105         PR target/79127
1106         * acinclude.m4 (LIBGFOR_CHECK_AVX512F): Ensure the test clobbers
1107         some zmm16+ registers to verify they are handled by unwind info
1108         properly if needed.
1109         * configure: Regenerated.
1111 2017-01-17  Jakub Jelinek  <jakub@redhat.com>
1113         PR other/79046
1114         * configure.ac: Add GCC_BASE_VER.
1115         * Makefile.am (gcc_version): Use @get_gcc_base_ver@ instead of cat to
1116         get version from BASE-VER file.
1117         * configure: Regenerated.
1118         * Makefile.in: Regenerated.
1120 2017-01-13  Andre Vehreschild  <vehre@gcc.gnu.org>
1122         PR fortran/70696
1123         * caf/single.c (_gfortran_caf_register): Allocate enough memory for
1124         the event counter.
1126 2017-01-07  Andre Vehreschild  <vehre@gcc.gnu.org>
1128         PR fortran/78781
1129         PR fortran/78935
1130         * caf/single.c (send_by_ref): Fix addressing of non-allocatable scalar
1131         destination components.
1133 2017-01-01  Jakub Jelinek  <jakub@redhat.com>
1135         Update copyright years.
1137 Copyright (C) 2017 Free Software Foundation, Inc.
1139 Copying and distribution of this file, with or without modification,
1140 are permitted in any medium without royalty provided the copyright
1141 notice and this notice are preserved.