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