1 Thu Jun 28 20:13:11 CEST 2001 Jan Hubicka <jh@suse.cz>
3 * flow.c (try_merge_block): Rename to try_optimize_cfg;
4 do basic simplifications on the CFG.
5 (is_forwarder_block_p, can_fallthru, try_redirect_by_replacing_jump,
6 try_simplify_condjump): New.
7 (redirect_edge_and_branch): Try replace jump insn.
8 (flow_delete_insn): Handle deleting of ADDR_VEC insns.
10 * basic-block.h (FALLTHRU_EDGE, BRANCH_EDGE): New macros.
12 Thu Jun 28 11:19:42 2001 Jeffrey A Law (law@cygnus.com)
14 * ssa-dce.c (eliminate_dead_code): Properly handle control
15 dependencies implied by PHI nodes.
17 * ssa-dce.c (eliminate_dead_code): Remove fake edges from the
18 CFG after dead code elimination is complete.
20 2001-06-28 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
22 * gthr-posix.h [LIBOBJC]: Add weak definitions of
23 sched_get_priority_max, sched_get_priority_min.
25 2001-06-28 Gabriel Dos Reis <gdr@codesourcery.com>
27 * diagnostic.c (default_print_error_function): Tweak.
28 (report_error_function): Likewise.
29 * toplev.h (default_print_error_function): Move to...
30 * diagnostic.h: ...here. Add a `diagnostic_context *' parameter.
31 * tree.h (print_error_function): Move to...
32 * diagnostic.h: ...here. Add a `diagnostic_context *' parameter.
34 Thu Jun 28 06:16:45 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
36 * expr.c (expand_assignment): When have varying-length object,
38 (expand_expr, case ADDR_EXPR): Use SAVE_EXPR_RTL after putting
39 SAVE_EXPR stack in case we had a SUBREG.
41 Thu Jun 28 10:31:06 CEST 2001 Jan Hubicka <jh@suse.cz>
43 * i386.md (cmp?i): Simplify; refuse immediate operand
45 * i386.c (cmpsi_operand): Refuse constants.
47 * i386.md (movsi_insv_1, movsi_insv_1_rex64): Allow immediate operand.
49 * flow.c (block_label, redirect_edge_and_branch): Split out from ....
50 (split_edge) .... here;
52 2001-06-28 Neil Booth <neil@cat.daikokuya.demon.co.uk>
54 * i386/i386.c (ix86_valid_type_attribute_p): Give external
55 linkage, move declaration to...
56 * i386/i386-protos.h: ...here.
58 2001-06-27 H.J. Lu (hjl@gnu.org)
60 * build-make (CC): Removed.
61 (HOST_CC): Set to $(CC_FOR_BUILD).
62 (HOST_CFLAGS): Replace $(CFLAGS) with $(CFLAGS_FOR_BUILD).
63 Fix a typo in comments.
65 * configure.in: Set CFLAGS to $(CFLAGS_FOR_BUILD) when
66 generating auto-build.h for canadian cross compile. Set CC
67 to `"${CC_FOR_BUILD}"' instead of just `${CC_FOR_BUILD}'.
69 * configure: Regenerated.
71 2001-06-27 Jim Wilson <wilson@redhat.com>
73 * emit-rtl.c (gen_highpart): Call validize_mem.
75 2001-06-27 Bruce Korb <bkorb@gnu.org>
77 * fixinc/inclhack.def(hpux11_cpp_pow_inline): new, but real similar to
78 hpux10_cpp_pow_inline. Not similar enough.
79 (solaris_mutex_init): renamed. PTHREAD_*_INITIALIZER is a problem for
80 all Solaris versions. This fix patches MUTEX and COND initializers,
81 the RWLOCK one will wait for someone to complain. For now, anyway.
82 (uw7_byteorder_fix): It was looking for the byteorder.h file in the
85 2001-06-27 Stan Shebs <shebs@apple.com>
87 * objc/objc-act.c (handle_impent): Rewrite to be more portable
88 and to use ASM_DECLARE_CLASS_REFERENCE.
89 * config/darwin.h (ASM_DECLARE_CLASS_REFERENCE): Rename from
90 undocumented DECLARE_CLASS_REFERENCE, add file argument.
91 * doc/tm.texi (ASM_DECLARE_CLASS_REFERENCE): Document.
93 Wed Jun 27 18:01:09 2001 Jeffrey A Law (law@cygnus.com)
95 * simplify-rtx.c (simplify_rtx): Canonicalize commutative expressions
96 by putting complex operands first and constants second.
98 2001-06-27 Gabriel Dos Reis <gdr@codesourcery.com>
100 * diagnostic.h: Add documentation. Make macros polymorphic.
101 * diagnostic.c (ideal_line_wrap_cutoff): Remove
102 definition. Replace with diagnostic_line_cutoff.
103 (prefixing_policy): Remove. Replace with diagnostic_prefixing_rule.
105 2001-06-27 Joseph S. Myers <jsm28@cam.ac.uk>
107 * doc/c-tree.texi, doc/contrib.texi, doc/cpp.texi,
108 doc/cppinternals.texi, doc/extend.texi, doc/gcc.texi,
109 doc/gcov.texi, doc/install-old.texi, doc/install.texi,
110 doc/invoke.texi, doc/md.texi, doc/rtl.texi, doc/tm.texi: Replace
111 . at end of sentences preceded by a capital letter with @..
113 2001-06-26 Daniel Berlin <dan@cgsoftware.com>
115 * doc/invoke.texi: Add description of max-gcse-passes param.
117 * gcse.c (gcse_main): Use MAX_GCSE_PASSES instead of MAX_PASSES.
118 (MAX_PASSES): Remove now unneeded macro.
120 * params.h (MAX_GCSE_PASSES): New macro, to get parameter value of
121 max-gcse-passes param.
123 * params.def (PARAM_MAX_GCSE_PASSES): New parameter, controlling
124 maximum number of GCSE passes to run. Defaults to 1 (which is what
125 MAX_PASSES in gcse.c used to be).
127 2001-06-27 Neil Booth <neil@cat.daikokuya.demon.co.uk>
129 * system.h (TARGET_ESC): Move to ...
130 * defaults.h (TARGET_ESC): ... here.
131 * target-def.h (TARGET_VALID_DECL_ATTRIBUTE,
132 TARGET_VALID_TYPE_ATTRIBUTE): Default to a no-op handler.
133 * tree.c (default_valid_attribute_p): New.
134 (valid_machine_attribute): Handlers can not be NULL.
135 * tree.h (default_valid_attribute_p): New.
136 * doc/tm.texi: Document TARGET_ESC.
137 * cp/decl2.c (import_export_class): Update.
139 2001-06-26 Bruce Korb <bkorb@gnu.org>
141 * gcc/fixinc/fixincl.c(initialize): In very strict ANSI, you cannot
142 use preprocessing directives inside a string literal. Fixed.
144 2001-06-26 Jim Wilson <wilson@redhat.com>
146 * doc/tm.texi (MAX_LONG_DOUBLE_TYPE_SIZE, INTEL_EXTENDED_IEEE_FORMAT):
149 2001-06-27 Joseph S. Myers <jsm28@cam.ac.uk>
151 * doc/cpp.texi, doc/cppinternals.texi, doc/extend.texi,
152 doc/gcc.texi, doc/install.texi, doc/invoke.texi, doc/md.texi,
153 doc/tm.texi: Use @: where necessary when a full stop does not end
156 2001-06-27 Joseph S. Myers <jsm28@cam.ac.uk>
158 * doc/gcc.texi, doc/install.texi, doc/invoke.texi: Remove trailing
161 2001-06-26 Joseph S. Myers <jsm28@cam.ac.uk>
163 * doc/c-tree.texi, doc/cpp.texi, doc/extend.texi, doc/gcc.texi,
164 doc/install.texi, doc/invoke.texi, doc/objc.texi, doc/rtl.texi,
165 doc/tm.texi: Use two spaces after ends of sentences.
167 2001-06-26 Daniel Berlin <dan@cgsoftware.com>
169 * toplev.c (display_help): Fix param thinko.
170 * Makefile.in: Fix params.h dependencies.
172 2001-06-26 Gabriel Dos Reis <gdr@codesourcery.com>
174 * toplev.c (decode_f_option): Adjust setting.
175 (toplev_main): Call diagnostic_initialize. Remove call to
176 reshape_diagnostic_buffer._
178 * diagnostic.h (struct output_buffer): Add new field format_decoder.
179 (diagnostic_format_decoder): New macro.
180 (diagnostic_prefixing_rule): Likewise.
181 (diagnostic_line_cutoff): Likewise.
182 (set_message_prefixing_rule): Remove.
184 * diagnostic.c (lang_printer): Remove.
185 (diagnostic_message_length_per_line): Likewise.
186 (current_prefixing_rule): Likewise.
187 (initialize_diagnostics): Rename to...
188 (diagnostic_initialize): ...this. Tweak.
189 (default_initialize_buffer): Remove.
190 (reshape_diagnostic_buffer): Likewise.
191 (init_output_buffer): Adjust prefixing rule setting.
192 (output_format): Use format_decoder from the output_buffer.
194 * c-lang.c (c_init): Adjust tree formatter setting.
196 2001-06-26 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
198 * config/i386/sol2.h (CPP_SPEC): Pass -P for .S files.
200 2001-06-26 Neil Booth <neil@daikokuya.demon.co.uk>
202 * Makefile.in (TARGET_H, TARGET_DEF_H): New.
203 (c-decl.o, tree.o, c-typeck.o, $(out_object_file)): Update.
204 * c-decl.c (duplicate_decls): Use function pointer.
205 * c-typeck.c (common_type): Similarly.
206 * tree.c (valid_machine_attribute): Similarly.
207 (merge_machine_type_attributes): Rename merge_type_attributes.
208 (merge_machine_decl_attributes): Rename merge_decl_attributes.
209 (merge_dllimport_decl_attributes): New function.
210 * tree.h (merge_machine_type_attributes): Rename merge_type_attributes.
211 (merge_machine_decl_attributes): Rename merge_decl_attributes.
212 (merge_dllimport_decl_attributes): New prototype.
217 * doc/gcc.texi, doc/tm.texi: Update documentation.
219 cp: Make-lang.in: Update dependencies.
220 * spew.c: Include target.h.
221 (duplicate_decls): Call target function.
222 * decl2.c: include target.h
223 (import_export_class): Use existence of target function pointer.
224 * typeck.c: Include target.h.
225 (qualify_type_recursive): Rename variable. Call target function.
226 (type_after_usual_arithmetic_conversions): Similarly.
227 (common_type): Similarly.
229 config: * 1750a/1750a.c, a29k/29k.c, alpha/alpha.c, arc/arc.c, arm/arm.c,
230 avr/avr.c, c4x/c4x.c, clipper/clipper.c, convex/convex.c,
231 d30v/d30v.c, dsp16xx/dsp16xx.c, elxsi/elxsi.c, fr30/fr30.c,
232 i370/i370.c, i386/i386.c, i860/i860.c, i960/i960.c, ia64/ia64.c,
233 m32r/m32r.c, m68hc11/m68hc11.c, m68k/m68k.c, m88k/m88k.c,
234 mips/mips.c, mn10200/mn10200.c, mn10300/mn10300.c, ns32k/ns32k.c,
235 pa/pa.c, pdp11/pdp11.c, pj/pj.c, romp/romp.c, rs6000/rs6000.c,
236 sh/sh.c, sparc/sparc.c, v850/v850.c, vax/vax.c, we32k/we32k.c)
237 : Include target.h and target-def.h. Define target.
239 * arc/arc-protos.h (arc_valid_machine_decl_attribute): Remove.
240 * arc/arc.c (arc_valid_machine_decl_attribute): Rename
241 arc_valid_decl_attribute, make static.
242 * arc/arc.h (VALID_MACHINE_TYPE_ATTRIBUTE): Remove.
243 * arm/arm-protos.h (arm_valid_machine_decl_attribute,
244 arm_valid_type_attribute_p, arm_pe_valid_machine_decl_attribute,
245 arm_pe_merge_machine_decl_attributes): Remove.
246 * arm/arm.c (arm_valid_machine_decl_attribute_p): Rename
247 arm_valid_decl_attribute_p, make static.
248 (arm_pe_valid_decl_attribute_p): Move from pe.c.
249 * arm/pe.c (arm_pe_valid_machine_decl_attribute_p): Move to arm.c.
250 (arm_pe_merge_machine_decl_attributes): Move to tree.c.
251 * arm/arm.h (VALID_MACHINE_TYPE_ATTRIBUTE): Remove.
252 * arm/coff.h (VALID_MACHINE_DECL_ATTRIBUTE): Remove.
253 * arm/elf.h (VALID_MACHINE_DECL_ATTRIBUTE): Remove.
254 * arm/pe.h (TARGET_DLLIMPORT_DECL_ATTRIBUTES): New.
255 (VALID_MACHINE_TYPE_ATTRIBUTE, VALID_MACHINE_DECL_ATTRIBUTE): Remove.
256 * avr/avr-protos.h (valid_machine_type_attribute,
257 valid_machine_decl_attribute): Remove.
258 * avr/avr.c (valid_machine_type_attribute,
259 valid_machine_decl_attribute): Rename and make static.
260 * avr/avr.h (VALID_MACHINE_TYPE_ATTRIBUTE,
261 VALID_MACHINE_DECL_ATTRIBUTE): Remove.
262 * c4x/c4x-protos.h (c4x_valid_type_attribute_p): Remove.
263 * c4x/c4x.c (c4x_valid_type_attribute_p): Make static.
264 * c4x/c4x.h (VALID_MACHINE_TYPE_ATTRIBUTE): Remove.
265 * d30v/d30v.h: Remove obsolete comments.
266 * h8300/h8300-protos.h (h8300_valid_machine_decl_attribute): Remove.
267 * h8300/h8300.c (h8300_valid_machine_decl_attribute): Rename, make
269 * h8300/h8300.h (VALID_MACHINE_DECL_ATTRIBUTE): Remove.
270 * i386/cygwin.h (TARGET_DLLIMPORT_DECL_ATTRIBUTES): Define.
271 (i386_pe_merge_decl_attributes, MERGE_MACHINE_DECL_ATTRIBUTES,
272 i386_pe_valid_type_attributes_p): Remove.
273 * i386/i386-protos.h (ix86_valid_decl_attribute_p,
274 ix86_valid_type_attribute_p): Remove.
275 * i386/i386.c (ix86_valid_decl_attribute_p): Remove.
276 (ix86_valid_type_attribute_p): Make static.
277 * i386/i386.h (VALID_MACHINE_DECL_ATTRIBUTE,
278 VALID_MACHINE_TYPE_ATTRIBUTE): Remove.
279 * i386/winnt.c (i386_pe_merge_decl_attributes): Move to tree.c.
280 * ia64/ia64-protos.h (ia64_valid_type_attribute): Remove.
281 * ia64/ia64.c (ia64_valid_type_attribute): Make static.
282 * ia64/ia64.h (VALID_MACHINE_TYPE_ATTRIBUTE): Remove.
283 * m32r/m32r-protos.h (m32r_valid_machine_decl_attribute): Remove.
284 * m32r/m32r.c (m32r_valid_decl_attribute): Make static.
285 * m32r/m32r.h (VALID_MACHINE_DECL_ATTRIBUTE): Remove.
286 * m68hc11/m68hc11-protos.h (m68hc11_valid_decl_attribute_p,
287 m68hc11_valid_type_attribute_p): Remove.
288 * m68hc11/m68hc11.c (m68hc11_valid_decl_attribute_p): Remove.
289 (m68hc11_valid_type_attribute_p): Make static.
290 * m68hc11/m68hc11.h (VALID_MACHINE_DECL_ATTRIBUTE,
291 VALID_MACHINE_TYPE_ATTRIBUTE): Remove.
292 * mcore/mcore-protos.h (mcore_valid_machine_decl_attribute,
293 mcore_merge_machine_decl_attribute): Remove.
294 * mcore/mcore.c (mcore_valid_machine_decl_attribute): Rename,
296 (mcore_merge_machine_decl_attributes): Move to tree.c.
297 * mcore/mcore.h (VALID_MACHINE_DECL_ATTRIBUTE,
298 VALID_MACHINE_TYPE_ATTRIBUTE): Remove.
299 (TARGET_DLLIMPORT_DECL_ATTRIBUTES): Define.
300 * ns32k/ns32k-protos.h (ns32k_valid_decl_attribute_p,
301 ns32k_valid_type_attribute_p): Remove.
302 * ns32k/ns32k.c (ns32k_valid_decl_attribute_p): Remove.
303 (ns32k_valid_type_attribute_p): Make static.
304 * ns32k/ns32k.h (VALID_MACHINE_DECL_ATTRIBUTE,
305 VALID_MACHINE_TYPE_ATTRIBUTE): Remove.
306 * rs6000/rs6000-protos.h (rs6000_valid_decl_attribute_p,
307 rs6000_valid_type_attribute_p): Remove.
308 * rs6000/rs6000.c (rs6000_valid_decl_attribute_p): Remove.
309 (rs6000_valid_type_attribute_p): Make static.
310 * rs6000/rs6000.h (VALID_MACHINE_DECL_ATTRIBUTE,
311 VALID_MACHINE_TYPE_ATTRIBUTE): Remove.
312 * sh/sh-protos.h (sh_valid_machine_decl_attribute): Remove.
313 * sh/sh.c (sh_valid_machine_decl_attribute): Rename, make static.
314 * sh/sh.h (VALID_MACHINE_DECL_ATTRIBUTE): Remove.
315 * v850/v850-protos.h (v850_valid_machine_decl_attribute): Remove.
316 * v850/v850.c (v850_valid_machine_decl_attribute): Rename, make static.
317 * v850/v850.h (VALID_MACHINE_DECL_ATTRIBUTE): Remove.
319 2001-06-26 Vladimir Makarov <vmakarov@toke.toronto.redhat.com>
321 * glimits.h (USHRT_MAX): Use unsigned suffix if int can not hold
324 2001-06-26 Gabriel Dos Reis <gdr@codesourcery.com>
326 * diagnostic.h (struct diagnostic_context): Add new field.
327 (lang_diagnostic_starter, lang_diagnostic_finalizer): Remove
329 (global_dc): Declare.
330 * diagnostic.c (global_diagnostic_context): New variable.
331 (global_output_buffer): Remove.
333 (lang_diagnostic_starter, lang_diagnostic_finalizer): Remove
335 (initialize_diagnostics): Adjust initialization.
336 (set_diagnostic_context): Adjust setting.
338 2001-06-26 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
340 * config/mips/iris5.h (UNALIGNED_INT_ASM_OP,
341 UNALIGNED_SHORT_ASM_OP): Define.
342 * config/mips/iris6.h (UNALIGNED_INT_ASM_OP,
343 UNALIGNED_SHORT_ASM_OP): Undef.
345 Tue Jun 26 12:40:12 CEST 2001 Jan Hubicka <jh@suse.cz>
347 * i386.md (float_truncate splitter, and to mov splitters): Add
348 reload_completed; fix operand predicate.
350 * haifa-sched.c (sched_init): Do not split insns.
351 * toplev.c (rest_of_compilation): Call split_all_insns before
352 sched1 pass; simplify condition of post-reload splitter;
353 call split_all_insn before sched2 pass.
355 2001-06-26 Gabriel Dos Reis <gdr@codesourcery.com>
357 * diagnostic.h (diagnostic_prefixing_rule_t): New enum type.
358 (set_message_prefixing_rule): Adjust prototype.
359 * diagnostic.c (current_prefixing_rule): Adjust type.
361 2001-06-26 Neil Booth <neil@daikokuya.demon.co.uk>
363 * defaults.h: Default escape sequences to ASCII.
364 * config/i370/i370.h: Adjust for ASCII default.
365 * config/1750a/1750a.h: Remove escape sequence definitions.
366 * config/a29k/a29k.h: Similarly.
367 * config/alpha/alpha.h: Similarly.
368 * config/arc/arc.h: Similarly.
369 * config/arm/arm.h: Similarly.
370 * config/avr/avr.h: Similarly.
371 * config/c4x/c4x.h: Similarly.
372 * config/clipper/clipper.h: Similarly.
373 * config/convex/convex.h: Similarly.
374 * config/d30v/d30v.h: Similarly.
375 * config/dsp16xx/dsp16xx.h: Similarly.
376 * config/elxsi/elxsi.h: Similarly.
377 * config/fr30/fr30.h: Similarly.
378 * config/h8300/h8300.h: Similarly.
379 * config/i386/i386.h: Similarly.
380 * config/i860/i860.h: Similarly.
381 * config/i960/i960.h: Similarly.
382 * config/ia64/ia64.h: Similarly.
383 * config/m32r/m32r.h: Similarly.
384 * config/m68hc11/m68hc11.h: Similarly.
385 * config/m68k/m68k.h: Similarly.
386 * config/m88k/m88k.h: Similarly.
387 * config/mcore/mcore.h: Similarly.
388 * config/mips/mips.h: Similarly.
389 * config/mn10200/mn10200.h: Similarly.
390 * config/mn10300/mn10300.h: Similarly.
391 * config/ns32k/ns32k.h: Similarly.
392 * config/pa/pa.h: Similarly.
393 * config/pdp11/pdp11.h: Similarly.
394 * config/pj/pj.h: Similarly.
395 * config/romp/romp.h: Similarly.
396 * config/rs6000/rs6000.h: Similarly.
397 * config/sh/sh.h: Similarly.
398 * config/sparc/sparc.h: Similarly.
399 * config/v850/v850.h: Similarly.
400 * config/vax/vax.h: Similarly.
401 * config/we32k/we32k.h: Similarly.
402 * doc/tm.texi: Update documentation.
404 2001-06-26 Gabriel Dos Reis <gdr@merlin.codesourcery.com>
406 * diagnostic.c (digit_buffer): Remove as global. Move to...
407 * diagnostic.h (struct output_buffer): ... here.
408 * diagnostic.c (output_formatted_integer): Adjust use of digit_buffer.
410 2001-06-25 Steve Ellcey <sje@cup.hp.com>
412 * config.gcc (ia64*-*-hpux*): Add ia64/hpux_longdouble.h to tm_file.
413 Define tmake_file to include ia64/t-hpux.
414 * real.c (INTEL_EXTENDED_IEEE_FORMAT): Test for value instead of
415 testing to see if it is defined.
416 * real.h (INTEL_EXTENDED_IEEE_FORMAT): Likewise. Default to 0 if
418 * config/ia64/hpux_longdouble.h: New.
419 * config/ia64/ia64.c (hfa_element_mode): Add comment about incorrect
420 handling of long doubles.
421 (ia64_function_arg, ia64_function_value): Add checks for TFmode
422 and INTEL_EXTENDED_IEEE_FORMAT.
423 * config/ia64/ia64.h (INTEL_EXTENDED_IEEE_FORMAT): Define to one.
424 (HARD_REGNO_NREGS, HARD_REGNO_MODE_OK, LIBCALL_VALUE): Add checks for
425 TFmode and INTEL_EXTENDED_IEEE_FORMAT.
426 * config/ia64/ia64.md (all TFmode patterns): Test
427 INTEL_EXTENDED_IEEE_FORMAT in condition.
428 (floatdidf2, floatdisf2): New, for !INTEL_EXTENDED_IEEE_FORMAT.
429 * config/ia64/quadlib.c: New.
430 * config/ia64/t-hpux: New.
431 * config/i386/i386.h (INTEL_EXTENDED_IEEE_FORMAT): Define to one.
433 2001-06-25 Jim Wilson <wilson@redhat.com>
435 * config/i960/t-960bare (i960-c.o): Add missing header dependencies.
436 * config/i960/t-vxworks960: Likewise.
438 2001-06-25 Dale Johannesen <dalej@apple.com>
440 * bitmap.c (bitmap_last_bit_set): Fix a non-c89 usage (null actual
443 Mon Jun 25 11:10:51 CEST 2001 Jan Hubicka <jh@suse.cz>
445 * i386.md (movsi_insv_1, movsi_insv_1_rex64): Fix constraints.
447 2001-06-25 Joseph S. Myers <jsm28@cam.ac.uk>
449 * doc/c-tree.texi, doc/contrib.texi, doc/extend.texi,
450 doc/gcc.texi, doc/gcov.texi, doc/install.texi, doc/invoke.texi,
451 doc/md.texi, doc/rtl.texi, doc/tm.texi: Be more consistent about
452 the use of "GCC" and related terms.
453 * doc/gcc.1, doc/gcov.1: Regenerate.
455 2001-06-24 Joseph S. Myers <jsm28@cam.ac.uk>
457 * doc/extend.texi, doc/gcc.texi, doc/install-old.texi,
458 doc/invoke.texi, doc/md.texi, doc/rtl.texi, doc/tm.texi: Remove
461 Sun Jun 24 21:21:49 CEST 2001 Jan Hubicka <jh@suse.cz>
463 * (movsi_insv_1, movsi_insv_1_rex64): Allow immediate operand.
465 2001-06-24 Richard Henderson <rth@redhat.com>
467 * builtins.c (expand_builtin_expect_jump): Disable if the
468 expression can't be re-evaluated.
470 2001-06-24 Nick Clifton <nickc@cambridge.redhat.com>
472 * config/arm/arm.c (arm_compute_save_reg_mask): For FIQ interrupt
473 handlers examine register r0-r7, for other interrupt handlers
474 examine r0-r12. If the interrupt handler is not a leaf function
475 save all call clobbered registers.
476 (arm_output_epilogue): If the prologue has pushed the IP register,
478 (Arm_expand_prologue): For interrupt functions that need the frame
479 pointer, push the IP register before it is corrupted.
481 * config/arm/arm.h (ARM_SIGN_EXTEND): Fix compile time warnings
482 about the use of signed and unsigned quantities in a conditional.
484 2001-06-23 Richard Henderson <rth@redhat.com>
486 * config/alpha/crtfastmath.c: New file.
487 * config/alpha/t-crtfm: New file.
488 * config/alpha/elf.h (ENDFILE_SPEC): Use crtfastmath.o.
489 * config/alpha/osf.h (ENDFILE_SPEC): Likewise.
490 * config/alpha/t-crtbe (EXTRA_PARTS): Add pieces defined here.
491 * config.gcc (alpha-{linux,freebsd,netbsd,osf}): Use alpha/t-crtfm;
492 do not set extra_parts here.
494 2001-06-24 Joseph S. Myers <jsm28@cam.ac.uk>
496 * doc/install-old.texi: Remove more documentation of configure
498 * doc/install.texi: Add it here.
500 Sat Jun 23 19:40:05 CEST 2001 Jan Hubicka <jh@suse.cz>
502 * i386-protos.h (emit_i387_cw_initialization): Declare.
503 * i386.md (movsi_insv_1): Remove '*'.
504 (fix_trunc?f?i2): Revamp to use control word parameters.
505 (fix_trunc?i_1): Likewise; update splitters.
506 (fix splitter): Remove.
507 * i386.c (MAX_386_STACK_LOCALS): set to 3.
508 (emit_i387_cw_initialization): New function.
509 (output_fix_trunc): Do not initialize control word;
510 kill dead code; simplify.
512 2001-06-23 Neil Booth <neil@cat.daikokuya.demon.co.uk>
514 * cppmacro.c (make_string_token): Avoid warning.
515 (cpp_macro_definition): Prepend the macro name. Update
517 * cppmain.c (cb_define, dump_macro): Update for changes
518 to cpp_macro_definition.
520 Sat Jun 23 10:20:03 CEST 2001 Jan Hubicka <jh@suse.cz>
522 * flow.c (attempt_auto_inc, try_pre_increment_1): Fix typo.
524 Sat Jun 23 01:23:59 CEST 2001 Jan Hubicka <jh@suse.cz>
526 * flow.c (mark_set_1, attempt_auto_inc, mark_used_reg,
527 try_pre_increment_1): compute REG_FREQ using bb->frequency.
529 * regclass.c (loop_cost): Kill.
530 (frequency): New global variable.
531 (record_operand_costs): Replace loop_cost by frequency.
532 (scan_one_insn): Likewise.
533 (regclass): Likewise; set frequency according to bb->frequency.
535 * flow.c (split_edge): Set frequency.
537 Sat Jun 23 01:16:42 CEST 2001 Jan Hubicka <jh@suse.cz>
539 * predict.c (block_info_def): Add nvisited.
540 (propagate_freq): Count nvisited; re-queue delayed blocks; handle
543 * flow.c (dump_edge_info): Dump the probability of edge.
544 (combine_predictions_for_insn): Dump the basic block.
546 2001-06-22 Joseph S. Myers <jsm28@cam.ac.uk>
548 * doc/gcc.texi: Update documentation of source files of C
551 2001-06-22 Richard Henderson <rth@redhat.com>
553 * doc/invoke.texi (-funsafe-math-optimizations): Document its
554 possible effects at link time.
556 2001-06-22 Diego Novillo <dnovillo@redhat.com>
558 * basic-block.h (dump_edge_info): Declare.
559 (clear_edges): Declare.
560 (mark_critical_edges): Declare.
561 * flow.c (dump_edge_info): Remove static declaration.
562 (clear_edges): Ditto.
563 (mark_critical_edges): Ditto.
564 (free_basic_block_vars): Only clear edges and free basic block
565 array if basic_block_info is not NULL.
566 * ssa.c (compute_dominance_frontiers): Remove static declaration.
567 * ssa.h (compute_dominance_frontiers): Declare.
569 2001-06-22 Toshiyasu Morita (toshiyasu.morita@hsa.hitachi.com)
571 * predict.c: (expected_value_to_br_prob): Check for const_true_rtx
572 instead of const1_rtx for true case.
574 2001-06-22 David Mosberger <davidm@hpl.hp.com>
576 * config/ia64/crtfastmath.c: New file.
577 * config/ia64/t-ia64 (EXTRA_PARTS): Include it.
578 * config/ia64/linux.h (ENDFILE_SPEC): New.
580 2001-06-22 Toshiyasu Morita <toshiyasu.morita@hsa.hitachi.com>
582 * config/h8300/h8300.c (asm_file_start): Remove reference to
585 2001-06-22 Joseph S. Myers <jsm28@cam.ac.uk>
587 * c-common.c (verify_tree): Check for x being NULL.
588 * doc/c-tree.texi: Document COMPOUND_BODY of an empty
592 2001-06-22 DJ Delorie <dj@redhat.com>
594 * config/arm/arm.h (struct machine_function): Remove ra_rtx.
595 * config/arm/arm.c (arm_mark_machine_status): Remove ra_rtx.
596 (arm_return_addr): Use get_hard_reg_initial_val et al.
597 * config/d30v/d30v.h (struct machine_function): Remove ra_rtx.
598 * config/d30v/d30v.c (d30v_mark_machine_status): Remove ra_rtx.
599 (d30v_return_addr): Use get_hard_reg_initial_val et al.
600 * config/rs6000/rs6000.h (struct machine_function): Remove ra_rtx.
601 * config/rs6000/rs6000.c (rs6000_override_options): Don't set
603 (rs6000_mark_machine_status): Remove.
604 (rs6000_return_addr): Use get_hard_reg_initial_val.
605 (rs6000_ra_ever_killed): Use has_hard_reg_initial_val.
606 * config/v850/v850.h (INIT_EXPANDERS): Delete.
607 * config/v850/v850.c (struct machine_function): Delete.
608 (v850_init_machine_status): Delete.
609 (v850_mark_machine_status): Delete.
610 (v850_free_machine_status): Delete.
611 (v850_return_addr): Use get_hard_reg_initial_val.
612 (v850_init_expanders): Delete.
614 Fri Jun 22 19:20:59 CEST 2001 Jan Hubicka <jh@suse.cz>
616 * predict.c (estimate_bb_frequencies): Do not handle conditional
617 jumps jumping to fallthru basic block as conditional jumps.
619 Fri Jun 22 19:11:28 CEST 2001 Jan Hubicka <jh@suse.cz>
621 * regs.h (struct reg_info_def): Add freq field.
622 (REG_N_REFS): Update comment.
624 * regclass.c (scan_one_insn): Update REG_FREQ.
625 * flow.c (mark_set_1): Update REG_FREQ, make REG_N_SETS unweighted.
626 (attempt_auto_inc): Likewise.
627 (mark_used_reg): Likewise.
628 (try_pre_increment_1): Likewise.
629 * local-alloc.c (struct qty): Add freq field.
630 (alloc_qty): Set freq.
631 (update_equiv_regs): Set REG_FREQ.
632 (QTY_CMP_PRI): Use freq.
633 (combine_regs): Update qty->freq.
634 * global.c (struct allocno): Update comment for n_refs;
636 (local_reg_freq): New array.
637 (global_alloc): Update freq field;
638 allocate and initialize local_reg_freq.
639 (allocno_compare): Use freq field.
640 (find_reg): Likewise.
641 * reload1.c (count_pseudo): Use freq isntead of n_refs.
642 (count_spilled_pseudo): Likewise.
644 * tm.texi (GCOV_TYPE_SIZE): Document.
645 * basic-block.h (gcov_type): Define.
646 (struct edge_def): Use gcov_type for count field.
647 (struct basic_block_def): Likewise.
648 * defaults.h (GCOV_TYPE_SIZE): Define.
649 * final.c (end_final): Use GCOV_TYPE_SIZE.
650 * flow.c (dump_edge_info, dump_flow_info, dump_bb): Print count fields
651 using HOST_WIDEST_INT_PRINT_DEC.
652 * gcov-io.h (__fetch_gcov_type, __store_gcov_type, __read_gcov_type,
653 __write_gcov_type): New.
654 (store_long): Remove.
655 * gcov.c (gcov_type): Set default.
656 (struct adj_list): Use gcov_type for arc_count.
657 (bb_info): Use gcov_type for succ_count, pred_count and exec_count.
658 (create_program_flow_graph): Read arc_count properly.
659 (solve_program_flow_graph): 'total' is gcov_type.
660 (output_data): Line_counts is gcov_type, print it properly.
661 * libgcc2.c (struct bb): Counts is gcov_type.
662 (__bb_exit_func): Use __read_gcov_type and __write_gcov_type.
663 * profile.c (LONG_TYPE_SIZE, LONG_LONG_TYPE_SIZE): Set default.
664 (GCOV_TYPE_SIZE): Define.
665 (struct bb_info): succ_count and pred_count is gcov_type.
666 (compute_branch_probabilities): Use __read_gcov_type,
667 print read edges to the dump file.
668 (total): Is gcov_type.
669 (gen_edge_profiler): Use GCOV_TYPE_SIZE.
671 2001-06-14 Andrew Haley <aph@cambridge.redhat.com>
673 * optabs.c (emit_libcall_block): When using non-call exceptions,
674 don't mark libcalls never throwing.
676 2001-06-21 Stan Shebs <shebs@apple.com>
678 * objc/objc-act.c (hash_init): Use xcalloc.
680 2001-06-21 Richard Henderson <rth@redhat.com>
682 * flow.c (entry_exit_blocks): Initialize frequency.
683 (split_block): Copy it.
684 (dump_flow_info): Dump it.
686 Thu Jun 21 22:15:10 2001 J"orn Rennecke <amylaar@redhat.com>
688 * sh.c (barrier_align): Also recognize branch-around-a-jump-sequence
689 from machine-depedent_reorg for purposes of alignment supression
690 when no delay slot insn has been added.
692 2001-06-21 Neil Booth <neil@cat.daikokuya.demon.co.uk>
694 * cppmacro.c (make_string_token): Null terminate.
696 2001-06-21 DJ Delorie <dj@redhat.com>
698 * config/alpha/alpha.h (struct machine_function): Remove.
699 * config/alpha/alpha.c (integrate.h): Include.
700 (override_options): Don't set up machine_status hooks.
701 (alpha_init_machine_status): Remove.
702 (alpha_mark_machine_status): Remove.
703 (alpha_free_machine_status): Remove.
704 (alpha_return_addr): Use get_hard_reg_initial_val.
705 (alpha_gp_save_rtx): Likewise.
706 (alpha_ra_ever_killed): Use has_hard_reg_initial_val.
708 2001-06-20 Aldy Hernandez <aldyh@redhat.com>
710 * config/sh/sh.md (interrupt_function): Use
711 current_function_interrupt.
712 (define_delay): Schedule in delay slot if TARGET_SH3, even if it is
713 an interrupt function.
715 * config/sh/sh.h (current_function_interrupt): Define extern.
717 * config/sh/sh.c (current_function_interrupt): New global.
718 (sh_expand_prologue): Set current_function_interrupt.
720 2001-06-21 Phil Edwards <pme@sources.redhat.com>
722 * doc/install.texi: Add 'c' to list of --enable-languages choices.
724 2001-06-21 DJ Delorie <dj@redhat.com>
726 * integrate.c (mark_hard_reg_initial_vals): Check for NULL.
728 * integrate.c (ggc.h): Include.
729 (initial_value_pair, initial_value_struct,
730 setup_initial_hard_reg_value_integration): Add prototypes.
731 (expand_inline_function): Call
732 setup_initial_hard_reg_value_integration.
733 (has_func_hard_reg_initial_val, get_func_hard_reg_initial_val,
734 get_hard_reg_initial_val, has_hard_reg_initial_val): New functions
735 to keep track of values present at the start of a function.
736 (mark_hard_reg_initial_vals): New, for gc.
737 (setup_initial_hard_reg_value_integration): New. Sets up pseudo
738 mappings for initial values.
739 (emit_initial_value_sets): New. Emits code to set initial value
741 * integrate.h: Add prototypes for new functions.
742 * function.h (struct function): Add hard_reg_initial_vals field.
743 * function.c (integrate.h): Include.
744 (mark_function_status): Call
745 mark_hard_reg_initial_vals.
746 * toplev.c (integrate.h): Include.
747 (rest_of_compilation): Call emit_initial_value_sets.
749 2001-06-21 Stan Shebs <shebs@apple.com>
751 * doc/contrib.texi, doc/cpp.texi, doc/cppinternals.texi,
752 doc/extend.texi, doc/gcc.texi, doc/install.texi, doc/invoke.texi,
753 doc/objc.texi, doc/tm.texi: Use the correct name "Objective-C"
754 everywhere instead of "Objective C".
756 2001-06-21 Joseph S. Myers <jsm28@cam.ac.uk>
758 * doc/c-tree.texi, doc/contrib.texi, doc/extend.texi,
759 doc/gcc.texi, doc/install-old.texi, doc/install.texi,
760 doc/invoke.texi, doc/rtl.texi: Consistently use "front end" and
761 "back end" as nouns and "front-end" and "back-end" as adjectives.
763 Wed Jun 20 21:53:35 CEST 2001 Jan Hubicka <jh@suse.cz>
765 * predict.c (estimate_probability): Fix loop bounds.
767 Wed Jun 20 19:10:48 CEST 2001 Jan Hubicka <jh@suse.cz>
769 * toplev.c (rest_of_compilation): Run mark_constant_function
772 Wed Jun 20 19:08:18 CEST 2001 Jan Hubicka <jh@suse.cz>
774 * predict.c (estimate_loops_at_level, propagate_freq
775 estimate_bb_frequencies, count_to_freqs): New functions.
776 (estimate_probability): Call estimate_bb_frequencies.
777 * basic-block.h (basic_block_def): Add field "freq".
778 (BB_FREQ_MAX): New constant.
780 Wed Jun 20 17:02:50 2001 J"orn Rennecke <amylaar@redhat.com>
782 * sh.c (barrier_align): Don't ask for alignment when seeing a
783 branch-around-a-jump from machine_dependent_reorg.
785 Wed Jun 20 08:35:02 2001 Jeffrey A Law (law@cygnus.com)
787 * ssa.c (rename_block): Update parameter to remove_phi_alternative
788 (convert_from_ssa): Do create REG_DEAD and REG_UNUSED notes when
789 re-running life analysis.
791 2001-06-20 Stan Shebs <shebs@apple.com>
793 * objc/objc-act.c (hash_init): Assume xmalloc always succeeds,
794 also use memset to clear the hash tables.
795 (hash_enter): Assume xmalloc always succeeds.
796 (hash_add_attr): Ditto.
797 (continue_class): Ditto.
799 2001-06-20 Michael Meissner <meissner@redhat.com>
801 * builtins.c (predict.h): Include.
802 (expand_builtin_expect): Update comment.
803 (expand_builtin_expect_jump): New function to expand
804 __builtin_expect inside of a conditional jump expansion.
806 * expr.c (do_jump): Special case __builtin_expect (<test>, 0) and
807 __builtin_expect (<test>, 1).
809 * Makefile.in (builtins.o): Depend on $(PREDICT_H).
811 * rtl.h (expand_builtin_expect_jump): Add prototype.
813 2001-06-19 Geoffrey Keating <geoffk@redhat.com>
815 * doc/rtl.texi (Machine Modes): Correct description of
816 floating-point modes on machines with non-8-bit bytes.
818 2001-06-19 Bernd Schmidt <bernds@redhat.com>
820 * regmove.c (optimize_reg_copy_3): Do nothing if previous insn
821 carries a REG_EQUIV note. If it carries REG_EQUAL, delete the
824 Tue Jun 19 07:53:52 2001 Jeffrey A Law (law@cygnus.com)
826 * ssa.c (remove_phi_alternative): Remove declaration. No longer
827 static. Second argument is a pointer to a basic block structure,
828 not a basic block index.
829 (convert_to_ssa): Do not remove dead code.
830 (convert_from_ssa): Do not remove dead code to create death notes.
831 * ssa.h (remove_phi_alternative): Declare.
833 * flow.c (delete_unreachable_blocks): Fix patch error in
834 previous change (call to find_unreachable_blocks was lost).
836 * ssa.c (ssa_uses): Remove definition.
837 (apply_delayed_renames): Don't grow ssa_uses.
838 (rename_block): Remove comment related to ssa_uses.
839 (rename_registers): Do not initialize ssa_uses.
840 (convert_from_ssa): Do not free ssa_uses.
842 * ssa-dce.c: Renamed from dce.c.
843 * Makefile.in (OBJS): Replace dce.o with ssa-dce.o
844 (dependencies): Replace dce.c with ssa-dce.c and dce.o with
847 2001-06-19 Eric Christopher <echristo@redhat.com>
849 * emit-rtl.c (gen_lowpart_common): Do not assume that SFmode
850 and DFmode are UNITS_PER_WORD and 2*UNITS_PER_WORD. Use
851 GET_MODE_BITSIZE instead of GET_MODE_SIZE/UNITS_PER_WORD.
853 Tue Jun 19 01:52:27 2001 J"orn Rennecke <amylaar@redhat.com>
855 * sh.c (output_branch): Delete bogus code.
857 * sh.c (initial_elimination_offset):
858 Fix FROM == RETURN_ADDRESS_POINTER_REGNUM case.
860 Mon Jun 18 12:50:49 2001 Jeffrey A Law (law@cygnus.com)
862 * flow.c (find_unreachable_blocks): New function.
863 (delete_unreachable_blocks): Use find_unreachable_blocks.
864 * basic-block.h (find_unreachable_blocks): Declare.
866 * dce.c (eliminate_dead_code): Fix formatting glitch.
868 2001-06-18 Jason Merrill <jason_merrill@redhat.com>
870 * c-common.h (RETURN_NULLIFIED_P): New macro.
871 * c-semantics.c (genrtl_return_stmt): Check it.
873 * expr.c (clear_storage): Set TREE_NOTHROW on the decl for memset.
874 (emit_block_move): Likewise.
876 Mon Jun 18 17:27:24 CEST 2001 Jan Hubicka <jh@suse.cz>
878 * unroll.c: Include predict.h.
879 (unroll_loop): Drop prediction notes on preconditioning.
880 * predict.def (PRED_LOOP_PRECONDITIONG, PRED_LOOP_CONDITION):
881 New; add comments on the others.
882 * Makefile.in: (unroll.o): Add dependancy on predict.h.
883 * loop.c (strength_reduce): Fix branch prediction.
885 Mon Jun 18 17:26:56 CEST 2001 Jan Hubicka <jh@suse.cz>
887 * stmt.c (emit_case_nodes): Optimize test whether index is in given
890 Mon Jun 18 15:43:10 CEST 2001 Jan Hubicka <jh@suse.cz>
892 * predict.c (estimate_probability): Do not bail out early
893 when note is present.
894 (combine_predictions_for_insn): Fix note removal code.
896 2001-06-18 Ben Elliston <bje@redhat.com>
898 * except.c (resolve_fixup_regions): Initialise "cleanup".
900 2001-06-17 Neil Booth <neil@daikokuya.demon.co.uk>
902 * tm.texi: Document STDC_0_IN_SYSTEM_HEADERS.
904 Sat Jun 16 20:20:39 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
906 * expr.c (expand_expr, case ADDR_EXPR): If taking address of SAVE_EXPR,
907 use put_var_into_stack.
909 2001-06-16 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
911 * gccspec.c (lang_specific_driver): If compiling ObjC, add
912 -shared-libgcc when necessary.
913 * Makefile.in (gccspec.o): Compile with DRIVER_DEFINES.
915 2001-06-16 Daniel Berlin <dan@cgsoftware.com>
917 * bitmap.h: Add dump_bitmap, bitmap_zero, bitmap_union_of_diffs,
918 bitmap_a_or_b, bitmap_a_and_b, bitmap_first_set_bit,
919 bitmap_last_set_bit. All for compatibility with sbitmap's.
921 *bitmap.c (bitmap_zero): New function.
922 (bitmap_union_of_diffs): New function.
923 (bitmap_first_set_bit): New function.
924 (bitmap_last_set_bit): New function.
926 2001-06-16 Neil Booth <neil@daikokuya.demon.co.uk>
928 * cpp.texi, invoke.texi: Update.
929 * cpp.1, gcc.1: Regenerate.
931 Sat Jun 16 12:45:20 CEST 2001 Jan Hubicka <jh@suse.cz>
933 * i386.md (minsf): Fix splitter. (PR fortran/3191)
935 2001-06-16 Neil Booth <neil@daikokuya.demon.co.uk>
937 * doc/cpp.texi: Update.
938 * doc/cpp.1: Regenerate.
940 2001-06-15 Loren J. Rittle <ljrittle@acm.org>
942 * doc/install.texi: Use correct markup hints.
944 Fri Jun 15 18:05:22 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
946 * function.c (gen_mem_addressof): Handle case where DECL is SAVE_EXPR.
948 * explow.c (expr_size): If DECL and size specified, use it.
950 2001-06-15 Zack Weinberg <zackw@stanford.edu>
952 * doc/cpp.texi: Formatting corrections.
953 Correct buggy example of use of __GNUC__ etc.
954 Clarify $ in identifiers.
955 * doc/cpp.1: Regenerate.
957 Fri Jun 15 19:35:38 CEST 2001 Jan Hubicka <jh@suse.cz>
959 * optabs.c (expand_twoval_binop): Avoid undefined behaviour.
961 2001-06-15 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
963 * doc/install.texi (Specific, alpha*-*-*): Fixed Tru64 UNIX
965 (Specific, alpha-*-osf1): Renamed to alpha*-*-osf*.
966 Added Tru64 UNIX V5.1 bootstrap hints.
967 (Specific, alpha*-*-osf*): Removed old section, obsolete.
969 2001-06-15 Andreas Jaeger <aj@suse.de>
971 * doc/install.texi (Specific): Mention that glibc cannot be
972 compiled with GCC 3.0.
974 2001-06-14 Andrew Haley <aph@cambridge.redhat.com>
976 * combine.c (nonzero_bits): Don't optimize away division by
979 2001-06-15 Zack Weinberg <zackw@stanford.edu>
981 * doc/cpp.texi: Revised and brought up to date.
982 * doc/cpp.1: Regenerate.
984 2001-06-15 Loren J. Rittle <ljrittle@acm.org>
986 * doc/install.texi: Update --enable-threads to match reality.
988 2001-06-15 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
990 * doc/install.texi: Update for C4x.
991 * README.C4X: Remove.
993 2001-06-14 Joseph S. Myers <jsm28@cam.ac.uk>
995 * doc/c-tree.texi, doc/contrib.texi, doc/extend.texi,
996 doc/gcc.texi, doc/install.texi, doc/invoke.texi, doc/md.texi,
997 doc/objc.texi, doc/rtl.texi, doc/tm.texi: Fix spelling and typos.
998 Consistently use "built-in" and "bit-field". Minor logical markup
1000 * doc/gcc.1: Regenerate.
1002 2001-06-14 Richard Henderson <rth@redhat.com>
1004 * config/mips/mips.md (exception_receiver): New.
1006 2001-06-14 Daniel J. Berlin <dan@cgsoftware.com>
1008 * doc/gcc.texi: Update passes documentation to be more in tune
1011 Thu Jun 14 15:38:28 CEST 2001 Jan Hubicka <jh@suse.cz>
1013 * i386.c (ix86_expand_prologue): Fix merging conflict.
1015 2001-06-14 Joseph S. Myers <jsm28@cam.ac.uk>
1017 * doc/c-tree.texi, doc/contrib.texi, doc/extend.texi,
1018 doc/gcc.texi, doc/gcov.texi, doc/install-old.texi,
1019 doc/invoke.texi, doc/md.texi, doc/rtl.texi, doc/tm.texi: Use more
1020 logical markup. Use TeX quotes and dashes. Use @dots{} and
1021 @minus{}. Avoid spaces inside @var. Update last modification
1023 * doc/gcc.1, doc/gcov.1: Regenerate.
1025 Thu Jun 14 12:44:15 CEST 2001 Jan Hubicka <jh@suse.cz>
1027 * i386.c (x86_accumulate_outgoing_args, x86_prologue_using_move,
1028 x86_epilogue_using_move): New global variables.
1029 (override_options): Enable ACCUMULATE_OUTGOING_ARGS if preferred.
1030 (ix86_emit_save_regs_using_mov): New static function.
1031 (ix86_expand_prologue, ix86_expand_epilogue): Use moves if preferred.
1032 * i386.h (MASK_MMX, MASK_SSE, MASK_SSE2, MASK_128BIT_LONG_DOUBLE,
1033 MASK_MIX_SSE_I387): Renumber.
1034 (MASK_NO_ACCUMULATE_OUTGOING_ARGS): New.
1035 (x86_accumulate_outgoing_args, x86_prologue_using_move,
1036 x86_epilogue_using_move): Declare.
1037 (TARGET_PROLOGUE_USING_MOVE, TARGET_EPILOGUE_USING_MOVE): New.
1039 2001-06-13 John David Anglin <dave@hiauly1.hia.nrc.ca>
1041 * inclhack.def (hpux10_cpp_pow_inline): New hack.
1043 2001-06-13 Richard Henderson <rth@redhat.com>
1045 * ifcvt.c (dead_or_predicable): Fix return value last patch.
1047 2001-06-13 Mark Mitchell <mark@codesourcery.com>
1051 2001-06-13 Richard Henderson <rth@redhat.com>
1053 * ifcvt.c (cond_exec_get_condition): Use reversed_comparison_code.
1054 (cond_exec_process_if_block, dead_or_predicable): Likewise.
1056 2001-06-13 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
1058 * mips-tfile.c (copy_object): Always pass indexNil for symbol
1061 2001-06-13 Kazu Hirata <kazu@hxi.com>
1063 * config/h8300/h8300.h (OK_FOR_T): Remove.
1064 (EXTRA_CONSTRAINT): Do not use OK_FOR_T.
1065 * config/h8300/h8300.md: Remove alternatives involving inc and dec
1066 in the helper patterns for addhi3 and addsi3.
1068 2001-06-13 Phil Edwards <pme@sources.redhat.com>
1070 * doc/contrib.texi: Link to libstdc++'s thanks.html for now.
1072 2001-06-13 Zack Weinberg <zackw@stanford.edu>
1074 * Makefile.in: Move _bb and __gcc_bcmp to LIB2FUNCS_ST.
1075 * libgcc-std.ver: Take out __bb* and __gcc_bcmp.
1077 * config/t-slibgcc-elf-ver, config/t-slibgcc-sld,
1078 config/alpha/t-osf4, config/mips/t-iris6: Extract all
1079 references to @shlib_map_file@, @shlib_objs@, or
1080 @shlib_base_name@ to Makefile variables.
1081 Bump soname version of libgcc to 1.
1083 2001-06-13 Joseph S. Myers <jsm28@cam.ac.uk>
1085 * doc/install.texi: Use more logical markup. Include @node
1086 commands in the source when generating any non-HTML.
1088 2001-06-13 Joseph S. Myers <jsm28@cam.ac.uk>
1090 * README: Remove. Some of the contents moved to ../README.
1092 2001-06-13 Alexandre Oliva <aoliva@redhat.com>
1094 * doc/install.texi (--enable-shared): List package names
1097 2001-06-13 Alexandre Oliva <aoliva@redhat.com>
1099 * doc/install.texi (ix86-*-solaris*): Removed, outdated.
1100 (*-*-solaris*): Document problem in /bin/sh that affects
1101 configuring libraries.
1102 (sparc-*-solaris*): Recommend GNU binutils 2.11.1 or vendor tools.
1103 (*-sun-solaris2.8): Document linker problem that explains why
1104 libjava is disabled by default.
1106 2001-06-09 Mark Mitchell <mark@codesourcery.com>
1109 * toplev.c (rest_of_compilation): Remove dead code before
1112 2001-06-12 Alexandre Oliva <aoliva@redhat.com>
1115 2001-06-07 Nathan Sidwell <nathan@codesourcery.com>
1116 * configure.in (sparc*-*-*): Check assembler R_SPARC_UA32 support.
1117 * configure: Rebuilt.
1119 2001-06-12 Jim Wilson <wilson@redhat.com>
1121 * loop.c (strength_reduce): Move bl->all_reduced set before
1122 check_ext_dependant_givs call.
1123 (check_ext_dependant_givs): Clear bl->all_reduced when ignoring givs.
1125 2001-06-12 Alexandre Oliva <aoliva@redhat.com>
1127 * doc/extend.texi (Function Attributes): Document SH's sp_switch
1130 2001-06-13 Joseph S. Myers <jsm28@cam.ac.uk>
1132 * doc/invoke.texi: Use more logical markup. Use TeX quotes,
1135 2001-06-12 Richard Henderson <rth@redhat.com>
1137 * config/i386/i386.c (ix86_expand_prologue): Always use
1138 gen_pro_epilogue_adjust_stack; update arguments.
1139 (ix86_expand_epilogue): Likewise.
1140 (ix86_emit_epilogue_esp_adjustment): Remove.
1141 (ix86_adjust_cost): Remove pro_epilogue_adjust_stack hack.
1142 * config/i386/i386.md (pro_epilogue_adjust_stack): Use a BLKmode
1143 clobber of scratch memory instead of a modification of EBP as the
1144 barrier. Update all peepholes to match.
1146 2001-06-12 Joseph S. Myers <jsm28@cam.ac.uk>
1148 * doc/gcc.texi: Change the font used for @def... commands to a
1150 * doc/extend.texi: Use more logical markup. Use "built-in"
1151 instead of "builtin". Use @deftypefn to mark up built-in
1152 functions; specify their types in the @deftypefn and not in the
1153 descriptive text. Use TeX quotes and dashes. Add more index
1156 2001-06-12 lars brinkhoff <lars@nocrew.org>
1158 * gcc.texi (HOST_BITS_PER_LONGLONG): Document.
1159 (DIR_SEPARATOR_2): Likewise.
1161 2001-06-12 Joseph S. Myers <jsm28@cam.ac.uk>
1163 * doc/install.texi (--exec-prefix, --bindir, --libdir,
1164 --with-slibdir, --infodir, --mandir, --with-cpp-install-dir):
1166 (--enable-cpp): Change to document --disable-cpp instead; update
1167 to reflect current default.
1168 (--without-fast-fixincludes): Remove documentation.
1169 (Final install): Document installation directories in more
1170 detail. Document use of make dvi.
1172 Tue Jun 12 19:01:43 CEST 2001 Jan Hubicka <jh@suse.cz>
1174 * recog.c (validate_replace_rtx_1): Fix previous patch.
1176 Tue Jun 12 17:25:39 CEST 2001 Jan Hubicka <jh@suse.cz>
1178 * recog.c (validate_replace_rtx_1): Do plus_constant call always.
1180 Tue Jun 12 17:24:07 CEST 2001 Jan Hubicka <jh@suse.cz>
1182 * simplify-rtx.c (simplify_subreg): Allow volatile memory
1183 to be subregged in case we don't have move instruction.
1185 Tue Jun 12 12:20:12 CEST 2001 Jan Hubicka <jh@suse.cz>
1187 * loop.c: Include predict.h
1188 (strength_reduce): Drop branch prediction note in case
1189 number of iterations is known.
1190 * predict.def (PRED_LOOP_ITERATIONS): new.
1191 * Makefile.in (loop.o): Add dependancy on predict.h
1193 2001-06-12 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
1195 * c-decl.c (grokdeclarator): Use INTEGRAL_TYPE_P.
1197 * c-typeck.c (c_start_case): Likewise.
1199 2001-06-12 Mark Mitchell <mark@codesourcery.com>
1201 * expr.c (store_field): Don't set MEM_ALIAS_SET for a field
1202 in a structure at a variable address.
1204 2001-06-12 Joseph S. Myers <jsm28@cam.ac.uk>
1206 * doc/gcov.texi: Use more logical markup.
1208 2001-06-11 Mark Mitchell <mark@codesourcery.com>
1210 * unroll.c (initial_reg_note_copy): Use PUT_REG_NOTE_KIND and
1211 REG_NOTE_KIND, not PUT_MODE and GET_MODE.
1212 (final_reg_note_copy): Remove REG_WAS_0 notes that are no longer
1215 2001-06-11 Stan Shebs <shebs@apple.com>
1217 * config/darwin.h (ASM_FILE_END): Remove decl of language_string.
1219 2001-06-11 Stephane Carrez <Stephane.Carrez@worldnet.fr>
1221 * config/m68hc11/m68hc11.md ("*lshrdi3_const32"): Mark the clobber
1222 as an early clobber to make sure it is not used by reload in
1223 one of the operands.
1225 2001-06-11 Mark Mitchell <mark@codesourcery.com>
1227 * doc/c-tree.texi: Update information about flag_honor_std.
1228 * doc/install.texi: Note that binutils is required on HPUX 11.
1229 * doc/invoke.texi (-fhonor-std): Note that -fno-honor-std is
1232 * config/mips/abi64.h (RETURN_IN_MEMORY): Fix handling of
1233 variable-sized types.
1235 2001-06-11 Joseph S. Myers <jsm28@cam.ac.uk>
1237 * doc/md.texi: Use TeX dashes and quotes.
1239 2001-06-11 Joseph S. Myers <jsm28@cam.ac.uk>
1241 * doc/rtl.texi: Reference manual chapter about trees.
1243 2001-06-11 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
1245 * config/mips/iris6.h (NO_BUILTIN_WINT_TYPE): Define.
1246 (WINT_TYPE): Override.
1247 (WINT_TYPE_SIZE): Likewise.
1248 (SUBTARGET_CPP_SIZE_SPEC): Define __WINT_TYPE__ as appropriate.
1250 * config/sparc/sol2.h (WINT_TYPE): Define.
1251 (WINT_TYPE_SIZE): Likewise.
1253 * config/sparc/sol2-sld-64.h (NO_BUILTIN_WINT_TYPE): Define.
1254 (WINT_TYPE): Override.
1255 (WINT_TYPE_SIZE): Likewise.
1256 (CPP_ARCH32_SPEC): Add __WINT_TYPE__ definition.
1257 (CPP_ARCH64_SPEC): Likewise.
1259 2001-06-11 Richard Henderson <rth@redhat.com>
1261 * unwind-dw2-fde.c (__deregister_frame_info): Don't play games
1262 with alias attribute.
1264 * config/linux.h (CPLUSPLUS_CPP_SPEC): Use %(cpp) not $(cpp_cpu).
1265 * config/alpha/linux.h (CPLUSPLUS_CPP_SPEC): Likewise.
1267 2001-06-11 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
1269 * config/rs6000/linux.h (CPLUSPLUS_CPP_SPEC): New.
1271 2001-06-11 Stan Shebs <shebs@apple.com>
1273 * config/darwin.c (darwin_encode_section_info): Rewrite to simplify
1274 and fix coding mistakes.
1276 2001-06-11 Nick Clifton <nickc@cambridge.redhat.com>
1278 * config/m32r/m32r.md (movstrsi_internal): Do not expect a
1279 return string from m32r_output_block_move.
1280 * config/m32r/m32r-protos.h: Make m32r_output_block_move a
1282 * config/m32r/m32r.h (INT32_P): Rename to UNIT32_P and remove
1284 (ROUND_ADVANCE): Remove signed/unsigned conflict.
1285 * config/m32r/m32r.c: Declare prototypes for static functions.
1286 (move_src_operand): Replace INT32_P with UINT32_P.
1287 (function_arg_partial_nregs): Fixed signed/unsigned conflict
1288 in initialisation of 'size'.
1289 (m32r_sched_reord): Remove redundant declarations of 'code'.
1290 (m32r_output_block_move): Change to a void function.
1291 (m32r_encode_section_info): Cast return of
1292 TREE_STRING_POINTER to avoid compile time warning.
1294 2001-06-11 Richard Henderson <rth@redhat.com>
1296 * config/alpha/osf5.h (TARGET_LD_BUGGY_LDGP): New.
1297 * config/alpha/alpha.h (TARGET_LD_BUGGY_LDGP): Default.
1298 (struct machine_function): Add gp_save_rtx.
1299 * config/alpha/alpha.c (alpha_mark_machine_status): Mark it.
1300 (alpha_gp_save_rtx): New.
1301 * config/alpha/alpha-protos.h: Declare it.
1302 * config/alpha/alpha.md (exception_receiver): Make an expander.
1303 Use alpha_gp_save_rtx if TARGET_LD_BUGGY_LDGP.
1305 2001-06-11 Richard Henderson <rth@redhat.com>
1307 * config/alpha/osf.h (LINK_SPEC): Hide _GLOBAL_* symbols.
1309 2001-06-11 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
1311 * configure.in: Align --help messages.
1312 Remove trailing full stops.
1313 Consistently use lower case.
1314 Fix DWARF 2 spelling.
1315 * configure: Rebuilt.
1317 2001-06-11 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
1319 * config/alpha/alpha.h (CPP_SPEC): Don't define __LANGUAGE_C and
1320 variants for .cpp/.cp/.c++ files.
1321 Move definition of __LANGUAGE_C_PLUS_PLUS ...
1322 (CPLUSPLUS_CPP_SPEC): ... here.
1324 Mon Jun 11 15:47:45 CEST 2001 Jan Hubicka <jh@suse.cz>
1326 * jump.c (duplicate_loop_exit_test): Fix loop header heuristics.
1328 2001-06-11 Joseph S. Myers <jsm28@cam.ac.uk>
1330 * c-decl.c (store_parm_decls): When comparing types in an
1331 old-style function declaration with those from a previous
1332 prototype, compare the unqualified versions of parameter types.
1335 2001-06-11 Joseph S. Myers <jsm28@cam.ac.uk>
1337 * doc/objc.texi: Use more logical markup. Use TeX dashes.
1339 2001-06-11 Joseph S. Myers <jsm28@cam.ac.uk>
1341 * doc/c-tree.texi: Use more logical markup.
1343 2001-06-11 Joseph S. Myers <jsm28@cam.ac.uk>
1345 * c-decl.c (xref_tag): Don't return previous tags of wrong type.
1347 2001-06-11 Aldy Hernandez <aldyh@redhat.com>
1349 * loop.c (scan_loop): Do not combine asm statements.
1351 2001-06-11 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
1353 * simplify-rtx.c (simplify_subreg): Fix offset calculation
1354 for complex values within a CONCAT.
1356 2001-06-11 Joseph S. Myers <jsm28@cam.ac.uk>
1358 * doc/install.texi: Update details of what components are included
1359 in the GCC distribution. Update default directory for g++
1360 includes. Update documentation relating to old libio. Adjust
1361 documentation on DejaGnu environment variables. Remove
1362 documentation of --enable-cpplib.
1364 2001-06-11 Joseph S. Myers <jsm28@cam.ac.uk>
1366 * doc/contrib.texi: Fix alphabetical order. Fix typos. Improve
1369 2001-06-10 Richard Henderson <rth@redhat.com>
1371 * ifcvt.c (life_data_ok): New.
1372 (merge_if_block): Use it to determine whether to update
1374 (if_convert): Set it.
1376 2001-06-10 Richard Henderson <rth@redhat.com>
1378 * config/alpha/osf5.h (ASM_OLDAS_SPEC): Add -c.
1380 2001-06-10 Alexandre Oliva <aoliva@redhat.com>
1382 * doc/invoke.texi (MN10300 Options): Document -mno-crt0.
1383 (SH Options): Document -mieee.
1384 * doc/install.texi (Final install): Remove obsolete information
1385 about installing cross compilers.
1386 * doc/gcc.1: Rebuilt.
1388 2001-06-10 Richard Henderson <rth@redhat.com>
1390 * config/alpha/alpha.c (override_options): Set align_loops,
1391 align_jumps, and align_functions.
1392 * config/alpha/alpha.h (FUNCTION_BOUNDARY): Set to 32 bits.
1393 (LOOP_ALIGN, LABEL_ALIGN_AFTER_BARRIER): Remove.
1395 2001-06-11 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
1397 * emit-rtl.c (gen_lowpart_common): Do not assume that SFmode and DFmode
1398 are one and two words in size.
1400 2001-06-10 Richard Henderson <rth@redhat.com>
1402 * doc/invoke.texi (Optimization Options): Document -fpeephole2.
1403 (Code Generation Options): Document -fnon-call-exceptions.
1405 2001-06-10 Mark Kettenis <kettenis@gnu.org>
1407 * config/i386/gnu.h (MD_FALLBACK_FRAME_STATE_FOR): Undefine.
1409 2001-06-10 Stephane Carrez <Stephane.Carrez@worldnet.fr>
1411 * m68hc11.md (peepholes): Remove unused and wrong peepholes.
1413 2001-06-10 Mark Mitchell <mark@codesourcery.com>
1414 Gabriel Dos Reis <gdr@codesourcery.com>
1416 * Makefile.in (c-parse.o): Depend on diagnostic.h
1417 (dwarf2out.o): Likewise.
1419 * dwarf2out.c: #include diagnostic.h
1421 * toplev.h (warningcount, errorcount, sorrycount): Remove
1424 * toplev.c (warningcount, errorcount, sorrycount): Remove
1427 * diagnostic.h (struct output_buffer): Reorder fields.
1428 (diagnostic_kind_count): New macro.
1429 (errorcount, warningcount, sorrycount): Define as macros.
1430 (diagnostic_report_warnings_p): New macro.
1431 (output_state): Add diagnostic_count field.
1433 * diagnostic.c (warningcount, errorcount, inhibit_warnings):
1434 Remove tentative declaration.
1435 (count_error): Use diagnostic_report_warnings_p.
1437 * c-parse.in: #include diagnostic.h
1439 2001-06-10 Stephane Carrez <Stephane.Carrez@worldnet.fr>
1441 * config/m68hc11/m68hc11.md ("extendhisi2"): Fix constraints to
1442 prefer a memory for operand 1.
1443 ("*addsi3"): Fix constraints, the '!' was too strong.
1444 ("*addsi3_split"): Accept soft register and split accordingly.
1446 2001-06-10 Stephane Carrez <Stephane.Carrez@worldnet.fr>
1448 * config/m68hc11/m68hc11-protos.h (m68hc11_initialize_trampoline):
1449 Move definition in the RTX_CODE section.
1451 2001-06-10 Stephane Carrez <Stephane.Carrez@worldnet.fr>
1453 * config/m68hc11/m68hc11.h (RETURN_ADDR_RTX): Define the return
1454 address as relative to the argument pointer.
1456 Sun Jun 10 10:58:53 CEST 2001 Jan Hubicka <jh@suse.cz>
1458 * predict.def (PRED_OPCODE): Place before call and error_return.
1460 Sun Jun 10 10:00:17 CEST 2001 Jan Hubicka <jh@suse.cz>
1462 * predict.def (PRED_CALL, PRED_ERROR_RETURN): New.
1463 * predict.c (estimate_probability): Calculate dominance
1464 information; improve detection of NORETURN heuristics;
1465 add call/error_return heuiristics; tweak comparison heuristics
1468 2001-06-09 Alexandre Oliva <aoliva@redhat.com>
1470 * doc/invoke.texi (C Dialect Options): Document -aux-info.
1471 (Debugging Options): Document -print-multi-directory and
1473 * doc/gcc.1: Rebuilt.
1475 * toplev.c (independent_decode_option): Require `=' between
1476 `-aux-info' and filename in the same argument.
1477 * gcc.c: Don't pass -aux-info=filename twice.
1479 2001-06-09 Mark Mitchell <mark@codesourcery.com>
1481 * expr.c (expand_expr, case ARRAY_REF): Do not replace
1482 an array element with the known initializing value if it has
1485 * toplev.c (rest_of_compilation): Remove dead code before
1488 2001-06-09 Neil Booth <neil@daikokuya.demon.co.uk>
1490 * cppinit.c (print_help): Document -fpreprocessed.
1491 * invoke.texi: Similarly.
1493 Sun Jun 10 00:35:37 CEST 2001 Jan Hubicka <jh@suse.cz>
1495 * predict.def: New file.
1496 * predict.h: New file.
1497 * predict.c: Include predict.h.
1498 (predictor_info): New structure and array.
1499 (predict_edge, predict_insn): Rewrite; make global.
1500 (predict_edge_def, predict_insn_def): New global functions.
1501 (dump_prediction, combine_predictions_for_insns): New
1503 (estimate_probability): Change calls to predict_edge
1504 to predict_edge_def and calls to predict_insn to predict_insn_def;
1505 combine probabilities.
1506 (expected_value_to_br_prob): Behave as predictor.
1507 * rtl.h (REG_BR_PRED): Update coment.
1508 (invert_br_probabilities): New.
1509 * jump.c: Include predict.h
1510 (duplicate_loop_exit_test): Drop branch prediction notes.
1511 (invert_jump): Use invert_br_probabilities.
1512 * Makefile.in: Add dependancy on predict.h for jump and predict pass.
1513 * ifcvt.c (dead_or_predicable): Use invert_br_probabilities.
1514 * combine.c (distribute_notes): Handle BR_PRED.
1516 Sat Jun 9 23:29:41 CEST 2001 Jan Hubicka <jh@suse.cz>
1518 * predict.c (predict_insn, predict_edge): New static functions.
1519 (estimate_probability): Revamp to use new functions;
1520 fix loop header heruistics; add loop exist heruistics
1522 2001-06-09 Alexandre Oliva <aoliva@redhat.com>
1524 * config.gcc: Re-enable bi-arch sparc on Solaris 7 and above.
1526 2001-06-09 Peter Jakubek <pjak@snafu.de>
1528 * config/m68k/m68k.md (ashrdi_const): Fix right shift by 16.
1530 2001-06-09 John David Anglin <dave@hiauly1.hia.nrc.ca>
1532 * vax.h (NOTICE_UPDATE_CC): Set CC_NO_OVERFLOW in cc_status.flags
1533 for integer operations that don't update C bit.
1535 2001-06-09 Nicola Pero <nicola@brainstorm.co.uk>
1537 * gthr-posix.h (__gthread_objc_init_thread_system): If
1538 pthread_key_create fails, it's not clear what the return value is.
1539 This obvious fix makes sure it always returns -1 if a problem
1542 2001-06-09 Joseph S. Myers <jsm28@cam.ac.uk>
1544 * doc/gcc.texi: Use @defcodeindex for the index of options. Add
1545 more index entries. Use more logical markup where appropriate.
1546 Use TeX quotes and dashes.
1548 2001-06-09 Benjamin Kosnik <bkoz@redhat.com>
1550 * unwind-pe.h: Conditionally qualify references to abort with
1553 2001-06-09 Julian Foad <julian_foad@hotmail.com>
1555 * doc/invoke.texi: Remove superfluous text.
1557 2001-06-08 Richard Henderson <rth@redhat.com>
1559 * config/alpha/linux.h (CPLUSPLUS_CPP_SPEC): New.
1560 (LIB_SPEC): Mirror config/linux.h version.
1562 2001-06-08 Richard Henderson <rth@redhat.com>
1564 * except.c (get_exception_pointer, get_exception_filter): Take a
1565 struct function. Update all callers.
1566 * except.h (get_exception_pointer): Update declaration.
1567 * expr.c (expand_expr): Update get_exception_pointer call.
1568 * integrate.c (expand_inline_function): Remap the exception pointer
1569 from callee to caller.
1571 2001-06-08 Mark Mitchell <mark@codesourcery.com>
1573 * c-decl.c (grokdeclarator): Make the TREE_TYPE for declarations
1574 accurately reflect its cv-qualification.
1575 * c-typeck.c (type_lists_compatible_p): Ignore the top-levl
1576 cv-qualifiers on function types.
1578 2001-06-08 Mark Mitchell <mark@codesourcery.com>
1580 * basic-block.h: Improve comments.
1581 * except.c (expand_eh_region_end_allowed): Remove redundant call
1582 to do_pending_stack_adjust.
1583 * flow.c (life_analysis): Fix typo in comment.
1584 (calculate_global_regs_live): Add documentation.
1585 (mark_set_1): Likewise.
1586 (debug_regset): Likewise.
1587 * doc/rtl.texi (cond_exec): Document it.
1589 Fri Jun 8 21:52:51 CEST 2001 Jan Hubicka <jh@suse.cz>
1591 * i386.h (CONST_COSTS): set cost of constants representable in
1592 immediate fields to 0.
1594 Fri Jun 8 21:34:54 CEST 2001 Jan Hubicka <jh@suse.cz>
1596 * function.c (diddle_return_value): Kill code to determine
1597 return value before expand_function_end.
1598 (expand_function_end): Delay call to clobber_return_register
1599 after fucntion return value is computed.
1601 Re-install temporary reverted patch:
1602 * toplev.c (rest_of_compilation): Call split_all_insns
1603 before reg-stack and shorten-branches. Do shorten-branches
1605 * final.c (shorten_branches): Remove insn splitting code.
1607 2001-06-08 Joseph S. Myers <jsm28@cam.ac.uk>
1609 * doc/gcc.texi, doc/invoke.texi: Add index of command line
1610 options. Use @opindex to index them rather than other indexing
1611 commands. Use @var{...} instead of <...>. Avoid spaces in names
1612 inside @var. Don't use @kindex to index escape sequences in
1615 2001-06-08 Jason Merrill <jason_merrill@redhat.com>
1617 * stmt.c (current_nesting_level): New fn.
1618 * tree.h: Declare it.
1619 * c-semantics.c (genrtl_compound_stmt): Use it.
1621 * dbxout.c (dbxout_symbol): Use DECL_RTL_SET_P.
1623 2001-06-08 Jakub Jelinek <jakub@redhat.com>
1625 * jump.c (mark_modified_reg): Allow jump threading if condition
1626 codes are represented by a hard register.
1628 2001-06-08 Jakub Jelinek <jakub@redhat.com>
1630 * config/ia64/ia64.c (ia64_function_arg): Use [SDT]Fmode as gr_mode
1631 for complex floats passed to unprototyped functions.
1633 2001-06-08 Mark Mitchell <mark@codesourcery.com>
1635 * except.c (expand_eh_region_end_allowed): Call
1636 do_pending_stack_adjust as necessary.
1638 Fri Jun 8 14:16:33 CEST 2001 Jan Hubicka <jh@suse.cz>
1640 * function.c (clobber_return_register): Clobber the pseudo return
1643 * sibcall.c (skip_unreturned_value): New function.
1644 (call_ends_block_p): Use it.
1646 * recog.c (split_insn): Break out from ...
1647 (split_all_insns): ... here; do not use basic block information
1650 Thu Jun 7 18:27:53 CEST 2001 Jan Hubicka <jh@suse.cz>
1652 * simplify-rtx.c (simplify_subreg): Fix verification of
1655 2001-06-08 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
1657 * config/mips/mips.h (CPP_SPEC): Simplify .s/.S handling.
1658 Don't define _LANGUAGE_C and variants for .cpp/.cp/.c++ files.
1659 Move definition of _LANGUAGE_C_PLUS_PLUS ...
1660 (CPLUSPLUS_CPP_SPEC): ... here.
1661 Fixes PRs c++/3047, target/441.
1663 2001-06-08 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
1665 * doc/install.texi2html (MAKEINFO): Keep value if set already.
1667 2001-06-08 Joseph S. Myers <jsm28@cam.ac.uk>
1669 * doc/gcc.texi: Add trailing slash to URL.
1671 2001-06-07 Stan Shebs <shebs@apple.com>
1673 * config/darwin.h (ENCODE_SECTION_INFO): Define.
1674 (REDO_SECTION_INFO_P): Ditto.
1675 (STRIP_NAME_ENCODING): Ditto.
1676 (ASM_DECLARE_OBJECT_NAME): Use ENCODE_SECTION_INFO.
1677 (ASM_OUTPUT_ALIGNED_DECL_LOCAL): Ditto.
1678 (ASM_OUTPUT_LABELREF): Use STRIP_NAME_ENCODING.
1679 (GEN_LAZY_PTR_NAME_FOR_SYMBOL): Ditto.
1680 * config/darwin.c: No longer include c-tree.h.
1681 (machopic_classify_ident): Rewrite to use symbol encoding.
1682 (lookup_name_darwin): Remove.
1683 (machopic_non_lazy_ptr_name): Handle encoded symbols.
1684 (machopic_stub_name): Use STRIP_NAME_ENCODING.
1685 (machopic_validate_stub_or_non_lazy_ptr): Ditto.
1686 (machopic_finish): Ditto, remove test of decl.
1687 (update_non_lazy_ptrs): New function.
1688 (darwin_encode_section_info): New function.
1689 * config/darwin-protos.h: Declare it.
1690 * config/rs6000/rs6000.c (machopic_output_stub): Use
1691 STRIP_NAME_ENCODING.
1693 2001-06-07 Mark Mitchell <mark@codesourcery.com>
1695 * tree.h (DECL_SOURCE_FILE): Improve documentation.
1696 (DECL_SOURCE_LINE): Likewise.
1698 2001-06-07 Loren J. Rittle <ljrittle@acm.org>
1700 * config/alpha/elf.h (MAKE_DECL_ONE_ONLY): Copy definition
1701 from config/elfos.h.
1703 2001-06-07 Phil Edwards <pme@sources.redhat.com>
1705 * linux.h (CPLUSPLUS_CPP_SPEC): Move -D_GNU_SOURCE to here.
1706 * pa/pa-linux.h: Allow CPLUSPLUS_CPP_SPEC to remain.
1708 2001-06-08 Joseph S. Myers <jsm28@cam.ac.uk>
1710 * doc/contrib.texi: Add copyright notice.
1712 2001-06-08 Joseph S. Myers <jsm28@cam.ac.uk>
1714 * doc/md.texi: Use four digit years in copyright notice.
1716 2001-06-08 Joseph S. Myers <jsm28@cam.ac.uk>
1718 * config.gcc: For $target_alias of athlon-*, set
1719 target_cpu_default2=5.
1721 Thu Jun 7 16:17:40 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
1723 * global.c (build_insn_chain): Allow ADDR_VEC or ADDR_DIF_VEC after
1724 end of last block if last real insn is a JUMP_INSN.
1726 2001-06-07 Joseph S. Myers <jsm28@cam.ac.uk>
1730 2001-06-07 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
1732 * gthr-posix.h (__gthread_objc_thread_detach): Simply cast
1733 pthread_t to objc_thread_t.
1734 (__gthread_objc_thread_id): Likewise.
1736 2001-06-07 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
1738 * alpha/osf5.h (CPP_XFLOAT_SPEC): Override default definition.
1739 (ASM_OLDAS_SPEC): Likewise.
1741 * alpha/osf.h (CPP_XFLOAT_SPEC): Define.
1742 (CPP_SUBTARGET_SPEC): Use it.
1743 (ASM_OLDAS_SPEC): Define.
1745 (SUBTARGET_EXTRA_SPECS): Define, declare the new specs above.
1747 2001-06-07 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
1749 * config/alpha/alpha.c (alpha_va_arg): Handle TFmode, TCmode args,
1750 passed by reference.
1752 2001-06-07 Joseph S. Myers <jsm28@cam.ac.uk>
1754 * doc/tm.texi (TARGET_SWITCHES, TARGET_OPTIONS): Adjust markup.
1755 Document use of N_(...), and show it in examples. Note that
1756 documentation should be added to invoke.texi. Avoid an overfull
1759 Thu Jun 7 17:09:50 CEST 2001 Jan Hubicka <jh@suse.cz>
1761 * toplev.c (rest_of_compilation): Revert previous patch.
1762 * final.c (shorten_branches): Likewise.
1764 2001-06-07 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
1766 * pself.c, pself1.c, pself2.c, pself3.c, pself4.c, pself5.c:
1769 2001-06-07 Joseph S. Myers <jsm28@cam.ac.uk>
1771 * doc/install-old.texi: Remove more obsolete documentation.
1773 Thu Jun 7 13:20:14 CEST 2001 Jan Hubicka <jh@suse.cz>
1775 * expr.c (copy_blkmode_from_reg): Fix operand_subword_force call.
1777 Thu Jun 7 12:12:58 CEST 2001 Jan Hubicka <jh@suse.cz>
1779 * toplev.c (rest_of_compilation): Call split_all_insns
1780 before reg-stack and shorten-branches. Do shorten-branches
1782 * final.c (shorten_branches): Remove insn splitting code.
1784 2001-06-07 Nathan Sidwell <nathan@codesourcery.com>
1786 * configure.in (sparc*-*-*): Check assembler R_SPARC_UA32 support.
1787 * configure: Rebuilt.
1789 2001-06-07 Andreas Jaeger <aj@suse.de>
1791 * emit-rtl.c (operand_subword): Remove unused variable.
1793 Wed Jun 6 14:51:05 CEST 2001 Jan Hubicka <jh@suse.cz>
1795 * i386.md (floatdi?f): Avoid usinf of SSE instructions
1796 if TARGET_64BIT is false.
1797 (floatdi?f_i386_only): New insn.
1798 (floatdi?f_i386): Disable for !TARGET_64BIT.
1800 * (min?f, max?f splitters): Handle case where
1801 operands are cross-matched.
1803 * i386.h (HI_REGISTER_NAMES): Remove redundant definition
1804 (MMX_REGISTER_NAMES): Kill.
1805 (PRINT_OPERAND): Fix comment.
1806 (PRINT_REG): Likewise.
1807 * i386.c (print_reg): Kill support for 'm' CODE; simplify.
1808 (print_operand): Update comment; kill 'm'.
1810 * i386.c (x86_branch_hints): New global variable
1811 (print_operand): Support outputting of branch prediction hints.
1812 * i386.md (conditional jump patterns): Add branch prediction hints
1814 * i386.h (x86_branch_hints): Declare
1815 (TARGET_BRANCH_PREDICTION_HINTS): New macro.
1816 (PRINT_OPERAND_FUNCT_VALID_P): New.
1817 * final.c (final_forward_branch_p): New function.
1819 2001-06-06 Richard Henderson <rth@redhat.com>
1821 * flow.c (mark_used_reg): Clean up looping over multiple hard
1822 registers. Do conditional life bits across multiple hard regs.
1824 2001-06-05 Jeffrey D. Oldham <oldham@codesourcery.com>
1826 * reload1.c (reload): Revert Schmidt's change so all USEs are not
1827 deleted during reload.
1829 2001-06-05 Mark Mitchell <mark@codesourcery.com>
1831 * c-semantics.c (genrtl_scope_stmt): Write out nested inline
1832 functions here, instead of ...
1833 * c-decl.c (c_expand_body): ... here.
1835 2001-06-05 David O'Brien <obrien@FreeBSD.org>
1837 * config.gcc, config/sparc/bsd.h: Do not directly include
1838 sparc/sparc.h. Instead do it via tm_file.
1840 2001-06-05 Richard Henderson <rth@redhat.com>
1842 * dwarf2.h (DW_EH_PE_aligned): New.
1843 * dwarf2asm.c (eh_data_format_name): Name it.
1844 (dw2_asm_output_encoded_addr_rtx): Align for it.
1845 * dwarf2out.c (output_call_frame_info): Handle it for personality
1846 routine and LSDA pointers.
1848 * unwind-pe.h (DW_EH_PE_aligned): New.
1849 (base_of_encoded_value): Handle it.
1850 (read_encoded_value_with_base): Likewise.
1851 * unwind-dw2-fde.c (base_from_object): Likewise.
1852 (get_cie_encoding): Likewise.
1854 * config/alpha/elf.h: Remove ecoff commentary.
1855 * config/alpha/osf.h (ASM_PREFERRED_EH_DATA_FORMAT): New.
1857 2001-06-05 David O'Brien <obrien@FreeBSD.org>
1859 * config.gcc, config/i386/bsd386.h: Do not directly include
1860 i386/386bsd.h. Instead do it via tm_file.
1862 2001-06-05 David O'Brien <obrien@FreeBSD.org>
1864 * elfos.h (USING_ELFOS_H): Identify the use of elfos.h in the same
1867 2001-06-05 Pascal Obry <obry@act-europe.fr>
1869 * configure.in: Quote $enable_win32_registry in case the value has
1873 2001-06-05 Mark Mitchell <mark@codesourcery.com>
1875 * print-rtl.c (xspaces): Remove.
1876 (print_rtx): Use printf field-width, rather than xpsaces, to
1878 * toplev.c (main): Disable sibling-call optimization if we are
1879 handling exceptions.
1881 2001-06-05 Bernd Schmidt <bernds@redhat.com>
1883 * reload1.c (reload): Delete all USEs generated during reload.
1885 2001-06-05 scott snyder <snyder@fnal.gov>
1887 * gccbug.in: Fix typo.
1889 2001-06-05 Andreas Jaeger <aj@suse.de>
1891 * builtins.def: Fix definition of __builtin_cosf, it uses float as
1892 parameter and return value.
1894 2001-06-04 Anthony Green <green@redhat.com>
1896 * config/sparc/elf.h (CPP_PREDEFINES): Don't assert cpu or
1897 machine. This is now done in sparc.h.
1899 2001-06-05 Nathan Sidwell <nathan@codesourcery.com>
1901 Correct CVS resurrection of invoke.texi.
1902 * doc/invoke.texi: Document new tree dump flags.
1904 2001-06-05 Joseph S. Myers <jsm28@cam.ac.uk>
1906 * c-typeck.c (build_c_cast): Use TYPE_MAIN_VARIANT when checking
1907 for casting an aggregate to its own type. Fixes PR c/2735.
1909 2001-06-05 Joseph S. Myers <jsm28@cam.ac.uk>
1911 * doc/texinfo.tex: Update to version 2001-05-24.08.
1913 2001-06-05 Nathan Sidwell <nathan@codesourcery.com>
1915 * c-common.h (flag_dump_translation_unit): Remove.
1916 (enum tree_dump_index): Define.
1917 (TDF_ADDRESS, TDF_SLIM): New #defines.
1918 (dump_node_to_file): Remove.
1919 (dump_node): Make extern. Add flags.
1920 (dump_flag, dump_enabled_p, dump_begin, dump_end,
1921 dump_switch_p): Prototype.
1922 * c-common.c (flag_dump_translation_unit): Remove.
1923 * c-decl.c (c_decode_option): Remove -fdump-translation-unit
1924 logic. Use dump_switch_p.
1925 * c-dump.h (struct dump_info): Add node and user fields.
1926 (dump_pointer): Declare.
1927 * c-dump.c (dump_node): Make extern. Add flags.
1928 (SOL_COLUMN, EOL_COLUMN, COLUMN_ALIGNMENT): New #defines.
1929 (dump_new_line, dump_maybe_newline): Use them.
1930 (dump_pointer): New function.
1931 (dequeue_and_dump): Check TDF_SLIM before dumping a _DECL's
1932 chain or function's body. Dump address, if TDF_ADDRESS set.
1933 (dump_flag): Define.
1934 (dump_node_to_file): Remove.
1935 (struct dump_file_info): New struct.
1936 (dump_files): New array.
1937 (dump_begin, dump_end, dump_enabled_p, dump_switch_p): Define.
1938 * c-lang.c (finish_file): Adjust dumping.
1939 * toplev.h (dump_base_name): Make extern.
1940 * invoke.texi: Document new flags.
1942 2001-06-04 Mark Mitchell <mark@codesourcery.com>
1944 * c-tree.h (lang_decl): Add pending_sizes fields.
1945 * c-decl.c (store_parm_decls): Save pending_sizes away for nested
1947 (c_expand_body): Expand them.
1948 (lang_mark_tree): Mark lang_decl:pending_sizes.
1949 * function.c (expand_pending_sizes): New function, broken out
1951 (expand_function_start): ... here.
1952 * tree.h (expand_pending_sizes): Declare it.
1954 2001-06-04 Loren J. Rittle <ljrittle@acm.org>
1956 * doc/install.texi: Update FreeBSD information. Generalize
1957 and update information for alpha-based platforms using ELF.
1959 2001-06-04 John David Anglin <dave@hiauly1.hia.nrc.ca>
1961 * c-decl.c (get_parm_info): Use INTEGRAL_TYPE_P.
1962 (store_parm_decls): Likewise.
1963 * c-typeck.c (convert_arguments): Likewise.
1965 2001-06-04 Richard Henderson <rth@redhat.com>
1967 * sibcall.c (optimize_sibling_and_tail_recursive_call): Suppress
1968 optimization if current_function_calls_setjmp.
1970 2001-06-04 Joseph S. Myers <jsm28@cam.ac.uk>
1972 * doc/c-tree.texi: Fix documentation of TREE_STRING_LENGTH for
1975 Mon Jun 4 20:44:25 CEST 2001 Jan Hubicka <jh@suse.cz>
1977 * simplify-rtx.c (simplify_subreg): Fix combining of
1978 paradoxical subregs.
1980 Mon Jun 4 20:15:25 CEST 2001 Jan Hubicka <jh@suse.cz>
1982 * rtlanal.c (rtx_unsable_p): ADDRESSOF is stable.
1983 (no_labels_between_p): Short circuit case beg==end.
1985 Mon Jun 4 20:03:05 CEST 2001 Jan Hubicka <jh@suse.cz>
1987 * rtlanal.c (operand_preference): Fix preference for objects.
1989 Mon Jun 4 20:00:40 CEST 2001 Jan Hubicka <jh@suse.cz>
1991 * gcse.c (handle_avail_expr): Be prepared to handle single_set
1994 Mon Jun 4 19:59:46 CEST 2001 Jan Hubicka <jh@suse.cz>
1996 * combine.c (if_then_else_cond): Use simplify_subreg instead
1998 * integreate.c (sub_constants): Likewise.
2000 Mon Jun 4 19:59:12 CEST 2001 Jan Hubicka <jh@suse.cz>
2002 * emit-rtl.c (constant_subword): Deprecate; remove most of code
2003 and use simplify_gen_subreg.
2005 Mon Jun 4 19:55:23 CEST 2001 Lars Brinkhoff <lars@nocrew.org>
2007 * sibcall.c (skip_copy_to_return_value): recognize the situation
2008 when the called function's return value is copied into an
2009 intermediate pseudo, and then into the calling functions return
2012 Mon Jun 4 16:50:33 CEST 2001 Jan Hubicka <jh@suse.cz>
2014 * simplify_rtx.c (simplify_subreg): Keep subregs on return values,
2015 check CLASS_CANNOT_CHANGE_MODE before avoiding subreg on hard reg,
2016 in case register wasn't OK previously, accept it now; allow
2017 subregs of frame pointer if reload completed and frame pointer
2020 * combine.c (sombine_simplify_rtx): Fix comment;
2021 use subreg_lowpart_offset instead of subreg_lowpart_p
2022 (gen_lowpart_for_combine): Use subreg_lowpart_offset.
2023 * rtl.h (subreg_lowpart_parts_p): Kill.
2024 (subreg_lowpart_offset, subreg_highpart_offset): Declare.
2025 * simplify-rtx.c (simplify_subreg): Use subreg_lowpart_offset.
2026 * emit-rtl.c (gen_lowpart_SUBREG): Use subreg_lowpart_offset;
2027 (gen_lowpart_common): Likewise.
2028 (subreg_lowpart_p): Likewise.
2029 (subreg_lowpart_parts_p): Kill.
2030 (subreg_lowpart_offset, subreg_highpart_offset): New function.
2032 * emit-rtl.c (gen_lowpart_common): Use simplify_gen_subreg
2033 to simplify SUBREG and REG.
2034 (gen_highpart): Use simplify_gen_subreg for all simplifications.
2036 * emit-rtl.c (gen_realpart, gen_imagpart): Do not handle
2039 * rtlanal.c (replace_regs): Use simplify_gen_subreg
2041 Mon Jun 4 09:21:19 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
2043 * doc/c-tree.texi (ARRAY_REF): Say what type of expression must be.
2044 (ARRAY_RANGE_REF): Added description.
2046 * tree.def (ARRAY_RANGE_REF): New code.
2047 * alias.c (handled_component_p, can_address_p): Handle it.
2048 * dwarf2out.c (loc_descriptor_from_tree): Likewise.
2049 * explow.c (set_mem_attributes): Likewise.
2050 * expr.c (expand_assignment, get_inner_reference): Likewise.
2051 (expand_expr, expand_expr_unaligned, do_jump): Likewise.
2052 * fold-const.c (operand_equal_p): Likewise.
2053 * tree.c (staticp, stabilize_reference): Likewise.
2054 * varasm.c (decode_addr_const): Likewise.
2056 Sun Jun 3 21:59:51 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
2058 * reload.c (reload_inner_reg_of_subreg): Return 1 for PLUS.
2059 (push_reload): Handle non-REG in reload_inner_reg_of_subreg case.
2061 2001-06-03 kaz Kojima <kkojima@rr.iij4u.or.jp>
2063 * gcc/config/sh/sh.c (print_operand_address, print_operand): Call
2064 mark_constant_pool_use before output_addr_const.
2065 (struct pool_node): New field wend.
2066 (add_constant): Note a sequence of constants that are referenced
2068 (pool_window_label, pool_window_last): New variables.
2069 (dump_table): Emit a unspec_volatile representing the end of a
2070 sequence of constants.
2071 (mark_constant_pool_use): New function.
2072 * gcc/config/sh/sh.md (UNSPECV_WINDOW_END): New constant.
2073 (consttable_2): Add the second operand which flags whether
2074 this consttable entry was used or not.
2075 (consttable_4, consttable_8, consttable_sf, consttable_df):
2077 (consttable_window_end): New insn.
2079 2001-06-03 Alexandre Oliva <aoliva@redhat.com>
2081 * insn-addr.h (INSN_ADDRESSES_NEW): Make insn_uid__ unsigned.
2082 Reformat according to coding standards.
2085 * config/sh/sh.c (print_operand_address): Cast INTVAL to int.
2086 (shl_and_kind): Cast wide constant.
2087 (gen_far_branch): Define as static, as in declaration.
2088 (barrier_align): Compute cache-line length as unsigned. Add
2089 parentheses in initial credit computation.
2090 (rounded_frame_size): Add parentheses.
2091 (permanent_obstack): Remove declaration. Include ggc.h for
2092 declaration of ggc_add_root_rtx().
2093 (get_free_reg): Removed declaration of unused variable reg.
2094 (legitimize_pic_address): Mark mode argument as unused.
2096 2001-06-03 Igor Shevlyakov <igor@windriver.com>
2098 * config/sh/sh.c (output_branch): Support for insn with lenght
2099 attr 12 & 16 which represents cond branches outside +-4096 range.
2101 2001-06-03 Alexandre Oliva <aoliva@redhat.com>
2103 * config/sh/lib1funcs.asm (ic_invalidate): Align the
2104 cache-mirroring sequence. Add nops.
2106 2001-06-03 Joseph S. Myers <jsm28@cam.ac.uk>
2108 * doc/install-old.texi: Remove more old installation
2110 * doc/install.texi: Add relevant parts here.
2112 2001-06-03 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
2114 * doc/install.texi2html: New script.
2116 2001-06-03 David Edelsohn <edelsohn@gnu.org>
2118 * doc/install.texi: Update AIX information again.
2120 2001-06-02 Joseph S. Myers <jsm28@cam.ac.uk>
2122 * doc/gcc.texi, doc/install-old.texi: Remove old system-specific
2123 installation documentation.
2124 * doc/install.texi: Move it to here.
2126 2001-06-02 Joseph S. Myers <jsm28@cam.ac.uk>
2128 * doc/install.texi: Clean up Texinfo markup.
2130 2001-06-02 Joseph S. Myers <jsm28@cam.ac.uk>
2132 * doc/cpp.texi, doc/cppinternals.texi, doc/gcc.texi: Move contents
2133 to just after title page.
2135 2001-06-02 Joseph S. Myers <jsm28@cam.ac.uk>
2137 * doc/install-old.texi: Remove documentation of some configuration
2139 * doc/install.texi: Add relevant parts of this documentation here.
2141 2001-06-02 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
2143 * contrib.texi: Updated entries for Mark Mitchell, Joseph S. Myers,
2144 Gerald Pfeifer, Bernd Schmidt, and Dean Wakerley.
2146 Sat Jun 2 12:23:51 CEST 2001 Jan Hubicka <jh@suse.cz>
2148 * i386.md (all uses of ext_register_operand): Make sure they are
2149 VOIDmode; replace all uses outside zero_extend.
2150 (and?i splitters): Use ext_register_operands.
2151 (test?i peep2): Remove ignored constraints.
2152 * i386.c (ext_register_operand): Check that operand is
2153 eighter pseudo or hard or 'Q' register.
2155 Sat Jun 2 06:53:50 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
2157 * tree.h (struct record_layout_info_s): New field unpadded_align.
2158 (set_lang_adjust_rli): New declaration.
2159 * stor-layout.c (layout_decl): If DECL is packed, but at alignment
2160 it would have if not packed, do not downgrade DECL_ALIGN.
2161 (lang_adjust_rli, set_lang_adjust_rli): New.
2162 (start_record_layout): Initialize new field unpadded_align.
2163 (debug_rli): Display it.
2164 (place_union_field, place_field): Set it.
2165 (layout_type, case RECORD_TYPE): Call via lang_adjust_rli if set.
2167 * print-tree.c (print_node): Don't print "regdecl" when bit doesn't
2168 mean that; use proper names instead.
2169 Print DECL_NO_STATIC_CHAIN.
2171 * except.c (expand_builtin_frob_return_addr): Add missing call
2172 to convert_memory_address #ifdef POINTERS_EXTEND_UNSIGNED.
2173 (expand_builtin_eh_return): Likewise.
2174 (expand_eh_return): Clean up ptr_mode != Pmode cases.
2176 2001-06-01 Jan van Male <jan.vanmale@fenk.wau.nl>
2178 * doc/invoke.texi: Remove references to papers about sequence points
2179 to readings.html, refer to that page.
2181 2001-06-01 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
2183 * README: Update references to installation instructions.
2185 2001-06-01 Laurent Guerby <guerby@acm.org>
2186 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
2188 * doc/install.texi: Define srcdir when sources come from CVS.
2189 Significantly improve markup. Wrap overly long lines
2191 2001-06-01 DJ Delorie <dj@redhat.com>
2193 * c-tree.texi, contrib.texi, cpp.texi, cppinternals.texi,
2194 extend.texi, fdl.texi, gcov.texi, invoke.texi, md.texi,
2195 objc.texi, rtl.texi, tm.texi, texinfo.tex, gcc.1, cpp.1,
2196 gcov.1: Move to doc subdirectory.
2197 * install.texi: Move to doc/install-old.texi.
2198 * gcc.texi: Move to doc, refer to install-old.texi.
2199 * Makefile.in: Reflect move of docs to doc/.
2200 * f/Make-lang.in: Ditto.
2201 * java/Make-lang.in: Ditto.
2202 * doc/.cvsignore: New.
2204 2001-05-31 Jan van Male <jan.vanmale@fenk.wau.nl>
2206 * invoke.texi: use two spaces between command options, eliminate
2207 some 'overfull hboxes'
2209 2001-06-01 Hans-Peter Nilsson <hp@axis.com>
2211 * Makefile.in (s-mlib): Make backtick-commands always succeed.
2212 (DRIVER_DEFINES): Ditto.
2214 2001-05-31 Richard Henderson <rth@redhat.com>
2216 * gcc.c (init_gcc_specs): When linking against libgcc_s.so,
2217 also link against libgcc.a.
2219 2001-05-31 Geoff Keating <geoffk@cygnus.com>
2221 * config/mips/mips.h (ASM_OUTPUT_ASCII): Convert to function.
2222 * config/mips/mips.c (mips_output_ascii): New function.
2223 * config/mips/mips-protos.h (mips_output_ascii): Prototype.
2225 * config/mips/mips.h (DWARF_CIE_DATA_ALIGNMENT): Force to 4.
2227 Thu May 31 19:09:53 CEST 2001 Jan Hubicka <jh@suse.cz>
2229 * flow.c (set_block_for_new_insns): Remove bogus shortcut.
2230 * i386.c (ix86_expand_int_movcc): Force one of operands to be register.
2232 2001-05-31 Rodney Brown <rbrown64@csc.com.au>
2234 * install.texi (Configuration): Add html links for --with-gnu-as &
2235 --with-gnu-ld and refer to them from hppa & SCO triplets.
2236 (Specific): Link back to with-gnu-ld for all ELF platfoms.
2237 (Specific): Reword AVR binutils recommendation.
2239 2001-05-30 Zack Weinberg <zackw@stanford.edu>
2241 * ggc-page.c (size_lookup): Increase minimum allocation size
2243 (ggc_print_statistics): Report size of each bin in bytes, not
2244 as its order; there is no longer a direct relationship.
2246 2001-05-31 Jan van Male <jan.vanmale@fenk.wau.nl>
2248 * extend.texi: Fix formating of examples, eliminate some
2250 * gcc.texi: Eliminate some 'overfull hboxes'.
2251 * invoke.texi: Use two spaces between command options, eliminate
2252 some 'overfull hboxes'.
2254 2001-05-30 Richard Henderson <rth@redhat.com>
2256 * dwarf2out.c (dwarf2out_finish): Don't emit DW_AT_stmt_list at -g1.
2258 2001-05-30 Tom Tromey <tromey@redhat.com>
2260 * gcc.c (do_spec_1): In `%O' case, if we computed saved_suffix,
2261 use it in the new association.
2263 2001-05-30 Loren J. Rittle <ljrittle@acm.org>
2264 John David Anglin <dave@hiauly1.hia.nrc.ca>
2266 * gthr-posix.h (__gthread_active_ptr): Cast function pointer
2267 to target type to allow ISO C++ compiler to accept it.
2268 * gthr-dce.h (__gthread_active_ptr): Likewise.
2269 * gthr-solaris.h (__gthread_active_ptr): Likewise.
2271 2001-05-30 Neil Booth <neil@daikokuya.demon.co.uk>
2273 * cpplex.c (_cpp_lex_token): Revert patch of 16 May 2001
2274 so that we do accept comments in preprocessed input.
2276 2001-05-30 Neil Booth <neil@daikokuya.demon.co.uk>
2278 * cpphash.c (alloc_node): Cast allocated pointer.
2280 2001-05-30 Gordon Sadler <gbsadler1@lcisp.com>
2282 * invoke.texi (Option Summary): Remove -isystem-c++ from options.
2284 2001-05-29 Stan Shebs <shebs@apple.com>
2286 * gcc.texi: Add links for information about Objective-C.
2288 2001-05-29 Nathan Sidwell <nathan@codesourcery.com>
2290 * configure.in (gcc_version): Remove unrequired \ on ". (Solaris
2291 /bin/sed fails on [^\"]).
2292 (configargs.h): Likewise.
2294 2001-05-29 Hartmut Schirmer <SchirmerH@Innovative-Systems.de>
2296 * config/sh/sh.h (IDENT_ASM_OP): End with TAB, not LF.
2298 2001-05-28 Stan Shebs <shebs@apple.com>
2300 * objc/objc.gperf: Remove, no longer used.
2302 2001-05-28 Joseph S. Myers <jsm28@cam.ac.uk>
2304 * c-tree.texi, contrib.texi, cpp.texi, extend.texi, gcc.texi,
2305 gcov.texi, install.texi, md.texi, objc.texi, rtl.texi, tm.texi:
2306 Remove trailing whitespace.
2308 2001-05-28 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
2310 * doc/install.texi (Specific): http://reality.sgi.com/ariel/freeware/
2311 became http://freeware.sgi.com/.
2313 2001-05-27 Geoffrey Keating <geoffk@redhat.com>
2315 * local-alloc.c (update_equiv_regs): Don't eliminate constant
2318 2001-05-27 Stan Shebs <shebs@apple.com>
2320 * objc/objc-act.c: Add/fix various comments.
2321 (init_selector): Remove, no longer used.
2322 (build_msg_pool_reference): Ditto.
2323 (objc_debug): Ditto.
2325 2001-05-27 Neil Booth <neil@daikokuya.demon.co.uk>
2327 * c-decl.c (init_decl_processing):
2328 Don't call start_identifier_warnings.
2329 * flags.h (warn_id_clash, id_clash_len): Remove.
2330 * stringpool.c: Don't include flags.h.
2331 (scan_for_clashes, do_identifier_warnings,
2332 start_identifier_warnings): Remove.
2333 * toplev.c (warn_id_clash, id_clash_len): Remove.
2334 (display_help): Don't document -Wid-clash.
2335 (decode_W_option): Print warning on -Wid-clash.
2336 * tree.h (start_identifier_warnings): Remove.
2337 * invoke.texi: Remove documentation of -Wid-clash.
2339 2001-05-27 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
2341 * fixinc/fixtests.c: Declare entries in ENV_TABLE.
2343 2001-05-27 Bruce Korb <bkorb@gnu.org>
2345 * fixinc/check.tpl(HACK) add and use a Scheme variable
2346 (has no test text): error out if no "test_text" is defined
2347 * fixinc/fixincl.tpl: likewise
2348 (FIXIDX): make it an enumeration so we minimize diffs
2349 * fixinc/inclhack.def: re-alphabetize and add sort instructions
2350 * fixinc/fixincl.x: regenerate
2351 * fixinc/tests/base/stdio.h: test output got moved due to
2353 * README-fixinc: rewrite (mostly)
2355 2001-05-27 Neil Booth <neil@daikokuya.demon.co.uk>
2357 * cpplib.c (run_directive): Set pfile->directive.
2359 2001-05-23 Theodore Papadopoulo <Theodore.Papadopoulo@sophia.inria.fr>
2361 * c-tree.texi: Reformat the manual as a single chapter now
2362 included by gcc.texi.
2363 * gcc.texi: Include c-tree.texi. Merge all indexes.
2364 * Makefile.in (dvi): Add generation for the cppinternals
2365 documentation. Added dependencies on fdl.texi and c-tree.texi
2366 where appropriate. Use TEXI2DVI instead of custom tex calls.
2367 (info): Added dependencies on fdl.texi and c-tree.texi where
2368 appropriate. Remove the target c-tree.info.
2370 2001-05-27 Lars Brinkhoff <lars@nocrew.org>
2372 * combine.c (try_combine): Fix typo in comment.
2373 * expr.c (expand_expr): Likewise.
2374 * config/i370/i370.md (untyped_call): Likewise.
2376 2001-05-26 Bruce Korb <bkorb@gnu.org>
2378 * fixinc/fixtests.c(stdc_0_in_system_headers_test): Must return "FIX"
2379 when fixincl is operating in test mode
2380 * fixinc/inclhack.def(AAB_dgux_int_varargs) : aesthetics
2381 (AAB_ultrix_limits): remove redundant text
2382 (AAB_ultrix_memory): ditto
2383 (AAB_ultrix_string): ditto
2384 (djgpp_wchar_h): fix the test text
2385 (irix_stdio_va_list): add test text
2386 (irix_limits_const): add a testing output file (limits.h is overwritten)
2387 (strict_ansi_not_ctd): put limits.h second in list for same reason
2388 (solaris27_mutex_init): test text needed selection text, too
2390 * fixinc/fixtests.c(stdc_0_in_system_headers_test): Must return "FIX"
2391 when fixincl is operating in test mode
2393 2001-05-26 Philip Blundell <philb@gnu.org>
2395 * config/c4x/c4x-protos.h: Use GCC_C_PRAGMA_H in place of _C_PRAGMA_H.
2396 * config/i960/i960-protos.h: Likewise.
2397 * config/i370/i370-protos.h: Likewise.
2398 * config/h8300/h8300-protos.h: Likewise,
2399 * config/sh/sh-protos.h: Likewise.
2400 * config/v850/v850-protos.h: Likewise.
2402 2001-05-26 Philip Blundell <philb@gnu.org>
2404 * config/arm/arm-protos.h: Use GCC_C_PRAGMA_H in place of _C_PRAGMA_H.
2406 2001-05-25 Zack Weinberg <zackw@stanford.edu>
2408 * toplev.c (debug_args, f_options, W_options): Mark
2409 descriptions for translation.
2410 (display_help): Translate descriptions on output.
2412 * cp/lang-options.h, f/lang-options.h, java/lang-options.h,
2413 objc/lang-options.h: Mark descriptions for translation.
2415 * aclocal.m4: Quote final argument of patsubst. Use
2416 3-argument form of AC_DEFINE. Restore quotes to [] while
2418 * configure.in: Remove unnecessary changequote calls.
2419 * configure, config.in: Regenerate.
2421 2001-05-25 Sam TH <sam@uchicago.edu>
2423 * basic-block.h: Fix header include guards.
2424 * bitmap.h c-dump.h c-lex.h c-pragma.h c-tree.h collect2.h
2425 cppdefault.h cpphash.h cpplib.h defaults.h diagnostic.h errors.h
2426 except.h flags.h gcc.h gcov-io.h graph.h gstab.h gthr-aix.h
2427 gthr-dce.h gthr-posix.h gthr-rtems.h gthr-single.h gthr-solaris.h
2428 gthr-vxworks.h gthr-win32.h gthr.h hard-reg-set.h hwint.h
2429 insn-addr.h libgcc2.h mbchar.h mkdeps.h params.h prefix.h real.h
2430 rtl.h sbitmap.h system.h timevar.h toplev.h tradcpp.h tsystem.h
2431 varray.h version.h: Likewise.
2432 * config/dbxelf.h config/fp-bit.h config/arm/arm-protos.h
2433 config/arm/arm.h config/c4x/c4x-protos.h
2434 config/h8300/h8300-protos.h config/h8300/h8300.h
2435 config/i370/i370-protos.h config/i370/i370.h
2436 config/i960/i960-protos.h config/mcore/mcore.h
2437 config/mips/mips-protos.h config/sh/sh-protos.h config/sh/sh.h
2438 config/v850/v850-protos.h config/v850/v850.h: Likewise.
2439 * fixinc/fixlib.h fixinc/server.h: Likewise.
2441 2001-05-25 Stacey Sheldon <ssheldon@Catena.com>
2443 * config/arc/initfini.c (.init): Fix typo.
2445 2001-05-25 Geoffrey Keating <geoffk@redhat.com>
2447 * config/rs6000/rs6000.md (fseldfsf4): Correct mode of operand 4.
2449 2001-05-25 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
2451 * i386/i386.h (CC1_CPU_SPEC): Clarify -m486 etc deprecation messages.
2453 2001-05-25 Richard Henderson <rth@redhat.com>
2455 * libgcc-std.ver: Export XFmode and TFmode versions of symbols.
2457 2001-05-25 Richard Henderson <rth@redhat.com>
2459 * config.gcc (all gnu and linux): Use t-slibgcc-elf-ver with t-linux.
2460 (i386-*-solaris2): Use t-slibgcc-elf-ver or t-slibgcc-sld.
2461 (sparc*-*-solaris2): Likewise.
2462 * config/t-linux: Remove shared libgcc macros.
2463 * config/t-slibgcc-elf-ver: Move from sparc/t-slibgcc.
2464 * config/t-slibgcc-sld: Move from sparc/t-slibgcc-sld.
2466 2001-05-25 Loren J. Rittle <ljrittle@acm.org>
2468 * config.gcc (*-*-freebsd*): Report bad configuration.
2470 2001-05-25 David Edelsohn <edelsohn@gnu.org>
2472 * xcoffout.h (DBX_OUTPUT_GCC_MARKER): Do not emit any marker.
2474 * config/rs6000/aix.h (USER_LABEL_PREFIX): AIX symbols do not have
2476 (ASM_OUTPUT_LABELREF): Delete.
2478 2001-05-25 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
2480 * fixinc/inclhack.def (strict_ansi_not, strict_ansi_not_ctd,
2481 strict_ansi_only): Don't run if stdc_0_in_system_headers.
2482 * fixinc/fixincl.x: Regenerate.
2483 * fixinc/fixtests.c (stdc_0_in_system_headers_test): New function.
2484 (FIX_TEST_TABLE): Declare it.
2485 * fixinc/fixlib.h: Include config.h.
2487 2001-05-25 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
2489 * fixinc/inclhack.def (alpha___assert): Change char * args to
2490 const char * on Tru64 UNIX to avoid excessive warnings from
2492 * fixinc/fixincl.x: Regenerate.
2494 2001-05-25 Geoff Keating <geoffk@redhat.com>
2496 * dbxout.c (dbxout_symbol): Invert previous patch, which was
2497 outputting a tag only for variable-size records.
2499 2001-05-25 Jeff Knaggs <jknaggs@redhat.com>
2501 * config/alpha/alpha.md (movtf_internal): Use reg_overlap_mentioned_p
2502 instead of rtx_equal_p for early clobber test.
2504 2001-05-26 Mark Mitchell <mark@codesourcery.com>
2506 * builtins.def: Encode additional information, such as names and
2508 * builtin-types.def: New file.
2509 * builtins.c (built_in_names): Adjust use of DEF_BUILTIN.
2510 (built_in_decls): Likewise. Don't explicitly initialize global
2512 (expand_builtin_mathfn): Handle float and long double variants of
2514 (expand_builtin): Likewise.
2515 * c-common.c (c_common_nodes_and_builtins): Make it table-driven.
2516 (expand_tree_builtin): Handle long, long long, float, and long
2517 double variants of math functions.
2518 * c-common.h (c_tree_index): Remove some unused nodes.
2519 (void_ftype): Remove.
2520 (void_type_ptr): Likewise.
2521 (int_ftype_int): Likewise.
2522 (ptr_ftype_sizetype): Likewise.
2523 * c-decl.c (init_decl_processing): Remove creation of DWARF
2525 * defaults.h (MD_INIT_BUILTINS): Provide default definition.
2526 * tree.h (built_in_function): Adjust definition of DEF_BUILTIN.
2527 * Makefile.in (c-common.o): Depend on builtin-types.def.
2529 2001-05-25 Dale Johannesen <dalej@apple.com>
2531 * config/rs6000/t-darwin: Fix dependencies for darwin.o.
2533 2001-05-25 Neil Booth <neil@daikokuya.demon.co.uk>
2535 * c-parse.in (notype_initdcl): Remove redundant line.
2537 2001-05-25 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
2539 * aclocal.m4: Fixed typo.
2540 (gcc_AC_HEADER_STDBOOL): Define.
2541 (gcc_AC_C__BOOL): Define.
2542 * configure.in: Use them.
2543 (AC_CHECK_HEADERS): Remove stdbool.h
2544 * configure, config.in: Regenerate.
2546 2001-05-25 Richard Henderson <rth@redhat.com>
2548 * function.c (expand_function_start): Don't abort on PARALLEL
2549 returns from hard_function_value.
2551 2001-05-25 Richard Henderson <rth@redhat.com>
2553 * config/i386/i386.md: Revert previous change. Do not apply
2554 the peephole if the components do not die after the sequence.
2556 2001-05-25 Joseph S. Myers <jsm28@cam.ac.uk>
2558 * c-parse.in (array_declarator): New. Handle C99 constructs.
2559 Don't restrict [*] declarators to C only.
2560 (after_type_declarator, parm_declarator_starttypename,
2561 parm_declarator_nostarttypename, notype_declarator,
2562 direct_absdcl1): Use it.
2563 * c-decl.c (build_array_declarator, set_array_declarator_type):
2564 New functions. Warn that [*] isn't properly implemented; pedwarn
2565 for [*] outside C99 mode if pedantic rather than giving a hard
2567 (grokdeclarator): Handle static and type qualifiers in parameter
2569 * c-tree.h (build_array_declarator, set_array_declarator_type):
2571 * extend.texi (Attribute Syntax): Document attributes in parameter
2574 2001-05-25 Mark Mitchell <mark@codesourcery.com>
2576 * config/i386/i386.md: Make sure cmpstr peepholes do not
2577 affect liveness information.
2579 2001-05-24 Mark Mitchell <mark@codesourcery.com>
2581 * c-typeck.c (digest_init): Issue error messages about
2582 invalid constants, not warnings.
2584 2001-05-24 Mark Mitchell <mark@codesourcery.com>
2586 * invoke.texi (-fno-builtin): Document that this is always on
2589 2001-05-24 Philip Blundell <philb@gnu.org>
2591 * doc/install.texi (arm*-*-linux-gnu): Say that binutils 2.10 is
2594 2001-05-24 Philip Blundell <philb@gnu.org>
2596 * config/arm/arm.c (output_return_instruction): Correctly handle
2597 interworking and interrupt functions.
2599 2001-05-24 Philip Blundell <philb@gnu.org>
2601 * config/arm/arm.h (TARGET_SWITCHES): Correct misleading help for
2602 -m{no-}sched-prolog. Fix typos and improve formatting.
2604 2001-05-24 Philip Blundell <philb@gnu.org>
2606 * invoke.texi (ARM Options): Improve wording slightly. Add
2607 documentation for more options, including those for Thumb mode.
2608 Don't mention options that don't exist or are unimplemented.
2609 (Thumb Options): Delete; merged into above section.
2611 2001-05-24 Geoff Keating <geoffk@redhat.com>
2613 * config/rs6000/linux.h (SIGNAL_FRAMESIZE): Define.
2614 (MD_FALLBACK_FRAME_STATE_FOR): Use it.
2616 Thu May 24 19:47:19 CEST 2001 Jan Hubicka <jh@suse.cz>
2618 * simplify-rtx.c (simplify_subreg): Fix CONCAT simplification;
2619 fix hard register simplification.
2621 Thu May 24 00:15:17 2001 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
2623 * sparc/sol2.h (CPLUSPLUS_CPP_SPEC): Add all of CPP_SPEC instead
2624 of just copying CPP_CPU_SPEC.
2626 Thu May 24 15:56:48 CEST 2001 Jan Hubicka <jh@suse.cz>
2628 * i386.c (incdec_operand): Accept only 1 and -1.
2630 2001-05-23 Kelley Cook <kelley.cook@home.com>
2632 * Makefile.in: Move many of the *_H definitions eariler in the
2633 file, so that rules in t-* files that use them for
2634 dependencies will work in a parallel build.
2635 * config/i386/t-cygwin (winnt.o): Depend on $(CONFIG_H).
2637 2001-05-23 Richard Henderson <rth@redhat.com>
2639 * integrate.c (expand_inline_function): Handle CONCAT DECL_RESULT.
2641 2001-05-23 Neil Booth <neil@daikokuya.demon.co.uk>
2643 * cpp.texi: Update for handling of charconsts.
2644 * cpplex.c (maybe_read_ucs): Don't accept D800-DFFF. Update
2645 diagnostics. Skip to the end if the UCS is too short.
2646 (cpp_interpret_charconst): Long charconsts issue a warning
2649 2001-05-23 Richard Henderson <rth@redhat.com>
2651 * doc/install.texi (alpha-linux): Require binutils 2.11.
2653 2001-05-23 Neil Booth <neil@daikokuya.demon.co.uk>
2655 * c-lex.c (read_escape, read_ucs): Delete.
2656 (lex_string): Use cpp_parse_escape.
2657 * cpplex.c (read_ucs): Rename maybe_read_ucs. Do nothing
2658 if not C++ or not C99. Warn if traditional.
2659 (parse_escape): Rename cpp_parse_escape. Make the bitmask
2660 unsigned. Warn for out-of-range escape sequences here.
2661 Update to use maybe_read_ucs.
2662 (cpp_interpret_charconst): Don't warn here.
2663 * cpplib.h (cpp_parse_escape): New exported function.
2665 2001-05-23 Joseph S. Myers <jsm28@cam.ac.uk>
2667 * extend.texi (Attribute Syntax): Clarify application of
2668 attributes to parameters declared as functions or arrays.
2670 2001-05-23 Jason Merrill <jason_merrill@redhat.com>
2672 * dbxout.c (dbxout_type_methods): Do still group methods by name.
2674 2001-05-23 Zack Weinberg <zackw@stanford.edu>
2676 * diagnostic.c (vnotice): Kill.
2677 (fnotice): Call vfprintf directly.
2678 (diagnostic_for_decl, output_do_verbatim, output_verbatim,
2679 verbatim, set_diagnostic_context): Rename string argument to
2680 indicate that it is run through gettext.
2681 (vbuild_message_string, build_message_string, output_do_printf):
2682 Rename string argument to indicate that it is NOT run through
2684 (output_printf, diagnostic_for_decl, fatal_io_error, sorry,
2685 output_do_verbatim, set_diagnostic_context, fnotice, _fatal_insn):
2686 Run msgid argument through gettext.
2687 (default_print_error_function): Run constant strings through
2688 gettext when nothing else will.
2689 (fatal_error, internal_error, error_recursion): Use fnotice.
2690 Present complete sentences to gettext.
2692 2001-05-23 Mark Mitchell <mark@codesourcery.com>
2694 * jump.c (mark_jump_label): Fix thinko in 2001-05-19 change.
2696 2001-05-23 Richard Henderson <rth@redhat.com>
2698 * function.c (expand_function_start): Always use a pseudo
2699 for the function result value.
2701 2001-05-22 Richard Henderson <rth@redhat.com>
2703 * config/mips/iris6.h (EH_FRAME_SECTION_ASM_OP): Give the
2704 section pointer alignment.
2706 * doc/install.texi (alpha-linux): Require binutils >= 2.10.
2708 * unwind-dw2-fde.c (__deregister_frame_info): Stringize use
2709 of __USER_LABEL_PREFIX__.
2711 2001-05-22 Richard Henderson <rth@redhat.com>
2713 * unwind-dw2-fde.c (__deregister_frame_info): Stubbify in favour of...
2714 (__deregister_frame_info_bases): New.
2715 * unwind-dw2-fde.h: Declare it.
2716 * libgcc-std.ver: Export it.
2717 * crtstuff.c (__do_global_dtors_aux): Call it if we would have
2718 called __register_frame_info_bases.
2720 2001-05-22 Loren J. Rittle <ljrittle@acm.org>
2722 * config/freebsd.h (FBSD_CPP_PREDEFINES): Use #endif/#if pair
2723 instead of #elif (which is OK for this case but not in general).
2725 2001-05-22 Andrew MacLeod <amacleod@redhat.com>
2727 * builtins.c (expand_builtin_longjmp): A longjmp can be a call too.
2728 * config/ia64/ia64.md (nonlocal_goto): Reverse label and frame pointer
2729 parameters to __ia64_nonlocal_goto. Flag as NO_RETURN.
2730 * config/ia64/ia64.c (ia64_expand_epilogue): Make sure we are issuing
2731 "r2" to the assembly file. Only issue allocs with non-zero parameters.
2733 2001-05-22 Loren J. Rittle <ljrittle@acm.org>
2734 David O'Brien <obrien@freebsd.org>
2736 * config/freebsd.h (LIB_SPEC): Key the exact setting to
2737 configure-time options and target version of FreeBSD. Set-up
2738 to match architectural change in threading support. Correctly
2739 report when -pthread option is not supported by configure-time
2741 (FBSD_CPP_PREDEFINES): Move from architecture-specific files
2742 and extend to encode target version number in run-time setting
2743 of __FreeBSD__ macro to match the system compiler.
2744 (CPP_PREDEFINES): Likewise.
2745 (PREFERRED_DEBUGGING_TYPE): Change to DWARF2_DEBUG.
2747 * config/alpha/freebsd.h (CPP_PREDEFINES): Moved to common freebsd.h.
2748 * config/i386/freebsd.h (CPP_PREDEFINES): Likewise.
2750 2001-05-22 Loren J. Rittle <ljrittle@acm.org>
2751 David O'Brien <obrien@freebsd.org>
2753 * config.gcc (the unlabeled system switch statement): Add
2754 generic configuration section to handle *-*-freebsd*. Also,
2755 to match the system compiler, default to threading support (it
2756 may be disabled with the standard --disable-threads
2757 configuration-time switch).
2758 (i[34567]86-*-freebsd* in machine-specific section): Use it.
2759 (alpha*-*-freebsd* in machine-specific section): Likewise.
2761 * config/freebsd3.h: New file to expose FBSD_MAJOR macro (3).
2762 * config/freebsd4.h: New file to expose FBSD_MAJOR macro (4).
2763 * config/freebsd5.h: New file to expose FBSD_MAJOR macro (5).
2764 * config/freebsd6.h: New file to expose FBSD_MAJOR macro (6).
2765 * config/freebsd-nthr.h: New file to expose FBSD_NO_THREADS macro.
2767 2001-05-22 Loren J. Rittle <ljrittle@acm.org>
2768 David O'Brien <obrien@freebsd.org>
2770 * config/t-freebsd (TARGET_LIBGCC2_CFLAGS): Add -fPIC.
2771 * config/t-freebsd-thread (TARGET_LIBGCC2_CFLAGS): Add
2772 -pthread instead setting macro.
2774 2001-05-22 Richard Henderson <rth@redhat.com>
2776 * crtstuff.c (__register_frame_info_bases): Declare.
2777 (frame_dummy): Use it, if CRT_GET_RFIB_TEXT or CRT_GET_RFIB_DATA.
2778 (__do_global_dtors_aux, __do_global_dtors): Streamline.
2780 * config/i386/linux.h (ASM_MAYBE_OUTPUT_ENCODED_ADDR_RTX): New.
2781 (CRT_GET_RFIB_DATA): New.
2782 * config/i386/sysv4.h: Likewise.
2783 * config/i386/sco5.h: Likewise.
2784 (ASM_PREFERRED_EH_DATA_FORMAT): New.
2786 2001-05-22 Richard Henderson <rth@redhat.com>
2788 * rtl.c (read_string): Break out from ...
2789 (read_rtx): ... here.
2791 2001-05-22 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
2793 * doc/install.texi (Specific): Remove a bogus and duplicate part
2794 copied from the end of the document.
2796 2001-05-22 Bernd Schmidt <bernds@redhat.com>
2798 * Makefile.in (LIBGCC_DEPS): Correct LIB1ASMSRC dependency.
2800 2001-05-22 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
2802 * install.texi: Remove obsolete information on SunOS as well as
2803 i386-sun-sunos4, i860-intel-osf1, and powerpcle-*-solaris2*.
2804 (Installing GNU CC on the Sun): Remove section.
2806 2001-05-22 Alexandre Oliva <aoliva@redhat.com>
2808 * cppfiles.c (remove_component_p): Don't assume lstat/stat will
2809 keep errno unchanged on success.
2811 2001-05-22 Joseph S. Myers <jsm28@cam.ac.uk>
2813 * c-lex.c (lex_number): If pedantic and not C99, pedwarn exactly
2814 once for hexadecimal floats, whether or not they contain a decimal
2815 point. Don't let the setting of pedantic otherwise affect the
2816 parsing of hexadecimal floats.
2818 2001-05-22 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
2820 * README.ACORN: Remove obsolete file.
2822 2001-05-22 Jan Hubicka <jh@suse.cz>
2824 * combine.c (gen_binary): Use swap_commutative_operands_p
2825 (simplify_comparison): Likewise.
2826 * expmed.c (emit_store_flag): Likewise.
2827 * expr.c (compare_from_rtx): Likewise.
2828 (do_compare_rtx_and_jump): Likewise.
2829 * optabs.c (emit_cmp_and_jump_insn): Revert last patch; abort
2830 if not emitting a branch and operands want swapping.
2832 2001-05-22 Neil Booth <neil@daikokuya.demon.co.uk>
2834 * c-lex.c (c_lex): Just cast cpp's hashnode to gcc's one.
2835 * stringpool.c: (IS_FE_IDENT, make_identifier): Delete.
2836 (maybe_get_identifier): Update.
2837 * tree.h (make_identifier): Delete.
2839 2001-05-21 Richard Henderson <rth@redhat.com>
2841 * combine.c (subst): Do not substitute for a register as
2842 a destination subreg/strict_low_part/zero_extract.
2844 * combine.c (simplify_comparison): Update op1 after constant
2846 * recog.c (const_int_operand): Accept only constants valid
2848 * genrecog.c: Update comments wrt const_int_operand.
2850 * emit-rtl.c (init_emit_once): Zero unused memory in a
2853 2001-05-21 Mark Mitchell <mark@codesourcery.com>
2855 * tree.h (type_num_arguments): Declare it.
2856 * tree.c (type_num_arguments): New function.
2858 2001-05-21 Richard Henderson <rth@redhat.com>
2860 * dwarf2out.c (current_funcdef_number): Move outside dwarf2
2863 2001-05-21 Geoff Keating <geoffk@redhat.com>
2865 * config/rs6000/rs6000.md (maxsf3): Use rs6000_emit_minmax.
2867 (minsf3): Use rs6000_emit_minmax.
2868 (minsf3+1): Generalize to handle both SMIN and SMAX. Use
2870 (movsfcc): Use rs6000_emit_cmove.
2871 (fselsfsf4): Don't compare a CONST_INT with a floating-point value.
2872 Don't generate emit_fselsfsf4.
2873 (fseldfsf4): Likewise.
2874 (maxdf3): Use rs6000_emit_minmax.
2876 (mindf3): Use rs6000_emit_minmax.
2877 (mindf3+1): Generalize to handle both SMIN and SMAX. Use
2879 (movdfcc): Use rs6000_emit_cmove.
2880 (fseldfdf4): Don't compare a CONST_INT with a floating-point value.
2881 Don't generate emit_fselsfsf4.
2882 (fselsfdf4): Likewise.
2883 * config/rs6000/rs6000.c (zero_fp_constant): New predicate.
2884 (min_max_operator): New predicate.
2885 (rs6000_emit_cmove): New function.
2886 (rs6000_emit_minmax): New function.
2887 * config/rs6000/rs6000-protos.h: Prototype new functions.
2888 * config/rs6000/rs6000.h (PREDICATE_CODES): Add zero_fp_constant
2889 and min_max_operator.
2891 * config/rs6000/rs6000.c (output_cbranch): Handle all
2892 conditional types in the switch statement.
2894 2001-05-21 Mark Mitchell <mark@codesourcery.com>
2896 * c-decl.c (finish_decl): Don't set DECL_C_HARD_REGISTER for
2897 non-register variables.
2898 * extend.texi: Document that asm-specifications do not make sense
2899 for non-static local variables.
2901 2001-05-21 Jason Merrill <jason_merrill@redhat.com>
2903 * dbxout.c (MINIMAL_DEBUG, flag_minimal_debug): Lose.
2904 (dbxout_type_fields): Lose minimal_debug support.
2905 (dbxout_type_methods, dbxout_type): Likewise.
2907 2001-05-17 Andrew Haley <aph@redhat.com>
2909 * config/rs6000/linux.h (MD_FALLBACK_FRAME_STATE_FOR): New.
2911 2001-05-21 Richard Henderson <rth@redhat.com>
2913 * dwarf2out.c (DEBUG_FRAME_SECTION): Rename from FRAME_SECTION.
2916 2001-05-20 Richard Henderson <rth@redhat.com>
2918 * dwarf2out.c (DEBUG_ABBREV_SECTION, DEBUG_ARANGES_SECTION,
2919 DEBUG_MACINFO_SECTION, DEBUG_LOC_SECTION, DEBUG_PUBNAMES_SECTION,
2920 DEBUG_STR_SECTION): Rename from s/DEBUG_//. Update all users.
2921 * dwarfout.c (DEBUG_SFNAMES_SECTION, DEBUG_SRCINFO_SECTION,
2922 DEBUG_MACINFO_SECTION, DEBUG_PUBNAMES_SECTION, DEBUG_ARANGES_SECTION):
2924 * config/mips/iris6.h (DEBUG_SFNAMES_SECTION, DEBUG_SRCINFO_SECTION,
2925 DEBUG_MACINFO_SECTION, DEBUG_PUBNAMES_SECTION, DEBUG_ARANGES_SECTION,
2926 DEBUG_FRAME_SECTION, DEBUG_ABBREV_SECTION): Rename as above.
2927 (DEBUG_LOC_SECTION, DEBUG_STR_SECTION): New.
2928 * config/ia64/ia64.h (DEBUG_ABBREV_SECTION, DEBUG_ARANGES_SECTION,
2929 DEBUG_PUBNAMES_SECTION): Rename as above.
2930 (DEBUG_MACINFO_SECTION, DEBUG_LOC_SECTION, DEBUG_STR_SECTION): New.
2932 2001-05-20 Richard Henderson <rth@redhat.com>
2934 * optabs.c (emit_cmp_and_jump_insns): Don't swap commutative
2935 operands unless the operation is commutative.
2937 2001-05-20 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
2939 * fold-const.c (tree_expr_nonnegative_p): Detect more non-negative
2942 2001-05-21 Joseph S. Myers <jsm28@cam.ac.uk>
2944 * extend.texi: Clarify documentation of extensions included in ISO
2945 C99. Prefer C99 terminology and syntax to old GNU terminology and
2946 syntax. Add more index entries. Document mixed declarations and
2947 code as an extension in C89 mode. Warn about future changes to
2948 semantics of inline functions. Fixes PR other/930.
2950 Sun May 20 16:39:24 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
2952 * expr.c (expand_expr, case ARRAY_REF): Don't fold constant
2953 access if EXPAND_CONST_ADDRESS or EXPAND_INITIALIZER.
2954 (expand_expr, case COMPONENT_REF): Do copy if misaligned even
2955 if EXPAND_CONST_ADDRESS or EXPAND_INITIALIZER.
2957 * stmt.c (expand_decl): Set mode, alignment, and sizes for CONST_DECL.
2959 2001-05-20 Richard Henderson <rth@redhat.com>
2961 * sched-deps.c (sched_analyze_insn): Force volatile memory reads
2962 to be output before a branch.
2964 2001-05-20 Richard Henderson <rth@redhat.com>
2966 * Makefile.in (dwarf2asm.o): Depend on $(TREE_H).
2968 2001-05-20 Richard Henderson <rth@redhat.com>
2970 * config/i386/att.h (ASM_SHORT, ASM_LONG): Add trailing \t.
2971 (ASM_DOUBLE): Remove.
2972 * config/i386/bsd.h, config/i386/sco5.h: Likewise.
2973 * config/i386/sun386.h: Likewise.
2975 * config/i386/i386.h (UNALIGNED_SHORT_ASM_OP): New.
2976 (UNALIGNED_INT_ASM_OP, INT_ASM_OP): New.
2978 * config/i386/cygwin.h (INT_ASM_OP): Remove.
2979 * config/i386/freebsd-aout.h, config/i386/i386-aout.h: Likewise.
2980 * config/i386/i386-coff.h, config/i386/i386-interix.h: Likewise.
2981 * config/i386/netbsd.h, config/i386/openbsd.h: Likewise.
2983 * config/i386/cygwin.h: Adjust uses of ASM_LONG for trailing \t.
2984 * config/i386/djgpp.h, config/i386/i386.h: Likewise.
2985 * config/i386/i386elf.h, config/i386/ptx4-i.h: Likewise.
2986 * config/i386/sco5.h, config/i386/svr3gas.h: Likewise.
2987 * config/i386/sysv4.h, config/i386/vsta.h: Likewise.
2988 * config/i386/win32.h: Likewise.
2990 2001-05-20 Joseph S. Myers <jsm28@cam.ac.uk>
2992 * invoke.texi: Add more options to summary list.
2994 2001-05-20 Joseph S. Myers <jsm28@cam.ac.uk>
2996 * invoke.texi: Document meaning of -pedantic when -std=gnu* is
2997 used. Fixes PR c/2291.
2998 * gcc.1: Regenerate.
3000 2001-05-20 Stephane Carrez <Stephane.Carrez@worldnet.fr>
3002 * config/m68hc11/m68hc11.c (m68hc11_override_options): Ignore
3003 the -fpic and -fPIC options, clear flag_pic.
3005 2001-05-20 Neil Booth <neil@daikokuya.demon.co.uk>
3007 * hashtable.c (calc_hash): Fix HASHSTEP definition.
3008 * stringpool.c (make_identifier): No statistics here anymore.
3009 * objc-act.c (steup_string_decl): Remove redundant check.
3011 2001-05-20 Neil Booth <neil@daikokuya.demon.co.uk>
3013 * Makefile.in (OBJS, LIBCPP_OBJS, LIBCPP_DEPS,
3014 cpplib.o, cpphash.o, fix-header): Update.
3015 (hashtable.o): New target.
3016 * c-common.h: Include cpplib.h. Define C_RID_CODE and
3017 struct c_common_identifier here.
3018 * c-lang.c (c_init_options): Update. Call set_identifier_size.
3019 * c-lex.c (c_lex): Update.
3020 * c-pragma.h: Update.
3021 * c-tree.h (struct lang_identifier): Contain c_common_identifier.
3023 (C_RID_CODE): Delete.
3024 * cpphash.c: Rewrite to use hashtable.c.
3025 * cpphash.h: Update include guards.
3026 (struct cpp_reader): Remove hashtab.
3027 hash_ob and buffer_ob are no longer pointers. Add hash_table
3029 (HASHSTEP, _cpp_init_hashtable, _cpp_lookup_with_hash): Delete.
3030 (_cpp_cleanup_hashtable): Rename _cpp_destroy_hashtable.
3031 (_cpp_cleanup_stacks): Rename _cpp_init_directives.
3032 * cppinit.c (cpp_create_reader): Update.
3033 * cpplex.c (cpp_ideq, parse_identifier, cpp_output_token): Update.
3034 (cpp_interpret_charconst): Eliminate warning.
3035 * cpplib.c (do_pragma, do_endif, push_conditional,
3036 cpp_push_buffer, cpp_pop_buffer): Update.
3037 (_cpp_init_stacks): Rename cpp_init_directives.
3038 (_cpp_cleanup_stacks): Remove.
3039 * cpplib.h: Update include guards. Include tree-core.h and c-rid.h.
3040 (cpp_hashnode, cpp_token, NODE_LEN, NODE_NAME,
3041 cpp_forall_identifiers, cpp_create_reader): Update.
3042 (C_RID_CODE, cpp_make_node): New.
3043 (c_common_identifier): New identifier node for C front ends.
3044 * cppmain.c (main): Update.
3045 * fix-header.c (read_scan_file): Update.
3046 * flags.h (id_clash_len): Make unsigned.
3047 * ggc.h (ggc_mark_nonnull_tree): New.
3050 * stringpool.c: Update comments and copyright. Update to use
3052 * toplev.c (approx_sqrt): Move to hashtable.c.
3053 (id_clash_len): Make unsigned.
3054 * toplev.h (ident_hash): New.
3055 * tree.c (gcc_obstack_init): Move to hashtable.c.
3056 * tree.h: Include hashtable.h.
3057 (IDENTIFIER_POINTER, IDENTIFIER_LENGTH): Update.
3058 (GCC_IDENT_TO_HT_IDENT, HT_IDENT_TO_GCC_IDENT): New.
3059 (struct tree_identifier): Update.
3060 (make_identifier): New.
3062 * cp-tree.h (struct lang_identifier, C_RID_YYCODE): Update.
3063 (C_RID_CODE): Remove.
3064 * lex.c (cxx_init_options): Call set_identifier_size. Update.
3065 (init_parse): Don't do it here.
3067 * objc-act.c (objc_init_options): Call set_identifier_size. Update.
3069 Sat May 19 18:23:04 2001 Richard Henderson <rth@redhat.com>
3071 * except.c (dw2_build_landing_pads): Use word_mode, not Pmode,
3073 (expand_eh_return): Convert between word_mode and Pmode.
3074 * unwind-dw2.c (extract_cie_info): Do not assume words and pointers
3076 (execute_stack_op): Likewise.
3077 (execute_cfa_program): Likewise.
3078 (uw_frame_state_for): Likewise.
3079 (uw_update_context_1): Likewise.
3080 * unwind.inc (_Unwind_Reason_Code): Likewise.
3081 * config/mips/mips.h (EH_RETURN_DATA_REGNO): Define.
3082 (EH_RETURN_STACKADJ_RTX): Likewise.
3083 * config/mips/mips.c (compute_frame_size): Make space for saving
3084 EH return registers.
3085 (mips_expand_epilogue): Handle EH stack adjustments.
3086 * config/mips/mips.md (eh_return): New pattern.
3087 (eh_set_lr_si): Likewise.
3088 (eh_set_lr_di): Likewise.
3089 Add splitter to perform EH return after reload.
3091 2001-05-19 Mark Mitchell <mark@codesourcery.com>
3093 * jump.c (mark_jump_label): Tidy previous change.
3095 2001-05-19 Bruce Korb <bkorb@gnu.org>
3097 * fixinc/genfixes: no need for two warnings
3098 * fixinc/Makefile.in: open stdin for those building with a closed one.
3100 2001-05-19 Mark Mitchell <mark@codesourcery.com>
3102 * jump.c (jump_optimize_1): Tidy.
3103 (mark_jump_label): When changing the label in a LABEL_REF, change
3104 update any REG_EQUAL notes as well.
3106 2001-05-19 Joseph S. Myers <jsm28@cam.ac.uk>
3108 * c-parse.in (parm_declarator): Split into
3109 parm_declarator_starttypename and parm_declarator_nostarttypename.
3110 (parm_declarator_starttypename, parm_declarator_nostarttypename):
3111 New. Allow parenthesised sub-declarators which don't begin with a
3112 TYPENAME. Fixes PR c/166.
3114 2001-05-19 Mark Mitchell <mark@codesourcery.com>
3116 * defaults.h (TARGET_ALLOWS_PROFILING_WITHOUT_FRAME_POINTER): New
3118 * tm.texi (TARGET_ALLOWS_PROFILING_WITHOUT_FRAME_POINTER):
3120 * toplev.c (main): If the target does not allow profiling without
3121 a frame pointer, issue an error message.
3122 * config/i386/linux.h (TARGET_ALLOWS_PROFILING_WITHOUT_FRAME_POINTER):
3125 Sat May 19 07:53:42 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
3127 * recog.c (general_operand): Modify last change to allow it if reload
3130 Sat May 19 10:23:54 CEST 2001 Jan Hubicka <jh@suse.cz>
3132 * recog.c (general_operand): Prohibit nonzero subreg bytes on
3133 subregs containing mem.
3135 Sat May 19 09:40:45 2001 Denis Chertykov <denisc@overta.ru>
3137 * regrename.c (regrename_optimize): frame pointer register can
3140 2001-05-18 Jason Merrill <jason_merrill@redhat.com>
3142 * README.DWARF: Move into dwarfout.c.
3144 2001-05-18 Dale Johannesen <dalej@apple.com>
3146 * config/rs6000/rs6000.c (secondary_reload_class): Fix Darwin
3147 specific misuse of r0 as a reload address.
3149 Fri May 18 22:42:04 CEST 2001 Jan Hubicka <jh@suse.cz>
3151 * combine.c (combine_simplify_rtx): Clear op0_mode if simplification
3154 Fri May 18 07:26:34 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
3156 * genrecog.c (enum decision_type): Add DT_elt_zero-wide_safe.
3157 (add_to_sequence): Make that decision type.
3158 (maybe_both_true_2, nodes_identical_1, factor_tests): Use it.
3159 (write_switch, write_cond, debug_decision_2): Likewise.
3161 * dbxout.c (dbxout_type): Use host_integerp and fix typo in testing
3163 (dbxout_symbol, case TYPE_DECL): Don't generate tag for records of
3166 2001-05-18 Stan Shebs <shebs@apple.com>
3168 * configure.in (gcc_cv_as_eh_frame): Cope with old assemblers.
3169 * configure: Regenerate.
3171 2001-05-18 Per Bothner <per@bothner.com>
3173 Changes needed for java/jvspec.c
3174 * gcc.h (n_infiles, outfiles): Add declarations.
3175 * gcc.c (n_infiles, outfiles): Mske no longer static.
3177 Fri May 18 10:14:42 2001 Jeffrey A Law (law@cygnus.com)
3179 * config/pa/som.h (EXCEPTION_SECTION): Define.
3181 2001-05-18 Daniel Berlin <dan@cgsoftware.com>
3183 * dwarf2out.c: Add dw_loc_list_ref, a reference to a location
3185 Add have_location_lists, a variable to determine whether we need a
3186 .debug_loc section or not.
3187 (enum dw_val_class): Add dw_val_class_loc_list.
3188 (dw_val_struct): Add val_loc_list.
3189 (dw_loc_list_struct): New structure, represents location lists.
3190 (new_loc_list): New function, return a new location list, given
3191 the range and location expression.
3192 (add_loc_descr_to_loc_list): New function, add a location
3193 expression to a location list, given the expression and range.
3194 (output_loc_list): New function, output a location list.
3195 (gen_internal_sym): Modified to take symbol prefix, so we can
3196 reuse it for location list symbols.
3197 (add_AT_loc_list): New function, add a location list to a DIE at
3198 the named attribute.
3199 (AT_loc_list): New function, return the location list reference
3200 for a given attribute, if it's a location list.
3201 (print_die): Handle dw_val_class_loc_list.
3202 (size_of_die): Ditto.
3203 (value_format): Ditto.
3204 (output_die): Ditto.
3205 (output_location_lists): New function, output all of the location
3206 lists for a DIE and it's children.
3207 (dwarf2out_finish): Call output_location_lists if we have location
3211 Fri May 18 15:39:16 CEST 2001 Jan Hubicka <jh@suse.cz>
3213 * gcse.c (try_replace_reg): First try global replace, later try to
3214 simplify the expression.
3216 * gcse.c (find_used_regs): Change calling convention; work via
3218 (cprop_insn): Update call of find_used_regs; work for CALL_INSNs too.
3220 2001-05-18 Bernd Schmidt <bernds@redhat.com>
3223 2001-02-09 Nick Clifton <nickc@redhat.com>
3224 * config/arm/arm.md: Change output constraint on post inc
3225 load/store multiple patterns to be a read/write constraint.
3227 2001-05-18 Mark Mitchell <mark@codesourcery.com>
3229 * basic-block.h (struct basic_block_def): Add documentation about
3230 what a basic block is, and what the various fields are used for.
3231 * flow.c (calculate_globlal_regs_live): Add documentation about
3232 how the algorithm works, and how we know that it will terminate.
3233 Check that the the inductive assumption that guarantees
3234 termination actually holds.
3235 (mark_used_regs): Treat conditionally set registers as used.
3236 (debug_regset): Add comment.
3237 * rtl.texi (cond_exec): Add documentation.
3239 * function.c (expand_function_start): Avoid creating BLKmode
3242 2001-05-17 Mark Mitchell <mark@codesourcery.com>
3244 * dwarf2out.c (output_comp_unit): Always output a compilation-unit
3245 DIE, even if it has no children.
3246 (dwarf2out_finish): Always output the line-number table, even if
3249 2001-05-18 David Edelsohn <edelsohn@gnu.org>
3251 * rs6000.md (movsfcc,movdfcc): Remove NE case.
3253 2001-05-17 Bruce Korb <bkorb@gnu.org>
3255 * fixinc/fixincl.tpl: rewritten as an AutoGen version 5 template
3256 * fixinc/genfixes: emit a warning if AutoGen is out of date
3258 2001-05-17 Brendan Conoboy <blc@cygnus.com>
3259 Bruce Korb <bkorb@gnu.org>
3261 * fixinc/fixincl.sh(FIXINC): accept local directory if fixincl not
3262 found in fixinc directory. Facilitates binary distributions.
3264 2001-05-17 Jeffrey Oldham <oldham@codesourcery.com>
3266 * dbxout.c (dbxout_symbol_location): For CONCAT, skip types not
3269 Thu May 17 19:42:39 2001 Mark Kettenis <kettenis@wins.uva.nl>
3271 * dwarf2out.c (modified_type_die): Equate qualified type to die.
3273 Thu May 17 23:19:46 CEST 2001 Jan Hubicka <jh@suse.cz>
3275 * integrate.c (copy_rtx_and_substitute): Use simplify_gen_subreg.
3276 (simplify_subreg): Handle complex types represented as CONCAT.
3278 * recog.c (validate_replace_rtx_1): Properly canonicalize expression
3279 * rtl.h (swap_commutative_operands_p): Declare.
3280 * rtlanal.c (swap_commutative_operands_p): New.
3281 (operand_preference): New static function.
3283 * combine.c (combine_simplify_rtx): Use swap_commutative_operands_p.
3284 (gen_binary): Likewise.
3285 * optabs.c (emit_cmp_and_jump_insns, emit_conditional_move): Likewise.
3286 * simplify-rtx.c (simplify_gen_binary,
3287 simplify_gen_relational): Likewise.
3289 Thu May 17 20:43:36 CEST 2001 Jan Hubicka <jh@suse.cz>
3291 * cse.c (fold_rtx): Use simplify_subreg.
3293 * simplify-rtx.c (simplify_replace_rtx): Use simplify_gen_subreg.
3294 (simplify_gen_subreg): New.
3295 (simplify_rtx): Use simplify_subreg.
3296 * rtl.h (simplify_gen_subreg): Declare.
3298 2001-05-17 Mark Mitchell <mark@codesourcery.com>
3300 * doc/install.texi: Update Solaris information.
3302 * except.h (protect_cleanup_actions): Remove it.
3303 (lang_protect_cleanup_actions): Declare it.
3304 * except.c (protect_cleanup_actions): Remove it.
3305 (lang_protect_cleanup_actions): New variable.
3306 (init_eh): Don't make protect_cleanup_actions a GC root.
3307 (expand_eh_region_and_cleanup): Call
3308 lang_protect_cleanup_actions.
3309 (output_function_exception_table): Remove unused `align'
3311 * varasm.c (assemble_external): Abort if we have not yet
3312 opened the assembly output file.
3314 Thu May 17 11:54:50 2001 Jeffrey A Law (law@cygnus.com)
3316 * except.c (sjlj_emit_function_enter): Call assemble_external_libcall
3317 for eh_personality_libfunc.
3319 Thu May 17 19:48:00 CEST 2001 Jan Hubicka <jh@suse.cz>
3321 * recog.c (validate_replace_rtx_1): Use "TO" mode if not VOIDmode
3322 when calling simplify_subreg. This is needed to allow replacing
3323 of expression of one mode by expression of different mode.
3325 Thu May 17 19:40:03 CEST 2001 Jan Hubicka <jh@suse.cz>
3327 * simplify-rtx.c (simplify_subreg): Avoid creating of incorrect subregs.
3329 2001-05-17 Bernd Schmidt <bernds@redhat.com>
3331 * expr.c (protect_from_queue): Protect against subsequent calls to
3333 (expand_expr, case ADDR_EXPR): Prevent protect_from_queue from being
3336 Thu May 17 18:17:34 CEST 2001 Jan Hubicka <jh@suse.cz>
3338 * simplify_rtx.c (simplify_subreg): Fix simplification of nested subregs.
3340 2001-05-17 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
3342 * gccbug.in (CATEGORIES): Add "bootstrap".
3344 Thu May 17 16:59:41 CEST 2001 Jan Hubicka <jh@suse.cz>
3346 * simplify-rtx.c (simplify_subreg): Break out from ...
3347 * combine.c (combine_splify_rtx) ... here and ...
3348 * recog.c (validate_replace_rtx_1): ... here;
3349 * rtl.h (subreg_lowpart_parts_p, simplify_subreg): Declare.
3350 * emit-rtl.c (subreg_lowpart_parts_p): Break out from ...
3351 (subreg_lowpart_p): ... here.
3353 2001-05-17 Bernd Schmidt <bernds@redhat.com>
3355 * stmt.c (expand_asm_operands): For inout operands, make sure
3356 the substitution of '=' for '+' makes it into the rtl.
3358 * reload1.c (delete_output_reload): Call eliminate_regs on substed.
3359 (reload_as_needed): Call update_eliminable_offsets a bit later.
3361 2001-05-17 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
3363 * gcc.texi (gccbug): Refer to the web pages for detailed information
3366 2001-05-16 Zack Weinberg <zackw@stanford.edu>
3368 * libgcc1-test.c, libgcc1.c, config/i386/perform.h: Delete file.
3370 * Makefile.in: Delete variables: OLDCC, CCLIBFLAGS, OLDAR,
3371 OLDAR_FLAGS, LIBGCC1, LIBGCC1_TEST, CROSS_LIBGCC1,
3372 LIB1FUNCS, and LIB1FUNCS_EXTRA. Delete rules: libgcc1-test,
3373 libgcc1-test.o. Clarify commentary now that libgcc1 no longer exists.
3374 * cross-make: Don't set LIBGCC1.
3375 * mklibgcc.in: Delete all code for building from libgcc1.c.
3376 Always honor LIB1ASMFUNCS if set.
3378 * crtstuff.c, floatlib.c, longlong.h, config/fp-bit.c,
3379 config/arc/lib1funcs.asm, config/arm/lib1funcs.asm,
3380 config/d30v/libgcc1.asm, config/fr30/lib1funcs.asm,
3381 config/h8300/lib1funcs.asm, config/i386/cygwin.asm,
3382 config/i386/uwin.asm, config/m68hc11/larith.asm,
3383 config/m68k/lb1sf68.asm, config/mcore/lib1.asm,
3384 config/mn10200/lib1funcs.asm, config/sh/lib1funcs.asm,
3385 config/sparc/lb1spc.asm, config/sparc/lb1spl.asm,
3386 config/v850/lib1funcs.asm, config/c4x/libgcc.S:
3387 Delete or update references to libgcc1 in commentary.
3389 * config/t-libc-ok, config/t-linux, config/t-linux-aout,
3390 config/t-netbsd, config/a29k/t-a29kbare, config/a29k/t-vx29k,
3391 config/alpha/t-interix, config/alpha/t-osf, config/alpha/t-vms,
3392 config/arc/t-arc, config/arm/t-arm-aout, config/arm/t-arm-coff,
3393 config/arm/t-arm-elf, config/arm/t-linux, config/arm/t-pe,
3394 config/arm/t-semi, config/arm/t-strongarm-coff,
3395 config/arm/t-strongarm-elf, config/arm/t-strongarm-pe,
3396 config/arm/t-xscale-coff, config/arm/t-xscale-elf, config/avr/t-avr,
3397 config/c4x/t-c4x, config/d30v/t-d30v, config/fr30/t-fr30,
3398 config/h8300/t-h8300, config/i386/t-beos, config/i386/t-cygwin,
3399 config/i386/t-i386elf, config/i386/t-interix, config/i386/t-netware,
3400 config/i386/t-next, config/i386/t-rtems-i386, config/i386/t-sol2,
3401 config/i960/t-960bare, config/i960/t-vxworks960, config/ia64/t-ia64,
3402 config/m32r/t-m32r, config/m68hc11/t-m68hc11-gas, config/m68k/t-lynx,
3403 config/m68k/t-m68kbare, config/m68k/t-m68kelf,
3404 config/m68k/t-mot3300-gald, config/m68k/t-mot3300-gas,
3405 config/m68k/t-next, config/m68k/t-vxworks68, config/m88k/t-bug,
3406 config/m88k/t-dgux, config/m88k/t-dgux-gas, config/m88k/t-dguxbcs,
3407 config/m88k/t-luna, config/m88k/t-luna-gas, config/m88k/t-m88k,
3408 config/m88k/t-m88k-gas, config/m88k/t-sysv4, config/mcore/t-mcore,
3409 config/mcore/t-mcore-pe, config/mips/t-bsd, config/mips/t-bsd-gas,
3410 config/mips/t-cross64, config/mips/t-ecoff, config/mips/t-elf,
3411 config/mips/t-iris6, config/mips/t-r3900, config/mips/t-svr3,
3412 config/mips/t-svr3-gas, config/mips/t-svr4, config/mips/t-svr4-gas,
3413 config/mips/t-ultrix, config/mn10200/t-mn10200,
3414 config/mn10300/t-mn10300, config/pa/t-linux, config/pa/t-linux64,
3415 config/pa/t-pa, config/pa/t-pa64, config/pa/t-pro,
3416 config/pdp11/t-pdp11, config/pj/t-pj, config/rs6000/t-aix43,
3417 config/rs6000/t-beos, config/rs6000/t-darwin, config/rs6000/t-newas,
3418 config/rs6000/t-ppccomm, config/rs6000/t-rs6000, config/sh/t-linux,
3419 config/sh/t-sh, config/sparc/t-chorus-elf, config/sparc/t-elf,
3420 config/sparc/t-sol2, config/sparc/t-sp86x, config/sparc/t-sparcbare,
3421 config/sparc/t-sparclite, config/sparc/t-splet,
3422 config/sparc/t-sunos41, config/sparc/t-vxsparc,
3423 config/sparc/t-vxsparc64, config/v850/t-v850:
3424 Don't set any of LIBGCC1, CROSS_LIBGCC1, or LIBGCC1_TEST.
3426 * config/alpha/alpha.h, config/i386/i386.h, config/i860/i860.h:
3427 Don't set FLOAT_VALUE_TYPE, FLOAT_ARG_TYPE, INTIFY, or FLOATIFY.
3428 * config/d30v/d30v.h: Don't mention LIBGCC_NEEDS_DOUBLE,
3429 FLOAT_VALUE_TYPE, FLOAT_ARG_TYPE, FLOATIFY, INTIFY,
3430 nongcc_SI_type, nongcc_word_type, or perform_*
3431 * config/i860/fx2800: Don't define perform_umodsi3 or perform_modsi3.
3433 * config/i386/386bsd.h, config/i386/beos-elf.h,
3434 config/i386/linux-aout.h, config/i386/linux-oldld.h,
3435 config/i386/linux.h, config/i386/mach.h, config/i386/netbsd.h,
3436 config/i386/openbsd.h, config/i386/osfrose.h, config/i386/rtemself.h:
3437 Don't include i386/perform.h.
3439 * config/a29k/t-a29k, config/arm/t-semiaof, config/i370/t-i370,
3440 config/i370/t-linux, config/i370/t-mvs, config/i370/t-oe,
3441 config/i386/t-djgpp, config/i386/t-i386bare, config/i386/t-vsta,
3442 config/ia64/t-hpux, config/mips/t-mips, config/mips/t-mips-gas,
3443 config/mips/t-osfrose, config/sparc/t-sp64, config/sparc/t-sunos40,
3444 config/vax/t-openbsd, config/vax/t-vax: Delete.
3446 * config.gcc: Remove references to deleted files.
3447 (arm-semi-aof): Use arm/t-semi for tmake_file.
3449 * gcc.texi, install.texi, invoke.texi, tm.texi:
3450 Delete or rewrite text which is no longer relevant now that
3451 libgcc1 no longer exists.
3453 * config/t-openbsd, config/alpha/t-interix, config/i386/t-interix:
3454 No need to set INSTALL_ASSERT_H. (Missed in previous sweep.)
3456 2001-05-16 Wolfgang Bangerth <wolfgang.bangerth@iwr.uni-heidelberg.de>
3457 Bruce Korb <bkorb@gnu.org>
3459 * fixinc/inclhack.def(solaris27_mutex_init): Fix broken mutex
3462 2001-05-16 Zack Weinberg <zackw@stanford.edu>
3464 * i386.md: Add two peepholes to clean up code generated by
3467 2001-05-16 Richard Henderson <rth@redhat.com>
3469 * dwarf2asm.c (eh_data_format_name): Add names for "pointer size"
3470 variants of non-absolute encodings.
3472 * config/i386/i386.h (ASM_PREFERRED_EH_DATA_FORMAT): New.
3474 * libgcc-std.ver (_Unwind_Find_FDE, __register_frame_info_bases,
3475 __register_frame_info_table_bases): Export.
3477 2001-05-16 Richard Henderson <rth@redhat.com>
3479 * except.c (eh_data_format_name): Move to ...
3480 * dwarf2asm.c: ... here. Use designated initializers if available.
3481 (dw2_asm_output_encoded_addr_rtx): Accept varargs commentary.
3482 * dwarf2asm.h: Update declarations.
3483 * dwarf2out.c (output_cfi) [DW_CFA_set_loc]: If for_eh, mind
3484 ASM_PREFERRED_EH_DATA_FORMAT.
3485 (output_call_frame_info): Likewise. Use 'L' augmentation for
3488 * unwind-dw2-fde.h (struct fde_vector): New.
3489 (struct old_object): Rename from struct object.
3490 (struct object): New.
3491 (__register_frame_info_bases): Declare.
3492 (__register_frame_info_table_bases): Declare.
3493 (struct dwarf_fde): Remove explicit pc_begin/pc_range members.
3494 * unwind-dw2-fde.c (objects): Remove.
3495 (unseen_objects, seen_objects): New.
3496 (__register_frame_info_bases): New.
3497 (__register_frame_info): Use it.
3498 (__register_frame_info_table_bases): New.
3499 (__register_frame_info_table): Use it.
3500 (__deregister_frame_info): Rewrite for changed object struct.
3501 (base_from_object, get_cie_encoding, get_fde_encoding): New.
3502 (fde_unencoded_compare): Rename from fde_compare; uninline.
3503 (fde_single_encoding_compare, fde_mixed_encoding_compare): New.
3504 (start_fde_sort): Adjust for new definition of fde_vector.
3505 (fde_insert): Likewise.
3506 (end_fde_sort): Likewise. Select comparison function based
3507 on properties of the object.
3508 (fde_split): Take object and fde_compare_t arguments.
3509 (frame_heapsort, fde_merge): Likewise.
3510 (classify_object_over_fdes): Rename from count_fdes. Handle
3511 encoded pointers. Collect encoding, mixed_encoding, and pc_begin
3513 (add_fdes): Handle encoded pointers.
3514 (init_object): Rename from frame_init. Update for new struct object.
3515 (linear_search_fdes): Rename from search_fdes. Handle encoded
3517 (binary_search_unencoded_fdes): Broken out from _Unwind_Find_FDE.
3518 (binary_search_single_encoding_fdes): New.
3519 (binary_search_mixed_encoding_fdes): New.
3520 (search_object): New.
3521 (_Unwind_Find_FDE): Update for new struct object. Fill in
3523 * unwind-dw2.c: Include unwind-pe.h. Constify all pointers
3524 iterating over EH data.
3525 (_Unwind_FrameState): Remove saw_lsda, addr_encoding. Add
3526 fde_encoding, lsda_encoding.
3527 (read_uleb128, read_sleb128): Remove.
3528 (read_encoded_pointer): Remove. All callers use read_encoded_value.
3529 (extract_cie_info): Set lsda_encoding from 'L' augmentation.
3530 (uw_frame_state_for): Don't set bases.func. Handle encoded fde
3532 * unwind-pe.h: Add "struct" to _Unwind_Context references.
3534 2001-05-16 Neil Booth <neil@cat.daikokuya.demon.co.uk>
3536 * cppexp.c (lex): Use NODE_NAME and NODE_LEN.
3537 * cpphash.c (_cpp_lookup_with_hash): Similarly.
3538 * cpplex.c (cpp_ideq, parse_identifier, cpp_token_len,
3539 cpp_spell_token, cpp_output_token): Similarly.
3540 * cpplib.c (lex_macro_node, do_undef, do_pragma,
3541 do_pragma_poison, parse_assertion, do_assert): Similarly.
3542 * cppmacro.c (builtin_macro, parse_args, funlike_invocation_p,
3543 save_parameter, _cpp_create_definition, check_trad_stringification,
3544 cpp_macro_definition): Similarly.
3545 * cppmain.c (cb_define, cb_undef, dump_macro): Similarly.
3546 * c-lex.c (cb_undef, c_lex): Similarly.
3547 * fix-header.c (recognized_function): Similarly.
3548 * cpplib.h (NODE_LEN, NODE_NAME): New.
3549 (cpp_hashnode): Rename length len.
3551 Wed May 16 13:41:10 2001 Jeffrey A Law (law@cygnus.com)
3553 * pa32-regs.h (HARD_REGNO_MODE_OK): Allow TI/TFmode values in
3556 2001-05-16 Andreas Jaeger <aj@suse.de>
3558 * Makefile.in (toplev.o): Add dependency on dwarf2asm.h.
3560 * toplev.c: Include dwarf2asm.h for prototype of
3561 dw2_output_indirect_constants.
3563 Wed May 16 19:53:53 CEST 2001 Jan Hubicka <jh@suse.cz>
3565 * stmt.c (expand_asm_operands): Be able to offload addressof
3566 expression to memory. (PR optimization/185)
3568 Wed May 16 18:53:23 CEST 2001 Jan Hubicka <jh@suse.cz>
3570 * combine.c (combine_simplify_rtx): Set op0_mode to VOIDmode after
3571 applying distributive law.
3573 2001-05-16 John David Anglin <dave@hiauly1.hia.nrc.ca>
3575 * pa-hpux10.h (THREAD_MODEL_SPEC): Define.
3577 * gthr-dce.h (UNUSED): Attribute unused macro.
3578 (__gthread_key_dtor): Make arguments UNUSED.
3579 (__gthread_key_delete): Revise for compatibility with DRAFT4
3582 2001-05-16 David Edelsohn <edelsohn@gnu.org>
3584 * doc/install.texi: Update AIX information.
3585 * README.RS6000: Remove obsolete file.
3587 2001-05-16 Jakub Jelinek <jakub@redhat.com>
3588 Nathan Sidwell <nathan@codesourcery.com>
3590 * gcc.c (give_switch): Don't write before start of string.
3591 Always append suffix.
3593 2001-05-16 Nathan Sidwell <nathan@codesourcery.com>
3595 * cpplex.c (_cpp_lex_token, '/' case): Comments can't appear
3598 2001-05-16 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
3600 * README.ALTOS: Remove obsolete file.
3602 2001-05-16 Neil Booth <neil@daikokuya.demon.co.uk>
3604 * c-lex.h (save_and_forget_protocol_qualifiers,
3605 forget_protocol_qualifiers, remember_protocol_qualifiers):
3606 Remove deleted functions' prototypes.
3608 2001-05-16 Neil Booth <neil@daikokuya.demon.co.uk>
3610 * c-parse.in (methodtype): New production.
3611 (methoddef, methodproto): Collapse separate '-' and '+'
3614 2001-05-16 Neil Booth <neil@cat.daikokuya.demon.co.uk>
3616 * c-common.h (RID_FIRST_PQ): New.
3617 * c-parse.in (objc_pq_context): New.
3618 (objc parser): Set objc_pq_context rather than calling
3619 remember_protocol_qualifiers and forget_protocol_qualifiers.
3620 Don't call save_and_forget_protocol_qualifiers.
3621 (yylexname): Handle objc protocol qualifiers here.
3622 * stringpool.c (struct str_header): Replace with sp_hashnode.
3623 (SP_EMPTY, SP_LEN, SP_TREE, SP_STR, SP_VALID): New.
3624 (alloc_string): Rename alloc_ident. Use the SP_ accessors.
3625 Allocate an IDENTIFIER_NODE for each identifier.
3626 (FORALL_STRINGS, set_identifier): Delete.
3627 (FORALL_IDS, expand_string_table, stringpool_statistics): Update.
3628 (ggc_alloc_string): Use an obstack.
3629 (get_identifier, maybe_get_identifier, mark_string_hash): Update.
3630 * tree.h: Update comments.
3631 (set_identifier): Delete.
3632 * objc/objc-act.c (N_PQ, saved_pq, saved_not_pq,
3633 save_and_forget_protocol_qualifiers, forget_protocol_qualifiers,
3634 remember_protocol_qualifiers): Delete.
3636 Tue May 15 22:14:09 2001 Jeffrey A Law (law@cygnus.com)
3638 * flow.c (life_analysis): After life analysis is complete, do
3639 an optional scan over insns looking for REG_LABEL notes that
3640 reference a deleted label.
3641 (propagate_block_delete_insn): Verify INOTE is a CODE_LABEL
3642 before peeking at LABEL_NUSES.
3644 2001-05-15 Richard Henderson <rth@redhat.com>
3646 * unwind-sjlj.c (_Unwind_GetDataRelBase): New.
3647 (_Unwind_GetTextRelBase): New.
3649 2001-05-15 Mark Mitchell <mark@codesourcery.com>
3651 * config/sparc/sol2.h (CPLUSPLUS_CPP_SPEC): Define.
3653 2001-05-15 Geoffrey Keating <geoffk@redhat.com>
3655 * objc/objc-act.c (handle_class_ref): Use rest_of_decl_compilation
3656 so that CHOOSE_SECTION gets used.
3658 * config/rs6000/sysv4.h (ASM_PREFERRED_EH_DATA_FORMAT): Treat
3659 TARGET_RELOCATABLE like flag_pic for now.
3661 2001-05-15 David Edelsohn <edelsohn@gnu.org>
3663 * rs6000.md (movdi splitter): Sign extend more efficiently.
3664 * rs6000.c (reg_or_arith_cint_operand): Redefine 64-bit constant
3665 to "long long" valid on 32-bit and 64-bit hosts.
3666 (logical_operand): Cast trunc_int_for_mode return value.
3667 (rs6000_emit_move): Shift macro to encapsulate variable.
3668 (rs6000_va_start): Use HOST_WIDE_INT_PRINT_DEC.
3669 (rs6000_emit_{prologue,epilogue}): EH regno is unsigned but
3670 plus_constant requires signed argument.
3672 2001-05-15 Loren J. Rittle <ljrittle@acm.org>
3674 * gthr-posix.h: Make additional pthread-* functions weak.
3676 Tue May 15 13:51:32 CEST 2001 Jan Hubicka <jh@suse.cz>
3678 * recog.c (apply_change_group): Avoid unneeded validating.
3680 2001-05-14 David Edelsohn <edelsohn@gnu.org>
3682 * rs6000.c (num_insns_constant_wide): Constants are sign-extended.
3683 (num_insns_constant): CONST_INT can be 64-bits.
3685 2001-05-14 Stan Shebs <shebs@apple.com>
3687 * config/darwin.h (LIB_SPEC): Just use -lSystem.
3688 (LIBGCC_SPEC): Don't define.
3690 2001-05-14 Richard Henderson <rth@redhat.com>
3692 * configure.in (gcc_cv_as_eh_frame): New test.
3693 * config.in, configure: Rebuild.
3694 * gcc.c (init_spec): Honor USE_AS_TRADITIONAL_FORMAT.
3696 2001-05-14 Andrew MacLeod <amacleod@redhat.com>
3698 * config/ia64/lib1funcs.asm (__divtf3): Fix incorrect bits in
3699 extended precision divide.
3701 2001-05-14 Andrew MacLeod <amacleod@redhat.com>
3703 * config/ia64/ia64.c (rtx_needs_barrier): Call rtx_needs_barrier
3704 for RETURNS as well.
3706 Mon May 14 17:34:48 CEST 2001 Jan Hubicka <jh@suse.cz>
3708 * i386.h (TARGET_64BIT): Define to constant if !TARGET_BI_ARCH
3709 (CPP_CPU??_SIZE_TYPE): New.
3710 (CPP_CPU??_SPEC, CPP_CPUCOMMON_SPEC): Break out from...
3711 (CPP_CPU_SPEC): ... here; support choosing of CPU.
3712 (EXTRA_SPECS): Add cpp_cpu??, cpp_cpu??sizet, cpp_cpucommon.
3713 (MAX_LONG_TYPE_SIZE, MAX_BITS_PER_WORD): Define to 32 for 32bit-only
3715 * i386.c (override_options): Add sorry about not suported modes.
3717 Mon May 14 08:56:47 2001 Jeffrey A Law (law@cygnus.com)
3719 * config/pa/som.h (NM_FLAGS): Remove.
3720 (ASM_OUTPUT_FUNCTION_PREFIX): No longer truncate subspace names.
3721 (ASM_OUTPUT_SECTION_NAME): Remove.
3722 (MAKE_DECL_ONE_ONLY, ASM_WEAKEN_LABEL): Likewise.
3724 2001-05-14 Mark Mitchell <mark@codesourcery.com>
3726 * regrename.c (regrename_optimize): Do not rename registers to
3729 2001-05-14 Alexandre Oliva <aoliva@redhat.com>
3731 * rtl.texi (CALL_INSN_FUNCTION_USAGE): Note that (and when) it may
3732 contain MEMs. Remove useless distinction about clobbering
3735 2001-05-13 Geoff Keating <geoffk@redhat.com>
3737 * config/rs6000/rs6000.h (EXCEPTION_SECTION): Move to...
3738 * config/rs6000/aix.h (EXCEPTION_SECTION): ... here.
3739 * config/rs6000/sysv4.h (CONST_SECTION_ASM_OP): Delete.
3740 (ASM_PREFERRED_EH_DATA_FORMAT): Define.
3741 (EXCEPTION_SECTION): Define.
3743 2001-05-13 Zack Weinberg <zackw@stanford.edu>
3745 * libgcc2.c, libgcc2.h: Restore __eprintf. Label as used for
3746 binary backward compat only.
3747 * Makefile.in (LIB2FUNCS_ST): New. Put _eprintf here, not
3748 in LIB2FUNCS. Pass it to mklibgcc.
3749 * mklibgcc.in: Handle LIB2FUNCS_ST.
3751 * Makefile.in (installdirs): Don't create $(gcc_tooldir).
3753 2001-05-13 Alexandre Oliva <aoliva@redhat.com>
3755 * tm.texi (THREAD_MODEL_SPEC): Document it.
3756 * gcc.c (main): Use it.
3757 * config/rs6000/aix43.h (THREAD_MODEL_SPEC): Define it.
3758 * config/rs6000/aix51.h (THREAD_MODEL_SPEC): Likewise.
3760 2001-05-13 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
3762 * rtl.h (SYMBOL_REF_WEAK): New macro.
3763 * rtlanal.h (rtx_addr_can_trap): Use it, a weak SYMBOL_REF can trap.
3764 * varasm.c (make_decl_rtl): Mark SYMBOL_REF weak if necessary.
3765 * rtl.texi (SYMBOL_REF_WEAK): Document it.
3766 * gcc.texi: Remove wrong description.
3768 2001-05-13 Mark Mitchell <mark@codesourcery.com>
3770 * Makefile.in (STAMP): New macro.
3771 Replace all uses of `touch' with $(STAMP).
3772 * fixinc/Makefile.in: Likewise.
3774 Sun May 13 07:26:34 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
3776 * configure.in: ldopen is never in -lexc, so don't test for it.
3777 Add test for exc_resume in -lexc for Ada.
3778 * configure: Regenerated.
3780 2001-05-12 Richard Henderson <rth@redhat.com>
3782 * dwarf2asm.c (size_of_encoded_value): New function.
3783 * dwarf2asm.h: Declare it.
3784 * except.c (output_function_exception_table): Align the TType
3785 array only as wide as the encoding.
3787 2001-05-12 Zack Weinberg <zackw@stanford.edu>
3789 * extend.texi: Document #pragma GCC java_exceptions.
3791 2001-05-12 Neil Booth <neil@cat.daikokuya.demon.co.uk>
3793 * c-parse.in (bison parser, init_reswords): Remove uses of
3795 * c-tree.h (doing_objc_thang): Remove.
3797 2001-05-12 Neil Booth <neil@daikokuya.demon.co.uk>
3799 * cpplex.c (_cpp_lex_token): Ensure we warn at most once
3800 about files not ending in newlines.
3802 2001-05-12 Neil Booth <neil@cat.daikokuya.demon.co.uk>
3804 * dwarfout.c (dwarfout_init): Add cast.
3805 * sched-deps.c (sched_analyze_insn): Remove unused vars.
3806 * unwind-dw2-fde.c (_Unwind_Find_FDE): Flag unused parameter so.
3808 * method.c (build_mangled_C99_name): Remove unused prototype.
3810 2001-05-12 Alexandre Oliva <aoliva@redhat.com>
3812 * config/arm/arm.h (TARGET_PTRMEMFUNC_VBIT_LOCATION): Use delta.
3814 2001-05-12 Alexandre Oliva <aoliva@redhat.com>
3816 * defaults.h (TARGET_PTRMEMFUNC_VBIT_LOCATION): Define.
3817 * tm.texi (TARGET_PRTMEMFUNC_VBIT_LOCATION): Document.
3819 2001-05-11 Richard Henderson <rth@redhat.com>
3821 * defaults.h (ASM_PREFERRED_EH_DATA_FORMAT): New.
3822 * dwarf2asm.c (dw2_force_const_mem, dw2_output_indirect_constant_1,
3823 dw2_output_indirect_constants, dw2_asm_output_encoded_addr_rtx): New.
3824 * dwarf2asm.h (dw2_asm_output_encoded_addr_rtx): Prototype.
3825 (dw2_output_indirect_constants): Prototype.
3826 * dwarf2out.c (dwarf2out_begin_prologue): Generate
3827 current_function_func_begin_label if we'll need it for EH. Exit
3828 early for IA64_UNWIND_INFO.
3829 * except.c: Get DW_EH_PE_* defines from dwarf2.h.
3830 (eh_data_format_name): Update for indirect references.
3831 (output_function_exception_table): Care for IA64_UNWIND_INFO.
3832 Handle ASM_PREFERRED_EH_DATA_FORMAT.
3833 * except.h (MUST_USE_SJLJ_EXCEPTIONS): IA64_UNWIND_INFO needn't
3834 define HAVE_eh_return etc.
3835 * final.c (final_start_function): Always call dwarf2out_begin_prologue.
3836 (final_end_function): Don't call output_function_exception_table.
3837 * toplev.c (compile_file): Call dw2_output_indirect_constants.
3838 (rest_of_compilation): Invoke output_function_exception_table
3839 for ia64 before assemble_end_function.
3840 * tm.texi (ASM_PREFERRED_EH_DATA_FORMAT): Document.
3841 (ASM_MAYBE_OUTPUT_ENCODED_ADDR_RTX): Document.
3843 * unwind-dw2.c (_Unwind_GetTextRelBase, _Unwind_GetDataRelBase): New.
3844 * unwind.h: Declare them.
3845 * libgcc-std.ver: Export them.
3846 * unwind-pe.h: New file.
3848 * config/alpha/elf.h (ASM_PREFERRED_EH_DATA_FORMAT): New.
3850 * config/ia64/fde-glibc.c: Use "struct unw_table_entry"
3852 (find_fde_for_dso): Extract DT_PLTGOT.
3853 (_Unwind_FindTableEntry): Rename from __ia64_find_fde; return
3854 the segment and gp as well.
3855 * config/ia64/frame-ia64.c: Remove file.
3856 * config/ia64/frame-ia64.h: Remove file.
3857 * config/ia64/unwind-ia64.c: New file.
3858 * config/ia64/unwind-ia64.h: New file.
3859 * config/ia64/ia64.h (ASM_OUTPUT_EH_CHAR): Remove.
3860 (ASM_OUTPUT_EH_SHORT, ASM_OUTPUT_EH_INT): Remove.
3861 (ASM_OUTPUT_EH_DOUBLE_INT): Remove.
3862 (ASM_PREFERRED_EH_DATA_FORMAT): New.
3863 (ASM_MAYBE_OUTPUT_ENCODED_ADDR_RTX): New.
3864 (IA64_UNWIND_INFO): Re-enable.
3865 (HANDLER_SECTION): Remove.
3866 (EH_RETURN_DATA_REGNO): New.
3867 * config/ia64/ia64.md (exception_receiver): Remove.
3868 * config/ia64/t-glibc (LIB2ADDEH): Re-enable.
3869 * config/ia64/t-ia64 (LIB2ADDEH): Re-enable.
3871 2001-05-11 Richard Henderson <rth@redhat.com>
3873 * config/ia64/ia64.c (group_barrier_needed_p): Don't allow
3874 calls and jumps to be bundled together.
3875 (ia64_reorg): Emit a break after a noreturn call that ends
3877 * config/ia64/ia64.md (break_f): New.
3879 2001-05-12 Neil Booth <neil@daikokuya.demon.co.uk>
3881 * c-lex.c (lex_charconst): Convert into a simple wrapper
3882 around cpp_interpret_charconst, to which most of the code
3884 * cppexp.c (MAX_CHAR_TYPE_SIZE, MAX_WCHAR_TYPE_SIZE,
3885 MAX_LONG_TYPE_SIZE, MAX_INT_TYPE_SIZE, MAX_CHAR_TYPE_MASK,
3886 MAX_WCHAR_TYPE_MASK, parse_escape, parse_charconst): Remove.
3887 (lex): Use cpp_interpret_charconst.
3888 * cpplex.c (parse_escape, read_ucs, cpp_interpret_charconst,
3889 hex_digit_value): New functions.
3890 (MAX_CHAR_TYPE_SIZE, MAX_WCHAR_TYPE_SIZE): New macros.
3891 * cpplib.h (cpp_interpret_charconst): New prototype.
3892 * Makefile.in: Update.
3894 2001-05-12 Dean Wakerley <dean@wakerley.com>
3896 * doc/install.texi: New file. Converted to texinfo from the HTML
3897 documentation in wwwdocs/htdocs/install.
3899 Fri May 11 15:50:13 2001 Jeffrey A Law (law@cygnus.com)
3901 * gcse.c (insert_insn_end_bb): Do not search for assignments to
3902 non-argumment registers that are mentioned in CALL_INSN_FUNCTION_USAGE.
3904 * toplev.c (compile_file): Move comment for opening output
3905 file to just before the code that opens the output file.
3907 2001-05-11 Jakub Jelinek <jakub@redhat.com>
3909 * regmove.c (regmove_optimize): Suppress the optimization for
3910 unchanging destination register. Add comment above function.
3912 2001-05-11 Zack Weinberg <zackw@stanford.edu>
3914 * Makefile.in: Exterminate all references to assert.h.
3915 * cross-make: Likewise.
3917 * configure.in: Correct commentary.
3918 * configure: Regenerate.
3920 * libgcc-std.ver, libgcc2.c, libgcc2.h, sys-protos.h:
3923 * config/t-freebsd, config/t-linux, config/t-linux-aout,
3924 config/t-netbsd, config/t-rtems, config/x-linux,
3925 config/i386/t-beos, config/mcore/t-mcore, config/mcore/t-mcore-pe:
3926 No need to override INSTALL_ASSERT_H.
3928 * fixinc/fixinc.dgux, fixinc/fixinc.interix, fixinc/fixinc.ptx,
3929 fixinc/fixinc.svr4, fixinc/fixinc.winnt, fixinc/fixinc.wrap,
3930 fixinc/fixincl.sh: Don't install assert.h into objdir/include.
3932 2001-05-11 Graham Stott <grahams@redhat.com>
3934 * combine.c (simplify_comparison): Fix typo.
3936 2001-05-11 Mark Mitchell <mark@codesourcery.com>
3938 * loop.h (struct movables): Remove `num'.
3939 * loop.c (scan_loop): Don't set it. Use count_insns_in_loop.
3940 Adjust call to strength_reduce.
3941 (num_unmoved_movables): New function.
3942 (move_movables): Don't set movables->num.
3943 (strength_reduce): Compute the number of instructions in the loop
3944 here, rather than in the caller.
3945 (check_dbra_loop): Always clear reversible_mem_store if there
3946 are any memory sets.
3947 (loop_regs_scan): Don't count instructions here.
3948 (count_insn_in_loop): New function.
3950 2001-05-11 Mark Mitchell <mark@codesourcery.com>
3952 * optabs.c (emit_libcall_block): Don't mark calls as CONST_CALL_P.
3954 2001-05-11 Neil Booth <neil@daikokuya.demon.co.uk>
3956 * c-common.c (finish_label_expr): New function, lifted from
3957 from cp/semantics.c.
3958 * c-common.h (finish_label_expr, lookup_label): New prototypes.
3959 * c-parse.in: Move 3 blocks of parser code into new functions.
3960 * c-typeck.c (simple_asm_stmt, c_cast_expr): New functions.
3961 * c-tree.h (simple_asm_stmt, c_cast_expr): New prototypes.
3962 (lookup_label): Remove.
3964 2001-05-11 Alexandre Oliva <aoliva@redhat.com>
3966 * config/mn10300/t-mn10300 (dp-bit.c, fp-bit.c): Don't define
3967 FLOAT_BIT_ORDER_MISMATCH.
3969 2001-05-10 David Edelsohn <edelsohn@gnu.org>
3971 * expr.c (emit_push_insn): Convert PUSH_ROUNDING argument to
3972 bytes. Reported by Kazu Hirata <kazu@hxi.com>.
3974 2001-05-10 David Edelsohn <edelsohn@gnu.org>
3976 * expr.c (emit_group_load): extract_bit_field requires a REG or
3979 Thu May 10 14:45:44 2001 Jeffrey A Law (law@cygnus.com)
3981 * cse.c (cse_insn): Mostly remove first hunk of code which collapsed
3982 a computed jump into an unconditional jump.
3983 In second hunk of code for collapsing computed and conditional jumps
3984 into unconditional jumps, reemit the jump in additional cases.
3986 * jump.c (jump_optimize_1): Do not wrap the new jump target
3987 inside a LABEL_REF; gen_jump will do that automatically.
3989 2001-05-10 Toon Moene <toon@moene.indiv.nluug.nl>
3991 * dwarf2out.c (mem_loc_descriptor): Do not pass constant pool
3992 contents for a SYMBOL_REF in case of floating point constants.
3994 2001-05-10 DJ Delorie <dj@redhat.com>
3996 * c-common.c (combine_strings): Widen strings in a
3997 host-endian-independent way.
3999 2001-05-10 Joseph S. Myers <jsm28@cam.ac.uk>
4001 * c-parse.in: Remove many shift/reduce conflicts. Update
4003 (declspecs_nosc_nots_nosa_noea, declspecs_nosc_nots_nosa_ea,
4004 declspecs_nosc_nots_sa_noea, declspecs_nosc_nots_sa_ea,
4005 declspecs_nosc_ts_nosa_noea, declspecs_nosc_ts_nosa_ea,
4006 declspecs_nosc_ts_sa_noea, declspecs_nosc_ts_sa_ea,
4007 declspecs_sc_nots_nosa_noea, declspecs_sc_nots_nosa_ea,
4008 declspecs_sc_nots_sa_noea, declspecs_sc_nots_sa_ea,
4009 declspecs_sc_ts_nosa_noea, declspecs_sc_ts_nosa_ea,
4010 declspecs_sc_ts_sa_noea, declspecs_sc_ts_sa_ea, declspecs_ts,
4011 declspecs_nots, declspecs_ts_nosa, declspecs_nots_nosa,
4012 declspecs_nosc_ts, declspecs_nosc_nots, declspecs_nosc, declspecs,
4013 maybe_type_quals_setattrs, typespec_nonattr, typespec_attr,
4014 typespec_reserved_nonattr, typespec_reserved_attr,
4015 typespec_nonreserved_nonattr, maybe_setattrs, structsp_attr,
4016 structsp_nonattr, components_notype, component_notype_declarator,
4017 absdcl1_ea, absdcl1_noea, direct_absdcl1, absdcl_maybe_attribute,
4018 firstparm, setspecs_fp): New
4019 (typed_declspecs, reserved_declspecs, typed_typespecs,
4020 reserved_typespecquals, declmods, typespec, typespecqual_reserved,
4021 typed_declspecs_no_prefix_attr reserved_declspecs_no_prefix_attr
4022 declmods_no_prefix_attr, nonempty_type_quals, structsp,
4023 type_quals): Remove. Users updated.
4024 (initdecls, notype_initdecls, after_type_declarator,
4025 parm_declarator, notype_declarator, absdcl1, components, ivars):
4026 Don't allow attributes at the start of a declarator; include them
4027 in the production containing the declarator instead. Always
4028 require type specifiers before trying to redeclare a typedef name.
4029 (typename): Allow for attributes but warn that they are ignored.
4030 (parmlist, firstparm, setspecs_fp): Include attributes in
4031 parmlist; suck them off the parser stack in firstparm using
4034 Thu May 10 09:17:42 2001 Jeffrey A Law (law@cygnus.com)
4036 * ifcvt.c (merge_if_block): Use any_uncondjump_p, not simplejump_p
4037 to determine if a block has an unconditional jump at its end.
4039 * jump.c (jump_optimize_1): When converting a conditional jump
4040 to an unconditional jump, build the jump using gen_jump instead
4041 of just modify operands in-place.
4043 2001-05-09 Zack Weinberg <zackw@stanford.edu>
4045 * cppinit.c (cpp_post_options): Shut off macro expansion if
4047 * cpplib.c (_cpp_handle_directive): If -fpreprocessed, accept
4048 IN_I directives only if the # is in column 1 and the directive
4049 name begins in column 2.
4050 * cppmain.c (scan_buffer): Insert a space between # and an
4051 identifier, when that identifier is a directive name.
4053 * tradcpp.c (struct file_buf): Add a pointer to the next entry
4054 in the header search path.
4055 (enum node_type): Add T_INCLUDE_NEXT.
4056 (directive_table): Add entry for include_next.
4057 (do_include_next): New function.
4058 (process_include): New routine, broken out of do_include.
4059 (finclude): Insert 'nhd' argument, to be copied into
4060 next_header_dir of the new buffer.
4061 (main): Adjust to match.
4062 * gsyslimits.h, limity.h: Un-indent #include_next.
4064 2001-05-09 Joseph S. Myers <jsm28@cam.ac.uk>
4066 * objc.texi: Move from ../libobjc/objc-features.texi. Adjust for
4067 inclusion as a chapter of the GCC manual.
4068 * gcc.texi: Include objc.texi.
4069 * fdl.texi: Use @unnumberedsec for the addendum.
4070 * Makefile.in ($(srcdir)/gcc.info, gcc.dvi): Update dependencies.
4072 Wed May 9 16:01:41 CEST 2001 Jan Hubicka <jh@suse.cz>
4074 * i386.md (DImode move splitters): Use !MMX and !SSE for the condition.
4076 Wed May 9 10:40:25 2001 Alexandre Oliva <aoliva@redhat.com>
4078 * regclass.c (scan_one_insn): Update REG_N_REFS when optimizing
4079 handling of two-address insns.
4081 Wed May 9 10:36:18 2001 Alexandre Oliva <aoliva@redhat.com>
4083 * Makefile.in (NM_FOR_TARGET): Look for ./nm, then
4084 ../binutils/nm-new instead of ../binutils/nm.
4086 Wed May 9 12:15:46 CEST 2001 Jan Hubicka <jh@suse.cz>
4088 * i386.md (movdi splitter): Fix the splitting condition
4089 (float_extenddftf splitter): Fix mode.
4091 Wed May 9 12:05:39 CEST 2001 Jan Hubicka <jh@suse.cz>
4093 * genrecog.c (write_switch): Avoid outputting of switch for
4094 types wider than int.
4096 2001-05-03 Andrew Haley <aph@cambridge.redhat.com>
4098 * reload1.c (copy_eh_notes): New functi