]> git.ipfire.org Git - thirdparty/gcc.git/blob - libgfortran/ChangeLog
2017-07-24 Thomas Koenig <tkoenig@gcc.gnu.org>
[thirdparty/gcc.git] / libgfortran / ChangeLog
1 2017-07-24 Thomas Koenig <tkoenig@gcc.gnu.org>
2
3 PR fortran/80365
4 * io/unix.c (buf_write): Return early if there is
5 nothing to write.
6
7 2017-07-09 Thomas Koenig <tkoenig@gcc.gnu.org>
8
9 * intrinsics/eoshift2.c (eoshift2): Use memcpy
10 for innermost copy where possible.
11 * m4/eoshift1.m4 (eoshift1): Likewise.
12 * m4/eoshift3.m4 (eoshift3): Likewise.
13 * generated/eoshift1_16.c: Regenerated.
14 * generated/eoshift1_4.c: Regenerated.
15 * generated/eoshift1_8.c: Regenerated.
16 * generated/eoshift3_16.c: Regenerated.
17 * generated/eoshift3_4.c: Regenerated.
18 * generated/eoshift3_8.c: Regenerated.
19
20 2017-07-02 Thomas Koenig <tkoenig@gcc.gnu.org>
21
22 * intrinsics/eoshift0.c: For contiguous arrays, use
23 block algorithm. Use memcpy where possible.
24
25 2017-06-26 Jim Wilson <jim.wilson@r3-a15.aus-colo>
26
27 PR libfortran/81195
28 * io/unit.c (get_unit): Call __gthread_mutex_lock before newunit_stack
29 and newunit_tos references. Call __gthread_mutex_unlock afterward.
30
31 2017-06-24 Thomas Koenig <tkoenig@gcc.gnu.org>
32
33 PR fortran/52473
34 * Makefile.am: Add i_cshift1a_c. Add rules to generate files
35 from cshift1a.m4.
36 * Makefile.in: Regenerated.
37 * m4/cshift1a.m4: New file.
38 * m4/cshift.m4 (cshift1): Split up inner loop by removing
39 condition. Use memcpy where possible. Call helper functions
40 based on dtype.
41 * libgfortran.h: Add prototypes for cshift1_16_c10,
42 cshift1_16_c16, cshift1_16_c4, cshift1_16_c8, cshift1_16_i1,
43 cshift1_16_i16, cshift1_16_i2, cshift1_16_i4, cshift1_16_i8,
44 cshift1_16_r10, cshift1_16_r16, cshift1_16_r4, cshift1_16_r8,
45 cshift1_4_c10, cshift1_4_c16, cshift1_4_c4, cshift1_4_c8,
46 cshift1_4_i1, cshift1_4_i16, cshift1_4_i2, cshift1_4_i4,
47 cshift1_4_i8, cshift1_4_r10, cshift1_4_r16, cshift1_4_r4,
48 cshift1_4_r8, cshift1_8_c10, cshift1_8_c16, cshift1_8_c4,
49 cshift1_8_c8, cshift1_8_i1, cshift1_8_i16, cshift1_8_i2,
50 cshift1_8_i4, cshift1_8_i8, cshift1_8_r10, cshift1_8_r16,
51 cshift1_8_r4 and cshift1_8_r8.
52 * generated/cshift1_16_c10.c: New file, generated from cshift1a.m4.
53 * generated/cshift1_16_c16.c: New file, generated from cshift1a.m4.
54 * generated/cshift1_16_c4.c: New file, generated from cshift1a.m4.
55 * generated/cshift1_16_c8.c: New file, generated from cshift1a.m4.
56 * generated/cshift1_16_i1.c: New file, generated from cshift1a.m4.
57 * generated/cshift1_16_i16.c: New file, generated from cshift1a.m4.
58 * generated/cshift1_16_i2.c: New file, generated from cshift1a.m4.
59 * generated/cshift1_16_i4.c: New file, generated from cshift1a.m4.
60 * generated/cshift1_16_i8.c: New file, generated from cshift1a.m4.
61 * generated/cshift1_16_r10.c: New file, generated from cshift1a.m4.
62 * generated/cshift1_16_r16.c: New file, generated from cshift1a.m4.
63 * generated/cshift1_16_r4.c: New file, generated from cshift1a.m4.
64 * generated/cshift1_16_r8.c: New file, generated from cshift1a.m4.
65 * generated/cshift1_4_c10.c: New file, generated from cshift1a.m4.
66 * generated/cshift1_4_c16.c: New file, generated from cshift1a.m4.
67 * generated/cshift1_4_c4.c: New file, generated from cshift1a.m4.
68 * generated/cshift1_4_c8.c: New file, generated from cshift1a.m4.
69 * generated/cshift1_4_i1.c: New file, generated from cshift1a.m4.
70 * generated/cshift1_4_i16.c: New file, generated from cshift1a.m4.
71 * generated/cshift1_4_i2.c: New file, generated from cshift1a.m4.
72 * generated/cshift1_4_i4.c: New file, generated from cshift1a.m4.
73 * generated/cshift1_4_i8.c: New file, generated from cshift1a.m4.
74 * generated/cshift1_4_r10.c: New file, generated from cshift1a.m4.
75 * generated/cshift1_4_r16.c: New file, generated from cshift1a.m4.
76 * generated/cshift1_4_r4.c: New file, generated from cshift1a.m4.
77 * generated/cshift1_4_r8.c: New file, generated from cshift1a.m4.
78 * generated/cshift1_8_c10.c: New file, generated from cshift1a.m4.
79 * generated/cshift1_8_c16.c: New file, generated from cshift1a.m4.
80 * generated/cshift1_8_c4.c: New file, generated from cshift1a.m4.
81 * generated/cshift1_8_c8.c: New file, generated from cshift1a.m4.
82 * generated/cshift1_8_i1.c: New file, generated from cshift1a.m4.
83 * generated/cshift1_8_i16.c: New file, generated from cshift1a.m4.
84 * generated/cshift1_8_i2.c: New file, generated from cshift1a.m4.
85 * generated/cshift1_8_i4.c: New file, generated from cshift1a.m4.
86 * generated/cshift1_8_i8.c: New file, generated from cshift1a.m4.
87 * generated/cshift1_8_r10.c: New file, generated from cshift1a.m4.
88 * generated/cshift1_8_r16.c: New file, generated from cshift1a.m4.
89 * generated/cshift1_8_r4.c: New file, generated from cshift1a.m4.
90 * generated/cshift1_8_r8.c: New file, generated from cshift1a.m4.
91
92 2017-06-18 Thomas Koenig <tkoenig@gcc.gnu.org>
93
94 PR fortran/52473
95 * m4/cshift0.m4: For arrays that are contiguous up to
96 shift, implement blocked algorighm for cshift.
97 * generated/cshift0_c10.c: Regenerated.
98 * generated/cshift0_c16.c: Regenerated.
99 * generated/cshift0_c4.c: Regenerated.
100 * generated/cshift0_c8.c: Regenerated.
101 * generated/cshift0_i1.c: Regenerated.
102 * generated/cshift0_i16.c: Regenerated.
103 * generated/cshift0_i2.c: Regenerated.
104 * generated/cshift0_i4.c: Regenerated.
105 * generated/cshift0_i8.c: Regenerated.
106 * generated/cshift0_r10.c: Regenerated.
107 * generated/cshift0_r16.c: Regenerated.
108 * generated/cshift0_r4.c: Regenerated.
109 * generated/cshift0_r8.c: Regenerated.
110
111 2017-06-06 Thomas Koenig <tkoenig@gcc.gnu.org>
112
113 PR fortran/80975
114 * m4/matmul_internal.m4: Move zeroing before early return.
115 * generated/matmul_c10.c: Regenerated.
116 * generated/matmul_c16.c: Regenerated.
117 * generated/matmul_c4.c: Regenerated.
118 * generated/matmul_c8.c: Regenerated.
119 * generated/matmul_i1.c: Regenerated.
120 * generated/matmul_i16.c: Regenerated.
121 * generated/matmul_i2.c: Regenerated.
122 * generated/matmul_i4.c: Regenerated.
123 * generated/matmul_i8.c: Regenerated.
124 * generated/matmul_r10.c: Regenerated.
125 * generated/matmul_r16.c: Regenerated.
126 * generated/matmul_r4.c: Regenerated.
127 * generated/matmul_r8.c: Regenerated.
128 * generated/matmulavx128_c10.c: Regenerated.
129 * generated/matmulavx128_c16.c: Regenerated.
130 * generated/matmulavx128_c4.c: Regenerated.
131 * generated/matmulavx128_c8.c: Regenerated.
132 * generated/matmulavx128_i1.c: Regenerated.
133 * generated/matmulavx128_i16.c: Regenerated.
134 * generated/matmulavx128_i2.c: Regenerated.
135 * generated/matmulavx128_i4.c: Regenerated.
136 * generated/matmulavx128_i8.c: Regenerated.
137 * generated/matmulavx128_r10.c: Regenerated.
138 * generated/matmulavx128_r16.c: Regenerated.
139 * generated/matmulavx128_r4.c: Regenerated.
140 * generated/matmulavx128_r8.c: Regenerated.
141
142 2017-05-29 Jerry DeLisle <jvdelisle@gcc.gnu.org>
143
144 PR libgfortran/53029
145 * list_read.c (list_formatted_read_scala): Set the err return
146 value to the common.flags error values.
147
148 2017-05-28 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
149
150 * acinclude.m4 (LIBGFOR_CHECK_FMA3): Use test from
151 check_effective_target_fma in gcc.target/i386/i386.exp.
152 (LIBGFOR_CHECK_FMA4): Use test from check_effective_target_fma4.
153 * configure: Regenerate.
154
155 2017-05-26 Thomas Koenig <tkoenig@gcc.gnu.org>
156
157 PR boostrap/80889
158 * acinclude.m4: Also set HAVE_AVX128 on the false
159 branch of LIBGFOR_CHECK_AVX128.
160 * configure: Regenerated.
161
162 2017-05-25 Thomas Koenig <tkoenig@gcc.gnu.org>
163
164 PR libfortran/78379
165 * Makefile.am: Add generated/matmulavx128_*.c files.
166 Handle them for compiling and setting the right flags.
167 * acinclude.m4: Add tests for FMA3, FMA4 and AVX128.
168 * configure.ac: Call them.
169 * Makefile.in: Regenerated.
170 * config.h.in: Regenerated.
171 * configure: Regenerated.
172 * m4/matmul.m4: Handle AMD chips by calling 128-bit AVX
173 versions which use FMA3 or FMA4.
174 * m4/matmulavx128.m4: New file.
175 * generated/matmul_c10.c: Regenerated.
176 * generated/matmul_c16.c: Regenerated.
177 * generated/matmul_c4.c: Regenerated.
178 * generated/matmul_c8.c: Regenerated.
179 * generated/matmul_i1.c: Regenerated.
180 * generated/matmul_i16.c: Regenerated.
181 * generated/matmul_i2.c: Regenerated.
182 * generated/matmul_i4.c: Regenerated.
183 * generated/matmul_i8.c: Regenerated.
184 * generated/matmul_r10.c: Regenerated.
185 * generated/matmul_r16.c: Regenerated.
186 * generated/matmul_r4.c: Regenerated.
187 * generated/matmul_r8.c: Regenerated.
188 * generated/matmulavx128_c10.c: New file.
189 * generated/matmulavx128_c16.c: New file.
190 * generated/matmulavx128_c4.c: New file.
191 * generated/matmulavx128_c8.c: New file.
192 * generated/matmulavx128_i1.c: New file.
193 * generated/matmulavx128_i16.c: New file.
194 * generated/matmulavx128_i2.c: New file.
195 * generated/matmulavx128_i4.c: New file.
196 * generated/matmulavx128_i8.c: New file.
197 * generated/matmulavx128_r10.c: New file.
198 * generated/matmulavx128_r16.c: New file.
199 * generated/matmulavx128_r4.c: New file.
200 * generated/matmulavx128_r8.c: New file.
201
202 2017-05-19 Paul Thomas <pault@gcc.gnu.org>
203 Jerry DeLisle <jvdelisle@gcc.gnu.org>
204
205 PR fortran/80333
206 * list_read.c (nml_read_obj): Compute pointer into class/type
207 arrays from the nl->dim information. Update it for each iteration
208 of the loop for the given object.
209
210 2017-05-17 Jerry DeLisle <jvdelisle@gcc.gnu.org>
211
212 PR libgfortran/80741
213 * transfer.c (finalize_transfer): Reset last_char to 'empty'.
214 * file_pos.c (formatted_backspace): Likewise.
215 (st_endfile): Likewise.
216 (st_rewind): Likewise.
217 (st_flush): Likewise.
218
219 2017-05-15 Jerry DeLisle <jvdelisle@gcc.gnu.org>
220
221 PR libgfortran/80727
222 * transfer.c (read_sf_internal): Remove bogus code to detect EOR.
223 (read_block_form): For internal units, generate EOR if no more
224 bytes left in unit and we are trying to read with ADVANCE='NO'.
225
226 2017-05-15 Thomas Koenig <tkoenig@gcc.gnu.org>
227
228 PR fortran/80765
229 * m4/matmul_internal.m4: Set bystride to correct value in
230 vector-matrix multiplicatin for later calculation of buffer
231 size.
232 * generated/matmul_c10.c: Regenerated.
233 * generated/matmul_c16.c: Regenerated.
234 * generated/matmul_c4.c: Regenerated.
235 * generated/matmul_c8.c: Regenerated.
236 * generated/matmul_i1.c: Regenerated.
237 * generated/matmul_i16.c: Regenerated.
238 * generated/matmul_i2.c: Regenerated.
239 * generated/matmul_i4.c: Regenerated.
240 * generated/matmul_i8.c: Regenerated.
241 * generated/matmul_r10.c: Regenerated.
242 * generated/matmul_r16.c: Regenerated.
243 * generated/matmul_r4.c: Regenerated.
244 * generated/matmul_r8.c: Regenerated.
245
246 2017-05-12 Thomas Schwinge <thomas@codesourcery.com>
247
248 * runtime/environ.c (weak_secure_getenv): Fix "__secure_gettime"
249 vs. "__secure_getenv" typo.
250 (secure_getenv): Fix "HAVE__SECURE_GETENV"
251 vs. "HAVE___SECURE_GETENV" typo.
252
253 2017-05-11 Janne Blomqvist <jb@gcc.gnu.org>
254
255 * libgfortran.h: HAVE_SECURE_GETENV: Don't check
256 HAVE___SECURE_GETENV.
257 * environ/runtime.c (secure_getenv): Use __secure_getenv via a
258 weak reference.
259
260 2017-05-10 Thomas Koenig <tkoenig@gcc.gnu.org>
261
262 PR fortran/80687
263 PR fortran/80696
264 * m4/matmul_internal.m4: 'matmul_name`: Always
265 use malloc/free to allocate t1.
266 * generated/matmul_c10.c: Regenerated.
267 * generated/matmul_c16.c: Regenerated.
268 * generated/matmul_c4.c: Regenerated.
269 * generated/matmul_c8.c: Regenerated.
270 * generated/matmul_i1.c: Regenerated.
271 * generated/matmul_i16.c: Regenerated.
272 * generated/matmul_i2.c: Regenerated.
273 * generated/matmul_i4.c: Regenerated.
274 * generated/matmul_i8.c: Regenerated.
275 * generated/matmul_r10.c: Regenerated.
276 * generated/matmul_r16.c: Regenerated.
277 * generated/matmul_r4.c: Regenerated.
278 * generated/matmul_r8.c: Regenerated.
279
280 2017-05-08 Thomas Koenig <tkoenig@gcc.gnu.org>
281
282 PR fortran/80602
283 * m4/matmul_internal.m4: 'matmul_name`: Change
284 t1 to a VLA of the required size.
285 * generated/matmul_c10.c: Regenerated.
286 * generated/matmul_c16.c: Regenerated.
287 * generated/matmul_c4.c: Regenerated.
288 * generated/matmul_c8.c: Regenerated.
289 * generated/matmul_i1.c: Regenerated.
290 * generated/matmul_i16.c: Regenerated.
291 * generated/matmul_i2.c: Regenerated.
292 * generated/matmul_i4.c: Regenerated.
293 * generated/matmul_i8.c: Regenerated.
294 * generated/matmul_r10.c: Regenerated.
295 * generated/matmul_r16.c: Regenerated.
296 * generated/matmul_r4.c: Regenerated.
297 * generated/matmul_r8.c: Regenerated.
298
299 2017-04-11 Jerry DeLisle <jvdelisle@gcc.gnu.org>
300
301 * close.c: Fix white space in pointer declarations and comment
302 formats where applicable.
303 * fbuf.c: Likewise.
304 * fbuf.h: Likewise.
305 * format.c: Likewise.
306 * inquire.c: Likewise.
307 * intrinsics.c: Likewise.
308 * list_read.c: Likewise.
309 * lock.c: Likewise.
310 * open.c: Likewise.
311 * read.c: Likewise.
312 * transfer.c: Likewise.
313 * unit.c: Likewise.
314 * unix.c: Likewise.
315 * unix.h: Likewise.
316 * write.c: Likewise.
317
318 2017-03-29 Jerry DeLisle <jvdelisle@gcc.gnu.org>
319
320 PR libgfortran/78670
321 * io/list_read.c (nml_get_obj_data): Delete code which calls the
322 child read procedure. (nml_read_obj): Insert the code which
323 calls the child procedure. Don't need to touch nodes if using
324 dtio since parent will not be traversing the components.
325
326 2017-03-28 Janus Weil <janus@gcc.gnu.org>
327
328 PR fortran/78661
329 * io/write.c (nml_write_obj): Build a class container only if necessary.
330
331 2017-03-27 Dominique d'Humieres <dominiq@lps.ens.fr>
332
333 * io/list_read.c: Insert /* Fall through. */ in the macro
334 CASE_SEPARATORS in order to silence warnings.
335
336 2017-03-25 Jerry DeLisle <jvdelisle@gcc.gnu.org>
337
338 PR libgfortran/78881
339 * io/io.h (st_parameter_dt): Rename unused component last_char to
340 child_saved_iostat. Move comment to gfc_unit.
341 * io/list_read.c (list_formatted_read_scalar): After call to
342 child READ procedure, save the returned iostat value for later
343 check. (finish_list_read): Only finish READ if child_saved_iostat
344 was OK.
345 * io/transfer.c (read_sf_internal): If there is a saved character
346 in last character, seek back one. Add a new check for EOR
347 condition. (read_sf): If there is a saved character
348 in last character, seek back one. (formatted_transfer_scalar_read):
349 Initialize last character before invoking child procedure.
350 (data_transfer_init): If child dtio, set advance
351 status to nonadvancing. Move update of size and check for EOR
352 condition to before child dtio return.
353
354 2017-03-17 Thomas Koenig <tkoenig@gcc.gnu.org>
355
356 PR libfortran/79956
357 * m4/reshape.m4 (reshape_'rtype_ccode`): Correct use
358 of GFC_ASSERT.
359 * generated/reshape_c10.c: Regenerated.
360 * generated/reshape_c16.c: Regenerated.
361 * generated/reshape_c4.c: Regenerated.
362 * generated/reshape_c8.c: Regenerated.
363 * generated/reshape_i16.c: Regenerated.
364 * generated/reshape_i4.c: Regenerated.
365 * generated/reshape_i8.c: Regenerated.
366 * generated/reshape_r10.c: Regenerated.
367 * generated/reshape_r16.c: Regenerated.
368 * generated/reshape_r4.c: Regenerated.
369 * generated/reshape_r8.c: Regenerated.
370
371 2017-03-15 NightStrike <nightstrike@gmail.com>
372 Janne Blomqvist <jb@gcc.gnu.org>
373
374 * intrinsics/random.c (getosrandom): Remove check for __CYGWIN__
375 preprocessor flag.
376 * intrinsics/system_clock.c: Likewise.
377 (system_clock_4): Likewise.
378 (system_clock_8): Likewise.
379 * intrinsics/time_1.h: Don't include windows.h if __CYGWIN__ is
380 defined.
381
382 2017-03-10 Thomas Koenig <tkoenig@gcc.gnu.org>
383
384 PR libfortran/79956
385 * libgfortran.h (GFC_ASSERT): New macro.
386 * m4/reshape.m4 (reshape_'rtype_ccode`): Use GFC_ASSERT
387 to specify that sdim > 0 and rdim > 0.
388 * intrinsic/reshape_generic.c (reshape_internal): Likweise.
389 * generated/reshape_c10.c: Regenerated.
390 * generated/reshape_c16.c: Regenerated.
391 * generated/reshape_c4.c: Regenerated.
392 * generated/reshape_c8.c: Regenerated.
393 * generated/reshape_i16.c: Regenerated.
394 * generated/reshape_i4.c: Regenerated.
395 * generated/reshape_i8.c: Regenerated.
396 * generated/reshape_r10.c: Regenerated.
397 * generated/reshape_r16.c: Regenerated.
398 * generated/reshape_r4.c: Regenerated.
399 * generated/reshape_r8.c: Regenerated.
400
401 2017-03-11 Jerry DeLisle <jvdelisle@gcc.gnu.org>
402
403 PR libgfortran/78854
404 * io/list_read.c (nml_get_obj_data): Stash internal unit for
405 later use by child procedures.
406 * io/write.c (nml_write_obj): Likewise.
407 * io/tranfer.c (data_transfer_init): Minor whitespace.
408 * io/unit.c (set_internal_uit): Look for the stashed internal
409 unit and use it if found.
410
411 2017-03-10 Thomas Koenig <tkoenig@gcc.gnu.org>
412
413 PR libfortran/79956
414 * m4/iforeach.m4: Change exit condition from loop for
415 increasing dimension to >=. Fix type in comment.
416 * m4/ifunction.m4: Likewise.
417 * m4/ifunction_logical.m4: Likewise.
418 * generated/all_l1.c: Regenerated.
419 * generated/all_l16.c: Regenerated.
420 * generated/all_l2.c: Regenerated.
421 * generated/all_l4.c: Regenerated.
422 * generated/all_l8.c: Regenerated.
423 * generated/any_l1.c: Regenerated.
424 * generated/any_l16.c: Regenerated.
425 * generated/any_l2.c: Regenerated.
426 * generated/any_l4.c: Regenerated.
427 * generated/any_l8.c: Regenerated.
428 * generated/count_16_l.c: Regenerated.
429 * generated/count_1_l.c: Regenerated.
430 * generated/count_2_l.c: Regenerated.
431 * generated/count_4_l.c: Regenerated.
432 * generated/count_8_l.c: Regenerated.
433 * generated/iall_i1.c: Regenerated.
434 * generated/iall_i16.c: Regenerated.
435 * generated/iall_i2.c: Regenerated.
436 * generated/iall_i4.c: Regenerated.
437 * generated/iall_i8.c: Regenerated.
438 * generated/iany_i1.c: Regenerated.
439 * generated/iany_i16.c: Regenerated.
440 * generated/iany_i2.c: Regenerated.
441 * generated/iany_i4.c: Regenerated.
442 * generated/iany_i8.c: Regenerated.
443 * generated/iparity_i1.c: Regenerated.
444 * generated/iparity_i16.c: Regenerated.
445 * generated/iparity_i2.c: Regenerated.
446 * generated/iparity_i4.c: Regenerated.
447 * generated/iparity_i8.c: Regenerated.
448 * generated/maxloc0_16_i1.c: Regenerated.
449 * generated/maxloc0_16_i16.c: Regenerated.
450 * generated/maxloc0_16_i2.c: Regenerated.
451 * generated/maxloc0_16_i4.c: Regenerated.
452 * generated/maxloc0_16_i8.c: Regenerated.
453 * generated/maxloc0_16_r10.c: Regenerated.
454 * generated/maxloc0_16_r16.c: Regenerated.
455 * generated/maxloc0_16_r4.c: Regenerated.
456 * generated/maxloc0_16_r8.c: Regenerated.
457 * generated/maxloc0_4_i1.c: Regenerated.
458 * generated/maxloc0_4_i16.c: Regenerated.
459 * generated/maxloc0_4_i2.c: Regenerated.
460 * generated/maxloc0_4_i4.c: Regenerated.
461 * generated/maxloc0_4_i8.c: Regenerated.
462 * generated/maxloc0_4_r10.c: Regenerated.
463 * generated/maxloc0_4_r16.c: Regenerated.
464 * generated/maxloc0_4_r4.c: Regenerated.
465 * generated/maxloc0_4_r8.c: Regenerated.
466 * generated/maxloc0_8_i1.c: Regenerated.
467 * generated/maxloc0_8_i16.c: Regenerated.
468 * generated/maxloc0_8_i2.c: Regenerated.
469 * generated/maxloc0_8_i4.c: Regenerated.
470 * generated/maxloc0_8_i8.c: Regenerated.
471 * generated/maxloc0_8_r10.c: Regenerated.
472 * generated/maxloc0_8_r16.c: Regenerated.
473 * generated/maxloc0_8_r4.c: Regenerated.
474 * generated/maxloc0_8_r8.c: Regenerated.
475 * generated/maxloc1_16_i1.c: Regenerated.
476 * generated/maxloc1_16_i16.c: Regenerated.
477 * generated/maxloc1_16_i2.c: Regenerated.
478 * generated/maxloc1_16_i4.c: Regenerated.
479 * generated/maxloc1_16_i8.c: Regenerated.
480 * generated/maxloc1_16_r10.c: Regenerated.
481 * generated/maxloc1_16_r16.c: Regenerated.
482 * generated/maxloc1_16_r4.c: Regenerated.
483 * generated/maxloc1_16_r8.c: Regenerated.
484 * generated/maxloc1_4_i1.c: Regenerated.
485 * generated/maxloc1_4_i16.c: Regenerated.
486 * generated/maxloc1_4_i2.c: Regenerated.
487 * generated/maxloc1_4_i4.c: Regenerated.
488 * generated/maxloc1_4_i8.c: Regenerated.
489 * generated/maxloc1_4_r10.c: Regenerated.
490 * generated/maxloc1_4_r16.c: Regenerated.
491 * generated/maxloc1_4_r4.c: Regenerated.
492 * generated/maxloc1_4_r8.c: Regenerated.
493 * generated/maxloc1_8_i1.c: Regenerated.
494 * generated/maxloc1_8_i16.c: Regenerated.
495 * generated/maxloc1_8_i2.c: Regenerated.
496 * generated/maxloc1_8_i4.c: Regenerated.
497 * generated/maxloc1_8_i8.c: Regenerated.
498 * generated/maxloc1_8_r10.c: Regenerated.
499 * generated/maxloc1_8_r16.c: Regenerated.
500 * generated/maxloc1_8_r4.c: Regenerated.
501 * generated/maxloc1_8_r8.c: Regenerated.
502 * generated/maxval_i1.c: Regenerated.
503 * generated/maxval_i16.c: Regenerated.
504 * generated/maxval_i2.c: Regenerated.
505 * generated/maxval_i4.c: Regenerated.
506 * generated/maxval_i8.c: Regenerated.
507 * generated/maxval_r10.c: Regenerated.
508 * generated/maxval_r16.c: Regenerated.
509 * generated/maxval_r4.c: Regenerated.
510 * generated/maxval_r8.c: Regenerated.
511 * generated/minloc0_16_i1.c: Regenerated.
512 * generated/minloc0_16_i16.c: Regenerated.
513 * generated/minloc0_16_i2.c: Regenerated.
514 * generated/minloc0_16_i4.c: Regenerated.
515 * generated/minloc0_16_i8.c: Regenerated.
516 * generated/minloc0_16_r10.c: Regenerated.
517 * generated/minloc0_16_r16.c: Regenerated.
518 * generated/minloc0_16_r4.c: Regenerated.
519 * generated/minloc0_16_r8.c: Regenerated.
520 * generated/minloc0_4_i1.c: Regenerated.
521 * generated/minloc0_4_i16.c: Regenerated.
522 * generated/minloc0_4_i2.c: Regenerated.
523 * generated/minloc0_4_i4.c: Regenerated.
524 * generated/minloc0_4_i8.c: Regenerated.
525 * generated/minloc0_4_r10.c: Regenerated.
526 * generated/minloc0_4_r16.c: Regenerated.
527 * generated/minloc0_4_r4.c: Regenerated.
528 * generated/minloc0_4_r8.c: Regenerated.
529 * generated/minloc0_8_i1.c: Regenerated.
530 * generated/minloc0_8_i16.c: Regenerated.
531 * generated/minloc0_8_i2.c: Regenerated.
532 * generated/minloc0_8_i4.c: Regenerated.
533 * generated/minloc0_8_i8.c: Regenerated.
534 * generated/minloc0_8_r10.c: Regenerated.
535 * generated/minloc0_8_r16.c: Regenerated.
536 * generated/minloc0_8_r4.c: Regenerated.
537 * generated/minloc0_8_r8.c: Regenerated.
538 * generated/minloc1_16_i1.c: Regenerated.
539 * generated/minloc1_16_i16.c: Regenerated.
540 * generated/minloc1_16_i2.c: Regenerated.
541 * generated/minloc1_16_i4.c: Regenerated.
542 * generated/minloc1_16_i8.c: Regenerated.
543 * generated/minloc1_16_r10.c: Regenerated.
544 * generated/minloc1_16_r16.c: Regenerated.
545 * generated/minloc1_16_r4.c: Regenerated.
546 * generated/minloc1_16_r8.c: Regenerated.
547 * generated/minloc1_4_i1.c: Regenerated.
548 * generated/minloc1_4_i16.c: Regenerated.
549 * generated/minloc1_4_i2.c: Regenerated.
550 * generated/minloc1_4_i4.c: Regenerated.
551 * generated/minloc1_4_i8.c: Regenerated.
552 * generated/minloc1_4_r10.c: Regenerated.
553 * generated/minloc1_4_r16.c: Regenerated.
554 * generated/minloc1_4_r4.c: Regenerated.
555 * generated/minloc1_4_r8.c: Regenerated.
556 * generated/minloc1_8_i1.c: Regenerated.
557 * generated/minloc1_8_i16.c: Regenerated.
558 * generated/minloc1_8_i2.c: Regenerated.
559 * generated/minloc1_8_i4.c: Regenerated.
560 * generated/minloc1_8_i8.c: Regenerated.
561 * generated/minloc1_8_r10.c: Regenerated.
562 * generated/minloc1_8_r16.c: Regenerated.
563 * generated/minloc1_8_r4.c: Regenerated.
564 * generated/minloc1_8_r8.c: Regenerated.
565 * generated/minval_i1.c: Regenerated.
566 * generated/minval_i16.c: Regenerated.
567 * generated/minval_i2.c: Regenerated.
568 * generated/minval_i4.c: Regenerated.
569 * generated/minval_i8.c: Regenerated.
570 * generated/minval_r10.c: Regenerated.
571 * generated/minval_r16.c: Regenerated.
572 * generated/minval_r4.c: Regenerated.
573 * generated/minval_r8.c: Regenerated.
574 * generated/norm2_r10.c: Regenerated.
575 * generated/norm2_r16.c: Regenerated.
576 * generated/norm2_r4.c: Regenerated.
577 * generated/norm2_r8.c: Regenerated.
578 * generated/parity_l1.c: Regenerated.
579 * generated/parity_l16.c: Regenerated.
580 * generated/parity_l2.c: Regenerated.
581 * generated/parity_l4.c: Regenerated.
582 * generated/parity_l8.c: Regenerated.
583 * generated/product_c10.c: Regenerated.
584 * generated/product_c16.c: Regenerated.
585 * generated/product_c4.c: Regenerated.
586 * generated/product_c8.c: Regenerated.
587 * generated/product_i1.c: Regenerated.
588 * generated/product_i16.c: Regenerated.
589 * generated/product_i2.c: Regenerated.
590 * generated/product_i4.c: Regenerated.
591 * generated/product_i8.c: Regenerated.
592 * generated/product_r10.c: Regenerated.
593 * generated/product_r16.c: Regenerated.
594 * generated/product_r4.c: Regenerated.
595 * generated/product_r8.c: Regenerated.
596 * generated/sum_c10.c: Regenerated.
597 * generated/sum_c16.c: Regenerated.
598 * generated/sum_c4.c: Regenerated.
599 * generated/sum_c8.c: Regenerated.
600 * generated/sum_i1.c: Regenerated.
601 * generated/sum_i16.c: Regenerated.
602 * generated/sum_i2.c: Regenerated.
603 * generated/sum_i4.c: Regenerated.
604 * generated/sum_i8.c: Regenerated.
605 * generated/sum_r10.c: Regenerated.
606 * generated/sum_r16.c: Regenerated.
607 * generated/sum_r4.c: Regenerated.
608 * generated/sum_r8.c: Regenerated.
609
610 2017-03-05 Andre Vehreschild <vehre@gcc.gnu.org>
611 Alessandro Fanfarillo <fanfarillo.gcc@gmail.com>
612
613 * caf/libcaf.h: Added prototypes and stat codes for failed and stopped
614 images.
615 * caf/single.c (void _gfortran_caf_fail_image): Add the routine.
616 (int _gfortran_caf_image_status): Same.
617 (_gfortran_caf_failed_images): Same.
618 (_gfortran_caf_stopped_images): Same.
619
620 2017-03-02 Thomas Koenig <tkoenig@gcc.gnu.org>
621 Jakub Jelinek <jakub@redhat.com>
622
623 * m4/matmul.m4 (matmul_'rtype_code`): Avoid
624 race condition on storing function pointer.
625 * generated/matmul_c10.c: Regenerated.
626 * generated/matmul_c16.c: Regenerated.
627 * generated/matmul_c4.c: Regenerated.
628 * generated/matmul_c8.c: Regenerated.
629 * generated/matmul_i1.c: Regenerated.
630 * generated/matmul_i16.c: Regenerated.
631 * generated/matmul_i2.c: Regenerated.
632 * generated/matmul_i4.c: Regenerated.
633 * generated/matmul_i8.c: Regenerated.
634 * generated/matmul_r10.c: Regenerated.
635 * generated/matmul_r16.c: Regenerated.
636 * generated/matmul_r4.c: Regenerated.
637 * generated/matmul_r8.c: Regenerated.
638
639 2017-03-02 Thomas Koenig <tkoenig@gcc.gnu.org>
640
641 PR fortran/78379
642 * m4/matmul.m4: (matmul_'rtype_code`_avx2): Also generate for
643 reals. Add fma to target options.
644 (matmul_'rtype_code`): Call AVX2 only if FMA is available.
645 * generated/matmul_c10.c: Regenerated.
646 * generated/matmul_c16.c: Regenerated.
647 * generated/matmul_c4.c: Regenerated.
648 * generated/matmul_c8.c: Regenerated.
649 * generated/matmul_i1.c: Regenerated.
650 * generated/matmul_i16.c: Regenerated.
651 * generated/matmul_i2.c: Regenerated.
652 * generated/matmul_i4.c: Regenerated.
653 * generated/matmul_i8.c: Regenerated.
654 * generated/matmul_r10.c: Regenerated.
655 * generated/matmul_r16.c: Regenerated.
656 * generated/matmul_r4.c: Regenerated.
657 * generated/matmul_r8.c: Regenerated.
658
659 2017-02-27 Janne Blomqvist <jb@gcc.gnu.org>
660
661 * intrinsics/random.c (getosrandom): Don't try to use rand_s on
662 CYGWIN.
663
664 2017-02-16 Paul Thomas <pault@gcc.gnu.org>
665
666 PR fortran/79382
667 * io/transfer.c (check_dtio_proc): New function.
668 (formatted_transfer_scalar_read): Use it.
669 (formatted_transfer_scalar_write): ditto.
670
671 2017-01-31 Steven G. Kargl <kargl@gcc.gnu.org>
672
673 PR fortran/79305
674 * c99_protos.h: Spell HAVE_EXPL correctly.
675 * intrinsics/c99_functions.c: Ditto.
676
677 2017-01-19 Uros Bizjak <ubizjak@gmail.com>
678
679 PR target/78478
680 * acinclude.m4: Include ../config/ax_check_define.m4
681 * configure.ac: Check if _SOFT_FLOAT is defined.
682 * configure.host (i?86 | x86_64): Use fpu-generic when
683 have_soft_float is set.
684 * configure: Regenerate.
685
686 2017-01-19 Jakub Jelinek <jakub@redhat.com>
687
688 PR target/79127
689 * acinclude.m4 (LIBGFOR_CHECK_AVX512F): Ensure the test clobbers
690 some zmm16+ registers to verify they are handled by unwind info
691 properly if needed.
692 * configure: Regenerated.
693
694 2017-01-17 Jakub Jelinek <jakub@redhat.com>
695
696 PR other/79046
697 * configure.ac: Add GCC_BASE_VER.
698 * Makefile.am (gcc_version): Use @get_gcc_base_ver@ instead of cat to
699 get version from BASE-VER file.
700 * configure: Regenerated.
701 * Makefile.in: Regenerated.
702
703 2017-01-13 Andre Vehreschild <vehre@gcc.gnu.org>
704
705 PR fortran/70696
706 * caf/single.c (_gfortran_caf_register): Allocate enough memory for
707 the event counter.
708
709 2017-01-07 Andre Vehreschild <vehre@gcc.gnu.org>
710
711 PR fortran/78781
712 PR fortran/78935
713 * caf/single.c (send_by_ref): Fix addressing of non-allocatable scalar
714 destination components.
715
716 2017-01-01 Jakub Jelinek <jakub@redhat.com>
717
718 Update copyright years.
719 \f
720 Copyright (C) 2017 Free Software Foundation, Inc.
721
722 Copying and distribution of this file, with or without modification,
723 are permitted in any medium without royalty provided the copyright
724 notice and this notice are preserved.