OSDN Git Service

* config/darwin.h (REGISTER_TARGET_PRAGMAS): Define.
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
1 2001-06-28  Stan Shebs  <shebs@apple.com>
2
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
8         cxx_target_objs.
9         * doc/extend.texi (Pragmas): New section.
10
11 Thu Jun 28 20:13:11 CEST 2001  Jan Hubicka  <jh@suse.cz>
12
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.
19
20         * basic-block.h (FALLTHRU_EDGE, BRANCH_EDGE): New macros.
21
22 Thu Jun 28 11:19:42 2001  Jeffrey A Law  (law@cygnus.com)
23
24         * ssa-dce.c (eliminate_dead_code): Properly handle control
25         dependencies implied by PHI nodes.
26
27         * ssa-dce.c (eliminate_dead_code): Remove fake edges from the
28         CFG after dead code elimination is complete.
29
30 2001-06-28  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
31
32         * gthr-posix.h [LIBOBJC]: Add weak definitions of
33         sched_get_priority_max, sched_get_priority_min.
34
35 2001-06-28  Gabriel Dos Reis  <gdr@codesourcery.com>
36
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.
43
44 Thu Jun 28 06:16:45 2001  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
45
46         * expr.c (expand_assignment): When have varying-length object,
47         make MEM a BLKmode.
48         (expand_expr, case ADDR_EXPR): Use SAVE_EXPR_RTL after putting
49         SAVE_EXPR stack in case we had a SUBREG.
50
51 Thu Jun 28 10:31:06 CEST 2001  Jan Hubicka  <jh@suse.cz>
52
53         * i386.md (cmp?i): Simplify; refuse immediate operand
54         in alternative 0
55         * i386.c (cmpsi_operand): Refuse constants.
56
57         * i386.md (movsi_insv_1, movsi_insv_1_rex64): Allow immediate operand.
58
59         * flow.c (block_label, redirect_edge_and_branch): Split out from ....
60         (split_edge) .... here;
61
62 2001-06-28  Neil Booth  <neil@cat.daikokuya.demon.co.uk>
63
64         * i386/i386.c (ix86_valid_type_attribute_p): Give external
65         linkage, move declaration to...
66         * i386/i386-protos.h: ...here.
67
68 2001-06-27  H.J. Lu  (hjl@gnu.org)
69
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.
74
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}'.
78         Save/restore CFLAGS.
79         * configure: Regenerated.
80
81 2001-06-27  Jim Wilson  <wilson@redhat.com>
82
83         * emit-rtl.c (gen_highpart): Call validize_mem.
84
85 2001-06-27  Bruce Korb  <bkorb@gnu.org>
86
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
93         wrong directory.
94
95 2001-06-27  Stan Shebs  <shebs@apple.com>
96
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.
102
103 Wed Jun 27 18:01:09 2001  Jeffrey A Law  (law@cygnus.com)
104
105         * simplify-rtx.c (simplify_rtx): Canonicalize commutative expressions
106         by putting complex operands first and constants second.
107
108 2001-06-27  Gabriel Dos Reis  <gdr@codesourcery.com>
109
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.
114
115 2001-06-27  Joseph S. Myers  <jsm28@cam.ac.uk>
116
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 @..
122
123 2001-06-26  Daniel Berlin  <dan@cgsoftware.com>
124         
125         * doc/invoke.texi: Add description of max-gcse-passes param.
126
127         * gcse.c (gcse_main): Use MAX_GCSE_PASSES instead of MAX_PASSES.
128         (MAX_PASSES): Remove now unneeded macro.
129
130         * params.h (MAX_GCSE_PASSES): New macro, to get parameter value of
131         max-gcse-passes param.
132
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).
136
137 2001-06-27  Neil Booth  <neil@cat.daikokuya.demon.co.uk>
138
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.
148
149 2001-06-26  Bruce Korb  <bkorb@gnu.org>
150
151         * gcc/fixinc/fixincl.c(initialize): In very strict ANSI, you cannot
152         use preprocessing directives inside a string literal.  Fixed.
153
154 2001-06-26  Jim Wilson  <wilson@redhat.com>
155
156         * doc/tm.texi (MAX_LONG_DOUBLE_TYPE_SIZE, INTEL_EXTENDED_IEEE_FORMAT):
157         Document.
158
159 2001-06-27  Joseph S. Myers  <jsm28@cam.ac.uk>
160
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
164         a sentence.
165
166 2001-06-27  Joseph S. Myers  <jsm28@cam.ac.uk>
167
168         * doc/gcc.texi, doc/install.texi, doc/invoke.texi: Remove trailing
169         whitespace.
170
171 2001-06-26  Joseph S. Myers  <jsm28@cam.ac.uk>
172
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.
176
177 2001-06-26  Daniel Berlin  <dan@cgsoftware.com>
178
179         * toplev.c (display_help): Fix param thinko.
180         * Makefile.in: Fix params.h dependencies.
181
182 2001-06-26  Gabriel Dos Reis  <gdr@codesourcery.com>
183
184         * toplev.c (decode_f_option): Adjust setting.
185         (toplev_main): Call diagnostic_initialize.  Remove call to
186         reshape_diagnostic_buffer._
187
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.
193
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.
203
204         * c-lang.c (c_init): Adjust tree formatter setting.
205
206 2001-06-26  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
207
208         * config/i386/sol2.h (CPP_SPEC): Pass -P for .S files.
209
210 2001-06-26  Neil Booth  <neil@daikokuya.demon.co.uk>
211
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.
223         * target.h: New.
224         * target-def.h: New.
225
226 doc:    (Joseph Myers)
227         * doc/gcc.texi, doc/tm.texi: Update documentation.
228
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.
238
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.
248
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
278         static.
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,
305         make static.
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.
328
329 2001-06-26  Vladimir Makarov  <vmakarov@toke.toronto.redhat.com>
330
331         * glimits.h (USHRT_MAX): Use unsigned suffix if int can not hold
332         it.
333
334 2001-06-26  Gabriel Dos Reis  <gdr@codesourcery.com>
335
336         * diagnostic.h (struct diagnostic_context): Add new field.
337         (lang_diagnostic_starter, lang_diagnostic_finalizer): Remove
338         declaratons.
339         (global_dc): Declare.
340         * diagnostic.c (global_diagnostic_context): New variable.
341         (global_output_buffer): Remove.
342         (global_dc): Define.
343         (lang_diagnostic_starter, lang_diagnostic_finalizer): Remove
344         definitions.
345         (initialize_diagnostics): Adjust initialization.
346         (set_diagnostic_context): Adjust setting.
347
348 2001-06-26  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
349
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.
354
355 Tue Jun 26 12:40:12 CEST 2001  Jan Hubicka  <jh@suse.cz>
356
357         * i386.md (float_truncate splitter, and to mov splitters): Add
358         reload_completed; fix operand predicate.
359
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.
364
365 2001-06-26  Gabriel Dos Reis  <gdr@codesourcery.com>
366
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.
370
371 2001-06-26  Neil Booth  <neil@daikokuya.demon.co.uk>
372
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.
413
414 2001-06-26  Gabriel Dos Reis  <gdr@merlin.codesourcery.com>
415
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.
419
420 2001-06-25  Steve Ellcey  <sje@cup.hp.com>
421
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
427         undefined.
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.
442         
443 2001-06-25  Jim Wilson  <wilson@redhat.com>
444
445         * config/i960/t-960bare (i960-c.o): Add missing header dependencies.
446         * config/i960/t-vxworks960: Likewise.
447
448 2001-06-25   Dale Johannesen    <dalej@apple.com>
449
450         * bitmap.c (bitmap_last_bit_set): Fix a non-c89 usage (null actual
451         argument to macro).
452
453 Mon Jun 25 11:10:51 CEST 2001  Jan Hubicka  <jh@suse.cz>
454
455         * i386.md (movsi_insv_1, movsi_insv_1_rex64): Fix constraints.
456
457 2001-06-25  Joseph S. Myers  <jsm28@cam.ac.uk>
458
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.
464
465 2001-06-24  Joseph S. Myers  <jsm28@cam.ac.uk>
466
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
469         uses of @refill.
470
471 Sun Jun 24 21:21:49 CEST 2001  Jan Hubicka  <jh@suse.cz>
472
473         * (movsi_insv_1, movsi_insv_1_rex64): Allow immediate operand.
474
475 2001-06-24  Richard Henderson  <rth@redhat.com>
476
477         * builtins.c (expand_builtin_expect_jump): Disable if the
478         expression can't be re-evaluated.
479
480 2001-06-24  Nick Clifton  <nickc@cambridge.redhat.com>
481
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,
487         restore it here.
488         (Arm_expand_prologue): For interrupt functions that need the frame
489         pointer, push the IP register before it is corrupted.
490
491         * config/arm/arm.h (ARM_SIGN_EXTEND): Fix compile time warnings
492         about the use of signed and unsigned quantities in a conditional.
493
494 2001-06-23  Richard Henderson  <rth@redhat.com>
495
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.
503
504 2001-06-24  Joseph S. Myers  <jsm28@cam.ac.uk>
505
506         * doc/install-old.texi: Remove more documentation of configure
507         options.
508         * doc/install.texi: Add it here.
509
510 Sat Jun 23 19:40:05 CEST 2001  Jan Hubicka  <jh@suse.cz>
511
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.
521
522 2001-06-23  Neil Booth  <neil@cat.daikokuya.demon.co.uk>
523
524         * cppmacro.c (make_string_token): Avoid warning.
525         (cpp_macro_definition): Prepend the macro name.  Update
526         comments.
527         * cppmain.c (cb_define, dump_macro): Update for changes
528         to cpp_macro_definition.
529
530 Sat Jun 23 10:20:03 CEST 2001  Jan Hubicka  <jh@suse.cz>
531
532         * flow.c (attempt_auto_inc, try_pre_increment_1): Fix typo.
533
534 Sat Jun 23 01:23:59 CEST 2001  Jan Hubicka  <jh@suse.cz>
535
536         * flow.c (mark_set_1, attempt_auto_inc, mark_used_reg,
537         try_pre_increment_1): compute REG_FREQ using bb->frequency.
538
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.
544
545         * flow.c (split_edge): Set frequency.
546
547 Sat Jun 23 01:16:42 CEST 2001  Jan Hubicka  <jh@suse.cz>
548
549         * predict.c (block_info_def): Add nvisited.
550         (propagate_freq): Count nvisited; re-queue delayed blocks; handle
551         irreducible regions.
552
553         * flow.c (dump_edge_info): Dump the probability of edge.
554         (combine_predictions_for_insn): Dump the basic block.
555
556 2001-06-22  Joseph S. Myers  <jsm28@cam.ac.uk>
557
558         * doc/gcc.texi: Update documentation of source files of C
559         compiler.
560
561 2001-06-22  Richard Henderson  <rth@redhat.com>
562
563         * doc/invoke.texi (-funsafe-math-optimizations): Document its
564         possible effects at link time.
565
566 2001-06-22  Diego Novillo  <dnovillo@redhat.com>
567
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.
578
579 2001-06-22  Toshiyasu Morita  (toshiyasu.morita@hsa.hitachi.com)
580
581         * predict.c: (expected_value_to_br_prob): Check for const_true_rtx
582         instead of const1_rtx for true case.
583
584 2001-06-22  David Mosberger  <davidm@hpl.hp.com>
585
586         * config/ia64/crtfastmath.c: New file.
587         * config/ia64/t-ia64 (EXTRA_PARTS): Include it.
588         * config/ia64/linux.h (ENDFILE_SPEC): New.
589
590 2001-06-22  Toshiyasu Morita  <toshiyasu.morita@hsa.hitachi.com>
591
592         * config/h8300/h8300.c (asm_file_start): Remove reference to
593         "release F-1".
594
595 2001-06-22  Joseph S. Myers  <jsm28@cam.ac.uk>
596
597         * c-common.c (verify_tree): Check for x being NULL.
598         * doc/c-tree.texi: Document COMPOUND_BODY of an empty
599         COMPOUND_STMT.
600         Fixes PR c/3259.
601
602 2001-06-22  DJ Delorie  <dj@redhat.com>
603
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
612         mark_machine_status.
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.
623
624 Fri Jun 22 19:20:59 CEST 2001  Jan Hubicka  <jh@suse.cz>
625
626         * predict.c (estimate_bb_frequencies): Do not handle conditional
627         jumps jumping to fallthru basic block as conditional jumps.
628
629 Fri Jun 22 19:11:28 CEST 2001  Jan Hubicka  <jh@suse.cz>
630
631         * regs.h (struct reg_info_def): Add freq field.
632         (REG_N_REFS): Update comment.
633         (REG_FREQ): New.
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;
645         add freq field.
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.
653
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.
680
681 2001-06-14  Andrew Haley  <aph@cambridge.redhat.com>
682
683         * optabs.c (emit_libcall_block): When using non-call exceptions,
684         don't mark libcalls never throwing.
685
686 2001-06-21  Stan Shebs  <shebs@apple.com>
687
688         * objc/objc-act.c (hash_init): Use xcalloc.
689
690 2001-06-21  Richard Henderson  <rth@redhat.com>
691
692         * flow.c (entry_exit_blocks): Initialize frequency.
693         (split_block): Copy it.
694         (dump_flow_info): Dump it.
695
696 Thu Jun 21 22:15:10 2001  J"orn Rennecke <amylaar@redhat.com>
697
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.
701
702 2001-06-21  Neil Booth  <neil@cat.daikokuya.demon.co.uk>
703
704         * cppmacro.c (make_string_token): Null terminate.
705
706 2001-06-21  DJ Delorie  <dj@redhat.com>
707
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.
717
718 2001-06-20  Aldy Hernandez  <aldyh@redhat.com>
719
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.
724
725         * config/sh/sh.h (current_function_interrupt): Define extern.
726
727         * config/sh/sh.c (current_function_interrupt): New global.
728         (sh_expand_prologue): Set current_function_interrupt.
729
730 2001-06-21  Phil Edwards  <pme@sources.redhat.com>
731
732         * doc/install.texi:  Add 'c' to list of --enable-languages choices.
733
734 2001-06-21  DJ Delorie  <dj@redhat.com>
735
736         * integrate.c (mark_hard_reg_initial_vals): Check for NULL.
737         
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
750         pseudos.
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.
758
759 2001-06-21  Stan Shebs  <shebs@apple.com>
760
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".
765
766 2001-06-21  Joseph S. Myers  <jsm28@cam.ac.uk>
767
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.
772
773 Wed Jun 20 21:53:35 CEST 2001  Jan Hubicka  <jh@suse.cz>
774
775         * predict.c (estimate_probability): Fix loop bounds.
776
777 Wed Jun 20 19:10:48 CEST 2001  Jan Hubicka  <jh@suse.cz>
778
779         * toplev.c (rest_of_compilation): Run mark_constant_function
780         before profile-arcs.
781
782 Wed Jun 20 19:08:18 CEST 2001  Jan Hubicka  <jh@suse.cz>
783
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.
789
790 Wed Jun 20 17:02:50 2001  J"orn Rennecke <amylaar@redhat.com>
791
792         * sh.c (barrier_align): Don't ask for alignment when seeing a
793         branch-around-a-jump from machine_dependent_reorg.
794
795 Wed Jun 20 08:35:02 2001  Jeffrey A Law  (law@cygnus.com)
796
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. 
800
801 2001-06-20  Stan Shebs  <shebs@apple.com>
802
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.
808
809 2001-06-20  Michael Meissner  <meissner@redhat.com>
810
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.
815
816         * expr.c (do_jump): Special case __builtin_expect (<test>, 0) and
817         __builtin_expect (<test>, 1).
818
819         * Makefile.in (builtins.o): Depend on $(PREDICT_H).
820
821         * rtl.h (expand_builtin_expect_jump): Add prototype.
822
823 2001-06-19  Geoffrey Keating  <geoffk@redhat.com>
824
825         * doc/rtl.texi (Machine Modes): Correct description of
826         floating-point modes on machines with non-8-bit bytes.
827
828 2001-06-19  Bernd Schmidt  <bernds@redhat.com>
829
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
832         note.
833
834 Tue Jun 19 07:53:52 2001  Jeffrey A Law  (law@cygnus.com)
835
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.
842
843         * flow.c (delete_unreachable_blocks): Fix patch error in
844         previous change (call to find_unreachable_blocks was lost).
845
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.
851
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
855         ssa-dce.o.
856
857 2001-06-19  Eric Christopher <echristo@redhat.com>
858
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.
862
863 Tue Jun 19 01:52:27 2001  J"orn Rennecke <amylaar@redhat.com>
864
865         * sh.c (output_branch): Delete bogus code.
866
867         * sh.c (initial_elimination_offset):
868         Fix FROM == RETURN_ADDRESS_POINTER_REGNUM case.
869
870 Mon Jun 18 12:50:49 2001  Jeffrey A Law  (law@cygnus.com)
871
872         * flow.c (find_unreachable_blocks): New function.
873         (delete_unreachable_blocks): Use find_unreachable_blocks.
874         * basic-block.h (find_unreachable_blocks): Declare.
875
876         * dce.c (eliminate_dead_code): Fix formatting glitch.
877
878 2001-06-18  Jason Merrill  <jason_merrill@redhat.com>
879
880         * c-common.h (RETURN_NULLIFIED_P): New macro.
881         * c-semantics.c (genrtl_return_stmt): Check it.
882
883         * expr.c (clear_storage): Set TREE_NOTHROW on the decl for memset.
884         (emit_block_move): Likewise.
885
886 Mon Jun 18 17:27:24 CEST 2001  Jan Hubicka  <jh@suse.cz>
887
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.
894
895 Mon Jun 18 17:26:56 CEST 2001  Jan Hubicka  <jh@suse.cz>
896
897         * stmt.c (emit_case_nodes): Optimize test whether index is in given
898         interval.
899
900 Mon Jun 18 15:43:10 CEST 2001  Jan Hubicka  <jh@suse.cz>
901
902         * predict.c (estimate_probability): Do not bail out early
903         when note is present.
904         (combine_predictions_for_insn): Fix note removal code.
905
906 2001-06-18  Ben Elliston  <bje@redhat.com>
907
908         * except.c (resolve_fixup_regions): Initialise "cleanup".
909
910 2001-06-17  Neil Booth  <neil@daikokuya.demon.co.uk>
911
912         * tm.texi: Document STDC_0_IN_SYSTEM_HEADERS.
913
914 Sat Jun 16 20:20:39 2001  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
915
916         * expr.c (expand_expr, case ADDR_EXPR): If taking address of SAVE_EXPR,
917         use put_var_into_stack.
918
919 2001-06-16  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
920
921         * gccspec.c (lang_specific_driver): If compiling ObjC, add
922         -shared-libgcc when necessary.
923         * Makefile.in (gccspec.o): Compile with DRIVER_DEFINES.
924
925 2001-06-16  Daniel Berlin  <dan@cgsoftware.com>
926
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.
930
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.
935
936 2001-06-16  Neil Booth  <neil@daikokuya.demon.co.uk>
937
938         * cpp.texi, invoke.texi: Update.
939         * cpp.1, gcc.1: Regenerate.
940
941 Sat Jun 16 12:45:20 CEST 2001  Jan Hubicka  <jh@suse.cz>
942
943         * i386.md (minsf): Fix splitter. (PR fortran/3191)
944
945 2001-06-16  Neil Booth  <neil@daikokuya.demon.co.uk>
946
947         * doc/cpp.texi: Update.
948         * doc/cpp.1: Regenerate.
949
950 2001-06-15  Loren J. Rittle  <ljrittle@acm.org>
951
952         * doc/install.texi: Use correct markup hints.
953
954 Fri Jun 15 18:05:22 2001  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
955
956         * function.c (gen_mem_addressof): Handle case where DECL is SAVE_EXPR.
957
958         * explow.c (expr_size): If DECL and size specified, use it.
959
960 2001-06-15  Zack Weinberg  <zackw@stanford.edu>
961
962         * doc/cpp.texi: Formatting corrections.
963         Correct buggy example of use of __GNUC__ etc.
964         Clarify $ in identifiers.
965         * doc/cpp.1: Regenerate.
966
967 Fri Jun 15 19:35:38 CEST 2001 Jan Hubicka  <jh@suse.cz>
968
969         * optabs.c (expand_twoval_binop): Avoid undefined behaviour.
970
971 2001-06-15  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
972
973         * doc/install.texi (Specific, alpha*-*-*): Fixed Tru64 UNIX
974         etc. spelling.
975         (Specific, alpha-*-osf1): Renamed to alpha*-*-osf*.
976         Added Tru64 UNIX V5.1 bootstrap hints.
977         (Specific, alpha*-*-osf*): Removed old section, obsolete.
978
979 2001-06-15  Andreas Jaeger  <aj@suse.de>
980
981         * doc/install.texi (Specific): Mention that glibc cannot be
982         compiled with GCC 3.0.
983
984 2001-06-14  Andrew Haley  <aph@cambridge.redhat.com>
985
986         * combine.c (nonzero_bits): Don't optimize away division by
987         zero.
988
989 2001-06-15  Zack Weinberg  <zackw@stanford.edu>
990
991         * doc/cpp.texi: Revised and brought up to date.
992         * doc/cpp.1: Regenerate.
993
994 2001-06-15  Loren J. Rittle  <ljrittle@acm.org>
995
996         * doc/install.texi: Update --enable-threads to match reality.
997
998 2001-06-15  Michael Hayes  <m.hayes@elec.canterbury.ac.nz>
999
1000         * doc/install.texi: Update for C4x.
1001         * README.C4X: Remove.
1002
1003 2001-06-14  Joseph S. Myers  <jsm28@cam.ac.uk>
1004
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
1009         improvements.
1010         * doc/gcc.1: Regenerate.
1011
1012 2001-06-14  Richard Henderson  <rth@redhat.com>
1013
1014         * config/mips/mips.md (exception_receiver): New.
1015
1016 2001-06-14  Daniel J. Berlin <dan@cgsoftware.com>
1017
1018         * doc/gcc.texi:  Update passes documentation to be more in tune
1019         with reality.
1020
1021 Thu Jun 14 15:38:28 CEST 2001  Jan Hubicka  <jh@suse.cz>
1022
1023         * i386.c (ix86_expand_prologue): Fix merging conflict.
1024
1025 2001-06-14  Joseph S. Myers  <jsm28@cam.ac.uk>
1026
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
1032         date in gcc.texi.
1033         * doc/gcc.1, doc/gcov.1: Regenerate.
1034
1035 Thu Jun 14 12:44:15 CEST 2001  Jan Hubicka  <jh@suse.cz>
1036
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.
1048
1049 2001-06-13  John David Anglin  <dave@hiauly1.hia.nrc.ca>
1050
1051         * inclhack.def (hpux10_cpp_pow_inline): New hack.
1052
1053 2001-06-13  Richard Henderson  <rth@redhat.com>
1054
1055         * ifcvt.c (dead_or_predicable): Fix return value last patch.
1056
1057 2001-06-13  Mark Mitchell  <mark@codesourcery.com>
1058
1059         * NEWS: Remove.
1060
1061 2001-06-13  Richard Henderson  <rth@redhat.com>
1062
1063         * ifcvt.c (cond_exec_get_condition): Use reversed_comparison_code.
1064         (cond_exec_process_if_block, dead_or_predicable): Likewise.
1065
1066 2001-06-13  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
1067
1068         * mips-tfile.c (copy_object): Always pass indexNil for symbol
1069         table index.
1070
1071 2001-06-13  Kazu Hirata  <kazu@hxi.com>
1072
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.
1077
1078 2001-06-13  Phil Edwards  <pme@sources.redhat.com>
1079
1080         * doc/contrib.texi:  Link to libstdc++'s thanks.html for now.
1081
1082 2001-06-13  Zack Weinberg  <zackw@stanford.edu>
1083
1084         * Makefile.in: Move _bb and __gcc_bcmp to LIB2FUNCS_ST.
1085         * libgcc-std.ver: Take out __bb* and __gcc_bcmp.
1086
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.
1092
1093 2001-06-13  Joseph S. Myers  <jsm28@cam.ac.uk>
1094
1095         * doc/install.texi: Use more logical markup.  Include @node
1096         commands in the source when generating any non-HTML.
1097
1098 2001-06-13  Joseph S. Myers  <jsm28@cam.ac.uk>
1099
1100         * README: Remove.  Some of the contents moved to ../README.
1101
1102 2001-06-13  Alexandre Oliva  <aoliva@redhat.com>
1103
1104         * doc/install.texi (--enable-shared): List package names
1105         recognized by GCC.
1106
1107 2001-06-13  Alexandre Oliva  <aoliva@redhat.com>
1108
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.
1115
1116 2001-06-09  Mark Mitchell  <mark@codesourcery.com>
1117
1118         Revert this patch:
1119         * toplev.c (rest_of_compilation): Remove dead code before
1120         purge_addressof.
1121
1122 2001-06-12  Alexandre Oliva  <aoliva@redhat.com>
1123
1124         Reverted:
1125         2001-06-07  Nathan Sidwell  <nathan@codesourcery.com>
1126         * configure.in (sparc*-*-*): Check assembler R_SPARC_UA32 support.
1127         * configure: Rebuilt.
1128
1129 2001-06-12  Jim Wilson  <wilson@redhat.com>
1130
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.
1134
1135 2001-06-12  Alexandre Oliva  <aoliva@redhat.com>
1136
1137         * doc/extend.texi (Function Attributes): Document SH's sp_switch
1138         and trap_exit.
1139
1140 2001-06-13  Joseph S. Myers  <jsm28@cam.ac.uk>
1141
1142         * doc/invoke.texi: Use more logical markup.  Use TeX quotes,
1143         dashes and @dots{}.
1144
1145 2001-06-12  Richard Henderson  <rth@redhat.com>
1146
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.
1155
1156 2001-06-12  Joseph S. Myers  <jsm28@cam.ac.uk>
1157
1158         * doc/gcc.texi: Change the font used for @def... commands to a
1159         fixed width font.
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
1164         entries.
1165
1166 2001-06-12  lars brinkhoff  <lars@nocrew.org>
1167
1168         * gcc.texi (HOST_BITS_PER_LONGLONG): Document.
1169         (DIR_SEPARATOR_2): Likewise.
1170
1171 2001-06-12  Joseph S. Myers  <jsm28@cam.ac.uk>
1172
1173         * doc/install.texi (--exec-prefix, --bindir, --libdir,
1174         --with-slibdir, --infodir, --mandir, --with-cpp-install-dir):
1175         Document.
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.
1181
1182 Tue Jun 12 19:01:43 CEST 2001  Jan Hubicka  <jh@suse.cz>
1183
1184         * recog.c (validate_replace_rtx_1): Fix previous patch.
1185
1186 Tue Jun 12 17:25:39 CEST 2001  Jan Hubicka  <jh@suse.cz>
1187
1188         * recog.c (validate_replace_rtx_1): Do plus_constant call always.
1189
1190 Tue Jun 12 17:24:07 CEST 2001  Jan Hubicka  <jh@suse.cz>
1191
1192         * simplify-rtx.c (simplify_subreg): Allow volatile memory
1193         to be subregged in case we don't have move instruction.
1194
1195 Tue Jun 12 12:20:12 CEST 2001  Jan Hubicka  <jh@suse.cz>
1196
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
1202
1203 2001-06-12  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
1204
1205         * c-decl.c (grokdeclarator): Use INTEGRAL_TYPE_P.
1206
1207         * c-typeck.c (c_start_case): Likewise.
1208
1209 2001-06-12  Mark Mitchell  <mark@codesourcery.com>
1210
1211         * expr.c (store_field): Don't set MEM_ALIAS_SET for a field
1212         in a structure at a variable address.
1213
1214 2001-06-12  Joseph S. Myers  <jsm28@cam.ac.uk>
1215
1216         * doc/gcov.texi: Use more logical markup.
1217
1218 2001-06-11  Mark Mitchell  <mark@codesourcery.com>
1219
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
1223         valid.
1224
1225 2001-06-11  Stan Shebs  <shebs@apple.com>
1226
1227         * config/darwin.h (ASM_FILE_END): Remove decl of language_string.
1228
1229 2001-06-11  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
1230
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.
1234
1235 2001-06-11  Mark Mitchell  <mark@codesourcery.com>
1236
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
1240         now the default.
1241
1242         * config/mips/abi64.h (RETURN_IN_MEMORY): Fix handling of
1243         variable-sized types.
1244
1245 2001-06-11  Joseph S. Myers  <jsm28@cam.ac.uk>
1246
1247         * doc/md.texi: Use TeX dashes and quotes.
1248
1249 2001-06-11  Joseph S. Myers  <jsm28@cam.ac.uk>
1250
1251         * doc/rtl.texi: Reference manual chapter about trees.
1252
1253 2001-06-11  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
1254
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.
1259
1260         * config/sparc/sol2.h (WINT_TYPE): Define.
1261         (WINT_TYPE_SIZE): Likewise.
1262
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.
1268
1269 2001-06-11  Richard Henderson  <rth@redhat.com>
1270
1271         * unwind-dw2-fde.c (__deregister_frame_info): Don't play games
1272         with alias attribute.
1273
1274         * config/linux.h (CPLUSPLUS_CPP_SPEC): Use %(cpp) not $(cpp_cpu).
1275         * config/alpha/linux.h (CPLUSPLUS_CPP_SPEC): Likewise.
1276
1277 2001-06-11  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
1278
1279         * config/rs6000/linux.h (CPLUSPLUS_CPP_SPEC): New.
1280
1281 2001-06-11  Stan Shebs  <shebs@apple.com>
1282
1283         * config/darwin.c (darwin_encode_section_info):  Rewrite to simplify
1284         and fix coding mistakes.
1285
1286 2001-06-11  Nick Clifton  <nickc@cambridge.redhat.com>
1287
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
1291         void function.
1292         * config/m32r/m32r.h (INT32_P): Rename to UNIT32_P and remove
1293         integer overflow.
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.
1303
1304 2001-06-11  Richard Henderson  <rth@redhat.com>
1305
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.
1314
1315 2001-06-11  Richard Henderson  <rth@redhat.com>
1316
1317         * config/alpha/osf.h (LINK_SPEC): Hide _GLOBAL_* symbols.
1318
1319 2001-06-11  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
1320
1321         * configure.in: Align --help messages.
1322         Remove trailing full stops.
1323         Consistently use lower case.
1324         Fix DWARF 2 spelling.
1325         * configure: Rebuilt.
1326
1327 2001-06-11  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
1328
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.
1333
1334 Mon Jun 11 15:47:45 CEST 2001  Jan Hubicka  <jh@suse.cz>
1335
1336         * jump.c (duplicate_loop_exit_test): Fix loop header heuristics.
1337
1338 2001-06-11  Joseph S. Myers  <jsm28@cam.ac.uk>
1339
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.
1343         Fixes PR c/3116.
1344
1345 2001-06-11  Joseph S. Myers  <jsm28@cam.ac.uk>
1346
1347         * doc/objc.texi: Use more logical markup.  Use TeX dashes.
1348
1349 2001-06-11  Joseph S. Myers  <jsm28@cam.ac.uk>
1350
1351         * doc/c-tree.texi: Use more logical markup.
1352
1353 2001-06-11  Joseph S. Myers  <jsm28@cam.ac.uk>
1354
1355         * c-decl.c (xref_tag): Don't return previous tags of wrong type.
1356
1357 2001-06-11  Aldy Hernandez  <aldyh@redhat.com>
1358
1359         * loop.c (scan_loop): Do not combine asm statements.
1360
1361 2001-06-11  Michael Hayes  <m.hayes@elec.canterbury.ac.nz>
1362
1363         * simplify-rtx.c (simplify_subreg): Fix offset calculation
1364         for complex values within a CONCAT.
1365
1366 2001-06-11  Joseph S. Myers  <jsm28@cam.ac.uk>
1367
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.
1373
1374 2001-06-11  Joseph S. Myers  <jsm28@cam.ac.uk>
1375
1376         * doc/contrib.texi: Fix alphabetical order.  Fix typos.  Improve
1377         markup.
1378
1379 2001-06-10  Richard Henderson  <rth@redhat.com>
1380
1381         * ifcvt.c (life_data_ok): New.
1382         (merge_if_block): Use it to determine whether to update
1383         global_live_at_end.
1384         (if_convert): Set it.
1385
1386 2001-06-10  Richard Henderson  <rth@redhat.com>
1387
1388         * config/alpha/osf5.h (ASM_OLDAS_SPEC): Add -c.
1389
1390 2001-06-10  Alexandre Oliva  <aoliva@redhat.com>
1391
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.
1397
1398 2001-06-10  Richard Henderson  <rth@redhat.com>
1399
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.
1404
1405 2001-06-11  Michael Hayes  <m.hayes@elec.canterbury.ac.nz>
1406
1407         * emit-rtl.c (gen_lowpart_common): Do not assume that SFmode and DFmode
1408         are one and two words in size.
1409
1410 2001-06-10  Richard Henderson  <rth@redhat.com>
1411
1412         * doc/invoke.texi (Optimization Options): Document -fpeephole2.
1413         (Code Generation Options): Document -fnon-call-exceptions.
1414
1415 2001-06-10  Mark Kettenis  <kettenis@gnu.org>
1416
1417         * config/i386/gnu.h (MD_FALLBACK_FRAME_STATE_FOR): Undefine.
1418
1419 2001-06-10  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
1420
1421         * m68hc11.md (peepholes): Remove unused and wrong peepholes.
1422
1423 2001-06-10  Mark Mitchell <mark@codesourcery.com>
1424             Gabriel Dos Reis  <gdr@codesourcery.com>
1425
1426         * Makefile.in (c-parse.o): Depend on diagnostic.h
1427         (dwarf2out.o): Likewise.
1428
1429         * dwarf2out.c: #include diagnostic.h
1430
1431         * toplev.h (warningcount, errorcount, sorrycount): Remove
1432         declarations.
1433
1434         * toplev.c (warningcount, errorcount, sorrycount): Remove
1435         definitions.
1436
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.
1442
1443         * diagnostic.c (warningcount, errorcount, inhibit_warnings):
1444         Remove tentative declaration.
1445         (count_error): Use diagnostic_report_warnings_p.
1446
1447         * c-parse.in: #include diagnostic.h
1448
1449 2001-06-10  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
1450
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.
1455
1456 2001-06-10  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
1457
1458         * config/m68hc11/m68hc11-protos.h (m68hc11_initialize_trampoline):
1459         Move definition in the RTX_CODE section.
1460
1461 2001-06-10  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
1462
1463         * config/m68hc11/m68hc11.h (RETURN_ADDR_RTX): Define the return
1464         address as relative to the argument pointer.
1465
1466 Sun Jun 10 10:58:53 CEST 2001  Jan Hubicka  <jh@suse.cz>
1467
1468         * predict.def (PRED_OPCODE): Place before call and error_return.
1469
1470 Sun Jun 10 10:00:17 CEST 2001  Jan Hubicka  <jh@suse.cz>
1471
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
1476         to recognize -1.
1477
1478 2001-06-09  Alexandre Oliva  <aoliva@redhat.com>
1479
1480         * doc/invoke.texi (C Dialect Options): Document -aux-info.
1481         (Debugging Options): Document -print-multi-directory and
1482         -print-multi-lib.
1483         * doc/gcc.1: Rebuilt.
1484
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.
1488
1489 2001-06-09  Mark Mitchell  <mark@codesourcery.com>
1490
1491         * expr.c (expand_expr, case ARRAY_REF): Do not replace
1492         an array element with the known initializing value if it has
1493         side-effects.
1494
1495         * toplev.c (rest_of_compilation): Remove dead code before
1496         purge_addressof.
1497
1498 2001-06-09  Neil Booth  <neil@daikokuya.demon.co.uk>
1499
1500         * cppinit.c (print_help): Document -fpreprocessed.
1501         * invoke.texi: Similarly.
1502
1503 Sun Jun 10 00:35:37 CEST 2001  Jan Hubicka  <jh@suse.cz>
1504
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
1512         static functions.
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.
1525
1526 Sat Jun  9 23:29:41 CEST 2001  Jan Hubicka  <jh@suse.cz>
1527
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
1531
1532 2001-06-09  Alexandre Oliva  <aoliva@redhat.com>
1533
1534         * config.gcc: Re-enable bi-arch sparc on Solaris 7 and above.
1535
1536 2001-06-09  Peter Jakubek <pjak@snafu.de>
1537
1538         * config/m68k/m68k.md (ashrdi_const): Fix right shift by 16.
1539
1540 2001-06-09  John David Anglin  <dave@hiauly1.hia.nrc.ca>
1541
1542         * vax.h (NOTICE_UPDATE_CC): Set CC_NO_OVERFLOW in cc_status.flags
1543         for integer operations that don't update C bit.
1544
1545 2001-06-09  Nicola Pero <nicola@brainstorm.co.uk>
1546
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
1550         occurs.
1551
1552 2001-06-09  Joseph S. Myers  <jsm28@cam.ac.uk>
1553
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.
1557
1558 2001-06-09  Benjamin Kosnik  <bkoz@redhat.com>
1559
1560         * unwind-pe.h: Conditionally qualify references to abort with
1561         std::.
1562
1563 2001-06-09  Julian Foad <julian_foad@hotmail.com>
1564
1565         * doc/invoke.texi: Remove superfluous text.
1566
1567 2001-06-08  Richard Henderson  <rth@redhat.com>
1568
1569         * config/alpha/linux.h (CPLUSPLUS_CPP_SPEC): New.
1570         (LIB_SPEC): Mirror config/linux.h version.
1571
1572 2001-06-08  Richard Henderson  <rth@redhat.com>
1573
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.
1580
1581 2001-06-08  Mark Mitchell  <mark@codesourcery.com>
1582
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.
1587
1588 2001-06-08  Mark Mitchell  <mark@codesourcery.com>
1589
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.
1598
1599 Fri Jun  8 21:52:51 CEST 2001  Jan Hubicka  <jh@suse.cz>
1600
1601         * i386.h (CONST_COSTS): set cost of constants representable in
1602         immediate fields to 0.
1603
1604 Fri Jun  8 21:34:54 CEST 2001  Jan Hubicka  <jh@suse.cz>
1605
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.
1610
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
1614         after reg-stack.
1615         * final.c (shorten_branches): Remove insn splitting code.
1616
1617 2001-06-08  Joseph S. Myers  <jsm28@cam.ac.uk>
1618
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
1623         source code.
1624
1625 2001-06-08  Jason Merrill  <jason_merrill@redhat.com>
1626
1627         * stmt.c (current_nesting_level): New fn.
1628         * tree.h: Declare it.
1629         * c-semantics.c (genrtl_compound_stmt): Use it.
1630
1631         * dbxout.c (dbxout_symbol): Use DECL_RTL_SET_P.
1632
1633 2001-06-08  Jakub Jelinek  <jakub@redhat.com>
1634
1635         * jump.c (mark_modified_reg): Allow jump threading if condition
1636         codes are represented by a hard register.
1637
1638 2001-06-08  Jakub Jelinek  <jakub@redhat.com>
1639
1640         * config/ia64/ia64.c (ia64_function_arg): Use [SDT]Fmode as gr_mode
1641         for complex floats passed to unprototyped functions.
1642
1643 2001-06-08  Mark Mitchell  <mark@codesourcery.com>
1644
1645         * except.c (expand_eh_region_end_allowed): Call
1646         do_pending_stack_adjust as necessary.
1647
1648 Fri Jun  8 14:16:33 CEST 2001  Jan Hubicka  <jh@suse.cz>
1649
1650         * function.c (clobber_return_register): Clobber the pseudo return
1651         register too.
1652
1653         * sibcall.c (skip_unreturned_value): New function.
1654         (call_ends_block_p): Use it.
1655
1656         * recog.c (split_insn): Break out from ...
1657         (split_all_insns): ... here; do not use basic block information
1658         when it is broken.
1659
1660 Thu Jun  7 18:27:53 CEST 2001  Jan Hubicka  <jh@suse.cz>
1661
1662         * simplify-rtx.c (simplify_subreg):  Fix verification of
1663         combined subreg.
1664
1665 2001-06-08  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
1666
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.
1672
1673 2001-06-08  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
1674
1675         * doc/install.texi2html (MAKEINFO): Keep value if set already.
1676
1677 2001-06-08  Joseph S. Myers  <jsm28@cam.ac.uk>
1678
1679         * doc/gcc.texi: Add trailing slash to URL.
1680
1681 2001-06-07  Stan Shebs  <shebs@apple.com>
1682
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.
1702
1703 2001-06-07  Mark Mitchell  <mark@codesourcery.com>
1704
1705         * tree.h (DECL_SOURCE_FILE): Improve documentation.
1706         (DECL_SOURCE_LINE): Likewise.
1707
1708 2001-06-07  Loren J. Rittle  <ljrittle@acm.org>
1709
1710         * config/alpha/elf.h (MAKE_DECL_ONE_ONLY): Copy definition
1711         from config/elfos.h.
1712
1713 2001-06-07  Phil Edwards  <pme@sources.redhat.com>
1714
1715         * linux.h (CPLUSPLUS_CPP_SPEC):  Move -D_GNU_SOURCE to here.
1716         * pa/pa-linux.h:  Allow CPLUSPLUS_CPP_SPEC to remain.
1717
1718 2001-06-08  Joseph S. Myers  <jsm28@cam.ac.uk>
1719
1720         * doc/contrib.texi: Add copyright notice.
1721
1722 2001-06-08  Joseph S. Myers  <jsm28@cam.ac.uk>
1723
1724         * doc/md.texi: Use four digit years in copyright notice.
1725
1726 2001-06-08  Joseph S. Myers  <jsm28@cam.ac.uk>
1727
1728         * config.gcc: For $target_alias of athlon-*, set
1729         target_cpu_default2=5.
1730
1731 Thu Jun  7 16:17:40 2001  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1732
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.
1735
1736 2001-06-07  Joseph S. Myers  <jsm28@cam.ac.uk>
1737
1738         * NEWS: Regenerate.
1739
1740 2001-06-07  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
1741
1742         * gthr-posix.h (__gthread_objc_thread_detach): Simply cast
1743         pthread_t to objc_thread_t.
1744         (__gthread_objc_thread_id): Likewise.
1745
1746 2001-06-07  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
1747
1748         * alpha/osf5.h (CPP_XFLOAT_SPEC): Override default definition.
1749         (ASM_OLDAS_SPEC): Likewise.
1750
1751         * alpha/osf.h (CPP_XFLOAT_SPEC): Define.
1752         (CPP_SUBTARGET_SPEC): Use it.
1753         (ASM_OLDAS_SPEC): Define.
1754         (ASM_SPEC): Use it.
1755         (SUBTARGET_EXTRA_SPECS): Define, declare the new specs above.
1756
1757 2001-06-07  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
1758
1759         * config/alpha/alpha.c (alpha_va_arg): Handle TFmode, TCmode args,
1760         passed by reference.
1761
1762 2001-06-07  Joseph S. Myers  <jsm28@cam.ac.uk>
1763
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
1767         hbox.
1768
1769 Thu Jun  7 17:09:50 CEST 2001  Jan Hubicka  <jh@suse.cz>
1770
1771         * toplev.c (rest_of_compilation): Revert previous patch.
1772         * final.c (shorten_branches): Likewise.
1773
1774 2001-06-07  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
1775
1776         * pself.c, pself1.c, pself2.c, pself3.c, pself4.c, pself5.c:
1777         Remove.
1778
1779 2001-06-07  Joseph S. Myers  <jsm28@cam.ac.uk>
1780
1781         * doc/install-old.texi: Remove more obsolete documentation.
1782
1783 Thu Jun  7 13:20:14 CEST 2001  Jan Hubicka  <jh@suse.cz>
1784
1785         * expr.c (copy_blkmode_from_reg): Fix operand_subword_force call.
1786
1787 Thu Jun  7 12:12:58 CEST 2001  Jan Hubicka  <jh@suse.cz>
1788
1789         * toplev.c (rest_of_compilation): Call split_all_insns
1790         before reg-stack and shorten-branches. Do shorten-branches
1791         after reg-stack.
1792         * final.c (shorten_branches): Remove insn splitting code.
1793
1794 2001-06-07  Nathan Sidwell  <nathan@codesourcery.com>
1795
1796         * configure.in (sparc*-*-*): Check assembler R_SPARC_UA32 support.
1797         * configure: Rebuilt.
1798
1799 2001-06-07  Andreas Jaeger  <aj@suse.de>
1800
1801         * emit-rtl.c (operand_subword): Remove unused variable.
1802
1803 Wed Jun  6 14:51:05 CEST 2001  Jan Hubicka  <jh@suse.cz>
1804
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.
1809
1810         * (min?f, max?f splitters): Handle case where
1811         operands are cross-matched.
1812
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'.
1819
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
1823         to the template.
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.
1828
1829 2001-06-06  Richard Henderson  <rth@redhat.com>
1830
1831         * flow.c (mark_used_reg): Clean up looping over multiple hard
1832         registers.  Do conditional life bits across multiple hard regs.
1833
1834 2001-06-05  Jeffrey D. Oldham  <oldham@codesourcery.com>
1835
1836         * reload1.c (reload): Revert Schmidt's change so all USEs are not
1837         deleted during reload.
1838
1839 2001-06-05  Mark Mitchell  <mark@codesourcery.com>
1840
1841         * c-semantics.c (genrtl_scope_stmt): Write out nested inline
1842         functions here, instead of ...
1843         * c-decl.c (c_expand_body): ... here.
1844
1845 2001-06-05  David O'Brien  <obrien@FreeBSD.org>
1846
1847         * config.gcc, config/sparc/bsd.h:  Do not directly include
1848         sparc/sparc.h.  Instead do it via tm_file.
1849
1850 2001-06-05  Richard Henderson  <rth@redhat.com>
1851
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.
1857
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.
1863
1864         * config/alpha/elf.h: Remove ecoff commentary.
1865         * config/alpha/osf.h (ASM_PREFERRED_EH_DATA_FORMAT): New.
1866
1867 2001-06-05  David O'Brien  <obrien@FreeBSD.org>
1868
1869         * config.gcc, config/i386/bsd386.h:  Do not directly include
1870         i386/386bsd.h.  Instead do it via tm_file.
1871
1872 2001-06-05  David O'Brien  <obrien@FreeBSD.org>
1873
1874         * elfos.h (USING_ELFOS_H):  Identify the use of elfos.h in the same
1875         way svr4.h does.
1876
1877 2001-06-05  Pascal Obry  <obry@act-europe.fr>
1878
1879         * configure.in: Quote $enable_win32_registry in case the value has
1880         spaces in it.
1881         * configure: Ditto.
1882
1883 2001-06-05  Mark Mitchell  <mark@codesourcery.com>
1884
1885         * print-rtl.c (xspaces): Remove.
1886         (print_rtx): Use printf field-width, rather than xpsaces, to
1887         indent.
1888         * toplev.c (main): Disable sibling-call optimization if we are
1889         handling exceptions.
1890
1891 2001-06-05  Bernd Schmidt  <bernds@redhat.com>
1892
1893         * reload1.c (reload): Delete all USEs generated during reload.
1894
1895 2001-06-05  scott snyder  <snyder@fnal.gov>
1896
1897         * gccbug.in:  Fix typo.
1898
1899 2001-06-05  Andreas Jaeger  <aj@suse.de>
1900
1901         * builtins.def: Fix definition of __builtin_cosf, it uses float as
1902         parameter and return value.
1903
1904 2001-06-04  Anthony Green  <green@redhat.com>
1905
1906         * config/sparc/elf.h (CPP_PREDEFINES): Don't assert cpu or
1907         machine.  This is now done in sparc.h.
1908
1909 2001-06-05  Nathan Sidwell  <nathan@codesourcery.com>
1910
1911         Correct CVS resurrection of invoke.texi.
1912         * doc/invoke.texi: Document new tree dump flags.
1913
1914 2001-06-05  Joseph S. Myers  <jsm28@cam.ac.uk>
1915
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.
1918
1919 2001-06-05  Joseph S. Myers  <jsm28@cam.ac.uk>
1920
1921         * doc/texinfo.tex: Update to version 2001-05-24.08.
1922
1923 2001-06-05  Nathan Sidwell  <nathan@codesourcery.com>
1924
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.
1951
1952 2001-06-04  Mark Mitchell  <mark@codesourcery.com>
1953
1954         * c-tree.h (lang_decl): Add pending_sizes fields.
1955         * c-decl.c (store_parm_decls): Save pending_sizes away for nested
1956         functions.
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
1960         from ...
1961         (expand_function_start): ... here.
1962         * tree.h (expand_pending_sizes): Declare it.
1963
1964 2001-06-04  Loren J. Rittle  <ljrittle@acm.org>
1965
1966         * doc/install.texi: Update FreeBSD information.  Generalize
1967         and update information for alpha-based platforms using ELF.
1968
1969 2001-06-04  John David Anglin  <dave@hiauly1.hia.nrc.ca>
1970
1971         * c-decl.c (get_parm_info): Use INTEGRAL_TYPE_P.
1972         (store_parm_decls): Likewise.
1973         * c-typeck.c (convert_arguments): Likewise.
1974
1975 2001-06-04  Richard Henderson  <rth@redhat.com>
1976
1977         * sibcall.c (optimize_sibling_and_tail_recursive_call): Suppress
1978         optimization if current_function_calls_setjmp.
1979
1980 2001-06-04  Joseph S. Myers  <jsm28@cam.ac.uk>
1981
1982         * doc/c-tree.texi: Fix documentation of TREE_STRING_LENGTH for
1983         wide strings.
1984
1985 Mon Jun  4 20:44:25 CEST 2001  Jan Hubicka  <jh@suse.cz>
1986
1987         * simplify-rtx.c (simplify_subreg): Fix combining of
1988         paradoxical subregs.
1989
1990 Mon Jun  4 20:15:25 CEST 2001  Jan Hubicka  <jh@suse.cz>
1991
1992         * rtlanal.c (rtx_unsable_p): ADDRESSOF is stable.
1993         (no_labels_between_p): Short circuit case beg==end.
1994
1995 Mon Jun  4 20:03:05 CEST 2001  Jan Hubicka  <jh@suse.cz>
1996
1997         * rtlanal.c (operand_preference): Fix preference for objects.
1998
1999 Mon Jun  4 20:00:40 CEST 2001  Jan Hubicka  <jh@suse.cz>
2000
2001         * gcse.c (handle_avail_expr): Be prepared to handle single_set
2002         parallels.
2003
2004 Mon Jun  4 19:59:46 CEST 2001  Jan Hubicka  <jh@suse.cz>
2005
2006         * combine.c (if_then_else_cond): Use simplify_subreg instead
2007         of operand_subword.
2008         * integreate.c (sub_constants): Likewise.
2009
2010 Mon Jun  4 19:59:12 CEST 2001  Jan Hubicka  <jh@suse.cz>
2011
2012         * emit-rtl.c (constant_subword): Deprecate; remove most of code
2013         and use simplify_gen_subreg.
2014
2015 Mon Jun  4 19:55:23 CEST 2001  Lars Brinkhoff  <lars@nocrew.org>
2016
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
2020         value register.
2021
2022 Mon Jun  4 16:50:33 CEST 2001  Jan Hubicka  <jh@suse.cz>
2023
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
2028         is not needed.
2029
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.
2041
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.
2045
2046         * emit-rtl.c (gen_realpart, gen_imagpart): Do not handle
2047         CONCAT specially.
2048
2049         * rtlanal.c (replace_regs):  Use simplify_gen_subreg
2050
2051 Mon Jun  4 09:21:19 2001  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
2052
2053         * doc/c-tree.texi (ARRAY_REF): Say what type of expression must be.
2054         (ARRAY_RANGE_REF): Added description.
2055
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.
2065
2066 Sun Jun  3 21:59:51 2001  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
2067
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.
2070
2071 2001-06-03  kaz Kojima  <kkojima@rr.iij4u.or.jp>
2072
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
2077         by a given label.
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):
2086         Likewise.
2087         (consttable_window_end): New insn.
2088
2089 2001-06-03  Alexandre Oliva  <aoliva@redhat.com>
2090
2091         * insn-addr.h (INSN_ADDRESSES_NEW): Make insn_uid__ unsigned.
2092         Reformat according to coding standards.
2093
2094         Warning removal.
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.
2105
2106 2001-06-03  Igor Shevlyakov  <igor@windriver.com>
2107
2108         * config/sh/sh.c (output_branch): Support for insn with lenght
2109         attr 12 & 16 which represents cond branches outside +-4096 range.
2110
2111 2001-06-03  Alexandre Oliva  <aoliva@redhat.com>
2112
2113         * config/sh/lib1funcs.asm (ic_invalidate): Align the
2114         cache-mirroring sequence.  Add nops.
2115
2116 2001-06-03  Joseph S. Myers  <jsm28@cam.ac.uk>
2117
2118         * doc/install-old.texi: Remove more old installation
2119         documentation.
2120         * doc/install.texi: Add relevant parts here.
2121
2122 2001-06-03  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
2123
2124         * doc/install.texi2html: New script.
2125
2126 2001-06-03  David Edelsohn  <edelsohn@gnu.org>
2127
2128         * doc/install.texi: Update AIX information again.
2129
2130 2001-06-02  Joseph S. Myers  <jsm28@cam.ac.uk>
2131
2132         * doc/gcc.texi, doc/install-old.texi: Remove old system-specific
2133         installation documentation.
2134         * doc/install.texi: Move it to here.
2135
2136 2001-06-02  Joseph S. Myers  <jsm28@cam.ac.uk>
2137
2138         * doc/install.texi: Clean up Texinfo markup.
2139
2140 2001-06-02  Joseph S. Myers  <jsm28@cam.ac.uk>
2141
2142         * doc/cpp.texi, doc/cppinternals.texi, doc/gcc.texi: Move contents
2143         to just after title page.
2144
2145 2001-06-02  Joseph S. Myers  <jsm28@cam.ac.uk>
2146
2147         * doc/install-old.texi: Remove documentation of some configuration
2148         options.
2149         * doc/install.texi: Add relevant parts of this documentation here.
2150
2151 2001-06-02  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
2152
2153         * contrib.texi: Updated entries for Mark Mitchell, Joseph S. Myers,
2154         Gerald Pfeifer, Bernd Schmidt, and Dean Wakerley.
2155
2156 Sat Jun  2 12:23:51 CEST 2001  Jan Hubicka  <jh@suse.cz>
2157
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.
2164
2165 Sat Jun  2 06:53:50 2001  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
2166
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.
2176
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.
2180
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.
2185
2186 2001-06-01  Jan van Male  <jan.vanmale@fenk.wau.nl>
2187
2188         * doc/invoke.texi: Remove references to papers about sequence points
2189         to readings.html, refer to that page.
2190
2191 2001-06-01  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
2192
2193         * README: Update references to installation instructions.
2194
2195 2001-06-01  Laurent Guerby  <guerby@acm.org>
2196             Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
2197
2198         * doc/install.texi: Define srcdir when sources come from CVS.
2199         Significantly improve markup.  Wrap overly long lines
2200
2201 2001-06-01  DJ Delorie  <dj@redhat.com>
2202
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.
2213
2214 2001-05-31  Jan van Male  <jan.vanmale@fenk.wau.nl>
2215
2216         * invoke.texi: use two spaces between command options, eliminate
2217         some 'overfull hboxes'
2218
2219 2001-06-01  Hans-Peter Nilsson  <hp@axis.com>
2220
2221         * Makefile.in (s-mlib): Make backtick-commands always succeed.
2222         (DRIVER_DEFINES): Ditto.
2223
2224 2001-05-31  Richard Henderson  <rth@redhat.com>
2225
2226         * gcc.c (init_gcc_specs): When linking against libgcc_s.so,
2227         also link against libgcc.a.
2228
2229 2001-05-31  Geoff Keating  <geoffk@cygnus.com>
2230
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.
2234
2235         * config/mips/mips.h (DWARF_CIE_DATA_ALIGNMENT): Force to 4.
2236
2237 Thu May 31 19:09:53 CEST 2001  Jan Hubicka  <jh@suse.cz>
2238
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.
2241
2242 2001-05-31  Rodney Brown  <rbrown64@csc.com.au>
2243
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.
2248
2249 2001-05-30  Zack Weinberg  <zackw@stanford.edu>
2250
2251         * ggc-page.c (size_lookup): Increase minimum allocation size
2252         to eight bytes.
2253         (ggc_print_statistics): Report size of each bin in bytes, not
2254         as its order; there is no longer a direct relationship.
2255
2256 2001-05-31  Jan van Male  <jan.vanmale@fenk.wau.nl>
2257
2258         * extend.texi: Fix formating of examples, eliminate some
2259         'overfull hboxes'.
2260         * gcc.texi: Eliminate some 'overfull hboxes'.
2261         * invoke.texi: Use two spaces between command options, eliminate
2262         some 'overfull hboxes'.
2263
2264 2001-05-30  Richard Henderson  <rth@redhat.com>
2265
2266         * dwarf2out.c (dwarf2out_finish): Don't emit DW_AT_stmt_list at -g1.
2267
2268 2001-05-30  Tom Tromey  <tromey@redhat.com>
2269
2270         * gcc.c (do_spec_1): In `%O' case, if we computed saved_suffix,
2271         use it in the new association.
2272
2273 2001-05-30  Loren J. Rittle  <ljrittle@acm.org>
2274             John David Anglin  <dave@hiauly1.hia.nrc.ca>
2275
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.
2280
2281 2001-05-30  Neil Booth  <neil@daikokuya.demon.co.uk>
2282
2283         * cpplex.c (_cpp_lex_token): Revert patch of 16 May 2001
2284         so that we do accept comments in preprocessed input.
2285
2286 2001-05-30  Neil Booth  <neil@daikokuya.demon.co.uk>
2287
2288         * cpphash.c (alloc_node): Cast allocated pointer.
2289
2290 2001-05-30  Gordon Sadler <gbsadler1@lcisp.com>
2291
2292         * invoke.texi (Option Summary): Remove -isystem-c++ from options.
2293
2294 2001-05-29  Stan Shebs  <shebs@apple.com>
2295
2296         * gcc.texi: Add links for information about Objective-C.
2297
2298 2001-05-29  Nathan Sidwell  <nathan@codesourcery.com>
2299
2300         * configure.in (gcc_version): Remove unrequired \ on ". (Solaris
2301         /bin/sed fails on [^\"]).
2302         (configargs.h): Likewise.
2303
2304 2001-05-29  Hartmut Schirmer <SchirmerH@Innovative-Systems.de>
2305
2306         * config/sh/sh.h (IDENT_ASM_OP): End with TAB, not LF.
2307
2308 2001-05-28  Stan Shebs  <shebs@apple.com>
2309
2310         * objc/objc.gperf: Remove, no longer used.
2311
2312 2001-05-28  Joseph S. Myers  <jsm28@cam.ac.uk>
2313
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.
2317
2318 2001-05-28  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
2319
2320         * doc/install.texi (Specific): http://reality.sgi.com/ariel/freeware/
2321         became http://freeware.sgi.com/.
2322
2323 2001-05-27  Geoffrey Keating  <geoffk@redhat.com>
2324
2325         * local-alloc.c (update_equiv_regs): Don't eliminate constant
2326         expressions at -O0.
2327
2328 2001-05-27  Stan Shebs  <shebs@apple.com>
2329
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.
2334
2335 2001-05-27  Neil Booth  <neil@daikokuya.demon.co.uk>
2336
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.
2348
2349 2001-05-27  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
2350
2351         * fixinc/fixtests.c: Declare entries in ENV_TABLE.
2352
2353 2001-05-27  Bruce Korb  <bkorb@gnu.org>
2354
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
2362         the alphabetizing
2363         * README-fixinc: rewrite (mostly)
2364
2365 2001-05-27  Neil Booth  <neil@daikokuya.demon.co.uk>
2366
2367         * cpplib.c (run_directive): Set pfile->directive.
2368
2369 2001-05-23  Theodore Papadopoulo  <Theodore.Papadopoulo@sophia.inria.fr>
2370
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.
2379
2380 2001-05-27  Lars Brinkhoff  <lars@nocrew.org>
2381
2382         * combine.c (try_combine): Fix typo in comment.
2383         * expr.c (expand_expr): Likewise.
2384         * config/i370/i370.md (untyped_call): Likewise.
2385
2386 2001-05-26  Bruce Korb  <bkorb@gnu.org>
2387
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
2399
2400         * fixinc/fixtests.c(stdc_0_in_system_headers_test): Must return "FIX"
2401         when fixincl is operating in test mode
2402
2403 2001-05-26  Philip Blundell  <philb@gnu.org>
2404
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.
2411
2412 2001-05-26  Philip Blundell  <philb@gnu.org>
2413
2414         * config/arm/arm-protos.h: Use GCC_C_PRAGMA_H in place of _C_PRAGMA_H.
2415
2416 2001-05-25  Zack Weinberg  <zackw@stanford.edu>
2417
2418         * toplev.c (debug_args, f_options, W_options): Mark
2419         descriptions for translation.
2420         (display_help): Translate descriptions on output.
2421
2422         * cp/lang-options.h, f/lang-options.h, java/lang-options.h,
2423         objc/lang-options.h: Mark descriptions for translation.
2424
2425         * aclocal.m4: Quote final argument of patsubst.  Use
2426         3-argument form of AC_DEFINE.  Restore quotes to [] while
2427         using AC_FD_CC.
2428         * configure.in: Remove unnecessary changequote calls.
2429         * configure, config.in: Regenerate.
2430
2431 2001-05-25  Sam TH  <sam@uchicago.edu>
2432
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.
2450
2451 2001-05-25  Stacey Sheldon  <ssheldon@Catena.com>
2452
2453         * config/arc/initfini.c (.init): Fix typo.
2454
2455 2001-05-25  Geoffrey Keating  <geoffk@redhat.com>
2456
2457         * config/rs6000/rs6000.md (fseldfsf4): Correct mode of operand 4.
2458
2459 2001-05-25  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
2460
2461         * i386/i386.h (CC1_CPU_SPEC): Clarify -m486 etc deprecation messages.
2462
2463 2001-05-25  Richard Henderson  <rth@redhat.com>
2464
2465         * libgcc-std.ver: Export XFmode and TFmode versions of symbols.
2466
2467 2001-05-25  Richard Henderson  <rth@redhat.com>
2468
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.
2475
2476 2001-05-25  Loren J. Rittle  <ljrittle@acm.org>
2477
2478         * config.gcc (*-*-freebsd*): Report bad configuration.
2479
2480 2001-05-25  David Edelsohn  <edelsohn@gnu.org>
2481
2482         * xcoffout.h (DBX_OUTPUT_GCC_MARKER): Do not emit any marker.
2483
2484         * config/rs6000/aix.h (USER_LABEL_PREFIX): AIX symbols do not have
2485         any prefix.
2486         (ASM_OUTPUT_LABELREF): Delete.
2487
2488 2001-05-25  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
2489
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.
2496
2497 2001-05-25  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
2498
2499         * fixinc/inclhack.def (alpha___assert): Change char * args to
2500         const char * on Tru64 UNIX to avoid excessive warnings from
2501         assert.h.
2502         * fixinc/fixincl.x: Regenerate.
2503
2504 2001-05-25  Geoff Keating  <geoffk@redhat.com>
2505
2506         * dbxout.c (dbxout_symbol): Invert previous patch, which was
2507         outputting a tag only for variable-size records.
2508
2509 2001-05-25  Jeff Knaggs  <jknaggs@redhat.com>
2510
2511         * config/alpha/alpha.md (movtf_internal): Use reg_overlap_mentioned_p
2512         instead of rtx_equal_p for early clobber test.
2513
2514 2001-05-26  Mark Mitchell <mark@codesourcery.com>
2515
2516         * builtins.def: Encode additional information, such as names and
2517         types, here.
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
2521         data to NULL.
2522         (expand_builtin_mathfn): Handle float and long double variants of
2523         math builtins.
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
2534         builtins.
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.
2538
2539 2001-05-25  Dale Johannesen  <dalej@apple.com>
2540
2541         * config/rs6000/t-darwin: Fix dependencies for darwin.o.
2542
2543 2001-05-25  Neil Booth  <neil@daikokuya.demon.co.uk>
2544
2545         * c-parse.in (notype_initdcl): Remove redundant line.
2546
2547 2001-05-25  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
2548
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.
2555
2556 2001-05-25  Richard Henderson  <rth@redhat.com>
2557
2558         * function.c (expand_function_start): Don't abort on PARALLEL
2559         returns from hard_function_value.
2560
2561 2001-05-25  Richard Henderson  <rth@redhat.com>
2562
2563         * config/i386/i386.md: Revert previous change.  Do not apply
2564         the peephole if the components do not die after the sequence.
2565
2566 2001-05-25  Joseph S. Myers  <jsm28@cam.ac.uk>
2567
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
2576         error.
2577         (grokdeclarator): Handle static and type qualifiers in parameter
2578         array declarators.
2579         * c-tree.h (build_array_declarator, set_array_declarator_type):
2580         Declare.
2581         * extend.texi (Attribute Syntax): Document attributes in parameter
2582         array declarators.
2583
2584 2001-05-25  Mark Mitchell  <mark@codesourcery.com>
2585
2586         * config/i386/i386.md: Make sure cmpstr peepholes do not
2587         affect liveness information.
2588
2589 2001-05-24  Mark Mitchell  <mark@codesourcery.com>
2590
2591         * c-typeck.c (digest_init): Issue error messages about
2592         invalid constants, not warnings.
2593
2594 2001-05-24  Mark Mitchell  <mark@codesourcery.com>
2595
2596         * invoke.texi (-fno-builtin): Document that this is always on
2597         in C++.
2598
2599 2001-05-24  Philip Blundell  <philb@gnu.org>
2600
2601         * doc/install.texi (arm*-*-linux-gnu): Say that binutils 2.10 is
2602         required.
2603
2604 2001-05-24  Philip Blundell  <philb@gnu.org>
2605
2606         * config/arm/arm.c (output_return_instruction): Correctly handle
2607         interworking and interrupt functions.
2608
2609 2001-05-24  Philip Blundell  <philb@gnu.org>
2610
2611         * config/arm/arm.h (TARGET_SWITCHES): Correct misleading help for
2612         -m{no-}sched-prolog.  Fix typos and improve formatting.
2613
2614 2001-05-24  Philip Blundell  <philb@gnu.org>
2615
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.
2620
2621 2001-05-24  Geoff Keating  <geoffk@redhat.com>
2622
2623         * config/rs6000/linux.h (SIGNAL_FRAMESIZE): Define.
2624         (MD_FALLBACK_FRAME_STATE_FOR): Use it.
2625
2626 Thu May 24 19:47:19 CEST 2001  Jan Hubicka  <jh@suse.cz>
2627
2628         * simplify-rtx.c (simplify_subreg): Fix CONCAT simplification;
2629         fix hard register simplification.
2630
2631 Thu May 24 00:15:17 2001  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
2632
2633         * sparc/sol2.h (CPLUSPLUS_CPP_SPEC): Add all of CPP_SPEC instead
2634         of just copying CPP_CPU_SPEC.
2635
2636 Thu May 24 15:56:48 CEST 2001  Jan Hubicka  <jh@suse.cz>
2637
2638         * i386.c (incdec_operand): Accept only 1 and -1.
2639
2640 2001-05-23  Kelley Cook  <kelley.cook@home.com>
2641
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).
2646
2647 2001-05-23  Richard Henderson <rth@redhat.com>
2648
2649         * integrate.c (expand_inline_function): Handle CONCAT DECL_RESULT.
2650
2651 2001-05-23  Neil Booth  <neil@daikokuya.demon.co.uk>
2652
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
2657         not an error.
2658
2659 2001-05-23  Richard Henderson  <rth@redhat.com>
2660
2661         * doc/install.texi (alpha-linux): Require binutils 2.11.
2662
2663 2001-05-23  Neil Booth  <neil@daikokuya.demon.co.uk>
2664
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.
2674
2675 2001-05-23  Joseph S. Myers  <jsm28@cam.ac.uk>
2676
2677         * extend.texi (Attribute Syntax): Clarify application of
2678         attributes to parameters declared as functions or arrays.
2679
2680 2001-05-23  Jason Merrill  <jason_merrill@redhat.com>
2681
2682         * dbxout.c (dbxout_type_methods): Do still group methods by name.
2683
2684 2001-05-23  Zack Weinberg  <zackw@stanford.edu>
2685
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
2693         gettext.
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.
2701
2702 2001-05-23  Mark Mitchell  <mark@codesourcery.com>
2703
2704         * jump.c (mark_jump_label): Fix thinko in 2001-05-19 change.
2705
2706 2001-05-23  Richard Henderson  <rth@redhat.com>
2707
2708         * function.c (expand_function_start): Always use a pseudo
2709         for the function result value.
2710
2711 2001-05-22  Richard Henderson  <rth@redhat.com>
2712
2713         * config/mips/iris6.h (EH_FRAME_SECTION_ASM_OP): Give the
2714         section pointer alignment.
2715
2716         * doc/install.texi (alpha-linux): Require binutils >= 2.10.
2717
2718         * unwind-dw2-fde.c (__deregister_frame_info): Stringize use
2719         of __USER_LABEL_PREFIX__.
2720
2721 2001-05-22  Richard Henderson  <rth@redhat.com>
2722
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.
2729
2730 2001-05-22  Loren J. Rittle  <ljrittle@acm.org>
2731
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).
2734
2735 2001-05-22  Andrew MacLeod  <amacleod@redhat.com>
2736
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.
2742
2743 2001-05-22  Loren J. Rittle  <ljrittle@acm.org>
2744             David O'Brien  <obrien@freebsd.org>
2745
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
2750         options.
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.
2756
2757         * config/alpha/freebsd.h (CPP_PREDEFINES): Moved to common freebsd.h.
2758         * config/i386/freebsd.h (CPP_PREDEFINES): Likewise.
2759
2760 2001-05-22  Loren J. Rittle  <ljrittle@acm.org>
2761             David O'Brien  <obrien@freebsd.org>
2762
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.
2770
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.
2776
2777 2001-05-22  Loren J. Rittle  <ljrittle@acm.org>
2778             David O'Brien  <obrien@freebsd.org>
2779
2780         * config/t-freebsd (TARGET_LIBGCC2_CFLAGS): Add -fPIC.
2781         * config/t-freebsd-thread (TARGET_LIBGCC2_CFLAGS): Add
2782         -pthread instead setting macro.
2783
2784 2001-05-22  Richard Henderson  <rth@redhat.com>
2785
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.
2789
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.
2795
2796 2001-05-22  Richard Henderson  <rth@redhat.com>
2797
2798         * rtl.c (read_string): Break out from ...
2799         (read_rtx): ... here.
2800
2801 2001-05-22  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
2802
2803         * doc/install.texi (Specific): Remove a bogus and duplicate part
2804         copied from the end of the document.
2805
2806 2001-05-22  Bernd Schmidt  <bernds@redhat.com>
2807
2808         * Makefile.in (LIBGCC_DEPS): Correct LIB1ASMSRC dependency.
2809
2810 2001-05-22  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
2811
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.
2815
2816 2001-05-22  Alexandre Oliva  <aoliva@redhat.com>
2817
2818         * cppfiles.c (remove_component_p): Don't assume lstat/stat will
2819         keep errno unchanged on success.
2820
2821 2001-05-22  Joseph S. Myers  <jsm28@cam.ac.uk>
2822
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.
2827
2828 2001-05-22  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
2829
2830         * README.ACORN: Remove obsolete file.
2831
2832 2001-05-22  Jan Hubicka  <jh@suse.cz>
2833
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.
2841
2842 2001-05-22  Neil Booth  <neil@daikokuya.demon.co.uk>
2843
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.
2848
2849 2001-05-21  Richard Henderson  <rth@redhat.com>
2850
2851         * combine.c (subst): Do not substitute for a register as
2852         a destination subreg/strict_low_part/zero_extract.
2853
2854         * combine.c (simplify_comparison): Update op1 after constant
2855         extension.
2856         * recog.c (const_int_operand): Accept only constants valid
2857         for the given mode.
2858         * genrecog.c: Update comments wrt const_int_operand.
2859
2860         * emit-rtl.c (init_emit_once): Zero unused memory in a
2861         CONST_DOUBLE.
2862
2863 2001-05-21  Mark Mitchell  <mark@codesourcery.com>
2864
2865         * tree.h (type_num_arguments): Declare it.
2866         * tree.c (type_num_arguments): New function.
2867
2868 2001-05-21  Richard Henderson  <rth@redhat.com>
2869
2870         * dwarf2out.c (current_funcdef_number): Move outside dwarf2
2871         conditional ifdef.
2872
2873 2001-05-21  Geoff Keating  <geoffk@redhat.com>
2874
2875         * config/rs6000/rs6000.md (maxsf3): Use rs6000_emit_minmax.
2876         (maxsf3+1): Delete.
2877         (minsf3): Use rs6000_emit_minmax.
2878         (minsf3+1): Generalize to handle both SMIN and SMAX.  Use
2879         rs6000_emit_minmax.
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.
2885         (maxdf3+1): Delete.
2886         (mindf3): Use rs6000_emit_minmax.
2887         (mindf3+1): Generalize to handle both SMIN and SMAX.  Use
2888         rs6000_emit_minmax.
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.
2900
2901         * config/rs6000/rs6000.c (output_cbranch): Handle all
2902         conditional types in the switch statement.
2903
2904 2001-05-21  Mark Mitchell  <mark@codesourcery.com>
2905
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.
2910
2911 2001-05-21  Jason Merrill  <jason_merrill@redhat.com>
2912
2913         * dbxout.c (MINIMAL_DEBUG, flag_minimal_debug): Lose.
2914         (dbxout_type_fields): Lose minimal_debug support.
2915         (dbxout_type_methods, dbxout_type): Likewise.
2916
2917 2001-05-17  Andrew Haley  <aph@redhat.com>
2918
2919         * config/rs6000/linux.h (MD_FALLBACK_FRAME_STATE_FOR): New.
2920
2921 2001-05-21  Richard Henderson  <rth@redhat.com>
2922
2923         * dwarf2out.c (DEBUG_FRAME_SECTION): Rename from FRAME_SECTION.
2924         Update all users.
2925
2926 2001-05-20  Richard Henderson  <rth@redhat.com>
2927
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):
2933         Likewise.
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.
2941
2942 2001-05-20  Richard Henderson  <rth@redhat.com>
2943
2944         * optabs.c (emit_cmp_and_jump_insns): Don't swap commutative
2945         operands unless the operation is commutative.
2946
2947 2001-05-20  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
2948
2949         * fold-const.c (tree_expr_nonnegative_p): Detect more non-negative
2950         cases.
2951
2952 2001-05-21  Joseph S. Myers  <jsm28@cam.ac.uk>
2953
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.
2959
2960 Sun May 20 16:39:24 2001  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
2961
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.
2966
2967         * stmt.c (expand_decl): Set mode, alignment, and sizes for CONST_DECL.
2968
2969 2001-05-20  Richard Henderson  <rth@redhat.com>
2970
2971         * sched-deps.c (sched_analyze_insn): Force volatile memory reads
2972         to be output before a branch.
2973
2974 2001-05-20  Richard Henderson  <rth@redhat.com>
2975
2976         * Makefile.in (dwarf2asm.o): Depend on $(TREE_H).
2977
2978 2001-05-20  Richard Henderson  <rth@redhat.com>
2979
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.
2984
2985         * config/i386/i386.h (UNALIGNED_SHORT_ASM_OP): New.
2986         (UNALIGNED_INT_ASM_OP, INT_ASM_OP): New.
2987
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.
2992
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.
2999
3000 2001-05-20  Joseph S. Myers  <jsm28@cam.ac.uk>
3001
3002         * invoke.texi: Add more options to summary list.
3003
3004 2001-05-20  Joseph S. Myers  <jsm28@cam.ac.uk>
3005
3006         * invoke.texi: Document meaning of -pedantic when -std=gnu* is
3007         used.  Fixes PR c/2291.
3008         * gcc.1: Regenerate.
3009
3010 2001-05-20  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
3011
3012         * config/m68hc11/m68hc11.c (m68hc11_override_options): Ignore
3013         the -fpic and -fPIC options, clear flag_pic.
3014
3015 2001-05-20  Neil Booth  <neil@daikokuya.demon.co.uk>
3016
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.
3020
3021 2001-05-20  Neil Booth  <neil@daikokuya.demon.co.uk>
3022
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.
3032         Delete rid_code.
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
3038         and our_hashtable.
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.
3058         * hashtable.c: New.
3059         * hashtable.h: New.
3060         * stringpool.c: Update comments and copyright.  Update to use
3061         hashtable.c.
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.
3071 cp:
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.
3076 objc:
3077         * objc-act.c (objc_init_options): Call set_identifier_size. Update.
3078
3079 Sat May 19 18:23:04 2001  Richard Henderson <rth@redhat.com>
3080
3081         * except.c (dw2_build_landing_pads): Use word_mode, not Pmode,
3082         as ncessary.
3083         (expand_eh_return): Convert between word_mode and Pmode.
3084         * unwind-dw2.c (extract_cie_info): Do not assume words and pointers
3085         are the same size.
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.
3100
3101 2001-05-19  Mark Mitchell  <mark@codesourcery.com>
3102
3103         * jump.c (mark_jump_label): Tidy previous change.
3104
3105 2001-05-19  Bruce Korb  <bkorb@gnu.org>
3106
3107         * fixinc/genfixes: no need for two warnings
3108         * fixinc/Makefile.in: open stdin for those building with a closed one.
3109
3110 2001-05-19  Mark Mitchell  <mark@codesourcery.com>
3111
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.
3115
3116 2001-05-19  Joseph S. Myers  <jsm28@cam.ac.uk>
3117
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.
3123
3124 2001-05-19  Mark Mitchell  <mark@codesourcery.com>
3125
3126         * defaults.h (TARGET_ALLOWS_PROFILING_WITHOUT_FRAME_POINTER): New
3127         macro.
3128         * tm.texi (TARGET_ALLOWS_PROFILING_WITHOUT_FRAME_POINTER):
3129         Document it.
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):
3133         Define it to false.
3134
3135 Sat May 19 07:53:42 2001  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
3136
3137         * recog.c (general_operand): Modify last change to allow it if reload
3138         has completed.
3139
3140 Sat May 19 10:23:54 CEST 2001  Jan Hubicka  <jh@suse.cz>
3141
3142         * recog.c (general_operand): Prohibit nonzero subreg bytes on
3143         subregs containing mem.
3144
3145 Sat May 19 09:40:45 2001  Denis Chertykov  <denisc@overta.ru>
3146
3147         * regrename.c (regrename_optimize): frame pointer register can
3148         use a few hardregs.
3149
3150 2001-05-18  Jason Merrill  <jason_merrill@redhat.com>
3151
3152         * README.DWARF: Move into dwarfout.c.
3153
3154 2001-05-18  Dale Johannesen  <dalej@apple.com>
3155
3156         * config/rs6000/rs6000.c (secondary_reload_class): Fix Darwin
3157         specific misuse of r0 as a reload address.
3158
3159 Fri May 18 22:42:04 CEST 2001  Jan Hubicka  <jh@suse.cz>
3160
3161         * combine.c (combine_simplify_rtx): Clear op0_mode if simplification
3162         suceeded.
3163
3164 Fri May 18 07:26:34 2001  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
3165
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.
3170
3171         * dbxout.c (dbxout_type): Use host_integerp and fix typo in testing
3172         for INTEGER_TYPE.
3173         (dbxout_symbol, case TYPE_DECL): Don't generate tag for records of
3174         variable size.
3175
3176 2001-05-18  Stan Shebs  <shebs@apple.com>
3177
3178         * configure.in (gcc_cv_as_eh_frame): Cope with old assemblers.
3179         * configure: Regenerate.
3180
3181 2001-05-18  Per Bothner  <per@bothner.com>
3182
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.
3186
3187 Fri May 18 10:14:42 2001  Jeffrey A Law  (law@cygnus.com)
3188
3189         * config/pa/som.h (EXCEPTION_SECTION): Define.
3190
3191 2001-05-18  Daniel Berlin  <dan@cgsoftware.com>
3192
3193         * dwarf2out.c: Add dw_loc_list_ref, a reference to a location
3194         list.
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
3218         lists.
3219
3220
3221 Fri May 18 15:39:16 CEST 2001  Jan Hubicka  <jh@suse.cz>
3222
3223         * gcse.c (try_replace_reg): First try global replace, later try to
3224         simplify the expression.
3225
3226         * gcse.c (find_used_regs): Change calling convention; work via
3227         note_uses.
3228         (cprop_insn): Update call of find_used_regs; work for CALL_INSNs too.
3229
3230 2001-05-18  Bernd Schmidt  <bernds@redhat.com>
3231
3232         Revert
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.
3236
3237 2001-05-18  Mark Mitchell  <mark@codesourcery.com>
3238
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.
3248
3249         * function.c (expand_function_start): Avoid creating BLKmode
3250         pseudos.
3251
3252 2001-05-17  Mark Mitchell  <mark@codesourcery.com>
3253
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
3257         it has no content.
3258
3259 2001-05-18  David Edelsohn  <edelsohn@gnu.org>
3260
3261         * rs6000.md (movsfcc,movdfcc): Remove NE case.
3262
3263 2001-05-17  Bruce Korb <bkorb@gnu.org>
3264
3265         * fixinc/fixincl.tpl: rewritten as an AutoGen version 5 template
3266         * fixinc/genfixes: emit a warning if AutoGen is out of date
3267
3268 2001-05-17  Brendan Conoboy <blc@cygnus.com>
3269             Bruce Korb <bkorb@gnu.org>
3270
3271         * fixinc/fixincl.sh(FIXINC): accept local directory if fixincl not
3272         found in fixinc directory.  Facilitates binary distributions.
3273
3274 2001-05-17  Jeffrey Oldham  <oldham@codesourcery.com>
3275
3276         * dbxout.c (dbxout_symbol_location): For CONCAT, skip types not
3277         COMPLEX_TYPE.
3278
3279 Thu May 17 19:42:39 2001  Mark Kettenis  <kettenis@wins.uva.nl>
3280
3281         * dwarf2out.c (modified_type_die): Equate qualified type to die.
3282
3283 Thu May 17 23:19:46 CEST 2001  Jan Hubicka  <jh@suse.cz>
3284
3285         * integrate.c (copy_rtx_and_substitute): Use simplify_gen_subreg.
3286         (simplify_subreg): Handle complex types represented as CONCAT.
3287
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.
3292
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.
3298
3299 Thu May 17 20:43:36 CEST 2001  Jan Hubicka  <jh@suse.cz>
3300
3301         * cse.c (fold_rtx): Use simplify_subreg.
3302
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.
3307
3308 2001-05-17  Mark Mitchell  <mark@codesourcery.com>
3309
3310         * doc/install.texi: Update Solaris information.
3311
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'
3320         variable.
3321         * varasm.c (assemble_external): Abort if we have not yet
3322         opened the assembly output file.
3323
3324 Thu May 17 11:54:50 2001  Jeffrey A Law  (law@cygnus.com)
3325
3326         * except.c (sjlj_emit_function_enter): Call assemble_external_libcall
3327         for eh_personality_libfunc.
3328
3329 Thu May 17 19:48:00 CEST 2001  Jan Hubicka  <jh@suse.cz>
3330
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.
3334
3335 Thu May 17 19:40:03 CEST 2001  Jan Hubicka  <jh@suse.cz>
3336
3337         * simplify-rtx.c  (simplify_subreg): Avoid creating of incorrect subregs.
3338
3339 2001-05-17  Bernd Schmidt  <bernds@redhat.com>
3340
3341         * expr.c (protect_from_queue): Protect against subsequent calls to
3342         emit_queue.
3343         (expand_expr, case ADDR_EXPR): Prevent protect_from_queue from being
3344         too clever.
3345
3346 Thu May 17 18:17:34 CEST 2001  Jan Hubicka  <jh@suse.cz>
3347
3348         * simplify_rtx.c (simplify_subreg): Fix simplification of nested subregs.
3349
3350 2001-05-17  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
3351
3352         * gccbug.in (CATEGORIES): Add "bootstrap".
3353
3354 Thu May 17 16:59:41 CEST 2001  Jan Hubicka  <jh@suse.cz>
3355
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.
3362
3363 2001-05-17  Bernd Schmidt  <bernds@redhat.com>
3364
3365         * stmt.c (expand_asm_operands): For inout operands, make sure
3366         the substitution of '=' for '+' makes it into the rtl.
3367
3368         * reload1.c (delete_output_reload): Call eliminate_regs on substed.
3369         (reload_as_needed): Call update_eliminable_offsets a bit later.
3370
3371 2001-05-17  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
3372
3373         * gcc.texi (gccbug): Refer to the web pages for detailed information
3374         on GNATS.
3375
3376 2001-05-16  Zack Weinberg  <zackw@stanford.edu>
3377
3378         * libgcc1-test.c, libgcc1.c, config/i386/perform.h: Delete file.
3379
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.
3387
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.
3398
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.
3435
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.
3442
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.
3448
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.
3455
3456         * config.gcc: Remove references to deleted files.
3457         (arm-semi-aof): Use arm/t-semi for tmake_file.
3458
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.
3462
3463         * config/t-openbsd, config/alpha/t-interix, config/i386/t-interix:
3464         No need to set INSTALL_ASSERT_H.  (Missed in previous sweep.)
3465
3466 2001-05-16  Wolfgang Bangerth <wolfgang.bangerth@iwr.uni-heidelberg.de>
3467         Bruce Korb <bkorb@gnu.org>
3468
3469         * fixinc/inclhack.def(solaris27_mutex_init):  Fix broken mutex
3470         initializer
3471
3472 2001-05-16  Zack Weinberg  <zackw@stanford.edu>
3473
3474         * i386.md: Add two peepholes to clean up code generated by
3475         cmpstr* expanders.
3476
3477 2001-05-16  Richard Henderson  <rth@redhat.com>
3478
3479         * dwarf2asm.c (eh_data_format_name): Add names for "pointer size"
3480         variants of non-absolute encodings.
3481
3482         * config/i386/i386.h (ASM_PREFERRED_EH_DATA_FORMAT): New.
3483
3484         * libgcc-std.ver (_Unwind_Find_FDE, __register_frame_info_bases,
3485         __register_frame_info_table_bases): Export.
3486
3487 2001-05-16  Richard Henderson  <rth@redhat.com>
3488
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
3496         the LSDA encoding.
3497
3498         * unwind-dw2-fde.h (struct fde_vector): New.