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