OSDN Git Service

ad9c7deaf7f01b77c90fab2abd2a1f6c070d32ff
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
1 2001-06-05  David O'Brien  <obrien@FreeBSD.org>
2
3         * elfos.h (USING_ELFOS_H):  Identify the use of elfos.h in the same
4         way svr4.h does.
5
6 2001-06-05  Pascal Obry  <obry@act-europe.fr>
7
8         * configure.in: Quote $enable_win32_registry in case the value has
9         spaces in it.
10         * configure: Ditto.
11
12 2001-06-05  Mark Mitchell  <mark@codesourcery.com>
13
14         * print-rtl.c (xspaces): Remove.
15         (print_rtx): Use printf field-width, rather than xpsaces, to
16         indent.
17         * toplev.c (main): Disable sibling-call optimization if we are
18         handling exceptions.
19         
20 2001-06-05  Bernd Schmidt  <bernds@redhat.com>
21
22         * reload1.c (reload): Delete all USEs generated during reload.
23
24 2001-06-05  scott snyder  <snyder@fnal.gov>
25
26         * gccbug.in:  Fix typo.
27
28 2001-06-05  Andreas Jaeger  <aj@suse.de>
29
30         * builtins.def: Fix definition of __builtin_cosf, it uses float as
31         parameter and return value.
32
33 2001-06-04  Anthony Green  <green@redhat.com>
34
35         * config/sparc/elf.h (CPP_PREDEFINES): Don't assert cpu or
36         machine.  This is now done in sparc.h.
37
38 2001-06-05  Nathan Sidwell  <nathan@codesourcery.com>
39
40         Correct CVS resurrection of invoke.texi.
41         * doc/invoke.texi: Document new tree dump flags.
42
43 2001-06-05  Joseph S. Myers  <jsm28@cam.ac.uk>
44
45         * c-typeck.c (build_c_cast): Use TYPE_MAIN_VARIANT when checking
46         for casting an aggregate to its own type.  Fixes PR c/2735.
47
48 2001-06-05  Joseph S. Myers  <jsm28@cam.ac.uk>
49
50         * doc/texinfo.tex: Update to version 2001-05-24.08.
51
52 2001-06-05  Nathan Sidwell  <nathan@codesourcery.com>
53
54         * c-common.h (flag_dump_translation_unit): Remove.
55         (enum tree_dump_index): Define.
56         (TDF_ADDRESS, TDF_SLIM): New #defines.
57         (dump_node_to_file): Remove.
58         (dump_node): Make extern. Add flags.
59         (dump_flag, dump_enabled_p, dump_begin, dump_end,
60         dump_switch_p): Prototype.
61         * c-common.c (flag_dump_translation_unit): Remove.
62         * c-decl.c (c_decode_option): Remove -fdump-translation-unit
63         logic. Use dump_switch_p.
64         * c-dump.h (struct dump_info): Add node and user fields.
65         (dump_pointer): Declare.
66         * c-dump.c (dump_node): Make extern. Add flags.
67         (SOL_COLUMN, EOL_COLUMN, COLUMN_ALIGNMENT): New #defines.
68         (dump_new_line, dump_maybe_newline): Use them.
69         (dump_pointer): New function.
70         (dequeue_and_dump): Check TDF_SLIM before dumping a _DECL's
71         chain or function's body. Dump address, if TDF_ADDRESS set.
72         (dump_flag): Define.
73         (dump_node_to_file): Remove.
74         (struct dump_file_info): New struct.
75         (dump_files): New array.
76         (dump_begin, dump_end, dump_enabled_p, dump_switch_p): Define.
77         * c-lang.c (finish_file): Adjust dumping.
78         * toplev.h (dump_base_name): Make extern.
79         * invoke.texi: Document new flags.
80
81 2001-06-04  Mark Mitchell  <mark@codesourcery.com>
82
83         * c-tree.h (lang_decl): Add pending_sizes fields.
84         * c-decl.c (store_parm_decls): Save pending_sizes away for nested
85         functions.
86         (c_expand_body): Expand them.
87         (lang_mark_tree): Mark lang_decl:pending_sizes.
88         * function.c (expand_pending_sizes): New function, broken out
89         from ...
90         (expand_function_start): ... here.
91         * tree.h (expand_pending_sizes): Declare it.
92
93 2001-06-04  Loren J. Rittle  <ljrittle@acm.org>
94
95         * doc/install.texi: Update FreeBSD information.  Generalize
96         and update information for alpha-based platforms using ELF.
97
98 2001-06-04  John David Anglin  <dave@hiauly1.hia.nrc.ca>
99
100         * c-decl.c (get_parm_info): Use INTEGRAL_TYPE_P.
101         (store_parm_decls): Likewise.
102         * c-typeck.c (convert_arguments): Likewise.
103
104 2001-06-04  Richard Henderson  <rth@redhat.com>
105
106         * sibcall.c (optimize_sibling_and_tail_recursive_call): Suppress
107         optimization if current_function_calls_setjmp.
108
109 2001-06-04  Joseph S. Myers  <jsm28@cam.ac.uk>
110
111         * doc/c-tree.texi: Fix documentation of TREE_STRING_LENGTH for
112         wide strings.
113
114 Mon Jun  4 20:44:25 CEST 2001  Jan Hubicka  <jh@suse.cz>
115
116         * simplify-rtx.c (simplify_subreg): Fix combining of
117         paradoxical subregs.
118
119 Mon Jun  4 20:15:25 CEST 2001  Jan Hubicka  <jh@suse.cz>
120
121         * rtlanal.c (rtx_unsable_p): ADDRESSOF is stable.
122         (no_labels_between_p): Short circuit case beg==end.
123
124 Mon Jun  4 20:03:05 CEST 2001  Jan Hubicka  <jh@suse.cz>
125
126         * rtlanal.c (operand_preference): Fix preference for objects.
127
128 Mon Jun  4 20:00:40 CEST 2001  Jan Hubicka  <jh@suse.cz>
129
130         * gcse.c (handle_avail_expr): Be prepared to handle single_set
131         parallels.
132
133 Mon Jun  4 19:59:46 CEST 2001  Jan Hubicka  <jh@suse.cz>
134
135         * combine.c (if_then_else_cond): Use simplify_subreg instead
136         of operand_subword.
137         * integreate.c (sub_constants): Likewise.
138
139 Mon Jun  4 19:59:12 CEST 2001  Jan Hubicka  <jh@suse.cz>
140
141         * emit-rtl.c (constant_subword): Deprecate; remove most of code
142         and use simplify_gen_subreg.
143
144 Mon Jun  4 19:55:23 CEST 2001  Lars Brinkhoff  <lars@nocrew.org>
145
146         * sibcall.c (skip_copy_to_return_value): recognize the situation
147         when the called function's return value is copied into an
148         intermediate pseudo, and then into the calling functions return
149         value register.
150
151 Mon Jun  4 16:50:33 CEST 2001  Jan Hubicka  <jh@suse.cz>
152
153         * simplify_rtx.c (simplify_subreg): Keep subregs on return values,
154         check CLASS_CANNOT_CHANGE_MODE before avoiding subreg on hard reg,
155         in case register wasn't OK previously, accept it now; allow
156         subregs of frame pointer if reload completed and frame pointer
157         is not needed.
158
159         * combine.c (sombine_simplify_rtx): Fix comment;
160         use subreg_lowpart_offset instead of subreg_lowpart_p
161         (gen_lowpart_for_combine): Use subreg_lowpart_offset.
162         * rtl.h (subreg_lowpart_parts_p): Kill.
163         (subreg_lowpart_offset, subreg_highpart_offset): Declare.
164         * simplify-rtx.c (simplify_subreg): Use subreg_lowpart_offset.
165         * emit-rtl.c (gen_lowpart_SUBREG): Use subreg_lowpart_offset;
166         (gen_lowpart_common): Likewise.
167         (subreg_lowpart_p): Likewise.
168         (subreg_lowpart_parts_p): Kill.
169         (subreg_lowpart_offset, subreg_highpart_offset): New function.
170
171         * emit-rtl.c (gen_lowpart_common): Use simplify_gen_subreg
172         to simplify SUBREG and REG.
173         (gen_highpart): Use simplify_gen_subreg for all simplifications.
174
175         * emit-rtl.c (gen_realpart, gen_imagpart): Do not handle
176         CONCAT specially.
177
178         * rtlanal.c (replace_regs):  Use simplify_gen_subreg
179
180 Mon Jun  4 09:21:19 2001  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
181
182         * doc/c-tree.texi (ARRAY_REF): Say what type of expression must be.
183         (ARRAY_RANGE_REF): Added description.
184
185         * tree.def (ARRAY_RANGE_REF): New code.
186         * alias.c (handled_component_p, can_address_p): Handle it.
187         * dwarf2out.c (loc_descriptor_from_tree): Likewise.
188         * explow.c (set_mem_attributes): Likewise.
189         * expr.c (expand_assignment, get_inner_reference): Likewise.
190         (expand_expr, expand_expr_unaligned, do_jump): Likewise.
191         * fold-const.c (operand_equal_p): Likewise.
192         * tree.c (staticp, stabilize_reference): Likewise.
193         * varasm.c (decode_addr_const): Likewise.
194
195 Sun Jun  3 21:59:51 2001  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
196
197         * reload.c (reload_inner_reg_of_subreg): Return 1 for PLUS.
198         (push_reload): Handle non-REG in reload_inner_reg_of_subreg case.
199
200 2001-06-03  kaz Kojima  <kkojima@rr.iij4u.or.jp>
201
202         * gcc/config/sh/sh.c (print_operand_address, print_operand): Call
203         mark_constant_pool_use before output_addr_const.
204         (struct pool_node): New field wend.
205         (add_constant): Note a sequence of constants that are referenced
206         by a given label.
207         (pool_window_label, pool_window_last): New variables.
208         (dump_table): Emit a unspec_volatile representing the end of a
209         sequence of constants.
210         (mark_constant_pool_use): New function.
211         * gcc/config/sh/sh.md (UNSPECV_WINDOW_END): New constant.
212         (consttable_2): Add the second operand which flags whether
213         this consttable entry was used or not.
214         (consttable_4, consttable_8, consttable_sf, consttable_df):
215         Likewise.
216         (consttable_window_end): New insn.
217
218 2001-06-03  Alexandre Oliva  <aoliva@redhat.com>
219
220         * insn-addr.h (INSN_ADDRESSES_NEW): Make insn_uid__ unsigned.
221         Reformat according to coding standards.
222
223         Warning removal.
224         * config/sh/sh.c (print_operand_address): Cast INTVAL to int.
225         (shl_and_kind): Cast wide constant.
226         (gen_far_branch): Define as static, as in declaration.
227         (barrier_align): Compute cache-line length as unsigned.  Add
228         parentheses in initial credit computation.
229         (rounded_frame_size): Add parentheses.
230         (permanent_obstack): Remove declaration.  Include ggc.h for
231         declaration of ggc_add_root_rtx().
232         (get_free_reg): Removed declaration of unused variable reg.
233         (legitimize_pic_address): Mark mode argument as unused.
234
235 2001-06-03  Igor Shevlyakov  <igor@windriver.com>
236
237         * config/sh/sh.c (output_branch): Support for insn with lenght
238         attr 12 & 16 which represents cond branches outside +-4096 range.
239
240 2001-06-03  Alexandre Oliva  <aoliva@redhat.com>
241
242         * config/sh/lib1funcs.asm (ic_invalidate): Align the
243         cache-mirroring sequence.  Add nops.
244
245 2001-06-03  Joseph S. Myers  <jsm28@cam.ac.uk>
246
247         * doc/install-old.texi: Remove more old installation
248         documentation.
249         * doc/install.texi: Add relevant parts here.
250
251 2001-06-03  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
252
253         * doc/install.texi2html: New script.
254
255 2001-06-03  David Edelsohn  <edelsohn@gnu.org>
256
257         * doc/install.texi: Update AIX information again.
258
259 2001-06-02  Joseph S. Myers  <jsm28@cam.ac.uk>
260
261         * doc/gcc.texi, doc/install-old.texi: Remove old system-specific
262         installation documentation.
263         * doc/install.texi: Move it to here.
264
265 2001-06-02  Joseph S. Myers  <jsm28@cam.ac.uk>
266
267         * doc/install.texi: Clean up Texinfo markup.
268
269 2001-06-02  Joseph S. Myers  <jsm28@cam.ac.uk>
270
271         * doc/cpp.texi, doc/cppinternals.texi, doc/gcc.texi: Move contents
272         to just after title page.
273
274 2001-06-02  Joseph S. Myers  <jsm28@cam.ac.uk>
275
276         * doc/install-old.texi: Remove documentation of some configuration
277         options.
278         * doc/install.texi: Add relevant parts of this documentation here.
279
280 2001-06-02  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
281
282         * contrib.texi: Updated entries for Mark Mitchell, Joseph S. Myers,
283         Gerald Pfeifer, Bernd Schmidt, and Dean Wakerley.
284
285 Sat Jun  2 12:23:51 CEST 2001  Jan Hubicka  <jh@suse.cz>
286
287         * i386.md (all uses of ext_register_operand): Make sure they are
288         VOIDmode; replace all uses outside zero_extend.
289         (and?i splitters): Use ext_register_operands.
290         (test?i peep2): Remove ignored constraints.
291         * i386.c (ext_register_operand): Check that operand is
292         eighter pseudo or hard or 'Q' register.
293
294 Sat Jun  2 06:53:50 2001  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
295
296         * tree.h (struct record_layout_info_s): New field unpadded_align.
297         (set_lang_adjust_rli): New declaration.
298         * stor-layout.c (layout_decl): If DECL is packed, but at alignment
299         it would have if not packed, do not downgrade DECL_ALIGN.
300         (lang_adjust_rli, set_lang_adjust_rli): New.
301         (start_record_layout): Initialize new field unpadded_align.
302         (debug_rli): Display it.
303         (place_union_field, place_field): Set it.
304         (layout_type, case RECORD_TYPE): Call via lang_adjust_rli if set.
305
306         * print-tree.c (print_node): Don't print "regdecl" when bit doesn't
307         mean that; use proper names instead.
308         Print DECL_NO_STATIC_CHAIN.
309
310         * except.c (expand_builtin_frob_return_addr): Add missing call
311         to convert_memory_address #ifdef POINTERS_EXTEND_UNSIGNED.
312         (expand_builtin_eh_return): Likewise.
313         (expand_eh_return): Clean up ptr_mode != Pmode cases.
314
315 2001-06-01  Jan van Male  <jan.vanmale@fenk.wau.nl>
316
317         * doc/invoke.texi: Remove references to papers about sequence points
318         to readings.html, refer to that page.
319
320 2001-06-01  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
321
322         * README: Update references to installation instructions.
323
324 2001-06-01  Laurent Guerby  <guerby@acm.org>
325             Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
326
327         * doc/install.texi: Define srcdir when sources come from CVS.
328         Significantly improve markup.  Wrap overly long lines
329
330 2001-06-01  DJ Delorie  <dj@redhat.com>
331
332         * c-tree.texi, contrib.texi, cpp.texi, cppinternals.texi,
333         extend.texi, fdl.texi, gcov.texi, invoke.texi, md.texi, objc.texi,
334         rtl.texi, tm.texi, texinfo.tex: Move to doc subdirectory.
335         * install.texi: Move to doc/install-old.texi.
336         * gcc.texi: Move to doc, refer to install-old.texi.
337         * Makefile.in: Reflect move of docs to doc/.
338         * f/Make-lang.in: Ditto.
339         * java/Make-lang.in: Ditto.
340         * doc/.cvsignore: New.
341
342 2001-05-31  Jan van Male  <jan.vanmale@fenk.wau.nl>
343
344         * invoke.texi: use two spaces between command options, eliminate
345         some 'overfull hboxes'
346
347 2001-06-01  Hans-Peter Nilsson  <hp@axis.com>
348
349         * Makefile.in (s-mlib): Make backtick-commands always succeed.
350         (DRIVER_DEFINES): Ditto.
351
352 2001-05-31  Richard Henderson  <rth@redhat.com>
353
354         * gcc.c (init_gcc_specs): When linking against libgcc_s.so,
355         also link against libgcc.a.
356
357 2001-05-31  Geoff Keating  <geoffk@cygnus.com>
358
359         * config/mips/mips.h (ASM_OUTPUT_ASCII): Convert to function.
360         * config/mips/mips.c (mips_output_ascii): New function.
361         * config/mips/mips-protos.h (mips_output_ascii): Prototype.
362
363         * config/mips/mips.h (DWARF_CIE_DATA_ALIGNMENT): Force to 4.
364
365 Thu May 31 19:09:53 CEST 2001  Jan Hubicka  <jh@suse.cz>
366
367         * flow.c (set_block_for_new_insns): Remove bogus shortcut.
368         * i386.c (ix86_expand_int_movcc): Force one of operands to be register.
369
370 2001-05-31  Rodney Brown  <rbrown64@csc.com.au>
371
372         * install.texi (Configuration): Add html links for --with-gnu-as &
373         --with-gnu-ld and refer to them from hppa & SCO triplets.
374         (Specific): Link back to with-gnu-ld for all ELF platfoms.
375         (Specific): Reword AVR binutils recommendation.
376
377 2001-05-30  Zack Weinberg  <zackw@stanford.edu>
378
379         * ggc-page.c (size_lookup): Increase minimum allocation size
380         to eight bytes.
381         (ggc_print_statistics): Report size of each bin in bytes, not
382         as its order; there is no longer a direct relationship.
383
384 2001-05-31  Jan van Male  <jan.vanmale@fenk.wau.nl>
385
386         * extend.texi: Fix formating of examples, eliminate some
387         'overfull hboxes'.
388         * gcc.texi: Eliminate some 'overfull hboxes'.
389         * invoke.texi: Use two spaces between command options, eliminate
390         some 'overfull hboxes'.
391
392 2001-05-30  Richard Henderson  <rth@redhat.com>
393
394         * dwarf2out.c (dwarf2out_finish): Don't emit DW_AT_stmt_list at -g1.
395
396 2001-05-30  Tom Tromey  <tromey@redhat.com>
397
398         * gcc.c (do_spec_1): In `%O' case, if we computed saved_suffix,
399         use it in the new association.
400
401 2001-05-30  Loren J. Rittle  <ljrittle@acm.org>
402             John David Anglin  <dave@hiauly1.hia.nrc.ca>
403
404         * gthr-posix.h (__gthread_active_ptr): Cast function pointer
405         to target type to allow ISO C++ compiler to accept it.
406         * gthr-dce.h (__gthread_active_ptr): Likewise.
407         * gthr-solaris.h (__gthread_active_ptr): Likewise.
408
409 2001-05-30  Neil Booth  <neil@daikokuya.demon.co.uk>
410
411         * cpplex.c (_cpp_lex_token): Revert patch of 16 May 2001
412         so that we do accept comments in preprocessed input.
413
414 2001-05-30  Neil Booth  <neil@daikokuya.demon.co.uk>
415
416         * cpphash.c (alloc_node): Cast allocated pointer.
417
418 2001-05-30  Gordon Sadler <gbsadler1@lcisp.com>
419
420         * invoke.texi (Option Summary): Remove -isystem-c++ from options.
421
422 2001-05-29  Stan Shebs  <shebs@apple.com>
423
424         * gcc.texi: Add links for information about Objective-C.
425
426 2001-05-29  Nathan Sidwell  <nathan@codesourcery.com>
427
428         * configure.in (gcc_version): Remove unrequired \ on ". (Solaris
429         /bin/sed fails on [^\"]).
430         (configargs.h): Likewise.
431
432 2001-05-29  Hartmut Schirmer <SchirmerH@Innovative-Systems.de>
433
434         * config/sh/sh.h (IDENT_ASM_OP): End with TAB, not LF.
435
436 2001-05-28  Stan Shebs  <shebs@apple.com>
437
438         * objc/objc.gperf: Remove, no longer used.
439
440 2001-05-28  Joseph S. Myers  <jsm28@cam.ac.uk>
441
442         * c-tree.texi, contrib.texi, cpp.texi, extend.texi, gcc.texi,
443         gcov.texi, install.texi, md.texi, objc.texi, rtl.texi, tm.texi:
444         Remove trailing whitespace.
445
446 2001-05-28  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
447
448         * doc/install.texi (Specific): http://reality.sgi.com/ariel/freeware/
449         became http://freeware.sgi.com/.
450
451 2001-05-27  Geoffrey Keating  <geoffk@redhat.com>
452
453         * local-alloc.c (update_equiv_regs): Don't eliminate constant
454         expressions at -O0.
455
456 2001-05-27  Stan Shebs  <shebs@apple.com>
457
458         * objc/objc-act.c: Add/fix various comments.
459         (init_selector): Remove, no longer used.
460         (build_msg_pool_reference): Ditto.
461         (objc_debug): Ditto.
462
463 2001-05-27  Neil Booth  <neil@daikokuya.demon.co.uk>
464
465         * c-decl.c (init_decl_processing):
466          Don't call start_identifier_warnings.
467         * flags.h (warn_id_clash, id_clash_len): Remove.
468         * stringpool.c: Don't include flags.h.
469         (scan_for_clashes, do_identifier_warnings,
470         start_identifier_warnings): Remove.
471         * toplev.c (warn_id_clash, id_clash_len): Remove.
472         (display_help): Don't document -Wid-clash.
473         (decode_W_option): Print warning on -Wid-clash.
474         * tree.h (start_identifier_warnings): Remove.
475         * invoke.texi: Remove documentation of -Wid-clash.
476
477 2001-05-27  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
478
479         * fixinc/fixtests.c: Declare entries in ENV_TABLE.
480
481 2001-05-27  Bruce Korb  <bkorb@gnu.org>
482
483         * fixinc/check.tpl(HACK) add and use a Scheme variable
484         (has no test text): error out if no "test_text" is defined
485         * fixinc/fixincl.tpl: likewise
486         (FIXIDX): make it an enumeration so we minimize diffs
487         * fixinc/inclhack.def: re-alphabetize and add sort instructions
488         * fixinc/fixincl.x: regenerate
489         * fixinc/tests/base/stdio.h: test output got moved due to
490         the alphabetizing
491         * README-fixinc: rewrite (mostly)
492
493 2001-05-27  Neil Booth  <neil@daikokuya.demon.co.uk>
494
495         * cpplib.c (run_directive): Set pfile->directive.
496
497 2001-05-23  Theodore Papadopoulo  <Theodore.Papadopoulo@sophia.inria.fr>
498
499         * c-tree.texi: Reformat the manual as a single chapter now
500         included by gcc.texi.
501         * gcc.texi: Include c-tree.texi. Merge all indexes.
502         * Makefile.in (dvi): Add generation for the cppinternals
503         documentation. Added dependencies on fdl.texi and c-tree.texi
504         where appropriate.  Use TEXI2DVI instead of custom tex calls.
505         (info): Added dependencies on fdl.texi and c-tree.texi where
506         appropriate.  Remove the target c-tree.info.
507
508 2001-05-27  Lars Brinkhoff  <lars@nocrew.org>
509
510         * combine.c (try_combine): Fix typo in comment.
511         * expr.c (expand_expr): Likewise.
512         * config/i370/i370.md (untyped_call): Likewise.
513
514 2001-05-26  Bruce Korb  <bkorb@gnu.org>
515
516         * fixinc/fixtests.c(stdc_0_in_system_headers_test): Must return "FIX"
517         when fixincl is operating in test mode
518         * fixinc/inclhack.def(AAB_dgux_int_varargs) : aesthetics
519         (AAB_ultrix_limits): remove redundant text
520         (AAB_ultrix_memory): ditto
521         (AAB_ultrix_string): ditto
522         (djgpp_wchar_h): fix the test text
523         (irix_stdio_va_list): add test text
524         (irix_limits_const): add a testing output file (limits.h is overwritten)
525         (strict_ansi_not_ctd): put limits.h second in list for same reason
526         (solaris27_mutex_init): test text needed selection text, too
527
528         * fixinc/fixtests.c(stdc_0_in_system_headers_test): Must return "FIX"
529         when fixincl is operating in test mode
530
531 2001-05-26  Philip Blundell  <philb@gnu.org>
532
533         * config/c4x/c4x-protos.h: Use GCC_C_PRAGMA_H in place of _C_PRAGMA_H.
534         * config/i960/i960-protos.h: Likewise.
535         * config/i370/i370-protos.h: Likewise.
536         * config/h8300/h8300-protos.h: Likewise,
537         * config/sh/sh-protos.h: Likewise.
538         * config/v850/v850-protos.h: Likewise.
539
540 2001-05-26  Philip Blundell  <philb@gnu.org>
541
542         * config/arm/arm-protos.h: Use GCC_C_PRAGMA_H in place of _C_PRAGMA_H.
543
544 2001-05-25  Zack Weinberg  <zackw@stanford.edu>
545
546         * toplev.c (debug_args, f_options, W_options): Mark
547         descriptions for translation.
548         (display_help): Translate descriptions on output.
549
550         * cp/lang-options.h, f/lang-options.h, java/lang-options.h,
551         objc/lang-options.h: Mark descriptions for translation.
552
553         * aclocal.m4: Quote final argument of patsubst.  Use
554         3-argument form of AC_DEFINE.  Restore quotes to [] while
555         using AC_FD_CC.
556         * configure.in: Remove unnecessary changequote calls.
557         * configure, config.in: Regenerate.
558
559 2001-05-25  Sam TH  <sam@uchicago.edu>
560
561         * basic-block.h: Fix header include guards.
562         * bitmap.h c-dump.h c-lex.h c-pragma.h c-tree.h collect2.h
563         cppdefault.h cpphash.h cpplib.h defaults.h diagnostic.h errors.h
564         except.h flags.h gcc.h gcov-io.h graph.h gstab.h gthr-aix.h
565         gthr-dce.h gthr-posix.h gthr-rtems.h gthr-single.h gthr-solaris.h
566         gthr-vxworks.h gthr-win32.h gthr.h hard-reg-set.h hwint.h
567         insn-addr.h libgcc2.h mbchar.h mkdeps.h params.h prefix.h real.h
568         rtl.h sbitmap.h system.h timevar.h toplev.h tradcpp.h tsystem.h
569         varray.h version.h: Likewise.
570         * config/dbxelf.h config/fp-bit.h config/arm/arm-protos.h
571         config/arm/arm.h config/c4x/c4x-protos.h
572         config/h8300/h8300-protos.h config/h8300/h8300.h
573         config/i370/i370-protos.h config/i370/i370.h
574         config/i960/i960-protos.h config/mcore/mcore.h
575         config/mips/mips-protos.h config/sh/sh-protos.h config/sh/sh.h
576         config/v850/v850-protos.h config/v850/v850.h: Likewise.
577         * fixinc/fixlib.h fixinc/server.h: Likewise.
578
579 2001-05-25  Stacey Sheldon  <ssheldon@Catena.com>
580
581         * config/arc/initfini.c (.init): Fix typo.
582
583 2001-05-25  Geoffrey Keating  <geoffk@redhat.com>
584
585         * config/rs6000/rs6000.md (fseldfsf4): Correct mode of operand 4.
586
587 2001-05-25  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
588
589         * i386/i386.h (CC1_CPU_SPEC): Clarify -m486 etc deprecation messages.
590
591 2001-05-25  Richard Henderson  <rth@redhat.com>
592
593         * libgcc-std.ver: Export XFmode and TFmode versions of symbols.
594
595 2001-05-25  Richard Henderson  <rth@redhat.com>
596
597         * config.gcc (all gnu and linux): Use t-slibgcc-elf-ver with t-linux.
598         (i386-*-solaris2): Use t-slibgcc-elf-ver or t-slibgcc-sld.
599         (sparc*-*-solaris2): Likewise.
600         * config/t-linux: Remove shared libgcc macros.
601         * config/t-slibgcc-elf-ver: Move from sparc/t-slibgcc.
602         * config/t-slibgcc-sld: Move from sparc/t-slibgcc-sld.
603
604 2001-05-25  Loren J. Rittle  <ljrittle@acm.org>
605
606         * config.gcc (*-*-freebsd*): Report bad configuration.
607
608 2001-05-25  David Edelsohn  <edelsohn@gnu.org>
609
610         * xcoffout.h (DBX_OUTPUT_GCC_MARKER): Do not emit any marker.
611
612         * config/rs6000/aix.h (USER_LABEL_PREFIX): AIX symbols do not have
613         any prefix.
614         (ASM_OUTPUT_LABELREF): Delete.
615
616 2001-05-25  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
617
618         * fixinc/inclhack.def (strict_ansi_not, strict_ansi_not_ctd,
619         strict_ansi_only): Don't run if stdc_0_in_system_headers.
620         * fixinc/fixincl.x: Regenerate.
621         * fixinc/fixtests.c (stdc_0_in_system_headers_test): New function.
622         (FIX_TEST_TABLE): Declare it.
623         * fixinc/fixlib.h: Include config.h.
624
625 2001-05-25  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
626
627         * fixinc/inclhack.def (alpha___assert): Change char * args to
628         const char * on Tru64 UNIX to avoid excessive warnings from
629         assert.h.
630         * fixinc/fixincl.x: Regenerate.
631
632 2001-05-25  Geoff Keating  <geoffk@redhat.com>
633
634         * dbxout.c (dbxout_symbol): Invert previous patch, which was
635         outputting a tag only for variable-size records.
636
637 2001-05-25  Jeff Knaggs  <jknaggs@redhat.com>
638
639         * config/alpha/alpha.md (movtf_internal): Use reg_overlap_mentioned_p
640         instead of rtx_equal_p for early clobber test.
641
642 2001-05-26  Mark Mitchell <mark@codesourcery.com>
643
644         * builtins.def: Encode additional information, such as names and
645         types, here.
646         * builtin-types.def: New file.
647         * builtins.c (built_in_names): Adjust use of DEF_BUILTIN.
648         (built_in_decls): Likewise.  Don't explicitly initialize global
649         data to NULL.
650         (expand_builtin_mathfn): Handle float and long double variants of
651         math builtins.
652         (expand_builtin): Likewise.
653         * c-common.c (c_common_nodes_and_builtins): Make it table-driven.
654         (expand_tree_builtin): Handle long, long long, float, and long
655         double variants of math functions.
656         * c-common.h (c_tree_index): Remove some unused nodes.
657         (void_ftype): Remove.
658         (void_type_ptr): Likewise.
659         (int_ftype_int): Likewise.
660         (ptr_ftype_sizetype): Likewise.
661         * c-decl.c (init_decl_processing): Remove creation of DWARF
662         builtins.
663         * defaults.h (MD_INIT_BUILTINS): Provide default definition.
664         * tree.h (built_in_function): Adjust definition of DEF_BUILTIN.
665         * Makefile.in (c-common.o): Depend on builtin-types.def.
666
667 2001-05-25  Dale Johannesen  <dalej@apple.com>
668
669         * config/rs6000/t-darwin: Fix dependencies for darwin.o.
670
671 2001-05-25  Neil Booth  <neil@daikokuya.demon.co.uk>
672
673         * c-parse.in (notype_initdcl): Remove redundant line.
674
675 2001-05-25  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
676
677         * aclocal.m4: Fixed typo.
678         (gcc_AC_HEADER_STDBOOL): Define.
679         (gcc_AC_C__BOOL): Define.
680         * configure.in: Use them.
681         (AC_CHECK_HEADERS): Remove stdbool.h
682         * configure, config.in: Regenerate.
683
684 2001-05-25  Richard Henderson  <rth@redhat.com>
685
686         * function.c (expand_function_start): Don't abort on PARALLEL
687         returns from hard_function_value.
688
689 2001-05-25  Richard Henderson  <rth@redhat.com>
690
691         * config/i386/i386.md: Revert previous change.  Do not apply
692         the peephole if the components do not die after the sequence.
693
694 2001-05-25  Joseph S. Myers  <jsm28@cam.ac.uk>
695
696         * c-parse.in (array_declarator): New.  Handle C99 constructs.
697         Don't restrict [*] declarators to C only.
698         (after_type_declarator, parm_declarator_starttypename,
699         parm_declarator_nostarttypename, notype_declarator,
700         direct_absdcl1): Use it.
701         * c-decl.c (build_array_declarator, set_array_declarator_type):
702         New functions.  Warn that [*] isn't properly implemented; pedwarn
703         for [*] outside C99 mode if pedantic rather than giving a hard
704         error.
705         (grokdeclarator): Handle static and type qualifiers in parameter
706         array declarators.
707         * c-tree.h (build_array_declarator, set_array_declarator_type):
708         Declare.
709         * extend.texi (Attribute Syntax): Document attributes in parameter
710         array declarators.
711
712 2001-05-25  Mark Mitchell  <mark@codesourcery.com>
713
714         * config/i386/i386.md: Make sure cmpstr peepholes do not
715         affect liveness information.
716
717 2001-05-24  Mark Mitchell  <mark@codesourcery.com>
718
719         * c-typeck.c (digest_init): Issue error messages about
720         invalid constants, not warnings.
721
722 2001-05-24  Mark Mitchell  <mark@codesourcery.com>
723
724         * invoke.texi (-fno-builtin): Document that this is always on
725         in C++.
726
727 2001-05-24  Philip Blundell  <philb@gnu.org>
728
729         * doc/install.texi (arm*-*-linux-gnu): Say that binutils 2.10 is
730         required.
731
732 2001-05-24  Philip Blundell  <philb@gnu.org>
733
734         * config/arm/arm.c (output_return_instruction): Correctly handle
735         interworking and interrupt functions.
736
737 2001-05-24  Philip Blundell  <philb@gnu.org>
738
739         * config/arm/arm.h (TARGET_SWITCHES): Correct misleading help for
740         -m{no-}sched-prolog.  Fix typos and improve formatting.
741
742 2001-05-24  Philip Blundell  <philb@gnu.org>
743
744         * invoke.texi (ARM Options): Improve wording slightly.  Add
745         documentation for more options, including those for Thumb mode.
746         Don't mention options that don't exist or are unimplemented.
747         (Thumb Options): Delete; merged into above section.
748
749 2001-05-24  Geoff Keating  <geoffk@redhat.com>
750
751         * config/rs6000/linux.h (SIGNAL_FRAMESIZE): Define.
752         (MD_FALLBACK_FRAME_STATE_FOR): Use it.
753
754 Thu May 24 19:47:19 CEST 2001  Jan Hubicka  <jh@suse.cz>
755
756         * simplify-rtx.c (simplify_subreg): Fix CONCAT simplification;
757         fix hard register simplification.
758
759 Thu May 24 00:15:17 2001  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
760
761         * sparc/sol2.h (CPLUSPLUS_CPP_SPEC): Add all of CPP_SPEC instead
762         of just copying CPP_CPU_SPEC.
763
764 Thu May 24 15:56:48 CEST 2001  Jan Hubicka  <jh@suse.cz>
765
766         * i386.c (incdec_operand): Accept only 1 and -1.
767
768 2001-05-23  Kelley Cook  <kelley.cook@home.com>
769
770         * Makefile.in: Move many of the *_H definitions eariler in the
771         file, so that rules in t-* files that use them for
772         dependencies will work in a parallel build.
773         * config/i386/t-cygwin (winnt.o): Depend on $(CONFIG_H).
774
775 2001-05-23  Richard Henderson <rth@redhat.com>
776
777         * integrate.c (expand_inline_function): Handle CONCAT DECL_RESULT.
778
779 2001-05-23  Neil Booth  <neil@daikokuya.demon.co.uk>
780
781         * cpp.texi: Update for handling of charconsts.
782         * cpplex.c (maybe_read_ucs): Don't accept D800-DFFF.  Update
783         diagnostics.  Skip to the end if the UCS is too short.
784         (cpp_interpret_charconst): Long charconsts issue a warning
785         not an error.
786
787 2001-05-23  Richard Henderson  <rth@redhat.com>
788
789         * doc/install.texi (alpha-linux): Require binutils 2.11.
790
791 2001-05-23  Neil Booth  <neil@daikokuya.demon.co.uk>
792
793         * c-lex.c (read_escape, read_ucs): Delete.
794         (lex_string): Use cpp_parse_escape.
795         * cpplex.c (read_ucs): Rename maybe_read_ucs.  Do nothing
796         if not C++ or not C99.  Warn if traditional.
797         (parse_escape): Rename cpp_parse_escape.  Make the bitmask
798         unsigned.  Warn for out-of-range escape sequences here.
799         Update to use maybe_read_ucs.
800         (cpp_interpret_charconst):  Don't warn here.
801         * cpplib.h (cpp_parse_escape): New exported function.
802
803 2001-05-23  Joseph S. Myers  <jsm28@cam.ac.uk>
804
805         * extend.texi (Attribute Syntax): Clarify application of
806         attributes to parameters declared as functions or arrays.
807
808 2001-05-23  Jason Merrill  <jason_merrill@redhat.com>
809
810         * dbxout.c (dbxout_type_methods): Do still group methods by name.
811
812 2001-05-23  Zack Weinberg  <zackw@stanford.edu>
813
814         * diagnostic.c (vnotice): Kill.
815         (fnotice): Call vfprintf directly.
816         (diagnostic_for_decl, output_do_verbatim, output_verbatim,
817         verbatim, set_diagnostic_context): Rename string argument to
818         indicate that it is run through gettext.
819         (vbuild_message_string, build_message_string, output_do_printf):
820         Rename string argument to indicate that it is NOT run through
821         gettext.
822         (output_printf, diagnostic_for_decl, fatal_io_error, sorry,
823         output_do_verbatim, set_diagnostic_context, fnotice, _fatal_insn):
824         Run msgid argument through gettext.
825         (default_print_error_function): Run constant strings through
826         gettext when nothing else will.
827         (fatal_error, internal_error, error_recursion): Use fnotice.
828         Present complete sentences to gettext.
829
830 2001-05-23  Mark Mitchell  <mark@codesourcery.com>
831
832         * jump.c (mark_jump_label): Fix thinko in 2001-05-19 change.
833
834 2001-05-23  Richard Henderson  <rth@redhat.com>
835
836         * function.c (expand_function_start): Always use a pseudo
837         for the function result value.
838
839 2001-05-22  Richard Henderson  <rth@redhat.com>
840
841         * config/mips/iris6.h (EH_FRAME_SECTION_ASM_OP): Give the
842         section pointer alignment.
843
844         * doc/install.texi (alpha-linux): Require binutils >= 2.10.
845
846         * unwind-dw2-fde.c (__deregister_frame_info): Stringize use
847         of __USER_LABEL_PREFIX__.
848
849 2001-05-22  Richard Henderson  <rth@redhat.com>
850
851         * unwind-dw2-fde.c (__deregister_frame_info): Stubbify in favour of...
852         (__deregister_frame_info_bases): New.
853         * unwind-dw2-fde.h: Declare it.
854         * libgcc-std.ver: Export it.
855         * crtstuff.c (__do_global_dtors_aux): Call it if we would have
856         called __register_frame_info_bases.
857
858 2001-05-22  Loren J. Rittle  <ljrittle@acm.org>
859
860         * config/freebsd.h (FBSD_CPP_PREDEFINES): Use #endif/#if pair
861         instead of #elif (which is OK for this case but not in general).
862
863 2001-05-22  Andrew MacLeod  <amacleod@redhat.com>
864
865         * builtins.c (expand_builtin_longjmp): A longjmp can be a call too.
866         * config/ia64/ia64.md (nonlocal_goto): Reverse label and frame pointer
867         parameters to __ia64_nonlocal_goto. Flag as NO_RETURN.
868         * config/ia64/ia64.c (ia64_expand_epilogue): Make sure we are issuing
869         "r2" to the assembly file. Only issue allocs with non-zero parameters.
870
871 2001-05-22  Loren J. Rittle  <ljrittle@acm.org>
872             David O'Brien  <obrien@freebsd.org>
873
874         * config/freebsd.h (LIB_SPEC): Key the exact setting to
875         configure-time options and target version of FreeBSD.  Set-up
876         to match architectural change in threading support.  Correctly
877         report when -pthread option is not supported by configure-time
878         options.
879         (FBSD_CPP_PREDEFINES): Move from architecture-specific files
880         and extend to encode target version number in run-time setting
881         of __FreeBSD__ macro to match the system compiler.
882         (CPP_PREDEFINES): Likewise.
883         (PREFERRED_DEBUGGING_TYPE): Change to DWARF2_DEBUG.
884
885         * config/alpha/freebsd.h (CPP_PREDEFINES): Moved to common freebsd.h.
886         * config/i386/freebsd.h (CPP_PREDEFINES): Likewise.
887
888 2001-05-22  Loren J. Rittle  <ljrittle@acm.org>
889             David O'Brien  <obrien@freebsd.org>
890
891         * config.gcc (the unlabeled system switch statement): Add
892         generic configuration section to handle *-*-freebsd*.  Also,
893         to match the system compiler, default to threading support (it
894         may be disabled with the standard --disable-threads
895         configuration-time switch).
896         (i[34567]86-*-freebsd* in machine-specific section): Use it.
897         (alpha*-*-freebsd* in machine-specific section): Likewise.
898
899         * config/freebsd3.h: New file to expose FBSD_MAJOR macro (3).
900         * config/freebsd4.h: New file to expose FBSD_MAJOR macro (4).
901         * config/freebsd5.h: New file to expose FBSD_MAJOR macro (5).
902         * config/freebsd6.h: New file to expose FBSD_MAJOR macro (6).
903         * config/freebsd-nthr.h: New file to expose FBSD_NO_THREADS macro.
904
905 2001-05-22  Loren J. Rittle  <ljrittle@acm.org>
906             David O'Brien  <obrien@freebsd.org>
907
908         * config/t-freebsd (TARGET_LIBGCC2_CFLAGS): Add -fPIC.
909         * config/t-freebsd-thread (TARGET_LIBGCC2_CFLAGS): Add
910         -pthread instead setting macro.
911
912 2001-05-22  Richard Henderson  <rth@redhat.com>
913
914         * crtstuff.c (__register_frame_info_bases): Declare.
915         (frame_dummy): Use it, if CRT_GET_RFIB_TEXT or CRT_GET_RFIB_DATA.
916         (__do_global_dtors_aux, __do_global_dtors): Streamline.
917
918         * config/i386/linux.h (ASM_MAYBE_OUTPUT_ENCODED_ADDR_RTX): New.
919         (CRT_GET_RFIB_DATA): New.
920         * config/i386/sysv4.h: Likewise.
921         * config/i386/sco5.h: Likewise.
922         (ASM_PREFERRED_EH_DATA_FORMAT): New.
923
924 2001-05-22  Richard Henderson  <rth@redhat.com>
925
926         * rtl.c (read_string): Break out from ...
927         (read_rtx): ... here.
928
929 2001-05-22  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
930
931         * doc/install.texi (Specific): Remove a bogus and duplicate part
932         copied from the end of the document.
933
934 2001-05-22  Bernd Schmidt  <bernds@redhat.com>
935
936         * Makefile.in (LIBGCC_DEPS): Correct LIB1ASMSRC dependency.
937
938 2001-05-22  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
939
940         * install.texi: Remove obsolete information on SunOS as well as
941         i386-sun-sunos4, i860-intel-osf1, and powerpcle-*-solaris2*.
942         (Installing GNU CC on the Sun): Remove section.
943
944 2001-05-22  Alexandre Oliva  <aoliva@redhat.com>
945
946         * cppfiles.c (remove_component_p): Don't assume lstat/stat will
947         keep errno unchanged on success.
948
949 2001-05-22  Joseph S. Myers  <jsm28@cam.ac.uk>
950
951         * c-lex.c (lex_number): If pedantic and not C99, pedwarn exactly
952         once for hexadecimal floats, whether or not they contain a decimal
953         point.  Don't let the setting of pedantic otherwise affect the
954         parsing of hexadecimal floats.
955
956 2001-05-22  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
957
958         * README.ACORN: Remove obsolete file.
959
960 2001-05-22  Jan Hubicka  <jh@suse.cz>
961
962         * combine.c (gen_binary): Use swap_commutative_operands_p
963         (simplify_comparison): Likewise.
964         * expmed.c (emit_store_flag): Likewise.
965         * expr.c (compare_from_rtx): Likewise.
966         (do_compare_rtx_and_jump): Likewise.
967         * optabs.c (emit_cmp_and_jump_insn): Revert last patch; abort
968         if not emitting a branch and operands want swapping.
969
970 2001-05-22  Neil Booth  <neil@daikokuya.demon.co.uk>
971
972         * c-lex.c (c_lex): Just cast cpp's hashnode to gcc's one.
973         * stringpool.c: (IS_FE_IDENT, make_identifier): Delete.
974         (maybe_get_identifier): Update.
975         * tree.h (make_identifier): Delete.
976
977 2001-05-21  Richard Henderson  <rth@redhat.com>
978
979         * combine.c (subst): Do not substitute for a register as
980         a destination subreg/strict_low_part/zero_extract.
981
982         * combine.c (simplify_comparison): Update op1 after constant
983         extension.
984         * recog.c (const_int_operand): Accept only constants valid
985         for the given mode.
986         * genrecog.c: Update comments wrt const_int_operand.
987
988         * emit-rtl.c (init_emit_once): Zero unused memory in a
989         CONST_DOUBLE.
990
991 2001-05-21  Mark Mitchell  <mark@codesourcery.com>
992
993         * tree.h (type_num_arguments): Declare it.
994         * tree.c (type_num_arguments): New function.
995
996 2001-05-21  Richard Henderson  <rth@redhat.com>
997
998         * dwarf2out.c (current_funcdef_number): Move outside dwarf2
999         conditional ifdef.
1000
1001 2001-05-21  Geoff Keating  <geoffk@redhat.com>
1002
1003         * config/rs6000/rs6000.md (maxsf3): Use rs6000_emit_minmax.
1004         (maxsf3+1): Delete.
1005         (minsf3): Use rs6000_emit_minmax.
1006         (minsf3+1): Generalize to handle both SMIN and SMAX.  Use
1007         rs6000_emit_minmax.
1008         (movsfcc): Use rs6000_emit_cmove.
1009         (fselsfsf4): Don't compare a CONST_INT with a floating-point value.
1010         Don't generate emit_fselsfsf4.
1011         (fseldfsf4): Likewise.
1012         (maxdf3): Use rs6000_emit_minmax.
1013         (maxdf3+1): Delete.
1014         (mindf3): Use rs6000_emit_minmax.
1015         (mindf3+1): Generalize to handle both SMIN and SMAX.  Use
1016         rs6000_emit_minmax.
1017         (movdfcc): Use rs6000_emit_cmove.
1018         (fseldfdf4): Don't compare a CONST_INT with a floating-point value.
1019         Don't generate emit_fselsfsf4.
1020         (fselsfdf4): Likewise.
1021         * config/rs6000/rs6000.c (zero_fp_constant): New predicate.
1022         (min_max_operator): New predicate.
1023         (rs6000_emit_cmove): New function.
1024         (rs6000_emit_minmax): New function.
1025         * config/rs6000/rs6000-protos.h: Prototype new functions.
1026         * config/rs6000/rs6000.h (PREDICATE_CODES): Add zero_fp_constant
1027         and min_max_operator.
1028
1029         * config/rs6000/rs6000.c (output_cbranch): Handle all
1030         conditional types in the switch statement.
1031
1032 2001-05-21  Mark Mitchell  <mark@codesourcery.com>
1033
1034         * c-decl.c (finish_decl): Don't set DECL_C_HARD_REGISTER for
1035         non-register variables.
1036         * extend.texi: Document that asm-specifications do not make sense
1037         for non-static local variables.
1038
1039 2001-05-21  Jason Merrill  <jason_merrill@redhat.com>
1040
1041         * dbxout.c (MINIMAL_DEBUG, flag_minimal_debug): Lose.
1042         (dbxout_type_fields): Lose minimal_debug support.
1043         (dbxout_type_methods, dbxout_type): Likewise.
1044
1045 2001-05-17  Andrew Haley  <aph@redhat.com>
1046
1047         * config/rs6000/linux.h (MD_FALLBACK_FRAME_STATE_FOR): New.
1048
1049 2001-05-21  Richard Henderson  <rth@redhat.com>
1050
1051         * dwarf2out.c (DEBUG_FRAME_SECTION): Rename from FRAME_SECTION.
1052         Update all users.
1053
1054 2001-05-20  Richard Henderson  <rth@redhat.com>
1055
1056         * dwarf2out.c (DEBUG_ABBREV_SECTION, DEBUG_ARANGES_SECTION,
1057         DEBUG_MACINFO_SECTION, DEBUG_LOC_SECTION, DEBUG_PUBNAMES_SECTION,
1058         DEBUG_STR_SECTION): Rename from s/DEBUG_//.  Update all users.
1059         * dwarfout.c (DEBUG_SFNAMES_SECTION, DEBUG_SRCINFO_SECTION,
1060         DEBUG_MACINFO_SECTION, DEBUG_PUBNAMES_SECTION, DEBUG_ARANGES_SECTION):
1061         Likewise.
1062         * config/mips/iris6.h (DEBUG_SFNAMES_SECTION, DEBUG_SRCINFO_SECTION,
1063         DEBUG_MACINFO_SECTION, DEBUG_PUBNAMES_SECTION, DEBUG_ARANGES_SECTION,
1064         DEBUG_FRAME_SECTION, DEBUG_ABBREV_SECTION): Rename as above.
1065         (DEBUG_LOC_SECTION, DEBUG_STR_SECTION): New.
1066         * config/ia64/ia64.h (DEBUG_ABBREV_SECTION, DEBUG_ARANGES_SECTION,
1067         DEBUG_PUBNAMES_SECTION): Rename as above.
1068         (DEBUG_MACINFO_SECTION, DEBUG_LOC_SECTION, DEBUG_STR_SECTION): New.
1069
1070 2001-05-20  Richard Henderson  <rth@redhat.com>
1071
1072         * optabs.c (emit_cmp_and_jump_insns): Don't swap commutative
1073         operands unless the operation is commutative.
1074
1075 2001-05-20  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
1076
1077         * fold-const.c (tree_expr_nonnegative_p): Detect more non-negative
1078         cases.
1079
1080 2001-05-21  Joseph S. Myers  <jsm28@cam.ac.uk>
1081
1082         * extend.texi: Clarify documentation of extensions included in ISO
1083         C99.  Prefer C99 terminology and syntax to old GNU terminology and
1084         syntax.  Add more index entries.  Document mixed declarations and
1085         code as an extension in C89 mode.  Warn about future changes to
1086         semantics of inline functions.  Fixes PR other/930.
1087
1088 Sun May 20 16:39:24 2001  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1089
1090         * expr.c (expand_expr, case ARRAY_REF): Don't fold constant
1091         access if EXPAND_CONST_ADDRESS or EXPAND_INITIALIZER.
1092         (expand_expr, case COMPONENT_REF): Do copy if misaligned even
1093         if EXPAND_CONST_ADDRESS or EXPAND_INITIALIZER.
1094
1095         * stmt.c (expand_decl): Set mode, alignment, and sizes for CONST_DECL.
1096
1097 2001-05-20  Richard Henderson  <rth@redhat.com>
1098
1099         * sched-deps.c (sched_analyze_insn): Force volatile memory reads
1100         to be output before a branch.
1101
1102 2001-05-20  Richard Henderson  <rth@redhat.com>
1103
1104         * Makefile.in (dwarf2asm.o): Depend on $(TREE_H).
1105
1106 2001-05-20  Richard Henderson  <rth@redhat.com>
1107
1108         * config/i386/att.h (ASM_SHORT, ASM_LONG): Add trailing \t.
1109         (ASM_DOUBLE): Remove.
1110         * config/i386/bsd.h, config/i386/sco5.h: Likewise.
1111         * config/i386/sun386.h: Likewise.
1112
1113         * config/i386/i386.h (UNALIGNED_SHORT_ASM_OP): New.
1114         (UNALIGNED_INT_ASM_OP, INT_ASM_OP): New.
1115
1116         * config/i386/cygwin.h (INT_ASM_OP): Remove.
1117         * config/i386/freebsd-aout.h, config/i386/i386-aout.h: Likewise.
1118         * config/i386/i386-coff.h, config/i386/i386-interix.h: Likewise.
1119         * config/i386/netbsd.h, config/i386/openbsd.h: Likewise.
1120
1121         * config/i386/cygwin.h: Adjust uses of ASM_LONG for trailing \t.
1122         * config/i386/djgpp.h, config/i386/i386.h: Likewise.
1123         * config/i386/i386elf.h, config/i386/ptx4-i.h: Likewise.
1124         * config/i386/sco5.h, config/i386/svr3gas.h: Likewise.
1125         * config/i386/sysv4.h, config/i386/vsta.h: Likewise.
1126         * config/i386/win32.h: Likewise.
1127
1128 2001-05-20  Joseph S. Myers  <jsm28@cam.ac.uk>
1129
1130         * invoke.texi: Add more options to summary list.
1131
1132 2001-05-20  Joseph S. Myers  <jsm28@cam.ac.uk>
1133
1134         * invoke.texi: Document meaning of -pedantic when -std=gnu* is
1135         used.  Fixes PR c/2291.
1136         * gcc.1: Regenerate.
1137
1138 2001-05-20  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
1139
1140         * config/m68hc11/m68hc11.c (m68hc11_override_options): Ignore
1141         the -fpic and -fPIC options, clear flag_pic.
1142
1143 2001-05-20  Neil Booth  <neil@daikokuya.demon.co.uk>
1144
1145         * hashtable.c (calc_hash): Fix HASHSTEP definition.
1146         * stringpool.c (make_identifier): No statistics here anymore.
1147         * objc-act.c (steup_string_decl): Remove redundant check.
1148
1149 2001-05-20  Neil Booth  <neil@daikokuya.demon.co.uk>
1150
1151         * Makefile.in (OBJS, LIBCPP_OBJS, LIBCPP_DEPS,
1152         cpplib.o, cpphash.o, fix-header): Update.
1153         (hashtable.o): New target.
1154         * c-common.h: Include cpplib.h.  Define C_RID_CODE and
1155         struct c_common_identifier here.
1156         * c-lang.c (c_init_options): Update.  Call set_identifier_size.
1157         * c-lex.c (c_lex): Update.
1158         * c-pragma.h: Update.
1159         * c-tree.h (struct lang_identifier): Contain c_common_identifier.
1160         Delete rid_code.
1161         (C_RID_CODE): Delete.
1162         * cpphash.c: Rewrite to use hashtable.c.
1163         * cpphash.h: Update include guards.
1164         (struct cpp_reader): Remove hashtab.
1165         hash_ob and buffer_ob are no longer pointers.  Add hash_table
1166         and our_hashtable.
1167         (HASHSTEP, _cpp_init_hashtable, _cpp_lookup_with_hash): Delete.
1168         (_cpp_cleanup_hashtable): Rename _cpp_destroy_hashtable.
1169         (_cpp_cleanup_stacks): Rename _cpp_init_directives.
1170         * cppinit.c (cpp_create_reader): Update.
1171         * cpplex.c (cpp_ideq, parse_identifier, cpp_output_token): Update.
1172         (cpp_interpret_charconst): Eliminate warning.
1173         * cpplib.c (do_pragma, do_endif, push_conditional,
1174         cpp_push_buffer, cpp_pop_buffer): Update.
1175         (_cpp_init_stacks): Rename cpp_init_directives.
1176         (_cpp_cleanup_stacks): Remove.
1177         * cpplib.h: Update include guards.  Include tree-core.h and c-rid.h.
1178         (cpp_hashnode, cpp_token, NODE_LEN, NODE_NAME,
1179          cpp_forall_identifiers, cpp_create_reader): Update.
1180         (C_RID_CODE, cpp_make_node): New.
1181         (c_common_identifier): New identifier node for C front ends.
1182         * cppmain.c (main): Update.
1183         * fix-header.c (read_scan_file): Update.
1184         * flags.h (id_clash_len): Make unsigned.
1185         * ggc.h (ggc_mark_nonnull_tree): New.
1186         * hashtable.c: New.
1187         * hashtable.h: New.
1188         * stringpool.c: Update comments and copyright.  Update to use
1189         hashtable.c.
1190         * toplev.c (approx_sqrt): Move to hashtable.c.
1191         (id_clash_len): Make unsigned.
1192         * toplev.h (ident_hash): New.
1193         * tree.c (gcc_obstack_init): Move to hashtable.c.
1194         * tree.h: Include hashtable.h.
1195         (IDENTIFIER_POINTER, IDENTIFIER_LENGTH): Update.
1196         (GCC_IDENT_TO_HT_IDENT, HT_IDENT_TO_GCC_IDENT): New.
1197         (struct tree_identifier): Update.
1198         (make_identifier): New.
1199 cp:
1200         * cp-tree.h (struct lang_identifier, C_RID_YYCODE): Update.
1201         (C_RID_CODE): Remove.
1202         * lex.c (cxx_init_options): Call set_identifier_size.  Update.
1203         (init_parse): Don't do it here.
1204 objc:
1205         * objc-act.c (objc_init_options): Call set_identifier_size. Update.
1206
1207 Sat May 19 18:23:04 2001  Richard Henderson <rth@redhat.com>
1208
1209         * except.c (dw2_build_landing_pads): Use word_mode, not Pmode,
1210         as ncessary.
1211         (expand_eh_return): Convert between word_mode and Pmode.
1212         * unwind-dw2.c (extract_cie_info): Do not assume words and pointers
1213         are the same size.
1214         (execute_stack_op): Likewise.
1215         (execute_cfa_program): Likewise.
1216         (uw_frame_state_for): Likewise.
1217         (uw_update_context_1): Likewise.
1218         * unwind.inc (_Unwind_Reason_Code): Likewise.
1219         * config/mips/mips.h (EH_RETURN_DATA_REGNO): Define.
1220         (EH_RETURN_STACKADJ_RTX): Likewise.
1221         * config/mips/mips.c (compute_frame_size): Make space for saving
1222         EH return registers.
1223         (mips_expand_epilogue): Handle EH stack adjustments.
1224         * config/mips/mips.md (eh_return): New pattern.
1225         (eh_set_lr_si): Likewise.
1226         (eh_set_lr_di): Likewise.
1227         Add splitter to perform EH return after reload.
1228
1229 2001-05-19  Mark Mitchell  <mark@codesourcery.com>
1230
1231         * jump.c (mark_jump_label): Tidy previous change.
1232
1233 2001-05-19  Bruce Korb  <bkorb@gnu.org>
1234
1235         * fixinc/genfixes: no need for two warnings
1236         * fixinc/Makefile.in: open stdin for those building with a closed one.
1237
1238 2001-05-19  Mark Mitchell  <mark@codesourcery.com>
1239
1240         * jump.c (jump_optimize_1): Tidy.
1241         (mark_jump_label): When changing the label in a LABEL_REF, change
1242         update any REG_EQUAL notes as well.
1243
1244 2001-05-19  Joseph S. Myers  <jsm28@cam.ac.uk>
1245
1246         * c-parse.in (parm_declarator): Split into
1247         parm_declarator_starttypename and parm_declarator_nostarttypename.
1248         (parm_declarator_starttypename, parm_declarator_nostarttypename):
1249         New.  Allow parenthesised sub-declarators which don't begin with a
1250         TYPENAME.  Fixes PR c/166.
1251
1252 2001-05-19  Mark Mitchell  <mark@codesourcery.com>
1253
1254         * defaults.h (TARGET_ALLOWS_PROFILING_WITHOUT_FRAME_POINTER): New
1255         macro.
1256         * tm.texi (TARGET_ALLOWS_PROFILING_WITHOUT_FRAME_POINTER):
1257         Document it.
1258         * toplev.c (main): If the target does not allow profiling without
1259         a frame pointer, issue an error message.
1260         * config/i386/linux.h (TARGET_ALLOWS_PROFILING_WITHOUT_FRAME_POINTER):
1261         Define it to false.
1262
1263 Sat May 19 07:53:42 2001  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1264
1265         * recog.c (general_operand): Modify last change to allow it if reload
1266         has completed.
1267
1268 Sat May 19 10:23:54 CEST 2001  Jan Hubicka  <jh@suse.cz>
1269
1270         * recog.c (general_operand): Prohibit nonzero subreg bytes on
1271         subregs containing mem.
1272
1273 Sat May 19 09:40:45 2001  Denis Chertykov  <denisc@overta.ru>
1274
1275         * regrename.c (regrename_optimize): frame pointer register can
1276         use a few hardregs.
1277
1278 2001-05-18  Jason Merrill  <jason_merrill@redhat.com>
1279
1280         * README.DWARF: Move into dwarfout.c.
1281
1282 2001-05-18  Dale Johannesen  <dalej@apple.com>
1283
1284         * config/rs6000/rs6000.c (secondary_reload_class): Fix Darwin
1285         specific misuse of r0 as a reload address.
1286
1287 Fri May 18 22:42:04 CEST 2001  Jan Hubicka  <jh@suse.cz>
1288
1289         * combine.c (combine_simplify_rtx): Clear op0_mode if simplification
1290         suceeded.
1291
1292 Fri May 18 07:26:34 2001  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1293
1294         * genrecog.c (enum decision_type): Add DT_elt_zero-wide_safe.
1295         (add_to_sequence): Make that decision type.
1296         (maybe_both_true_2, nodes_identical_1, factor_tests): Use it.
1297         (write_switch, write_cond, debug_decision_2): Likewise.
1298
1299         * dbxout.c (dbxout_type): Use host_integerp and fix typo in testing
1300         for INTEGER_TYPE.
1301         (dbxout_symbol, case TYPE_DECL): Don't generate tag for records of
1302         variable size.
1303
1304 2001-05-18  Stan Shebs  <shebs@apple.com>
1305
1306         * configure.in (gcc_cv_as_eh_frame): Cope with old assemblers.
1307         * configure: Regenerate.
1308
1309 2001-05-18  Per Bothner  <per@bothner.com>
1310
1311         Changes needed for java/jvspec.c
1312         * gcc.h (n_infiles, outfiles):  Add declarations.
1313         * gcc.c (n_infiles, outfiles):  Mske no longer static.
1314
1315 Fri May 18 10:14:42 2001  Jeffrey A Law  (law@cygnus.com)
1316
1317         * config/pa/som.h (EXCEPTION_SECTION): Define.
1318
1319 2001-05-18  Daniel Berlin  <dan@cgsoftware.com>
1320
1321         * dwarf2out.c: Add dw_loc_list_ref, a reference to a location
1322         list.
1323         Add have_location_lists, a variable to determine whether we need a
1324         .debug_loc section or not.
1325         (enum dw_val_class): Add dw_val_class_loc_list.
1326         (dw_val_struct): Add val_loc_list.
1327         (dw_loc_list_struct): New structure, represents location lists.
1328         (new_loc_list): New function, return a new location list, given
1329         the range and location expression.
1330         (add_loc_descr_to_loc_list): New function, add a location
1331         expression to a location list, given the expression and range.
1332         (output_loc_list): New function, output a location list.
1333         (gen_internal_sym): Modified to take symbol prefix, so we can
1334         reuse it for location list symbols.
1335         (add_AT_loc_list): New function, add a location list to a DIE at
1336         the named attribute.
1337         (AT_loc_list): New function, return the location list reference
1338         for a given attribute, if it's a location list.
1339         (print_die): Handle dw_val_class_loc_list.
1340         (size_of_die): Ditto.
1341         (value_format): Ditto.
1342         (output_die): Ditto.
1343         (output_location_lists): New function, output all of the location
1344         lists for a DIE and it's children.
1345         (dwarf2out_finish): Call output_location_lists if we have location
1346         lists.
1347
1348
1349 Fri May 18 15:39:16 CEST 2001  Jan Hubicka  <jh@suse.cz>
1350
1351         * gcse.c (try_replace_reg): First try global replace, later try to
1352         simplify the expression.
1353
1354         * gcse.c (find_used_regs): Change calling convention; work via
1355         note_uses.
1356         (cprop_insn): Update call of find_used_regs; work for CALL_INSNs too.
1357
1358 2001-05-18  Bernd Schmidt  <bernds@redhat.com>
1359
1360         Revert
1361         2001-02-09  Nick Clifton  <nickc@redhat.com>
1362         * config/arm/arm.md: Change output constraint on post inc
1363         load/store multiple patterns to be a read/write constraint.
1364
1365 2001-05-18  Mark Mitchell  <mark@codesourcery.com>
1366
1367         * basic-block.h (struct basic_block_def): Add documentation about
1368         what a basic block is, and what the various fields are used for.
1369         * flow.c (calculate_globlal_regs_live): Add documentation about
1370         how the algorithm works, and how we know that it will terminate.
1371         Check that the the inductive assumption that guarantees
1372         termination actually holds.
1373         (mark_used_regs): Treat conditionally set registers as used.
1374         (debug_regset): Add comment.
1375         * rtl.texi (cond_exec): Add documentation.
1376
1377         * function.c (expand_function_start): Avoid creating BLKmode
1378         pseudos.
1379
1380 2001-05-17  Mark Mitchell  <mark@codesourcery.com>
1381
1382         * dwarf2out.c (output_comp_unit): Always output a compilation-unit
1383         DIE, even if it has no children.
1384         (dwarf2out_finish): Always output the line-number table, even if
1385         it has no content.
1386
1387 2001-05-18  David Edelsohn  <edelsohn@gnu.org>
1388
1389         * rs6000.md (movsfcc,movdfcc): Remove NE case.
1390
1391 2001-05-17  Bruce Korb <bkorb@gnu.org>
1392
1393         * fixinc/fixincl.tpl: rewritten as an AutoGen version 5 template
1394         * fixinc/genfixes: emit a warning if AutoGen is out of date
1395
1396 2001-05-17  Brendan Conoboy <blc@cygnus.com>
1397             Bruce Korb <bkorb@gnu.org>
1398
1399         * fixinc/fixincl.sh(FIXINC): accept local directory if fixincl not
1400         found in fixinc directory.  Facilitates binary distributions.
1401
1402 2001-05-17  Jeffrey Oldham  <oldham@codesourcery.com>
1403
1404         * dbxout.c (dbxout_symbol_location): For CONCAT, skip types not
1405         COMPLEX_TYPE.
1406
1407 Thu May 17 19:42:39 2001  Mark Kettenis  <kettenis@wins.uva.nl>
1408
1409         * dwarf2out.c (modified_type_die): Equate qualified type to die.
1410
1411 Thu May 17 23:19:46 CEST 2001  Jan Hubicka  <jh@suse.cz>
1412
1413         * integrate.c (copy_rtx_and_substitute): Use simplify_gen_subreg.
1414         (simplify_subreg): Handle complex types represented as CONCAT.
1415
1416         * recog.c (validate_replace_rtx_1): Properly canonicalize expression
1417         * rtl.h (swap_commutative_operands_p): Declare.
1418         * rtlanal.c (swap_commutative_operands_p): New.
1419         (operand_preference): New static function.
1420
1421         * combine.c (combine_simplify_rtx): Use swap_commutative_operands_p.
1422         (gen_binary): Likewise.
1423         * optabs.c (emit_cmp_and_jump_insns, emit_conditional_move): Likewise.
1424         * simplify-rtx.c (simplify_gen_binary,
1425         simplify_gen_relational): Likewise.
1426
1427 Thu May 17 20:43:36 CEST 2001  Jan Hubicka  <jh@suse.cz>
1428
1429         * cse.c (fold_rtx): Use simplify_subreg.
1430
1431         * simplify-rtx.c (simplify_replace_rtx): Use simplify_gen_subreg.
1432         (simplify_gen_subreg): New.
1433         (simplify_rtx): Use simplify_subreg.
1434         * rtl.h (simplify_gen_subreg): Declare.
1435
1436 2001-05-17  Mark Mitchell  <mark@codesourcery.com>
1437
1438         * doc/install.texi: Update Solaris information.
1439
1440         * except.h (protect_cleanup_actions): Remove it.
1441         (lang_protect_cleanup_actions): Declare it.
1442         * except.c (protect_cleanup_actions): Remove it.
1443         (lang_protect_cleanup_actions): New variable.
1444         (init_eh): Don't make protect_cleanup_actions a GC root.
1445         (expand_eh_region_and_cleanup): Call
1446         lang_protect_cleanup_actions.
1447         (output_function_exception_table): Remove unused `align'
1448         variable.
1449         * varasm.c (assemble_external): Abort if we have not yet
1450         opened the assembly output file.
1451
1452 Thu May 17 11:54:50 2001  Jeffrey A Law  (law@cygnus.com)
1453
1454         * except.c (sjlj_emit_function_enter): Call assemble_external_libcall
1455         for eh_personality_libfunc.
1456
1457 Thu May 17 19:48:00 CEST 2001  Jan Hubicka  <jh@suse.cz>
1458
1459         * recog.c (validate_replace_rtx_1): Use "TO" mode if not VOIDmode
1460         when calling simplify_subreg.  This is needed to allow replacing
1461         of expression of one mode by expression of different mode.
1462
1463 Thu May 17 19:40:03 CEST 2001  Jan Hubicka  <jh@suse.cz>
1464
1465         * simplify-rtx.c  (simplify_subreg): Avoid creating of incorrect subregs.
1466
1467 2001-05-17  Bernd Schmidt  <bernds@redhat.com>
1468
1469         * expr.c (protect_from_queue): Protect against subsequent calls to
1470         emit_queue.
1471         (expand_expr, case ADDR_EXPR): Prevent protect_from_queue from being
1472         too clever.
1473
1474 Thu May 17 18:17:34 CEST 2001  Jan Hubicka  <jh@suse.cz>
1475
1476         * simplify_rtx.c (simplify_subreg): Fix simplification of nested subregs.
1477
1478 2001-05-17  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
1479
1480         * gccbug.in (CATEGORIES): Add "bootstrap".
1481
1482 Thu May 17 16:59:41 CEST 2001  Jan Hubicka  <jh@suse.cz>
1483
1484         * simplify-rtx.c (simplify_subreg): Break out from ...
1485         * combine.c (combine_splify_rtx) ... here and ...
1486         * recog.c (validate_replace_rtx_1): ... here;
1487         * rtl.h (subreg_lowpart_parts_p, simplify_subreg): Declare.
1488         * emit-rtl.c (subreg_lowpart_parts_p): Break out from ...
1489         (subreg_lowpart_p): ... here.
1490
1491 2001-05-17  Bernd Schmidt  <bernds@redhat.com>
1492
1493         * stmt.c (expand_asm_operands): For inout operands, make sure
1494         the substitution of '=' for '+' makes it into the rtl.
1495
1496         * reload1.c (delete_output_reload): Call eliminate_regs on substed.
1497         (reload_as_needed): Call update_eliminable_offsets a bit later.
1498
1499 2001-05-17  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
1500
1501         * gcc.texi (gccbug): Refer to the web pages for detailed information
1502         on GNATS.
1503
1504 2001-05-16  Zack Weinberg  <zackw@stanford.edu>
1505
1506         * libgcc1-test.c, libgcc1.c, config/i386/perform.h: Delete file.
1507
1508         * Makefile.in: Delete variables: OLDCC, CCLIBFLAGS, OLDAR,
1509         OLDAR_FLAGS, LIBGCC1, LIBGCC1_TEST, CROSS_LIBGCC1,
1510         LIB1FUNCS, and LIB1FUNCS_EXTRA.  Delete rules: libgcc1-test,
1511         libgcc1-test.o.  Clarify commentary now that libgcc1 no longer exists.
1512         * cross-make: Don't set LIBGCC1.
1513         * mklibgcc.in: Delete all code for building from libgcc1.c.
1514         Always honor LIB1ASMFUNCS if set.
1515
1516         * crtstuff.c, floatlib.c, longlong.h, config/fp-bit.c,
1517         config/arc/lib1funcs.asm, config/arm/lib1funcs.asm,
1518         config/d30v/libgcc1.asm, config/fr30/lib1funcs.asm,
1519         config/h8300/lib1funcs.asm, config/i386/cygwin.asm,
1520         config/i386/uwin.asm, config/m68hc11/larith.asm,
1521         config/m68k/lb1sf68.asm, config/mcore/lib1.asm,
1522         config/mn10200/lib1funcs.asm, config/sh/lib1funcs.asm,
1523         config/sparc/lb1spc.asm, config/sparc/lb1spl.asm,
1524         config/v850/lib1funcs.asm, config/c4x/libgcc.S:
1525         Delete or update references to libgcc1 in commentary.
1526
1527         * config/t-libc-ok, config/t-linux, config/t-linux-aout,
1528         config/t-netbsd, config/a29k/t-a29kbare, config/a29k/t-vx29k,
1529         config/alpha/t-interix, config/alpha/t-osf, config/alpha/t-vms,
1530         config/arc/t-arc, config/arm/t-arm-aout, config/arm/t-arm-coff,
1531         config/arm/t-arm-elf, config/arm/t-linux, config/arm/t-pe,
1532         config/arm/t-semi, config/arm/t-strongarm-coff,
1533         config/arm/t-strongarm-elf, config/arm/t-strongarm-pe,
1534         config/arm/t-xscale-coff, config/arm/t-xscale-elf, config/avr/t-avr,
1535         config/c4x/t-c4x, config/d30v/t-d30v, config/fr30/t-fr30,
1536         config/h8300/t-h8300, config/i386/t-beos, config/i386/t-cygwin,
1537         config/i386/t-i386elf, config/i386/t-interix, config/i386/t-netware,
1538         config/i386/t-next, config/i386/t-rtems-i386, config/i386/t-sol2,
1539         config/i960/t-960bare, config/i960/t-vxworks960, config/ia64/t-ia64,
1540         config/m32r/t-m32r, config/m68hc11/t-m68hc11-gas, config/m68k/t-lynx,
1541         config/m68k/t-m68kbare, config/m68k/t-m68kelf,
1542         config/m68k/t-mot3300-gald, config/m68k/t-mot3300-gas,
1543         config/m68k/t-next, config/m68k/t-vxworks68, config/m88k/t-bug,
1544         config/m88k/t-dgux, config/m88k/t-dgux-gas, config/m88k/t-dguxbcs,
1545         config/m88k/t-luna, config/m88k/t-luna-gas, config/m88k/t-m88k,
1546         config/m88k/t-m88k-gas, config/m88k/t-sysv4, config/mcore/t-mcore,
1547         config/mcore/t-mcore-pe, config/mips/t-bsd, config/mips/t-bsd-gas,
1548         config/mips/t-cross64, config/mips/t-ecoff, config/mips/t-elf,
1549         config/mips/t-iris6, config/mips/t-r3900, config/mips/t-svr3,
1550         config/mips/t-svr3-gas, config/mips/t-svr4, config/mips/t-svr4-gas,
1551         config/mips/t-ultrix, config/mn10200/t-mn10200,
1552         config/mn10300/t-mn10300, config/pa/t-linux, config/pa/t-linux64,
1553         config/pa/t-pa, config/pa/t-pa64, config/pa/t-pro,
1554         config/pdp11/t-pdp11, config/pj/t-pj, config/rs6000/t-aix43,
1555         config/rs6000/t-beos, config/rs6000/t-darwin, config/rs6000/t-newas,
1556         config/rs6000/t-ppccomm, config/rs6000/t-rs6000, config/sh/t-linux,
1557         config/sh/t-sh, config/sparc/t-chorus-elf, config/sparc/t-elf,
1558         config/sparc/t-sol2, config/sparc/t-sp86x, config/sparc/t-sparcbare,
1559         config/sparc/t-sparclite, config/sparc/t-splet,
1560         config/sparc/t-sunos41, config/sparc/t-vxsparc,
1561         config/sparc/t-vxsparc64, config/v850/t-v850:
1562         Don't set any of LIBGCC1, CROSS_LIBGCC1, or LIBGCC1_TEST.
1563
1564         * config/alpha/alpha.h, config/i386/i386.h, config/i860/i860.h:
1565         Don't set FLOAT_VALUE_TYPE, FLOAT_ARG_TYPE, INTIFY, or FLOATIFY.
1566         * config/d30v/d30v.h: Don't mention LIBGCC_NEEDS_DOUBLE,
1567         FLOAT_VALUE_TYPE, FLOAT_ARG_TYPE, FLOATIFY, INTIFY,
1568         nongcc_SI_type, nongcc_word_type, or perform_*
1569         * config/i860/fx2800: Don't define perform_umodsi3 or perform_modsi3.
1570
1571         * config/i386/386bsd.h, config/i386/beos-elf.h,
1572         config/i386/linux-aout.h, config/i386/linux-oldld.h,
1573         config/i386/linux.h, config/i386/mach.h, config/i386/netbsd.h,
1574         config/i386/openbsd.h, config/i386/osfrose.h, config/i386/rtemself.h:
1575         Don't include i386/perform.h.
1576
1577         * config/a29k/t-a29k, config/arm/t-semiaof, config/i370/t-i370,
1578         config/i370/t-linux, config/i370/t-mvs, config/i370/t-oe,
1579         config/i386/t-djgpp, config/i386/t-i386bare, config/i386/t-vsta,
1580         config/ia64/t-hpux, config/mips/t-mips, config/mips/t-mips-gas,
1581         config/mips/t-osfrose, config/sparc/t-sp64, config/sparc/t-sunos40,
1582         config/vax/t-openbsd, config/vax/t-vax: Delete.
1583
1584         * config.gcc: Remove references to deleted files.
1585         (arm-semi-aof): Use arm/t-semi for tmake_file.
1586
1587         * gcc.texi, install.texi, invoke.texi, tm.texi:
1588         Delete or rewrite text which is no longer relevant now that
1589         libgcc1 no longer exists.
1590
1591         * config/t-openbsd, config/alpha/t-interix, config/i386/t-interix:
1592         No need to set INSTALL_ASSERT_H.  (Missed in previous sweep.)
1593
1594 2001-05-16  Wolfgang Bangerth <wolfgang.bangerth@iwr.uni-heidelberg.de>
1595         Bruce Korb <bkorb@gnu.org>
1596
1597         * fixinc/inclhack.def(solaris27_mutex_init):  Fix broken mutex
1598         initializer
1599
1600 2001-05-16  Zack Weinberg  <zackw@stanford.edu>
1601
1602         * i386.md: Add two peepholes to clean up code generated by
1603         cmpstr* expanders.
1604
1605 2001-05-16  Richard Henderson  <rth@redhat.com>
1606
1607         * dwarf2asm.c (eh_data_format_name): Add names for "pointer size"
1608         variants of non-absolute encodings.
1609
1610         * config/i386/i386.h (ASM_PREFERRED_EH_DATA_FORMAT): New.
1611
1612         * libgcc-std.ver (_Unwind_Find_FDE, __register_frame_info_bases,
1613         __register_frame_info_table_bases): Export.
1614
1615 2001-05-16  Richard Henderson  <rth@redhat.com>
1616
1617         * except.c (eh_data_format_name): Move to ...
1618         * dwarf2asm.c: ... here.  Use designated initializers if available.
1619         (dw2_asm_output_encoded_addr_rtx): Accept varargs commentary.
1620         * dwarf2asm.h: Update declarations.
1621         * dwarf2out.c (output_cfi) [DW_CFA_set_loc]: If for_eh, mind
1622         ASM_PREFERRED_EH_DATA_FORMAT.
1623         (output_call_frame_info): Likewise.  Use 'L' augmentation for
1624         the LSDA encoding.
1625
1626         * unwind-dw2-fde.h (struct fde_vector): New.
1627         (struct old_object): Rename from struct object.
1628         (struct object): New.
1629         (__register_frame_info_bases): Declare.
1630         (__register_frame_info_table_bases): Declare.
1631         (struct dwarf_fde): Remove explicit pc_begin/pc_range members.
1632         * unwind-dw2-fde.c (objects): Remove.
1633         (unseen_objects, seen_objects): New.
1634         (__register_frame_info_bases): New.
1635         (__register_frame_info): Use it.
1636         (__register_frame_info_table_bases): New.
1637         (__register_frame_info_table): Use it.
1638         (__deregister_frame_info): Rewrite for changed object struct.
1639         (base_from_object, get_cie_encoding, get_fde_encoding): New.
1640         (fde_unencoded_compare): Rename from fde_compare; uninline.
1641         (fde_single_encoding_compare, fde_mixed_encoding_compare): New.
1642         (start_fde_sort): Adjust for new definition of fde_vector.
1643         (fde_insert): Likewise.
1644         (end_fde_sort): Likewise.  Select comparison function based
1645         on properties of the object.
1646         (fde_split): Take object and fde_compare_t arguments.
1647         (frame_heapsort, fde_merge): Likewise.
1648         (classify_object_over_fdes): Rename from count_fdes.  Handle
1649         encoded pointers.  Collect encoding, mixed_encoding, and pc_begin
1650         for the object.
1651         (add_fdes): Handle encoded pointers.
1652         (init_object): Rename from frame_init.  Update for new struct object.
1653         (linear_search_fdes): Rename from search_fdes.  Handle encoded
1654         pointers.
1655         (binary_search_unencoded_fdes): Broken out from _Unwind_Find_FDE.
1656         (binary_search_single_encoding_fdes): New.
1657         (binary_search_mixed_encoding_fdes): New.
1658         (search_object): New.
1659         (_Unwind_Find_FDE): Update for new struct object.  Fill in
1660         the dwarf_eh_bases.
1661         * unwind-dw2.c: Include unwind-pe.h.  Constify all pointers
1662         iterating over EH data.
1663         (_Unwind_FrameState): Remove saw_lsda, addr_encoding.  Add
1664         fde_encoding, lsda_encoding.
1665         (read_uleb128, read_sleb128): Remove.
1666         (read_encoded_pointer): Remove.  All callers use read_encoded_value.
1667         (extract_cie_info): Set lsda_encoding from 'L' augmentation.
1668         (uw_frame_state_for): Don't set bases.func.  Handle encoded fde
1669         pointers.
1670         * unwind-pe.h: Add "struct" to _Unwind_Context references.
1671
1672 2001-05-16  Neil Booth  <neil@cat.daikokuya.demon.co.uk>
1673
1674         * cppexp.c (lex): Use NODE_NAME and NODE_LEN.
1675         * cpphash.c (_cpp_lookup_with_hash): Similarly.
1676         * cpplex.c (cpp_ideq, parse_identifier, cpp_token_len,
1677         cpp_spell_token, cpp_output_token): Similarly.
1678         * cpplib.c (lex_macro_node, do_undef, do_pragma,
1679         do_pragma_poison, parse_assertion, do_assert): Similarly.
1680         * cppmacro.c (builtin_macro, parse_args, funlike_invocation_p,
1681         save_parameter, _cpp_create_definition, check_trad_stringification,
1682         cpp_macro_definition): Similarly.
1683         * cppmain.c (cb_define, cb_undef, dump_macro): Similarly.
1684         * c-lex.c (cb_undef, c_lex): Similarly.
1685         * fix-header.c (recognized_function): Similarly.
1686         * cpplib.h (NODE_LEN, NODE_NAME): New.
1687         (cpp_hashnode): Rename length len.
1688
1689 Wed May 16 13:41:10 2001  Jeffrey A Law  (law@cygnus.com)
1690
1691         * pa32-regs.h (HARD_REGNO_MODE_OK): Allow TI/TFmode values in
1692         GPRs.
1693
1694 2001-05-16  Andreas Jaeger  <aj@suse.de>
1695
1696         * Makefile.in (toplev.o): Add dependency on dwarf2asm.h.
1697
1698         * toplev.c: Include dwarf2asm.h for prototype of
1699         dw2_output_indirect_constants.
1700
1701 Wed May 16 19:53:53 CEST 2001  Jan Hubicka  <jh@suse.cz>
1702
1703         * stmt.c (expand_asm_operands): Be able to offload addressof
1704         expression to memory. (PR optimization/185)
1705
1706 Wed May 16 18:53:23 CEST 2001  Jan Hubicka  <jh@suse.cz>
1707
1708         * combine.c (combine_simplify_rtx): Set op0_mode to VOIDmode after
1709         applying distributive law.
1710
1711 2001-05-16  John David Anglin  <dave@hiauly1.hia.nrc.ca>
1712
1713         * pa-hpux10.h (THREAD_MODEL_SPEC): Define.
1714
1715         * gthr-dce.h (UNUSED): Attribute unused macro.
1716         (__gthread_key_dtor): Make arguments UNUSED.
1717         (__gthread_key_delete): Revise for compatibility with DRAFT4
1718         implementation.
1719
1720 2001-05-16  David Edelsohn  <edelsohn@gnu.org>
1721
1722         * doc/install.texi: Update AIX information.
1723         * README.RS6000: Remove obsolete file.
1724
1725 2001-05-16  Jakub Jelinek  <jakub@redhat.com>
1726             Nathan Sidwell  <nathan@codesourcery.com>
1727
1728         * gcc.c (give_switch): Don't write before start of string.
1729         Always append suffix.
1730
1731 2001-05-16  Nathan Sidwell  <nathan@codesourcery.com>
1732
1733         * cpplex.c (_cpp_lex_token, '/' case): Comments can't appear
1734         after stage3.
1735
1736 2001-05-16  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
1737
1738         * README.ALTOS: Remove obsolete file.
1739
1740 2001-05-16  Neil Booth  <neil@daikokuya.demon.co.uk>
1741
1742         * c-lex.h (save_and_forget_protocol_qualifiers,
1743         forget_protocol_qualifiers, remember_protocol_qualifiers):
1744         Remove deleted functions' prototypes.
1745
1746 2001-05-16  Neil Booth  <neil@daikokuya.demon.co.uk>
1747
1748         * c-parse.in (methodtype): New production.
1749         (methoddef, methodproto): Collapse separate '-' and '+'
1750         handlers into 1.
1751
1752 2001-05-16  Neil Booth  <neil@cat.daikokuya.demon.co.uk>
1753
1754         * c-common.h (RID_FIRST_PQ): New.
1755         * c-parse.in (objc_pq_context): New.
1756         (objc parser): Set objc_pq_context rather than calling
1757         remember_protocol_qualifiers and forget_protocol_qualifiers.
1758         Don't call save_and_forget_protocol_qualifiers.
1759         (yylexname): Handle objc protocol qualifiers here.
1760         * stringpool.c (struct str_header): Replace with sp_hashnode.
1761         (SP_EMPTY, SP_LEN, SP_TREE, SP_STR, SP_VALID): New.
1762         (alloc_string): Rename alloc_ident.  Use the SP_ accessors.
1763         Allocate an IDENTIFIER_NODE for each identifier.
1764         (FORALL_STRINGS, set_identifier): Delete.
1765         (FORALL_IDS, expand_string_table, stringpool_statistics): Update.
1766         (ggc_alloc_string): Use an obstack.
1767         (get_identifier, maybe_get_identifier, mark_string_hash): Update.
1768         * tree.h: Update comments.
1769         (set_identifier): Delete.
1770         * objc/objc-act.c (N_PQ, saved_pq, saved_not_pq,
1771         save_and_forget_protocol_qualifiers, forget_protocol_qualifiers,
1772         remember_protocol_qualifiers): Delete.
1773
1774 Tue May 15 22:14:09 2001  Jeffrey A Law  (law@cygnus.com)
1775
1776         * flow.c (life_analysis): After life analysis is complete, do
1777         an optional scan over insns looking for REG_LABEL notes that
1778         reference a deleted label.
1779         (propagate_block_delete_insn): Verify INOTE is a CODE_LABEL
1780         before peeking at LABEL_NUSES.
1781
1782 2001-05-15  Richard Henderson  <rth@redhat.com>
1783
1784         * unwind-sjlj.c (_Unwind_GetDataRelBase): New.
1785         (_Unwind_GetTextRelBase): New.
1786
1787 2001-05-15  Mark Mitchell  <mark@codesourcery.com>
1788
1789         * config/sparc/sol2.h (CPLUSPLUS_CPP_SPEC): Define.
1790
1791 2001-05-15  Geoffrey Keating  <geoffk@redhat.com>
1792
1793         * objc/objc-act.c (handle_class_ref): Use rest_of_decl_compilation
1794         so that CHOOSE_SECTION gets used.
1795
1796         * config/rs6000/sysv4.h (ASM_PREFERRED_EH_DATA_FORMAT): Treat
1797         TARGET_RELOCATABLE like flag_pic for now.
1798
1799 2001-05-15  David Edelsohn  <edelsohn@gnu.org>
1800
1801         * rs6000.md (movdi splitter): Sign extend more efficiently.
1802         * rs6000.c (reg_or_arith_cint_operand): Redefine 64-bit constant
1803         to "long long" valid on 32-bit and 64-bit hosts.
1804         (logical_operand): Cast trunc_int_for_mode return value.
1805         (rs6000_emit_move): Shift macro to encapsulate variable.
1806         (rs6000_va_start): Use HOST_WIDE_INT_PRINT_DEC.
1807         (rs6000_emit_{prologue,epilogue}): EH regno is unsigned but
1808         plus_constant requires signed argument.
1809
1810 2001-05-15  Loren J. Rittle  <ljrittle@acm.org>
1811
1812         * gthr-posix.h: Make additional pthread-* functions weak.
1813
1814 Tue May 15 13:51:32 CEST 2001  Jan Hubicka  <jh@suse.cz>
1815
1816         * recog.c (apply_change_group): Avoid unneeded validating.
1817
1818 2001-05-14  David Edelsohn  <edelsohn@gnu.org>
1819
1820         * rs6000.c (num_insns_constant_wide): Constants are sign-extended.
1821         (num_insns_constant): CONST_INT can be 64-bits.
1822
1823 2001-05-14  Stan Shebs  <shebs@apple.com>
1824
1825         * config/darwin.h (LIB_SPEC): Just use -lSystem.
1826         (LIBGCC_SPEC): Don't define.
1827
1828 2001-05-14  Richard Henderson  <rth@redhat.com>
1829
1830         * configure.in (gcc_cv_as_eh_frame): New test.
1831         * config.in, configure: Rebuild.
1832         * gcc.c (init_spec): Honor USE_AS_TRADITIONAL_FORMAT.
1833
1834 2001-05-14  Andrew MacLeod  <amacleod@redhat.com>
1835
1836         * config/ia64/lib1funcs.asm (__divtf3): Fix incorrect bits in
1837         extended precision divide.
1838
1839 2001-05-14  Andrew MacLeod  <amacleod@redhat.com>
1840
1841         * config/ia64/ia64.c (rtx_needs_barrier): Call rtx_needs_barrier
1842         for RETURNS as well.
1843
1844 Mon May 14 17:34:48 CEST 2001  Jan Hubicka  <jh@suse.cz>
1845
1846         * i386.h (TARGET_64BIT): Define to constant if !TARGET_BI_ARCH
1847         (CPP_CPU??_SIZE_TYPE): New.
1848         (CPP_CPU??_SPEC, CPP_CPUCOMMON_SPEC): Break out from...
1849         (CPP_CPU_SPEC): ... here; support choosing of CPU.
1850         (EXTRA_SPECS): Add cpp_cpu??, cpp_cpu??sizet, cpp_cpucommon.
1851         (MAX_LONG_TYPE_SIZE, MAX_BITS_PER_WORD): Define to 32 for 32bit-only
1852         compiler.
1853         * i386.c (override_options): Add sorry about not suported modes.
1854
1855 Mon May 14 08:56:47 2001  Jeffrey A Law  (law@cygnus.com)
1856
1857         * config/pa/som.h (NM_FLAGS): Remove.
1858         (ASM_OUTPUT_FUNCTION_PREFIX): No longer truncate subspace names.
1859         (ASM_OUTPUT_SECTION_NAME): Remove.
1860         (MAKE_DECL_ONE_ONLY, ASM_WEAKEN_LABEL): Likewise.
1861
1862 2001-05-14  Mark Mitchell  <mark@codesourcery.com>
1863
1864         * regrename.c (regrename_optimize): Do not rename registers to
1865         leaf registers.
1866
1867 2001-05-14  Alexandre Oliva  <aoliva@redhat.com>
1868
1869         * rtl.texi (CALL_INSN_FUNCTION_USAGE): Note that (and when) it may
1870         contain MEMs.  Remove useless distinction about clobbering
1871         registers.
1872
1873 2001-05-13  Geoff Keating  <geoffk@redhat.com>
1874
1875         * config/rs6000/rs6000.h (EXCEPTION_SECTION): Move to...
1876         * config/rs6000/aix.h (EXCEPTION_SECTION): ... here.
1877         * config/rs6000/sysv4.h (CONST_SECTION_ASM_OP): Delete.
1878         (ASM_PREFERRED_EH_DATA_FORMAT): Define.
1879         (EXCEPTION_SECTION): Define.
1880
1881 2001-05-13  Zack Weinberg  <zackw@stanford.edu>
1882
1883         * libgcc2.c, libgcc2.h: Restore __eprintf.  Label as used for
1884         binary backward compat only.
1885         * Makefile.in (LIB2FUNCS_ST): New.  Put _eprintf here, not
1886         in LIB2FUNCS.  Pass it to mklibgcc.
1887         * mklibgcc.in: Handle LIB2FUNCS_ST.
1888
1889         * Makefile.in (installdirs): Don't create $(gcc_tooldir).
1890
1891 2001-05-13  Alexandre Oliva  <aoliva@redhat.com>
1892
1893         * tm.texi (THREAD_MODEL_SPEC): Document it.
1894         * gcc.c (main): Use it.
1895         * config/rs6000/aix43.h (THREAD_MODEL_SPEC): Define it.
1896         * config/rs6000/aix51.h (THREAD_MODEL_SPEC): Likewise.
1897
1898 2001-05-13  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
1899
1900         * rtl.h (SYMBOL_REF_WEAK): New macro.
1901         * rtlanal.h (rtx_addr_can_trap): Use it, a weak SYMBOL_REF can trap.
1902         * varasm.c (make_decl_rtl): Mark SYMBOL_REF weak if necessary.
1903         * rtl.texi (SYMBOL_REF_WEAK): Document it.
1904         * gcc.texi: Remove wrong description.
1905
1906 2001-05-13  Mark Mitchell  <mark@codesourcery.com>
1907
1908         * Makefile.in (STAMP): New macro.
1909         Replace all uses of `touch' with $(STAMP).
1910         * fixinc/Makefile.in: Likewise.
1911
1912 Sun May 13 07:26:34 2001  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1913
1914         * configure.in: ldopen is never in -lexc, so don't test for it.
1915         Add test for exc_resume in -lexc for Ada.
1916         * configure: Regenerated.
1917
1918 2001-05-12  Richard Henderson  <rth@redhat.com>
1919
1920         * dwarf2asm.c (size_of_encoded_value): New function.
1921         * dwarf2asm.h: Declare it.
1922         * except.c (output_function_exception_table): Align the TType
1923         array only as wide as the encoding.
1924
1925 2001-05-12  Zack Weinberg  <zackw@stanford.edu>
1926
1927         * extend.texi: Document #pragma GCC java_exceptions.
1928
1929 2001-05-12  Neil Booth  <neil@cat.daikokuya.demon.co.uk>
1930
1931         * c-parse.in (bison parser, init_reswords): Remove uses of
1932         doing_objc_thang.
1933         * c-tree.h (doing_objc_thang): Remove.
1934
1935 2001-05-12  Neil Booth  <neil@daikokuya.demon.co.uk>
1936
1937         * cpplex.c (_cpp_lex_token): Ensure we warn at most once
1938         about files not ending in newlines.
1939
1940 2001-05-12  Neil Booth  <neil@cat.daikokuya.demon.co.uk>
1941
1942         * dwarfout.c (dwarfout_init): Add cast.
1943         * sched-deps.c (sched_analyze_insn): Remove unused vars.
1944         * unwind-dw2-fde.c (_Unwind_Find_FDE): Flag unused parameter so.
1945 cp:
1946         * method.c (build_mangled_C99_name): Remove unused prototype.
1947
1948 2001-05-12  Alexandre Oliva  <aoliva@redhat.com>
1949
1950         * config/arm/arm.h (TARGET_PTRMEMFUNC_VBIT_LOCATION): Use delta.
1951
1952 2001-05-12  Alexandre Oliva  <aoliva@redhat.com>
1953
1954         * defaults.h (TARGET_PTRMEMFUNC_VBIT_LOCATION): Define.
1955         * tm.texi (TARGET_PRTMEMFUNC_VBIT_LOCATION): Document.
1956
1957 2001-05-11  Richard Henderson  <rth@redhat.com>
1958
1959         * defaults.h (ASM_PREFERRED_EH_DATA_FORMAT): New.
1960         * dwarf2asm.c (dw2_force_const_mem, dw2_output_indirect_constant_1,
1961         dw2_output_indirect_constants, dw2_asm_output_encoded_addr_rtx): New.
1962         * dwarf2asm.h (dw2_asm_output_encoded_addr_rtx): Prototype.
1963         (dw2_output_indirect_constants): Prototype.
1964         * dwarf2out.c (dwarf2out_begin_prologue): Generate
1965         current_function_func_begin_label if we'll need it for EH.  Exit
1966         early for IA64_UNWIND_INFO.
1967         * except.c: Get DW_EH_PE_* defines from dwarf2.h.
1968         (eh_data_format_name): Update for indirect references.
1969         (output_function_exception_table): Care for IA64_UNWIND_INFO.
1970         Handle ASM_PREFERRED_EH_DATA_FORMAT.
1971         * except.h (MUST_USE_SJLJ_EXCEPTIONS): IA64_UNWIND_INFO needn't
1972         define HAVE_eh_return etc.
1973         * final.c (final_start_function): Always call dwarf2out_begin_prologue.
1974         (final_end_function): Don't call output_function_exception_table.
1975         * toplev.c (compile_file): Call dw2_output_indirect_constants.
1976         (rest_of_compilation): Invoke output_function_exception_table
1977         for ia64 before assemble_end_function.
1978         * tm.texi (ASM_PREFERRED_EH_DATA_FORMAT): Document.
1979         (ASM_MAYBE_OUTPUT_ENCODED_ADDR_RTX): Document.
1980
1981         * unwind-dw2.c (_Unwind_GetTextRelBase, _Unwind_GetDataRelBase): New.
1982         * unwind.h: Declare them.
1983         * libgcc-std.ver: Export them.
1984         * unwind-pe.h: New file.
1985
1986         * config/alpha/elf.h (ASM_PREFERRED_EH_DATA_FORMAT): New.
1987
1988         * config/ia64/fde-glibc.c: Use "struct unw_table_entry"
1989         instead of "fde".
1990         (find_fde_for_dso): Extract DT_PLTGOT.
1991         (_Unwind_FindTableEntry): Rename from __ia64_find_fde; return
1992         the segment and gp as well.
1993         * config/ia64/frame-ia64.c: Remove file.
1994         * config/ia64/frame-ia64.h: Remove file.
1995         * config/ia64/unwind-ia64.c: New file.
1996         * config/ia64/unwind-ia64.h: New file.
1997         * config/ia64/ia64.h (ASM_OUTPUT_EH_CHAR): Remove.
1998         (ASM_OUTPUT_EH_SHORT, ASM_OUTPUT_EH_INT): Remove.
1999         (ASM_OUTPUT_EH_DOUBLE_INT): Remove.
2000         (ASM_PREFERRED_EH_DATA_FORMAT): New.
2001         (ASM_MAYBE_OUTPUT_ENCODED_ADDR_RTX): New.
2002         (IA64_UNWIND_INFO): Re-enable.
2003         (HANDLER_SECTION): Remove.
2004         (EH_RETURN_DATA_REGNO): New.
2005         * config/ia64/ia64.md (exception_receiver): Remove.
2006         * config/ia64/t-glibc (LIB2ADDEH): Re-enable.
2007         * config/ia64/t-ia64 (LIB2ADDEH): Re-enable.
2008
2009 2001-05-11  Richard Henderson  <rth@redhat.com>
2010
2011         * config/ia64/ia64.c (group_barrier_needed_p): Don't allow
2012         calls and jumps to be bundled together.
2013         (ia64_reorg): Emit a break after a noreturn call that ends
2014         a function.
2015         * config/ia64/ia64.md (break_f): New.
2016
2017 2001-05-12  Neil Booth  <neil@daikokuya.demon.co.uk>
2018
2019         * c-lex.c (lex_charconst): Convert into a simple wrapper
2020         around cpp_interpret_charconst, to which most of the code
2021         body is moved.
2022         * cppexp.c (MAX_CHAR_TYPE_SIZE, MAX_WCHAR_TYPE_SIZE,
2023         MAX_LONG_TYPE_SIZE, MAX_INT_TYPE_SIZE, MAX_CHAR_TYPE_MASK,
2024         MAX_WCHAR_TYPE_MASK, parse_escape, parse_charconst): Remove.
2025         (lex): Use cpp_interpret_charconst.
2026         * cpplex.c (parse_escape, read_ucs, cpp_interpret_charconst,
2027         hex_digit_value): New functions.
2028         (MAX_CHAR_TYPE_SIZE, MAX_WCHAR_TYPE_SIZE): New macros.
2029         * cpplib.h (cpp_interpret_charconst): New prototype.
2030         * Makefile.in: Update.
2031
2032 2001-05-12  Dean Wakerley  <dean@wakerley.com>
2033
2034         * doc/install.texi: New file. Converted to texinfo from the HTML
2035         documentation in wwwdocs/htdocs/install.
2036
2037 Fri May 11 15:50:13 2001  Jeffrey A Law  (law@cygnus.com)
2038
2039         * gcse.c (insert_insn_end_bb): Do not search for assignments to
2040         non-argumment registers that are mentioned in CALL_INSN_FUNCTION_USAGE.
2041
2042         * toplev.c (compile_file): Move comment for opening output
2043         file to just before the code that opens the output file.
2044
2045 2001-05-11  Jakub Jelinek  <jakub@redhat.com>
2046
2047         * regmove.c (regmove_optimize): Suppress the optimization for
2048         unchanging destination register.  Add comment above function.
2049
2050 2001-05-11  Zack Weinberg  <zackw@stanford.edu>
2051
2052         * Makefile.in: Exterminate all references to assert.h.
2053         * cross-make: Likewise.
2054         * assert.h: Delete.
2055         * configure.in: Correct commentary.
2056         * configure: Regenerate.
2057
2058         * libgcc-std.ver, libgcc2.c, libgcc2.h, sys-protos.h:
2059         Remove __eprintf.
2060
2061         * config/t-freebsd, config/t-linux, config/t-linux-aout,
2062         config/t-netbsd, config/t-rtems, config/x-linux,
2063         config/i386/t-beos, config/mcore/t-mcore, config/mcore/t-mcore-pe:
2064         No need to override INSTALL_ASSERT_H.
2065
2066         * fixinc/fixinc.dgux, fixinc/fixinc.interix, fixinc/fixinc.ptx,
2067         fixinc/fixinc.svr4, fixinc/fixinc.winnt, fixinc/fixinc.wrap,
2068         fixinc/fixincl.sh: Don't install assert.h into objdir/include.
2069
2070 2001-05-11  Graham Stott  <grahams@redhat.com>
2071
2072         * combine.c (simplify_comparison): Fix typo.
2073
2074 2001-05-11  Mark Mitchell  <mark@codesourcery.com>
2075
2076         * loop.h (struct movables): Remove `num'.
2077         * loop.c (scan_loop): Don't set it.  Use count_insns_in_loop.
2078         Adjust call to strength_reduce.
2079         (num_unmoved_movables): New function.
2080         (move_movables): Don't set movables->num.
2081         (strength_reduce): Compute the number of instructions in the loop
2082         here, rather than in the caller.
2083         (check_dbra_loop): Always clear reversible_mem_store if there
2084         are any memory sets.
2085         (loop_regs_scan): Don't count instructions here.
2086         (count_insn_in_loop): New function.
2087
2088 2001-05-11  Mark Mitchell  <mark@codesourcery.com>
2089
2090         * optabs.c (emit_libcall_block): Don't mark calls as CONST_CALL_P.
2091
2092 2001-05-11  Neil Booth  <neil@daikokuya.demon.co.uk>
2093
2094         * c-common.c (finish_label_expr): New function, lifted from
2095         from cp/semantics.c.
2096         * c-common.h (finish_label_expr, lookup_label): New prototypes.
2097         * c-parse.in: Move 3 blocks of parser code into new functions.
2098         * c-typeck.c (simple_asm_stmt, c_cast_expr): New functions.
2099         * c-tree.h (simple_asm_stmt, c_cast_expr): New prototypes.
2100         (lookup_label): Remove.
2101
2102 2001-05-11  Alexandre Oliva  <aoliva@redhat.com>
2103
2104         * config/mn10300/t-mn10300 (dp-bit.c, fp-bit.c): Don't define
2105         FLOAT_BIT_ORDER_MISMATCH.
2106
2107 2001-05-10  David Edelsohn  <edelsohn@gnu.org>
2108
2109         * expr.c (emit_push_insn): Convert PUSH_ROUNDING argument to
2110         bytes.  Reported by Kazu Hirata <kazu@hxi.com>.
2111
2112 2001-05-10  David Edelsohn  <edelsohn@gnu.org>
2113
2114         * expr.c (emit_group_load): extract_bit_field requires a REG or
2115         MEM as an argument.
2116
2117 Thu May 10 14:45:44 2001  Jeffrey A Law  (law@cygnus.com)
2118
2119         * cse.c (cse_insn): Mostly remove first hunk of code which collapsed
2120         a computed jump into an unconditional jump.
2121         In second hunk of code for collapsing computed and conditional jumps
2122         into unconditional jumps, reemit the jump in additional cases.
2123
2124         * jump.c (jump_optimize_1): Do not wrap the new jump target
2125         inside a LABEL_REF; gen_jump will do that automatically.
2126
2127 2001-05-10  Toon Moene  <toon@moene.indiv.nluug.nl>
2128
2129         * dwarf2out.c (mem_loc_descriptor): Do not pass constant pool
2130         contents for a SYMBOL_REF in case of floating point constants.
2131
2132 2001-05-10  DJ Delorie  <dj@redhat.com>
2133
2134         * c-common.c (combine_strings): Widen strings in a
2135         host-endian-independent way.
2136
2137 2001-05-10  Joseph S. Myers  <jsm28@cam.ac.uk>
2138
2139         * c-parse.in: Remove many shift/reduce conflicts.  Update
2140         %expect values.
2141         (declspecs_nosc_nots_nosa_noea, declspecs_nosc_nots_nosa_ea,
2142         declspecs_nosc_nots_sa_noea, declspecs_nosc_nots_sa_ea,
2143         declspecs_nosc_ts_nosa_noea, declspecs_nosc_ts_nosa_ea,
2144         declspecs_nosc_ts_sa_noea, declspecs_nosc_ts_sa_ea,
2145         declspecs_sc_nots_nosa_noea, declspecs_sc_nots_nosa_ea,
2146         declspecs_sc_nots_sa_noea, declspecs_sc_nots_sa_ea,
2147         declspecs_sc_ts_nosa_noea, declspecs_sc_ts_nosa_ea,
2148         declspecs_sc_ts_sa_noea, declspecs_sc_ts_sa_ea, declspecs_ts,
2149         declspecs_nots, declspecs_ts_nosa, declspecs_nots_nosa,
2150         declspecs_nosc_ts, declspecs_nosc_nots, declspecs_nosc, declspecs,
2151         maybe_type_quals_setattrs, typespec_nonattr, typespec_attr,
2152         typespec_reserved_nonattr, typespec_reserved_attr,
2153         typespec_nonreserved_nonattr, maybe_setattrs, structsp_attr,
2154         structsp_nonattr, components_notype, component_notype_declarator,
2155         absdcl1_ea, absdcl1_noea, direct_absdcl1, absdcl_maybe_attribute,
2156         firstparm, setspecs_fp): New
2157         (typed_declspecs, reserved_declspecs, typed_typespecs,
2158         reserved_typespecquals, declmods, typespec, typespecqual_reserved,
2159         typed_declspecs_no_prefix_attr reserved_declspecs_no_prefix_attr
2160         declmods_no_prefix_attr, nonempty_type_quals, structsp,
2161         type_quals): Remove.  Users updated.
2162         (initdecls, notype_initdecls, after_type_declarator,
2163         parm_declarator, notype_declarator, absdcl1, components, ivars):
2164         Don't allow attributes at the start of a declarator; include them
2165         in the production containing the declarator instead.  Always
2166         require type specifiers before trying to redeclare a typedef name.
2167         (typename): Allow for attributes but warn that they are ignored.
2168         (parmlist, firstparm, setspecs_fp): Include attributes in
2169         parmlist; suck them off the parser stack in firstparm using
2170         setspecs_fp.
2171
2172 Thu May 10 09:17:42 2001  Jeffrey A Law  (law@cygnus.com)
2173
2174         * ifcvt.c (merge_if_block): Use any_uncondjump_p, not simplejump_p
2175         to determine if a block has an unconditional jump at its end.
2176
2177         * jump.c (jump_optimize_1): When converting a conditional jump
2178         to an unconditional jump, build the jump using gen_jump instead
2179         of just modify operands in-place.
2180
2181 2001-05-09  Zack Weinberg  <zackw@stanford.edu>
2182
2183         * cppinit.c (cpp_post_options): Shut off macro expansion if
2184         -fpreprocessed.
2185         * cpplib.c (_cpp_handle_directive): If -fpreprocessed, accept
2186         IN_I directives only if the # is in column 1 and the directive
2187         name begins in column 2.
2188         * cppmain.c (scan_buffer): Insert a space between # and an
2189         identifier, when that identifier is a directive name.
2190
2191         * tradcpp.c (struct file_buf): Add a pointer to the next entry
2192         in the header search path.
2193         (enum node_type): Add T_INCLUDE_NEXT.
2194         (directive_table): Add entry for include_next.
2195         (do_include_next): New function.
2196         (process_include): New routine, broken out of do_include.
2197         (finclude): Insert 'nhd' argument, to be copied into
2198         next_header_dir of the new buffer.
2199         (main): Adjust to match.
2200         * gsyslimits.h, limity.h: Un-indent #include_next.
2201
2202 2001-05-09  Joseph S. Myers  <jsm28@cam.ac.uk>
2203
2204         * objc.texi: Move from ../libobjc/objc-features.texi.  Adjust for
2205         inclusion as a chapter of the GCC manual.
2206         * gcc.texi: Include objc.texi.
2207         * fdl.texi: Use @unnumberedsec for the addendum.
2208         * Makefile.in ($(srcdir)/gcc.info, gcc.dvi): Update dependencies.
2209
2210 Wed May  9 16:01:41 CEST 2001  Jan Hubicka  <jh@suse.cz>
2211
2212         * i386.md (DImode move splitters): Use !MMX and !SSE for the condition.
2213
2214 Wed May  9 10:40:25 2001  Alexandre Oliva  <aoliva@redhat.com>
2215
2216         * regclass.c (scan_one_insn): Update REG_N_REFS when optimizing
2217         handling of two-address insns.
2218
2219 Wed May  9 10:36:18 2001  Alexandre Oliva  <aoliva@redhat.com>
2220
2221         * Makefile.in (NM_FOR_TARGET): Look for ./nm, then
2222         ../binutils/nm-new instead of ../binutils/nm.
2223
2224 Wed May  9 12:15:46 CEST 2001  Jan Hubicka  <jh@suse.cz>
2225
2226         * i386.md (movdi splitter): Fix the splitting condition
2227         (float_extenddftf splitter): Fix mode.
2228
2229 Wed May  9 12:05:39 CEST 2001  Jan Hubicka  <jh@suse.cz>
2230
2231         * genrecog.c (write_switch): Avoid outputting of switch for
2232         types wider than int.
2233
2234 2001-05-03  Andrew Haley  <aph@cambridge.redhat.com>
2235
2236         * reload1.c (copy_eh_notes): New function.
2237         (emit_input_reload_insns): Call it.
2238         (emit_output_reload_insns): Call it.
2239
2240 2001-05-07  Zack Weinberg  <zackw@stanford.edu>
2241
2242         * config.gcc (i[34567]86-*-sco3.2v4*, i[34567]86-*-sco*):
2243         Delete stanzas.
2244         * config/i386/sco.h, config/i386/sco4.h, config/i386/scodbx.h,
2245         config/i386/sco4dbx.h, config/i386/x-sco4: Delete file.
2246
2247         * optabs.c: Delete #ifdef BROKEN_LDEXP block.
2248
2249 2001-05-07  John David Anglin  <dave@hiauly1.hia.nrc.ca>
2250
2251         * pa.md (interspace_jump): Revise comment.
2252         (builtin_longjmp): Block initial setup insns from delay slot of
2253         interspace branch.
2254         (builtin_setjmp_receiver): New expander to save and restore PIC
2255         register.
2256
2257         * som.h (NM_FLAGS): Remove `-n' sort option.  Revise comment.
2258
2259 Mon May  7 09:30:14 2001  Jeffrey A Law  (law@cygnus.com)
2260
2261         * toplev.c (compile_file): Set up the output file before we call
2262         the various initializers for the compiler.
2263
2264         * except.c (sjlj_mark_call_sites): Do not search for assignments to
2265         non-argumment registers that are mentioned in CALL_INSN_FUNCTION_USAGE.
2266
2267         * pa.h (MAX_LONG_TYPE_SIZE): Should be 32, not 64.
2268         * pa-64.h (*_TYPE_SIZE): Undefine before redefining.
2269
2270 2001-05-06  Zack Weinberg  <zackw@stanford.edu>
2271
2272         * Makefile.in (tradcpp0): Correct typo in dependency list.
2273
2274 2001-05-06  Geoff Keating  <geoffk@redhat.com>
2275
2276         * config/rs6000/rs6000.c (rs6000_emit_prologue): Don't save
2277         the link register if we're not going to use it.
2278
2279         * config/rs6000/rs6000.c (output_profile_hook): Fix a warning.
2280         (output_function_profiler): Likewise.
2281
2282 2001-05-07  Alan Modra  <amodra@one.net.au>
2283
2284         * pa.c (compute_frame_size): 64-bit frame marker is 16 bytes.
2285
2286 2001-05-06  Alexandre Oliva  <aoliva@redhat.com>
2287
2288         * unroll.c (loop_iterations): Don't sign-extend abs_diff;
2289         zero-extend it.  Make abs_inc unsigned.
2290
2291         * optabs.c (expand_binop): Sign-extend xop0 and xop1 from the
2292         widest mode in narrowing and widening operations.
2293
2294         * config/mips/mips.md: Sign extend CONST_INTs.
2295
2296 2001-05-06  Andreas Jaeger  <aj@suse.de>
2297
2298         * invoke.texi (Option Summary): Add -momit-leaf-frame-pointer
2299         (i386 Options): Document -momit-leaf-frame-pointer.
2300
2301 2001-05-06  Neil Booth  <neil@daikokuya.demon.co.uk>
2302
2303         * c-typeck.c (internal_build_compound_expr): Check for
2304         array to pointer conversion just once.
2305
2306 2001-05-05  Richard Henderson  <rth@redhat.com>
2307
2308         * integrate.c (copy_insn_list): Substitute NOTE_EXPECTED_VALUE.
2309
2310 2001-05-05  Richard Henderson  <rth@redhat.com>
2311
2312         * except.c (remove_fixup_regions): Adjust REG_EH_REGION notes
2313         to the parent of the fixup region.
2314
2315 2001-05-05  Jakub Jelinek  <jakub@redhat.com>
2316
2317         * gcc.c (cpp_options): Define __NO_INLINE__ unless we are honoring
2318         "inline" keyword.
2319         * cpp.texi (__NO_INLINE): Document it.
2320
2321 2001-05-05  Neil Booth  <neil@daikokuya.demon.co.uk>
2322
2323         * cppfiles.c (struct include_file): New member err_no.
2324         (find_or_create_entry): Set it.
2325         (open_file): Don't set fds to -2.  Instead, use err_no to
2326         remember previous errors, if any.
2327
2328 2001-05-05  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
2329
2330         * config/m68hc11/m68hc11.c (m68hc11_gen_movhi): Optimize moves
2331         between X and Y by using sequences of xgdx and xgdy.
2332
2333 2001-05-05  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
2334
2335         * config/m68hc11/m68hc11.md ("*logicalsi3_silshr16"): Use '?' instead
2336         of '!' for the 'D' alternative ('!' is too strong).
2337         ("*logicalsi3_silshl16"): Likewise.
2338         ("movstricthi"): Accept 'A' when 'd' constraint, remove spurious '+'.
2339         ("movstrictsi"): Remove spurious '+'.
2340         ("movstrictqi"): Don't accept 'A' and remove spurious '+'.
2341         ("tstqi_1", "*lshrqi3_const1"): Put 'm' constraint before 'd'.
2342         ("subqi3"): Disparage with '!' the 'x' and 'y' registers to avoid
2343         a reload to them.
2344
2345 2001-05-04  David Edelsohn  <edelsohn@gnu.org>
2346
2347         * calls.c (store_one_arg): Don't divide align by BITS_PER_UNIT.
2348
2349 2001-05-04  Lars Brinkhoff  <lars@nocrew.org>
2350
2351         * simplify-rtx.c (simplify_binary_operation): Simplify ~a + 1
2352         into -a.
2353
2354 2001-05-04  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
2355
2356         * config/rs6000/rs6000.md (ashldi3 splits): Guard with
2357         TARGET_POWERPC64.
2358
2359 2001-05-04  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
2360
2361         * config/m68hc11/m68hc11.md (lshrhi3_const1): Fix shift of
2362         soft register, use ror instead of rol.
2363
2364 2001-05-04  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
2365
2366         * config/m68hc11/m68hc11.c (m68hc11_check_z_replacement): Take
2367         into account pre/post increment decrement for 68HC12.
2368         Fix other problems in replacement and fix call to reg_mentioned_p.
2369
2370 2001-05-04  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
2371
2372         * config/m68hc11/larith.asm (L_regs_frame): New for _.frame.
2373         Put the soft registers in bss for 68HC12.
2374         (L_regs_d3_4): New for _.d3 and _.d4.
2375         (L_regs_d5_6): Likewise.
2376         (L_regs_d1_2): Likewise.
2377         * config/m68hc11/t-m68hc11-gas (T_CPPFLAGS): Compile new parts.
2378
2379 2001-05-04  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
2380
2381         * config/m68hc11/m68hc11.h (CPP_SPEC): Pass -D__HAVE_SHORT_DOUBLE__
2382         to the pre-processor when -fshort-double is specified.
2383         * config/m68hc11/m68hc11.2 (CPP_SPEC): Likewise.
2384
2385 2001-05-04  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
2386
2387         * config/m68hc11/larith.asm (divmodhi4): Empty for 68HC12.
2388         (__mulsi3): Rewrite for 68HC12.
2389         * config/m68hc11/m68hc11.md (divmodhi4): Use idivs for 68HC12.
2390         Mark 'x' constraint with earlyclobber to prevent a
2391         RELOAD_FOR_OTHER_ADDRESS to go in it.
2392         (mulhi3_m68hc12): New pattern.
2393         (mulhi3_m68hc11): Rename of mulhi3.
2394         (mulhi3): New expand for 68HC12 optimisation.
2395         (umulhisi3, mulhisi3): New patterns for 68HC12.
2396
2397 2001-05-04  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
2398
2399         * config/m68hc11/m68hc11.md (*tbne, *tbeq): New patterns for 68HC12.
2400         (extendqisi2, extendqihi2, extendhisi2): Use sex for 68HC12.
2401         (uminqi3, umaxqi3, uminhi3, umaxhi3): New pattern for 68HC12.
2402
2403 2001-05-04  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
2404
2405         * config/m68hc11/m68hc11.h (CONST_COSTS): Make the cost of
2406         constants cheap after reload.
2407         * config/m68hc11/m68hc11.c (m68hc11_shift_cost): Shift by 16 and 32
2408         are cheap.
2409         (m68hc11_rtx_costs): Cost of multiplication by 65536 is expensive
2410         so that gcc prefers a shift by 16.
2411         (m6811_cost, m6812_cost): Make the shift cheap compared to an add.
2412
2413 2001-05-04  Nick Clifton  <nickc@cambridge.redhat.com>
2414
2415         * config/arm/elf.h (ASM_OUTPUT_ALIGNED_COMMON): Define.
2416
2417 2001-05-04  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
2418
2419         * alpha.h: NULL_PTR -> NULL.
2420         * arm.c: Likewise.
2421         * arm.h: Likewise.
2422         * avr.h: Likewise.
2423         * c4x.c: Likewise.
2424         * c4x.h: Likewise.
2425         * i386.c: Likewise.
2426         * i386.md: Likewise.
2427         * i860.c: Likewise.
2428         * ia64.c: Likewise.
2429         * m68hc11.h: Likewise.
2430         * rs6000.h: Likewise.
2431         * sh.c: Likewise.
2432         * sh.h: Likewise.
2433         * sparc.h: Likewise.
2434         * v850.c: Likewise.
2435
2436         * expr.c: Likewise.
2437         * final.c: Likewise.
2438         * gcc.c: Likewise.
2439         * recog.c: Likewise.
2440
2441 2001-05-04  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
2442
2443         * i386.c (ix86_emit_restore_regs_using_mov, ix86_save_reg): Change
2444         `bool' parameter to `int'.
2445
2446         * hash.c (hash_lookup): Likewise.
2447
2448         * hash.h (hash_lookup): Likewise.
2449
2450         * tlink.c (symbol_hash_lookup, demangled_hash_lookup): Likewise.
2451
2452 Fri May  4 13:10:03 CEST 2001  Jan Hubicka  <jh@suse.cz>
2453
2454         * i386.c (x86_initialize_trampoline): Fix mode of constant.
2455
2456 2001-05-03  Geoff Keating  <geoffk@redhat.com>
2457
2458         * invoke.texi (i386 Options): Delete references to -malign-jumps,
2459         -malign-loops, -malign-functions.
2460         * i386.c (ix86_align_funcs): Delete.
2461         (ix86_align_loops): Delete.
2462         (ix86_align_jumps): Delete.
2463         (override_options): Mark -malign-* as obsolete.  Emulate their
2464         behaviour with the -falign-* options.  Default -falign-* from
2465         the processor table.
2466         * i386.h (FUNCTION_BOUNDARY): Define to 16; revert Richard Kenner's
2467         patch of Wed May 2 13:09:36 2001.
2468         (LOOP_ALIGN): Delete.
2469         (LOOP_ALIGN_MAX_SKIP): Delete.
2470         (LABEL_ALIGN_AFTER_BARRIER): Delete.
2471         (LABEL_ALIGN_AFTER_BARRIER_MAX_SKIP): Delete.
2472
2473 2001-05-04  Andreas Jaeger  <aj@suse.de>
2474
2475         * except.h: Add prototype declaration for
2476         expand_builtin_init_dwarf_reg_sizes.
2477
2478 2001-05-03  Geoffrey Keating  <geoffk@redhat.com>
2479
2480         * Makefile.in (site.exp): Set TESTING_IN_BUILD_TREE.
2481
2482 2001-05-03  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
2483
2484         * config/m68hc11/m68hc11.md ("bitcmpqi"): New pattern for bitb
2485         instruction.
2486         ("bitcmpqi2"): New pattern for bit-extract and test.
2487         ("bitcmphi"): New pattern for bitb/bita instructions.
2488
2489 2001-05-03  Joseph S. Myers  <jsm28@cam.ac.uk>
2490
2491         * gccbug.in: Use a temporary directory when the mktemp command is
2492         not available.
2493
2494 2001-05-03  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
2495
2496         * config/m68hc11/m68hc11.h (STATIC_CHAIN_REGNUM): Use soft z register
2497         instead of _.d1.
2498         (INITIALIZE_TRAMPOLINE): Call it.
2499         (TRAMPOLINE_SIZE): Define according to 68HC11/68HC12.
2500         (TRAMPOLINE_TEMPLATE): Remove.
2501         * config/m68hc11/m68hc11.c (m68hc11_initialize_trampoline): New.
2502         * config/m68hc11/m68hc11-protos.h (m68hc11_initialize_trampoline):
2503         Declare.
2504
2505 2001-05-03  David O'Brien  <obrien@FreeBSD.org>
2506
2507         * config/t-freebsd: Don't install "assert.h" in gcc.  Compile crtbeginS.o
2508         and crtendS.o with PIC.
2509
2510 2001-05-03  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
2511
2512         * config/m68hc11/larith.asm (__mulqi3): Fix multiplication of two
2513         negative numbers.
2514         (___subdi3, ___adddi3): Use x instead of y as index register.
2515         (__init_bss_section, __map_data_section): Optimize for 68HC12.
2516         (__memset, __memcpy): Likewise.
2517         (regs): Put the soft registers in bss for 68HC12.
2518         (abort): Use trap to abort for 68hc12.
2519         (__mulhi3, __mulhi32): Use emul for 68hc12.
2520         (__mulsi3): Avoid to use the tmp soft register for 68hc12.
2521
2522 2001-05-03  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
2523
2524         * config/m68hc11/m68hc11.h (LIMIT_RELOAD_CLASS): Don't define.
2525         * config/m68hc11/m68hc11-protos.h (limit_reload_class): Remove.
2526         * config/m68hc11/m68hc11.c (limit_reload_class): Remove.
2527         (m68hc11_override_options): Remove setting of flag_no_nonansi_builtin.
2528         Set 68HC12 min offset to -65536.
2529         (print_operand): Put parenthesis arround the operand if it refers
2530         to a symbol having the same name as a register.
2531         (m68hc11_z_replacement): When z register is replaced by its
2532         equivalent soft register, force the insn to be re-recognized.
2533         (m68hc11_check_z_replacement): Fix the test when destination is
2534         the index register and z dies in the insn.
2535         (m68hc11_reorg): Remove the REG_DEAD notes beforce recomputing them.
2536
2537 2001-05-03  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
2538
2539         * config/m68hc11/m68hc11.c (m68hc11_override_options): Initialize
2540         costs according to processor variant.
2541         (m68hc11_shift_cost): New function to compute shift costs.
2542         (m68hc11_rtx_costs): Define costs according to processor variant.
2543         (m6811_cost): Costs for 68HC11.
2544         (m6812_cost): Costs for 68HC12.
2545         (COSTS_N_INSNS): Remove.
2546
2547         * config/m68hc11/m68hc11.h (RTX_COSTS): New.
2548         (DEFAULT_RTX_COSTS): Remove.
2549         (CONST_COSTS): Define costs according to OUTER_CODE.
2550         (processor_costs): New struct to define costs.
2551         (m68hc11_cost): Pointer to current costs.
2552
2553 2001-05-03  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
2554
2555         * config/m68hc11/m68hc11.md (*addhi3_68hc12): Fix generation
2556         and use m68hc11_notice_keep_cc when using leax/leay.
2557         (addhi3 split): Reject split if the insn is handled by
2558         leax/leay above.
2559         * config/m68hc11/m68hc11.c (m68hc11_split_move): For 68HC12 the
2560         push must be handled in a special way if the source operand uses
2561         sp as index register.
2562         (m68hc11_notice_keep_cc): New function.
2563         (m68hc11_gen_movhi): Use it when an insn changes a register but
2564         not the flags.
2565         (m68hc11_gen_movqi): Fix move for 68HC12.
2566         * config/m68hc11/m68hc11-protos.h (m68hc11_notice_keep_cc): Declare.
2567
2568 2001-05-03  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
2569
2570         * config/m68hc11/m68hc11.c (m68hc11_emit_libcall): Use LCT_CONST
2571         and don't pass operands[0] to emit_library_call_value.
2572
2573 2001-05-03  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
2574
2575         * config/m68hc11/m68hc11.md (tsthi_1): Use cpd for 68HC12.
2576         (zero_extendsi split): Simplify and use (zero_extendhi).
2577         (*addhi3): Remove 'w' constraint since stack pointer is handled
2578         by (addhi3_sp).
2579         (*ashlhi3_2): Operand 2 is clobbered use '+' for its constraint.
2580         (*ashlhi3, *ashrhi3, *lshrhi3): Likewise.
2581         (*ashrhi3_const): Fix shift by 7.
2582         (*lshrsi3_const16): Fix template.
2583         (call, call_value): Fix constraint and predicate.
2584
2585 2001-05-03  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
2586
2587         * config/m68hc11/m68hc11.md (X_REGNUM, D_REGNUM): New constant.
2588         (Y_REGNUM, SP_REGNUM, PC_REGNUM, A_REGNUM, B_REGNUM): Likewise.
2589         (CC_REGNUM): Likewise.
2590         (*unnamed splits): Use above constants instead of hard coded numbers.
2591         (*adcq, *subcq, *addsi_carry, *rotlqi3_with_carry): Likewise.
2592         (*rotlhi3_with_carry, *rotrhi3_with_carry): Likewise.
2593         (*return_16bit, *unnamed peepholes): Likewise.
2594
2595 2001-05-03  David O'Brien  <obrien@FreeBSD.org>
2596
2597         * config.gcc(rs6000-ibm-aix|powerpc-ibm-aix):  Do not include
2598         rs6000/rs6000.h twice.
2599
2600 2001-05-03  Mark Elbrecht  <snowball3@bigfoot.com>
2601
2602         * config/i386/djgpp.h (CPP_PREDEFINES): Define __GO32__.
2603         (CPP_SPEC): Conditionally define MSDOS and GO32.
2604         (SUBTARGET_SWITCHES): Ignore -mbnu210 and -mno-bnu210.
2605         (SUBTARGET_OVERRIDE_OPTIONS): Warn that -mbnu210 and -mno-bnu210 are
2606         ignored.
2607         (SUPPORTS_WEAK, SUPPORTS_ONE_ONLY): Remove.
2608
2609 2001-05-03  Alexandre Oliva  <aoliva@redhat.com>
2610
2611         * config/mn10300/mn10300.md: Sign-extend GEN_INT operands.
2612
2613 2001-05-03  Mark Mitchell  <mark@codesourcery.com>
2614
2615         * integrate.h (struct inline_remap): Add leaf_reg_map table.
2616         * integrate.c (expand_inline_function): Use xcalloc to allocate
2617         memory.
2618         (copy_rtx_and_substitute): Use the leaf_reg_map for leaf
2619         registers.
2620
2621 2001-05-03  Mark Mitchell  <mark@codesourcery.com>
2622
2623         * c-dump.c (dequeue_and_dump): Don't look at DECL_ASSEMBLER_NAME
2624         if it is not set.
2625
2626 2001-05-03  Alexandre Oliva  <aoliva@redhat.com>
2627
2628         * config/mn10300/mn10300.h (LINK_SPEC): Pass --relax to the
2629         linker if -mrelax is given.
2630         (TARGET_SWITCHES): Document -mrelax.
2631
2632         Re-installed 2001-01-09's patch:
2633         * hwint.h (HOST_BITS_PER_WIDE_INT, HOST_WIDE_INT): Use long long
2634         if it's wider than long and the target's long is wider than the
2635         host's.
2636
2637 2001-05-02  David O'Brien  <obrien@FreeBSD.org>
2638
2639         * config.gcc, config/rs6000/aix51.h, config/rs6000/mach.h:  Do not
2640         directly include rs6000/rs6000.h.  Instead do it in tm.h.
2641
2642 2001-05-02  Stan Shebs  <shebs@apple.com>
2643
2644         * objc/objc-act.c (STRING_OBJECT_CLASS_NAME): Default to
2645         NSConstantString for NeXT-style runtimes.
2646         (STRING_OBJECT_GLOBAL_NAME): New macro.
2647         (enum objc_tree_index): Add values OCTI_CNST_STR_GLOB_ID and
2648         OCTI_STRING_CLASS_DECL.
2649         (constant_string_global_id): New macro.
2650         (string_class_decl): Ditto.
2651         (setup_string_decl): New function.
2652         (build_objc_string_object): Use it to build a NeXT runtime
2653         compatible string initializer.
2654
2655 2001-05-02  Jakub Jelinek  <jakub@redhat.com>
2656
2657         * tradcpp.c (do_define): Make sure we don't walk past limit.
2658
2659 2000-05-01  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
2660
2661         * config/rs6000/rs6000.c (rs6000_legitimate_address): Allow any stack
2662         offsets if not REG_OK_STRICT.
2663
2664         * config/rs6000/rs6000.h (REG_OK_STRICT_FLAG): New macro.
2665         (INT_REG_OK_FOR_INDEX_P): Likewise.
2666         (INT_REG_OK_FOR_BASE_P): Likewise.
2667         (REG_OK_FOR_INDEX_P): Use INT_REG_OK_FOR_INDEX_P.
2668         (REG_OK_FOR_BASE_P): Use INT_REG_OK_FOR_BASE_P.
2669         (LEGITIMATE_OFFSET_ADDRESS_P): Use INT_REG_OK_FOR_INDEX_P and
2670         INT_REG_OK_FOR_BASE_P instead of REG_OK_FOR_INDEX_P and
2671         REG_OK_FOR_BASE_P. Take an additional parameter.
2672         (LEGITIMATE_INDEXED_ADDRESS_P): Likeewise.
2673         (LEGITIMATE_INDIRECT_ADDRESS_P): Likewise.
2674         (LEGITIMATE_LO_SUM_ADDRESS_P): Likewise.
2675         (GO_IF_LEGITIMATE_ADDRESS): Move code into new function
2676         rs6000_legitimate_address() and use it.
2677         * config/rs6000/rs6000.c: Update all callers.
2678         (rs6000_legitimate_address): New function.
2679
2680 2001-05-02  David Edelsohn  <edelsohn@gnu.org>
2681
2682         * config/rs6000/rs6000.c (rs6000_emit_move): Merge
2683         special_constant conditional blocks together.
2684
2685 2001-05-02  Dale Johannesen  <dalej@apple.com>
2686
2687         * config/rs6000/rs6000.h (RS6000_ARG_SIZE): Remove unused NAMED
2688         parameter.
2689         (STRICT_ARGUMENT_NAMING): Define.
2690         * config/rs6000/rs6000.c (function_arg_advance, function_arg,
2691         function_arg_partial_nregs, setup_incoming_varargs): Remove
2692         args logic which depends on "named" now that STRICT_ARGUMENT_NAMING
2693         is defined.
2694
2695 Wed May  2 13:09:36 2001  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
2696
2697         * config/i386/i386.h (FUNCTION_BOUNDARY): Result is unsigned.
2698
2699         * function.c (fixup_var_regs_1, case SUBREG): Use promoted mode
2700         for replacement.
2701
2702         * expr.c (store_field): Do nothing except elaborate side-effects if
2703         zero-bit field.
2704
2705 2001-05-02  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
2706
2707         * c-lex.c: NULL_PTR -> NULL.
2708         * cse.c: Likewise.
2709         * emit-rtl.c: Likewise.
2710         * gcse.c: Likewise.
2711         * genpeep.c: Likewise.
2712         * jump.c: Likewise.
2713         * mips-tdump.c: Likewise.
2714         * reload1.c: Likewise.
2715         * rtlanal.c: Likewise.
2716         * stmt.c: Likewise.
2717         * stor-layout.c: Likewise.
2718         * toplev.c: Likewise.
2719
2720 2001-05-01  Per Bothner  <per@bothner.com>
2721
2722         * expr.c (expand_expr):  When compiling LABELED_BLOCK_EXPR,
2723         call do_pending_stack_adjust before emiting label.
2724
2725 2001-05-01  Mark Mitchell  <mark@codesourcery.com>
2726
2727         * extend.texi: Fix typo.
2728
2729 2001-05-01  Stan Shebs  <shebs@apple.com>
2730
2731         * objc/objc-act.c (build_module_descriptor): Clear DECL_CONTEXT
2732         of UOBJC_MODULES_decl.
2733         (generate_strings): Clear DECL_CONTEXT of new decl nodes.
2734         (generate_descriptor_table): Ditto.
2735         (generate_protocols): Ditto.
2736         (generate_protocol_list): Ditto.
2737         (generate_classref_translation_entry): Ditto.
2738
2739 2001-05-01  Jeffrey Oldham  <oldham@codesourcery.com>
2740
2741         * invoke.texi (Optimize Options): Add documentation for `--param
2742         max-delay-slot-insn-search' and `--param
2743         max-delay-slot-live-search' and reorder --param section.
2744         * params.def: Modify initial comment.
2745         * params.h (param_info): Add `help' member.
2746         * toplev.c (lang_independent_params): Include `help' description.
2747         (display_help): Print --param parameters.
2748
2749 2001-05-01  Zack Weinberg  <zackw@stanford.edu>
2750
2751         * config.gcc: Don't default xmake_file to ${cpu_type}/x-${cpu_type}.
2752         Remove references to deleted files.
2753         (*-*-openbsd): No need to override xmake_file.
2754         (*-*-sysv4): Treat like *-*-sysv.
2755
2756         * configure.in: Probe for ldopen in various places, and set up
2757         collect2 to be linked with them if found.
2758         Don't dink with Windows registry stuff unless $host_os is a
2759         Win32 os name.  Check to see if we need -ladvapi32.
2760         * configure: Regenerate.
2761
2762         * Makefile: Get rid of CLIB and HOST_CLIB.
2763         Substitute in COLLECT2_LIBS and link collect2 against its contents.
2764         * build-make: Get rid of HOST_CLIB.
2765
2766         * config/a29k/x-unix, config/alpha/x-osf, config/i386/x-aix,
2767         config/i386/x-osfrose, config/m68k/x-dpx2, config/mips/x-iris3,
2768         config/mips/x-mips, config/mips/x-osfrose, config/mips/x-sony,
2769         config/mips/x-sysv, config/rs6000/x-aix31, config/rs6000/x-aix41,
2770         config/rs6000/x-rs6000: Delete.
2771
2772         * config/i386/x-cygwin, config/m68k/t-aux, config/mips/x-iris:
2773         Don't set CLIB.
2774
2775         24 x-host fragments remain, 0 x-cpu, 3 top level.
2776
2777 2001-05-01  Zack Weinberg  <zackw@stanford.edu>
2778
2779         * aclocal.m4 (gcc_AC_C_CHAR_BIT): Correct test program.
2780         * configure: Regenerate.
2781
2782 2001-05-01  Angela Marie Thomas <angela@cygnus.com>
2783
2784         * Makefile.in (install-headers): Remove redundant dependency.
2785
2786 2001-05-01  Nathan Sidwell  <nathan@codesourcery.com>
2787
2788         * c-tree.texi (USING_STMT): Document.
2789
2790 2001-05-01  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
2791
2792         * bitmap.c: Change NULL_PTR to NULL or "(rtx*)0".
2793         * c-common.c: Likewise.
2794         * c-decl.c: Likewise.
2795         * combine.c: Likewise.
2796         * rs6000.c: Likewise.
2797         * except.c: Likewise.
2798         * explow.c: Likewise.
2799         * expr.c: Likewise.
2800         * fold-const.c: Likewise.
2801         * function.c: Likewise.
2802         * gcc.c: Likewise.
2803         * gcse.c: Likewise.
2804         * integrate.c: Likewise.
2805         * loop.c: Likewise.
2806         * objc/objc-act.c: Likewise.
2807         * recog.c: Likewise.
2808         * reg-stack.c: Likewise.
2809         * reload.c: Likewise.
2810         * reload1.c: Likewise.
2811         * simplify-rtx.c: Likewise.
2812         * stmt.c: Likewise.
2813         * varasm.c: Likewise.
2814
2815 2001-05-01  Gabriel Dos Reis  <gdr@codesourcery.com>
2816
2817         * diagnostic.def: New file.
2818         * diagnostic.h (diagnostic_t): New enum.
2819         * Makefile.in (diagnostic.o): Depend on diagnostic.def
2820
2821 2001-04-30  Zack Weinberg  <zackw@stanford.edu>
2822
2823         * tsystem.h: Test only POSIX for availability of string.h
2824         and time.h.
2825         * config.gcc (all systems): If USG appeared in xm_defines,
2826         change it to POSIX.  If both USG and POSIX appeared, just
2827         delete USG. Remove unnecessary quotes around xm_defines
2828         settings.
2829         (m68k-crds-unos*): Don't #define unos - tested nowhere.
2830         (m68k-apple-aux*): Don't #define AUX - tested nowhere.
2831         (alpha*-*-linux*ecoff*, powerpc-*-linux*libc1,
2832         powerpc-*-linux*): No need to set xm_defines - handled by
2833         global settings for *-*-linux*.
2834
2835 2001-04-30  Zack Weinberg  <zackw@stanford.edu>
2836
2837         * dbxout.c, mips-tfile.c, config/mips/mips.c, xcoffout.c:
2838         Always include gstab.h, not system stab.h.  Don't provide
2839         default definitions of N_CATCH or N_OPT.  Always use the
2840         gstab.h variant of STAB_CODE_TYPE.
2841         * final.c: Don't include stab.h/gstab.h at all, or provide
2842         defaults for N_SLINE and N_SOL.
2843
2844         * xcoffout.c: Can assume N_MAIN, N_DSLINE, N_BSLINE, N_BINCL,
2845         N_EINCL, N_EXCL, N_M2C, N_SCOPE, N_CATCH, and N_OPT are
2846         available.
2847         * sdbout.c: Always include gsyms.h instead of system syms.h.
2848
2849         * configure.in: No need to check for stab.h.
2850         * configure, config.in: Regenerate.
2851         * Makefile.in (final.o): Don't depend on gstab.h.
2852
2853 2001-04-30  Mark Mitchell  <mark@codesourcery.com>
2854             Richard Henderson  <rth@redhat.com>
2855
2856         * extend.texi: Improve documentation of volatile asms.
2857
2858 2001-04-30  Mark Mitchell  <mark@codesourcery.com>
2859
2860         * c-tree.texi: Fix thinko.
2861         * gcc.texi: Likewise.
2862
2863 2001-04-30  Richard Henderson  <rth@redhat.com>
2864
2865         * c-common.c (c_promoting_integer_type_p): New function, from the
2866         corpse of old macro.  Properly promote too-small enumerations and
2867         booleans.  Adjust all callers.
2868         * c-common.h (C_PROMOTING_INTEGER_TYPE_P): Remove.
2869         (c_promoting_integer_type_p): Declare.
2870         * c-decl.c: Adjust C_PROMOTING_INTEGER_TYPE_P invocations.
2871         * c-typeck.c: Likewise.
2872         (default_conversion): Remove now redundant boolean check.
2873
2874 2001-04-30  Jan Hubicka  <jh@suse.cz>
2875             Richard Henderson  <rth@redhat.com>
2876
2877         * regmove.c (try_apply_stack_adjustment): Remove now redundant
2878         sanity checks.
2879         (combine_stack_adjustments_for_block): Don't combine stack
2880         allocation followed by deallocations.  Handle grow-up stacks.
2881
2882 2001-04-30  Mark Mitchell  <mark@codesourcery.com>
2883
2884         * fdl.texi: New file.
2885         * c-tree.texi: Use the GFDL.
2886         * gcc.texi: Likewise.
2887
2888 2001-04-30  Stan Shebs  <shebs@apple.com>
2889
2890         * invoke.texi: Add a section documenting Objective-C options.
2891
2892 2001-04-27  Andrew Haley  <aph@cambridge.redhat.com>
2893
2894         * emit-rtl.c (try_split):  Copy EH notes to sequence.
2895
2896 2001-04-30  Mark Mitchell  <mark@codesourcery.com>
2897
2898         * regmove.c (record_stack_memrefs): Catch all references to the
2899         stack pointer.
2900
2901 2001-04-29  Toomas Rosin <toomas at ns dot tklabor dot ee>
2902
2903         * Makefile.in (stmp-fixinc): quote shell assignment values
2904
2905 2001-04-29  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
2906
2907         * c-aux-info.c: NULL_PTR->NULL in calls to `concat'.
2908
2909         * gcc.c: Likewise.
2910
2911         * prefix.c: Likewise.
2912
2913 2001-04-28  Stan Shebs  <shebs@apple.com>
2914
2915         * objc/objc-act.c (handle_class_ref): Rewrite to flush target
2916         specific code and use new macro ASM_DECLARE_UNRESOLVED_REFERENCE.
2917         * config/darwin.h (ASM_DECLARE_UNRESOLVED_REFERENCE): Define.
2918         * tm.texi (ASM_DECLARE_UNRESOLVED_REFERENCE): Document.
2919
2920         * config/darwin.h (STANDARD_EXEC_PREFIX): Don't define.
2921         (NEXT_OBJC_RUNTIME): Define.
2922
2923 Sat Apr 28 21:02:58 CEST 2001  Jan Hubicka  <jh@suse.cz>
2924
2925         * rtl.h (simplify_gen_relational): Add cmp_mode parameter.
2926         * simplify-rtx.c (simplify_gen_relational): Likewise.
2927
2928         * simplify-rtx.c (simplify_replace_rtx): Handle relationals and MEMs.
2929
2930         * i386.h (VALID_SSE_REG_MODE): Accept MMX modes if SSE2
2931         * i386.md (movsi_1, movdi2, movdi_1_rex64): Handle SSE2 moves.
2932
2933         * i386.md (negsf2, negdf2, abssf2, absdf2): Force operands to
2934         registers in SSE case; fix handling of the immediates.
2935         (negsf2_ifs, abssf2_ifs): Tweak constraints; require
2936         operands to be in regsiters before reload.
2937         (negdf2_ifs, absdf2_ifs): Likewise; disable for 64bit
2938         (negdf2_ifs_rex64, absdf2_ifs_rtx64): New.
2939         (abstf,absxf,negtf,negxf splitters): Compute
2940         properly the regnum for x86_64.
2941         (avsdf2_if_rex64): New.
2942
2943 Sat Apr 28 10:36:23 2001  Jeffrey A Law  (law@cygnus.com)
2944
2945         * flow.c (propagate_block_delete_insn): Handle deletion of ADDR_VEC
2946         and ADDR_DIFF_VEC insns when the proceeding CODE_LABEL was put
2947         into the constant pool.
2948         * jump.c (jump_optimize_1): Remove barrier successors after all
2949         the LABEL_NUSES counds have been computed.
2950         (delete_barrier_successors): When deleting a tablejump insn, also
2951         delete the jump table it uses.
2952         * varasm.c (force_const_mem): Set LABEL_PRESERVE_P when forcing a
2953         label into memory.
2954
2955 2001-04-28  Martin Kalen  <martin.kalen@todaysystems.com.au>
2956
2957         * pa.c (FRP): Remove erroneous white space in macro definition.
2958
2959 2001-04-28  Andreas Jaeger  <aj@suse.de>
2960
2961         * invoke.texi: Use XX-bit instead of XXbit or XX bit where
2962         appropriate.
2963         * extend.texi: Likewise.
2964         * tm.texi: Likewise.
2965
2966 2001-04-28  Andreas Jaeger  <aj@suse.de>
2967
2968         * md.texi: Use XX-bit instead of XXbit or XX bit where
2969         appropriate.
2970
2971 2001-04-28  Jens Schweikhardt <schweikh@schweikhardt.net>
2972
2973         * gcc.c (process_command): Allow -l lib in addition to -llib
2974         for POSIX compliance. This fixes PR c/2347.
2975
2976         * invoke.texi: Update section on Link Options accordingly.
2977
2978 2001-04-27  Zack Weinberg  <zackw@stanford.edu>
2979
2980         * function.c (purge_addressof_1): Remove the duplicate
2981         if (code == SET) block.  Fold the two if (code == ADDRESSOF)
2982         blocks together.
2983
2984 2001-04-28  Jason Merrill  <jason_merrill@redhat.com>
2985
2986         * except.c (expand_eh_region_start): Don't start a new block.
2987         (expand_eh_region_end): Don't end a block.
2988         * stmt.c (expand_end_bindings): Don't end EH blocks.
2989         (expand_decl_cleanup): Starting an EH region won't change the block.
2990         (mark_block_as_eh_region, mark_block_as_not_eh_region): Lose.
2991         (is_eh_region): Lose.
2992         * tree.h: Adjust.
2993
2994 2001-04-27  Jeffrey Oldham  <oldham@codesourcery.com>
2995
2996         * except.c (expand_eh_region_end_cleanup): word_mode, not Pmode.
2997
2998         * collect2.c (main): Add `-L' case to remove duplicate entries.
2999         (is_in_args): New function to check for a duplicate argument.
3000         * defaults.h (LINK_ELIMINATE_DUPLICATE_LDIRECTORIES): New macro.
3001         * tm.texi (LINK_ELIMINATE_DUPLICATE_LDIRECTORIES): New documentation.
3002         * config/mips/iris6.h (LINK_ELIMINATE_DUPLICATE_LDIRECTORIES):
3003         Define to be nonzero.
3004
3005 2001-04-27  Andreas Jaeger  <aj@suse.de>
3006             Richard Henderson  <rth@redhat.com>
3007
3008         * md.texi (Machine Constraints): Document additional i386
3009         constraints and fix description of "A".
3010
3011 Fri Apr 27 10:43:49 2001  Jeffrey A Law  (law@cygnus.com)
3012
3013         * tm.texi (TARGET_MEM_FUNCTIONS): Update text.
3014
3015 2001-04-27  Jason Merrill  <jason_merrill@redhat.com>
3016
3017         * except.c (get_exception_filter): word_mode, not Pmode.
3018
3019 2001-04-26  Geoffrey Keating  <geoffk@redhat.com>
3020
3021         * config/sparc/sparc.md (movsf_no_f_insn): Add more alternatives
3022         common to other movsf patterns.  Move up so that in future
3023         people who change the other patterns will change it too.
3024         (movsf_lo_sum): Allow even for soft-float; add appropriate
3025         constraints.
3026         (movsf_high): Likewise.
3027         (movsf_high+1): Allow even for soft-float.
3028
3029         * function.c (expand_function_end): Always clobber the
3030         return registers, even if there is no return label.
3031
3032 Thu Apr 26 20:28:21 CEST 2001  Jan Hubicka  <jh@suse.cz>
3033
3034         * (ix86_expand_fp_movcc): Re-enable SSE conditional move generation.
3035
3036 Thu Apr 26 19:20:28 CEST 2001  Jan Hubicka  <jh@suse.cz>
3037
3038         * i386.md (abs/neg splitter): Fix calculation of sign bit for TFmodes
3039         (pushqi2_rex64, pushhi2_rex64): Add.
3040
3041 2001-04-26  Andrew Haley  <aph@cambridge.redhat.com>
3042
3043         * except.c (expand_eh_region_end_cleanup): Force pending stack
3044         adjust before emitting label that branches around cleanup code.
3045
3046 2001-04-26  H.J. Lu  (hjl@gnu.org)
3047
3048         * config.gcc (mips*-*-linux*): Add elfos.h to tm_file.
3049
3050         * config/mips/ecoff.h (STARTFILE_SPEC): Undefine before
3051         define.
3052         * config/mips/elf64.h (MAX_OFILE_ALIGNMENT): Likewise.
3053         (ASM_OUTPUT_SECTION_NAME): Likewise.
3054         (ASM_WEAKEN_LABEL): Likewise.
3055         (UNIQUE_SECTION): Likewise.
3056         (ASM_OUTPUT_CONSTRUCTOR): Likewise.
3057         (ASM_OUTPUT_DESTRUCTOR): Likewise.
3058         * config/mips/elf.h (MAX_OFILE_ALIGNMENT): Likewise.
3059         (ASM_OUTPUT_SECTION_NAME): Likewise.
3060         (ASM_WEAKEN_LABEL): Likewise.
3061         (UNIQUE_SECTION): Likewise.
3062         (ASM_OUTPUT_CONSTRUCTOR): Likewise.
3063         (ASM_OUTPUT_DESTRUCTOR): Likewise.
3064         * config/mips/linux.h (HANDLE_SYSV_PRAGMA): Likewise.
3065         * config/mips/mips.h (DBX_CONTIN_LENGTH): Likewise.
3066         (ASM_FILE_START): Likewise.
3067         (ASM_OUTPUT_SOURCE_LINE): Likewise.
3068         (ASM_DECLARE_OBJECT_NAME): Likewise.
3069         (ASM_FILE_END): Likewise.
3070         (ASM_DECLARE_FUNCTION_NAME): Likewise.
3071         (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
3072         (ASM_GENERATE_INTERNAL_LABEL): Likewise.
3073         (ASM_OUTPUT_CASE_LABEL): Likewise.
3074         (ASM_OUTPUT_SKIP): Likewise.
3075         (ASM_OUTPUT_ASCII): Likewise.
3076         (ASM_OUTPUT_IDENT): Likewise.
3077         (READONLY_DATA_SECTION): Likewise.
3078         (EXTRA_SECTIONS): Likewise.
3079         (EXTRA_SECTION_FUNCTIONS): Likewise.
3080         (SELECT_RTX_SECTION): Likewise.
3081         (SELECT_SECTION): Likewise.
3082
3083         * config/mips/linux.h (INVOKE__main): Undefine.
3084         (CTOR_LIST_BEGIN): Likewise.
3085         (CTOR_LIST_END): Likewise.
3086         (DTOR_LIST_BEGIN): Likewise.
3087         (DTOR_LIST_END): Likewise.
3088         (SET_ASM_OP): Defined it to ".dummy".
3089         (ASM_OUTPUT_DEF): Defined.
3090         (ASM_OUTPUT_DEFINE_LABEL_DIFFERENCE_SYMBOL): Defined.
3091
3092 2001-04-26  Nick Clifton  <nickc@cambridge.redhat.com>
3093
3094         * config/arm/arm.h (ASM_OUTPUT_MAX_SKIP_ALIGN): Define, if the
3095         assembler supports .p2align.
3096
3097 2001-04-26  Nathan Sidwell <nathan@codesourcery.com>
3098
3099         * c-lex.c (c_lex): Remove # from %o diagnostic formatting.
3100
3101 2001-04-26  Jakub Jelinek  <jakub@redhat.com>
3102
3103         * integrate.c (expand_inline_function): Check for error_mark_node
3104         in actual argument.
3105
3106 2001-04-26  Jakub Jelinek  <jakub@redhat.com>
3107
3108         * config/i386/i386.h (CC1_CPU_SPEC): Fix deprecation warnings for
3109         -m386 and -m486.
3110
3111 2001-04-26  Alexandre Oliva  <aoliva@redhat.com>
3112
3113         * configure.in (configargs.h): Define thread_model.
3114         * configure: Rebuilt.
3115         * gcc.c (main): Print it with -v.
3116
3117 2001-04-25  Joseph S. Myers  <jsm28@cam.ac.uk>
3118
3119         * invoke.texi: Document -Wmissing-braces, -dumpspecs,
3120         -dumpmachine, -dumpversion, -fmem-report and -ftime-report.
3121         * gcc.1: Regenerate.
3122
3123 2001-04-25  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
3124
3125         * dwarfout.c (is_pseudo_reg, type_main_variant, is_tagged_type,
3126         is_redundant_typedef): Use static inline instead of inline static.
3127
3128 Wed Apr 25 18:21:01 2001  Christopher Faylor <cgf@cygnus.com>
3129
3130         * config/i386/cygwin.h: Move W32API search to LINK_SPEC to ensure that
3131         this directory is always searched.
3132
3133 2001-04-25  Richard Henderson  <rth@redhat.com>
3134
3135         * config/i386/i386.c (ix86_expand_epilogue): Properly compute size
3136         of registers to restore along non eh_return path.
3137
3138 2001-04-25  Jakub Jelinek  <jakub@redhat.com>
3139
3140         * c-format.c (check_format_info_recurse): Handle
3141         PLUS_EXPR for format string.
3142
3143 2001-04-25  Jakub Jelinek  <jakub@redhat.com>
3144
3145         * config/ia64/ia64.h (CC1_SPEC): Define.
3146         * config/ia64/linux.h (CC1_SPEC): Define.
3147
3148 Wed Apr 25 17:09:50 2001  J"orn Rennecke <amylaar@redhat.com>
3149
3150         * emit-rtl.c (constant_subword): Also do sign extension in
3151         BITS_PER_WORD == 16 case.
3152
3153 2001-04-25  Jason Merrill  <jason_merrill@redhat.com>
3154
3155         * loop.c (try_swap_copy_prop): Go back to checking insn.
3156
3157 2001-04-25  Jakub Jelinek  <jakub@redhat.com>
3158
3159         * emit-rtl.c (subreg_hard_regno): Only do HARD_REGNO_MODE_OK check
3160         if check_mode is non-zero.
3161
3162 2001-04-25  Jakub Jelinek  <jakub@redhat.com>
3163
3164         * config/i386/i386.c (ix86_expand_int_movcc): If overlap between
3165         out and comparison sequence has been detected, put result into
3166         proper temporary pseudo.
3167
3168 2001-04-24  Zack Weinberg  <zackw@stanford.edu>
3169
3170         * Makefile.in (LIB2FUNCS): Remove _varargs and __dummy.
3171         * libgcc-std.ver: Remove __builtin_saveregs, __dummy, and __empty.
3172         * libgcc2.c: Remove __dummy and __builtin_saveregs.
3173         * libgcc2.h: Don't prototype __builtin_saveregs or __dummy.
3174         * config/i860/varargs.asm: New file - preserve i860 __builtin_saveregs
3175         for future reference.
3176
3177 2001-04-24  Jason Merrill  <jason_merrill@redhat.com>
3178
3179         * except.c (reachable_handlers): Step out one level from a RESX.
3180
3181         * except.c (struct eh_region): Rename 'last' to 'resume'.
3182         (mark_eh_region, duplicate_eh_region_1): Adjust.
3183         (expand_eh_region_end_cleanup): Remember the jump, not the barrier.
3184         (build_post_landing_pads): Likewise.
3185         (expand_end_catch, expand_eh_region_end_allowed): Don't set it.
3186         (expand_eh_region_end_must_not_throw): Likewise.
3187         (connect_post_landing_pads): Thread (only) regions with non-deleted
3188         resume insns.
3189
3190         * except.c (expand_eh_region_end_cleanup): Save the EH return data
3191         registers around the cleanup.
3192         (get_exception_filter): New fn.
3193         (finish_eh_generation): Use it.
3194
3195 2001-04-24  Nathan Sidwell <nathan@codesourcery.com>
3196
3197         * c-semantics.c (add_scope_stmt): Don't call
3198         current_scope_stmt_stack multiple times.
3199
3200 2001-04-24  Zack Weinberg  <zackw@stanford.edu>
3201             Nathan Sidwell <nathan@codesourcery.com>
3202
3203         Lazy __FUNCTION__ generation.
3204         * c-common.h (RID_FUNCTION_NAME, RID_PRETTY_FUNCTION_NAME,
3205         RID_C99_FUNCTION_NAME): New _RIDs.
3206         (CTI_FUNCTION_ID, CTI_PRETTY_FUNCTION_ID, CTI_FUNC_ID): Remove.
3207         (CTI_FUNCTION_NAME_DECL, CTI_PRETTY_FUNCTION_NAME_DECL,
3208         CTI_C99_FUNCTION_NAME_DECL, CTI_SAVED_FUNCTION_NAME_DECLS): New
3209         global tree slots.
3210         (function_id_node, pretty_function_id_node, func_id_node): Remove.
3211         (c99_function_name_decl_node, function_name_decl_node,
3212         pretty_function_name_decl_node, saved_function_name_decls):
3213         Declare.
3214         (struct language_function): Remove x_function_name_declared_p.
3215         (make_fname_decl): Remove a parameter.
3216         (declare_function_names): Remove prototype.
3217         (start_fname_decls, finish_fname_decls): Prototype.
3218         (fname_as_string): Likewise.
3219         (fname_string, fname_decl): Likewise.
3220         * c-common.c (make_fname_decl): Adjust.
3221         (struct fname_var_t): New struct.
3222         (fname_vars): New static array.
3223         (declare_function_name): Remove.
3224         (start_fname_decls, finish_fname_decls): New functions.
3225         (fname_as_string): New function from remnants of
3226         declare_function_name.
3227         (fname_string, fname_decl): New functions.
3228
3229         * c-decl.c (c_function_name_declared_p): Remove.
3230         (init_decl_processing): Don't generate __FUNCTION__ et al ids,
3231         don't call declare_function_name. Call start_fname_decls.
3232         (c_make_fname_decl): Adjust parameters. Generate the name. Don't
3233         clobber the line number. Call finish_decl.
3234         (start_function): Call start_fname_decls.
3235         (finish_function): Call finish_fname_decls.
3236         Remove c_function_name_declared_p.
3237         (push_c_function_context): Don't push c_function_name_declared_p.
3238         (pop_c_function_context): Don't pop c_function_name_declared_p.
3239         (c_begin_compound_stmt): Don't check c_function_name_declared_p.
3240         * c-parse.in (STRING_FUNC_NAME, VAR_FUNC_NAME): New tokens.
3241         (program): Call finish_fname_decls for C.
3242         (primary): Add VAR_FUNC_NAME.
3243         (reswords): Add slots for __FUNCTION__ et al.
3244         (rid_to_yy): Add mappings for __FUNCTION__ et al.
3245         (yylexname): If it's a STRING_FUNC_NAME generate the function name
3246         now. Don't look for VAR_DECLs containing __FUNCTION__ et al.
3247         * c-semantics.c (prune_unused_decls): Remove.
3248         (finish_stmt_tree): Don't call prune_unused_decls.
3249         (genrtl_decl_stmt): Don't prune unused decls here.
3250
3251 2001-04-24  Nick Clifton  <nickc@cambridge.redhat.com>
3252
3253         * dwarf2out.c (mem_loc_descriptor): If a SYMBOL_REF is in the
3254         constant pool, use the pool's SYMBOL_REF instead.
3255
3256         * config/v850/v850.h (STRICT_ALIGNMENT): Always set, even for the
3257         v850e.
3258
3259 2001-04-23  Joseph S. Myers  <jsm28@cam.ac.uk>
3260
3261         * c-convert.c (convert): When converting to a BOOLEAN_TYPE, avoid
3262         passing nested NOP_EXPRs to fold.
3263
3264 Mon Apr 23 14:32:12 CEST 2001  Jan Hubicka  <jh@suse.cz>
3265
3266         * reg-stack.c (emit_swap_insn): Do not get pass CALL_INSNs.
3267
3268 2001-04-22  Mark Mitchell  <mark@codesourcery.com>
3269
3270         * loop.c (loop_delete_insns): Add prototype.
3271
3272 2001-04-23  Phil Edwards  <pme@sources.redhat.com>
3273
3274         * configure.in:  Remove ENABLE_STD_NAMESPACE.
3275         * config.in:  Regenerated.
3276         * configure:  Regenerated.
3277
3278 2001-04-22  Stan Shebs  <shebs@apple.com>
3279
3280         * config.gcc (powerpc-*-darwin*): Move the flag in xm-darwin.h
3281         into xm_defines.
3282         * config/rs6000/xm-darwin.h: Remove file.
3283
3284 2001-04-22  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
3285
3286         * collect2.c (main): Use concat in lieu of xmalloc/sprintf.
3287         (write_c_file_stat): Likewise.
3288
3289         * dbxout.c (dbxout_init): Likewise.
3290
3291         * profile.c (output_func_start_profiler): Likewise.
3292
3293 2001-04-22  Philipp Thomas  <pthomas@suse.de>
3294
3295         * ABOUT-GCC-NLS: Now that gettext 0.10.37 is out,
3296         require it instead of the CVS version.
3297         * cpperror.c (v_message): Put a blank before the macro
3298         body to not confuse exgettext.
3299
3300 2001-04-21  Mark Mitchell  <mark@codesourcery.com>
3301
3302         * flow.c (proagate_one_insn): Remove useless assignment.
3303         * jump.c (delete_insn): Tidy.
3304         * loop.c (try_copy_prop): When deleting an instruction with a
3305         REG_RETVAL note, delete the entire libcall sequence.
3306         (loop_delete_insns): New function.
3307         * unroll.c (initial_reg_note_copy): Copy INSN_LIST notes, even if
3308         we're not substituting into them yet.
3309
3310 2001-04-21  Kazu Hirata  <kazu@hxi.com>
3311
3312         * config/h8300/h8300.c (general_operand_src): Fix a comment typo.
3313
3314         * config/sparc/sparc.c (sparc_flat_eligible_for_epilogue_delay):
3315         Fix a comment typo.
3316         * config/i960/i960.c (signed_arith_operand): Likewise.
3317
3318         * calls.c (expand_call): Fix a comment typo.
3319
3320 2001-04-20  Zack Weinberg  <zackw@stanford.edu>
3321
3322         * configure.in: Probe for times, clock, struct tms, and clock_t.
3323         * configure, config.in: Regenerate.
3324         * timevar.c: Replace ifdef forest in get_time with (relatively)
3325         straightforward series of checks based on autoconf's probes.
3326
3327 Fri Apr 20 12:24:50 2001  Jeffrey A Law  (law@cygnus.com)
3328
3329         * config/pa/som.h (NM_FLAGS): Define.
3330
3331 2001-04-20  Bernd Schmidt  <bernds@redhat.com>
3332
3333         * ia64.h (MD_SCHED_REORDER, MD_SCHED_REORDER2): Pass CLOCK to called
3334         function.
3335         * ia64-protos.h (ia64_sched_reorder): Additional arg for clock.
3336         * ia64.c (nop_cycles_until): New function.
3337         (prev_cycle, prev_first, last_issued): New static variables.
3338         (ia64_sched_reorder): Additional arg for clock.
3339         On final scheduling pass, emit extra NOPs as needed.
3340         Set prev_first and prev_cycle.
3341         (ia64_sched_reorder2): Pass clock arg down to ia64_sched_reorder.
3342         (ia64_variable_issue): Set last_issued.
3343
3344 2001-04-20  Alexandre Oliva  <aoliva@redhat.com>
3345
3346         * config/i386/i386.c (ix86_expand_int_movcc,
3347         ix86_expand_strlensi_unroll_1): Sign-extend CONST_INTs.
3348
3349 2001-04-20  Geoff Keating  <geoffk@redhat.com>
3350
3351         * config/rs6000/rs6000.md (ctrsi_internal1, ctrsi_internal2,
3352         ctrsi_internal3, ctrsi_internal4, ctrsi_internal5,
3353         ctrsi_internal6, ctrdi_internal1, ctrdi_internal2,
3354         ctrdi_internal3, ctrdi_internal4, ctrdi_internal5,
3355         ctrdi_internal6): In the short-branch case, this insn is only 4
3356         bytes long.  Reported by Reza Yazdani <reza@apple.com>.
3357
3358 2001-04-20  Jakub Jelinek  <jakub@redhat.com>
3359
3360         * reg-stack.c (check_asm_stack_operands): Issue error if "=t" resp.
3361         "=u" is used together with "st" resp. "st(1)" clobber.
3362
3363 2001-04-20  Jakub Jelinek  <jakub@redhat.com>
3364
3365         * gcse.c (gcse_main): Fix comment typo.
3366         (delete_null_pointer_check): Likewise.
3367         (hash_scan_set): Don't consider sets with REG_EQUIV MEM notes.
3368         * cse.c (cse_insn): Likewise.
3369         * function.c (fixup_var_refs_insns_with_hash): The sequence is
3370         toplevel.
3371
3372 2001-04-19  Zack Weinberg  <zackw@stanford.edu>
3373
3374         * toplev.c: Excise all code for the undocumented -dm option.
3375         (float_signal): Call signal just once, unconditionally.
3376
3377 2001-04-19  Geoff Keating  <geoffk@redhat.com>
3378
3379         * fold-const.c (fold): Use first_rtl_op rather than
3380         TREE_CODE_LENGTH when looping over parameters of a tree.
3381         Correct strange grouping in test for evaluated SAVE_EXPR.
3382
3383 Thu Apr 19 19:15:26 2001  Jeffrey A Law  (law@cygnus.com)
3384
3385         * config/pa/pa-linux.h (CPLUSPLUS_CPP_SPEC): Undefine.
3386         * config/pa/pa.h (CPLUSPLuS_CPP_SPEC): Define.
3387
3388         * config/pa/som.h (ASM_OUTPUT_FUNCTION_PREFIX): Truncate subspace
3389         name at 32 total characters.
3390         (ASM_OUTPUT_SECTION_NAME): Similarly.  Also, only support placing
3391         functions in named sections -- data items can still go into unique
3392         sections, but they have normal names (ie $LIT$ and $DATA$).
3393
3394         * config/pa/som.h (SUPPORTS_INIT_PRIORITY): SOM does not support
3395         INIT_PRIORITY.
3396
3397 2001-04-19 DJ Delorie  <dj@redhat.com>
3398
3399         * config/alpha/vms.h: Change OBJECT_SUFFIX and EXECUTABLE_SUFFIX
3400         to TARGET_OBJECT_SUFFIX and TARGET_EXECUTABLE_SUFFIX.
3401         * config/i386/cygwin.h: Likewise.
3402         * config/i386/mingw32.h: Likewise.
3403         * config/vax/vms.h: Likewise.
3404         * config/i386/djgpp.h: Remove NO_AUTO_EXE_SUFFIX.
3405
3406         * config/alpha/xm-vms.h: Change OBJECT_SUFFIX and EXECUTABLE_SUFFIX
3407         to HOST_OBJECT_SUFFIX and HOST_EXECUTABLE_SUFFIX.
3408         * config/i386/xm-cygwin.h: Likewise.
3409         * config/i386/xm-djgpp.h: Likewise.
3410         * config/i386/xm-mingw32.h: Likewise.
3411         * config/vax/xm-vms.h: Likewise.
3412
3413         * mkdeps.c (deps_add_default_target): Use TARGET_OBJECT_SUFFIX
3414         instead of OBJECT_SUFFIX.
3415         * collect2.c (find_a_file): Look for files matching the extension
3416         HOST_EXECUTABLE_SUFFIX instead of EXECUTABLE_SUFFIX.
3417         * gcc.c (DEFAULT_SWITCH_CURTAILS_COMPILATION): Depend on
3418         TARGET_EXECUTABLE_SUFFIX.
3419         (find_a_file): Use HOST_EXECUTABLE_SUFFIX.
3420         (make_relative_prefix): Likewise.
3421         (convert_filename): Use TARGET_ suffixes throughout.  Remove
3422         NO_AUTO_EXE_SUFFIX.
3423         (process_command): Likewise.
3424         (do_spec_1): Likewise.
3425         * java/lang.c (init_parse): Likewise.
3426
3427         * gcc.texi : Document four new options matching the pattern
3428         (HOST|TARGET)_(OBJECT|EXECUTABLE)_SUFFIX.  Remove documentation
3429         for deleted macros OBJECT_SUFFIX and EXECUTABLE_SUFFIX.  Remove
3430         documentation for NO_AUTO_EXE_SUFFIX.
3431
3432 2001-04-19  Mark Mitchell  <mark@codesourcery.com>
3433
3434         * toplev.h (struct lang_hooks): Allow decode_option to indicate
3435         that language-independent processing should not be done.
3436         * toplev.c (main): Adjust accordingly.
3437
3438         * rtl.texi (jump_insn): Expand on JUMP_LABEL documentation.
3439         * loop.c (load_mems): Handle a NULL JUMP_LABEL for a JUMP_INSN.
3440
3441         * mips.md (reload_outputdi): Require that operand0 be a
3442         general_operand.
3443
3444 2001-04-19  Jakub Jelinek  <jakub@redhat.com>
3445
3446         * invoke.texi (-Wshadow): Clarify.
3447
3448 2001-04-18  Mark Mitchell  <mark@codesourcery.com>
3449
3450         * loop.c (load_mems): Examine all the instructions in the loop
3451         before concluding that all jumps branch to the first instruction
3452         after the loop.
3453
3454 Wed Apr 18 20:32:03 2001  Christopher Faylor <cgf@cygnus.com>
3455
3456         * config/i386/xm-cygwin.h (CPP_SPEC): Fix typo.
3457
3458 2001-04-18  Jakub Jelinek  <jakub@redhat.com>
3459
3460         * cpp.texi (-Wwhite-space): Remove.
3461         (-Wall): -Wall does not imply -Wwhite-space.
3462
3463 2001-04-17  Zack Weinberg  <zackw@stanford.edu>
3464
3465         * dbxout.c (dbxout_init): If DBX_OUTPUT_GCC_MARKER is defined,
3466         use it instead of blindly generating a .stabs.
3467         * xcoffout.h: Define DBX_OUTPUT_GCC_MARKER so we put the type
3468         in the right place.
3469         * xcoffout.c: Don't bother defining default for N_CATCH.
3470         (UNKNOWN_STAB): Use internal_error.
3471         (stab_to_sclass): Remove now-unnecessary aborts.
3472         Remove #if 0'ed case N_BROWS.  Add #ifdef N_OPT block.
3473
3474 Tue Apr 17 21:41:11 2001  Jeffrey A Law  (law@cygnus.com)
3475
3476         * jump.c (mark_all_labels): Canonicalize the tail recursion
3477         label attached to CALL_PLACEHOLDER insns.
3478
3479 2001-04-17  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
3480
3481         * output.h (dump_flow_info, free_basic_block_vars,
3482         which_alternative): Delete redundant prototypes.
3483
3484         * rtl.h (bss_section): Likewise.
3485
3486 2001-04-17  Loren J. Rittle  <ljrittle@acm.org>
3487
3488         * dbxout.c (N_OPT): Define if not available from <stab.h>
3489
3490 2001-04-17  John David Anglin  <dave@hiauly1.hia.nrc.ca>
3491
3492         * vax.h (PROMOTE_PROTOTYPES): Define for compatibility with system
3493         libraries and native K&R compilers.
3494
3495 2001-04-16  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
3496
3497         * c-typeck.c (convert_arguments): Don't check for width changes
3498         with -Wtraditional.
3499
3500         * invoke.texi (-Wtraditional): Update documentation.
3501
3502 2001-04-16  Zack Weinberg  <zackw@stanford.edu>
3503
3504         * toplev.c (output_lang_identify): Delete.
3505         (compile_file): Don't call ASM_IDENTIFY_GCC or ASM_IDENTIFY_LANGUAGE.
3506         Don't generate gcc2_compiled. label.  Don't emit a nop if profiling.
3507         If IDENT_ASM_OP is defined, emit an .ident "GCC (GNU) <version>"
3508         after calling ASM_FILE_END.
3509
3510         * dbxout.c (dbxout_init): Don't call ASM_IDENTIFY_GCC_AFTER_SOURCE.
3511         Instead, unconditionally emit an N_OPT stab with string equal
3512         to STABS_GCC_MARKER, which defaults to "gcc2_compiled."
3513
3514         * defaults.h: Don't provide default for ASM_IDENTIFY_LANGUAGE.
3515
3516         * config/dbxelf.h, config/freebsd.h, config/nextstep.h,
3517         config/psos.h, config/ptx4.h, config/1750a/1750a.h,
3518         config/alpha/alpha.h, config/alpha/elf.h, config/arc/arc.h,
3519         config/arm/aof.h, config/arm/coff.h, config/arm/elf.h,
3520         config/arm/linux-elf.h, config/avr/avr.h, config/d30v/d30v.h,
3521         config/dsp16xx/dsp16xx.h, config/h8300/h8300.h,
3522         config/i370/i370.h, config/i386/beos-elf.h,
3523         config/i386/osf1elf.h, config/i386/osfrose.h,
3524         config/ia64/sysv4.h, config/m68k/3b1.h, config/m68k/auxgas.h,
3525         config/m68k/crds.h, config/m68k/hp320.h, config/m68k/m68kv4.h,
3526         config/m68k/mot3300.h, config/m68k/news.h, config/m68k/sgs.h,
3527         config/m68k/tower-as.h, config/mcore/mcore-elf.h,
3528         config/mips/iris6.h, config/mips/osfrose.h,
3529         config/mips/sni-svr4.h, config/pa/som.h, config/pdp11/pdp11.h,
3530         config/sparc/sp64-elf.h:
3531         Delete definitions of any or all of: ASM_IDENTIFY_GCC,
3532         ASM_IDENTIFY_GCC_AFTER_SOURCE, and ASM_IDENTIFY_LANGUAGE.
3533
3534         * config/elfos.h, config/freebsd.h, config/linux.h,
3535         config/alpha/elf.h, config/arm/linux-elf.h, config/i386/i386elf.h,
3536         config/i386/ptx4-i.h, config/mips/gnu.h, config/mips/linux.h,
3537         config/sparc/linux.h, config/sparc/linux64.h: Delete definitions
3538         of ASM_FILE_START which merely emit a .version directive.  Delete
3539         definitions of ASM_FILE_END which merely emit an .ident directive.
3540
3541         * config/avr/avr.h, config/vax/vax.h: Delete definition of
3542         ASM_IDENTIFY_GCC and move part of its logic into
3543         ASM_FILE_START.
3544
3545         * config/i386/att.h, config/i386/gas.h, config/i386/linux.h,
3546         config/sparc/linux-aout.h: Don't emit .version directive in
3547         ASM_FILE_START.
3548
3549         * config/i386/dgux.c, config/m88k/m88k.c, config/sh/sh.c
3550         (output_file_start): Correct comment.
3551
3552         * config/i386/osfrose.h: Don't emit trailing .ident directive.
3553         * config/m68k/mot3300.h: Override STABS_GCC_MARKER to "gcc2_compiled%"
3554         to match gdb.
3555         * config/pa/lib2funcs.asm: Delete gcc_compiled. label.
3556         * config/rs6000/aix.h: Correct comment.
3557
3558         * config/i386/i386afe.h: Delete.
3559         * config.gcc: Remove references to i386afe.h.
3560
3561         * tm.texi: Delete documentation of ASM_IDENTIFY_GCC.  The
3562         other macros deleted by this patch were undocumented.
3563
3564 Mon Apr 16 08:03:48 2001  Jeffrey A Law  (law@cygnus.com)
3565
3566         * pa.md (reload_outdi): Operand 0 must be a non hard register.
3567
3568         * pa.c (secondary_reload_class): SAR<->FP copies require a
3569         secondary register.
3570
3571         * install.texi (mips-mips-bsd): Update list of functions
3572         required to include memmove.
3573         * tm.texi (TARGET_MEM_FUNCTIONS): Update list of implicitly
3574         used functions to include memmove.
3575
3576 2001-04-15  Toon Moene  <toon@moene.indiv.nluug.nl>
3577
3578         * i386.md (sqrtdf2): SFmode should be DFmode.
3579
3580 2001-04-15  Alexandre Oliva  <aoliva@redhat.com>
3581
3582         * gcse.c (compute_ld_motion_mems): ASM outputs aren't moveable.
3583         (find_moveable_store): Likewise.
3584
3585 2001-04-15  Jim Wilson  <wilson@redhat.com>
3586
3587         * function.c (expand_function_end): Handle PARALLEL real_decl_rtl.
3588
3589 Sat Apr 14 16:24:19 CEST 2001  Jan Hubicka  <jh@suse.cz>
3590
3591         * i386.md (ashldi3_1_rex64): Add 'J' to the constraints
3592         (ashrdi3_1_rex64): Change 'n' constraint to 'J'.
3593
3594 2001-04-14  Alexandre Oliva  <aoliva@redhat.com>
3595
3596         * config/mn10300/mn10300.md (cmpsi): Tell reload to disregard the
3597         first alternative.
3598
3599 2001-04-14  Alan Modra  <amodra@one.net.au>
3600
3601         * pa.c (force_mode): New function.
3602         (emit_move_sequence): Use it instead of generating new rtx_REGs.
3603
3604 2001-04-13  Jim Wilson  <wilson@redhat.com>
3605
3606         * config/ia64/ia64.c (ia64_expand_epilogue): Emit alloc if sibcall_p.
3607         (first_instruction): New static variable.
3608         (rtx_needs_barrier): Return 1 for alloc.
3609         (init_insn_group_barriers): Set first_instruction.
3610         (rws_sum): Delete duplicate definition.
3611         (group_barrier_needed_p): Return 0 when first_instruction true.
3612         (safe_group_barrier_needed_p): Save and restore first_instruction
3613         around group_barrier_needed_p call.
3614
3615 Fri Apr 13 21:40:28 2001  Loren J. Rittle  <ljrittle@acm.org>
3616
3617         * expr.h (enum libfunc_index): Add LTI_memmove.
3618         (memmove_libfunc): Define macro.
3619         * optabs.c (init_optabs): Initialize memmove_libfunc.
3620         * expr.c (expand_assignment): Use memmove_libfunc instead of
3621         memcpy_libfunc.
3622
3623 2001-04-13  Alan Modra  <alan@linuxcare.com.au>
3624
3625         * pa.h (GO_IF_LEGITIMATE_ADDRESS): Disallow PIC LO_SUM
3626         fp mode addresses.
3627
3628 2001-04-13  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
3629
3630         * Makefile.in (reg-stack.o): Depend on reload.h.
3631         (insn-attrtab.o): Depend on flags.h.
3632
3633         * genattrtab (main): Include flags.h in insn-attrtab.c.
3634
3635         * reg-stack.c: Include reload.h.
3636
3637         * sparc.h (flag_pic): Delete redundant declaration.
3638
3639         * output.h (flag_pic): Likewise.
3640
3641         * tree.h (pedantic): Likewise.
3642
3643 2001-04-13  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
3644
3645         * Makefile.in (toplev.o, jump.o, regmove.o): Depend on reload.h
3646
3647         * jump.c, regmove.c, toplev.c: Include reload.h.
3648
3649         * reload.h (reload_cse_regs): Declare.
3650
3651         * rtl.h (find_equiv_reg, operands_match_p, safe_from_earlyclobber,
3652         reload_cse_regs, init_reload, mark_home_live, reload,
3653         init_caller_save): Delete redundant prototypes.
3654
3655 2001-04-13  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
3656
3657         * Makefile.in (ssa.o, regclass.o): Depend on $(EXPR_H).
3658
3659         * regclass.c, ssa.c: Include expr.h.
3660
3661         * rtl.h (memory_address, force_reg, emit_queue, emit_move_insn,
3662         gen_move_insn): Delete redundant declarations.
3663
3664 2001-04-13  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
3665
3666         * Makefile.in (CFLAGS, BOOT_CFLAGS): Partly revert 2000-10-27 patch.
3667         (stage1_build): Instead pass down STAGE1_CFLAGS here. Pass down
3668         MAKEINFO and MAKEINFOFLAGS too.
3669         (stage4_build): Correctly order -B flags.
3670
3671 2001-04-13  Alan Modra  <amodra@one.net.au>
3672
3673         * pa.c (hppa_init_pic_save): Set rtx_unchanging for
3674         PIC_OFFSET_TABLE_SAVE_RTX.
3675         (zdepi_cint_p): Describe zdepi insn.
3676         Formatting and white space fixes throughout file.
3677
3678         * pa.c (uint32_operand): Don't use long constant >= 2^32.
3679         (emit_move_sequence): Use HOST_WIDE_INT constants.  Don't worry
3680         about 32->64 bit sign extension if 32 bit HOST_WIDE_INTs.
3681         (compute_movstrsi_length): Make `align' unsigned to avoid warning.
3682         (output_64bit_and): Use plain `int's for shift counts.
3683         (output_64bit_ior): Likewise.
3684         (function_arg_partial_nregs): Use unsigned vars to avoid warnings.
3685         * pa.h (CONST_OK_FOR_LETTER_P): Use HOST_WIDE_INT constants for case
3686         `N', and simplify.
3687
3688         * pa-hpux10.h (NEW_HP_ASSEMBLER): Define to 1.
3689         * pa-hpux11.h (NEW_HP_ASSEMBLER): Likewise.
3690         * pa.h (LEGITIMATE_CONSTANT_P) Collapse two defines depending on
3691         NEW_HP_ASSEMBLER into one.  Kill warnings.
3692
3693         * pa-gas.h: Delete file.
3694         * config.gcc: Match `parisc' as well as `hppa' for cpu_type=pa.
3695         Add new targets hppa*64*-*-linux* and parisc*64*-*-linux*.  Update
3696         hppa*-*-linux*.  For all pa targets, remove pa/gas.h from tm_file,
3697         instead setting MASK_GAS | MASK_JUMP_IN_DELAY in target_cpu_default2.
3698
3699         * config/pa/mill32.S: New file.
3700         * config/pa/mill64.S: New file.
3701         * config/pa/t-linux (LIBGCC1, CROSS_LIBGCC1, LIB1ASMFUNCS,
3702         LIB1ASMSRC, CRTSTUFF_T_CFLAGS_S, TARGET_LIBGCC2_CFLAGS): Define.
3703         * config/pa/t-linux64: New file.
3704         * config/pa/t-pa64 (CROSS_LIBGCC1): Change to libgcc1-asm.a
3705         (LIB1ASMFUNCS, LIB1ASMSRC): Define.
3706         (TARGET_LIBGCC2_CFLAGS): Add -Dpa64=1 -DELF=1.
3707
3708         * elfos.h (SELECT_SECTION): Undef before defining.
3709         * pa-linux.h (LINUX_DEFAULT_ELF, PTRDIFF_TYPE, CPP_SPEC): Remove.
3710         (LIB_SPEC): Remove -lmilli.
3711         (DBX_REGISTER_NUMBER): Remove.
3712         (PREFERRED_DEBUGGING_TYPE, DWARF2_ASM_LINE_DEBUG_INFO,
3713         (DWARF2_UNWIND_INFO, ASM_SPEC, LINK_SPEC, FUNCTION_OK_FOR_SIBCALL,
3714         NO_PROFILE_COUNTERS, SELECT_RTX_SECTION, INCOMING_RETURN_ADDR_RTX,
3715         DWARF_FRAME_RETURN_COLUMN, STRING_ASM_OP, TEXT_SECTION_ASM_OP,
3716         DATA_SECTION_ASM_OP, BSS_SECTION_ASM_OP, ASM_FILE_START,
3717         ASM_OUTPUT_DEF, ASM_OUTPUT_ADDR_VEC_ELT, ASM_OUTPUT_ADDR_DIFF_ELT,
3718         ASM_OUTPUT_LABEL, ASM_GLOBALIZE_LABEL, ASM_DECLARE_FUNCTION_NAME,
3719         TARGET_GAS): Define.
3720         * pa.c (output_arg_descriptor): Disable for TARGET_ELF32.
3721         (function_arg): If TARGET_ELF32, pass fp args in both general and fp
3722         regs if we don't have a prototype.
3723         * pa.md (canonicalize_funcptr_for_compare): Not for TARGET_ELF32.
3724         * pa.h (TARGET_ELF32): Default to 0 if undefined.
3725         (EH_RETURN_DATA_REGNO, EH_RETURN_STACKADJ_RTX,
3726         EH_RETURN_HANDLER_RTX): Define.
3727         * pa32-regs.h (DBX_REGISTER_NUMBER): Remove unnecessary test.
3728         (DWARF_FRAME_REGNUM): Define.
3729         * pa64-regs.h (DWARF_FRAME_REGNUM): Define.
3730         * pa32-linux.h: New file.
3731         * pa64-linux.h: New file.
3732
3733         * pa-64.h (WCHAR_TYPE, WCHAR_TYPE_SIZE): Define.
3734         (ASM_OUTPUT_DOUBLE_INT): Format, protect macro with do..while.
3735         (LINK_SPEC, LIB_SPEC, MD_EXEC_PREFIX, MD_STARTFILE_PREFIX,
3736         NEW_HP_ASSEMBLER, ASM_FILE_START, OBJECT_FORMAT_ELF,
3737         DWARF2_DEBUGGING_INFO, PREFERRED_DEBUGGING_FORMAT,
3738         DWARF2_ASM_LINE_DEBUG_INFO, USE_CONST_SECTION, CONST_SECTION_ASM_OP,
3739         CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP, INIT_SECTION_ASM_OP,
3740         FINI_SECTION_ASM_OP, EXTRA_SECTIONS, EXTRA_SECTION_FUNCTIONS,
3741         READONLY_DATA_SECTION, CONST_SECTION_FUNCTION, CTORS_SECTION_FUNCTION,
3742         DTORS_SECTION_FUNCTION, ASM_OUTPUT_SECTION_NAME, MAKE_DECL_ONE_ONLY,
3743         UNIQUE_SECTION_P, UNIQUE_SECTION, INT_ASM_OP, ASM_OUTPUT_CONSTRUCTOR,
3744         ASM_OUTPUT_DESTRUCTOR, TYPE_ASM_OP, SIZE_ASM_OP, ASM_WEAKEN_LABEL,
3745         TYPE_OPERAND_FMT, ASM_DECLARE_RESULT): Move to..
3746         * pa64-hpux.h: New file.
3747         (ASM_FILE_START): Correct typo.
3748         (PREFERRED_DEBUGGING_FORMAT): Rename to PREFERRED_DEBUGGING_TYPE.
3749         * config.gcc: Modify for above.
3750
3751 Fri Apr 13 00:09:22 EDT 2001  John Wehle  (john@feith.com)
3752
3753         * jump.c (jump_optimize_1): Don't delete dead stores here.
3754         * toplev.c (rest_of_compilation): Call delete_trivially_dead_insns
3755         prior to running jump optimize before cse2.
3756
3757 2001-04-12  Richard Henderson  <rth@redhat.com>
3758
3759         * Makefile.in (regmove.o): Depend on except.h.
3760         * regmove.c: Include it.
3761
3762 2001-04-12  Stan Shebs  <shebs@apple.com>
3763
3764         * objc/objc-act.c: Remove all code ifdefed with the never-used
3765         macro OBJC_INT_SELECTORS.
3766         * config/d30v/d30v.h: Remove commented-out ref to OBJC_INT_SELECTORS.
3767         * tm.texi: Remove doc for OBJC_INT_SELECTORS.
3768
3769 Thu Apr 12 18:13:37 2001  Rodney Brown  <RodneyBrown@mynd.com>
3770
3771         * config/pa/quadlib.c: Add prototypes.
3772
3773 2001-04-12  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
3774
3775         * bitmap.h (debug_bitmap): Delete redundant prototype.
3776
3777         * rtl.h (get_frame_size): Likewise.
3778
3779 2001-04-12  Jim Wilson  <wilson@redhat.com>
3780
3781         * config/ia64/ia64.md (extendsfdf2, extendsftf2, extenddftf2): Simplify
3782         to just emit an fnorm.
3783
3784 2001-04-12  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
3785
3786         * c-common.h (truthvalue_conversion, type_for_mode,
3787         type_for_size): Delete redundant declarations.
3788
3789         * c-lex.h (is_class_name): Likewise.
3790
3791         * c-tree.h (pedantic, convert, getdecls, gettags,
3792         global_bindings_p, init_decl_processing, insert_block,
3793         maybe_build_cleanup, poplevel, print_lang_decl,
3794         print_lang_identifier, print_lang_type, pushdecl, pushlevel,
3795         set_block, incomplete_type_error, build_function_call,
3796         lvalue_or_else, mark_addressable): Likewise.
3797
3798         * expr.h (expand_tree_builtin): Likewise.
3799
3800 2001-04-12  Mark Mitchell  <mark@codesourcery.com>
3801
3802         * invoke.texi: Document --param max-gcse-memory.
3803
3804 2001-04-12  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
3805
3806         * configure.in (errno): Check for declaration.
3807         * configure, config.in: Regenerated.
3808
3809         * system.h (errno): Only declare if not already done.
3810
3811 2001-04-12  Alexandre Oliva  <aoliva@redhat.com>
3812
3813         * recog.c (general_operand, immediate_operand,
3814         nonmemory_operand): Require CONST_INTs to be sign-extended
3815         values for their modes.
3816
3817 2001-04-12  Alexandre Oliva  <aoliva@redhat.com>
3818
3819         * expmed.c (store_bit_field): Truncate CONST_INTs.
3820         (expand_mult_highpart, expand_divmod): Likewise.
3821         * expr.c (convert_modes, store_field): Likewise.
3822         * integrate.c (expand_inline_function): Use promote_mode() to
3823         determine whether to convert_modes() an argument as signed
3824         or unsigned.
3825         * optabs.c (expand_binop): Get CONST_INT operands
3826         sign-extended for their appropriate modes.
3827         * stmt.c (emit_case_nodes): Convert node values to the
3828         appropriate mode.
3829         (expand_end_case): Convert minval and range to the appropriate
3830         mode.
3831         * unroll.c (loop_iterations): Truncate abs_diff to the mode of
3832         the iteration variable.
3833         * varasm.c (immed_double_const): Don't require words to be
3834         narrower than host wide ints to properly sign-extend
3835         CONST_INTs.
3836
3837 2001-04-12  kaz Kojima  <kkojima@rr.iij4u.or.jp>
3838
3839         * sh.md (builtin_setjmp_receiver): New expander.
3840
3841 2001-04-12  David Edelsohn  <dje@watson.ibm.com>
3842
3843         * config/rs6000/rs6000.c (rs6000_emit_move): Do not
3844         special-case HOST_BITS_PER_WIDE_INT != 32.  Use same criteria
3845         for generating CONST_INT and CONST_DOUBLE.
3846
3847 2001-04-12  Alexandre Oliva  <aoliva@redhat.com>
3848
3849         * config/rs6000/rs6000.c (logical_operand): CONST_INTs are
3850         already sign-extended.
3851         (rs6000_emit_prologue): Make register iterator signed.
3852         (rs6000_emit_epilogue): Likewise.
3853         * config/rs6000/rs6000.md (addsi3, adddi3): Sign-extend high
3854         and low.
3855         (movsf split, movdf split): Sign-extend CONST_INTs.
3856         (movdi splits): Likewise.
3857
3858 2001-04-12  Kelley Cook <kelley.cook@home.com>
3859
3860         * config-lang.in (lang_dirs): Add in zlib.
3861
3862 2001-04-11  Alexandre Oliva  <aoliva@redhat.com>
3863
3864         * config/i386/i386.md: Apply trunc_int_for_mode() to GEN_INT
3865         operands that make it to RTL.
3866
3867 2001-04-11  Stan Shebs  <shebs@apple.com>
3868
3869         Add Darwin (Mac OS X kernel) native support.
3870         * config.gcc (powerpc-*-darwin*): Add native bits.
3871         * config/darwin.c: New file, generic Darwin support functions.
3872         * config/darwin.h: New file, generic Darwin definitions.
3873         * config/darwin-protos.h: New file, generic Darwin prototypes.
3874         * rs6000/darwin.h: New file, Darwin for PowerPC.
3875         * rs6000/t-darwin: New file, Darwin makefile fragment.
3876         * rs6000/rs6000.h (OBJECT_MACHO): New macro.
3877         (TARGET_MACHO): Ditto.
3878         (rs6000_abi): Add ABI_DARWIN.
3879         (RS6000_REG_SAVE): Add ABI_DARWIN case.
3880         (RS6000_SAVE_AREA): Ditto.
3881         (FP_ARG_MAX_REG): Ditto.
3882         (RETURN_ADDRESS_OFFSET): Ditto.
3883         * rs6000/rs6000.c (rs6000_legitimize_address): Add TARGET_MACHO
3884         cases.
3885         (rs6000_emit_move): Add ABI_DARWIN cases.
3886         (print_operand): Ditto.
3887         (first_reg_to_save): Ditto.
3888         (rs6000_stack_info): Ditto, also align stack by 16 instead of 8.
3889         (debug_stack_info): Ditto.
3890         (rs6000_emit_prologue): Ditto.
3891         (rs6000_emit_epilogue): Ditto.
3892         (output_profiler_hook): Ditto.
3893         (output_function_profiler): Ditto.
3894         (rs6000_add_gc_roots): Call machopic_add_gc_roots if TARGET_MACHO.
3895         (output_mi_thunk): Add TARGET_MACHO case.
3896         (add_compiler_stub): Ditto.
3897         (output_compiler_stub): Ditto.
3898         (no_previous_def): Ditto.
3899         (output_call): Ditto.
3900         (machopic_output_stub): Ditto.
3901         (rs6000_machopic_legitimize_pic_address): Ditto.
3902         (toc_section): Ditto.
3903         * rs6000/rs6000.md (addsi3_high): New TARGET_MACHO pattern.
3904         (macho_high): Ditto.
3905         (macho_low): Ditto.
3906         (movsi_low): Ditto.
3907         (load_macho_picbase): Ditto.
3908         (call): Add TARGET_MACHO case to modify function.
3909         (call_value): Ditto.
3910         (call_nonlocal_sysv): Add ABI_DARWIN case.
3911         (call_value_nonlocal_sysv): Ditto.
3912         * rs6000/rs6000-protos.h (rs6000_machopic_legitimize_pic_address):
3913         Add prototype.
3914         (machopic_output_stub): Ditto.
3915         * ginclude/stddef.h: Test _BSD_WCHAR_T_DEFINED_.
3916
3917 2001-04-11  Mark Mitchell  <mark@codesourcery.com>
3918
3919         * dwarf2out.c (modified_type_die): Don't create new types here.
3920         * tree.h (get_qualified_type): New function.
3921         (build_qualified_type): Adjust comment.
3922         * tree.c (get_qualified_type): New function.
3923         (build_qualified_type): Use it.
3924
3925 2001-04-11  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
3926
3927         * cpp.texi (-Wtraditional): Update description.
3928
3929         * invoke.texi (-Wtraditional): Likewise.
3930
3931 2001-04-11  Jim Wilson  <wilson@redhat.com>
3932
3933         * config/ia64/ia64.h (FUNCTION_ARG_BOUNDARY): Return 128 if argument
3934         requires more than 64 bits of alignment.
3935
3936 2001-04-11  Neil Booth  <neil@daikokuya.demon.co.uk>
3937
3938         * cpplib.c (do_line): Sanity check iff enable checking.
3939
3940 2001-04-11  Richard Henderson  <rth@redhat.com>
3941
3942         * Makefile.in (insn-recog.o): Depend on toplev.h.
3943         (insn-emit.o, doloop.o): Likewise.
3944         * genrecog.c, genemit.c: Include toplev.h in generated file.
3945         * doloop.c: Include toplev.h.
3946
3947 2001-04-11  Mark Mitchell  <mark@codesourcery.com>
3948
3949         * Makefile.in (gcse.o): Depend on params.h.
3950         * gcse.c: Include params.h.
3951         (gcse_main): Don't do GCSE if doing so will take inordinate
3952         amounts of memory.
3953         * params.def (PARAM_MAX_GCSE_MEMORY): New  parameter.
3954         * params.h (MAX_GCSE_MEMORY): New macro.
3955
3956 2001-04-11  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
3957
3958         * Makefile.in (insn-output.o): Depend on $(EXPR_H).
3959
3960         * genoutput.c (output_prologue): Include expr.h in insn-output.c.
3961
3962 2001-04-11  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
3963
3964         * output.h (assemble_real): Declare if REAL_VALUE_TYPE is defined.
3965
3966         * real.h (ereal_atof, real_value_truncate, target_isnan,
3967         target_isinf, target_negative, assemble_real, debug_real): Delete
3968         redundant prototypes.
3969
3970         * Makefile.in (ifcvt.o): Depend on toplev.h.
3971
3972         * c-semantics.c: Include expr.h.
3973
3974         * ifcvt.c: Include toplev.h.
3975
3976         * expr.h (rtx_equal_p): Delete prototype.
3977
3978         * rtl.h (exact_log2_wide, floor_log2_wide, permalloc,
3979         protect_from_queue, gen_jump, gen_beq, gen_bge, gen_ble,
3980         eliminate_constant_term, expand_complex_abs, find_single_use,
3981         make_tree, init_expr_once, init_optabs, supports_one_only):
3982         Likewise.
3983
3984         * tree.h (exact_log2_wide, floor_log2_wide, expand_null_return,
3985         rest_of_type_compilation, emit_queue, do_pending_stack_adjust,
3986         expand_assignment, store_expr, emit_line_note_after,
3987         emit_line_note_force, split_specs_attrs, label_rtx): Likewise.
3988
3989         * toplev.h (exact_log2_wide, floor_log2_wide): Add prototype.
3990
3991         * sparc-protos.h: Delete redundant prototypes.
3992
3993 2001-04-11  Vladimir Makarov  <vmakarov@toke.toronto.redhat.com>
3994
3995         * reload.c (push_reload): Add condition missed in SUBREG byte
3996         offset patch.
3997
3998 Wed Apr  4 00:28:23 2001  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
3999
4000         * sparc/sol2-sld-64.h (STARTFILE_SPEC): Added missing blank.
4001
4002 Wed Apr 11 14:06:10 CEST 2001  Jan Hubicka  <jh@suse.cz>
4003
4004         * i386.md (floatsisf_sse): Fix output template
4005         * i386.c (ix86_expand_fp_movcc)
4006
4007         * reg-stack.c (emit_pop_insn): Handle complex modes.
4008         (move_for_stack_reg): Emit proper move mode.
4009         (subst_stack_regs_pat): Handle complex modes.
4010
4011 2001-04-11  Jakub Jelinek  <jakub@redhat.com>
4012
4013         * cpplex.c (_cpp_lex_token): Only warn if -Wcomment.
4014
4015 2001-04-10  Richard Henderson  <rth@redhat.com>
4016
4017         * libgcc2.h (__terminate_func_ptr): Remove typedef.
4018         (__pure_virtual, __terminate, __terminate_set_func,
4019         __default_terminate, __throw_type_match, __empty,
4020         __get_eh_context, __get_eh_info, __get_dynamic_handler_chain,
4021         __eh_rtime_match, __unwinding_cleanup, __rethrow,
4022         __sjthrow, __sjpopnthrow, __eh_alloc, __eh_free):
4023         Remove prototypes of deleted functions.
4024
4025 2001-04-10  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
4026
4027         * c-typeck.c (convert_arguments): -Wtraditional now activates
4028         -Wconversion warnings, except for changes in signed-ness.
4029         Detect complex<->int & int<->complex conversions as well.
4030
4031         * invoke.texi (-Wtraditional): Document it.
4032
4033 Tue Apr 10 17:45:50 2001  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
4034
4035         * gcse.c (update_ld_motion_stores): Don't use variable I for an insn.
4036         * flow.c (set_block_for_new_insns): Remove needless cast and
4037         properly check for unset block number.
4038
4039 2001-04-10  Andrew MacLeod  <amacleod@redhat.com>
4040
4041         * function.c (purge_single_hard_subreg_set): Only check REGNO if
4042         the subreg was a hard register. Pseudos are left as subregs.
4043
4044 2001-04-09  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
4045
4046         * Makefile.in (LIB2FUNCS_STATIC_EXTRA): New macro.
4047         (LIB2ADD_ST): New macro, pass it to mklibgcc.
4048         * mklibgcc.in (libgcc2_st_objs): New variable, set it from LIB2ADD_ST.
4049         (libgcc_st_objs): New, set from libgcc2_st_objs. Use it for libgcc.a.
4050         * config/rs6000/t-ppccomm (LIB2FUNCS_STATIC_EXTRA): New macro.
4051
4052 2001-04-09  Bo Thorsen  <bo@suse.co.uk>
4053
4054         * config/i386/i386.md: "TARGET_64BIT && TARGET_64BIT": Removed one.
4055
4056 2001-04-09  Andrew MacLeod  <amacleod@redhat.com>
4057
4058         * output.h (set_block_num): Missed it earlier, remove deprecated
4059         prototype.
4060
4061 2001-04-09  Andrew MacLeod  <amacleod@redhat.com>
4062
4063         * gcse.c (oprs_unchanged_p): Pass basic_block to load_killed_in_block_p.
4064         (load_killed_in_block_p): Change bb parameter from int to basic_block.
4065         (oprs_not_set_p): Pass basic_blocks instead of ints as parameters.
4066         (handle_rd_kill_set): Change bb parameter from int to basic_block.
4067         (compute_kill_rd): Pass basic_blocks instead of ints as parameters.
4068         (expr_killed_p): Change bb parameter from int to basic_block, pass
4069         basic_blocks instead of ints as parameters.
4070         (compute_ae_kill): Pass basic_blocks instead of ints as parameters.
4071         (expr_reaches_here_p_work, expr_reaches_here_p): Change bb parameter
4072         from int to basic_block, pass basic_blocks instead of ints as parms.
4073         (pre_expr_reaches_here_p_work, pre_expr_reaches_here_p): Change bb
4074         parameter from int to basic_block, pass basic_blocks instead of ints.
4075         (process_insert_insn): Pass basic_blocks instead of ints as parameters.
4076         (insert_insn_end_bb): Change bb parameter from int to basic_block,
4077         pass basic_blocks instead of ints.
4078         (pre_edge_insert, pre_insert_copy_insn, pre_insert_copies): Pass
4079         basic_blocks instead of ints as parameters.
4080         (pre_delete): Pass basic_blocks instead of ints as parameters.
4081         (hoist_expr_reaches_here_p): Change bb parameter from int to
4082         basic_block, pass basic_blocks instead of ints.
4083         (hoist_code): Pass basic_blocks instead of ints as parameters.
4084         (reg_set_info, store_ops_ok, store_killed_after, store_killed_before):