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