1 2017-12-12 Jerry DeLisle <jvdelisle@gcc.gnu.org>
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>
21 * Makefile.am: Add new files for character-valued
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>
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
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>
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
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>
67 * io/inquire.c (inquire_via_unit): Set recl to -1 for unconnected
69 * io/io.h (default_recl): New variable.
70 * io/open.c (new_unit): Set recl to default_recl for sequential,
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>
82 * io/write.c (select_string): Bump size by one to avoid
85 2017-11-24 Janne Blomqvist <jb@gcc.gnu.org>
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>
106 * m4/maxloc2s.m4: Replace int for character length by
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>
130 * io/inquire.c (inquire_via_unit): Use __BYTE_ORDER__ predefined
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>
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>
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>
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>
212 * io/transfer.c (skip_record): Use gfc_offset to handle large
214 (next_record_r): Likewise.
216 (next_record_w): Use gfc_offset/ptrdiff_t appropriately.
218 2017-11-18 Janne Blomqvist <jb@gcc.gnu.org>
221 * io/io.h: Make nextrec a GFC_IO_INT*.
223 2017-11-18 Janne Blomqvist <jb@gcc.gnu.org>
226 * io/io.h: Make recl_in a GC_IO_INT and recl_out a type
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,
237 2017-10-27 Jerry DeLisle <jvdelisle@gcc.gnu.org>
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>
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>
253 * runtime/bounds.c: Use GFC_ASSERT.
255 2017-09-10 Paul Thomas <pault@gcc.gnu.org>
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>
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>
275 * m4/ifuntion.m4 (name`'rtype_qual`_'atype_code): Perform check
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>
406 * io/unix.c (buf_write): Return early if there is
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>
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>
436 * Makefile.am: Add i_cshift1a_c. Add rules to generate files
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
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>
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>
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>
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>
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>
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>
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>
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>
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>
631 * m4/matmul_internal.m4: Set bystride to correct value in
632 vector-matrix multiplicatin for later calculation of buffer
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
662 2017-05-10 Thomas Koenig <tkoenig@gcc.gnu.org>
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>
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.
707 * format.c: Likewise.
708 * inquire.c: Likewise.
709 * intrinsics.c: Likewise.
710 * list_read.c: Likewise.
714 * transfer.c: Likewise.
720 2017-03-29 Jerry DeLisle <jvdelisle@gcc.gnu.org>
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>
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>
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
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>
759 * m4/reshape.m4 (reshape_'rtype_ccode`): Correct use
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__
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
784 2017-03-10 Thomas Koenig <tkoenig@gcc.gnu.org>
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>
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>
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
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>
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
1066 2017-02-16 Paul Thomas <pault@gcc.gnu.org>
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>
1076 * c99_protos.h: Spell HAVE_EXPL correctly.
1077 * intrinsics/c99_functions.c: Ditto.
1079 2017-01-19 Uros Bizjak <ubizjak@gmail.com>
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>
1091 * acinclude.m4 (LIBGFOR_CHECK_AVX512F): Ensure the test clobbers
1092 some zmm16+ registers to verify they are handled by unwind info
1094 * configure: Regenerated.
1096 2017-01-17 Jakub Jelinek <jakub@redhat.com>
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>
1108 * caf/single.c (_gfortran_caf_register): Allocate enough memory for
1111 2017-01-07 Andre Vehreschild <vehre@gcc.gnu.org>
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.