1 2013-12-11 Tobias Burnus <burnus@net-b.de>
3 * config/fpu-387.h (sigill_hdlr, get_fpu_rounding_mode): Emit SSE
4 instructions when __SSE_MATH__ is defined.
6 2013-12-06 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
8 * intrinsics/erfc_scaled.c (_M_2_SQRTPI): Define if missing.
10 2013-12-01 Uros Bizjak <ubizjak@gmail.com>
13 * intrinsics/erfc_scaled.c (erfc_scaled_r16): Also provide for
14 quadruple precision long double variant.
16 2013-11-20 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
18 * intrinsics/erfc_scaled.c (erfc_scaled_r16): Don't define if
19 __float128 is not available.
21 2013-11-20 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
24 * intrinsics/erfc_scaled.c (erfc_scaled_r16): New function.
25 * intrinsics/erfc_scaled_inc.c: Do not provide quadruple
28 2013-11-18 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
31 * intrinsics/unpack_generic.c (unpack_internal): Let the compiler
32 know that dim > 0 to avoid warnings.
34 2013-11-15 Janne Blomqvist <jb@gcc.gnu.org>
35 Jerry DeLisle <jvdelisle@gcc.gnu.org>
38 * io/unix.c (regular_file): Don't set O_CREAT when opening a file
39 read-only with unknown status. Mask out O_CREAT when falling back
40 to opening read-only if ACTION= is not set and read-write fails.
42 2013-11-15 Steve Ellcey <sellcey@mips.com>
44 * configure.ac: Do not define HAVE_STRTOLD.
45 * configure: Regenerate.
47 2013-11-10 Janne Blomqvist <jb@gcc.gnu.org>
49 * configure.ac: Check presence of mkostemp.
50 * io/unix.c (set_close_on_exec): New function.
51 (tempfile_open): Use mkostemp and O_CLOEXEC if available, fallback
52 to calling set_close_on_exec.
53 (regular_file): Add O_CLOEXEC to flags if defined.
54 (open_external): Call set_close_on_exec if O_CLOEXEC is not
56 * config.h.in: Regenerated.
57 * configure: Regenerated.
58 * Makefile.in: Regenerated.
59 * aclocal.m4: Regenerated.
61 2013-10-01 Tobias Burnus <burnus@net-b.de>
64 * io/list_read (parse_repeat, read_integer, read_character,
65 parse_real, read_real, check_type, list_formatted_read_scalar,
66 finish_list_read): Call list_free.
68 2013-09-20 Alan Modra <amodra@gmail.com>
70 * configure: Regenerate.
72 2013-07-23 Uros Bizjak <ubizjak@gmail.com>
74 * config/fpu-387.h (get_fpu_rounding_mode): Read rounding mode
75 from SSE mxcsr register on x86_64.
77 2013-07-21 Ondřej Bílka <neleai@seznam.cz>
79 * io/transfer.c: Fix comment typos.
81 2013-07-21 Tobias Burnus <burnus@net-b.de>
84 * config/fpu-387.h (set_fpu_rounding_mode,
85 get_fpu_rounding_mode): Add missing _ to fix build.
87 2013-07-21 Tobias Burnus <burnus@net-b.de>
88 Uros Bizjak <ubizjak@gmail.com>
91 * libgfortran.h (set_fpu_rounding_mode,
92 get_fpu_rounding_mode): New prototypes.
93 * config/fpu-387.h (set_fpu_rounding_mode,
94 get_fpu_rounding_mode): New functions.
95 * config/fpu-aix.h (set_fpu_rounding_mode,
96 get_fpu_rounding_mode): Ditto.
97 * config/fpu-generic.h (set_fpu_rounding_mode,
98 get_fpu_rounding_mode): Ditto.
99 * config/fpu-glibc.h (set_fpu_rounding_mode,
100 get_fpu_rounding_mode): Ditto.
101 * config/fpu-sysv.h (set_fpu_rounding_mode,
102 get_fpu_rounding_mode): Ditto.
103 * configure.ac: Check for fp_rnd and fp_rnd_t.
104 * io/io.h (enum unit_round): Use GFC_FPE_* for the value.
105 * io/read.c (convert_real): Set FP ronding mode.
106 * Makefile.in: Regenerate.
107 * aclocal.m4: Regenerate.
108 * config.h.in: Regenerate.
109 * configure: Regenerate.
111 2013-06-24 Tobias Burnus <burnus@net-b.de>
113 * configure.ac: Check for fp_except and fp_except_t.
114 * config/fpu-sysv.h: Conditionally use either type.
115 * configure: Regenerate.
116 * config.h.in: Regenerate.
118 2013-06-21 Eric Botcazou <ebotcazou@adacore.com>
120 * config/fpu-sysv.h (get_fpu_except_flags): Fix typo.
122 2013-06-20 Uros Bizjak <ubizjak@gmail.com>
124 * config/fpu-387.h (_FPU_MASK_ALL): New.
125 (_FPU_EX_ALL): Ditto.
126 (set_fpu): Use fstcw to store x87 FPU control word. Use fnclex to
127 clear stalled exception flags. Correctly clear stalled SSE
128 exception flags. Simplify code.
129 (get_fpu_except_flags): Simplify code.
131 2013-06-20 Tobias Burnus <burnus@net-b.de>
134 * io/list_read.c (next_char, eat_separator): Don't set EOL for \r.
136 2013-06-19 Uros Bizjak <ubizjak@gmail.com>
138 * config/fpu-387.h: Use __asm__ and __volatile__ consistently.
139 (get_fpu_except_flags): Initialize result.
141 2013-06-17 Tobias Burnus <burnus@net-b.de>
143 * libgfortran.h (compile_options_t) Add fpe_summary.
144 (get_fpu_except_flags): New prototype.
145 * runtime/compile_options.c (set_options, init_compile_options):
147 * runtime/stop.c (report_exception): New function.
148 (stop_numeric, stop_numeric_f08, stop_string, error_stop_string,
149 error_stop_numeric): Call it.
150 * config/fpu-387.h (get_fpu_except_flags): New function.
151 * config/fpu-aix.h (get_fpu_except_flags): New function.
152 * config/fpu-generic.h (get_fpu_except_flags): New function.
153 * config/fpu-glibc.h (get_fpu_except_flags): New function.
154 * config/fpu-sysv.h (get_fpu_except_flags): New function.
155 * configure.ac: Check for fpxcp.h.
156 * configure: Regenerate.
157 * config.h.in: Regenerate.
159 2013-06-01 Tobias Burnus <burnus@net-b.de>
162 * io/write_float.def (ISFINITE2Q, ISFINITE2, ISFINITE2L, ISFINITE,
163 SIGNBIT2Q, SIGNBIT2, SIGNBIT2L, SIGNBIT, ISNAN2Q, ISNAN2, ISNAN2L,
165 (output_float_FMT_G_,WRITE_FLOAT): Use them.
167 2013-05-24 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
169 * acinclude.m4 (libgfor_cv_have_as_needed): Check for -z ignore, too.
170 * configure: Regenerate.
172 2013-05-05 David Edelsohn <dje.gcc@gmail.com>
174 * caf/libcaf.h (_gfortran_caf_critical): Add a prototype.
175 (_gfortran_caf_end_critical): Same.
177 2013-05-04 David Edelsohn <dje.gcc@gmail.com>
179 * runtime/environ.c: Include unistd.h.
180 * runtime/pause.c: Test HAVE_UNISTD_H.
181 * runtime/stop.c: Same.
184 * io/read.c (si_max): Protect declaration of value.
186 2013-04-29 Janne Blomqvist <jb@gcc.gnu.org>
188 * intrinsics/system_clock (gf_gettime_mono): Use variable
189 resolution for fractional seconds argument.
190 (system_clock_4): Simplify, update for gf_gettime_mono change.
191 (system_clock_8): Likewise.
193 2013-04-29 Janne Blomqvist <jb@gcc.gnu.org>
196 * io/transfer.c (next_record_w_unf): First fix head marker, then
198 (next_record): Call flush_if_unbuffered.
199 * io/unix.c (struct unix_stream): Add field unbuffered.
200 (flush_if_unbuffered): New function.
201 (fd_to_stream): New argument.
202 (open_external): Fix fd_to_stream call.
203 (input_stream): Likewise.
204 (output_stream): Likewise.
205 (error_stream): Likewise.
206 * io/unix.h (flush_if_unbuffered): New prototype.
208 2013-04-28 Janne Blomqvist <jb@gcc.gnu.org>
210 * intrinsics/system_clock.c (system_clock_4): Fix sign error in
213 2013-04-15 Tobias Burnus <burnus@net-b.de>
215 * list_read.c (finish_separator): Initialize variable.
217 2013-04-15 Janne Blomqvist <jb@gcc.gnu.org>
220 * intrinsics/time_1.h: Check __CYGWIN__ in addition to
222 * intrinsics/system_clock.c (GF_CLOCK_MONOTONIC): Check
223 _POSIX_MONOTONIC_CLOCK as well.
224 (system_clock_4): Use GetTickCount on Windows.
225 (system_clock_8): Use QueryPerformanceCounter and
226 QueryPerformanceCounterFrequency on Windows.
228 2013-04-04 Tobias Burnus <burnus@net-b.de>
231 * io/list_read.c (check_type): Fix kind checking for COMPLEX.
233 2013-04-01 Jerry DeLisle <jvdelisle@gcc.gnu.org>
236 * io/list_read.c (nml_read_obj): Do not reset the read error flag
237 inside nml_read_obj. If the read error flag is found set just exit.
238 Fix some whitespace on comments.
239 (nml_read_obj_data): Reset the read error flag before the first call
242 2013-03-31 Jerry DeLisle <jvdelisle@gcc.gnu.org>
245 * io/list_read.c (nml_parse_qualifier): Remove spurious next_char call
246 when checking for EOF. Use error return mechanism when EOF detected.
247 Do not return false unless parse_err_msg and parse_err_msg_size have
248 been set. Use hit_eof.
249 (nml_get_obj_data): Likewise use the correct error mechanism.
250 * io/transfer.c (hit_eof): Do not set AFTER_ENDFILE if in namelist
253 2013-03-29 Tobias Burnus <burnus@net-b.de>
256 * io/format.c (parse_format_list): Also cache FMT_STRING.
257 (parse_format): Update call.
259 2013-03-29 Tobias Burnus <burnus@net-b.de>
262 * io/format.c (parse_format): With caching, copy
264 (save_parsed_format): Use dtp->format directy without
267 2013-03-29 Tobias Burnus <burnus@net-b.de>
270 * io/list_read.c (nml_query): Only abort when
272 (namelist_read): Add goto instead of falling through.
274 2013-03-25 Tilo Schwarz <tilo@tilo-schwarz.de>
277 * io/list_read.c (nml_parse_qualifier): To check for a derived type
278 don't use the namelist head element type but the current element type.
279 (nml_get_obj_data): Add current namelist element type to
280 nml_parse_qualifier call.
282 2013-03-24 Tobias Burnus <burnus@net-b.de>
285 * io/list_read.c (read_real): Fix EOF diagnostic.
287 2013-03-20 Tilo Schwarz <tilo@tilo-schwarz.de>
290 * io/list_read.c (nml_read_obj): Don't end the component loop on a
291 nested derived type, but continue with the next loop iteration.
292 (nml_get_obj_data): Don't move the first_nl pointer further in the
293 list if a qualifier was found.
295 2013-03-20 Tilo Schwarz <tilo@tilo-schwarz.de>
298 * io/open.c (st_open): Raise error for unit number < 0 only if
299 unit number does not exist already.
301 2013-03-19 Janne Blomqvist <jb@gcc.gnu.org>
303 * libgfortran.h: Include stdbool.h.
305 (notify_std): Change return type to bool.
306 * intrinsics/chmod.c: Don't include stdbool.h.
307 * intrinsics/execute_command_line.c: Likewise.
308 * io/format.c: Likewise.
309 * io/list_read.c (nml_parse_qualifier): Change return type to bool.
310 (nml_read_obj): Likewise.
311 (nml_get_obj_data): Likewise.
312 * io/transfer.c (read_block_form): Fix comment.
313 (write_buf): Change return type to bool.
314 * io/write.c: Don't include stdbool.h.
315 * io/write_float.def (output_float): Change return type to bool.
316 (output_float_FMT_G_ ## x): Change type of result variable.
317 * runtime/error.c (notify_std): Change return type to bool.
319 2013-03-11 Tobias Burnus <burnus@net-b.de>
321 * io/transfer.c (read_block_direct): Correct condition.
322 * intrinsics/execute_command_line.c (execute_command_line):
323 Remove dead code for the HAVE_FORK case.
325 2013-02-21 Janne Blomqvist <jb@gcc.gnu.org>
328 * io/open.c (test_endfile): Call stell only if size != 0.
329 * io/unix.c (raw_tell): Revert r194679.
330 (raw_size): Return size field only for regular files, otherwise 0.
332 2013-02-19 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
335 * acinclude.m4 (LIBGFOR_CHECK_FOR_BROKEN_POWF): Remove check for
337 * configure.ac (LIBGFOR_CHECK_FOR_BROKEN_POWF): Likewise.
338 * intrinsics/c99_functions.c: Likewise.
339 * configure: Rebuilt.
340 * config.h.in: Rebuilt.
342 2013-02-06 Janus Weil <janus@gcc.gnu.org>
345 * runtime/in_pack_generic.c (internal_pack): Return if base_addr is
348 2013-01-23 Janne Blomqvist <jb@gcc.gnu.org>
350 * io/file_pos.c (unformatted_backspace): Use __builtin_bswapXX
351 instead of reverse_memcpy.
352 * io/io.h (reverse_memcpy): Remove prototype.
353 * io/transfer.c (reverse_memcpy): Make static, move towards
355 (bswap_array): New function.
356 (unformatted_read): Use bswap_array to byte swap the data
358 (unformatted_write): Use a larger temp buffer and bswap_array.
359 (us_read): Use __builtin_bswapXX instead of reverse_memcpy.
360 (write_us_marker): Likewise.
362 2013-01-14 Richard Sandiford <rdsandiford@googlemail.com>
364 Update copyright years.
366 2013-01-06 Tobias Burnus <burnus@net-b.de>
369 * intrinsics/env.c (get_environment_variable_i8): Don't use
370 uninitialized variable.
372 2013-01-02 Jerry DeLisle <jvdelisle@gcc.gnu.org>
375 * io/list_read.c (read_real): Do not call hit_eof when EOF can be
376 treated as a value separator.
377 (parse_real): Likewise.
378 (read_logical): Likewise.
379 (read_character): Likewise.
380 (read_complex): Likewise.
382 Copyright (C) 2013 Free Software Foundation, Inc.
384 Copying and distribution of this file, with or without modification,
385 are permitted in any medium without royalty provided the copyright
386 notice and this notice are preserved.