6b7da0a299a822cebe74e518b163b9b20c345fdf
[gcc.git] / libgfortran / ChangeLog
1 2017-05-12 Thomas Schwinge <thomas@codesourcery.com>
2
3 * runtime/environ.c (weak_secure_getenv): Fix "__secure_gettime"
4 vs. "__secure_getenv" typo.
5 (secure_getenv): Fix "HAVE__SECURE_GETENV"
6 vs. "HAVE___SECURE_GETENV" typo.
7
8 2017-05-11 Janne Blomqvist <jb@gcc.gnu.org>
9
10 * libgfortran.h: HAVE_SECURE_GETENV: Don't check
11 HAVE___SECURE_GETENV.
12 * environ/runtime.c (secure_getenv): Use __secure_getenv via a
13 weak reference.
14
15 2017-05-10 Thomas Koenig <tkoenig@gcc.gnu.org>
16
17 PR fortran/80687
18 PR fortran/80696
19 * m4/matmul_internal.m4: 'matmul_name`: Always
20 use malloc/free to allocate t1.
21 * generated/matmul_c10.c: Regenerated.
22 * generated/matmul_c16.c: Regenerated.
23 * generated/matmul_c4.c: Regenerated.
24 * generated/matmul_c8.c: Regenerated.
25 * generated/matmul_i1.c: Regenerated.
26 * generated/matmul_i16.c: Regenerated.
27 * generated/matmul_i2.c: Regenerated.
28 * generated/matmul_i4.c: Regenerated.
29 * generated/matmul_i8.c: Regenerated.
30 * generated/matmul_r10.c: Regenerated.
31 * generated/matmul_r16.c: Regenerated.
32 * generated/matmul_r4.c: Regenerated.
33 * generated/matmul_r8.c: Regenerated.
34
35 2017-05-08 Thomas Koenig <tkoenig@gcc.gnu.org>
36
37 PR fortran/80602
38 * m4/matmul_internal.m4: 'matmul_name`: Change
39 t1 to a VLA of the required size.
40 * generated/matmul_c10.c: Regenerated.
41 * generated/matmul_c16.c: Regenerated.
42 * generated/matmul_c4.c: Regenerated.
43 * generated/matmul_c8.c: Regenerated.
44 * generated/matmul_i1.c: Regenerated.
45 * generated/matmul_i16.c: Regenerated.
46 * generated/matmul_i2.c: Regenerated.
47 * generated/matmul_i4.c: Regenerated.
48 * generated/matmul_i8.c: Regenerated.
49 * generated/matmul_r10.c: Regenerated.
50 * generated/matmul_r16.c: Regenerated.
51 * generated/matmul_r4.c: Regenerated.
52 * generated/matmul_r8.c: Regenerated.
53
54 2017-04-11 Jerry DeLisle <jvdelisle@gcc.gnu.org>
55
56 * close.c: Fix white space in pointer declarations and comment
57 formats where applicable.
58 * fbuf.c: Likewise.
59 * fbuf.h: Likewise.
60 * format.c: Likewise.
61 * inquire.c: Likewise.
62 * intrinsics.c: Likewise.
63 * list_read.c: Likewise.
64 * lock.c: Likewise.
65 * open.c: Likewise.
66 * read.c: Likewise.
67 * transfer.c: Likewise.
68 * unit.c: Likewise.
69 * unix.c: Likewise.
70 * unix.h: Likewise.
71 * write.c: Likewise.
72
73 2017-03-29 Jerry DeLisle <jvdelisle@gcc.gnu.org>
74
75 PR libgfortran/78670
76 * io/list_read.c (nml_get_obj_data): Delete code which calls the
77 child read procedure. (nml_read_obj): Insert the code which
78 calls the child procedure. Don't need to touch nodes if using
79 dtio since parent will not be traversing the components.
80
81 2017-03-28 Janus Weil <janus@gcc.gnu.org>
82
83 PR fortran/78661
84 * io/write.c (nml_write_obj): Build a class container only if necessary.
85
86 2017-03-27 Dominique d'Humieres <dominiq@lps.ens.fr>
87
88 * io/list_read.c: Insert /* Fall through. */ in the macro
89 CASE_SEPARATORS in order to silence warnings.
90
91 2017-03-25 Jerry DeLisle <jvdelisle@gcc.gnu.org>
92
93 PR libgfortran/78881
94 * io/io.h (st_parameter_dt): Rename unused component last_char to
95 child_saved_iostat. Move comment to gfc_unit.
96 * io/list_read.c (list_formatted_read_scalar): After call to
97 child READ procedure, save the returned iostat value for later
98 check. (finish_list_read): Only finish READ if child_saved_iostat
99 was OK.
100 * io/transfer.c (read_sf_internal): If there is a saved character
101 in last character, seek back one. Add a new check for EOR
102 condition. (read_sf): If there is a saved character
103 in last character, seek back one. (formatted_transfer_scalar_read):
104 Initialize last character before invoking child procedure.
105 (data_transfer_init): If child dtio, set advance
106 status to nonadvancing. Move update of size and check for EOR
107 condition to before child dtio return.
108
109 2017-03-17 Thomas Koenig <tkoenig@gcc.gnu.org>
110
111 PR libfortran/79956
112 * m4/reshape.m4 (reshape_'rtype_ccode`): Correct use
113 of GFC_ASSERT.
114 * generated/reshape_c10.c: Regenerated.
115 * generated/reshape_c16.c: Regenerated.
116 * generated/reshape_c4.c: Regenerated.
117 * generated/reshape_c8.c: Regenerated.
118 * generated/reshape_i16.c: Regenerated.
119 * generated/reshape_i4.c: Regenerated.
120 * generated/reshape_i8.c: Regenerated.
121 * generated/reshape_r10.c: Regenerated.
122 * generated/reshape_r16.c: Regenerated.
123 * generated/reshape_r4.c: Regenerated.
124 * generated/reshape_r8.c: Regenerated.
125
126 2017-03-15 NightStrike <nightstrike@gmail.com>
127 Janne Blomqvist <jb@gcc.gnu.org>
128
129 * intrinsics/random.c (getosrandom): Remove check for __CYGWIN__
130 preprocessor flag.
131 * intrinsics/system_clock.c: Likewise.
132 (system_clock_4): Likewise.
133 (system_clock_8): Likewise.
134 * intrinsics/time_1.h: Don't include windows.h if __CYGWIN__ is
135 defined.
136
137 2017-03-10 Thomas Koenig <tkoenig@gcc.gnu.org>
138
139 PR libfortran/79956
140 * libgfortran.h (GFC_ASSERT): New macro.
141 * m4/reshape.m4 (reshape_'rtype_ccode`): Use GFC_ASSERT
142 to specify that sdim > 0 and rdim > 0.
143 * intrinsic/reshape_generic.c (reshape_internal): Likweise.
144 * generated/reshape_c10.c: Regenerated.
145 * generated/reshape_c16.c: Regenerated.
146 * generated/reshape_c4.c: Regenerated.
147 * generated/reshape_c8.c: Regenerated.
148 * generated/reshape_i16.c: Regenerated.
149 * generated/reshape_i4.c: Regenerated.
150 * generated/reshape_i8.c: Regenerated.
151 * generated/reshape_r10.c: Regenerated.
152 * generated/reshape_r16.c: Regenerated.
153 * generated/reshape_r4.c: Regenerated.
154 * generated/reshape_r8.c: Regenerated.
155
156 2017-03-11 Jerry DeLisle <jvdelisle@gcc.gnu.org>
157
158 PR libgfortran/78854
159 * io/list_read.c (nml_get_obj_data): Stash internal unit for
160 later use by child procedures.
161 * io/write.c (nml_write_obj): Likewise.
162 * io/tranfer.c (data_transfer_init): Minor whitespace.
163 * io/unit.c (set_internal_uit): Look for the stashed internal
164 unit and use it if found.
165
166 2017-03-10 Thomas Koenig <tkoenig@gcc.gnu.org>
167
168 PR libfortran/79956
169 * m4/iforeach.m4: Change exit condition from loop for
170 increasing dimension to >=. Fix type in comment.
171 * m4/ifunction.m4: Likewise.
172 * m4/ifunction_logical.m4: Likewise.
173 * generated/all_l1.c: Regenerated.
174 * generated/all_l16.c: Regenerated.
175 * generated/all_l2.c: Regenerated.
176 * generated/all_l4.c: Regenerated.
177 * generated/all_l8.c: Regenerated.
178 * generated/any_l1.c: Regenerated.
179 * generated/any_l16.c: Regenerated.
180 * generated/any_l2.c: Regenerated.
181 * generated/any_l4.c: Regenerated.
182 * generated/any_l8.c: Regenerated.
183 * generated/count_16_l.c: Regenerated.
184 * generated/count_1_l.c: Regenerated.
185 * generated/count_2_l.c: Regenerated.
186 * generated/count_4_l.c: Regenerated.
187 * generated/count_8_l.c: Regenerated.
188 * generated/iall_i1.c: Regenerated.
189 * generated/iall_i16.c: Regenerated.
190 * generated/iall_i2.c: Regenerated.
191 * generated/iall_i4.c: Regenerated.
192 * generated/iall_i8.c: Regenerated.
193 * generated/iany_i1.c: Regenerated.
194 * generated/iany_i16.c: Regenerated.
195 * generated/iany_i2.c: Regenerated.
196 * generated/iany_i4.c: Regenerated.
197 * generated/iany_i8.c: Regenerated.
198 * generated/iparity_i1.c: Regenerated.
199 * generated/iparity_i16.c: Regenerated.
200 * generated/iparity_i2.c: Regenerated.
201 * generated/iparity_i4.c: Regenerated.
202 * generated/iparity_i8.c: Regenerated.
203 * generated/maxloc0_16_i1.c: Regenerated.
204 * generated/maxloc0_16_i16.c: Regenerated.
205 * generated/maxloc0_16_i2.c: Regenerated.
206 * generated/maxloc0_16_i4.c: Regenerated.
207 * generated/maxloc0_16_i8.c: Regenerated.
208 * generated/maxloc0_16_r10.c: Regenerated.
209 * generated/maxloc0_16_r16.c: Regenerated.
210 * generated/maxloc0_16_r4.c: Regenerated.
211 * generated/maxloc0_16_r8.c: Regenerated.
212 * generated/maxloc0_4_i1.c: Regenerated.
213 * generated/maxloc0_4_i16.c: Regenerated.
214 * generated/maxloc0_4_i2.c: Regenerated.
215 * generated/maxloc0_4_i4.c: Regenerated.
216 * generated/maxloc0_4_i8.c: Regenerated.
217 * generated/maxloc0_4_r10.c: Regenerated.
218 * generated/maxloc0_4_r16.c: Regenerated.
219 * generated/maxloc0_4_r4.c: Regenerated.
220 * generated/maxloc0_4_r8.c: Regenerated.
221 * generated/maxloc0_8_i1.c: Regenerated.
222 * generated/maxloc0_8_i16.c: Regenerated.
223 * generated/maxloc0_8_i2.c: Regenerated.
224 * generated/maxloc0_8_i4.c: Regenerated.
225 * generated/maxloc0_8_i8.c: Regenerated.
226 * generated/maxloc0_8_r10.c: Regenerated.
227 * generated/maxloc0_8_r16.c: Regenerated.
228 * generated/maxloc0_8_r4.c: Regenerated.
229 * generated/maxloc0_8_r8.c: Regenerated.
230 * generated/maxloc1_16_i1.c: Regenerated.
231 * generated/maxloc1_16_i16.c: Regenerated.
232 * generated/maxloc1_16_i2.c: Regenerated.
233 * generated/maxloc1_16_i4.c: Regenerated.
234 * generated/maxloc1_16_i8.c: Regenerated.
235 * generated/maxloc1_16_r10.c: Regenerated.
236 * generated/maxloc1_16_r16.c: Regenerated.
237 * generated/maxloc1_16_r4.c: Regenerated.
238 * generated/maxloc1_16_r8.c: Regenerated.
239 * generated/maxloc1_4_i1.c: Regenerated.
240 * generated/maxloc1_4_i16.c: Regenerated.
241 * generated/maxloc1_4_i2.c: Regenerated.
242 * generated/maxloc1_4_i4.c: Regenerated.
243 * generated/maxloc1_4_i8.c: Regenerated.
244 * generated/maxloc1_4_r10.c: Regenerated.
245 * generated/maxloc1_4_r16.c: Regenerated.
246 * generated/maxloc1_4_r4.c: Regenerated.
247 * generated/maxloc1_4_r8.c: Regenerated.
248 * generated/maxloc1_8_i1.c: Regenerated.
249 * generated/maxloc1_8_i16.c: Regenerated.
250 * generated/maxloc1_8_i2.c: Regenerated.
251 * generated/maxloc1_8_i4.c: Regenerated.
252 * generated/maxloc1_8_i8.c: Regenerated.
253 * generated/maxloc1_8_r10.c: Regenerated.
254 * generated/maxloc1_8_r16.c: Regenerated.
255 * generated/maxloc1_8_r4.c: Regenerated.
256 * generated/maxloc1_8_r8.c: Regenerated.
257 * generated/maxval_i1.c: Regenerated.
258 * generated/maxval_i16.c: Regenerated.
259 * generated/maxval_i2.c: Regenerated.
260 * generated/maxval_i4.c: Regenerated.
261 * generated/maxval_i8.c: Regenerated.
262 * generated/maxval_r10.c: Regenerated.
263 * generated/maxval_r16.c: Regenerated.
264 * generated/maxval_r4.c: Regenerated.
265 * generated/maxval_r8.c: Regenerated.
266 * generated/minloc0_16_i1.c: Regenerated.
267 * generated/minloc0_16_i16.c: Regenerated.
268 * generated/minloc0_16_i2.c: Regenerated.
269 * generated/minloc0_16_i4.c: Regenerated.
270 * generated/minloc0_16_i8.c: Regenerated.
271 * generated/minloc0_16_r10.c: Regenerated.
272 * generated/minloc0_16_r16.c: Regenerated.
273 * generated/minloc0_16_r4.c: Regenerated.
274 * generated/minloc0_16_r8.c: Regenerated.
275 * generated/minloc0_4_i1.c: Regenerated.
276 * generated/minloc0_4_i16.c: Regenerated.
277 * generated/minloc0_4_i2.c: Regenerated.
278 * generated/minloc0_4_i4.c: Regenerated.
279 * generated/minloc0_4_i8.c: Regenerated.
280 * generated/minloc0_4_r10.c: Regenerated.
281 * generated/minloc0_4_r16.c: Regenerated.
282 * generated/minloc0_4_r4.c: Regenerated.
283 * generated/minloc0_4_r8.c: Regenerated.
284 * generated/minloc0_8_i1.c: Regenerated.
285 * generated/minloc0_8_i16.c: Regenerated.
286 * generated/minloc0_8_i2.c: Regenerated.
287 * generated/minloc0_8_i4.c: Regenerated.
288 * generated/minloc0_8_i8.c: Regenerated.
289 * generated/minloc0_8_r10.c: Regenerated.
290 * generated/minloc0_8_r16.c: Regenerated.
291 * generated/minloc0_8_r4.c: Regenerated.
292 * generated/minloc0_8_r8.c: Regenerated.
293 * generated/minloc1_16_i1.c: Regenerated.
294 * generated/minloc1_16_i16.c: Regenerated.
295 * generated/minloc1_16_i2.c: Regenerated.
296 * generated/minloc1_16_i4.c: Regenerated.
297 * generated/minloc1_16_i8.c: Regenerated.
298 * generated/minloc1_16_r10.c: Regenerated.
299 * generated/minloc1_16_r16.c: Regenerated.
300 * generated/minloc1_16_r4.c: Regenerated.
301 * generated/minloc1_16_r8.c: Regenerated.
302 * generated/minloc1_4_i1.c: Regenerated.
303 * generated/minloc1_4_i16.c: Regenerated.
304 * generated/minloc1_4_i2.c: Regenerated.
305 * generated/minloc1_4_i4.c: Regenerated.
306 * generated/minloc1_4_i8.c: Regenerated.
307 * generated/minloc1_4_r10.c: Regenerated.
308 * generated/minloc1_4_r16.c: Regenerated.
309 * generated/minloc1_4_r4.c: Regenerated.
310 * generated/minloc1_4_r8.c: Regenerated.
311 * generated/minloc1_8_i1.c: Regenerated.
312 * generated/minloc1_8_i16.c: Regenerated.
313 * generated/minloc1_8_i2.c: Regenerated.
314 * generated/minloc1_8_i4.c: Regenerated.
315 * generated/minloc1_8_i8.c: Regenerated.
316 * generated/minloc1_8_r10.c: Regenerated.
317 * generated/minloc1_8_r16.c: Regenerated.
318 * generated/minloc1_8_r4.c: Regenerated.
319 * generated/minloc1_8_r8.c: Regenerated.
320 * generated/minval_i1.c: Regenerated.
321 * generated/minval_i16.c: Regenerated.
322 * generated/minval_i2.c: Regenerated.
323 * generated/minval_i4.c: Regenerated.
324 * generated/minval_i8.c: Regenerated.
325 * generated/minval_r10.c: Regenerated.
326 * generated/minval_r16.c: Regenerated.
327 * generated/minval_r4.c: Regenerated.
328 * generated/minval_r8.c: Regenerated.
329 * generated/norm2_r10.c: Regenerated.
330 * generated/norm2_r16.c: Regenerated.
331 * generated/norm2_r4.c: Regenerated.
332 * generated/norm2_r8.c: Regenerated.
333 * generated/parity_l1.c: Regenerated.
334 * generated/parity_l16.c: Regenerated.
335 * generated/parity_l2.c: Regenerated.
336 * generated/parity_l4.c: Regenerated.
337 * generated/parity_l8.c: Regenerated.
338 * generated/product_c10.c: Regenerated.
339 * generated/product_c16.c: Regenerated.
340 * generated/product_c4.c: Regenerated.
341 * generated/product_c8.c: Regenerated.
342 * generated/product_i1.c: Regenerated.
343 * generated/product_i16.c: Regenerated.
344 * generated/product_i2.c: Regenerated.
345 * generated/product_i4.c: Regenerated.
346 * generated/product_i8.c: Regenerated.
347 * generated/product_r10.c: Regenerated.
348 * generated/product_r16.c: Regenerated.
349 * generated/product_r4.c: Regenerated.
350 * generated/product_r8.c: Regenerated.
351 * generated/sum_c10.c: Regenerated.
352 * generated/sum_c16.c: Regenerated.
353 * generated/sum_c4.c: Regenerated.
354 * generated/sum_c8.c: Regenerated.
355 * generated/sum_i1.c: Regenerated.
356 * generated/sum_i16.c: Regenerated.
357 * generated/sum_i2.c: Regenerated.
358 * generated/sum_i4.c: Regenerated.
359 * generated/sum_i8.c: Regenerated.
360 * generated/sum_r10.c: Regenerated.
361 * generated/sum_r16.c: Regenerated.
362 * generated/sum_r4.c: Regenerated.
363 * generated/sum_r8.c: Regenerated.
364
365 2017-03-05 Andre Vehreschild <vehre@gcc.gnu.org>
366 Alessandro Fanfarillo <fanfarillo.gcc@gmail.com>
367
368 * caf/libcaf.h: Added prototypes and stat codes for failed and stopped
369 images.
370 * caf/single.c (void _gfortran_caf_fail_image): Add the routine.
371 (int _gfortran_caf_image_status): Same.
372 (_gfortran_caf_failed_images): Same.
373 (_gfortran_caf_stopped_images): Same.
374
375 2017-03-02 Thomas Koenig <tkoenig@gcc.gnu.org>
376 Jakub Jelinek <jakub@redhat.com>
377
378 * m4/matmul.m4 (matmul_'rtype_code`): Avoid
379 race condition on storing function pointer.
380 * generated/matmul_c10.c: Regenerated.
381 * generated/matmul_c16.c: Regenerated.
382 * generated/matmul_c4.c: Regenerated.
383 * generated/matmul_c8.c: Regenerated.
384 * generated/matmul_i1.c: Regenerated.
385 * generated/matmul_i16.c: Regenerated.
386 * generated/matmul_i2.c: Regenerated.
387 * generated/matmul_i4.c: Regenerated.
388 * generated/matmul_i8.c: Regenerated.
389 * generated/matmul_r10.c: Regenerated.
390 * generated/matmul_r16.c: Regenerated.
391 * generated/matmul_r4.c: Regenerated.
392 * generated/matmul_r8.c: Regenerated.
393
394 2017-03-02 Thomas Koenig <tkoenig@gcc.gnu.org>
395
396 PR fortran/78379
397 * m4/matmul.m4: (matmul_'rtype_code`_avx2): Also generate for
398 reals. Add fma to target options.
399 (matmul_'rtype_code`): Call AVX2 only if FMA is available.
400 * generated/matmul_c10.c: Regenerated.
401 * generated/matmul_c16.c: Regenerated.
402 * generated/matmul_c4.c: Regenerated.
403 * generated/matmul_c8.c: Regenerated.
404 * generated/matmul_i1.c: Regenerated.
405 * generated/matmul_i16.c: Regenerated.
406 * generated/matmul_i2.c: Regenerated.
407 * generated/matmul_i4.c: Regenerated.
408 * generated/matmul_i8.c: Regenerated.
409 * generated/matmul_r10.c: Regenerated.
410 * generated/matmul_r16.c: Regenerated.
411 * generated/matmul_r4.c: Regenerated.
412 * generated/matmul_r8.c: Regenerated.
413
414 2017-02-27 Janne Blomqvist <jb@gcc.gnu.org>
415
416 * intrinsics/random.c (getosrandom): Don't try to use rand_s on
417 CYGWIN.
418
419 2017-02-16 Paul Thomas <pault@gcc.gnu.org>
420
421 PR fortran/79382
422 * io/transfer.c (check_dtio_proc): New function.
423 (formatted_transfer_scalar_read): Use it.
424 (formatted_transfer_scalar_write): ditto.
425
426 2017-01-31 Steven G. Kargl <kargl@gcc.gnu.org>
427
428 PR fortran/79305
429 * c99_protos.h: Spell HAVE_EXPL correctly.
430 * intrinsics/c99_functions.c: Ditto.
431
432 2017-01-19 Uros Bizjak <ubizjak@gmail.com>
433
434 PR target/78478
435 * acinclude.m4: Include ../config/ax_check_define.m4
436 * configure.ac: Check if _SOFT_FLOAT is defined.
437 * configure.host (i?86 | x86_64): Use fpu-generic when
438 have_soft_float is set.
439 * configure: Regenerate.
440
441 2017-01-19 Jakub Jelinek <jakub@redhat.com>
442
443 PR target/79127
444 * acinclude.m4 (LIBGFOR_CHECK_AVX512F): Ensure the test clobbers
445 some zmm16+ registers to verify they are handled by unwind info
446 properly if needed.
447 * configure: Regenerated.
448
449 2017-01-17 Jakub Jelinek <jakub@redhat.com>
450
451 PR other/79046
452 * configure.ac: Add GCC_BASE_VER.
453 * Makefile.am (gcc_version): Use @get_gcc_base_ver@ instead of cat to
454 get version from BASE-VER file.
455 * configure: Regenerated.
456 * Makefile.in: Regenerated.
457
458 2017-01-13 Andre Vehreschild <vehre@gcc.gnu.org>
459
460 PR fortran/70696
461 * caf/single.c (_gfortran_caf_register): Allocate enough memory for
462 the event counter.
463
464 2017-01-07 Andre Vehreschild <vehre@gcc.gnu.org>
465
466 PR fortran/78781
467 PR fortran/78935
468 * caf/single.c (send_by_ref): Fix addressing of non-allocatable scalar
469 destination components.
470
471 2017-01-01 Jakub Jelinek <jakub@redhat.com>
472
473 Update copyright years.
474 \f
475 Copyright (C) 2017 Free Software Foundation, Inc.
476
477 Copying and distribution of this file, with or without modification,
478 are permitted in any medium without royalty provided the copyright
479 notice and this notice are preserved.