1 2008-04-18 Paolo Bonzini <bonzini@gnu.org>
4 * aclocal.m4: Regenerate.
5 * configure: Regenerate.
7 2008-04-14 Thomas Koenig <tkoenig@gcc.gnu.org>
10 * intrinsics/spread_generic.c (spread): Use spread_i2()
11 for GFC_DTYPE_DERIVED_2 (fix typo from previous commit).
13 2008-04-13 Thomas Koenig <tkoenig@gcc.gnu.org>
14 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
18 configure.ac: Add test for uintptr_t.
19 configure: Regenerated.
20 config.h.in: Regenerated.
21 * libgfortran.h: GFC_DTYPE_DERIVED_1: New macro.
22 GFC_DTYPE_DERIVED_2: New macro.
23 GFC_DTYPE_DERIVED_4: New macro.
24 GFC_DTYPE_DERIVED_8: New macro.
25 GFC_DTYPE_DERIVED_16: New macro.
26 GFC_UNALIGNED_2: New macro.
27 GFC_UNALIGNED_4: New macro.
28 GFC_UNALIGNED_8: New macro.
29 GFC_UNALIGNED_16: New macro.
30 intptr_t: Define if we don't have it.
32 * runtime/backtrace.c (show_backtrace): Use intptr_t.
33 * intrinsics/signal.c (signal_sub): Likewise.
34 (signal_sub_int): Likewise.
35 (alarm_sub_int_i4): Likewise.
36 * intrinsics/spread_generic.c (spread): Use the integer
37 routines for handling derived types of sizes 1, 2, 4, 8 and 16
38 if the alignment of all pointers is correct.
39 (spread_scalar): Likewise.
40 * intrinsics/pack_generic.c (pack): Likewise.
41 Use GFD_DTYPE_TYPE_SIZE to avoid nested switch statements.
42 * intrinsics/unpack_generic.c (unpack1): Likewise.
44 * runtime/in_pack_generic.c (internal_pack): Likewise.
45 * runtime/in_unpack_generic.c (internal_unpack): Likewise.
47 2008-04-09 Jakub Jelinek <jakub@redhat.com>
49 * io/list_read.c (snprintf): Define if HAVE_SNPRINTF isn't defined.
50 (nml_read_obj): Add nml_err_msg_size argument. Pass it down to
51 recursive call. Use snprintf instead of sprintf when %s nl->var_name
53 (nml_get_obj_data): Add nml_err_msg_size argument. Pass it down to
54 nml_read_obj call. Use snprintf instead of sprintf when %s
55 nl->var_name is used. Pass nml_err_msg to nml_parse_qualifier instead
56 of parse_err_msg array. Append " for namelist variable " and
58 (namelist_read): Increase size of nml_err_msg array to 200. Pass
59 sizeof nml_err_msg as extra argument to nml_get_obj_data.
61 2008-04-07 Jerry DeLisle <jvdelisle@gcc.gnu.org>
63 PR fortran/25829 28655
64 * io/open.c (edit_modes): Set flags.async. (new_unit) Set flags.async
65 and flags.status. (st_open): Initialize flags.async.
66 * io/list_read.c (read_charactor): Use delim_status instead of
68 * io/read.c (read_x): Use pad_status instead of flags.pad.
69 * io/inquire.c (inquire_via_unit): Add new checks.
70 (inquire_via_filename): Likewise.
71 * io/io.h (st_parameter_inquire): Add new flags.
72 (st_parameter_dt): Likewise.
73 * io/unit.c (get_internal_unit): Set flags.async. (init_units): Set
75 * io/transfer.c: Add delim and pad option arrays. (read_sf): Use
76 pad_status instead of flags.pad. (read_block): Likewise.
77 (data_transfer_init): Set flags.async and add checks.
78 * io/write.c (write_character): Use delim_status.
79 (list_formatted_write_scalar): Likewise. (nml_write_obj): Likewise.
80 (namelist_write): Likewise.
82 2008-04-05 Jerry DeLisle <jvdelisle@gcc.gnu.org>
84 PR fortran/25829 28655
85 * gfortran.map: Add new symbol, _gfortran_st_wait.
86 * libgfortran.h (st_paramter_common): Add new I/O parameters.
87 * open.c (st_option decimal_opt[], st_option encoding_opt[],
88 st_option round_opt[], st_option sign_opt[], st_option async_opt[]): New
89 parameter option arrays. (edit_modes): Add checks for new parameters.
90 (new_unit): Likewise. (st_open): Likewise.
91 * list_read.c (CASE_SEPERATORS): Add ';' as a valid separator.
92 (eat_separator): Handle deimal comma. (read_logical): Fix whitespace.
93 (parse_real): Handle decimal comma. (read_real): Handle decimal comma.
94 * read.c (read_a): Use decimal status flag to allow comma in place of a
95 decimal point. (read_f): Allow comma as acceptable character in float.
96 According to decimal flag, substitute a period for a comma.
97 (read_x): If decimal status flag is comma, disable the read_comma flag,
98 not allowing comma as a delimiter, an extension otherwise.
99 * io.h: (unit_decimal, unit_encoding, unit_round, unit_sign,
100 unit_async): New enumerators. Add all new I/O parameters.
101 * unix.c (unix_stream, int_stream): Add io_mode asychronous I/O control.
102 (move_pos_offset, fd_alloc_w_at): Fix some whitespace.
103 (fd_sfree): Use new enumerator. (fd_read): Likewise.
104 (fd_write): Likewise. (fd_close): Fix whitespace.
105 (fd_open): Use new enumertors. (tempfile, regular_file,
106 open_external): Fix whitespace. (output_stream, error_stream): Set
107 method. (stream_offset): Fix whitespace.
108 * transfer.c: (st_option decimal_opt[], sign_opt[], blank_opt[]): New
109 option arrays. (formatted_transfer_scalar): Set sf_read_comma flag
110 based on new decimal_status flag. (data_transfer_init): Initialize new
111 parameters. Add checks for decimal, sign, and blank. (st_wait): New stub.
112 * format.c: (format_lex): Add format specifiers DP, DC, and D.
113 (parse_format_list): Parse the new specifiers.
114 * write.c (write_decimal): Use new sign enumerators to set the sign.
115 (write_complex): Handle decimal comma and semi-colon separator.
116 (nml_write_obj): Likewise.
117 * write_float.def: Revise sign enumerators. (calculate_sign): Use new
118 sign enumerators. (output_float): Likewise. Use new decimal_status flag
119 to set the decimal character to a point or a comma.
121 2008-03-28 Thomas Koenig <tkoenig@gcc.gnu.org>
125 * Makefile.am: Add new variable, i_spread_c, containing
126 pack_i1.c, pack_i2.c, pack_i4.c, pack_i8.c, spread_i16.c,
127 spread_r4.c, spread_r8.c, spread_r10.c, spread_r16.c,
128 spread_c4.c, spread_c8.c, spread_c10.c, spread_c16.c.
129 * Makefile.in: Regenerated.
130 * libgfortran.h: Add prototypes for spread_i1, spread_i2,
131 spread_i4, spread_i8, spread_i16, spread_r4, spread_r8,
132 spread_c4, spread_c8, spread_c10, spread_c16,
133 spread_scalar_i1, spread_scalar_i2, spread_scalar_i4,
134 spread_scalar_i8, spread_scalar_i16, spread_scalar_r4
135 spread_scalar_r8, spread_scalar_c4, spread_scalar_c8,
136 spread_scalar_c10 and spread_scalar_c16.
137 Add macros to isolate both type and size information
138 from array descriptors with a single mask operation.
139 * intrinsics/spread_generic.c: Add calls to specific
141 * m4/spread.m4: New file.
142 * generated/spread_i1.c: New file.
143 * generated/spread_i2.c: New file.
144 * generated/spread_i4.c: New file.
145 * generated/spread_i8.c: New file.
146 * generated/spread_i16.c: New file.
147 * generated/spread_r4.c: New file.
148 * generated/spread_r8.c: New file.
149 * generated/spread_r10.c: New file.
150 * generated/spread_r16.c: New file.
151 * generated/spread_c4.c: New file.
152 * generated/spread_c8.c: New file.
153 * generated/spread_c10.c: New file.
154 * generated/spread_c16.c: New file.
156 2008-03-28 Jerry DeLisle <jvdelisle@gcc.gnu.org>
159 * io/transfer.c (write_buf): Don't pad the record, just return if the
160 data is NULL. (next_record_w): If there are bytes left in the record
161 for unformatted direct I/O, pad out the record with zero bytes.
163 2008-03-28 Tobias Burnus <burnus@net-b.de>
166 * intrinsics/associated.c (associated): Ignore different
167 stride of pointer vs. target if only one element is referred.
169 2008-03-26 Jerry DeLisle <jvdelisle@gcc.gnu.org>
171 * io/unix.c (fd_close): Do not close STDIN.
173 2007-03-23 Thomas Koenig <tkoenig@gcc.gnu.org
176 * Makefile.am: Add new variable, i_unpack_c, containing
177 unpack_i1.c, unpack_i2.c, unpack_i4.c, unpack_i8.c,
178 unpack_i16.c, unpack_r4.c, unpack_r8.c, unpack_r10.c,
179 unpack_r16.c, unpack_c4.c, unpack_c8.c, unpack_c10.c
181 Add i_unpack_c to gfor_built_src.
182 Add rule to generate i_unpack_c from m4/unpack.m4.
183 * Makefile.in: Regenerated.
184 * libgfortran.h: Add prototypes for unpack0_i1, unpack0_i2,
185 unpack0_i4, unpack0_i8, unpack0_i16, unpack0_r4, unpack0_r8,
186 unpack0_r10, unpack0_r16, unpack0_c4, unpack0_c8, unpack0_c10,
187 unpack0_c16, unpack1_i1, unpack1_i2, unpack1_i4, unpack1_i8,
188 unpack1_i16, unpack1_r4, unpack1_r8, unpack1_r10, unpack1_r16,
189 unpack1_c4, unpack1_c8, unpack1_c10 and unpack1_c16.
190 * intrinsics/pack_generic.c (unpack1): Add calls to specific
192 (unpack0): Add calls to specific unpack0 functions.
193 * m4/unpack.m4: New file.
194 * generated/unpack_i1.c: New file.
195 * generated/unpack_i2.c: New file.
196 * generated/unpack_i4.c: New file.
197 * generated/unpack_i8.c: New file.
198 * generated/unpack_i16.c: New file.
199 * generated/unpack_r4.c: New file.
200 * generated/unpack_r8.c: New file.
201 * generated/unpack_r10.c: New file.
202 * generated/unpack_r16.c: New file.
203 * generated/unpack_c4.c: New file.
204 * generated/unpack_c8.c: New file.
205 * generated/unpack_c10.c: New file.
206 * generated/unpack_c16.c: New file.
208 2008-03-22 Jerry DeLisle <jvdelisle@gcc.gnu.org>
211 * io/transfer.c (data_transfer_init): Fix whitespace.
212 (next_record_w): Truncate the file only if the stream
213 position is short of the file end.
215 2008-03-21 Jerry DeLisle <jvdelisle@gcc.gnu.org>
217 * intrinsics/pack_generic.c: Fix typo.
219 2008-03-21 Janne Blomqvist <jb@gcc.gnu.org>
221 * gfortran.map: Move erfc_scaled symbols to new symbol node
222 GFORTRAN_1.1, thereby fixing ABI bug introduced in r132846.
224 2008-03-21 Thomas Koenig <tkoenig@gcc.gnu.org>
227 * runtime/in_pack_generic.c (internal_pack): Call correct
228 function, pack_i16, for GFC_INTEGER_16.
230 2008-03-21 Thomas Koenig <tkoenig@gcc.gnu.org>
233 * Makefile.am: Add new variable, i_pack_c, containing
234 pack_i1.c, pack_i2.c, pack_i4.c, pack_i8.c, pack_i16.c,
235 pack_r4.c, pack_r8.c, pack_r10.c, pack_r16.c, pack_c4.c,
236 pack_c8.c, pack_c10.c, pack_c16.c.
237 Add m4/pack.m4 to m4_files.
238 Add i_pack_c to gfor_built_src.
239 Add rule to generate i_pack_c from m4/pack.m4.
240 * Makefile.in: Regenerated.
241 * libgfortran.h: Add prototypes for pack_i1, pack_i2, pack_i4,
242 pack_i8, pack_i16, pack_r4, pack_r8, pack_c4, pack_c8,
244 * intrinsics/pack_generic.c: Add calls to specific
246 * m4/pack.m4: New file.
247 * generated/pack_i1.c: New file.
248 * generated/pack_i2.c: New file.
249 * generated/pack_i4.c: New file.
250 * generated/pack_i8.c: New file.
251 * generated/pack_i16.c: New file.
252 * generated/pack_r4.c: New file.
253 * generated/pack_r8.c: New file.
254 * generated/pack_r10.c: New file.
255 * generated/pack_r16.c: New file.
256 * generated/pack_c4.c: New file.
257 * generated/pack_c8.c: New file.
258 * generated/pack_c10.c: New file.
259 * generated/pack_c16.c: New file.
261 2008-03-19 Jerry DeLisle <jvdelisle@gcc.gnu.org>
264 * io/list_read.c (free_line): Clear the line buffer enable flag and
265 reset the index into line_buffer, aka item_count.
266 (next_char): Cleanup whitespace.
267 (read_logical): Use unget_char to assure that the first character of the
268 bad logical is saved in case it is part of an object name. Remove the
269 clearing of index and flag that is now in free_line.
270 (read_real): Likewise.
272 2008-03-19 Thomas Koenig <tkoenig@gcc.gnu.org>
275 * runtime/in_pack_generic.c (internal_pack): Fix typo in
278 2008-03-19 Thomas Koenig <tkoenig@gcc.gnu.org>
281 * Makefile.am (in_pack_c): Add in_pack_i1.c, in_pack_i2.c,
282 in_pack_r4.c, in_pack_r8.c, in_pack_r10.c and in_pack_r16.c.
283 (in_unpack_c): Add in_unpack_i1.c, in_unpack_i2.c,
284 in_unpack_r4.c, in_unpack_r8.c, in_unpack_r10.c and
286 * Makefile.in: Regenerate.
287 * libgfortran.h: Add prototypes for internal_pack_1,
288 internal_pack_2, internal_pack_16, internal_pack_r4,
289 internal_pack_r8, internal_pack_r10, internal_pack_r16,
290 internal_pack_c10 and internal_pack_c16. Add prototypes for
291 internal_unpack_1, internal_unpack_2, internal_unpack_16,
292 internal_unpack_r4, internal_unpack_r8, internal_unpack_r10,
293 internal_unpack_r16, internal_unpack_c10 and
295 * runtime/in_pack_generic.c (internal_pack): Use sizeof instead
297 Add calls to internal_pack_1, internal_pack_2,
298 internal_pack_16, internal_pack_r4, internal_pack_r8,
299 internal_pack_r10, internal_pack_r16, internal_pack_c10 and
301 * runtime/in_unpack_generic.c (internal_unpack): Use sizeof
302 instead of hardwired sizes.
303 Add calls to internal_unpack_1, internal_unpack_2,
304 internal_unpack_16, internal_unpack_r4, internal_unpack_r8,
305 internal_unpack_r10, internal_unpack_r16, internal_unpack_c10
306 and internal_unpack_c16.
307 * generated/in_pack_r4.c: New file.
308 * generated/in_pack_i2.c: New file.
309 * generated/in_unpack_i1.c: New file.
310 * generated/in_pack_r10.c: New file.
311 * generated/in_unpack_r4.c: New file.
312 * generated/in_unpack_i2.c: New file.
313 * generated/in_unpack_r16.c: New file.
314 * generated/in_pack_r8.c: New file.
315 * generated/in_unpack_r10.c: New file.
316 * generated/in_unpack_r8.c: New file.
317 * generated/in_pack_r16.c: New file.
318 * generated/in_pack_i1.c: New file.
320 2008-03-17 Jerry DeLisle <jvdelisle@gcc.gnu.org>
323 * io/list_read.c (eat_separator): If next character after eatline is '!'
326 2008-03-16 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
328 * aclocal.m4: Regenerate.
329 * configure: Likewise.
330 * Makefile.in: Likewise.
332 2008-03-12 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
335 * intrinsics/erfc_scaled_inc.c: Only define the long double
336 variant of erfc_scaled if expl is available.
338 2008-03-11 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
341 * intrinsics/random.c (scramble_seed, unscramble_seed): New
343 (random_seed_i4): Scramble the seed the user gives us before
344 storing it, and unscramble it when we return it back later.
346 2008-03-05 Hans-Peter Nilsson <hp@axis.com>
349 * io/unix.c (fd_truncate): Fold s->special_file case into
350 success case of ftruncate/chsize call instead of the failure case.
351 Make failure case actually return failure. Properly update stream
352 pointers on failure. Call runtime_error for targets without
353 neither ftruncate nor chsize where such a call would be needed.
355 2008-03-03 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
358 * intrinsics/erfc_scaled_inc.c: New file.
359 * intrinsics/erfc_scaled.c: New file.
360 * gfortran.map (GFORTRAN_1.0): Add _gfortran_erfc_scaled_r*.
361 * Makefile.am: Add intrinsics/erfc_scaled.c.
362 * config.h.in: Regenerate.
363 * configure: Regenerate.
364 * Makefile.in: Regenerate.
366 2008-03-01 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
369 * intrinsics/time_1.h (__time_1): Fix calculation of user_usec
372 2008-03-01 Janne Blomqvist <jb@gcc.gnu.org>
375 * io/unit.c (destroy_unit_mutex): Call __gthread_mutex_destroy
376 instead of macro kludge.
378 2008-02-25 Janne Blomqvist <jb@gcc.gnu.org>
381 * Makefile.am: Add -fcx-fortran-rules to AM_CFLAGS for all of
383 * Makefile.in: Regenerated.
385 2008-02-25 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
387 * m4/ifunction_logical.m4: Add casts to get rid of warnings.
388 * generated/all_l1.c: Regenerate.
389 * generated/all_l2.c: Regenerate.
390 * generated/all_l4.c: Regenerate.
391 * generated/all_l8.c: Regenerate.
392 * generated/all_l16.c: Regenerate.
393 * generated/any_l1.c: Regenerate.
394 * generated/any_l2.c: Regenerate.
395 * generated/any_l4.c: Regenerate.
396 * generated/any_l8.c: Regenerate.
397 * generated/any_l16.c: Regenerate.
398 * generated/count_1_l.c: Regenerate.
399 * generated/count_2_l.c: Regenerate.
400 * generated/count_4_l.c: Regenerate.
401 * generated/count_8_l.c: Regenerate.
402 * generated/count_16_l.c: Regenerate.
404 2008-02-24 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
407 * acinclude.m4: Don't use HAVE_MATH_H.
408 * configure: Regenerate.
410 2008-02-20 Jerry DeLisle <jvdelisle@gcc.gnu.org>
413 * io/transfer.c (next_record_w): Truncate after the last record for
417 * io/transfer.c (data_transfer_init): Initialize dtp->rec if writing.
420 * io/transfer.c (formatted_transfer_scalar): Flush the buffer if skips
421 is less than zero. (next_record_w): Use sseek to position the file to
422 the max position reached.
424 2008-02-20 Jerry DeLisle <jvdelisle@gcc.gnu.org>
427 * write_float.def (output_float): Add error checks for zero digits
428 after decimal point in E and D format specifiers.
430 2008-02-10 Jerry DeLisle <jvdelisle@gcc.gnu.org>
433 * io/unit.c (destroy_unit_mutex): New function that uses
434 __gthread_mutex_destroy_function or pthread_mutex_destroy after
435 unlocking and before free_mem for final closure of I/O unit.
436 (delete_root): Use new function.
437 (free_internal_unit): Likewise.
438 (close_unit_1): Likewise.
440 2008-02-02 Thomas Koenig <tkoenig@gcc.gnu.org>
443 * m4/shape.m4: Return 0 for extents <= 0.
444 * generated/shape_i4.c: Regenerated.
445 * generated/shape_i8.c: Regenerated.
446 * generated/shape_i16.c: Regenerated.
448 2008-01-27 Thomas Koenig <tkoenig@gcc.gnu.org>
451 * m4/shape.m4: If return array is empty, return early.
452 * generated/shape_i4.c: Regenerated.
453 * generated/shape_i8.c: Regenerated.
454 * generated/shape_i16.c: Regenerated.
456 2008-01-26 Thomas Koenig <tkoenig@gcc.gnu.org>
458 PR libfofortran/34887
459 * io/transfer.c (next_record_w): Always move to the farthest
460 position when completing the record (also when we are
461 processing a slash edit descriptor).
463 2008-01-25 Jerry DeLisle <jvdelisle@gcc.gnu.org>
466 * io/transfer.c (write_buf): Handle case of zero sized array.
467 (transfer_array): Set data pointer to NULL and size to zero. Then
468 make a data transfer and return.
470 2008-01-24 David Edelsohn <edelsohn@gnu.org>
472 * configure: Regenerate.
474 2008-01-19 Jerry DeLisle <jvdelisle@gcc.gnu.org>
477 * io/inquire.c (inquire_via_unit): If a unit is opened, return values
478 according to the open action for DIRECT, FORMATTED, and UNFORMATTED.
479 (inquire_via_filename): Return "UNKNOWN" for SEQUENTIAL, DIRECT,
480 FORAMATTED, and UNFORMATTED inquiries.
481 * io/unix.c (inquire_sequential): Return "UNKNOWN" when appropriate
482 for files that are not opened. (inquire_direct): Same.
483 (inquire_formatted): Same.
485 2008-01-18 Jerry DeLisle <jvdelisle@gcc.gnu.org>
488 * io/transfer.c (formatted_transfer_scalar): Set max_pos to the greater
489 of the current max_pos or the newly calculated position.
491 2008-01-18 Tobias Burnus <burnus@net-b.de>
493 * io/write.c (write_real): Increase default precision
496 2008-01-16 Steven Bosscher <steven@gcc.gnu.org>
499 * mk-kinds-h.sh: Compile with -S to avoid calling the assembler,
500 to avoid piping the -fdump-parse-tree output to the assembler
501 when configuring with -pipe.
502 * mk-sik-inc.sh: Likewise.
503 * mk-srk-inc.sh: Likewise.
505 2008-01-15 Thomas Koenig <tkoenig@gcc.gnu.org>
508 * gfortran.am: Added _gfortran_all_l1, _gfortran_all_l2,
509 _gfortran_any_l1, _gfortran_any_l2, -28,15 _gfortran_count_1_l,
510 _gfortran_count_16_l, _gfortran_count_2_l, _gfortran_count_4_l and
511 _gfortran_count_8_l Removed _gfortran_count_16_l16,
512 _gfortran_count_16_l4, _gfortran_count_16_l8,
513 _gfortran_count_4_l16, _gfortran_count_4_l4, _gfortran_count_4_l8,
514 _gfortran_count_8_l16, _gfortran_count_8_l4 and
515 _gfortran_count_8_l8.
516 * Makefile.am: Added generated/any_l1.c and generated/any_l2.c to
517 i_any_c. Added generated/all_l1. and generated/all_l2.c to
518 i_all_c. Removed generated/count_4_l4.c, generated/count_8_l4.c,
519 generated/count_16_l4.c, generated/count_4_l8.c,
520 generated/count_8_l8.c, generated/count_16_l8.c,
521 generated/count_4_l16.c, generated/count_8_l16.c, and
522 generated/count_16_l16.c from i_count_c. Added count_1_l.c,
523 count_2_l.c, count_4_l.c, count_8_l.c and count_16_l.c to
524 i_count_c. I_M4_DEPS2 depends on ifunction_logical.m4, for
525 any of the files generated from all.m4, any.m4 and count.m4.
526 * Makefile.in: Regenerated.
527 * m4/ifunction_logical.m4: New file. Use
528 GFC_LOGICAL_1 pointer for access to source arrays.
529 * m4/any.m4: Include ifunction_logical.m4 instead of
530 ifunction.m4. Don't check atype_name.
531 * m4/all.m4: Likewise.
532 * m4/count.m4: Likewise.
533 * generated/any_l1.c: New file.
534 * generated/any_l2.c: New file.
535 * generated/all_l1.c: New file.
536 * generated/count_1_l.c: New file.
537 * generated/count_2_l.c: New file.
538 * generated/count_4_l.c: New file.
539 * generated/count_8_l.c: New file.
540 * generated/count_16_l.c: New file.
541 * generated/any_l4.c: Regenerated.
542 * generated/any_l8.c: Regenerated.
543 * generated/any_l16.c: Regenerated.
544 * generated/all_l4.c: Regenerated.
545 * generated/all_l8.c: Regenerated.
546 * generated/all_l16.c: Regenerated.
547 * generated/count_4_l4.c: Removed.
548 * generated/count_4_l8.c: Removed.
549 * generated/count_4_l16.c: Removed.
550 * generated/count_8_l4.c: Removed.
551 * generated/count_8_l8.c: Removed.
552 * generated/count_8_l16.c: Removed.
553 * generated/count_16_l4.c: Removed.
554 * generated/count_16_l8.c: Removed.
555 * generated/count_16_l16.c: Removed.
557 2008-01-13 Thomas Koenig <tkoenig@gcc.gnu.org>
560 * m4/iforeach.m4 (name`'rtype_qual`_'atype_code): Use %ld
561 in printf format for all bounds checking; cast all
562 integer-like arguments to runtime_error() to long int.
563 (`m'name`'rtype_qual`_'atype_code): Likewise.
564 (`s'name`'rtype_qual`_'atype_code): Likewise.
565 * m4/ifunction.m4 (name`'rtype_qual`_'atype_code): Likewise.
566 (`m'name`'rtype_qual`_'atype_code): Likewise.
567 (`s'name`'rtype_qual`_'atype_code): Likewise.
568 * generated/all_l16.c: Regenerated.
569 * generated/all_l4.c: Regenerated.
570 * generated/all_l8.c: Regenerated.
571 * generated/any_l16.c: Regenerated.
572 * generated/any_l4.c: Regenerated.
573 * generated/any_l8.c: Regenerated.
574 * generated/count_16_l16.c: Regenerated.
575 * generated/count_16_l4.c: Regenerated.
576 * generated/count_16_l8.c: Regenerated.
577 * generated/count_4_l16.c: Regenerated.
578 * generated/count_4_l4.c: Regenerated.
579 * generated/count_4_l8.c: Regenerated.
580 * generated/count_8_l16.c: Regenerated.
581 * generated/count_8_l4.c: Regenerated.
582 * generated/count_8_l8.c: Regenerated.
583 * generated/maxloc0_16_i1.c: Regenerated.
584 * generated/maxloc0_16_i16.c: Regenerated.
585 * generated/maxloc0_16_i2.c: Regenerated.
586 * generated/maxloc0_16_i4.c: Regenerated.
587 * generated/maxloc0_16_i8.c: Regenerated.
588 * generated/maxloc0_16_r10.c: Regenerated.
589 * generated/maxloc0_16_r16.c: Regenerated.
590 * generated/maxloc0_16_r4.c: Regenerated.
591 * generated/maxloc0_16_r8.c: Regenerated.
592 * generated/maxloc0_4_i1.c: Regenerated.
593 * generated/maxloc0_4_i16.c: Regenerated.
594 * generated/maxloc0_4_i2.c: Regenerated.
595 * generated/maxloc0_4_i4.c: Regenerated.
596 * generated/maxloc0_4_i8.c: Regenerated.
597 * generated/maxloc0_4_r10.c: Regenerated.
598 * generated/maxloc0_4_r16.c: Regenerated.
599 * generated/maxloc0_4_r4.c: Regenerated.
600 * generated/maxloc0_4_r8.c: Regenerated.
601 * generated/maxloc0_8_i1.c: Regenerated.
602 * generated/maxloc0_8_i16.c: Regenerated.
603 * generated/maxloc0_8_i2.c: Regenerated.
604 * generated/maxloc0_8_i4.c: Regenerated.
605 * generated/maxloc0_8_i8.c: Regenerated.
606 * generated/maxloc0_8_r10.c: Regenerated.
607 * generated/maxloc0_8_r16.c: Regenerated.
608 * generated/maxloc0_8_r4.c: Regenerated.
609 * generated/maxloc0_8_r8.c: Regenerated.
610 * generated/maxloc1_16_i1.c: Regenerated.
611 * generated/maxloc1_16_i16.c: Regenerated.
612 * generated/maxloc1_16_i2.c: Regenerated.
613 * generated/maxloc1_16_i4.c: Regenerated.
614 * generated/maxloc1_16_i8.c: Regenerated.
615 * generated/maxloc1_16_r10.c: Regenerated.
616 * generated/maxloc1_16_r16.c: Regenerated.
617 * generated/maxloc1_16_r4.c: Regenerated.
618 * generated/maxloc1_16_r8.c: Regenerated.
619 * generated/maxloc1_4_i1.c: Regenerated.
620 * generated/maxloc1_4_i16.c: Regenerated.
621 * generated/maxloc1_4_i2.c: Regenerated.
622 * generated/maxloc1_4_i4.c: Regenerated.
623 * generated/maxloc1_4_i8.c: Regenerated.
624 * generated/maxloc1_4_r10.c: Regenerated.
625 * generated/maxloc1_4_r16.c: Regenerated.
626 * generated/maxloc1_4_r4.c: Regenerated.
627 * generated/maxloc1_4_r8.c: Regenerated.
628 * generated/maxloc1_8_i1.c: Regenerated.
629 * generated/maxloc1_8_i16.c: Regenerated.
630 * generated/maxloc1_8_i2.c: Regenerated.
631 * generated/maxloc1_8_i4.c: Regenerated.
632 * generated/maxloc1_8_i8.c: Regenerated.
633 * generated/maxloc1_8_r10.c: Regenerated.
634 * generated/maxloc1_8_r16.c: Regenerated.
635 * generated/maxloc1_8_r4.c: Regenerated.
636 * generated/maxloc1_8_r8.c: Regenerated.
637 * generated/maxval_i1.c: Regenerated.
638 * generated/maxval_i16.c: Regenerated.
639 * generated/maxval_i2.c: Regenerated.
640 * generated/maxval_i4.c: Regenerated.
641 * generated/maxval_i8.c: Regenerated.
642 * generated/maxval_r10.c: Regenerated.
643 * generated/maxval_r16.c: Regenerated.
644 * generated/maxval_r4.c: Regenerated.
645 * generated/maxval_r8.c: Regenerated.
646 * generated/minloc0_16_i1.c: Regenerated.
647 * generated/minloc0_16_i16.c: Regenerated.
648 * generated/minloc0_16_i2.c: Regenerated.
649 * generated/minloc0_16_i4.c: Regenerated.
650 * generated/minloc0_16_i8.c: Regenerated.
651 * generated/minloc0_16_r10.c: Regenerated.
652 * generated/minloc0_16_r16.c: Regenerated.
653 * generated/minloc0_16_r4.c: Regenerated.
654 * generated/minloc0_16_r8.c: Regenerated.
655 * generated/minloc0_4_i1.c: Regenerated.
656 * generated/minloc0_4_i16.c: Regenerated.
657 * generated/minloc0_4_i2.c: Regenerated.
658 * generated/minloc0_4_i4.c: Regenerated.
659 * generated/minloc0_4_i8.c: Regenerated.
660 * generated/minloc0_4_r10.c: Regenerated.
661 * generated/minloc0_4_r16.c: Regenerated.
662 * generated/minloc0_4_r4.c: Regenerated.
663 * generated/minloc0_4_r8.c: Regenerated.
664 * generated/minloc0_8_i1.c: Regenerated.
665 * generated/minloc0_8_i16.c: Regenerated.
666 * generated/minloc0_8_i2.c: Regenerated.
667 * generated/minloc0_8_i4.c: Regenerated.
668 * generated/minloc0_8_i8.c: Regenerated.
669 * generated/minloc0_8_r10.c: Regenerated.
670 * generated/minloc0_8_r16.c: Regenerated.
671 * generated/minloc0_8_r4.c: Regenerated.
672 * generated/minloc0_8_r8.c: Regenerated.
673 * generated/minloc1_16_i1.c: Regenerated.
674 * generated/minloc1_16_i16.c: Regenerated.
675 * generated/minloc1_16_i2.c: Regenerated.
676 * generated/minloc1_16_i4.c: Regenerated.
677 * generated/minloc1_16_i8.c: Regenerated.
678 * generated/minloc1_16_r10.c: Regenerated.
679 * generated/minloc1_16_r16.c: Regenerated.
680 * generated/minloc1_16_r4.c: Regenerated.
681 * generated/minloc1_16_r8.c: Regenerated.
682 * generated/minloc1_4_i1.c: Regenerated.
683 * generated/minloc1_4_i16.c: Regenerated.
684 * generated/minloc1_4_i2.c: Regenerated.
685 * generated/minloc1_4_i4.c: Regenerated.
686 * generated/minloc1_4_i8.c: Regenerated.
687 * generated/minloc1_4_r10.c: Regenerated.
688 * generated/minloc1_4_r16.c: Regenerated.
689 * generated/minloc1_4_r4.c: Regenerated.
690 * generated/minloc1_4_r8.c: Regenerated.
691 * generated/minloc1_8_i1.c: Regenerated.
692 * generated/minloc1_8_i16.c: Regenerated.
693 * generated/minloc1_8_i2.c: Regenerated.
694 * generated/minloc1_8_i4.c: Regenerated.
695 * generated/minloc1_8_i8.c: Regenerated.
696 * generated/minloc1_8_r10.c: Regenerated.
697 * generated/minloc1_8_r16.c: Regenerated.
698 * generated/minloc1_8_r4.c: Regenerated.
699 * generated/minloc1_8_r8.c: Regenerated.
700 * generated/minval_i1.c: Regenerated.
701 * generated/minval_i16.c: Regenerated.
702 * generated/minval_i2.c: Regenerated.
703 * generated/minval_i4.c: Regenerated.
704 * generated/minval_i8.c: Regenerated.
705 * generated/minval_r10.c: Regenerated.
706 * generated/minval_r16.c: Regenerated.
707 * generated/minval_r4.c: Regenerated.
708 * generated/minval_r8.c: Regenerated.
709 * generated/product_c10.c: Regenerated.
710 * generated/product_c16.c: Regenerated.
711 * generated/product_c4.c: Regenerated.
712 * generated/product_c8.c: Regenerated.
713 * generated/product_i1.c: Regenerated.
714 * generated/product_i16.c: Regenerated.
715 * generated/product_i2.c: Regenerated.
716 * generated/product_i4.c: Regenerated.
717 * generated/product_i8.c: Regenerated.
718 * generated/product_r10.c: Regenerated.
719 * generated/product_r16.c: Regenerated.
720 * generated/product_r4.c: Regenerated.
721 * generated/product_r8.c: Regenerated.
722 * generated/sum_c10.c: Regenerated.
723 * generated/sum_c16.c: Regenerated.
724 * generated/sum_c4.c: Regenerated.
725 * generated/sum_c8.c: Regenerated.
726 * generated/sum_i1.c: Regenerated.
727 * generated/sum_i16.c: Regenerated.
728 * generated/sum_i2.c: Regenerated.
729 * generated/sum_i4.c: Regenerated.
730 * generated/sum_i8.c: Regenerated.
731 * generated/sum_r10.c: Regenerated.
732 * generated/sum_r16.c: Regenerated.
733 * generated/sum_r4.c: Regenerated.
734 * generated/sum_r8.c: Regenerated.
736 2008-01-11 Thomas Koenig <tkoenig@gcc.gnu.org>
739 * m4/iparm.m4 (upcase): New macro (copied from the m4 manual).
740 (u_name): New macro for the upper case name of the intrinsic.
741 * m4/iforeach.m4 (name`'rtype_qual`_'atype_code): Add
742 bounds checking and rank check, depending on
743 compile_options.bounds_check.
744 (`m'name`'rtype_qual`_'atype_code): Likewise.
745 (`s'name`'rtype_qual`_'atype_code): Likewise.
746 * m4/ifunction.m4 (name`'rtype_qual`_'atype_code): Add
747 bounds checking and rank check, depending on
748 compile_options.bounds_check.
749 (`m'name`'rtype_qual`_'atype_code): Likewise.
750 (`s'name`'rtype_qual`_'atype_code): Likewise.
751 * generated/all_l16.c: Regenerated.
752 * generated/all_l4.c: Regenerated.
753 * generated/all_l8.c: Regenerated.
754 * generated/any_l16.c: Regenerated.
755 * generated/any_l4.c: Regenerated.
756 * generated/any_l8.c: Regenerated.
757 * generated/count_16_l16.c: Regenerated.
758 * generated/count_16_l4.c: Regenerated.
759 * generated/count_16_l8.c: Regenerated.
760 * generated/count_4_l16.c: Regenerated.
761 * generated/count_4_l4.c: Regenerated.
762 * generated/count_4_l8.c: Regenerated.
763 * generated/count_8_l16.c: Regenerated.
764 * generated/count_8_l4.c: Regenerated.
765 * generated/count_8_l8.c: Regenerated.
766 * generated/maxloc0_16_i1.c: Regenerated.
767 * generated/maxloc0_16_i16.c: Regenerated.
768 * generated/maxloc0_16_i2.c: Regenerated.
769 * generated/maxloc0_16_i4.c: Regenerated.
770 * generated/maxloc0_16_i8.c: Regenerated.
771 * generated/maxloc0_16_r10.c: Regenerated.
772 * generated/maxloc0_16_r16.c: Regenerated.
773 * generated/maxloc0_16_r4.c: Regenerated.
774 * generated/maxloc0_16_r8.c: Regenerated.
775 * generated/maxloc0_4_i1.c: Regenerated.
776 * generated/maxloc0_4_i16.c: Regenerated.
777 * generated/maxloc0_4_i2.c: Regenerated.
778 * generated/maxloc0_4_i4.c: Regenerated.
779 * generated/maxloc0_4_i8.c: Regenerated.
780 * generated/maxloc0_4_r10.c: Regenerated.
781 * generated/maxloc0_4_r16.c: Regenerated.
782 * generated/maxloc0_4_r4.c: Regenerated.
783 * generated/maxloc0_4_r8.c: Regenerated.
784 * generated/maxloc0_8_i1.c: Regenerated.
785 * generated/maxloc0_8_i16.c: Regenerated.
786 * generated/maxloc0_8_i2.c: Regenerated.
787 * generated/maxloc0_8_i4.c: Regenerated.
788 * generated/maxloc0_8_i8.c: Regenerated.
789 * generated/maxloc0_8_r10.c: Regenerated.
790 * generated/maxloc0_8_r16.c: Regenerated.
791 * generated/maxloc0_8_r4.c: Regenerated.
792 * generated/maxloc0_8_r8.c: Regenerated.
793 * generated/maxloc1_16_i1.c: Regenerated.
794 * generated/maxloc1_16_i16.c: Regenerated.
795 * generated/maxloc1_16_i2.c: Regenerated.
796 * generated/maxloc1_16_i4.c: Regenerated.
797 * generated/maxloc1_16_i8.c: Regenerated.
798 * generated/maxloc1_16_r10.c: Regenerated.
799 * generated/maxloc1_16_r16.c: Regenerated.
800 * generated/maxloc1_16_r4.c: Regenerated.
801 * generated/maxloc1_16_r8.c: Regenerated.
802 * generated/maxloc1_4_i1.c: Regenerated.
803 * generated/maxloc1_4_i16.c: Regenerated.
804 * generated/maxloc1_4_i2.c: Regenerated.
805 * generated/maxloc1_4_i4.c: Regenerated.
806 * generated/maxloc1_4_i8.c: Regenerated.
807 * generated/maxloc1_4_r10.c: Regenerated.
808 * generated/maxloc1_4_r16.c: Regenerated.
809 * generated/maxloc1_4_r4.c: Regenerated.
810 * generated/maxloc1_4_r8.c: Regenerated.
811 * generated/maxloc1_8_i1.c: Regenerated.
812 * generated/maxloc1_8_i16.c: Regenerated.
813 * generated/maxloc1_8_i2.c: Regenerated.
814 * generated/maxloc1_8_i4.c: Regenerated.
815 * generated/maxloc1_8_i8.c: Regenerated.
816 * generated/maxloc1_8_r10.c: Regenerated.
817 * generated/maxloc1_8_r16.c: Regenerated.
818 * generated/maxloc1_8_r4.c: Regenerated.
819 * generated/maxloc1_8_r8.c: Regenerated.
820 * generated/maxval_i1.c: Regenerated.
821 * generated/maxval_i16.c: Regenerated.
822 * generated/maxval_i2.c: Regenerated.
823 * generated/maxval_i4.c: Regenerated.
824 * generated/maxval_i8.c: Regenerated.
825 * generated/maxval_r10.c: Regenerated.
826 * generated/maxval_r16.c: Regenerated.
827 * generated/maxval_r4.c: Regenerated.
828 * generated/maxval_r8.c: Regenerated.
829 * generated/minloc0_16_i1.c: Regenerated.
830 * generated/minloc0_16_i16.c: Regenerated.
831 * generated/minloc0_16_i2.c: Regenerated.
832 * generated/minloc0_16_i4.c: Regenerated.
833 * generated/minloc0_16_i8.c: Regenerated.
834 * generated/minloc0_16_r10.c: Regenerated.
835 * generated/minloc0_16_r16.c: Regenerated.
836 * generated/minloc0_16_r4.c: Regenerated.
837 * generated/minloc0_16_r8.c: Regenerated.
838 * generated/minloc0_4_i1.c: Regenerated.
839 * generated/minloc0_4_i16.c: Regenerated.
840 * generated/minloc0_4_i2.c: Regenerated.
841 * generated/minloc0_4_i4.c: Regenerated.
842 * generated/minloc0_4_i8.c: Regenerated.
843 * generated/minloc0_4_r10.c: Regenerated.
844 * generated/minloc0_4_r16.c: Regenerated.
845 * generated/minloc0_4_r4.c: Regenerated.
846 * generated/minloc0_4_r8.c: Regenerated.
847 * generated/minloc0_8_i1.c: Regenerated.
848 * generated/minloc0_8_i16.c: Regenerated.
849 * generated/minloc0_8_i2.c: Regenerated.
850 * generated/minloc0_8_i4.c: Regenerated.
851 * generated/minloc0_8_i8.c: Regenerated.
852 * generated/minloc0_8_r10.c: Regenerated.
853 * generated/minloc0_8_r16.c: Regenerated.
854 * generated/minloc0_8_r4.c: Regenerated.
855 * generated/minloc0_8_r8.c: Regenerated.
856 * generated/minloc1_16_i1.c: Regenerated.
857 * generated/minloc1_16_i16.c: Regenerated.
858 * generated/minloc1_16_i2.c: Regenerated.
859 * generated/minloc1_16_i4.c: Regenerated.
860 * generated/minloc1_16_i8.c: Regenerated.
861 * generated/minloc1_16_r10.c: Regenerated.
862 * generated/minloc1_16_r16.c: Regenerated.
863 * generated/minloc1_16_r4.c: Regenerated.
864 * generated/minloc1_16_r8.c: Regenerated.
865 * generated/minloc1_4_i1.c: Regenerated.
866 * generated/minloc1_4_i16.c: Regenerated.
867 * generated/minloc1_4_i2.c: Regenerated.
868 * generated/minloc1_4_i4.c: Regenerated.
869 * generated/minloc1_4_i8.c: Regenerated.
870 * generated/minloc1_4_r10.c: Regenerated.
871 * generated/minloc1_4_r16.c: Regenerated.
872 * generated/minloc1_4_r4.c: Regenerated.
873 * generated/minloc1_4_r8.c: Regenerated.
874 * generated/minloc1_8_i1.c: Regenerated.
875 * generated/minloc1_8_i16.c: Regenerated.
876 * generated/minloc1_8_i2.c: Regenerated.
877 * generated/minloc1_8_i4.c: Regenerated.
878 * generated/minloc1_8_i8.c: Regenerated.
879 * generated/minloc1_8_r10.c: Regenerated.
880 * generated/minloc1_8_r16.c: Regenerated.
881 * generated/minloc1_8_r4.c: Regenerated.
882 * generated/minloc1_8_r8.c: Regenerated.
883 * generated/minval_i1.c: Regenerated.
884 * generated/minval_i16.c: Regenerated.
885 * generated/minval_i2.c: Regenerated.
886 * generated/minval_i4.c: Regenerated.
887 * generated/minval_i8.c: Regenerated.
888 * generated/minval_r10.c: Regenerated.
889 * generated/minval_r16.c: Regenerated.
890 * generated/minval_r4.c: Regenerated.
891 * generated/minval_r8.c: Regenerated.
892 * generated/product_c10.c: Regenerated.
893 * generated/product_c16.c: Regenerated.
894 * generated/product_c4.c: Regenerated.
895 * generated/product_c8.c: Regenerated.
896 * generated/product_i1.c: Regenerated.
897 * generated/product_i16.c: Regenerated.
898 * generated/product_i2.c: Regenerated.
899 * generated/product_i4.c: Regenerated.
900 * generated/product_i8.c: Regenerated.
901 * generated/product_r10.c: Regenerated.
902 * generated/product_r16.c: Regenerated.
903 * generated/product_r4.c: Regenerated.
904 * generated/product_r8.c: Regenerated.
905 * generated/sum_c10.c: Regenerated.
906 * generated/sum_c16.c: Regenerated.
907 * generated/sum_c4.c: Regenerated.
908 * generated/sum_c8.c: Regenerated.
909 * generated/sum_i1.c: Regenerated.
910 * generated/sum_i16.c: Regenerated.
911 * generated/sum_i2.c: Regenerated.
912 * generated/sum_i4.c: Regenerated.
913 * generated/sum_i8.c: Regenerated.
914 * generated/sum_r10.c: Regenerated.
915 * generated/sum_r16.c: Regenerated.
916 * generated/sum_r4.c: Regenerated.
917 * generated/sum_r8.c: Regenerated.
919 2008-01-05 Jerry DeLisle <jvdelisle@gcc.gnu.org>
922 * io/list_read.c (next_char): Only save the EOF condition for later if
925 2008-01-03 Thomas Koenig <tkoenig@gcc.gnu.org>
928 * io/io.h: Adjust protoypes for open_internal(),
929 next_array_record() and init_loop_spec().
930 * io/list_read.c (next_char): Use argument "finished"
931 of next_array_record to check for end on internal file.
932 * io/unit.c: Calculate the offset for an array
933 internal file and supply this informatin to open_internal().
934 * io/unix.c (open_internal): Set the offset for the internal
936 * io/transfer.c (init_loop_spec): Calculate the starting
937 record in case of negative strides. Return size of 0 for
939 (next_array_record): Use an extra flag to signal that the
941 (next_record_r): Use the new flag to next_array_record().
942 (next_record_w): Likewise.