OSDN Git Service

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