1 2001-06-28 Stan Shebs <shebs@apple.com>
3 * config/darwin.h (REGISTER_TARGET_PRAGMAS): Define.
4 * config/darwin-c.c: New file.
5 * config/darwin-protos.h: Declare new functions.
6 * config/rs6000/t-darwin (darwin-c.o): New rule.
7 * config.gcc (powerpc-*-darwin*): Define c_target_objs and
9 * doc/extend.texi (Pragmas): New section.
11 Thu Jun 28 20:13:11 CEST 2001 Jan Hubicka <jh@suse.cz>
13 * flow.c (try_merge_block): Rename to try_optimize_cfg;
14 do basic simplifications on the CFG.
15 (is_forwarder_block_p, can_fallthru, try_redirect_by_replacing_jump,
16 try_simplify_condjump): New.
17 (redirect_edge_and_branch): Try replace jump insn.
18 (flow_delete_insn): Handle deleting of ADDR_VEC insns.
20 * basic-block.h (FALLTHRU_EDGE, BRANCH_EDGE): New macros.
22 Thu Jun 28 11:19:42 2001 Jeffrey A Law (law@cygnus.com)
24 * ssa-dce.c (eliminate_dead_code): Properly handle control
25 dependencies implied by PHI nodes.
27 * ssa-dce.c (eliminate_dead_code): Remove fake edges from the
28 CFG after dead code elimination is complete.
30 2001-06-28 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
32 * gthr-posix.h [LIBOBJC]: Add weak definitions of
33 sched_get_priority_max, sched_get_priority_min.
35 2001-06-28 Gabriel Dos Reis <gdr@codesourcery.com>
37 * diagnostic.c (default_print_error_function): Tweak.
38 (report_error_function): Likewise.
39 * toplev.h (default_print_error_function): Move to...
40 * diagnostic.h: ...here. Add a `diagnostic_context *' parameter.
41 * tree.h (print_error_function): Move to...
42 * diagnostic.h: ...here. Add a `diagnostic_context *' parameter.
44 Thu Jun 28 06:16:45 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
46 * expr.c (expand_assignment): When have varying-length object,
48 (expand_expr, case ADDR_EXPR): Use SAVE_EXPR_RTL after putting
49 SAVE_EXPR stack in case we had a SUBREG.
51 Thu Jun 28 10:31:06 CEST 2001 Jan Hubicka <jh@suse.cz>
53 * i386.md (cmp?i): Simplify; refuse immediate operand
55 * i386.c (cmpsi_operand): Refuse constants.
57 * i386.md (movsi_insv_1, movsi_insv_1_rex64): Allow immediate operand.
59 * flow.c (block_label, redirect_edge_and_branch): Split out from ....
60 (split_edge) .... here;
62 2001-06-28 Neil Booth <neil@cat.daikokuya.demon.co.uk>
64 * i386/i386.c (ix86_valid_type_attribute_p): Give external
65 linkage, move declaration to...
66 * i386/i386-protos.h: ...here.
68 2001-06-27 H.J. Lu (hjl@gnu.org)
70 * build-make (CC): Removed.
71 (HOST_CC): Set to $(CC_FOR_BUILD).
72 (HOST_CFLAGS): Replace $(CFLAGS) with $(CFLAGS_FOR_BUILD).
73 Fix a typo in comments.
75 * configure.in: Set CFLAGS to $(CFLAGS_FOR_BUILD) when
76 generating auto-build.h for canadian cross compile. Set CC
77 to `"${CC_FOR_BUILD}"' instead of just `${CC_FOR_BUILD}'.
79 * configure: Regenerated.
81 2001-06-27 Jim Wilson <wilson@redhat.com>
83 * emit-rtl.c (gen_highpart): Call validize_mem.
85 2001-06-27 Bruce Korb <bkorb@gnu.org>
87 * fixinc/inclhack.def(hpux11_cpp_pow_inline): new, but real similar to
88 hpux10_cpp_pow_inline. Not similar enough.
89 (solaris_mutex_init): renamed. PTHREAD_*_INITIALIZER is a problem for
90 all Solaris versions. This fix patches MUTEX and COND initializers,
91 the RWLOCK one will wait for someone to complain. For now, anyway.
92 (uw7_byteorder_fix): It was looking for the byteorder.h file in the
95 2001-06-27 Stan Shebs <shebs@apple.com>
97 * objc/objc-act.c (handle_impent): Rewrite to be more portable
98 and to use ASM_DECLARE_CLASS_REFERENCE.
99 * config/darwin.h (ASM_DECLARE_CLASS_REFERENCE): Rename from
100 undocumented DECLARE_CLASS_REFERENCE, add file argument.
101 * doc/tm.texi (ASM_DECLARE_CLASS_REFERENCE): Document.
103 Wed Jun 27 18:01:09 2001 Jeffrey A Law (law@cygnus.com)
105 * simplify-rtx.c (simplify_rtx): Canonicalize commutative expressions
106 by putting complex operands first and constants second.
108 2001-06-27 Gabriel Dos Reis <gdr@codesourcery.com>
110 * diagnostic.h: Add documentation. Make macros polymorphic.
111 * diagnostic.c (ideal_line_wrap_cutoff): Remove
112 definition. Replace with diagnostic_line_cutoff.
113 (prefixing_policy): Remove. Replace with diagnostic_prefixing_rule.
115 2001-06-27 Joseph S. Myers <jsm28@cam.ac.uk>
117 * doc/c-tree.texi, doc/contrib.texi, doc/cpp.texi,
118 doc/cppinternals.texi, doc/extend.texi, doc/gcc.texi,
119 doc/gcov.texi, doc/install-old.texi, doc/install.texi,
120 doc/invoke.texi, doc/md.texi, doc/rtl.texi, doc/tm.texi: Replace
121 . at end of sentences preceded by a capital letter with @..
123 2001-06-26 Daniel Berlin <dan@cgsoftware.com>
125 * doc/invoke.texi: Add description of max-gcse-passes param.
127 * gcse.c (gcse_main): Use MAX_GCSE_PASSES instead of MAX_PASSES.
128 (MAX_PASSES): Remove now unneeded macro.
130 * params.h (MAX_GCSE_PASSES): New macro, to get parameter value of
131 max-gcse-passes param.
133 * params.def (PARAM_MAX_GCSE_PASSES): New parameter, controlling
134 maximum number of GCSE passes to run. Defaults to 1 (which is what
135 MAX_PASSES in gcse.c used to be).
137 2001-06-27 Neil Booth <neil@cat.daikokuya.demon.co.uk>
139 * system.h (TARGET_ESC): Move to ...
140 * defaults.h (TARGET_ESC): ... here.
141 * target-def.h (TARGET_VALID_DECL_ATTRIBUTE,
142 TARGET_VALID_TYPE_ATTRIBUTE): Default to a no-op handler.
143 * tree.c (default_valid_attribute_p): New.
144 (valid_machine_attribute): Handlers can not be NULL.
145 * tree.h (default_valid_attribute_p): New.
146 * doc/tm.texi: Document TARGET_ESC.
147 * cp/decl2.c (import_export_class): Update.
149 2001-06-26 Bruce Korb <bkorb@gnu.org>
151 * gcc/fixinc/fixincl.c(initialize): In very strict ANSI, you cannot
152 use preprocessing directives inside a string literal. Fixed.
154 2001-06-26 Jim Wilson <wilson@redhat.com>
156 * doc/tm.texi (MAX_LONG_DOUBLE_TYPE_SIZE, INTEL_EXTENDED_IEEE_FORMAT):
159 2001-06-27 Joseph S. Myers <jsm28@cam.ac.uk>
161 * doc/cpp.texi, doc/cppinternals.texi, doc/extend.texi,
162 doc/gcc.texi, doc/install.texi, doc/invoke.texi, doc/md.texi,
163 doc/tm.texi: Use @: where necessary when a full stop does not end
166 2001-06-27 Joseph S. Myers <jsm28@cam.ac.uk>
168 * doc/gcc.texi, doc/install.texi, doc/invoke.texi: Remove trailing
171 2001-06-26 Joseph S. Myers <jsm28@cam.ac.uk>
173 * doc/c-tree.texi, doc/cpp.texi, doc/extend.texi, doc/gcc.texi,
174 doc/install.texi, doc/invoke.texi, doc/objc.texi, doc/rtl.texi,
175 doc/tm.texi: Use two spaces after ends of sentences.
177 2001-06-26 Daniel Berlin <dan@cgsoftware.com>
179 * toplev.c (display_help): Fix param thinko.
180 * Makefile.in: Fix params.h dependencies.
182 2001-06-26 Gabriel Dos Reis <gdr@codesourcery.com>
184 * toplev.c (decode_f_option): Adjust setting.
185 (toplev_main): Call diagnostic_initialize. Remove call to
186 reshape_diagnostic_buffer._
188 * diagnostic.h (struct output_buffer): Add new field format_decoder.
189 (diagnostic_format_decoder): New macro.
190 (diagnostic_prefixing_rule): Likewise.
191 (diagnostic_line_cutoff): Likewise.
192 (set_message_prefixing_rule): Remove.
194 * diagnostic.c (lang_printer): Remove.
195 (diagnostic_message_length_per_line): Likewise.
196 (current_prefixing_rule): Likewise.
197 (initialize_diagnostics): Rename to...
198 (diagnostic_initialize): ...this. Tweak.
199 (default_initialize_buffer): Remove.
200 (reshape_diagnostic_buffer): Likewise.
201 (init_output_buffer): Adjust prefixing rule setting.
202 (output_format): Use format_decoder from the output_buffer.
204 * c-lang.c (c_init): Adjust tree formatter setting.
206 2001-06-26 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
208 * config/i386/sol2.h (CPP_SPEC): Pass -P for .S files.
210 2001-06-26 Neil Booth <neil@daikokuya.demon.co.uk>
212 * Makefile.in (TARGET_H, TARGET_DEF_H): New.
213 (c-decl.o, tree.o, c-typeck.o, $(out_object_file)): Update.
214 * c-decl.c (duplicate_decls): Use function pointer.
215 * c-typeck.c (common_type): Similarly.
216 * tree.c (valid_machine_attribute): Similarly.
217 (merge_machine_type_attributes): Rename merge_type_attributes.
218 (merge_machine_decl_attributes): Rename merge_decl_attributes.
219 (merge_dllimport_decl_attributes): New function.
220 * tree.h (merge_machine_type_attributes): Rename merge_type_attributes.
221 (merge_machine_decl_attributes): Rename merge_decl_attributes.
222 (merge_dllimport_decl_attributes): New prototype.
227 * doc/gcc.texi, doc/tm.texi: Update documentation.
229 cp: Make-lang.in: Update dependencies.
230 * spew.c: Include target.h.
231 (duplicate_decls): Call target function.
232 * decl2.c: include target.h
233 (import_export_class): Use existence of target function pointer.
234 * typeck.c: Include target.h.
235 (qualify_type_recursive): Rename variable. Call target function.
236 (type_after_usual_arithmetic_conversions): Similarly.
237 (common_type): Similarly.
239 config: * 1750a/1750a.c, a29k/29k.c, alpha/alpha.c, arc/arc.c, arm/arm.c,
240 avr/avr.c, c4x/c4x.c, clipper/clipper.c, convex/convex.c,
241 d30v/d30v.c, dsp16xx/dsp16xx.c, elxsi/elxsi.c, fr30/fr30.c,
242 i370/i370.c, i386/i386.c, i860/i860.c, i960/i960.c, ia64/ia64.c,
243 m32r/m32r.c, m68hc11/m68hc11.c, m68k/m68k.c, m88k/m88k.c,
244 mips/mips.c, mn10200/mn10200.c, mn10300/mn10300.c, ns32k/ns32k.c,
245 pa/pa.c, pdp11/pdp11.c, pj/pj.c, romp/romp.c, rs6000/rs6000.c,
246 sh/sh.c, sparc/sparc.c, v850/v850.c, vax/vax.c, we32k/we32k.c)
247 : Include target.h and target-def.h. Define target.
249 * arc/arc-protos.h (arc_valid_machine_decl_attribute): Remove.
250 * arc/arc.c (arc_valid_machine_decl_attribute): Rename
251 arc_valid_decl_attribute, make static.
252 * arc/arc.h (VALID_MACHINE_TYPE_ATTRIBUTE): Remove.
253 * arm/arm-protos.h (arm_valid_machine_decl_attribute,
254 arm_valid_type_attribute_p, arm_pe_valid_machine_decl_attribute,
255 arm_pe_merge_machine_decl_attributes): Remove.
256 * arm/arm.c (arm_valid_machine_decl_attribute_p): Rename
257 arm_valid_decl_attribute_p, make static.
258 (arm_pe_valid_decl_attribute_p): Move from pe.c.
259 * arm/pe.c (arm_pe_valid_machine_decl_attribute_p): Move to arm.c.
260 (arm_pe_merge_machine_decl_attributes): Move to tree.c.
261 * arm/arm.h (VALID_MACHINE_TYPE_ATTRIBUTE): Remove.
262 * arm/coff.h (VALID_MACHINE_DECL_ATTRIBUTE): Remove.
263 * arm/elf.h (VALID_MACHINE_DECL_ATTRIBUTE): Remove.
264 * arm/pe.h (TARGET_DLLIMPORT_DECL_ATTRIBUTES): New.
265 (VALID_MACHINE_TYPE_ATTRIBUTE, VALID_MACHINE_DECL_ATTRIBUTE): Remove.
266 * avr/avr-protos.h (valid_machine_type_attribute,
267 valid_machine_decl_attribute): Remove.
268 * avr/avr.c (valid_machine_type_attribute,
269 valid_machine_decl_attribute): Rename and make static.
270 * avr/avr.h (VALID_MACHINE_TYPE_ATTRIBUTE,
271 VALID_MACHINE_DECL_ATTRIBUTE): Remove.
272 * c4x/c4x-protos.h (c4x_valid_type_attribute_p): Remove.
273 * c4x/c4x.c (c4x_valid_type_attribute_p): Make static.
274 * c4x/c4x.h (VALID_MACHINE_TYPE_ATTRIBUTE): Remove.
275 * d30v/d30v.h: Remove obsolete comments.
276 * h8300/h8300-protos.h (h8300_valid_machine_decl_attribute): Remove.
277 * h8300/h8300.c (h8300_valid_machine_decl_attribute): Rename, make
279 * h8300/h8300.h (VALID_MACHINE_DECL_ATTRIBUTE): Remove.
280 * i386/cygwin.h (TARGET_DLLIMPORT_DECL_ATTRIBUTES): Define.
281 (i386_pe_merge_decl_attributes, MERGE_MACHINE_DECL_ATTRIBUTES,
282 i386_pe_valid_type_attributes_p): Remove.
283 * i386/i386-protos.h (ix86_valid_decl_attribute_p,
284 ix86_valid_type_attribute_p): Remove.
285 * i386/i386.c (ix86_valid_decl_attribute_p): Remove.
286 (ix86_valid_type_attribute_p): Make static.
287 * i386/i386.h (VALID_MACHINE_DECL_ATTRIBUTE,
288 VALID_MACHINE_TYPE_ATTRIBUTE): Remove.
289 * i386/winnt.c (i386_pe_merge_decl_attributes): Move to tree.c.
290 * ia64/ia64-protos.h (ia64_valid_type_attribute): Remove.
291 * ia64/ia64.c (ia64_valid_type_attribute): Make static.
292 * ia64/ia64.h (VALID_MACHINE_TYPE_ATTRIBUTE): Remove.
293 * m32r/m32r-protos.h (m32r_valid_machine_decl_attribute): Remove.
294 * m32r/m32r.c (m32r_valid_decl_attribute): Make static.
295 * m32r/m32r.h (VALID_MACHINE_DECL_ATTRIBUTE): Remove.
296 * m68hc11/m68hc11-protos.h (m68hc11_valid_decl_attribute_p,
297 m68hc11_valid_type_attribute_p): Remove.
298 * m68hc11/m68hc11.c (m68hc11_valid_decl_attribute_p): Remove.
299 (m68hc11_valid_type_attribute_p): Make static.
300 * m68hc11/m68hc11.h (VALID_MACHINE_DECL_ATTRIBUTE,
301 VALID_MACHINE_TYPE_ATTRIBUTE): Remove.
302 * mcore/mcore-protos.h (mcore_valid_machine_decl_attribute,
303 mcore_merge_machine_decl_attribute): Remove.
304 * mcore/mcore.c (mcore_valid_machine_decl_attribute): Rename,
306 (mcore_merge_machine_decl_attributes): Move to tree.c.
307 * mcore/mcore.h (VALID_MACHINE_DECL_ATTRIBUTE,
308 VALID_MACHINE_TYPE_ATTRIBUTE): Remove.
309 (TARGET_DLLIMPORT_DECL_ATTRIBUTES): Define.
310 * ns32k/ns32k-protos.h (ns32k_valid_decl_attribute_p,
311 ns32k_valid_type_attribute_p): Remove.
312 * ns32k/ns32k.c (ns32k_valid_decl_attribute_p): Remove.
313 (ns32k_valid_type_attribute_p): Make static.
314 * ns32k/ns32k.h (VALID_MACHINE_DECL_ATTRIBUTE,
315 VALID_MACHINE_TYPE_ATTRIBUTE): Remove.
316 * rs6000/rs6000-protos.h (rs6000_valid_decl_attribute_p,
317 rs6000_valid_type_attribute_p): Remove.
318 * rs6000/rs6000.c (rs6000_valid_decl_attribute_p): Remove.
319 (rs6000_valid_type_attribute_p): Make static.
320 * rs6000/rs6000.h (VALID_MACHINE_DECL_ATTRIBUTE,
321 VALID_MACHINE_TYPE_ATTRIBUTE): Remove.
322 * sh/sh-protos.h (sh_valid_machine_decl_attribute): Remove.
323 * sh/sh.c (sh_valid_machine_decl_attribute): Rename, make static.
324 * sh/sh.h (VALID_MACHINE_DECL_ATTRIBUTE): Remove.
325 * v850/v850-protos.h (v850_valid_machine_decl_attribute): Remove.
326 * v850/v850.c (v850_valid_machine_decl_attribute): Rename, make static.
327 * v850/v850.h (VALID_MACHINE_DECL_ATTRIBUTE): Remove.
329 2001-06-26 Vladimir Makarov <vmakarov@toke.toronto.redhat.com>
331 * glimits.h (USHRT_MAX): Use unsigned suffix if int can not hold
334 2001-06-26 Gabriel Dos Reis <gdr@codesourcery.com>
336 * diagnostic.h (struct diagnostic_context): Add new field.
337 (lang_diagnostic_starter, lang_diagnostic_finalizer): Remove
339 (global_dc): Declare.
340 * diagnostic.c (global_diagnostic_context): New variable.
341 (global_output_buffer): Remove.
343 (lang_diagnostic_starter, lang_diagnostic_finalizer): Remove
345 (initialize_diagnostics): Adjust initialization.
346 (set_diagnostic_context): Adjust setting.
348 2001-06-26 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
350 * config/mips/iris5.h (UNALIGNED_INT_ASM_OP,
351 UNALIGNED_SHORT_ASM_OP): Define.
352 * config/mips/iris6.h (UNALIGNED_INT_ASM_OP,
353 UNALIGNED_SHORT_ASM_OP): Undef.
355 Tue Jun 26 12:40:12 CEST 2001 Jan Hubicka <jh@suse.cz>
357 * i386.md (float_truncate splitter, and to mov splitters): Add
358 reload_completed; fix operand predicate.
360 * haifa-sched.c (sched_init): Do not split insns.
361 * toplev.c (rest_of_compilation): Call split_all_insns before
362 sched1 pass; simplify condition of post-reload splitter;
363 call split_all_insn before sched2 pass.
365 2001-06-26 Gabriel Dos Reis <gdr@codesourcery.com>
367 * diagnostic.h (diagnostic_prefixing_rule_t): New enum type.
368 (set_message_prefixing_rule): Adjust prototype.
369 * diagnostic.c (current_prefixing_rule): Adjust type.
371 2001-06-26 Neil Booth <neil@daikokuya.demon.co.uk>
373 * defaults.h: Default escape sequences to ASCII.
374 * config/i370/i370.h: Adjust for ASCII default.
375 * config/1750a/1750a.h: Remove escape sequence definitions.
376 * config/a29k/a29k.h: Similarly.
377 * config/alpha/alpha.h: Similarly.
378 * config/arc/arc.h: Similarly.
379 * config/arm/arm.h: Similarly.
380 * config/avr/avr.h: Similarly.
381 * config/c4x/c4x.h: Similarly.
382 * config/clipper/clipper.h: Similarly.
383 * config/convex/convex.h: Similarly.
384 * config/d30v/d30v.h: Similarly.
385 * config/dsp16xx/dsp16xx.h: Similarly.
386 * config/elxsi/elxsi.h: Similarly.
387 * config/fr30/fr30.h: Similarly.
388 * config/h8300/h8300.h: Similarly.
389 * config/i386/i386.h: Similarly.
390 * config/i860/i860.h: Similarly.
391 * config/i960/i960.h: Similarly.
392 * config/ia64/ia64.h: Similarly.
393 * config/m32r/m32r.h: Similarly.
394 * config/m68hc11/m68hc11.h: Similarly.
395 * config/m68k/m68k.h: Similarly.
396 * config/m88k/m88k.h: Similarly.
397 * config/mcore/mcore.h: Similarly.
398 * config/mips/mips.h: Similarly.
399 * config/mn10200/mn10200.h: Similarly.
400 * config/mn10300/mn10300.h: Similarly.
401 * config/ns32k/ns32k.h: Similarly.
402 * config/pa/pa.h: Similarly.
403 * config/pdp11/pdp11.h: Similarly.
404 * config/pj/pj.h: Similarly.
405 * config/romp/romp.h: Similarly.
406 * config/rs6000/rs6000.h: Similarly.
407 * config/sh/sh.h: Similarly.
408 * config/sparc/sparc.h: Similarly.
409 * config/v850/v850.h: Similarly.
410 * config/vax/vax.h: Similarly.
411 * config/we32k/we32k.h: Similarly.
412 * doc/tm.texi: Update documentation.
414 2001-06-26 Gabriel Dos Reis <gdr@merlin.codesourcery.com>
416 * diagnostic.c (digit_buffer): Remove as global. Move to...
417 * diagnostic.h (struct output_buffer): ... here.
418 * diagnostic.c (output_formatted_integer): Adjust use of digit_buffer.
420 2001-06-25 Steve Ellcey <sje@cup.hp.com>
422 * config.gcc (ia64*-*-hpux*): Add ia64/hpux_longdouble.h to tm_file.
423 Define tmake_file to include ia64/t-hpux.
424 * real.c (INTEL_EXTENDED_IEEE_FORMAT): Test for value instead of
425 testing to see if it is defined.
426 * real.h (INTEL_EXTENDED_IEEE_FORMAT): Likewise. Default to 0 if
428 * config/ia64/hpux_longdouble.h: New.
429 * config/ia64/ia64.c (hfa_element_mode): Add comment about incorrect
430 handling of long doubles.
431 (ia64_function_arg, ia64_function_value): Add checks for TFmode
432 and INTEL_EXTENDED_IEEE_FORMAT.
433 * config/ia64/ia64.h (INTEL_EXTENDED_IEEE_FORMAT): Define to one.
434 (HARD_REGNO_NREGS, HARD_REGNO_MODE_OK, LIBCALL_VALUE): Add checks for
435 TFmode and INTEL_EXTENDED_IEEE_FORMAT.
436 * config/ia64/ia64.md (all TFmode patterns): Test
437 INTEL_EXTENDED_IEEE_FORMAT in condition.
438 (floatdidf2, floatdisf2): New, for !INTEL_EXTENDED_IEEE_FORMAT.
439 * config/ia64/quadlib.c: New.
440 * config/ia64/t-hpux: New.
441 * config/i386/i386.h (INTEL_EXTENDED_IEEE_FORMAT): Define to one.
443 2001-06-25 Jim Wilson <wilson@redhat.com>
445 * config/i960/t-960bare (i960-c.o): Add missing header dependencies.
446 * config/i960/t-vxworks960: Likewise.
448 2001-06-25 Dale Johannesen <dalej@apple.com>
450 * bitmap.c (bitmap_last_bit_set): Fix a non-c89 usage (null actual
453 Mon Jun 25 11:10:51 CEST 2001 Jan Hubicka <jh@suse.cz>
455 * i386.md (movsi_insv_1, movsi_insv_1_rex64): Fix constraints.
457 2001-06-25 Joseph S. Myers <jsm28@cam.ac.uk>
459 * doc/c-tree.texi, doc/contrib.texi, doc/extend.texi,
460 doc/gcc.texi, doc/gcov.texi, doc/install.texi, doc/invoke.texi,
461 doc/md.texi, doc/rtl.texi, doc/tm.texi: Be more consistent about
462 the use of "GCC" and related terms.
463 * doc/gcc.1, doc/gcov.1: Regenerate.
465 2001-06-24 Joseph S. Myers <jsm28@cam.ac.uk>
467 * doc/extend.texi, doc/gcc.texi, doc/install-old.texi,
468 doc/invoke.texi, doc/md.texi, doc/rtl.texi, doc/tm.texi: Remove
471 Sun Jun 24 21:21:49 CEST 2001 Jan Hubicka <jh@suse.cz>
473 * (movsi_insv_1, movsi_insv_1_rex64): Allow immediate operand.
475 2001-06-24 Richard Henderson <rth@redhat.com>
477 * builtins.c (expand_builtin_expect_jump): Disable if the
478 expression can't be re-evaluated.
480 2001-06-24 Nick Clifton <nickc@cambridge.redhat.com>
482 * config/arm/arm.c (arm_compute_save_reg_mask): For FIQ interrupt
483 handlers examine register r0-r7, for other interrupt handlers
484 examine r0-r12. If the interrupt handler is not a leaf function
485 save all call clobbered registers.
486 (arm_output_epilogue): If the prologue has pushed the IP register,
488 (Arm_expand_prologue): For interrupt functions that need the frame
489 pointer, push the IP register before it is corrupted.
491 * config/arm/arm.h (ARM_SIGN_EXTEND): Fix compile time warnings
492 about the use of signed and unsigned quantities in a conditional.
494 2001-06-23 Richard Henderson <rth@redhat.com>
496 * config/alpha/crtfastmath.c: New file.
497 * config/alpha/t-crtfm: New file.
498 * config/alpha/elf.h (ENDFILE_SPEC): Use crtfastmath.o.
499 * config/alpha/osf.h (ENDFILE_SPEC): Likewise.
500 * config/alpha/t-crtbe (EXTRA_PARTS): Add pieces defined here.
501 * config.gcc (alpha-{linux,freebsd,netbsd,osf}): Use alpha/t-crtfm;
502 do not set extra_parts here.
504 2001-06-24 Joseph S. Myers <jsm28@cam.ac.uk>
506 * doc/install-old.texi: Remove more documentation of configure
508 * doc/install.texi: Add it here.
510 Sat Jun 23 19:40:05 CEST 2001 Jan Hubicka <jh@suse.cz>
512 * i386-protos.h (emit_i387_cw_initialization): Declare.
513 * i386.md (movsi_insv_1): Remove '*'.
514 (fix_trunc?f?i2): Revamp to use control word parameters.
515 (fix_trunc?i_1): Likewise; update splitters.
516 (fix splitter): Remove.
517 * i386.c (MAX_386_STACK_LOCALS): set to 3.
518 (emit_i387_cw_initialization): New function.
519 (output_fix_trunc): Do not initialize control word;
520 kill dead code; simplify.
522 2001-06-23 Neil Booth <neil@cat.daikokuya.demon.co.uk>
524 * cppmacro.c (make_string_token): Avoid warning.
525 (cpp_macro_definition): Prepend the macro name. Update
527 * cppmain.c (cb_define, dump_macro): Update for changes
528 to cpp_macro_definition.
530 Sat Jun 23 10:20:03 CEST 2001 Jan Hubicka <jh@suse.cz>
532 * flow.c (attempt_auto_inc, try_pre_increment_1): Fix typo.
534 Sat Jun 23 01:23:59 CEST 2001 Jan Hubicka <jh@suse.cz>
536 * flow.c (mark_set_1, attempt_auto_inc, mark_used_reg,
537 try_pre_increment_1): compute REG_FREQ using bb->frequency.
539 * regclass.c (loop_cost): Kill.
540 (frequency): New global variable.
541 (record_operand_costs): Replace loop_cost by frequency.
542 (scan_one_insn): Likewise.
543 (regclass): Likewise; set frequency according to bb->frequency.
545 * flow.c (split_edge): Set frequency.
547 Sat Jun 23 01:16:42 CEST 2001 Jan Hubicka <jh@suse.cz>
549 * predict.c (block_info_def): Add nvisited.
550 (propagate_freq): Count nvisited; re-queue delayed blocks; handle
553 * flow.c (dump_edge_info): Dump the probability of edge.
554 (combine_predictions_for_insn): Dump the basic block.
556 2001-06-22 Joseph S. Myers <jsm28@cam.ac.uk>
558 * doc/gcc.texi: Update documentation of source files of C
561 2001-06-22 Richard Henderson <rth@redhat.com>
563 * doc/invoke.texi (-funsafe-math-optimizations): Document its
564 possible effects at link time.
566 2001-06-22 Diego Novillo <dnovillo@redhat.com>
568 * basic-block.h (dump_edge_info): Declare.
569 (clear_edges): Declare.
570 (mark_critical_edges): Declare.
571 * flow.c (dump_edge_info): Remove static declaration.
572 (clear_edges): Ditto.
573 (mark_critical_edges): Ditto.
574 (free_basic_block_vars): Only clear edges and free basic block
575 array if basic_block_info is not NULL.
576 * ssa.c (compute_dominance_frontiers): Remove static declaration.
577 * ssa.h (compute_dominance_frontiers): Declare.
579 2001-06-22 Toshiyasu Morita (toshiyasu.morita@hsa.hitachi.com)
581 * predict.c: (expected_value_to_br_prob): Check for const_true_rtx
582 instead of const1_rtx for true case.
584 2001-06-22 David Mosberger <davidm@hpl.hp.com>
586 * config/ia64/crtfastmath.c: New file.
587 * config/ia64/t-ia64 (EXTRA_PARTS): Include it.
588 * config/ia64/linux.h (ENDFILE_SPEC): New.
590 2001-06-22 Toshiyasu Morita <toshiyasu.morita@hsa.hitachi.com>
592 * config/h8300/h8300.c (asm_file_start): Remove reference to
595 2001-06-22 Joseph S. Myers <jsm28@cam.ac.uk>
597 * c-common.c (verify_tree): Check for x being NULL.
598 * doc/c-tree.texi: Document COMPOUND_BODY of an empty
602 2001-06-22 DJ Delorie <dj@redhat.com>
604 * config/arm/arm.h (struct machine_function): Remove ra_rtx.
605 * config/arm/arm.c (arm_mark_machine_status): Remove ra_rtx.
606 (arm_return_addr): Use get_hard_reg_initial_val et al.
607 * config/d30v/d30v.h (struct machine_function): Remove ra_rtx.
608 * config/d30v/d30v.c (d30v_mark_machine_status): Remove ra_rtx.
609 (d30v_return_addr): Use get_hard_reg_initial_val et al.
610 * config/rs6000/rs6000.h (struct machine_function): Remove ra_rtx.
611 * config/rs6000/rs6000.c (rs6000_override_options): Don't set
613 (rs6000_mark_machine_status): Remove.
614 (rs6000_return_addr): Use get_hard_reg_initial_val.
615 (rs6000_ra_ever_killed): Use has_hard_reg_initial_val.
616 * config/v850/v850.h (INIT_EXPANDERS): Delete.
617 * config/v850/v850.c (struct machine_function): Delete.
618 (v850_init_machine_status): Delete.
619 (v850_mark_machine_status): Delete.
620 (v850_free_machine_status): Delete.
621 (v850_return_addr): Use get_hard_reg_initial_val.
622 (v850_init_expanders): Delete.
624 Fri Jun 22 19:20:59 CEST 2001 Jan Hubicka <jh@suse.cz>
626 * predict.c (estimate_bb_frequencies): Do not handle conditional
627 jumps jumping to fallthru basic block as conditional jumps.
629 Fri Jun 22 19:11:28 CEST 2001 Jan Hubicka <jh@suse.cz>
631 * regs.h (struct reg_info_def): Add freq field.
632 (REG_N_REFS): Update comment.
634 * regclass.c (scan_one_insn): Update REG_FREQ.
635 * flow.c (mark_set_1): Update REG_FREQ, make REG_N_SETS unweighted.
636 (attempt_auto_inc): Likewise.
637 (mark_used_reg): Likewise.
638 (try_pre_increment_1): Likewise.
639 * local-alloc.c (struct qty): Add freq field.
640 (alloc_qty): Set freq.
641 (update_equiv_regs): Set REG_FREQ.
642 (QTY_CMP_PRI): Use freq.
643 (combine_regs): Update qty->freq.
644 * global.c (struct allocno): Update comment for n_refs;
646 (local_reg_freq): New array.
647 (global_alloc): Update freq field;
648 allocate and initialize local_reg_freq.
649 (allocno_compare): Use freq field.
650 (find_reg): Likewise.
651 * reload1.c (count_pseudo): Use freq isntead of n_refs.
652 (count_spilled_pseudo): Likewise.
654 * tm.texi (GCOV_TYPE_SIZE): Document.
655 * basic-block.h (gcov_type): Define.
656 (struct edge_def): Use gcov_type for count field.
657 (struct basic_block_def): Likewise.
658 * defaults.h (GCOV_TYPE_SIZE): Define.
659 * final.c (end_final): Use GCOV_TYPE_SIZE.
660 * flow.c (dump_edge_info, dump_flow_info, dump_bb): Print count fields
661 using HOST_WIDEST_INT_PRINT_DEC.
662 * gcov-io.h (__fetch_gcov_type, __store_gcov_type, __read_gcov_type,
663 __write_gcov_type): New.
664 (store_long): Remove.
665 * gcov.c (gcov_type): Set default.
666 (struct adj_list): Use gcov_type for arc_count.
667 (bb_info): Use gcov_type for succ_count, pred_count and exec_count.
668 (create_program_flow_graph): Read arc_count properly.
669 (solve_program_flow_graph): 'total' is gcov_type.
670 (output_data): Line_counts is gcov_type, print it properly.
671 * libgcc2.c (struct bb): Counts is gcov_type.
672 (__bb_exit_func): Use __read_gcov_type and __write_gcov_type.
673 * profile.c (LONG_TYPE_SIZE, LONG_LONG_TYPE_SIZE): Set default.
674 (GCOV_TYPE_SIZE): Define.
675 (struct bb_info): succ_count and pred_count is gcov_type.
676 (compute_branch_probabilities): Use __read_gcov_type,
677 print read edges to the dump file.
678 (total): Is gcov_type.
679 (gen_edge_profiler): Use GCOV_TYPE_SIZE.
681 2001-06-14 Andrew Haley <aph@cambridge.redhat.com>
683 * optabs.c (emit_libcall_block): When using non-call exceptions,
684 don't mark libcalls never throwing.
686 2001-06-21 Stan Shebs <shebs@apple.com>
688 * objc/objc-act.c (hash_init): Use xcalloc.
690 2001-06-21 Richard Henderson <rth@redhat.com>
692 * flow.c (entry_exit_blocks): Initialize frequency.
693 (split_block): Copy it.
694 (dump_flow_info): Dump it.
696 Thu Jun 21 22:15:10 2001 J"orn Rennecke <amylaar@redhat.com>
698 * sh.c (barrier_align): Also recognize branch-around-a-jump-sequence
699 from machine-depedent_reorg for purposes of alignment supression
700 when no delay slot insn has been added.
702 2001-06-21 Neil Booth <neil@cat.daikokuya.demon.co.uk>
704 * cppmacro.c (make_string_token): Null terminate.
706 2001-06-21 DJ Delorie <dj@redhat.com>
708 * config/alpha/alpha.h (struct machine_function): Remove.
709 * config/alpha/alpha.c (integrate.h): Include.
710 (override_options): Don't set up machine_status hooks.
711 (alpha_init_machine_status): Remove.
712 (alpha_mark_machine_status): Remove.
713 (alpha_free_machine_status): Remove.
714 (alpha_return_addr): Use get_hard_reg_initial_val.
715 (alpha_gp_save_rtx): Likewise.
716 (alpha_ra_ever_killed): Use has_hard_reg_initial_val.
718 2001-06-20 Aldy Hernandez <aldyh@redhat.com>
720 * config/sh/sh.md (interrupt_function): Use
721 current_function_interrupt.
722 (define_delay): Schedule in delay slot if TARGET_SH3, even if it is
723 an interrupt function.
725 * config/sh/sh.h (current_function_interrupt): Define extern.
727 * config/sh/sh.c (current_function_interrupt): New global.
728 (sh_expand_prologue): Set current_function_interrupt.
730 2001-06-21 Phil Edwards <pme@sources.redhat.com>
732 * doc/install.texi: Add 'c' to list of --enable-languages choices.
734 2001-06-21 DJ Delorie <dj@redhat.com>
736 * integrate.c (mark_hard_reg_initial_vals): Check for NULL.
738 * integrate.c (ggc.h): Include.
739 (initial_value_pair, initial_value_struct,
740 setup_initial_hard_reg_value_integration): Add prototypes.
741 (expand_inline_function): Call
742 setup_initial_hard_reg_value_integration.
743 (has_func_hard_reg_initial_val, get_func_hard_reg_initial_val,
744 get_hard_reg_initial_val, has_hard_reg_initial_val): New functions
745 to keep track of values present at the start of a function.
746 (mark_hard_reg_initial_vals): New, for gc.
747 (setup_initial_hard_reg_value_integration): New. Sets up pseudo
748 mappings for initial values.
749 (emit_initial_value_sets): New. Emits code to set initial value
751 * integrate.h: Add prototypes for new functions.
752 * function.h (struct function): Add hard_reg_initial_vals field.
753 * function.c (integrate.h): Include.
754 (mark_function_status): Call
755 mark_hard_reg_initial_vals.
756 * toplev.c (integrate.h): Include.
757 (rest_of_compilation): Call emit_initial_value_sets.
759 2001-06-21 Stan Shebs <shebs@apple.com>
761 * doc/contrib.texi, doc/cpp.texi, doc/cppinternals.texi,
762 doc/extend.texi, doc/gcc.texi, doc/install.texi, doc/invoke.texi,
763 doc/objc.texi, doc/tm.texi: Use the correct name "Objective-C"
764 everywhere instead of "Objective C".
766 2001-06-21 Joseph S. Myers <jsm28@cam.ac.uk>
768 * doc/c-tree.texi, doc/contrib.texi, doc/extend.texi,
769 doc/gcc.texi, doc/install-old.texi, doc/install.texi,
770 doc/invoke.texi, doc/rtl.texi: Consistently use "front end" and
771 "back end" as nouns and "front-end" and "back-end" as adjectives.
773 Wed Jun 20 21:53:35 CEST 2001 Jan Hubicka <jh@suse.cz>
775 * predict.c (estimate_probability): Fix loop bounds.
777 Wed Jun 20 19:10:48 CEST 2001 Jan Hubicka <jh@suse.cz>
779 * toplev.c (rest_of_compilation): Run mark_constant_function
782 Wed Jun 20 19:08:18 CEST 2001 Jan Hubicka <jh@suse.cz>
784 * predict.c (estimate_loops_at_level, propagate_freq
785 estimate_bb_frequencies, count_to_freqs): New functions.
786 (estimate_probability): Call estimate_bb_frequencies.
787 * basic-block.h (basic_block_def): Add field "freq".
788 (BB_FREQ_MAX): New constant.
790 Wed Jun 20 17:02:50 2001 J"orn Rennecke <amylaar@redhat.com>
792 * sh.c (barrier_align): Don't ask for alignment when seeing a
793 branch-around-a-jump from machine_dependent_reorg.
795 Wed Jun 20 08:35:02 2001 Jeffrey A Law (law@cygnus.com)
797 * ssa.c (rename_block): Update parameter to remove_phi_alternative
798 (convert_from_ssa): Do create REG_DEAD and REG_UNUSED notes when
799 re-running life analysis.
801 2001-06-20 Stan Shebs <shebs@apple.com>
803 * objc/objc-act.c (hash_init): Assume xmalloc always succeeds,
804 also use memset to clear the hash tables.
805 (hash_enter): Assume xmalloc always succeeds.
806 (hash_add_attr): Ditto.
807 (continue_class): Ditto.
809 2001-06-20 Michael Meissner <meissner@redhat.com>
811 * builtins.c (predict.h): Include.
812 (expand_builtin_expect): Update comment.
813 (expand_builtin_expect_jump): New function to expand
814 __builtin_expect inside of a conditional jump expansion.
816 * expr.c (do_jump): Special case __builtin_expect (<test>, 0) and
817 __builtin_expect (<test>, 1).
819 * Makefile.in (builtins.o): Depend on $(PREDICT_H).
821 * rtl.h (expand_builtin_expect_jump): Add prototype.
823 2001-06-19 Geoffrey Keating <geoffk@redhat.com>
825 * doc/rtl.texi (Machine Modes): Correct description of
826 floating-point modes on machines with non-8-bit bytes.
828 2001-06-19 Bernd Schmidt <bernds@redhat.com>
830 * regmove.c (optimize_reg_copy_3): Do nothing if previous insn
831 carries a REG_EQUIV note. If it carries REG_EQUAL, delete the
834 Tue Jun 19 07:53:52 2001 Jeffrey A Law (law@cygnus.com)
836 * ssa.c (remove_phi_alternative): Remove declaration. No longer
837 static. Second argument is a pointer to a basic block structure,
838 not a basic block index.
839 (convert_to_ssa): Do not remove dead code.
840 (convert_from_ssa): Do not remove dead code to create death notes.
841 * ssa.h (remove_phi_alternative): Declare.
843 * flow.c (delete_unreachable_blocks): Fix patch error in
844 previous change (call to find_unreachable_blocks was lost).
846 * ssa.c (ssa_uses): Remove definition.
847 (apply_delayed_renames): Don't grow ssa_uses.
848 (rename_block): Remove comment related to ssa_uses.
849 (rename_registers): Do not initialize ssa_uses.
850 (convert_from_ssa): Do not free ssa_uses.
852 * ssa-dce.c: Renamed from dce.c.
853 * Makefile.in (OBJS): Replace dce.o with ssa-dce.o
854 (dependencies): Replace dce.c with ssa-dce.c and dce.o with
857 2001-06-19 Eric Christopher <echristo@redhat.com>
859 * emit-rtl.c (gen_lowpart_common): Do not assume that SFmode
860 and DFmode are UNITS_PER_WORD and 2*UNITS_PER_WORD. Use
861 GET_MODE_BITSIZE instead of GET_MODE_SIZE/UNITS_PER_WORD.
863 Tue Jun 19 01:52:27 2001 J"orn Rennecke <amylaar@redhat.com>
865 * sh.c (output_branch): Delete bogus code.
867 * sh.c (initial_elimination_offset):
868 Fix FROM == RETURN_ADDRESS_POINTER_REGNUM case.
870 Mon Jun 18 12:50:49 2001 Jeffrey A Law (law@cygnus.com)
872 * flow.c (find_unreachable_blocks): New function.
873 (delete_unreachable_blocks): Use find_unreachable_blocks.
874 * basic-block.h (find_unreachable_blocks): Declare.
876 * dce.c (eliminate_dead_code): Fix formatting glitch.
878 2001-06-18 Jason Merrill <jason_merrill@redhat.com>
880 * c-common.h (RETURN_NULLIFIED_P): New macro.
881 * c-semantics.c (genrtl_return_stmt): Check it.
883 * expr.c (clear_storage): Set TREE_NOTHROW on the decl for memset.
884 (emit_block_move): Likewise.
886 Mon Jun 18 17:27:24 CEST 2001 Jan Hubicka <jh@suse.cz>
888 * unroll.c: Include predict.h.
889 (unroll_loop): Drop prediction notes on preconditioning.
890 * predict.def (PRED_LOOP_PRECONDITIONG, PRED_LOOP_CONDITION):
891 New; add comments on the others.
892 * Makefile.in: (unroll.o): Add dependancy on predict.h.
893 * loop.c (strength_reduce): Fix branch prediction.
895 Mon Jun 18 17:26:56 CEST 2001 Jan Hubicka <jh@suse.cz>
897 * stmt.c (emit_case_nodes): Optimize test whether index is in given
900 Mon Jun 18 15:43:10 CEST 2001 Jan Hubicka <jh@suse.cz>
902 * predict.c (estimate_probability): Do not bail out early
903 when note is present.
904 (combine_predictions_for_insn): Fix note removal code.
906 2001-06-18 Ben Elliston <bje@redhat.com>
908 * except.c (resolve_fixup_regions): Initialise "cleanup".
910 2001-06-17 Neil Booth <neil@daikokuya.demon.co.uk>
912 * tm.texi: Document STDC_0_IN_SYSTEM_HEADERS.
914 Sat Jun 16 20:20:39 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
916 * expr.c (expand_expr, case ADDR_EXPR): If taking address of SAVE_EXPR,
917 use put_var_into_stack.
919 2001-06-16 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
921 * gccspec.c (lang_specific_driver): If compiling ObjC, add
922 -shared-libgcc when necessary.
923 * Makefile.in (gccspec.o): Compile with DRIVER_DEFINES.
925 2001-06-16 Daniel Berlin <dan@cgsoftware.com>
927 * bitmap.h: Add dump_bitmap, bitmap_zero, bitmap_union_of_diffs,
928 bitmap_a_or_b, bitmap_a_and_b, bitmap_first_set_bit,
929 bitmap_last_set_bit. All for compatibility with sbitmap's.
931 *bitmap.c (bitmap_zero): New function.
932 (bitmap_union_of_diffs): New function.
933 (bitmap_first_set_bit): New function.
934 (bitmap_last_set_bit): New function.
936 2001-06-16 Neil Booth <neil@daikokuya.demon.co.uk>
938 * cpp.texi, invoke.texi: Update.
939 * cpp.1, gcc.1: Regenerate.
941 Sat Jun 16 12:45:20 CEST 2001 Jan Hubicka <jh@suse.cz>
943 * i386.md (minsf): Fix splitter. (PR fortran/3191)
945 2001-06-16 Neil Booth <neil@daikokuya.demon.co.uk>
947 * doc/cpp.texi: Update.
948 * doc/cpp.1: Regenerate.
950 2001-06-15 Loren J. Rittle <ljrittle@acm.org>
952 * doc/install.texi: Use correct markup hints.
954 Fri Jun 15 18:05:22 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
956 * function.c (gen_mem_addressof): Handle case where DECL is SAVE_EXPR.
958 * explow.c (expr_size): If DECL and size specified, use it.
960 2001-06-15 Zack Weinberg <zackw@stanford.edu>
962 * doc/cpp.texi: Formatting corrections.
963 Correct buggy example of use of __GNUC__ etc.
964 Clarify $ in identifiers.
965 * doc/cpp.1: Regenerate.
967 Fri Jun 15 19:35:38 CEST 2001 Jan Hubicka <jh@suse.cz>
969 * optabs.c (expand_twoval_binop): Avoid undefined behaviour.
971 2001-06-15 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
973 * doc/install.texi (Specific, alpha*-*-*): Fixed Tru64 UNIX
975 (Specific, alpha-*-osf1): Renamed to alpha*-*-osf*.
976 Added Tru64 UNIX V5.1 bootstrap hints.
977 (Specific, alpha*-*-osf*): Removed old section, obsolete.
979 2001-06-15 Andreas Jaeger <aj@suse.de>
981 * doc/install.texi (Specific): Mention that glibc cannot be
982 compiled with GCC 3.0.
984 2001-06-14 Andrew Haley <aph@cambridge.redhat.com>
986 * combine.c (nonzero_bits): Don't optimize away division by
989 2001-06-15 Zack Weinberg <zackw@stanford.edu>
991 * doc/cpp.texi: Revised and brought up to date.
992 * doc/cpp.1: Regenerate.
994 2001-06-15 Loren J. Rittle <ljrittle@acm.org>
996 * doc/install.texi: Update --enable-threads to match reality.
998 2001-06-15 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
1000 * doc/install.texi: Update for C4x.
1001 * README.C4X: Remove.
1003 2001-06-14 Joseph S. Myers <jsm28@cam.ac.uk>
1005 * doc/c-tree.texi, doc/contrib.texi, doc/extend.texi,
1006 doc/gcc.texi, doc/install.texi, doc/invoke.texi, doc/md.texi,
1007 doc/objc.texi, doc/rtl.texi, doc/tm.texi: Fix spelling and typos.
1008 Consistently use "built-in" and "bit-field". Minor logical markup
1010 * doc/gcc.1: Regenerate.
1012 2001-06-14 Richard Henderson <rth@redhat.com>
1014 * config/mips/mips.md (exception_receiver): New.
1016 2001-06-14 Daniel J. Berlin <dan@cgsoftware.com>
1018 * doc/gcc.texi: Update passes documentation to be more in tune
1021 Thu Jun 14 15:38:28 CEST 2001 Jan Hubicka <jh@suse.cz>
1023 * i386.c (ix86_expand_prologue): Fix merging conflict.
1025 2001-06-14 Joseph S. Myers <jsm28@cam.ac.uk>
1027 * doc/c-tree.texi, doc/contrib.texi, doc/extend.texi,
1028 doc/gcc.texi, doc/gcov.texi, doc/install-old.texi,
1029 doc/invoke.texi, doc/md.texi, doc/rtl.texi, doc/tm.texi: Use more
1030 logical markup. Use TeX quotes and dashes. Use @dots{} and
1031 @minus{}. Avoid spaces inside @var. Update last modification
1033 * doc/gcc.1, doc/gcov.1: Regenerate.
1035 Thu Jun 14 12:44:15 CEST 2001 Jan Hubicka <jh@suse.cz>
1037 * i386.c (x86_accumulate_outgoing_args, x86_prologue_using_move,
1038 x86_epilogue_using_move): New global variables.
1039 (override_options): Enable ACCUMULATE_OUTGOING_ARGS if preferred.
1040 (ix86_emit_save_regs_using_mov): New static function.
1041 (ix86_expand_prologue, ix86_expand_epilogue): Use moves if preferred.
1042 * i386.h (MASK_MMX, MASK_SSE, MASK_SSE2, MASK_128BIT_LONG_DOUBLE,
1043 MASK_MIX_SSE_I387): Renumber.
1044 (MASK_NO_ACCUMULATE_OUTGOING_ARGS): New.
1045 (x86_accumulate_outgoing_args, x86_prologue_using_move,
1046 x86_epilogue_using_move): Declare.
1047 (TARGET_PROLOGUE_USING_MOVE, TARGET_EPILOGUE_USING_MOVE): New.
1049 2001-06-13 John David Anglin <dave@hiauly1.hia.nrc.ca>
1051 * inclhack.def (hpux10_cpp_pow_inline): New hack.
1053 2001-06-13 Richard Henderson <rth@redhat.com>
1055 * ifcvt.c (dead_or_predicable): Fix return value last patch.
1057 2001-06-13 Mark Mitchell <mark@codesourcery.com>
1061 2001-06-13 Richard Henderson <rth@redhat.com>
1063 * ifcvt.c (cond_exec_get_condition): Use reversed_comparison_code.
1064 (cond_exec_process_if_block, dead_or_predicable): Likewise.
1066 2001-06-13 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
1068 * mips-tfile.c (copy_object): Always pass indexNil for symbol
1071 2001-06-13 Kazu Hirata <kazu@hxi.com>
1073 * config/h8300/h8300.h (OK_FOR_T): Remove.
1074 (EXTRA_CONSTRAINT): Do not use OK_FOR_T.
1075 * config/h8300/h8300.md: Remove alternatives involving inc and dec
1076 in the helper patterns for addhi3 and addsi3.
1078 2001-06-13 Phil Edwards <pme@sources.redhat.com>
1080 * doc/contrib.texi: Link to libstdc++'s thanks.html for now.
1082 2001-06-13 Zack Weinberg <zackw@stanford.edu>
1084 * Makefile.in: Move _bb and __gcc_bcmp to LIB2FUNCS_ST.
1085 * libgcc-std.ver: Take out __bb* and __gcc_bcmp.
1087 * config/t-slibgcc-elf-ver, config/t-slibgcc-sld,
1088 config/alpha/t-osf4, config/mips/t-iris6: Extract all
1089 references to @shlib_map_file@, @shlib_objs@, or
1090 @shlib_base_name@ to Makefile variables.
1091 Bump soname version of libgcc to 1.
1093 2001-06-13 Joseph S. Myers <jsm28@cam.ac.uk>
1095 * doc/install.texi: Use more logical markup. Include @node
1096 commands in the source when generating any non-HTML.
1098 2001-06-13 Joseph S. Myers <jsm28@cam.ac.uk>
1100 * README: Remove. Some of the contents moved to ../README.
1102 2001-06-13 Alexandre Oliva <aoliva@redhat.com>
1104 * doc/install.texi (--enable-shared): List package names
1107 2001-06-13 Alexandre Oliva <aoliva@redhat.com>
1109 * doc/install.texi (ix86-*-solaris*): Removed, outdated.
1110 (*-*-solaris*): Document problem in /bin/sh that affects
1111 configuring libraries.
1112 (sparc-*-solaris*): Recommend GNU binutils 2.11.1 or vendor tools.
1113 (*-sun-solaris2.8): Document linker problem that explains why
1114 libjava is disabled by default.
1116 2001-06-09 Mark Mitchell <mark@codesourcery.com>
1119 * toplev.c (rest_of_compilation): Remove dead code before
1122 2001-06-12 Alexandre Oliva <aoliva@redhat.com>
1125 2001-06-07 Nathan Sidwell <nathan@codesourcery.com>
1126 * configure.in (sparc*-*-*): Check assembler R_SPARC_UA32 support.
1127 * configure: Rebuilt.
1129 2001-06-12 Jim Wilson <wilson@redhat.com>
1131 * loop.c (strength_reduce): Move bl->all_reduced set before
1132 check_ext_dependant_givs call.
1133 (check_ext_dependant_givs): Clear bl->all_reduced when ignoring givs.
1135 2001-06-12 Alexandre Oliva <aoliva@redhat.com>
1137 * doc/extend.texi (Function Attributes): Document SH's sp_switch
1140 2001-06-13 Joseph S. Myers <jsm28@cam.ac.uk>
1142 * doc/invoke.texi: Use more logical markup. Use TeX quotes,
1145 2001-06-12 Richard Henderson <rth@redhat.com>
1147 * config/i386/i386.c (ix86_expand_prologue): Always use
1148 gen_pro_epilogue_adjust_stack; update arguments.
1149 (ix86_expand_epilogue): Likewise.
1150 (ix86_emit_epilogue_esp_adjustment): Remove.
1151 (ix86_adjust_cost): Remove pro_epilogue_adjust_stack hack.
1152 * config/i386/i386.md (pro_epilogue_adjust_stack): Use a BLKmode
1153 clobber of scratch memory instead of a modification of EBP as the
1154 barrier. Update all peepholes to match.
1156 2001-06-12 Joseph S. Myers <jsm28@cam.ac.uk>
1158 * doc/gcc.texi: Change the font used for @def... commands to a
1160 * doc/extend.texi: Use more logical markup. Use "built-in"
1161 instead of "builtin". Use @deftypefn to mark up built-in
1162 functions; specify their types in the @deftypefn and not in the
1163 descriptive text. Use TeX quotes and dashes. Add more index
1166 2001-06-12 lars brinkhoff <lars@nocrew.org>
1168 * gcc.texi (HOST_BITS_PER_LONGLONG): Document.
1169 (DIR_SEPARATOR_2): Likewise.
1171 2001-06-12 Joseph S. Myers <jsm28@cam.ac.uk>
1173 * doc/install.texi (--exec-prefix, --bindir, --libdir,
1174 --with-slibdir, --infodir, --mandir, --with-cpp-install-dir):
1176 (--enable-cpp): Change to document --disable-cpp instead; update
1177 to reflect current default.
1178 (--without-fast-fixincludes): Remove documentation.
1179 (Final install): Document installation directories in more
1180 detail. Document use of make dvi.
1182 Tue Jun 12 19:01:43 CEST 2001 Jan Hubicka <jh@suse.cz>
1184 * recog.c (validate_replace_rtx_1): Fix previous patch.
1186 Tue Jun 12 17:25:39 CEST 2001 Jan Hubicka <jh@suse.cz>
1188 * recog.c (validate_replace_rtx_1): Do plus_constant call always.
1190 Tue Jun 12 17:24:07 CEST 2001 Jan Hubicka <jh@suse.cz>
1192 * simplify-rtx.c (simplify_subreg): Allow volatile memory
1193 to be subregged in case we don't have move instruction.
1195 Tue Jun 12 12:20:12 CEST 2001 Jan Hubicka <jh@suse.cz>
1197 * loop.c: Include predict.h
1198 (strength_reduce): Drop branch prediction note in case
1199 number of iterations is known.
1200 * predict.def (PRED_LOOP_ITERATIONS): new.
1201 * Makefile.in (loop.o): Add dependancy on predict.h
1203 2001-06-12 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
1205 * c-decl.c (grokdeclarator): Use INTEGRAL_TYPE_P.
1207 * c-typeck.c (c_start_case): Likewise.
1209 2001-06-12 Mark Mitchell <mark@codesourcery.com>
1211 * expr.c (store_field): Don't set MEM_ALIAS_SET for a field
1212 in a structure at a variable address.
1214 2001-06-12 Joseph S. Myers <jsm28@cam.ac.uk>
1216 * doc/gcov.texi: Use more logical markup.
1218 2001-06-11 Mark Mitchell <mark@codesourcery.com>
1220 * unroll.c (initial_reg_note_copy): Use PUT_REG_NOTE_KIND and
1221 REG_NOTE_KIND, not PUT_MODE and GET_MODE.
1222 (final_reg_note_copy): Remove REG_WAS_0 notes that are no longer
1225 2001-06-11 Stan Shebs <shebs@apple.com>
1227 * config/darwin.h (ASM_FILE_END): Remove decl of language_string.
1229 2001-06-11 Stephane Carrez <Stephane.Carrez@worldnet.fr>
1231 * config/m68hc11/m68hc11.md ("*lshrdi3_const32"): Mark the clobber
1232 as an early clobber to make sure it is not used by reload in
1233 one of the operands.
1235 2001-06-11 Mark Mitchell <mark@codesourcery.com>
1237 * doc/c-tree.texi: Update information about flag_honor_std.
1238 * doc/install.texi: Note that binutils is required on HPUX 11.
1239 * doc/invoke.texi (-fhonor-std): Note that -fno-honor-std is
1242 * config/mips/abi64.h (RETURN_IN_MEMORY): Fix handling of
1243 variable-sized types.
1245 2001-06-11 Joseph S. Myers <jsm28@cam.ac.uk>
1247 * doc/md.texi: Use TeX dashes and quotes.
1249 2001-06-11 Joseph S. Myers <jsm28@cam.ac.uk>
1251 * doc/rtl.texi: Reference manual chapter about trees.
1253 2001-06-11 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
1255 * config/mips/iris6.h (NO_BUILTIN_WINT_TYPE): Define.
1256 (WINT_TYPE): Override.
1257 (WINT_TYPE_SIZE): Likewise.
1258 (SUBTARGET_CPP_SIZE_SPEC): Define __WINT_TYPE__ as appropriate.
1260 * config/sparc/sol2.h (WINT_TYPE): Define.
1261 (WINT_TYPE_SIZE): Likewise.
1263 * config/sparc/sol2-sld-64.h (NO_BUILTIN_WINT_TYPE): Define.
1264 (WINT_TYPE): Override.
1265 (WINT_TYPE_SIZE): Likewise.
1266 (CPP_ARCH32_SPEC): Add __WINT_TYPE__ definition.
1267 (CPP_ARCH64_SPEC): Likewise.
1269 2001-06-11 Richard Henderson <rth@redhat.com>
1271 * unwind-dw2-fde.c (__deregister_frame_info): Don't play games
1272 with alias attribute.
1274 * config/linux.h (CPLUSPLUS_CPP_SPEC): Use %(cpp) not $(cpp_cpu).
1275 * config/alpha/linux.h (CPLUSPLUS_CPP_SPEC): Likewise.
1277 2001-06-11 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
1279 * config/rs6000/linux.h (CPLUSPLUS_CPP_SPEC): New.
1281 2001-06-11 Stan Shebs <shebs@apple.com>
1283 * config/darwin.c (darwin_encode_section_info): Rewrite to simplify
1284 and fix coding mistakes.
1286 2001-06-11 Nick Clifton <nickc@cambridge.redhat.com>
1288 * config/m32r/m32r.md (movstrsi_internal): Do not expect a
1289 return string from m32r_output_block_move.
1290 * config/m32r/m32r-protos.h: Make m32r_output_block_move a
1292 * config/m32r/m32r.h (INT32_P): Rename to UNIT32_P and remove
1294 (ROUND_ADVANCE): Remove signed/unsigned conflict.
1295 * config/m32r/m32r.c: Declare prototypes for static functions.
1296 (move_src_operand): Replace INT32_P with UINT32_P.
1297 (function_arg_partial_nregs): Fixed signed/unsigned conflict
1298 in initialisation of 'size'.
1299 (m32r_sched_reord): Remove redundant declarations of 'code'.
1300 (m32r_output_block_move): Change to a void function.
1301 (m32r_encode_section_info): Cast return of
1302 TREE_STRING_POINTER to avoid compile time warning.
1304 2001-06-11 Richard Henderson <rth@redhat.com>
1306 * config/alpha/osf5.h (TARGET_LD_BUGGY_LDGP): New.
1307 * config/alpha/alpha.h (TARGET_LD_BUGGY_LDGP): Default.
1308 (struct machine_function): Add gp_save_rtx.
1309 * config/alpha/alpha.c (alpha_mark_machine_status): Mark it.
1310 (alpha_gp_save_rtx): New.
1311 * config/alpha/alpha-protos.h: Declare it.
1312 * config/alpha/alpha.md (exception_receiver): Make an expander.
1313 Use alpha_gp_save_rtx if TARGET_LD_BUGGY_LDGP.
1315 2001-06-11 Richard Henderson <rth@redhat.com>
1317 * config/alpha/osf.h (LINK_SPEC): Hide _GLOBAL_* symbols.
1319 2001-06-11 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
1321 * configure.in: Align --help messages.
1322 Remove trailing full stops.
1323 Consistently use lower case.
1324 Fix DWARF 2 spelling.
1325 * configure: Rebuilt.
1327 2001-06-11 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
1329 * config/alpha/alpha.h (CPP_SPEC): Don't define __LANGUAGE_C and
1330 variants for .cpp/.cp/.c++ files.
1331 Move definition of __LANGUAGE_C_PLUS_PLUS ...
1332 (CPLUSPLUS_CPP_SPEC): ... here.
1334 Mon Jun 11 15:47:45 CEST 2001 Jan Hubicka <jh@suse.cz>
1336 * jump.c (duplicate_loop_exit_test): Fix loop header heuristics.
1338 2001-06-11 Joseph S. Myers <jsm28@cam.ac.uk>
1340 * c-decl.c (store_parm_decls): When comparing types in an
1341 old-style function declaration with those from a previous
1342 prototype, compare the unqualified versions of parameter types.
1345 2001-06-11 Joseph S. Myers <jsm28@cam.ac.uk>
1347 * doc/objc.texi: Use more logical markup. Use TeX dashes.
1349 2001-06-11 Joseph S. Myers <jsm28@cam.ac.uk>
1351 * doc/c-tree.texi: Use more logical markup.
1353 2001-06-11 Joseph S. Myers <jsm28@cam.ac.uk>
1355 * c-decl.c (xref_tag): Don't return previous tags of wrong type.
1357 2001-06-11 Aldy Hernandez <aldyh@redhat.com>
1359 * loop.c (scan_loop): Do not combine asm statements.
1361 2001-06-11 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
1363 * simplify-rtx.c (simplify_subreg): Fix offset calculation
1364 for complex values within a CONCAT.
1366 2001-06-11 Joseph S. Myers <jsm28@cam.ac.uk>
1368 * doc/install.texi: Update details of what components are included
1369 in the GCC distribution. Update default directory for g++
1370 includes. Update documentation relating to old libio. Adjust
1371 documentation on DejaGnu environment variables. Remove
1372 documentation of --enable-cpplib.
1374 2001-06-11 Joseph S. Myers <jsm28@cam.ac.uk>
1376 * doc/contrib.texi: Fix alphabetical order. Fix typos. Improve
1379 2001-06-10 Richard Henderson <rth@redhat.com>
1381 * ifcvt.c (life_data_ok): New.
1382 (merge_if_block): Use it to determine whether to update
1384 (if_convert): Set it.
1386 2001-06-10 Richard Henderson <rth@redhat.com>
1388 * config/alpha/osf5.h (ASM_OLDAS_SPEC): Add -c.
1390 2001-06-10 Alexandre Oliva <aoliva@redhat.com>
1392 * doc/invoke.texi (MN10300 Options): Document -mno-crt0.
1393 (SH Options): Document -mieee.
1394 * doc/install.texi (Final install): Remove obsolete information
1395 about installing cross compilers.
1396 * doc/gcc.1: Rebuilt.
1398 2001-06-10 Richard Henderson <rth@redhat.com>
1400 * config/alpha/alpha.c (override_options): Set align_loops,
1401 align_jumps, and align_functions.
1402 * config/alpha/alpha.h (FUNCTION_BOUNDARY): Set to 32 bits.
1403 (LOOP_ALIGN, LABEL_ALIGN_AFTER_BARRIER): Remove.
1405 2001-06-11 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
1407 * emit-rtl.c (gen_lowpart_common): Do not assume that SFmode and DFmode
1408 are one and two words in size.
1410 2001-06-10 Richard Henderson <rth@redhat.com>
1412 * doc/invoke.texi (Optimization Options): Document -fpeephole2.
1413 (Code Generation Options): Document -fnon-call-exceptions.
1415 2001-06-10 Mark Kettenis <kettenis@gnu.org>
1417 * config/i386/gnu.h (MD_FALLBACK_FRAME_STATE_FOR): Undefine.
1419 2001-06-10 Stephane Carrez <Stephane.Carrez@worldnet.fr>
1421 * m68hc11.md (peepholes): Remove unused and wrong peepholes.
1423 2001-06-10 Mark Mitchell <mark@codesourcery.com>
1424 Gabriel Dos Reis <gdr@codesourcery.com>
1426 * Makefile.in (c-parse.o): Depend on diagnostic.h
1427 (dwarf2out.o): Likewise.
1429 * dwarf2out.c: #include diagnostic.h
1431 * toplev.h (warningcount, errorcount, sorrycount): Remove
1434 * toplev.c (warningcount, errorcount, sorrycount): Remove
1437 * diagnostic.h (struct output_buffer): Reorder fields.
1438 (diagnostic_kind_count): New macro.
1439 (errorcount, warningcount, sorrycount): Define as macros.
1440 (diagnostic_report_warnings_p): New macro.
1441 (output_state): Add diagnostic_count field.
1443 * diagnostic.c (warningcount, errorcount, inhibit_warnings):
1444 Remove tentative declaration.
1445 (count_error): Use diagnostic_report_warnings_p.
1447 * c-parse.in: #include diagnostic.h
1449 2001-06-10 Stephane Carrez <Stephane.Carrez@worldnet.fr>
1451 * config/m68hc11/m68hc11.md ("extendhisi2"): Fix constraints to
1452 prefer a memory for operand 1.
1453 ("*addsi3"): Fix constraints, the '!' was too strong.
1454 ("*addsi3_split"): Accept soft register and split accordingly.
1456 2001-06-10 Stephane Carrez <Stephane.Carrez@worldnet.fr>
1458 * config/m68hc11/m68hc11-protos.h (m68hc11_initialize_trampoline):
1459 Move definition in the RTX_CODE section.
1461 2001-06-10 Stephane Carrez <Stephane.Carrez@worldnet.fr>
1463 * config/m68hc11/m68hc11.h (RETURN_ADDR_RTX): Define the return
1464 address as relative to the argument pointer.
1466 Sun Jun 10 10:58:53 CEST 2001 Jan Hubicka <jh@suse.cz>
1468 * predict.def (PRED_OPCODE): Place before call and error_return.
1470 Sun Jun 10 10:00:17 CEST 2001 Jan Hubicka <jh@suse.cz>
1472 * predict.def (PRED_CALL, PRED_ERROR_RETURN): New.
1473 * predict.c (estimate_probability): Calculate dominance
1474 information; improve detection of NORETURN heuristics;
1475 add call/error_return heuiristics; tweak comparison heuristics
1478 2001-06-09 Alexandre Oliva <aoliva@redhat.com>
1480 * doc/invoke.texi (C Dialect Options): Document -aux-info.
1481 (Debugging Options): Document -print-multi-directory and
1483 * doc/gcc.1: Rebuilt.
1485 * toplev.c (independent_decode_option): Require `=' between
1486 `-aux-info' and filename in the same argument.
1487 * gcc.c: Don't pass -aux-info=filename twice.
1489 2001-06-09 Mark Mitchell <mark@codesourcery.com>
1491 * expr.c (expand_expr, case ARRAY_REF): Do not replace
1492 an array element with the known initializing value if it has
1495 * toplev.c (rest_of_compilation): Remove dead code before
1498 2001-06-09 Neil Booth <neil@daikokuya.demon.co.uk>
1500 * cppinit.c (print_help): Document -fpreprocessed.
1501 * invoke.texi: Similarly.
1503 Sun Jun 10 00:35:37 CEST 2001 Jan Hubicka <jh@suse.cz>
1505 * predict.def: New file.
1506 * predict.h: New file.
1507 * predict.c: Include predict.h.
1508 (predictor_info): New structure and array.
1509 (predict_edge, predict_insn): Rewrite; make global.
1510 (predict_edge_def, predict_insn_def): New global functions.
1511 (dump_prediction, combine_predictions_for_insns): New
1513 (estimate_probability): Change calls to predict_edge
1514 to predict_edge_def and calls to predict_insn to predict_insn_def;
1515 combine probabilities.
1516 (expected_value_to_br_prob): Behave as predictor.
1517 * rtl.h (REG_BR_PRED): Update coment.
1518 (invert_br_probabilities): New.
1519 * jump.c: Include predict.h
1520 (duplicate_loop_exit_test): Drop branch prediction notes.
1521 (invert_jump): Use invert_br_probabilities.
1522 * Makefile.in: Add dependancy on predict.h for jump and predict pass.
1523 * ifcvt.c (dead_or_predicable): Use invert_br_probabilities.
1524 * combine.c (distribute_notes): Handle BR_PRED.
1526 Sat Jun 9 23:29:41 CEST 2001 Jan Hubicka <jh@suse.cz>
1528 * predict.c (predict_insn, predict_edge): New static functions.
1529 (estimate_probability): Revamp to use new functions;
1530 fix loop header heruistics; add loop exist heruistics
1532 2001-06-09 Alexandre Oliva <aoliva@redhat.com>
1534 * config.gcc: Re-enable bi-arch sparc on Solaris 7 and above.
1536 2001-06-09 Peter Jakubek <pjak@snafu.de>
1538 * config/m68k/m68k.md (ashrdi_const): Fix right shift by 16.
1540 2001-06-09 John David Anglin <dave@hiauly1.hia.nrc.ca>
1542 * vax.h (NOTICE_UPDATE_CC): Set CC_NO_OVERFLOW in cc_status.flags
1543 for integer operations that don't update C bit.
1545 2001-06-09 Nicola Pero <nicola@brainstorm.co.uk>
1547 * gthr-posix.h (__gthread_objc_init_thread_system): If
1548 pthread_key_create fails, it's not clear what the return value is.
1549 This obvious fix makes sure it always returns -1 if a problem
1552 2001-06-09 Joseph S. Myers <jsm28@cam.ac.uk>
1554 * doc/gcc.texi: Use @defcodeindex for the index of options. Add
1555 more index entries. Use more logical markup where appropriate.
1556 Use TeX quotes and dashes.
1558 2001-06-09 Benjamin Kosnik <bkoz@redhat.com>
1560 * unwind-pe.h: Conditionally qualify references to abort with
1563 2001-06-09 Julian Foad <julian_foad@hotmail.com>
1565 * doc/invoke.texi: Remove superfluous text.
1567 2001-06-08 Richard Henderson <rth@redhat.com>
1569 * config/alpha/linux.h (CPLUSPLUS_CPP_SPEC): New.
1570 (LIB_SPEC): Mirror config/linux.h version.
1572 2001-06-08 Richard Henderson <rth@redhat.com>
1574 * except.c (get_exception_pointer, get_exception_filter): Take a
1575 struct function. Update all callers.
1576 * except.h (get_exception_pointer): Update declaration.
1577 * expr.c (expand_expr): Update get_exception_pointer call.
1578 * integrate.c (expand_inline_function): Remap the exception pointer
1579 from callee to caller.
1581 2001-06-08 Mark Mitchell <mark@codesourcery.com>
1583 * c-decl.c (grokdeclarator): Make the TREE_TYPE for declarations
1584 accurately reflect its cv-qualification.
1585 * c-typeck.c (type_lists_compatible_p): Ignore the top-levl
1586 cv-qualifiers on function types.
1588 2001-06-08 Mark Mitchell <mark@codesourcery.com>
1590 * basic-block.h: Improve comments.
1591 * except.c (expand_eh_region_end_allowed): Remove redundant call
1592 to do_pending_stack_adjust.
1593 * flow.c (life_analysis): Fix typo in comment.
1594 (calculate_global_regs_live): Add documentation.
1595 (mark_set_1): Likewise.
1596 (debug_regset): Likewise.
1597 * doc/rtl.texi (cond_exec): Document it.
1599 Fri Jun 8 21:52:51 CEST 2001 Jan Hubicka <jh@suse.cz>
1601 * i386.h (CONST_COSTS): set cost of constants representable in
1602 immediate fields to 0.
1604 Fri Jun 8 21:34:54 CEST 2001 Jan Hubicka <jh@suse.cz>
1606 * function.c (diddle_return_value): Kill code to determine
1607 return value before expand_function_end.
1608 (expand_function_end): Delay call to clobber_return_register
1609 after fucntion return value is computed.
1611 Re-install temporary reverted patch:
1612 * toplev.c (rest_of_compilation): Call split_all_insns
1613 before reg-stack and shorten-branches. Do shorten-branches
1615 * final.c (shorten_branches): Remove insn splitting code.
1617 2001-06-08 Joseph S. Myers <jsm28@cam.ac.uk>
1619 * doc/gcc.texi, doc/invoke.texi: Add index of command line
1620 options. Use @opindex to index them rather than other indexing
1621 commands. Use @var{...} instead of <...>. Avoid spaces in names
1622 inside @var. Don't use @kindex to index escape sequences in
1625 2001-06-08 Jason Merrill <jason_merrill@redhat.com>
1627 * stmt.c (current_nesting_level): New fn.
1628 * tree.h: Declare it.
1629 * c-semantics.c (genrtl_compound_stmt): Use it.
1631 * dbxout.c (dbxout_symbol): Use DECL_RTL_SET_P.
1633 2001-06-08 Jakub Jelinek <jakub@redhat.com>
1635 * jump.c (mark_modified_reg): Allow jump threading if condition
1636 codes are represented by a hard register.
1638 2001-06-08 Jakub Jelinek <jakub@redhat.com>
1640 * config/ia64/ia64.c (ia64_function_arg): Use [SDT]Fmode as gr_mode
1641 for complex floats passed to unprototyped functions.
1643 2001-06-08 Mark Mitchell <mark@codesourcery.com>
1645 * except.c (expand_eh_region_end_allowed): Call
1646 do_pending_stack_adjust as necessary.
1648 Fri Jun 8 14:16:33 CEST 2001 Jan Hubicka <jh@suse.cz>
1650 * function.c (clobber_return_register): Clobber the pseudo return
1653 * sibcall.c (skip_unreturned_value): New function.
1654 (call_ends_block_p): Use it.
1656 * recog.c (split_insn): Break out from ...
1657 (split_all_insns): ... here; do not use basic block information
1660 Thu Jun 7 18:27:53 CEST 2001 Jan Hubicka <jh@suse.cz>
1662 * simplify-rtx.c (simplify_subreg): Fix verification of
1665 2001-06-08 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
1667 * config/mips/mips.h (CPP_SPEC): Simplify .s/.S handling.
1668 Don't define _LANGUAGE_C and variants for .cpp/.cp/.c++ files.
1669 Move definition of _LANGUAGE_C_PLUS_PLUS ...
1670 (CPLUSPLUS_CPP_SPEC): ... here.
1671 Fixes PRs c++/3047, target/441.
1673 2001-06-08 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
1675 * doc/install.texi2html (MAKEINFO): Keep value if set already.
1677 2001-06-08 Joseph S. Myers <jsm28@cam.ac.uk>
1679 * doc/gcc.texi: Add trailing slash to URL.
1681 2001-06-07 Stan Shebs <shebs@apple.com>
1683 * config/darwin.h (ENCODE_SECTION_INFO): Define.
1684 (REDO_SECTION_INFO_P): Ditto.
1685 (STRIP_NAME_ENCODING): Ditto.
1686 (ASM_DECLARE_OBJECT_NAME): Use ENCODE_SECTION_INFO.
1687 (ASM_OUTPUT_ALIGNED_DECL_LOCAL): Ditto.
1688 (ASM_OUTPUT_LABELREF): Use STRIP_NAME_ENCODING.
1689 (GEN_LAZY_PTR_NAME_FOR_SYMBOL): Ditto.
1690 * config/darwin.c: No longer include c-tree.h.
1691 (machopic_classify_ident): Rewrite to use symbol encoding.
1692 (lookup_name_darwin): Remove.
1693 (machopic_non_lazy_ptr_name): Handle encoded symbols.
1694 (machopic_stub_name): Use STRIP_NAME_ENCODING.
1695 (machopic_validate_stub_or_non_lazy_ptr): Ditto.
1696 (machopic_finish): Ditto, remove test of decl.
1697 (update_non_lazy_ptrs): New function.
1698 (darwin_encode_section_info): New function.
1699 * config/darwin-protos.h: Declare it.
1700 * config/rs6000/rs6000.c (machopic_output_stub): Use
1701 STRIP_NAME_ENCODING.
1703 2001-06-07 Mark Mitchell <mark@codesourcery.com>
1705 * tree.h (DECL_SOURCE_FILE): Improve documentation.
1706 (DECL_SOURCE_LINE): Likewise.
1708 2001-06-07 Loren J. Rittle <ljrittle@acm.org>
1710 * config/alpha/elf.h (MAKE_DECL_ONE_ONLY): Copy definition
1711 from config/elfos.h.
1713 2001-06-07 Phil Edwards <pme@sources.redhat.com>
1715 * linux.h (CPLUSPLUS_CPP_SPEC): Move -D_GNU_SOURCE to here.
1716 * pa/pa-linux.h: Allow CPLUSPLUS_CPP_SPEC to remain.
1718 2001-06-08 Joseph S. Myers <jsm28@cam.ac.uk>
1720 * doc/contrib.texi: Add copyright notice.
1722 2001-06-08 Joseph S. Myers <jsm28@cam.ac.uk>
1724 * doc/md.texi: Use four digit years in copyright notice.
1726 2001-06-08 Joseph S. Myers <jsm28@cam.ac.uk>
1728 * config.gcc: For $target_alias of athlon-*, set
1729 target_cpu_default2=5.
1731 Thu Jun 7 16:17:40 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
1733 * global.c (build_insn_chain): Allow ADDR_VEC or ADDR_DIF_VEC after
1734 end of last block if last real insn is a JUMP_INSN.
1736 2001-06-07 Joseph S. Myers <jsm28@cam.ac.uk>
1740 2001-06-07 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
1742 * gthr-posix.h (__gthread_objc_thread_detach): Simply cast
1743 pthread_t to objc_thread_t.
1744 (__gthread_objc_thread_id): Likewise.
1746 2001-06-07 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
1748 * alpha/osf5.h (CPP_XFLOAT_SPEC): Override default definition.
1749 (ASM_OLDAS_SPEC): Likewise.
1751 * alpha/osf.h (CPP_XFLOAT_SPEC): Define.
1752 (CPP_SUBTARGET_SPEC): Use it.
1753 (ASM_OLDAS_SPEC): Define.
1755 (SUBTARGET_EXTRA_SPECS): Define, declare the new specs above.
1757 2001-06-07 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
1759 * config/alpha/alpha.c (alpha_va_arg): Handle TFmode, TCmode args,
1760 passed by reference.
1762 2001-06-07 Joseph S. Myers <jsm28@cam.ac.uk>
1764 * doc/tm.texi (TARGET_SWITCHES, TARGET_OPTIONS): Adjust markup.
1765 Document use of N_(...), and show it in examples. Note that
1766 documentation should be added to invoke.texi. Avoid an overfull
1769 Thu Jun 7 17:09:50 CEST 2001 Jan Hubicka <jh@suse.cz>
1771 * toplev.c (rest_of_compilation): Revert previous patch.
1772 * final.c (shorten_branches): Likewise.
1774 2001-06-07 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
1776 * pself.c, pself1.c, pself2.c, pself3.c, pself4.c, pself5.c:
1779 2001-06-07 Joseph S. Myers <jsm28@cam.ac.uk>
1781 * doc/install-old.texi: Remove more obsolete documentation.
1783 Thu Jun 7 13:20:14 CEST 2001 Jan Hubicka <jh@suse.cz>
1785 * expr.c (copy_blkmode_from_reg): Fix operand_subword_force call.
1787 Thu Jun 7 12:12:58 CEST 2001 Jan Hubicka <jh@suse.cz>
1789 * toplev.c (rest_of_compilation): Call split_all_insns
1790 before reg-stack and shorten-branches. Do shorten-branches
1792 * final.c (shorten_branches): Remove insn splitting code.
1794 2001-06-07 Nathan Sidwell <nathan@codesourcery.com>
1796 * configure.in (sparc*-*-*): Check assembler R_SPARC_UA32 support.
1797 * configure: Rebuilt.
1799 2001-06-07 Andreas Jaeger <aj@suse.de>
1801 * emit-rtl.c (operand_subword): Remove unused variable.
1803 Wed Jun 6 14:51:05 CEST 2001 Jan Hubicka <jh@suse.cz>
1805 * i386.md (floatdi?f): Avoid usinf of SSE instructions
1806 if TARGET_64BIT is false.
1807 (floatdi?f_i386_only): New insn.
1808 (floatdi?f_i386): Disable for !TARGET_64BIT.
1810 * (min?f, max?f splitters): Handle case where
1811 operands are cross-matched.
1813 * i386.h (HI_REGISTER_NAMES): Remove redundant definition
1814 (MMX_REGISTER_NAMES): Kill.
1815 (PRINT_OPERAND): Fix comment.
1816 (PRINT_REG): Likewise.
1817 * i386.c (print_reg): Kill support for 'm' CODE; simplify.
1818 (print_operand): Update comment; kill 'm'.
1820 * i386.c (x86_branch_hints): New global variable
1821 (print_operand): Support outputting of branch prediction hints.
1822 * i386.md (conditional jump patterns): Add branch prediction hints
1824 * i386.h (x86_branch_hints): Declare
1825 (TARGET_BRANCH_PREDICTION_HINTS): New macro.
1826 (PRINT_OPERAND_FUNCT_VALID_P): New.
1827 * final.c (final_forward_branch_p): New function.
1829 2001-06-06 Richard Henderson <rth@redhat.com>
1831 * flow.c (mark_used_reg): Clean up looping over multiple hard
1832 registers. Do conditional life bits across multiple hard regs.
1834 2001-06-05 Jeffrey D. Oldham <oldham@codesourcery.com>
1836 * reload1.c (reload): Revert Schmidt's change so all USEs are not
1837 deleted during reload.
1839 2001-06-05 Mark Mitchell <mark@codesourcery.com>
1841 * c-semantics.c (genrtl_scope_stmt): Write out nested inline
1842 functions here, instead of ...
1843 * c-decl.c (c_expand_body): ... here.
1845 2001-06-05 David O'Brien <obrien@FreeBSD.org>
1847 * config.gcc, config/sparc/bsd.h: Do not directly include
1848 sparc/sparc.h. Instead do it via tm_file.
1850 2001-06-05 Richard Henderson <rth@redhat.com>
1852 * dwarf2.h (DW_EH_PE_aligned): New.
1853 * dwarf2asm.c (eh_data_format_name): Name it.
1854 (dw2_asm_output_encoded_addr_rtx): Align for it.
1855 * dwarf2out.c (output_call_frame_info): Handle it for personality
1856 routine and LSDA pointers.
1858 * unwind-pe.h (DW_EH_PE_aligned): New.
1859 (base_of_encoded_value): Handle it.
1860 (read_encoded_value_with_base): Likewise.
1861 * unwind-dw2-fde.c (base_from_object): Likewise.
1862 (get_cie_encoding): Likewise.
1864 * config/alpha/elf.h: Remove ecoff commentary.
1865 * config/alpha/osf.h (ASM_PREFERRED_EH_DATA_FORMAT): New.
1867 2001-06-05 David O'Brien <obrien@FreeBSD.org>
1869 * config.gcc, config/i386/bsd386.h: Do not directly include
1870 i386/386bsd.h. Instead do it via tm_file.
1872 2001-06-05 David O'Brien <obrien@FreeBSD.org>
1874 * elfos.h (USING_ELFOS_H): Identify the use of elfos.h in the same
1877 2001-06-05 Pascal Obry <obry@act-europe.fr>
1879 * configure.in: Quote $enable_win32_registry in case the value has
1883 2001-06-05 Mark Mitchell <mark@codesourcery.com>
1885 * print-rtl.c (xspaces): Remove.
1886 (print_rtx): Use printf field-width, rather than xpsaces, to
1888 * toplev.c (main): Disable sibling-call optimization if we are
1889 handling exceptions.
1891 2001-06-05 Bernd Schmidt <bernds@redhat.com>
1893 * reload1.c (reload): Delete all USEs generated during reload.
1895 2001-06-05 scott snyder <snyder@fnal.gov>
1897 * gccbug.in: Fix typo.
1899 2001-06-05 Andreas Jaeger <aj@suse.de>
1901 * builtins.def: Fix definition of __builtin_cosf, it uses float as
1902 parameter and return value.
1904 2001-06-04 Anthony Green <green@redhat.com>
1906 * config/sparc/elf.h (CPP_PREDEFINES): Don't assert cpu or
1907 machine. This is now done in sparc.h.
1909 2001-06-05 Nathan Sidwell <nathan@codesourcery.com>
1911 Correct CVS resurrection of invoke.texi.
1912 * doc/invoke.texi: Document new tree dump flags.
1914 2001-06-05 Joseph S. Myers <jsm28@cam.ac.uk>
1916 * c-typeck.c (build_c_cast): Use TYPE_MAIN_VARIANT when checking
1917 for casting an aggregate to its own type. Fixes PR c/2735.
1919 2001-06-05 Joseph S. Myers <jsm28@cam.ac.uk>
1921 * doc/texinfo.tex: Update to version 2001-05-24.08.
1923 2001-06-05 Nathan Sidwell <nathan@codesourcery.com>
1925 * c-common.h (flag_dump_translation_unit): Remove.
1926 (enum tree_dump_index): Define.
1927 (TDF_ADDRESS, TDF_SLIM): New #defines.
1928 (dump_node_to_file): Remove.
1929 (dump_node): Make extern. Add flags.
1930 (dump_flag, dump_enabled_p, dump_begin, dump_end,
1931 dump_switch_p): Prototype.
1932 * c-common.c (flag_dump_translation_unit): Remove.
1933 * c-decl.c (c_decode_option): Remove -fdump-translation-unit
1934 logic. Use dump_switch_p.
1935 * c-dump.h (struct dump_info): Add node and user fields.
1936 (dump_pointer): Declare.
1937 * c-dump.c (dump_node): Make extern. Add flags.
1938 (SOL_COLUMN, EOL_COLUMN, COLUMN_ALIGNMENT): New #defines.
1939 (dump_new_line, dump_maybe_newline): Use them.
1940 (dump_pointer): New function.
1941 (dequeue_and_dump): Check TDF_SLIM before dumping a _DECL's
1942 chain or function's body. Dump address, if TDF_ADDRESS set.
1943 (dump_flag): Define.
1944 (dump_node_to_file): Remove.
1945 (struct dump_file_info): New struct.
1946 (dump_files): New array.
1947 (dump_begin, dump_end, dump_enabled_p, dump_switch_p): Define.
1948 * c-lang.c (finish_file): Adjust dumping.
1949 * toplev.h (dump_base_name): Make extern.
1950 * invoke.texi: Document new flags.
1952 2001-06-04 Mark Mitchell <mark@codesourcery.com>
1954 * c-tree.h (lang_decl): Add pending_sizes fields.
1955 * c-decl.c (store_parm_decls): Save pending_sizes away for nested
1957 (c_expand_body): Expand them.
1958 (lang_mark_tree): Mark lang_decl:pending_sizes.
1959 * function.c (expand_pending_sizes): New function, broken out
1961 (expand_function_start): ... here.
1962 * tree.h (expand_pending_sizes): Declare it.
1964 2001-06-04 Loren J. Rittle <ljrittle@acm.org>
1966 * doc/install.texi: Update FreeBSD information. Generalize
1967 and update information for alpha-based platforms using ELF.
1969 2001-06-04 John David Anglin <dave@hiauly1.hia.nrc.ca>
1971 * c-decl.c (get_parm_info): Use INTEGRAL_TYPE_P.
1972 (store_parm_decls): Likewise.
1973 * c-typeck.c (convert_arguments): Likewise.
1975 2001-06-04 Richard Henderson <rth@redhat.com>
1977 * sibcall.c (optimize_sibling_and_tail_recursive_call): Suppress
1978 optimization if current_function_calls_setjmp.
1980 2001-06-04 Joseph S. Myers <jsm28@cam.ac.uk>
1982 * doc/c-tree.texi: Fix documentation of TREE_STRING_LENGTH for
1985 Mon Jun 4 20:44:25 CEST 2001 Jan Hubicka <jh@suse.cz>
1987 * simplify-rtx.c (simplify_subreg): Fix combining of
1988 paradoxical subregs.
1990 Mon Jun 4 20:15:25 CEST 2001 Jan Hubicka <jh@suse.cz>
1992 * rtlanal.c (rtx_unsable_p): ADDRESSOF is stable.
1993 (no_labels_between_p): Short circuit case beg==end.
1995 Mon Jun 4 20:03:05 CEST 2001 Jan Hubicka <jh@suse.cz>
1997 * rtlanal.c (operand_preference): Fix preference for objects.
1999 Mon Jun 4 20:00:40 CEST 2001 Jan Hubicka <jh@suse.cz>
2001 * gcse.c (handle_avail_expr): Be prepared to handle single_set
2004 Mon Jun 4 19:59:46 CEST 2001 Jan Hubicka <jh@suse.cz>
2006 * combine.c (if_then_else_cond): Use simplify_subreg instead
2008 * integreate.c (sub_constants): Likewise.
2010 Mon Jun 4 19:59:12 CEST 2001 Jan Hubicka <jh@suse.cz>
2012 * emit-rtl.c (constant_subword): Deprecate; remove most of code
2013 and use simplify_gen_subreg.
2015 Mon Jun 4 19:55:23 CEST 2001 Lars Brinkhoff <lars@nocrew.org>
2017 * sibcall.c (skip_copy_to_return_value): recognize the situation
2018 when the called function's return value is copied into an
2019 intermediate pseudo, and then into the calling functions return
2022 Mon Jun 4 16:50:33 CEST 2001 Jan Hubicka <jh@suse.cz>
2024 * simplify_rtx.c (simplify_subreg): Keep subregs on return values,
2025 check CLASS_CANNOT_CHANGE_MODE before avoiding subreg on hard reg,
2026 in case register wasn't OK previously, accept it now; allow
2027 subregs of frame pointer if reload completed and frame pointer
2030 * combine.c (sombine_simplify_rtx): Fix comment;
2031 use subreg_lowpart_offset instead of subreg_lowpart_p
2032 (gen_lowpart_for_combine): Use subreg_lowpart_offset.
2033 * rtl.h (subreg_lowpart_parts_p): Kill.
2034 (subreg_lowpart_offset, subreg_highpart_offset): Declare.
2035 * simplify-rtx.c (simplify_subreg): Use subreg_lowpart_offset.
2036 * emit-rtl.c (gen_lowpart_SUBREG): Use subreg_lowpart_offset;
2037 (gen_lowpart_common): Likewise.
2038 (subreg_lowpart_p): Likewise.
2039 (subreg_lowpart_parts_p): Kill.
2040 (subreg_lowpart_offset, subreg_highpart_offset): New function.
2042 * emit-rtl.c (gen_lowpart_common): Use simplify_gen_subreg
2043 to simplify SUBREG and REG.
2044 (gen_highpart): Use simplify_gen_subreg for all simplifications.
2046 * emit-rtl.c (gen_realpart, gen_imagpart): Do not handle
2049 * rtlanal.c (replace_regs): Use simplify_gen_subreg
2051 Mon Jun 4 09:21:19 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
2053 * doc/c-tree.texi (ARRAY_REF): Say what type of expression must be.
2054 (ARRAY_RANGE_REF): Added description.
2056 * tree.def (ARRAY_RANGE_REF): New code.
2057 * alias.c (handled_component_p, can_address_p): Handle it.
2058 * dwarf2out.c (loc_descriptor_from_tree): Likewise.
2059 * explow.c (set_mem_attributes): Likewise.
2060 * expr.c (expand_assignment, get_inner_reference): Likewise.
2061 (expand_expr, expand_expr_unaligned, do_jump): Likewise.
2062 * fold-const.c (operand_equal_p): Likewise.
2063 * tree.c (staticp, stabilize_reference): Likewise.
2064 * varasm.c (decode_addr_const): Likewise.
2066 Sun Jun 3 21:59:51 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
2068 * reload.c (reload_inner_reg_of_subreg): Return 1 for PLUS.
2069 (push_reload): Handle non-REG in reload_inner_reg_of_subreg case.
2071 2001-06-03 kaz Kojima <kkojima@rr.iij4u.or.jp>
2073 * gcc/config/sh/sh.c (print_operand_address, print_operand): Call
2074 mark_constant_pool_use before output_addr_const.
2075 (struct pool_node): New field wend.
2076 (add_constant): Note a sequence of constants that are referenced
2078 (pool_window_label, pool_window_last): New variables.
2079 (dump_table): Emit a unspec_volatile representing the end of a
2080 sequence of constants.
2081 (mark_constant_pool_use): New function.
2082 * gcc/config/sh/sh.md (UNSPECV_WINDOW_END): New constant.
2083 (consttable_2): Add the second operand which flags whether
2084 this consttable entry was used or not.
2085 (consttable_4, consttable_8, consttable_sf, consttable_df):
2087 (consttable_window_end): New insn.
2089 2001-06-03 Alexandre Oliva <aoliva@redhat.com>
2091 * insn-addr.h (INSN_ADDRESSES_NEW): Make insn_uid__ unsigned.
2092 Reformat according to coding standards.
2095 * config/sh/sh.c (print_operand_address): Cast INTVAL to int.
2096 (shl_and_kind): Cast wide constant.
2097 (gen_far_branch): Define as static, as in declaration.
2098 (barrier_align): Compute cache-line length as unsigned. Add
2099 parentheses in initial credit computation.
2100 (rounded_frame_size): Add parentheses.
2101 (permanent_obstack): Remove declaration. Include ggc.h for
2102 declaration of ggc_add_root_rtx().
2103 (get_free_reg): Removed declaration of unused variable reg.
2104 (legitimize_pic_address): Mark mode argument as unused.
2106 2001-06-03 Igor Shevlyakov <igor@windriver.com>
2108 * config/sh/sh.c (output_branch): Support for insn with lenght
2109 attr 12 & 16 which represents cond branches outside +-4096 range.
2111 2001-06-03 Alexandre Oliva <aoliva@redhat.com>
2113 * config/sh/lib1funcs.asm (ic_invalidate): Align the
2114 cache-mirroring sequence. Add nops.
2116 2001-06-03 Joseph S. Myers <jsm28@cam.ac.uk>
2118 * doc/install-old.texi: Remove more old installation
2120 * doc/install.texi: Add relevant parts here.
2122 2001-06-03 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
2124 * doc/install.texi2html: New script.
2126 2001-06-03 David Edelsohn <edelsohn@gnu.org>
2128 * doc/install.texi: Update AIX information again.
2130 2001-06-02 Joseph S. Myers <jsm28@cam.ac.uk>
2132 * doc/gcc.texi, doc/install-old.texi: Remove old system-specific
2133 installation documentation.
2134 * doc/install.texi: Move it to here.
2136 2001-06-02 Joseph S. Myers <jsm28@cam.ac.uk>
2138 * doc/install.texi: Clean up Texinfo markup.
2140 2001-06-02 Joseph S. Myers <jsm28@cam.ac.uk>
2142 * doc/cpp.texi, doc/cppinternals.texi, doc/gcc.texi: Move contents
2143 to just after title page.
2145 2001-06-02 Joseph S. Myers <jsm28@cam.ac.uk>
2147 * doc/install-old.texi: Remove documentation of some configuration
2149 * doc/install.texi: Add relevant parts of this documentation here.
2151 2001-06-02 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
2153 * contrib.texi: Updated entries for Mark Mitchell, Joseph S. Myers,
2154 Gerald Pfeifer, Bernd Schmidt, and Dean Wakerley.
2156 Sat Jun 2 12:23:51 CEST 2001 Jan Hubicka <jh@suse.cz>
2158 * i386.md (all uses of ext_register_operand): Make sure they are
2159 VOIDmode; replace all uses outside zero_extend.
2160 (and?i splitters): Use ext_register_operands.
2161 (test?i peep2): Remove ignored constraints.
2162 * i386.c (ext_register_operand): Check that operand is
2163 eighter pseudo or hard or 'Q' register.
2165 Sat Jun 2 06:53:50 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
2167 * tree.h (struct record_layout_info_s): New field unpadded_align.
2168 (set_lang_adjust_rli): New declaration.
2169 * stor-layout.c (layout_decl): If DECL is packed, but at alignment
2170 it would have if not packed, do not downgrade DECL_ALIGN.
2171 (lang_adjust_rli, set_lang_adjust_rli): New.
2172 (start_record_layout): Initialize new field unpadded_align.
2173 (debug_rli): Display it.
2174 (place_union_field, place_field): Set it.
2175 (layout_type, case RECORD_TYPE): Call via lang_adjust_rli if set.
2177 * print-tree.c (print_node): Don't print "regdecl" when bit doesn't
2178 mean that; use proper names instead.
2179 Print DECL_NO_STATIC_CHAIN.
2181 * except.c (expand_builtin_frob_return_addr): Add missing call
2182 to convert_memory_address #ifdef POINTERS_EXTEND_UNSIGNED.
2183 (expand_builtin_eh_return): Likewise.
2184 (expand_eh_return): Clean up ptr_mode != Pmode cases.
2186 2001-06-01 Jan van Male <jan.vanmale@fenk.wau.nl>
2188 * doc/invoke.texi: Remove references to papers about sequence points
2189 to readings.html, refer to that page.
2191 2001-06-01 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
2193 * README: Update references to installation instructions.
2195 2001-06-01 Laurent Guerby <guerby@acm.org>
2196 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
2198 * doc/install.texi: Define srcdir when sources come from CVS.
2199 Significantly improve markup. Wrap overly long lines
2201 2001-06-01 DJ Delorie <dj@redhat.com>
2203 * c-tree.texi, contrib.texi, cpp.texi, cppinternals.texi,
2204 extend.texi, fdl.texi, gcov.texi, invoke.texi, md.texi,
2205 objc.texi, rtl.texi, tm.texi, texinfo.tex, gcc.1, cpp.1,
2206 gcov.1: Move to doc subdirectory.
2207 * install.texi: Move to doc/install-old.texi.
2208 * gcc.texi: Move to doc, refer to install-old.texi.
2209 * Makefile.in: Reflect move of docs to doc/.
2210 * f/Make-lang.in: Ditto.
2211 * java/Make-lang.in: Ditto.
2212 * doc/.cvsignore: New.
2214 2001-05-31 Jan van Male <jan.vanmale@fenk.wau.nl>
2216 * invoke.texi: use two spaces between command options, eliminate
2217 some 'overfull hboxes'
2219 2001-06-01 Hans-Peter Nilsson <hp@axis.com>
2221 * Makefile.in (s-mlib): Make backtick-commands always succeed.
2222 (DRIVER_DEFINES): Ditto.
2224 2001-05-31 Richard Henderson <rth@redhat.com>
2226 * gcc.c (init_gcc_specs): When linking against libgcc_s.so,
2227 also link against libgcc.a.
2229 2001-05-31 Geoff Keating <geoffk@cygnus.com>
2231 * config/mips/mips.h (ASM_OUTPUT_ASCII): Convert to function.
2232 * config/mips/mips.c (mips_output_ascii): New function.
2233 * config/mips/mips-protos.h (mips_output_ascii): Prototype.
2235 * config/mips/mips.h (DWARF_CIE_DATA_ALIGNMENT): Force to 4.
2237 Thu May 31 19:09:53 CEST 2001 Jan Hubicka <jh@suse.cz>
2239 * flow.c (set_block_for_new_insns): Remove bogus shortcut.
2240 * i386.c (ix86_expand_int_movcc): Force one of operands to be register.
2242 2001-05-31 Rodney Brown <rbrown64@csc.com.au>
2244 * install.texi (Configuration): Add html links for --with-gnu-as &
2245 --with-gnu-ld and refer to them from hppa & SCO triplets.
2246 (Specific): Link back to with-gnu-ld for all ELF platfoms.
2247 (Specific): Reword AVR binutils recommendation.
2249 2001-05-30 Zack Weinberg <zackw@stanford.edu>
2251 * ggc-page.c (size_lookup): Increase minimum allocation size
2253 (ggc_print_statistics): Report size of each bin in bytes, not
2254 as its order; there is no longer a direct relationship.
2256 2001-05-31 Jan van Male <jan.vanmale@fenk.wau.nl>
2258 * extend.texi: Fix formating of examples, eliminate some
2260 * gcc.texi: Eliminate some 'overfull hboxes'.
2261 * invoke.texi: Use two spaces between command options, eliminate
2262 some 'overfull hboxes'.
2264 2001-05-30 Richard Henderson <rth@redhat.com>
2266 * dwarf2out.c (dwarf2out_finish): Don't emit DW_AT_stmt_list at -g1.
2268 2001-05-30 Tom Tromey <tromey@redhat.com>
2270 * gcc.c (do_spec_1): In `%O' case, if we computed saved_suffix,
2271 use it in the new association.
2273 2001-05-30 Loren J. Rittle <ljrittle@acm.org>
2274 John David Anglin <dave@hiauly1.hia.nrc.ca>
2276 * gthr-posix.h (__gthread_active_ptr): Cast function pointer
2277 to target type to allow ISO C++ compiler to accept it.
2278 * gthr-dce.h (__gthread_active_ptr): Likewise.
2279 * gthr-solaris.h (__gthread_active_ptr): Likewise.
2281 2001-05-30 Neil Booth <neil@daikokuya.demon.co.uk>
2283 * cpplex.c (_cpp_lex_token): Revert patch of 16 May 2001
2284 so that we do accept comments in preprocessed input.
2286 2001-05-30 Neil Booth <neil@daikokuya.demon.co.uk>
2288 * cpphash.c (alloc_node): Cast allocated pointer.
2290 2001-05-30 Gordon Sadler <gbsadler1@lcisp.com>
2292 * invoke.texi (Option Summary): Remove -isystem-c++ from options.
2294 2001-05-29 Stan Shebs <shebs@apple.com>
2296 * gcc.texi: Add links for information about Objective-C.
2298 2001-05-29 Nathan Sidwell <nathan@codesourcery.com>
2300 * configure.in (gcc_version): Remove unrequired \ on ". (Solaris
2301 /bin/sed fails on [^\"]).
2302 (configargs.h): Likewise.
2304 2001-05-29 Hartmut Schirmer <SchirmerH@Innovative-Systems.de>
2306 * config/sh/sh.h (IDENT_ASM_OP): End with TAB, not LF.
2308 2001-05-28 Stan Shebs <shebs@apple.com>
2310 * objc/objc.gperf: Remove, no longer used.
2312 2001-05-28 Joseph S. Myers <jsm28@cam.ac.uk>
2314 * c-tree.texi, contrib.texi, cpp.texi, extend.texi, gcc.texi,
2315 gcov.texi, install.texi, md.texi, objc.texi, rtl.texi, tm.texi:
2316 Remove trailing whitespace.
2318 2001-05-28 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
2320 * doc/install.texi (Specific): http://reality.sgi.com/ariel/freeware/
2321 became http://freeware.sgi.com/.
2323 2001-05-27 Geoffrey Keating <geoffk@redhat.com>
2325 * local-alloc.c (update_equiv_regs): Don't eliminate constant
2328 2001-05-27 Stan Shebs <shebs@apple.com>
2330 * objc/objc-act.c: Add/fix various comments.
2331 (init_selector): Remove, no longer used.
2332 (build_msg_pool_reference): Ditto.
2333 (objc_debug): Ditto.
2335 2001-05-27 Neil Booth <neil@daikokuya.demon.co.uk>
2337 * c-decl.c (init_decl_processing):
2338 Don't call start_identifier_warnings.
2339 * flags.h (warn_id_clash, id_clash_len): Remove.
2340 * stringpool.c: Don't include flags.h.
2341 (scan_for_clashes, do_identifier_warnings,
2342 start_identifier_warnings): Remove.
2343 * toplev.c (warn_id_clash, id_clash_len): Remove.
2344 (display_help): Don't document -Wid-clash.
2345 (decode_W_option): Print warning on -Wid-clash.
2346 * tree.h (start_identifier_warnings): Remove.
2347 * invoke.texi: Remove documentation of -Wid-clash.
2349 2001-05-27 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
2351 * fixinc/fixtests.c: Declare entries in ENV_TABLE.
2353 2001-05-27 Bruce Korb <bkorb@gnu.org>
2355 * fixinc/check.tpl(HACK) add and use a Scheme variable
2356 (has no test text): error out if no "test_text" is defined
2357 * fixinc/fixincl.tpl: likewise
2358 (FIXIDX): make it an enumeration so we minimize diffs
2359 * fixinc/inclhack.def: re-alphabetize and add sort instructions
2360 * fixinc/fixincl.x: regenerate
2361 * fixinc/tests/base/stdio.h: test output got moved due to
2363 * README-fixinc: rewrite (mostly)
2365 2001-05-27 Neil Booth <neil@daikokuya.demon.co.uk>
2367 * cpplib.c (run_directive): Set pfile->directive.
2369 2001-05-23 Theodore Papadopoulo <Theodore.Papadopoulo@sophia.inria.fr>
2371 * c-tree.texi: Reformat the manual as a single chapter now
2372 included by gcc.texi.
2373 * gcc.texi: Include c-tree.texi. Merge all indexes.
2374 * Makefile.in (dvi): Add generation for the cppinternals
2375 documentation. Added dependencies on fdl.texi and c-tree.texi
2376 where appropriate. Use TEXI2DVI instead of custom tex calls.
2377 (info): Added dependencies on fdl.texi and c-tree.texi where
2378 appropriate. Remove the target c-tree.info.
2380 2001-05-27 Lars Brinkhoff <lars@nocrew.org>
2382 * combine.c (try_combine): Fix typo in comment.
2383 * expr.c (expand_expr): Likewise.
2384 * config/i370/i370.md (untyped_call): Likewise.
2386 2001-05-26 Bruce Korb <bkorb@gnu.org>
2388 * fixinc/fixtests.c(stdc_0_in_system_headers_test): Must return "FIX"
2389 when fixincl is operating in test mode
2390 * fixinc/inclhack.def(AAB_dgux_int_varargs) : aesthetics
2391 (AAB_ultrix_limits): remove redundant text
2392 (AAB_ultrix_memory): ditto
2393 (AAB_ultrix_string): ditto
2394 (djgpp_wchar_h): fix the test text
2395 (irix_stdio_va_list): add test text
2396 (irix_limits_const): add a testing output file (limits.h is overwritten)
2397 (strict_ansi_not_ctd): put limits.h second in list for same reason
2398 (solaris27_mutex_init): test text needed selection text, too
2400 * fixinc/fixtests.c(stdc_0_in_system_headers_test): Must return "FIX"
2401 when fixincl is operating in test mode
2403 2001-05-26 Philip Blundell <philb@gnu.org>
2405 * config/c4x/c4x-protos.h: Use GCC_C_PRAGMA_H in place of _C_PRAGMA_H.
2406 * config/i960/i960-protos.h: Likewise.
2407 * config/i370/i370-protos.h: Likewise.
2408 * config/h8300/h8300-protos.h: Likewise,
2409 * config/sh/sh-protos.h: Likewise.
2410 * config/v850/v850-protos.h: Likewise.
2412 2001-05-26 Philip Blundell <philb@gnu.org>
2414 * config/arm/arm-protos.h: Use GCC_C_PRAGMA_H in place of _C_PRAGMA_H.
2416 2001-05-25 Zack Weinberg <zackw@stanford.edu>
2418 * toplev.c (debug_args, f_options, W_options): Mark
2419 descriptions for translation.
2420 (display_help): Translate descriptions on output.
2422 * cp/lang-options.h, f/lang-options.h, java/lang-options.h,
2423 objc/lang-options.h: Mark descriptions for translation.
2425 * aclocal.m4: Quote final argument of patsubst. Use
2426 3-argument form of AC_DEFINE. Restore quotes to [] while
2428 * configure.in: Remove unnecessary changequote calls.
2429 * configure, config.in: Regenerate.
2431 2001-05-25 Sam TH <sam@uchicago.edu>
2433 * basic-block.h: Fix header include guards.
2434 * bitmap.h c-dump.h c-lex.h c-pragma.h c-tree.h collect2.h
2435 cppdefault.h cpphash.h cpplib.h defaults.h diagnostic.h errors.h
2436 except.h flags.h gcc.h gcov-io.h graph.h gstab.h gthr-aix.h
2437 gthr-dce.h gthr-posix.h gthr-rtems.h gthr-single.h gthr-solaris.h
2438 gthr-vxworks.h gthr-win32.h gthr.h hard-reg-set.h hwint.h
2439 insn-addr.h libgcc2.h mbchar.h mkdeps.h params.h prefix.h real.h
2440 rtl.h sbitmap.h system.h timevar.h toplev.h tradcpp.h tsystem.h
2441 varray.h version.h: Likewise.
2442 * config/dbxelf.h config/fp-bit.h config/arm/arm-protos.h
2443 config/arm/arm.h config/c4x/c4x-protos.h
2444 config/h8300/h8300-protos.h config/h8300/h8300.h
2445 config/i370/i370-protos.h config/i370/i370.h
2446 config/i960/i960-protos.h config/mcore/mcore.h
2447 config/mips/mips-protos.h config/sh/sh-protos.h config/sh/sh.h
2448 config/v850/v850-protos.h config/v850/v850.h: Likewise.
2449 * fixinc/fixlib.h fixinc/server.h: Likewise.
2451 2001-05-25 Stacey Sheldon <ssheldon@Catena.com>
2453 * config/arc/initfini.c (.init): Fix typo.
2455 2001-05-25 Geoffrey Keating <geoffk@redhat.com>
2457 * config/rs6000/rs6000.md (fseldfsf4): Correct mode of operand 4.
2459 2001-05-25 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
2461 * i386/i386.h (CC1_CPU_SPEC): Clarify -m486 etc deprecation messages.
2463 2001-05-25 Richard Henderson <rth@redhat.com>
2465 * libgcc-std.ver: Export XFmode and TFmode versions of symbols.
2467 2001-05-25 Richard Henderson <rth@redhat.com>
2469 * config.gcc (all gnu and linux): Use t-slibgcc-elf-ver with t-linux.
2470 (i386-*-solaris2): Use t-slibgcc-elf-ver or t-slibgcc-sld.
2471 (sparc*-*-solaris2): Likewise.
2472 * config/t-linux: Remove shared libgcc macros.
2473 * config/t-slibgcc-elf-ver: Move from sparc/t-slibgcc.
2474 * config/t-slibgcc-sld: Move from sparc/t-slibgcc-sld.
2476 2001-05-25 Loren J. Rittle <ljrittle@acm.org>
2478 * config.gcc (*-*-freebsd*): Report bad configuration.
2480 2001-05-25 David Edelsohn <edelsohn@gnu.org>
2482 * xcoffout.h (DBX_OUTPUT_GCC_MARKER): Do not emit any marker.
2484 * config/rs6000/aix.h (USER_LABEL_PREFIX): AIX symbols do not have
2486 (ASM_OUTPUT_LABELREF): Delete.
2488 2001-05-25 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
2490 * fixinc/inclhack.def (strict_ansi_not, strict_ansi_not_ctd,
2491 strict_ansi_only): Don't run if stdc_0_in_system_headers.
2492 * fixinc/fixincl.x: Regenerate.
2493 * fixinc/fixtests.c (stdc_0_in_system_headers_test): New function.
2494 (FIX_TEST_TABLE): Declare it.
2495 * fixinc/fixlib.h: Include config.h.
2497 2001-05-25 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
2499 * fixinc/inclhack.def (alpha___assert): Change char * args to
2500 const char * on Tru64 UNIX to avoid excessive warnings from
2502 * fixinc/fixincl.x: Regenerate.
2504 2001-05-25 Geoff Keating <geoffk@redhat.com>
2506 * dbxout.c (dbxout_symbol): Invert previous patch, which was
2507 outputting a tag only for variable-size records.
2509 2001-05-25 Jeff Knaggs <jknaggs@redhat.com>
2511 * config/alpha/alpha.md (movtf_internal): Use reg_overlap_mentioned_p
2512 instead of rtx_equal_p for early clobber test.
2514 2001-05-26 Mark Mitchell <mark@codesourcery.com>
2516 * builtins.def: Encode additional information, such as names and
2518 * builtin-types.def: New file.
2519 * builtins.c (built_in_names): Adjust use of DEF_BUILTIN.
2520 (built_in_decls): Likewise. Don't explicitly initialize global
2522 (expand_builtin_mathfn): Handle float and long double variants of
2524 (expand_builtin): Likewise.
2525 * c-common.c (c_common_nodes_and_builtins): Make it table-driven.
2526 (expand_tree_builtin): Handle long, long long, float, and long
2527 double variants of math functions.
2528 * c-common.h (c_tree_index): Remove some unused nodes.
2529 (void_ftype): Remove.
2530 (void_type_ptr): Likewise.
2531 (int_ftype_int): Likewise.
2532 (ptr_ftype_sizetype): Likewise.
2533 * c-decl.c (init_decl_processing): Remove creation of DWARF
2535 * defaults.h (MD_INIT_BUILTINS): Provide default definition.
2536 * tree.h (built_in_function): Adjust definition of DEF_BUILTIN.
2537 * Makefile.in (c-common.o): Depend on builtin-types.def.
2539 2001-05-25 Dale Johannesen <dalej@apple.com>
2541 * config/rs6000/t-darwin: Fix dependencies for darwin.o.
2543 2001-05-25 Neil Booth <neil@daikokuya.demon.co.uk>
2545 * c-parse.in (notype_initdcl): Remove redundant line.
2547 2001-05-25 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
2549 * aclocal.m4: Fixed typo.
2550 (gcc_AC_HEADER_STDBOOL): Define.
2551 (gcc_AC_C__BOOL): Define.
2552 * configure.in: Use them.
2553 (AC_CHECK_HEADERS): Remove stdbool.h
2554 * configure, config.in: Regenerate.
2556 2001-05-25 Richard Henderson <rth@redhat.com>
2558 * function.c (expand_function_start): Don't abort on PARALLEL
2559 returns from hard_function_value.
2561 2001-05-25 Richard Henderson <rth@redhat.com>
2563 * config/i386/i386.md: Revert previous change. Do not apply
2564 the peephole if the components do not die after the sequence.
2566 2001-05-25 Joseph S. Myers <jsm28@cam.ac.uk>
2568 * c-parse.in (array_declarator): New. Handle C99 constructs.
2569 Don't restrict [*] declarators to C only.
2570 (after_type_declarator, parm_declarator_starttypename,
2571 parm_declarator_nostarttypename, notype_declarator,
2572 direct_absdcl1): Use it.
2573 * c-decl.c (build_array_declarator, set_array_declarator_type):
2574 New functions. Warn that [*] isn't properly implemented; pedwarn
2575 for [*] outside C99 mode if pedantic rather than giving a hard
2577 (grokdeclarator): Handle static and type qualifiers in parameter
2579 * c-tree.h (build_array_declarator, set_array_declarator_type):
2581 * extend.texi (Attribute Syntax): Document attributes in parameter
2584 2001-05-25 Mark Mitchell <mark@codesourcery.com>
2586 * config/i386/i386.md: Make sure cmpstr peepholes do not
2587 affect liveness information.
2589 2001-05-24 Mark Mitchell <mark@codesourcery.com>
2591 * c-typeck.c (digest_init): Issue error messages about
2592 invalid constants, not warnings.
2594 2001-05-24 Mark Mitchell <mark@codesourcery.com>
2596 * invoke.texi (-fno-builtin): Document that this is always on
2599 2001-05-24 Philip Blundell <philb@gnu.org>
2601 * doc/install.texi (arm*-*-linux-gnu): Say that binutils 2.10 is
2604 2001-05-24 Philip Blundell <philb@gnu.org>
2606 * config/arm/arm.c (output_return_instruction): Correctly handle
2607 interworking and interrupt functions.
2609 2001-05-24 Philip Blundell <philb@gnu.org>
2611 * config/arm/arm.h (TARGET_SWITCHES): Correct misleading help for
2612 -m{no-}sched-prolog. Fix typos and improve formatting.
2614 2001-05-24 Philip Blundell <philb@gnu.org>
2616 * invoke.texi (ARM Options): Improve wording slightly. Add
2617 documentation for more options, including those for Thumb mode.
2618 Don't mention options that don't exist or are unimplemented.
2619 (Thumb Options): Delete; merged into above section.
2621 2001-05-24 Geoff Keating <geoffk@redhat.com>
2623 * config/rs6000/linux.h (SIGNAL_FRAMESIZE): Define.
2624 (MD_FALLBACK_FRAME_STATE_FOR): Use it.
2626 Thu May 24 19:47:19 CEST 2001 Jan Hubicka <jh@suse.cz>
2628 * simplify-rtx.c (simplify_subreg): Fix CONCAT simplification;
2629 fix hard register simplification.
2631 Thu May 24 00:15:17 2001 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
2633 * sparc/sol2.h (CPLUSPLUS_CPP_SPEC): Add all of CPP_SPEC instead
2634 of just copying CPP_CPU_SPEC.
2636 Thu May 24 15:56:48 CEST 2001 Jan Hubicka <jh@suse.cz>
2638 * i386.c (incdec_operand): Accept only 1 and -1.
2640 2001-05-23 Kelley Cook <kelley.cook@home.com>
2642 * Makefile.in: Move many of the *_H definitions eariler in the
2643 file, so that rules in t-* files that use them for
2644 dependencies will work in a parallel build.
2645 * config/i386/t-cygwin (winnt.o): Depend on $(CONFIG_H).
2647 2001-05-23 Richard Henderson <rth@redhat.com>
2649 * integrate.c (expand_inline_function): Handle CONCAT DECL_RESULT.
2651 2001-05-23 Neil Booth <neil@daikokuya.demon.co.uk>
2653 * cpp.texi: Update for handling of charconsts.
2654 * cpplex.c (maybe_read_ucs): Don't accept D800-DFFF. Update
2655 diagnostics. Skip to the end if the UCS is too short.
2656 (cpp_interpret_charconst): Long charconsts issue a warning
2659 2001-05-23 Richard Henderson <rth@redhat.com>
2661 * doc/install.texi (alpha-linux): Require binutils 2.11.
2663 2001-05-23 Neil Booth <neil@daikokuya.demon.co.uk>
2665 * c-lex.c (read_escape, read_ucs): Delete.
2666 (lex_string): Use cpp_parse_escape.
2667 * cpplex.c (read_ucs): Rename maybe_read_ucs. Do nothing
2668 if not C++ or not C99. Warn if traditional.
2669 (parse_escape): Rename cpp_parse_escape. Make the bitmask
2670 unsigned. Warn for out-of-range escape sequences here.
2671 Update to use maybe_read_ucs.
2672 (cpp_interpret_charconst): Don't warn here.
2673 * cpplib.h (cpp_parse_escape): New exported function.
2675 2001-05-23 Joseph S. Myers <jsm28@cam.ac.uk>
2677 * extend.texi (Attribute Syntax): Clarify application of
2678 attributes to parameters declared as functions or arrays.
2680 2001-05-23 Jason Merrill <jason_merrill@redhat.com>
2682 * dbxout.c (dbxout_type_methods): Do still group methods by name.
2684 2001-05-23 Zack Weinberg <zackw@stanford.edu>
2686 * diagnostic.c (vnotice): Kill.
2687 (fnotice): Call vfprintf directly.
2688 (diagnostic_for_decl, output_do_verbatim, output_verbatim,
2689 verbatim, set_diagnostic_context): Rename string argument to
2690 indicate that it is run through gettext.
2691 (vbuild_message_string, build_message_string, output_do_printf):
2692 Rename string argument to indicate that it is NOT run through
2694 (output_printf, diagnostic_for_decl, fatal_io_error, sorry,
2695 output_do_verbatim, set_diagnostic_context, fnotice, _fatal_insn):
2696 Run msgid argument through gettext.
2697 (default_print_error_function): Run constant strings through
2698 gettext when nothing else will.
2699 (fatal_error, internal_error, error_recursion): Use fnotice.
2700 Present complete sentences to gettext.
2702 2001-05-23 Mark Mitchell <mark@codesourcery.com>
2704 * jump.c (mark_jump_label): Fix thinko in 2001-05-19 change.
2706 2001-05-23 Richard Henderson <rth@redhat.com>
2708 * function.c (expand_function_start): Always use a pseudo
2709 for the function result value.
2711 2001-05-22 Richard Henderson <rth@redhat.com>
2713 * config/mips/iris6.h (EH_FRAME_SECTION_ASM_OP): Give the
2714 section pointer alignment.
2716 * doc/install.texi (alpha-linux): Require binutils >= 2.10.
2718 * unwind-dw2-fde.c (__deregister_frame_info): Stringize use
2719 of __USER_LABEL_PREFIX__.
2721 2001-05-22 Richard Henderson <rth@redhat.com>
2723 * unwind-dw2-fde.c (__deregister_frame_info): Stubbify in favour of...
2724 (__deregister_frame_info_bases): New.
2725 * unwind-dw2-fde.h: Declare it.
2726 * libgcc-std.ver: Export it.
2727 * crtstuff.c (__do_global_dtors_aux): Call it if we would have
2728 called __register_frame_info_bases.
2730 2001-05-22 Loren J. Rittle <ljrittle@acm.org>
2732 * config/freebsd.h (FBSD_CPP_PREDEFINES): Use #endif/#if pair
2733 instead of #elif (which is OK for this case but not in general).
2735 2001-05-22 Andrew MacLeod <amacleod@redhat.com>
2737 * builtins.c (expand_builtin_longjmp): A longjmp can be a call too.
2738 * config/ia64/ia64.md (nonlocal_goto): Reverse label and frame pointer
2739 parameters to __ia64_nonlocal_goto. Flag as NO_RETURN.
2740 * config/ia64/ia64.c (ia64_expand_epilogue): Make sure we are issuing
2741 "r2" to the assembly file. Only issue allocs with non-zero parameters.
2743 2001-05-22 Loren J. Rittle <ljrittle@acm.org>
2744 David O'Brien <obrien@freebsd.org>
2746 * config/freebsd.h (LIB_SPEC): Key the exact setting to
2747 configure-time options and target version of FreeBSD. Set-up
2748 to match architectural change in threading support. Correctly
2749 report when -pthread option is not supported by configure-time
2751 (FBSD_CPP_PREDEFINES): Move from architecture-specific files
2752 and extend to encode target version number in run-time setting
2753 of __FreeBSD__ macro to match the system compiler.
2754 (CPP_PREDEFINES): Likewise.
2755 (PREFERRED_DEBUGGING_TYPE): Change to DWARF2_DEBUG.
2757 * config/alpha/freebsd.h (CPP_PREDEFINES): Moved to common freebsd.h.
2758 * config/i386/freebsd.h (CPP_PREDEFINES): Likewise.
2760 2001-05-22 Loren J. Rittle <ljrittle@acm.org>
2761 David O'Brien <obrien@freebsd.org>
2763 * config.gcc (the unlabeled system switch statement): Add
2764 generic configuration section to handle *-*-freebsd*. Also,
2765 to match the system compiler, default to threading support (it
2766 may be disabled with the standard --disable-threads
2767 configuration-time switch).
2768 (i[34567]86-*-freebsd* in machine-specific section): Use it.
2769 (alpha*-*-freebsd* in machine-specific section): Likewise.
2771 * config/freebsd3.h: New file to expose FBSD_MAJOR macro (3).
2772 * config/freebsd4.h: New file to expose FBSD_MAJOR macro (4).
2773 * config/freebsd5.h: New file to expose FBSD_MAJOR macro (5).
2774 * config/freebsd6.h: New file to expose FBSD_MAJOR macro (6).
2775 * config/freebsd-nthr.h: New file to expose FBSD_NO_THREADS macro.
2777 2001-05-22 Loren J. Rittle <ljrittle@acm.org>
2778 David O'Brien <obrien@freebsd.org>
2780 * config/t-freebsd (TARGET_LIBGCC2_CFLAGS): Add -fPIC.
2781 * config/t-freebsd-thread (TARGET_LIBGCC2_CFLAGS): Add
2782 -pthread instead setting macro.
2784 2001-05-22 Richard Henderson <rth@redhat.com>
2786 * crtstuff.c (__register_frame_info_bases): Declare.
2787 (frame_dummy): Use it, if CRT_GET_RFIB_TEXT or CRT_GET_RFIB_DATA.
2788 (__do_global_dtors_aux, __do_global_dtors): Streamline.
2790 * config/i386/linux.h (ASM_MAYBE_OUTPUT_ENCODED_ADDR_RTX): New.
2791 (CRT_GET_RFIB_DATA): New.
2792 * config/i386/sysv4.h: Likewise.
2793 * config/i386/sco5.h: Likewise.
2794 (ASM_PREFERRED_EH_DATA_FORMAT): New.
2796 2001-05-22 Richard Henderson <rth@redhat.com>
2798 * rtl.c (read_string): Break out from ...
2799 (read_rtx): ... here.
2801 2001-05-22 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
2803 * doc/install.texi (Specific): Remove a bogus and duplicate part
2804 copied from the end of the document.
2806 2001-05-22 Bernd Schmidt <bernds@redhat.com>
2808 * Makefile.in (LIBGCC_DEPS): Correct LIB1ASMSRC dependency.
2810 2001-05-22 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
2812 * install.texi: Remove obsolete information on SunOS as well as
2813 i386-sun-sunos4, i860-intel-osf1, and powerpcle-*-solaris2*.
2814 (Installing GNU CC on the Sun): Remove section.
2816 2001-05-22 Alexandre Oliva <aoliva@redhat.com>
2818 * cppfiles.c (remove_component_p): Don't assume lstat/stat will
2819 keep errno unchanged on success.
2821 2001-05-22 Joseph S. Myers <jsm28@cam.ac.uk>
2823 * c-lex.c (lex_number): If pedantic and not C99, pedwarn exactly
2824 once for hexadecimal floats, whether or not they contain a decimal
2825 point. Don't let the setting of pedantic otherwise affect the
2826 parsing of hexadecimal floats.
2828 2001-05-22 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
2830 * README.ACORN: Remove obsolete file.
2832 2001-05-22 Jan Hubicka <jh@suse.cz>
2834 * combine.c (gen_binary): Use swap_commutative_operands_p
2835 (simplify_comparison): Likewise.
2836 * expmed.c (emit_store_flag): Likewise.
2837 * expr.c (compare_from_rtx): Likewise.
2838 (do_compare_rtx_and_jump): Likewise.
2839 * optabs.c (emit_cmp_and_jump_insn): Revert last patch; abort
2840 if not emitting a branch and operands want swapping.
2842 2001-05-22 Neil Booth <neil@daikokuya.demon.co.uk>
2844 * c-lex.c (c_lex): Just cast cpp's hashnode to gcc's one.
2845 * stringpool.c: (IS_FE_IDENT, make_identifier): Delete.
2846 (maybe_get_identifier): Update.
2847 * tree.h (make_identifier): Delete.
2849 2001-05-21 Richard Henderson <rth@redhat.com>
2851 * combine.c (subst): Do not substitute for a register as
2852 a destination subreg/strict_low_part/zero_extract.
2854 * combine.c (simplify_comparison): Update op1 after constant
2856 * recog.c (const_int_operand): Accept only constants valid
2858 * genrecog.c: Update comments wrt const_int_operand.
2860 * emit-rtl.c (init_emit_once): Zero unused memory in a
2863 2001-05-21 Mark Mitchell <mark@codesourcery.com>
2865 * tree.h (type_num_arguments): Declare it.
2866 * tree.c (type_num_arguments): New function.
2868 2001-05-21 Richard Henderson <rth@redhat.com>
2870 * dwarf2out.c (current_funcdef_number): Move outside dwarf2
2873 2001-05-21 Geoff Keating <geoffk@redhat.com>
2875 * config/rs6000/rs6000.md (maxsf3): Use rs6000_emit_minmax.
2877 (minsf3): Use rs6000_emit_minmax.
2878 (minsf3+1): Generalize to handle both SMIN and SMAX. Use
2880 (movsfcc): Use rs6000_emit_cmove.
2881 (fselsfsf4): Don't compare a CONST_INT with a floating-point value.
2882 Don't generate emit_fselsfsf4.
2883 (fseldfsf4): Likewise.
2884 (maxdf3): Use rs6000_emit_minmax.
2886 (mindf3): Use rs6000_emit_minmax.
2887 (mindf3+1): Generalize to handle both SMIN and SMAX. Use
2889 (movdfcc): Use rs6000_emit_cmove.
2890 (fseldfdf4): Don't compare a CONST_INT with a floating-point value.
2891 Don't generate emit_fselsfsf4.
2892 (fselsfdf4): Likewise.
2893 * config/rs6000/rs6000.c (zero_fp_constant): New predicate.
2894 (min_max_operator): New predicate.
2895 (rs6000_emit_cmove): New function.
2896 (rs6000_emit_minmax): New function.
2897 * config/rs6000/rs6000-protos.h: Prototype new functions.
2898 * config/rs6000/rs6000.h (PREDICATE_CODES): Add zero_fp_constant
2899 and min_max_operator.
2901 * config/rs6000/rs6000.c (output_cbranch): Handle all
2902 conditional types in the switch statement.
2904 2001-05-21 Mark Mitchell <mark@codesourcery.com>
2906 * c-decl.c (finish_decl): Don't set DECL_C_HARD_REGISTER for
2907 non-register variables.
2908 * extend.texi: Document that asm-specifications do not make sense
2909 for non-static local variables.
2911 2001-05-21 Jason Merrill <jason_merrill@redhat.com>
2913 * dbxout.c (MINIMAL_DEBUG, flag_minimal_debug): Lose.
2914 (dbxout_type_fields): Lose minimal_debug support.
2915 (dbxout_type_methods, dbxout_type): Likewise.
2917 2001-05-17 Andrew Haley <aph@redhat.com>
2919 * config/rs6000/linux.h (MD_FALLBACK_FRAME_STATE_FOR): New.
2921 2001-05-21 Richard Henderson <rth@redhat.com>
2923 * dwarf2out.c (DEBUG_FRAME_SECTION): Rename from FRAME_SECTION.
2926 2001-05-20 Richard Henderson <rth@redhat.com>
2928 * dwarf2out.c (DEBUG_ABBREV_SECTION, DEBUG_ARANGES_SECTION,
2929 DEBUG_MACINFO_SECTION, DEBUG_LOC_SECTION, DEBUG_PUBNAMES_SECTION,
2930 DEBUG_STR_SECTION): Rename from s/DEBUG_//. Update all users.
2931 * dwarfout.c (DEBUG_SFNAMES_SECTION, DEBUG_SRCINFO_SECTION,
2932 DEBUG_MACINFO_SECTION, DEBUG_PUBNAMES_SECTION, DEBUG_ARANGES_SECTION):
2934 * config/mips/iris6.h (DEBUG_SFNAMES_SECTION, DEBUG_SRCINFO_SECTION,
2935 DEBUG_MACINFO_SECTION, DEBUG_PUBNAMES_SECTION, DEBUG_ARANGES_SECTION,
2936 DEBUG_FRAME_SECTION, DEBUG_ABBREV_SECTION): Rename as above.
2937 (DEBUG_LOC_SECTION, DEBUG_STR_SECTION): New.
2938 * config/ia64/ia64.h (DEBUG_ABBREV_SECTION, DEBUG_ARANGES_SECTION,
2939 DEBUG_PUBNAMES_SECTION): Rename as above.
2940 (DEBUG_MACINFO_SECTION, DEBUG_LOC_SECTION, DEBUG_STR_SECTION): New.
2942 2001-05-20 Richard Henderson <rth@redhat.com>
2944 * optabs.c (emit_cmp_and_jump_insns): Don't swap commutative
2945 operands unless the operation is commutative.
2947 2001-05-20 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
2949 * fold-const.c (tree_expr_nonnegative_p): Detect more non-negative
2952 2001-05-21 Joseph S. Myers <jsm28@cam.ac.uk>
2954 * extend.texi: Clarify documentation of extensions included in ISO
2955 C99. Prefer C99 terminology and syntax to old GNU terminology and
2956 syntax. Add more index entries. Document mixed declarations and
2957 code as an extension in C89 mode. Warn about future changes to
2958 semantics of inline functions. Fixes PR other/930.
2960 Sun May 20 16:39:24 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
2962 * expr.c (expand_expr, case ARRAY_REF): Don't fold constant
2963 access if EXPAND_CONST_ADDRESS or EXPAND_INITIALIZER.
2964 (expand_expr, case COMPONENT_REF): Do copy if misaligned even
2965 if EXPAND_CONST_ADDRESS or EXPAND_INITIALIZER.
2967 * stmt.c (expand_decl): Set mode, alignment, and sizes for CONST_DECL.
2969 2001-05-20 Richard Henderson <rth@redhat.com>
2971 * sched-deps.c (sched_analyze_insn): Force volatile memory reads
2972 to be output before a branch.
2974 2001-05-20 Richard Henderson <rth@redhat.com>
2976 * Makefile.in (dwarf2asm.o): Depend on $(TREE_H).
2978 2001-05-20 Richard Henderson <rth@redhat.com>
2980 * config/i386/att.h (ASM_SHORT, ASM_LONG): Add trailing \t.
2981 (ASM_DOUBLE): Remove.
2982 * config/i386/bsd.h, config/i386/sco5.h: Likewise.
2983 * config/i386/sun386.h: Likewise.
2985 * config/i386/i386.h (UNALIGNED_SHORT_ASM_OP): New.
2986 (UNALIGNED_INT_ASM_OP, INT_ASM_OP): New.
2988 * config/i386/cygwin.h (INT_ASM_OP): Remove.
2989 * config/i386/freebsd-aout.h, config/i386/i386-aout.h: Likewise.
2990 * config/i386/i386-coff.h, config/i386/i386-interix.h: Likewise.
2991 * config/i386/netbsd.h, config/i386/openbsd.h: Likewise.
2993 * config/i386/cygwin.h: Adjust uses of ASM_LONG for trailing \t.
2994 * config/i386/djgpp.h, config/i386/i386.h: Likewise.
2995 * config/i386/i386elf.h, config/i386/ptx4-i.h: Likewise.
2996 * config/i386/sco5.h, config/i386/svr3gas.h: Likewise.
2997 * config/i386/sysv4.h, config/i386/vsta.h: Likewise.
2998 * config/i386/win32.h: Likewise.
3000 2001-05-20 Joseph S. Myers <jsm28@cam.ac.uk>
3002 * invoke.texi: Add more options to summary list.
3004 2001-05-20 Joseph S. Myers <jsm28@cam.ac.uk>
3006 * invoke.texi: Document meaning of -pedantic when -std=gnu* is
3007 used. Fixes PR c/2291.
3008 * gcc.1: Regenerate.
3010 2001-05-20 Stephane Carrez <Stephane.Carrez@worldnet.fr>
3012 * config/m68hc11/m68hc11.c (m68hc11_override_options): Ignore
3013 the -fpic and -fPIC options, clear flag_pic.
3015 2001-05-20 Neil Booth <neil@daikokuya.demon.co.uk>
3017 * hashtable.c (calc_hash): Fix HASHSTEP definition.
3018 * stringpool.c (make_identifier): No statistics here anymore.
3019 * objc-act.c (steup_string_decl): Remove redundant check.
3021 2001-05-20 Neil Booth <neil@daikokuya.demon.co.uk>
3023 * Makefile.in (OBJS, LIBCPP_OBJS, LIBCPP_DEPS,
3024 cpplib.o, cpphash.o, fix-header): Update.
3025 (hashtable.o): New target.
3026 * c-common.h: Include cpplib.h. Define C_RID_CODE and
3027 struct c_common_identifier here.
3028 * c-lang.c (c_init_options): Update. Call set_identifier_size.
3029 * c-lex.c (c_lex): Update.
3030 * c-pragma.h: Update.
3031 * c-tree.h (struct lang_identifier): Contain c_common_identifier.
3033 (C_RID_CODE): Delete.
3034 * cpphash.c: Rewrite to use hashtable.c.
3035 * cpphash.h: Update include guards.
3036 (struct cpp_reader): Remove hashtab.
3037 hash_ob and buffer_ob are no longer pointers. Add hash_table
3039 (HASHSTEP, _cpp_init_hashtable, _cpp_lookup_with_hash): Delete.
3040 (_cpp_cleanup_hashtable): Rename _cpp_destroy_hashtable.
3041 (_cpp_cleanup_stacks): Rename _cpp_init_directives.
3042 * cppinit.c (cpp_create_reader): Update.
3043 * cpplex.c (cpp_ideq, parse_identifier, cpp_output_token): Update.
3044 (cpp_interpret_charconst): Eliminate warning.
3045 * cpplib.c (do_pragma, do_endif, push_conditional,
3046 cpp_push_buffer, cpp_pop_buffer): Update.
3047 (_cpp_init_stacks): Rename cpp_init_directives.
3048 (_cpp_cleanup_stacks): Remove.
3049 * cpplib.h: Update include guards. Include tree-core.h and c-rid.h.
3050 (cpp_hashnode, cpp_token, NODE_LEN, NODE_NAME,
3051 cpp_forall_identifiers, cpp_create_reader): Update.
3052 (C_RID_CODE, cpp_make_node): New.
3053 (c_common_identifier): New identifier node for C front ends.
3054 * cppmain.c (main): Update.
3055 * fix-header.c (read_scan_file): Update.
3056 * flags.h (id_clash_len): Make unsigned.
3057 * ggc.h (ggc_mark_nonnull_tree): New.
3060 * stringpool.c: Update comments and copyright. Update to use
3062 * toplev.c (approx_sqrt): Move to hashtable.c.
3063 (id_clash_len): Make unsigned.
3064 * toplev.h (ident_hash): New.
3065 * tree.c (gcc_obstack_init): Move to hashtable.c.
3066 * tree.h: Include hashtable.h.
3067 (IDENTIFIER_POINTER, IDENTIFIER_LENGTH): Update.
3068 (GCC_IDENT_TO_HT_IDENT, HT_IDENT_TO_GCC_IDENT): New.
3069 (struct tree_identifier): Update.
3070 (make_identifier): New.
3072 * cp-tree.h (struct lang_identifier, C_RID_YYCODE): Update.
3073 (C_RID_CODE): Remove.
3074 * lex.c (cxx_init_options): Call set_identifier_size. Update.
3075 (init_parse): Don't do it here.
3077 * objc-act.c (objc_init_options): Call set_identifier_size. Update.
3079 Sat May 19 18:23:04 2001 Richard Henderson <rth@redhat.com>
3081 * except.c (dw2_build_landing_pads): Use word_mode, not Pmode,
3083 (expand_eh_return): Convert between word_mode and Pmode.
3084 * unwind-dw2.c (extract_cie_info): Do not assume words and pointers
3086 (execute_stack_op): Likewise.
3087 (execute_cfa_program): Likewise.
3088 (uw_frame_state_for): Likewise.
3089 (uw_update_context_1): Likewise.
3090 * unwind.inc (_Unwind_Reason_Code): Likewise.
3091 * config/mips/mips.h (EH_RETURN_DATA_REGNO): Define.
3092 (EH_RETURN_STACKADJ_RTX): Likewise.
3093 * config/mips/mips.c (compute_frame_size): Make space for saving
3094 EH return registers.
3095 (mips_expand_epilogue): Handle EH stack adjustments.
3096 * config/mips/mips.md (eh_return): New pattern.
3097 (eh_set_lr_si): Likewise.
3098 (eh_set_lr_di): Likewise.
3099 Add splitter to perform EH return after reload.
3101 2001-05-19 Mark Mitchell <mark@codesourcery.com>
3103 * jump.c (mark_jump_label): Tidy previous change.
3105 2001-05-19 Bruce Korb <bkorb@gnu.org>
3107 * fixinc/genfixes: no need for two warnings
3108 * fixinc/Makefile.in: open stdin for those building with a closed one.
3110 2001-05-19 Mark Mitchell <mark@codesourcery.com>
3112 * jump.c (jump_optimize_1): Tidy.
3113 (mark_jump_label): When changing the label in a LABEL_REF, change
3114 update any REG_EQUAL notes as well.
3116 2001-05-19 Joseph S. Myers <jsm28@cam.ac.uk>
3118 * c-parse.in (parm_declarator): Split into
3119 parm_declarator_starttypename and parm_declarator_nostarttypename.
3120 (parm_declarator_starttypename, parm_declarator_nostarttypename):
3121 New. Allow parenthesised sub-declarators which don't begin with a
3122 TYPENAME. Fixes PR c/166.
3124 2001-05-19 Mark Mitchell <mark@codesourcery.com>
3126 * defaults.h (TARGET_ALLOWS_PROFILING_WITHOUT_FRAME_POINTER): New
3128 * tm.texi (TARGET_ALLOWS_PROFILING_WITHOUT_FRAME_POINTER):
3130 * toplev.c (main): If the target does not allow profiling without
3131 a frame pointer, issue an error message.
3132 * config/i386/linux.h (TARGET_ALLOWS_PROFILING_WITHOUT_FRAME_POINTER):
3135 Sat May 19 07:53:42 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
3137 * recog.c (general_operand): Modify last change to allow it if reload
3140 Sat May 19 10:23:54 CEST 2001 Jan Hubicka <jh@suse.cz>
3142 * recog.c (general_operand): Prohibit nonzero subreg bytes on
3143 subregs containing mem.
3145 Sat May 19 09:40:45 2001 Denis Chertykov <denisc@overta.ru>
3147 * regrename.c (regrename_optimize): frame pointer register can
3150 2001-05-18 Jason Merrill <jason_merrill@redhat.com>
3152 * README.DWARF: Move into dwarfout.c.
3154 2001-05-18 Dale Johannesen <dalej@apple.com>
3156 * config/rs6000/rs6000.c (secondary_reload_class): Fix Darwin
3157 specific misuse of r0 as a reload address.
3159 Fri May 18 22:42:04 CEST 2001 Jan Hubicka <jh@suse.cz>
3161 * combine.c (combine_simplify_rtx): Clear op0_mode if simplification
3164 Fri May 18 07:26:34 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
3166 * genrecog.c (enum decision_type): Add DT_elt_zero-wide_safe.
3167 (add_to_sequence): Make that decision type.
3168 (maybe_both_true_2, nodes_identical_1, factor_tests): Use it.
3169 (write_switch, write_cond, debug_decision_2): Likewise.
3171 * dbxout.c (dbxout_type): Use host_integerp and fix typo in testing
3173 (dbxout_symbol, case TYPE_DECL): Don't generate tag for records of
3176 2001-05-18 Stan Shebs <shebs@apple.com>
3178 * configure.in (gcc_cv_as_eh_frame): Cope with old assemblers.
3179 * configure: Regenerate.
3181 2001-05-18 Per Bothner <per@bothner.com>
3183 Changes needed for java/jvspec.c
3184 * gcc.h (n_infiles, outfiles): Add declarations.
3185 * gcc.c (n_infiles, outfiles): Mske no longer static.
3187 Fri May 18 10:14:42 2001 Jeffrey A Law (law@cygnus.com)
3189 * config/pa/som.h (EXCEPTION_SECTION): Define.
3191 2001-05-18 Daniel Berlin <dan@cgsoftware.com>
3193 * dwarf2out.c: Add dw_loc_list_ref, a reference to a location
3195 Add have_location_lists, a variable to determine whether we need a
3196 .debug_loc section or not.
3197 (enum dw_val_class): Add dw_val_class_loc_list.
3198 (dw_val_struct): Add val_loc_list.
3199 (dw_loc_list_struct): New structure, represents location lists.
3200 (new_loc_list): New function, return a new location list, given
3201 the range and location expression.
3202 (add_loc_descr_to_loc_list): New function, add a location
3203 expression to a location list, given the expression and range.
3204 (output_loc_list): New function, output a location list.
3205 (gen_internal_sym): Modified to take symbol prefix, so we can
3206 reuse it for location list symbols.
3207 (add_AT_loc_list): New function, add a location list to a DIE at
3208 the named attribute.
3209 (AT_loc_list): New function, return the location list reference
3210 for a given attribute, if it's a location list.
3211 (print_die): Handle dw_val_class_loc_list.
3212 (size_of_die): Ditto.
3213 (value_format): Ditto.
3214 (output_die): Ditto.
3215 (output_location_lists): New function, output all of the location
3216 lists for a DIE and it's children.
3217 (dwarf2out_finish): Call output_location_lists if we have location
3221 Fri May 18 15:39:16 CEST 2001 Jan Hubicka <jh@suse.cz>
3223 * gcse.c (try_replace_reg): First try global replace, later try to
3224 simplify the expression.
3226 * gcse.c (find_used_regs): Change calling convention; work via
3228 (cprop_insn): Update call of find_used_regs; work for CALL_INSNs too.
3230 2001-05-18 Bernd Schmidt <bernds@redhat.com>
3233 2001-02-09 Nick Clifton <nickc@redhat.com>
3234 * config/arm/arm.md: Change output constraint on post inc
3235 load/store multiple patterns to be a read/write constraint.
3237 2001-05-18 Mark Mitchell <mark@codesourcery.com>
3239 * basic-block.h (struct basic_block_def): Add documentation about
3240 what a basic block is, and what the various fields are used for.
3241 * flow.c (calculate_globlal_regs_live): Add documentation about
3242 how the algorithm works, and how we know that it will terminate.
3243 Check that the the inductive assumption that guarantees
3244 termination actually holds.
3245 (mark_used_regs): Treat conditionally set registers as used.
3246 (debug_regset): Add comment.
3247 * rtl.texi (cond_exec): Add documentation.
3249 * function.c (expand_function_start): Avoid creating BLKmode
3252 2001-05-17 Mark Mitchell <mark@codesourcery.com>
3254 * dwarf2out.c (output_comp_unit): Always output a compilation-unit
3255 DIE, even if it has no children.
3256 (dwarf2out_finish): Always output the line-number table, even if
3259 2001-05-18 David Edelsohn <edelsohn@gnu.org>
3261 * rs6000.md (movsfcc,movdfcc): Remove NE case.
3263 2001-05-17 Bruce Korb <bkorb@gnu.org>
3265 * fixinc/fixincl.tpl: rewritten as an AutoGen version 5 template
3266 * fixinc/genfixes: emit a warning if AutoGen is out of date
3268 2001-05-17 Brendan Conoboy <blc@cygnus.com>
3269 Bruce Korb <bkorb@gnu.org>
3271 * fixinc/fixincl.sh(FIXINC): accept local directory if fixincl not
3272 found in fixinc directory. Facilitates binary distributions.
3274 2001-05-17 Jeffrey Oldham <oldham@codesourcery.com>
3276 * dbxout.c (dbxout_symbol_location): For CONCAT, skip types not
3279 Thu May 17 19:42:39 2001 Mark Kettenis <kettenis@wins.uva.nl>
3281 * dwarf2out.c (modified_type_die): Equate qualified type to die.
3283 Thu May 17 23:19:46 CEST 2001 Jan Hubicka <jh@suse.cz>
3285 * integrate.c (copy_rtx_and_substitute): Use simplify_gen_subreg.
3286 (simplify_subreg): Handle complex types represented as CONCAT.
3288 * recog.c (validate_replace_rtx_1): Properly canonicalize expression
3289 * rtl.h (swap_commutative_operands_p): Declare.
3290 * rtlanal.c (swap_commutative_operands_p): New.
3291 (operand_preference): New static function.
3293 * combine.c (combine_simplify_rtx): Use swap_commutative_operands_p.
3294 (gen_binary): Likewise.
3295 * optabs.c (emit_cmp_and_jump_insns, emit_conditional_move): Likewise.
3296 * simplify-rtx.c (simplify_gen_binary,
3297 simplify_gen_relational): Likewise.
3299 Thu May 17 20:43:36 CEST 2001 Jan Hubicka <jh@suse.cz>
3301 * cse.c (fold_rtx): Use simplify_subreg.
3303 * simplify-rtx.c (simplify_replace_rtx): Use simplify_gen_subreg.
3304 (simplify_gen_subreg): New.
3305 (simplify_rtx): Use simplify_subreg.
3306 * rtl.h (simplify_gen_subreg): Declare.
3308 2001-05-17 Mark Mitchell <mark@codesourcery.com>
3310 * doc/install.texi: Update Solaris information.
3312 * except.h (protect_cleanup_actions): Remove it.
3313 (lang_protect_cleanup_actions): Declare it.
3314 * except.c (protect_cleanup_actions): Remove it.
3315 (lang_protect_cleanup_actions): New variable.
3316 (init_eh): Don't make protect_cleanup_actions a GC root.
3317 (expand_eh_region_and_cleanup): Call
3318 lang_protect_cleanup_actions.
3319 (output_function_exception_table): Remove unused `align'
3321 * varasm.c (assemble_external): Abort if we have not yet
3322 opened the assembly output file.
3324 Thu May 17 11:54:50 2001 Jeffrey A Law (law@cygnus.com)
3326 * except.c (sjlj_emit_function_enter): Call assemble_external_libcall
3327 for eh_personality_libfunc.
3329 Thu May 17 19:48:00 CEST 2001 Jan Hubicka <jh@suse.cz>
3331 * recog.c (validate_replace_rtx_1): Use "TO" mode if not VOIDmode
3332 when calling simplify_subreg. This is needed to allow replacing
3333 of expression of one mode by expression of different mode.
3335 Thu May 17 19:40:03 CEST 2001 Jan Hubicka <jh@suse.cz>
3337 * simplify-rtx.c (simplify_subreg): Avoid creating of incorrect subregs.
3339 2001-05-17 Bernd Schmidt <bernds@redhat.com>
3341 * expr.c (protect_from_queue): Protect against subsequent calls to
3343 (expand_expr, case ADDR_EXPR): Prevent protect_from_queue from being
3346 Thu May 17 18:17:34 CEST 2001 Jan Hubicka <jh@suse.cz>
3348 * simplify_rtx.c (simplify_subreg): Fix simplification of nested subregs.
3350 2001-05-17 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
3352 * gccbug.in (CATEGORIES): Add "bootstrap".
3354 Thu May 17 16:59:41 CEST 2001 Jan Hubicka <jh@suse.cz>
3356 * simplify-rtx.c (simplify_subreg): Break out from ...
3357 * combine.c (combine_splify_rtx) ... here and ...
3358 * recog.c (validate_replace_rtx_1): ... here;
3359 * rtl.h (subreg_lowpart_parts_p, simplify_subreg): Declare.
3360 * emit-rtl.c (subreg_lowpart_parts_p): Break out from ...
3361 (subreg_lowpart_p): ... here.
3363 2001-05-17 Bernd Schmidt <bernds@redhat.com>
3365 * stmt.c (expand_asm_operands): For inout operands, make sure
3366 the substitution of '=' for '+' makes it into the rtl.
3368 * reload1.c (delete_output_reload): Call eliminate_regs on substed.
3369 (reload_as_needed): Call update_eliminable_offsets a bit later.
3371 2001-05-17 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
3373 * gcc.texi (gccbug): Refer to the web pages for detailed information
3376 2001-05-16 Zack Weinberg <zackw@stanford.edu>
3378 * libgcc1-test.c, libgcc1.c, config/i386/perform.h: Delete file.
3380 * Makefile.in: Delete variables: OLDCC, CCLIBFLAGS, OLDAR,
3381 OLDAR_FLAGS, LIBGCC1, LIBGCC1_TEST, CROSS_LIBGCC1,
3382 LIB1FUNCS, and LIB1FUNCS_EXTRA. Delete rules: libgcc1-test,
3383 libgcc1-test.o. Clarify commentary now that libgcc1 no longer exists.
3384 * cross-make: Don't set LIBGCC1.
3385 * mklibgcc.in: Delete all code for building from libgcc1.c.
3386 Always honor LIB1ASMFUNCS if set.
3388 * crtstuff.c, floatlib.c, longlong.h, config/fp-bit.c,
3389 config/arc/lib1funcs.asm, config/arm/lib1funcs.asm,
3390 config/d30v/libgcc1.asm, config/fr30/lib1funcs.asm,
3391 config/h8300/lib1funcs.asm, config/i386/cygwin.asm,
3392 config/i386/uwin.asm, config/m68hc11/larith.asm,
3393 config/m68k/lb1sf68.asm, config/mcore/lib1.asm,
3394 config/mn10200/lib1funcs.asm, config/sh/lib1funcs.asm,
3395 config/sparc/lb1spc.asm, config/sparc/lb1spl.asm,
3396 config/v850/lib1funcs.asm, config/c4x/libgcc.S:
3397 Delete or update references to libgcc1 in commentary.
3399 * config/t-libc-ok, config/t-linux, config/t-linux-aout,
3400 config/t-netbsd, config/a29k/t-a29kbare, config/a29k/t-vx29k,
3401 config/alpha/t-interix, config/alpha/t-osf, config/alpha/t-vms,
3402 config/arc/t-arc, config/arm/t-arm-aout, config/arm/t-arm-coff,
3403 config/arm/t-arm-elf, config/arm/t-linux, config/arm/t-pe,
3404 config/arm/t-semi, config/arm/t-strongarm-coff,
3405 config/arm/t-strongarm-elf, config/arm/t-strongarm-pe,
3406 config/arm/t-xscale-coff, config/arm/t-xscale-elf, config/avr/t-avr,
3407 config/c4x/t-c4x, config/d30v/t-d30v, config/fr30/t-fr30,
3408 config/h8300/t-h8300, config/i386/t-beos, config/i386/t-cygwin,
3409 config/i386/t-i386elf, config/i386/t-interix, config/i386/t-netware,
3410 config/i386/t-next, config/i386/t-rtems-i386, config/i386/t-sol2,
3411 config/i960/t-960bare, config/i960/t-vxworks960, config/ia64/t-ia64,
3412 config/m32r/t-m32r, config/m68hc11/t-m68hc11-gas, config/m68k/t-lynx,
3413 config/m68k/t-m68kbare, config/m68k/t-m68kelf,
3414 config/m68k/t-mot3300-gald, config/m68k/t-mot3300-gas,
3415 config/m68k/t-next, config/m68k/t-vxworks68, config/m88k/t-bug,
3416 config/m88k/t-dgux, config/m88k/t-dgux-gas, config/m88k/t-dguxbcs,
3417 config/m88k/t-luna, config/m88k/t-luna-gas, config/m88k/t-m88k,
3418 config/m88k/t-m88k-gas, config/m88k/t-sysv4, config/mcore/t-mcore,
3419 config/mcore/t-mcore-pe, config/mips/t-bsd, config/mips/t-bsd-gas,
3420 config/mips/t-cross64, config/mips/t-ecoff, config/mips/t-elf,
3421 config/mips/t-iris6, config/mips/t-r3900, config/mips/t-svr3,
3422 config/mips/t-svr3-gas, config/mips/t-svr4, config/mips/t-svr4-gas,
3423 config/mips/t-ultrix, config/mn10200/t-mn10200,
3424 config/mn10300/t-mn10300, config/pa/t-linux, config/pa/t-linux64,
3425 config/pa/t-pa, config/pa/t-pa64, config/pa/t-pro,
3426 config/pdp11/t-pdp11, config/pj/t-pj, config/rs6000/t-aix43,
3427 config/rs6000/t-beos, config/rs6000/t-darwin, config/rs6000/t-newas,
3428 config/rs6000/t-ppccomm, config/rs6000/t-rs6000, config/sh/t-linux,
3429 config/sh/t-sh, config/sparc/t-chorus-elf, config/sparc/t-elf,
3430 config/sparc/t-sol2, config/sparc/t-sp86x, config/sparc/t-sparcbare,
3431 config/sparc/t-sparclite, config/sparc/t-splet,
3432 config/sparc/t-sunos41, config/sparc/t-vxsparc,
3433 config/sparc/t-vxsparc64, config/v850/t-v850:
3434 Don't set any of LIBGCC1, CROSS_LIBGCC1, or LIBGCC1_TEST.
3436 * config/alpha/alpha.h, config/i386/i386.h, config/i860/i860.h:
3437 Don't set FLOAT_VALUE_TYPE, FLOAT_ARG_TYPE, INTIFY, or FLOATIFY.
3438 * config/d30v/d30v.h: Don't mention LIBGCC_NEEDS_DOUBLE,
3439 FLOAT_VALUE_TYPE, FLOAT_ARG_TYPE, FLOATIFY, INTIFY,
3440 nongcc_SI_type, nongcc_word_type, or perform_*
3441 * config/i860/fx2800: Don't define perform_umodsi3 or perform_modsi3.
3443 * config/i386/386bsd.h, config/i386/beos-elf.h,
3444 config/i386/linux-aout.h, config/i386/linux-oldld.h,
3445 config/i386/linux.h, config/i386/mach.h, config/i386/netbsd.h,
3446 config/i386/openbsd.h, config/i386/osfrose.h, config/i386/rtemself.h:
3447 Don't include i386/perform.h.
3449 * config/a29k/t-a29k, config/arm/t-semiaof, config/i370/t-i370,
3450 config/i370/t-linux, config/i370/t-mvs, config/i370/t-oe,
3451 config/i386/t-djgpp, config/i386/t-i386bare, config/i386/t-vsta,
3452 config/ia64/t-hpux, config/mips/t-mips, config/mips/t-mips-gas,
3453 config/mips/t-osfrose, config/sparc/t-sp64, config/sparc/t-sunos40,
3454 config/vax/t-openbsd, config/vax/t-vax: Delete.
3456 * config.gcc: Remove references to deleted files.
3457 (arm-semi-aof): Use arm/t-semi for tmake_file.
3459 * gcc.texi, install.texi, invoke.texi, tm.texi:
3460 Delete or rewrite text which is no longer relevant now that
3461 libgcc1 no longer exists.
3463 * config/t-openbsd, config/alpha/t-interix, config/i386/t-interix:
3464 No need to set INSTALL_ASSERT_H. (Missed in previous sweep.)
3466 2001-05-16 Wolfgang Bangerth <wolfgang.bangerth@iwr.uni-heidelberg.de>
3467 Bruce Korb <bkorb@gnu.org>
3469 * fixinc/inclhack.def(solaris27_mutex_init): Fix broken mutex
3472 2001-05-16 Zack Weinberg <zackw@stanford.edu>
3474 * i386.md: Add two peepholes to clean up code generated by
3477 2001-05-16 Richard Henderson <rth@redhat.com>
3479 * dwarf2asm.c (eh_data_format_name): Add names for "pointer size"
3480 variants of non-absolute encodings.
3482 * config/i386/i386.h (ASM_PREFERRED_EH_DATA_FORMAT): New.
3484 * libgcc-std.ver (_Unwind_Find_FDE, __register_frame_info_bases,
3485 __register_frame_info_table_bases): Export.
3487 2001-05-16 Richard Henderson <rth@redhat.com>
3489 * except.c (eh_data_format_name): Move to ...
3490 * dwarf2asm.c: ... here. Use designated initializers if available.
3491 (dw2_asm_output_encoded_addr_rtx): Accept varargs commentary.
3492 * dwarf2asm.h: Update declarations.
3493 * dwarf2out.c (output_cfi) [DW_CFA_set_loc]: If for_eh, mind
3494 ASM_PREFERRED_EH_DATA_FORMAT.
3495 (output_call_frame_info): Likewise. Use 'L' augmentation for
3498 * unwind-dw2-fde.h (struct fde_vector): New.