OSDN Git Service

2001-07-13 H.J. Lu (hjl@gnu.org)
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
1 2001-07-13  H.J. Lu  (hjl@gnu.org)
2
3         * config/elfos.h (UNIQUE_SECTION): Enable .bss section with
4         the correct patch.
5
6 2001-07-13  Geoffrey Keating  <geoffk@redhat.com>
7
8         Revert H.J. Lu's UNIQUE_SECTION patch of 2001-07-13.
9
10 2001-07-13  Joseph S. Myers  <jsm28@cam.ac.uk>
11
12         * c-common.c (decl_attributes): Take a pointer to the node to
13         which attributes are to be attached, and a flags argument.
14         * c-common.h (enum attribute_flags): New.
15         (decl_attributes): Update prototype.
16         * c-decl.c (start_decl, push_parm_decl, finish_struct,
17         finish_enum, start_function): Update calls to decl_attributes.
18         * c-parse.in (component_declarator, component_notype_declarator,
19         label): Update calls to decl_attributes.
20
21 Fri Jul 13 23:04:00 2001  Denis Chertykov  <denisc@overta.ru>
22
23         * config/avr/avr.md (strlenhi): PARALLEL keyword removed.
24         * config/avr/avr.c (legitimate_address_p): Return value changed
25         from letter to register classes. For better debugging.
26
27 2001-07-13  Kazu Hirata  <kazu@hxi.com>
28
29         * jump.c (reversed_comparison_code_parts): Fix comment typos.
30
31 2001-07-13  H.J. Lu  (hjl@gnu.org)
32
33         * config/elfos.h (UNIQUE_SECTION): Enable .bss section.
34
35 2001-07-13  Marc Espie  <espie@cvs.openbsd.org>
36
37         * config.gcc (*-*-openbsd*):  Add fragment to compile libgcc
38         correctly for shared configurations.
39         * config/t-libgcc-pic:  New.
40         * config/{i386,m68k,sparc}/t-openbsd:  New.
41         * config/openbsd.h:  Include cpu_spec in cpp_spec where needed.
42         Support -shared.  Support debugging libraries with -g.
43         * config/i386/openbsd.h:  Correct ASM_COMMENT_START.  Ensure dwarf2
44         frame information does not emit pointer diffs.
45         * config/sparc/openbsd.h:  Ensure dwarf2 frame information does not
46         emit pointer diffs.
47
48 2001-07-13  Geoffrey Keating  <geoffk@redhat.com>
49
50         Revert Jan Hubicka's patch of Fri Jul 13 14:46:21 CEST 2001.
51
52 2001-07-13  David Edelsohn  <edelsohn@gnu.org>
53
54         * combine.c (try_combine): Ensure const_int pow2 is positive.
55
56 2001-07-13  Hartmut Penner  <hpenner@de.ibm.com>
57
58         * config.gcc: Add configuration for s/390. 
59         * config/s390/s390.c: New. Subroutines for code generation.
60         * config/s390/s390.h: New. Definitions for s/390.
61         * config/s390/s390-protos.h: New. Prototypes.
62         * config/s390/linux.h: New. Definitions for linux for s/390.
63         * config/s390/linux64.h: New. Definitions for linux for zSeries.
64         * config/s390/t-linux: New. Makefile fragment.
65         * config/s390/s390.md: New. Machine description for s/390 and zSeries.
66         * config/s390/fixdfdi.h: New. Fix L_fix*di.
67         
68 Fri Jul 13 14:46:21 CEST 2001  Jan Hubicka  <jh@suse.cz>
69
70         * emit-rtl.c (try_split): Update mark_jump_label call.
71         * flow.c (find_sub_basic_blocks): Likewise.
72         * jump.c (cross_jump_death_matters, find_cross_jump, do_cross_jump,
73         jump_back_p): Kill.
74         (mark_all_labels): Kill second parameter.
75         (jump_optimize, jump_optimize_1): Kill cross_jump parameter.
76         (rebuild_jump_labels, jump_optimize_minimal): Update call
77         of jump_optimize_1.
78         (jump_optimize_1): Kill crossjumping code.
79         (mark_jump_label): Kill cross_jump parameter.
80         * rtl.h (mark_jump_label, jump_optimize): Update prototypes.
81         (JUMP_CROSS_JUMP, JUMP_CROSS_JUMP_DEATH_MATTERS): Kill.
82         * reg-stack.c (reg_to_stack): Do not rebuild if not needed; do
83          splitting.
84         * toplev.c (enum dump_file_index): Kill DFI_jump2; put DFI_stack before
85         DFI_bpro.
86         (rest_of_compilation): Update calls to jump_optimize; kill jump2 pass;
87         reorganize passes to do reg-stack first, bb-reorder second.
88         * invoke.texi (-d letters doc): Remove the jump2 pass.
89
90 2001-07-12  Steve Ellcey <sje@cup.hp.com>
91
92         * toplev.c (compile_file): Put call of ASM_FILE_START inside ifdef.
93
94 Thu Jul 12 17:57:16 CEST 2001  Jan Hubicka  <jh@suse.cz>
95
96         * flow.c (try_optimize_cfg): Delete whole chain of trivially dead
97         basic blocks.
98         (verify_flow_info): Make diagnostics prettier.
99
100 Thu Jul 12 16:48:54 CEST 2001  Jan Hubicka  <jh@suse.cz>
101
102         * flow.c (find_basic_blocks_1): Do not emit NOP after call.
103
104         * flow.c (outgoing_edges_match): Return early if condition reversal
105         failed.
106
107 2001-07-06  Richard Sandiford  <rsandifo@redhat.com>
108
109         * config/mips/mips.c (print_operand): Extend '%D' to memory operands.
110         (mips_move_2words): When splitting a move into two instructions,
111         prefix the second address operand with '%D'.
112
113 2001-07-12  Neil Booth  <neil@daikokuya.demon.co.uk>
114
115         * Makefile.in (final.o): Depend on debug.h.
116         * dbxout.c (dbxout_begin_block, dbxout_end_block): New.
117         (dbx_debug_hooks): Add new hooks.
118         (xcoff_debug_hooks): New.
119         * debug.c (debug_nothing_file_int_int): New.
120         (do_nothing_debug_hooks): Update.
121         * debug.h (gcc_debug_hooks): New hooks begin_block and end_block.
122         (debug_nothing_file_int_int): New.
123         * dwarf2out.c (dwarf2out_begin_block, dwarf2out_end_block): Make
124         static, update prototype.
125         (dwarf2_debug_hooks): Update.
126         * dwarf2out.h (dwarf2out_begin_block, dwarf2out_end_block): Remove.
127         * dwarfout.c (dwarfout_begin_block, dwarfout_end_block): Make
128         static, update prototype.
129         (dwarf_debug_hooks): Update.
130         * dwarfout.h (dwarfout_begin_block, dwarfout_end_block): Remove.
131         * final.c: Include debug.h.
132         (final_scan_insn): Use debug hooks when beginning and ending blocks.
133         * sdbout.c (sdbout_begin_block, sdbout_end_block): Make
134         static, update prototype.
135         (sdb_debug_hooks): Update.
136         * sdbout.h (sdbout_begin_block, sdbout_end_block): Remove.
137         * toplev.c: Distinguish between xcoff and dbx.
138
139         * f/lex.c (ffelex_file_pop_, ffelex_file_push_, ffelex_hash_):
140         Call all debug hooks, not just dwarf ones.
141
142 2001-07-11  Timothy Wall  <twall@redhat.com>
143
144         * config.gcc: Add configuration for AIX5/IA64.
145         * config/ia64/aix.h: New.  AIX5/IA64-specific configuration.
146         * config/ia64/crt[in].asm: New.  Generic static ctor/dtor
147         support prefix/suffix code.
148         * config/ia64/t-aix: New.  Makefile fragment.
149         * config/ia64/unwind-aix.c: New.  Unwind table entry lookup.
150
151 2001-07-11  Kazu Hirata  <kazu@hxi.com>
152
153         * recog.c (validate_change): Fix a comment typo.
154
155 2001-07-11  Neil Booth  <neil@daikokuya.demon.co.uk>
156
157         * Makefile.in (c-lex.o): Wrap long lines.  Depend on debug.h.
158         * c-lex.c (cb_file_change, cb_define, cb_undef): Use debug
159         hooks directly.
160         * dbxout.c (dbx_debug_hooks): Add new hooks.
161         (dbxout_start_new_source_file): Rename dbxout_start_source_file,
162         make static.
163         (dbxout_resume_previous_source_file): Rename dbxout_end_source_file,
164         make static.
165         * dbxout.h (dbxout_start_new_source_file,
166         dbxout_resume_previous_source_file): Delete.
167         * debug.c (do_nothing_debug_hooks): Add new hooks.
168         (debug_nothing_init_finish): Rename debug_nothing_file_charstar.
169         (debug_nothing_int_charstar, debug_nothing_int): New.
170         * debug.h (gcc_debug_hooks): New hooks define, undef,
171         start_source_file and end_source_file.
172         (debug_nothing_init_finish): Rename debug_nothing_file_charstar.
173         (debug_nothing_int_charstar, debug_nothing_int): New.
174         * dwarf2out.c (dwarf2_debug_hooks): Add new hooks.  Move into
175         the conditionally compiled section.
176         (dwarf2out_start_source_file, dwarf2out_end_source_file,
177         dwarf2out_define, dwarf2out_undef): Make static.
178         * dwarf2out.h (dwarf2out_start_source_file, dwarf2out_end_source_file,
179         dwarf2out_define, dwarf2out_undef): Remove.
180         * dwarfout.c (dwarf_debug_hooks): Add new hooks.
181         (dwarfout_start_source_file, dwarfout_end_source_file,
182         dwarfout_define, dwarfout_undef): Make static.
183         (dwarfout_start_source_file_check,
184         dwarfout_end_source_file_check): New.
185         (dwarfout_define, dwarfout_finish): Update.
186         * dwarfout.h (dwarfout_start_new_source_file,
187         dwarfout_resume_previous_source_file, dwarfout_define,
188         dwarfout_undef): Remove.
189         * sdbout.c (sdb_debug_hooks): Add new hooks.
190         (sdbout_start_new_source_file): Rename sdbout_start_source_file,
191         make static.
192         (sdbout_resume_previous_source_file): Rename sdbout_end_source_file,
193         make static, take an arg.
194         * sdbout.h (sdbout_start_new_source_file,
195         sdbout_resume_previous_source_file): Delete.
196         * toplev.c (debug_start_source_file, debug_end_source_file,
197         debug_define, debug_undef): Delete.
198         * toplev.h (debug_start_source_file, debug_end_source_file,
199         debug_define, debug_undef): Delete.
200
201         * java/jcf-parse.c: Include debug.h.
202         (parse_class_file): Update to use debug hooks directly.
203         * java/Make-lang.in (jcf-parse.o): Depend on debug.h.
204
205 Wed Jul 11 10:07:18 2001  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
206
207         * alias.c (set_mem_alias_set): New function.
208         * rtl.h (set_mem_alias_set): Declare it.
209         * builtins.c (expand_builtin_return_addr): Call it instead of
210         using MEM_ALIAS_SET accessor.
211         (expand_builtin_setjmp_setup, expand_builtin_longjmp): Likewise.
212         (get_memory_rtx, expand_builtin_va_arg): Likewise.
213         (expand_builtin_va_copy):Likewise.
214         * caller-save.c (setup_save_areas): Likewise.
215         * calls.c (compute_argument_addresses): Likewise.
216         * explow.c (set_mem_attributes): Likewise.
217         * expr.c (emit_single_push_insn, emit_push_insn): Likewise.
218         (expand_assignment, store_constructor_field, store_field): Likewise.
219         (expand_expr_unaligned): Likewise.
220         * function.c (assign_stack_temp_for_type): Likewise.
221         (put_reg_into_stack, gen_mem_addressof): Likewise.
222         * ifcvt.c (noce_try_cmove_arith): Likewise.
223         * reload1.c (reload, alter_reg): Likewise.
224         * config/alpha/alpha.c (get_aligned_mem): Likewise.
225         (alpha_set_memflags_1, alpha_expand_unaligned_load): Likewise.
226         (alpha_expand_unaligned_store): Likewise
227         (alpha_expand_unaligned_load_words): Likewise.
228         (alpha_expand_unaligned_store_words): Likewise.
229         (alpha_expand_block_clear, alpha_expand_prologue): Likewise.
230         (alpha_expand_epilogue): Likewise.
231         * config/arc/arc.c (arc_setup_incoming_varargs): Likewise.
232         * config/clipper/clipper.c (clipper_builtin_saveregs): Likewise.
233         * config/i386/i386.c (legitimize_pic_address): Likewise.
234         * config/i960/i960.c (setup_incoming_varargs): Likewise.
235         * config/ia64/ia64.c (spill_restore_mem): Likewise.
236         * config/m32r/m32r.c (m32r_setup_incoming_varargs): Likewise.
237         * config/m8k/m88k.c (m88k_builtin_saveregs): Likewise.
238         * config/mips/mips.c (mips_va_arg): Likewise.
239         * config/mn10300/mn10300.c (mn10300_builtin_saveregs): Likewise.
240         * config/pa/pa.c (hppa_builtin_saveregs): Likewise.
241         * config/rs6000/rs6000.c (rs6000_emit_move): Likewise.
242         (setup_incoming_varargs, rs6000_va_arg): Likewise.
243         (rs6000_emit_eh_toc_restore, rs6000_emit_prologue): Likewise.
244         (rs6000_emit_epilogue): Likewise.
245         * config/sh/sh.c (sh_builtin_saveregs): Likewise.
246         * config/sparc/sparc.c (sparc_va_arg): Likewise.
247         * config/v850/v850.c (v850_va_arg): Likewise.
248
249 Wed Jul 11 21:27:25 CEST 2001  Jan Hubicka  <jh@suse.cz>
250
251         * flow.c (merge_blocks_move_successor_nojumps): Do not crash
252         when fallthru edge is present.
253         (mege_blocks): Handle case where creation of jump insn
254         is required.
255
256         * basic-block.h (CLEANUP_EXPENSIVE, CLEANUP_CROSSJUMP,
257         CLEANUP_POST_REGSTACK): New constants.
258         * except.c (finish_eh_generation): Update call of cleanup_cfg,
259         * jump.c (rtx_renumbered_equal_p): Handle 't' fields.
260         * output.h (cleanup_cfg): Update prototype.
261         * reg-stack.c (reg_to_stack): Use cleanup_cfg instead of jump_optimize
262         * sibcall.c (optimize_sibling_and_tail_recursive_call): Update 
263         cleanup_cfg call; kill missleading comment.
264         * toplev.c (rest_of_compilation): Update all cleanup_cfg calls.
265         * flow.c (merge_blocks, try_optimize_cfg, cleanup_cfg): Accept mode
266         parameter; control optimizations performed using it.
267         (flow_find_cross_jump, outgoing_edges_match, try_crossjump_to_edge,
268         try_crossjump_bb): New functions.
269
270 2001-07-11  John David Anglin  <dave@hiauly1.hia.nrc.ca>
271
272         * pa.c (pa_output_function_prologue): Delete prototype.  Make function
273         extern.
274         * pa.h (ASM_OUTPUT_MI_THUNK): Rename output_function_prologue to
275         pa_output_function_prologue.
276         * pa-protos.h (pa_output_function_prologue): New prototype.
277
278 2001-07-11  John David Anglin  <dave@hiauly1.hia.nrc.ca>
279
280         * stmt.c (emit_case_nodes): Widen high and low instead of new_bound
281         and low to get correct sign extension in low+high test.
282
283 2001-07-11  Janis Johnson <janis@us.ibm.com>
284
285         * gcov.c (arcdata): Use gcov_type to fix branch percentage
286         for large hit count.
287
288         * profile.c (branch_prob): Fix .bbg info for computed gotos
289         and C++ EH code.
290
291 2001-07-11  Mark Mitchell  <mark@codesourcery.com>
292
293         * stmt.c (parse_output_constraint): New function, split out 
294         from ...
295         (expand_asm_operands): ... here.  Use parse_output_constraint.
296         * tree.h (parse_output_constraint): Declare it.
297
298 2001-07-11  Richard Henderson  <rth@redhat.com>
299
300         * bitmap.c: Comment some functions; fiddle whitespace.
301         (bitmap_free): Don't export.
302         (bitmap_element_allocate): Use memset.
303         * bitmap.h (bitmap_free): Don't declare.
304
305 2001-07-11  Daniel Berlin  <dan@cgsoftware.com>
306
307         * gcse.c, lcm.c, sched-deps.c:
308         s/free on sbitmap vectors/sbitmap_vector_free on sbitmap vectors/g
309
310         * flow.c (flow_loops_find): Free dom if we found no loops, since
311         we aren't going to save it.
312
313         * lcm.c (pre_edge_rev_lcm): Free st_antin, st_antout when we are
314         done.
315
316 Wed Jul 11 09:00:48 2001  Jeffrey A Law  (law@cygnus.com)
317
318         * ssa-ccp.c (ssa_fast_dce): Free worklist when completed.
319
320 Wed Jul 11 10:07:18 2001  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
321
322         * dwarf2out.c (dwarf2out_init, dwarf2out_finish): Add dummy version
323         #ifndef DWARF2_DEBUGGING_INFO.
324
325 2001-07-11  Richard Sandiford  <rsandifo@redhat.com>
326
327         * simplify-rtx.c (simplify_gen_subreg): Return null for QUEUED rtxes.
328
329 2001-07-11  Richard Sandiford  <rsandifo@redhat.com>
330
331         * config/mips/mips.c (gen_int_relational): Tell the caller not to
332         reverse a branch if a NE comparison is implemented with GTU.
333
334 2001-07-11  Richard Sandiford  <rsandifo@redhat.com>
335             H.J. Lu  <hjl@gnu.org>
336
337         * mips.md (call_internal1): Use CONSTANT_ADDRESS_P to check for
338         constant addresses.
339         (call_internal2): Likewise.
340         (call_value_internal1): Likewise.
341         (call_value_internal2): Likewise.
342         (call_value_multiple_internal1): Likewise.
343         (call_value_multiple_internal2): Likewise.
344
345 2001-07-10  Kazu Hirata  <kazu@hxi.com>
346
347         * calls.c (emit_library_call_value_1): Fix a comment typo.
348         * dwarf2out.c (mem_loc_descriptor): Likewise.
349         * config/i386/i386.c (ix86_expand_aligntest): Likewise.
350
351 2001-07-11  David Billinghurst <David.Billinghurst@riotinto.com>
352
353         * simplify-rtx.c (simplify_subreg): Fix typo in comment
354
355 Tue Jul 10 07:27:53 2001  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
356
357         * recog.c (offsettable_address_p): Handle LO_SUM case.
358         * config/mips/mips.c (double_memory_operand): Use adjust_address_nv
359         instead of plus_constant.
360         
361 2001-07-10  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
362
363         * reload1.c (merge_assigned_reloads): After a RELOAD_OTHER merge,
364         fix setting of the reloads of that reload to RELOAD_FOR_OTHER_ADDRESS.
365
366 Tue Jul 10 07:27:53 2001  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
367
368         * config/rs6000/rs6000.c (print_operand, case 'L', 'Y', 'Z'): Use
369         adjust_address_nv instead of plus_constant.
370
371 2001-07-10  Neil Booth  <neil@daikokuya.demon.co.uk>
372
373         * Makefile.in (toplev.o, sdbout.o, dbxout.o, dwarfout.o,
374         dwarf2out.o): Depend on debug.h, wrap long lines.
375         * dbxout.c: Include debug.h.
376         (dbx_debug_hooks): New.
377         (dbxout_init): Make static, take just 2 args.
378         (dbxout_finish): Make static.
379         * dbxout.h (dbxout_init, dbxout_finish): Delete.
380         * debug.c: New file.
381         * debug.h: New file.
382         * dwarf2out.c: Include debug.h.
383         (dwarf2_debug_hooks): New.
384         (dwarf2out_init): Make static.
385         (dwarf2out_finish): Make static, take 2 args.
386         * dwarf2out.h (dwarf2out_init, dwarf2out_finish): Delete.
387         * dwarfout.c: Include debug.h.
388         (dwarf_debug_hooks): New.
389         (dwarfout_init): Make static.
390         (dwarfout_finish): Make static, take 2 args.
391         * dwarfout.h (dwarfout_init, dwarfout_finish): Delete.
392         * sdbout.c: Include debug.h.
393         (sdb_debug_hooks): New.
394         (sdbout_init): Make static, take 2 args.
395         * sdbout.h (sdbout_init): Delete.
396         * toplev.c: Include debug.h.
397         (debug_hooks): New.
398         (compile_file): Set deubg_hooks based on command line options.
399         Use the hooks unconditionally rather than conditional compilation.
400
401 Tue Jul 10 09:04:45 2001  Jeffrey A Law  (law@cygnus.com)
402
403         * ssa-ccp.c (first_phi_node): Remove.  Replace uses with calls to
404         first_insn_after_basic_block_note instead.
405
406         * df.c (df_bb_refs_unlink): #if 0 out for now.
407
408 2001-07-10  David Billinghurst <David.Billinghurst@riotinto.com
409
410         * ssa.h: Add prototype for ssa_const_prop
411         * ssa-ccp.c: Add prototype for ssa_fast_dce and mark_references
412         (ssa_ccp_substitute_constants): Fix signed vs unsigned comparison
413         (ssa_fast_dce): Remove unused variable
414
415 2001-07-10  Gabriel Dos Reis  <gdr@merlin.codesourcery.com>
416
417         * diagnostic.c (finish_diagnostic): Rename to
418         diagnostic_finish. Make it take an 'output_buffer *'.  Adjust
419         calls thourghout.
420
421 2001-07-10  Jason Merrill  <jason_merrill@redhat.com>
422
423         * dwarf2out.c (dwarf2out_line): Emit -dA comment even when we have
424         .loc support.
425
426         * collect2.c (main): Set COLLECT_NO_DEMANGLE for subprocesses.
427         (dump_file): Only pad the demangled name with spaces if the 
428         mangled name was padded with spaces.
429
430 2001-07-10  Bernd Schmidt  <bernds@redhat.com>
431
432         * bb-reorder.c (make_reorder_chain_1): Correct branch/fallthru
433         edge detection.
434
435 Tue Jul 10 07:27:53 2001  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
436
437         * expr.c (expand_expr, case COMPONENT_REF): Don't force using bitfield
438         extraction if no direct load if either EXPAND_CONST_ADDRESS or
439         EXPAND_INITIALIZER.
440
441         * emit-rtl.c (adjust_address, adjust_address_nv): Change criteria for
442         whether can put offset inside LO_SUM to check mode alignment, not size.
443
444 2001-07-10  Gabriel Dos Reis  <gdr@merlin.codesourcery.com>
445
446         * doc/tm.texi (Misc): Fix thinko.
447
448 2001-07-10  Jan van Male  <jan.vanmale@fenk.wau.nl>
449
450         * regmove.c (replace_in_call_usage): Fix warnings.
451         * sched-deps.c (add_dependence): Fix warnings.
452         * simplify-rtx.c (simplify_subreg): Likewise.
453         Return NULL_RTX instead of NULL.
454
455         * reg-stack.c (emit_swap_insn): Eliminate warnings.
456         (subst_asm_stack_regs): Likewise.
457
458         * combine.c (num_sign_bit_copies): Cast bitwidth to int to avoid
459         warnings.
460
461         * dwarf2out.c (output_call_frame_info): Declare i as int.
462         (build_abbrev_table): Declare n_alloc as int.
463         (dwarf2out_finish): Initialize die.
464         * except.c: Declare sjlj_funcdef_number as unsigned.
465         (connect_post_landing_pads): Declare j as unsigned.
466         (convert_to_eh_region_ranges): Initialize call_site.
467         (output_function_exception_table): Initialize tt_format_size.
468         * expr.c (move_by_pieces_1): Initialize to1.
469         (store_constructor): Initialize minelt and maxelt.
470         * flow.c (mark_regs_live_at_end): Declare i as unsigned.
471         * function.c (instantiate_decls): Avoid signed/unsigned warning.
472
473         * c-decl.c (combine_parm_decls): Unused, remove.
474         * c-tree.h: Remove prototype for combine_parm_decls.
475
476         * reload.c (push_reload): Fix warning.
477         (regno_clobbered_p): Likewise.
478         * reload1.c (replace_pseudos_in_call_usage): Likewise.
479         (reload_combine): Likewise.
480
481         * bitmap.c: Rename bitmap_zero to bitmap_zero_bits to fix warnings.
482         * bitmap.h: Rename bitmap_zero to bitmap_zero_bits to fix
483         warnings.
484         * bitmap.c (bitmap_operation): Change user.
485         * bitmap.h (EXECUTE_IF_AND_COMPL_IN_BITMAP): Likewise.
486
487 2001-07-10  Eric Christopher  <echristo@redhat.com>
488
489         * config/mips/mips.c (override_options): Fix typo.
490
491 2001-07-09  Stan Shebs  <shebs@apple.com>
492
493         * target.h (struct gcc_target): New fields init_builtins and
494         expand_builtin.
495         * target-def.h (TARGET_INIT_BUILTINS): New macro.
496         (TARGET_EXPAND_BUILTIN): New macro.
497         (TARGET_INITIALIZER): Add them.
498         * builtins.c: Include target.h.
499         (expand_builtin): Use targetm.expand_builtin.
500         (default_init_builtins): New function.
501         (default_expand_builtin): New function.
502         * expr.h (default_init_builtins): Declare.
503         (default_expand_builtin): Declare.
504         * c-common.c (c_common_nodes_and_builtins): Use
505         targetm.init_builtins.
506         * defaults.h (MD_INIT_BUILTINS): Remove.
507         * Makefile.in (builtins.o): Depend on target.h.
508
509         * config/arm/arm.c (TARGET_INIT_BUILTINS): Define.
510         (TARGET_EXPAND_BUILTIN): Define.
511         * config/arm/arm.h (MD_INIT_BUILTINS): Remove.
512         (MD_EXPAND_BUILTIN): Remove.
513
514         * config/c4x/c4x.c (TARGET_INIT_BUILTINS): Define.
515         (TARGET_EXPAND_BUILTIN): Define.
516         (c4x_init_builtins): Make endlink arg a local.
517         (c4x_print_operand): Fix typos in adjust_address usages.
518         * config/c4x/c4x-protos.h (c4x_init_builtins): Update decl.
519         * config/c4x/c4x.h (MD_INIT_BUILTINS): Remove.
520         (MD_EXPAND_BUILTIN): Remove.
521
522         * config/i386/i386.c (TARGET_INIT_BUILTINS): Define.
523         (TARGET_EXPAND_BUILTIN): Define.
524         (ix86_init_mmx_sse_builtins): New function, was ix86_init_builtins.
525         (ix86_init_builtins): Call new function only if TARGET_MMX.
526         * config/i386/i386-protos.h (ix86_init_mmx_sse_builtins): Declare.
527         * config/i386/i386.h (MD_INIT_BUILTINS): Remove.
528         (MD_EXPAND_BUILTIN): Remove.
529
530         * config/ia64/ia64.c (TARGET_INIT_BUILTINS): Define.
531         (TARGET_EXPAND_BUILTIN): Define.
532         * config/ia64/ia64.h (MD_INIT_BUILTINS): Remove.
533         (MD_EXPAND_BUILTIN): Remove.
534
535         * doc/tm.texi: Document these changes.
536
537 2001-07-09  Diego Novillo  <dnovillo@redhat.com>
538
539         * basic-block.h (tree_node): Forward declare if needed.
540         (struct basic_block_def): Add fields 'head_tree' and 'end_tree'.
541         (BLOCK_HEAD_TREE): Define.
542         (BLOCK_END_TREE): Define.
543         (struct loops): Rename field 'tree' to 'tree_root'.
544         * flow.c (entry_exit_blocks): Add initializers for 'head_tree' and
545         'end_tree'.
546         (flow_loops_tree_build): Rename reference to field 'tree' to
547         'tree_root'.
548         (flow_loops_level_compute): Ditto.
549         * predict.c (estimate_bb_frequencies): Ditto.
550         * tree.h (struct tree_common): Add field 'aux'.
551
552 2001-07-09  Stan Shebs  <shebs@apple.com>
553
554         * config/darwin.c (darwin_encode_section_info): Don't mark any
555         DECL_EXTERNAL node as defined.
556
557 2001-07-09  John David Anglin  <dave@hiauly1.hia.nrc.ca>
558
559         * pa.c (pa_init_machine_status, pa_mark_machine_status,
560         pa_free_machine_status, hppa_init_pic_save): Delete.
561         (hppa_pic_save_rtx): New.  Use get_hard_reg_initial_val.
562         (hppa_profile_hook): Use hppa_pic_save_rtx.
563         * pa.h (struct machine_function, PIC_OFFSET_TABLE_SAVE_RTX,
564         hppa_init_pic_save): Delete.
565         (hppa_pic_save_rtx): Declare.
566         * pa.md (call, call_value, sibcall, sibcall_value,
567         builtin_setjmp_receiver): Use hppa_pic_save_rtx.
568
569 2001-07-09  Kazu Hirata  <kazu@hxi.com>
570
571         * config/h8300/t-h8300 (LIB1ASMFUNCS): Add _floatdisf and _fixsfdi.
572         * config/mn10200/t-mn10200 (LIB1ASMFUNCS): Likewise.
573
574 2001-07-09  Andreas Jaeger  <aj@suse.de>
575
576         * output.h: Add declaration of final_forward_branch_p.
577
578         * config/i386/i386.c (output_fix_trunc): Remove unused variable.
579
580         * varray.c: Include errors.h for internal_error and trim_filename
581         declarations.
582
583         * Makefile.in (varray.o): Add errors.h.
584
585 2001-07-09  Toon Moene  <toon@moene.indiv.nluug.nl>
586
587         * expr.h: Adjust prototypes for have_add2_insn, have_sub2_insn.
588         * optabs.c (have_add2_insn): Check whether the add insn chosen
589         really accepts the operands.  (have_sub2_insn): Ditto for sub insn.
590         * reload1.c (reload_cse_move2add): Adjust calls of have_add2_insn.
591
592 Mon Jul  9 13:26:40 2001  Jeffrey A Law  (law@cygnus.com)
593
594         * Makefile.in (OBJS): Add ssa-ccp.o
595         (ssa-ccp.o): Add dependencies.
596         * toplev.c (DFI_ssa_ccp): New dump file enum.
597         (dump_file): Add entry for dumping after SSA CCP.
598         (flag_ssa_ccp): New flag variable.
599         (f_options): Add -fssa-ccp.
600         (rest_of_compilation): Run SSA CCP if requested.
601         * timevar.def (TV_SSA_CCP): New timevar.
602         * ssa.c (mark_phi_and_copy_regs): Handle deleted PHI nodes.
603         * doc/gcc.texi (Passes): Add documentation for SSA CCP pass.
604         Fix minor typo in SSA DCE documentation.
605         * doc/invoke.texi: Add documentation for new flag -fssa-ccp.
606         Add documentation for new dump option.  Renumber dump files
607         appropriately.
608
609 Mon Jul  9 21:36:00 CEST 2001  Jan Hubicka  <jh@suse.cz>
610
611         * emit-rtl.c (gen_highpart_mode): New.
612         * rtl.h (gen_highpart_mode): Declare.
613         * sparc.md (insn splitters): Use gen_highpart_mode, whenever the
614         operand can be VOIDmode constant.
615
616 Mon Jul  9 17:23:10 CEST 2001  Jan Hubicka  <jh@suse.cz>
617
618         * flow.c (redirect_edge_and_branch_force): New.
619         (can_fallthru): Ensure that basic blocks are succeeding.
620         (try_optimize_cfg): Do not delete basic block if it is the last one.
621
622         * flow.c (try_redirect_by_replacing_jump): Do not remove
623         jumps with side effects, unlink chain on fallthru edge;
624         set block for new jump instruction; avoid basic block to
625         over by line number note.
626
627         * flow.c (try_simplify_condjump): Verify that the condjump
628         is not always falling trought.
629
630         Re-install patch:
631         * flow.c (try_redirect_by_replacing_jump): Remove cc0 setter.
632
633         * flow.c (forwarder_block_p): Fix for fallthru blocks.
634         (try_redirect_by_replacing_jump): Update properly the count
635         and frequency information.
636
637 Mon Jul  9 06:41:07 2001  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
638
639         * emit-rtl.c (adjust_address, adjust_address_nv): Handle an
640         address that is a LO_SUM specially.
641         * explow.c (plus_constant_wide, case LO_SUM): Deleted.
642
643         * c-lang.c (start_cdtor): Remove extra parameter from start_function.
644
645         * emit-rtl.c (adjust_address_nv, replace_equiv_address_nv): New fcns.
646         (operand_subword): Use them.
647         (change_address_1): Renamed from change_address; new arg VALIDATE.
648         * expr.h: Reflect above changes; change_address now macro.
649         * alias.c (canon_rtx): Use replace_equiv_address_nv instead of
650         making MEM.
651         * cselib.c (add_mem_for_addr): Likewise.
652         * expr.c (protect_from_queue, emit_move_insn_1): Likewise.
653         * regmove.c (try_apply_stack_adjustment): Likewise.
654         * reload.c (push_reload, make_memloc): Likewise.
655         * reload1.c (eliminate_regs): Likewise.
656         * simplify-rtx.c (simplify_replace_rtx): Likewise.
657         * caller-save.c (setup_save_areas): Use adjust_address_nv instead of
658         adjust_addess.
659         * combine.c (make_extraction, simplify_shift_const): Likewise.
660         (gen_lowpart_for_combine): Likewise.
661         * cse.c (gen_lowpart_if_possible): Likewise.
662         * function.c (fixup_var_refs_1, purge_addressof_1): Likewise.
663         * expr.c (expand_expr, case COMPONENT_REF): Likewise.
664         * optabs.c (gen_move_insn): Likewise.
665         * reload1.c (alter_reg): Likewise.
666         * simplify-rtx.c (simplify_subreg): Likewise.
667         * stmt.c (expand_anon_union_decl): Likewise.
668         * recog.c (validate_replace_rtx_1): Likewise.
669         (expr.h): Include.
670         * Makefile.in (recog.o): Add $(EXPR_H).
671         * explow.c (stabilize): Call replace_equiv_address.
672         * expr.c (move_by_pieces_1, store_by_pieces_2): Likewise.
673         * final.c (alter_subreg): OFFSET is HOST_WIDE_INT.
674
675 2001-07-03  Andrew Haley  <aph@redhat.com>
676
677         * expmed.c (store_fixed_bit_field): Don't use a mode bigger than
678         the mode of the memory location.
679
680 2001-07-09  Bo Thorsen  <bo@suse.co.uk>
681
682         * config/i386/unix.h (ASM_OUTPUT_MI_THUNK): Fix x86-64 vtable support.
683
684 2001-07-09  Neil Booth  <neil@daikokuya.demon.co.uk>
685
686         * final.c (output_addr_const): Use target opening and
687         closing parentheses.
688         * target-def.h: Define TARGET_ASM_OPEN_PAREN, TARGET_ASM_CLOSE_PAREN
689         defaults, add to TARGET_ASM_OUT.
690         * target.h (struct gcc_target): Add open_paren and close_paren.
691         * doc/md.texi: Update.
692         * doc/tm.texi: Document TARGET_ASM_FUNCTION_END_PROLOGUE,
693         TARGET_ASM_FUNCTION_BEGIN_EPILOGUE, TARGET_ASM_OPEN_PAREN and
694         TARGET_ASM_CLOSE_PAREN.
695         * config/i386/i386.c (TARGET_ASM_OPEN_PAREN, TARGET_ASM_CLOSE_PAREN):
696         Override.
697         * config/pdp11/pdp11.c (TARGET_ASM_OPEN_PAREN, TARGET_ASM_CLOSE_PAREN):
698         Override.
699         * config/1750a/1750a.h (ASM_OPEN_PAREN, ASM_CLOSE_PAREN): Remove.
700         * config/a29k/a29k.h: Similarly.
701         * config/alpha/alpha.h: Similarly.
702         * config/arc/arc.h: Similarly.
703         * config/arm/aof.h: Similarly.
704         * config/arm/aout.h: Similarly.
705         * config/avr/avr.h: Similarly.
706         * config/c4x/c4x.h: Similarly.
707         * config/clipper/clipper.h: Similarly.
708         * config/convex/convex.h: Similarly.
709         * config/d30v/d30v.h: Similarly.
710         * config/dsp16xx/dsp16xx.h: Similarly.
711         * config/elxsi/elxsi.h: Similarly.
712         * config/fr30/fr30.h: Similarly.
713         * config/h8300/h8300.h: Similarly.
714         * config/i370/i370.h: Similarly.
715         * config/i386/i386.h: Similarly.
716         * config/i860/i860.h: Similarly.
717         * config/i960/i960.h: Similarly.
718         * config/ia64/ia64.h: Similarly.
719         * config/m32r/m32r.h: Similarly.
720         * config/m68hc11/m68hc11.h: Similarly.
721         * config/m68k/m68k.h: Similarly.
722         * config/m88k/m88k.h: Similarly.
723         * config/mcore/mcore.h: Similarly.
724         * config/mips/mips.h: Similarly.
725         * config/mn10200/mn10200.h: Similarly.
726         * config/mn10300/mn10300.h: Similarly.
727         * config/ns32k/ns32k.h: Similarly.
728         * config/pa/pa.h: Similarly.
729         * config/pdp11/pdp11.h: Similarly.
730         * config/pj/pj.h: Similarly.
731         * config/romp/romp.h: Similarly.
732         * config/rs6000/rs6000.h: Similarly.
733         * config/sh/sh.h: Similarly.
734         * config/sparc/sparc.h: Similarly.
735         * config/v850/v850.h: Similarly.
736         * config/vax/vax.h: Similarly.
737         * config/we32k/we32k.h: Similarly.
738
739 2001-07-09  Joseph S. Myers  <jsm28@cam.ac.uk>
740
741         * doc/c-tree.texi: Document representation of attributes.
742
743 2001-07-08  Joseph S. Myers  <jsm28@cam.ac.uk>
744
745         * doc/tm.texi: Update some places for the rename of target to
746         targetm.  Fix typo.
747
748 2001-07-08  Joseph S. Myers  <jsm28@cam.ac.uk>
749
750         * target.h (struct gcc_target): Add insert_attributes.
751         * target-def.h (TARGET_INSERT_ATTRIBUTES): Define.
752         (TARGET_INITIALIZER): Update.
753         * tree.c, tree.h (default_insert_attributes): New function.
754         Update comments on other default functions to refer to targetm,
755         not target.
756         * doc/tm.texi (INSERT_ATTRIBUTES): Update to document
757         TARGET_INSERT_ATTRIBUTES.
758         (SET_DEFAULT_DECL_ATTRIBUTES): Remove.
759         * c-common.c (decl_attributes): Use targetm.insert_attributes.
760         Don't use PRAGMA_INSERT_ATTRIBUTES.
761         * Makefile.in (c-common.o): Depend on $(TARGET_H).
762         * c-decl.c (start_decl, start_function): Don't call
763         SET_DEFAULT_DECL_ATTRIBUTES.
764         * config/c4x/c4x.h (SET_DEFAULT_DECL_ATTRIBUTES): Don't define.
765         * config/c4x/c4x-protos.h (c4x_set_default_attributes): Don't
766         declare.
767         * config/c4x/c4x.c (TARGET_INSERT_ATTRIBUTES): Define.
768         (c4x_check_attribute): Avoid modifying attribute list itself.
769         (c4x_set_default_attributes): Rename to c4x_insert_attributes.
770         Make static.
771         * config/sh/sh.h (PRAGMA_INSERT_ATTRIBUTES): Don't define.
772         * config/sh/sh-protos.h (sh_pragma_insert_attributes): Don't
773         declare.
774         * config/sh/sh.c (TARGET_INSERT_ATTRIBUTES): Define.
775         (sh_pragma_insert_attributes): Rename to sh_insert_attributes.
776         Make static.
777         * config/v850/v850.h (SET_DEFAULT_DECL_ATTRIBUTES): Don't define.
778         * config/v850/v850-protos.h (v850_set_default_decl_attr): Don't
779         declare.
780         * config/v850/v850.c (TARGET_INSERT_ATTRIBUTES): Define.
781         (v850_set_default_decl_attr): Rename to v850_insert_attributes.
782         Adjust parameters.  Make static.
783
784 2001-07-08  Joseph S. Myers  <jsm28@cam.ac.uk>
785
786         * c-common.c (decl_attributes): Only take a single attributes
787         parameter.
788         * c-common.h (decl_attributes): Update prototype.
789         * c-decl.c (start_decl, start_function): Only take a single
790         attributes parameter.  Update calls to decl_attributes.
791         (finish_struct, finish_enum): Update calls to decl_attributes.
792         (push_parm_decl): Expect unified list of attributes.  Update call
793         to decl_attributes.
794         * c-parse.in (fndef, initdcl, notype_initdcl, nested_function,
795         notype_nested_function, component_declarator,
796         component_notype_declarator, label): Update calls to
797         decl_attributes.
798         (absdcl_maybe_attribute, parm, firstparm, myparm): Unify attribute
799         lists that are passed to push_parm_decl.
800         * c-tree.h (start_function, start_decl): Update prototypes.
801         * config/sh/sh-protos.h, config/sh/sh.c
802         (sh_pragma_insert_attributes): Only take a single attributes
803         parameter.
804         * config/sh/sh.h (PRAGMA_INSERT_ATTRIBUTES): Likewise.
805         * doc/tm.texi (INSERT_ATTRIBUTES): Update.
806         * objc/objc-act.c (define_decl, generate_objc_symtab_decl,
807         build_module_descriptor, generate_static_references,
808         generate_strings, build_selector_translation_table,
809         generate_descriptor_table, generate_protocols,
810         generate_ivars_list, generate_dispatch_table,
811         generate_protocol_list, generate_category,
812         generate_shared_structures, really_start_method, add_objc_decls,
813         generate_classref_translation_entry): Update calls to start_decl
814         and start_function.
815         (build_tmp_function_decl, start_method_def): Unify attribute lists
816         that are passed to push_parm_decl.
817
818 2001-07-08  Neil Booth  <neil@daikokuya.demon.co.uk>
819
820         * final.c (no_asm_to_stream): New.
821         (final_scan_insn): Use target structures for prologue ends
822         and epilogue starts.
823         * output.h (no_asm_to_stream): New.
824         * target-def.h (TARGET_ASM_FUNCTION_END_PROLOGUE,
825         TARGET_ASM_FUNCTION_BEGIN_EPILOGUE): New.
826         (TARGET_ASM_OUT): Update.
827         * target.h (struct gcc_target): New members function_end_prologue
828         and function_begin_epilogue.
829         * config/1750/1750.h (ASM_OUTPUT_FUNNAM): Delete as unused.
830         * config/alpha/alpha-protos.h (output_end_prologue): Delete.
831         * config/alpha/alpha.c (output_end_prologue): Rename to
832         alpha_output_function_end_prologue.  Use in target struct
833         and make static.
834         * config/alpha/alpha.h (FUNCTION_END_PROLOGUE): Delete.
835         * config/ia64/ia64-protos.h (ia64_output_end_prologue): Delete.
836         * config/ia64/ia64.c (ia64_output_end_prologue): Rename to
837         ia64_output_function_end_prologue.  Use in target struct
838         and make static.
839         (ia64_function_prologue, ia64_funciton_epilogue): Rename
840         mistyped prototypes.
841         * config/ia64/ia64.h (FUNCTION_END_PROLOGUE): Delete.
842         * config/m88k/m88k-protos.h (m88k_end_prologue, m88k_begin_epilogue):
843         Delete.
844         * config/m88k/m88k.c (m88k_end_prologue, m88k_begin_epilogue): Rename
845         an use in target struct, make static.
846         * config/ia64/ia64.h (FUNCTION_END_PROLOGUE, FUNCTION_BEGIN_EPILOGUE):
847         Delete.
848
849 2001-07-08  Richard Henderson  <rth@redhat.com>
850
851         * stmt.c (emit_case_nodes): Convert modes properly in low+high test.
852
853 2001-07-08  Richard Henderson  <rth@redhat.com>
854
855         * config/i386/i386.md: Remove constraints strings from define_split
856         and define_peephole2 patterns.
857         (eh_return_si, eh_return_di): Split eh_return_1 for modes.
858         (eh_return): Use them.
859
860 2001-07-08  Richard Henderson  <rth@redhat.com>
861
862         * doc/tm.texi (Exception Handling): New subnode of Stack and Calling.
863         Document MD_FALLBACK_FRAME_STATE_FOR.
864
865 2001-07-07  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
866
867         * config/m68hc11/m68hc11.c (m68hc11_initial_elimination_offset):
868         Take into account m68hc11_sp_correction for FRAME_POINTER_REGNUM
869         elimination.
870         * config/m68hc11/m68hc11.h (STARTING_FRAME_OFFSET): Use 0.
871
872 2001-07-07  Nick Clifton  <nickc@cambridge.redhat.com>
873
874         * config/ia64/sysv4.h (ASM_OUTPUT_LABELREF): Append # to end
875         of the label inside NAME as opposed to just the end of NAME.
876
877 2001-07-07  Neil Booth  <neil@daikokuya.demon.co.uk>
878
879         * config/alpha/alpha-protos.h (vms_valid_decl_attribute_p): Delete.
880         * config/alpha/alpha.c (alpha_init_machine_status,
881         alpha_mark_machine_status, alpha_free_machine_status): Delete.
882         (TARGET_VALID_DECL_ATTRIBUTE): Define for VMS.
883         (vms_valid_decl_attribute_p): Make static, conditionally compile.
884         * config/alpha/alpha.h (VALID_MACHINE_DECL_ATTRIBUTE): Delete.
885
886 2001-07-06  Stan Shebs  <shebs@apple.com>
887
888         * target.h (targetm): Rename global from "target", so as not to
889         conflict with local variables.
890         * c-decl.c: Ditto.
891         * c-typeck.c: Ditto.
892         * final.c: Ditto.
893         * tree.c: Ditto.
894         * cp/decl.c: Ditto.
895         * cp/decl2.c: Ditto.
896         * cp/typeck.c: Ditto.
897         * 1750a/1750a.c: Ditto.
898         * a29k/a29k.c: Ditto.
899         * arc/arc.c: Ditto.
900         * arm/arm.c: Ditto.
901         * avr/avr.c: Ditto.
902         * clipper/clipper.c: Ditto.
903         * convex/convex.c: Ditto.
904         * d30v/d30v.c: Ditto.
905         * dsp16xx/dsp16xx.c: Ditto.
906         * elxsi/elxsi.c: Ditto.
907         * fr30/fr30.c: Ditto.
908         * h8300/h8300.c: Ditto.
909         * i370/i370.c: Ditto.
910         * i386/i386.c: Ditto.
911         * i860/i860.c: Ditto.
912         * i960/i960.c: Ditto.
913         * ia64/ia64.c: Ditto.
914         * m32r/m32r.c: Ditto.
915         * m68hc11/m68hc11.c: Ditto.
916         * m68k/m68k.c: Ditto.
917         * m88k/m88k.c: Ditto.
918         * mips/mips.c: Ditto.
919         * ns32k/ns32k.c: Ditto.
920         * pa/pa.c: Ditto.
921         * pdp11/pdp11.c: Ditto.
922         * romp/romp.c: Ditto.
923         * rs6000/rs6000.c: Ditto.
924         * sh/sh.c: Ditto.
925         * sparc/sparc.c: Ditto.
926         * vax/vax.c: Ditto.
927         * we32k/we32k.c: Ditto.
928         * doc/tm.texi: Update the manual to match.
929
930 2001-07-06  Richard Henderson  <rth@redhat.com>
931
932         * except.h (MUST_USE_SJLJ_EXCEPTIONS): Examine the value of
933         DWARF2_UNWIND_INFO not just whether it is defined.
934
935 2001-07-06  Diego Novillo  <dnovillo@redhat.com>
936
937         * combine.c (combine_simplify_rtx): Also recompute 'mode' if the
938         call to simplify_binary_operation returns a new pattern.
939
940 2001-07-06  Roman Lechtchinsky  <rl@cs.tu-berlin.de>
941
942         * glimits.h (__SHRT_MAX__): New.
943         (SHRT_MIN, USHRT_MAX): Define in terms of SHRT_MAX.
944         (SHRT_MAX): Define in terms of __SHRT_MAX__.
945
946 2001-07-06  Jan van Male  <jan.vanmale@fenk.wau.nl>
947
948         * alias.c (base_alias_check): Cast GET_MODE_UNIT_SIZE to int to
949         avoid warnings.
950
951 2001-07-06  Richard Henderson  <rth@redhat.com>
952
953         * bitmap.c (bitmap_release_memory): Move adjacent to the
954         allocation functions.
955         (bitmap_first_set_bit, bitmap_last_set_bit): Streamline knowing
956         the implementation.  Binary search for the set bit.
957         (bitmap_union_of_diff): Allocate the temporary on the stack
958         instead of using xmalloc.
959
960 2001-07-06  Richard Henderson  <rth@redhat.com>
961
962         * genrecog.c (validate_pattern): Warn for constraints in
963         define_{expand,split,peephole2}.  Remove strict_low_part
964         before looking up match_dup.
965
966 2001-07-06  DJ Delorie  <dj@redhat.com>
967
968         * doc/gcc.texi (Makefile): Rename to be a more general purpose
969         chapter about various build hints and history.  Add section
970         talking about the various types of native and cross builds.
971
972 2001-07-06  Neil Booth  <neil@daikokuya.demon.co.uk>
973
974         * Makefile.in (final.o): Depend on target.h.
975         * final.c: Include target.h.
976         (default_function_pro_epilogue): New.
977         (final_start_function): Use target structure for function prologues.
978         (final_end_function): Use target structure for function epilogues.
979         * fold-const.c (real_hex_to_f): Constify s and p.
980         * output.h (default_function_pro_epilogue): New.
981         * real.h (real_hex_to_f): Update prototype.
982         * target-def.h (TARGET_ASM_FUNCTION_PROLOGUE,
983         TARGET_ASM_FUNCTION_EPILOGUE, TARGET_ASM_OUT): New.
984         (TARGET_INITIALIZER): Update.
985         * target.h (gcc_target): Add struct asm_out.
986         * doc/tm.texi: Update.
987
988 config:
989         Update each arch to use TARGET_ASM_FUNCTION_PROLOGUE and
990         TARGET_ASM_FUNCTION_EPILOGUE.  Move macro code to functions
991         in cpu/cpu.c, or rename old functions consistently.  Take
992         a HOST_WIDE INT not an int as the SIZE parameter.  Remove now
993         redundant macros and prototypes.  Make new functions static.
994
995         * 1750a/1750a.c: Similarly.
996         * 1750a/1750a.h: Similarly.
997         * a29k/a29k-protos.h: Similarly.
998         * a29k/a29k.c: Similarly.
999         * a29k/a29k.h: Similarly.
1000         * arc/arc-protos.h: Similarly.
1001         * arc/arc.c: Similarly.
1002         * arc/arc.h: Similarly.
1003         * arm/arm-protos.h: Similarly.
1004         * arm/arm.c: Similarly.
1005         * arm/arm.h: Similarly.
1006         * avr/avr-protos.h: Similarly.
1007         * avr/avr.c: Similarly.
1008         * avr/avr.h: Similarly.
1009         * clipper/clipper-protos.h: Similarly.
1010         * clipper/clipper.c: Similarly.
1011         * clipper/clipper.h: Similarly.
1012         * convex/convex.c: Similarly.
1013         * convex/convex.h: Similarly.
1014         * d30v/d30v-protos.h: Similarly.
1015         * d30v/d30v.c: Similarly.
1016         * d30v/d30v.h: Similarly.
1017         * d30v/d30v.md: Similarly.
1018         * dsp16xx/dsp16xx-protos.h: Similarly.
1019         * dsp16xx/dsp16xx.c: Similarly.
1020         * dsp16xx/dsp16xx.h: Similarly.
1021         * elxsi/elxsi.c: Similarly.
1022         * elxsi/elxsi.h: Similarly.
1023         * fr30/fr30.c: Similarly.
1024         * fr30/fr30.md: Similarly.
1025         * h8300/h8300-protos.h: Similarly.
1026         * h8300/h8300.c: Similarly.
1027         * h8300/h8300.h: Similarly.
1028         * i370/i370-protos.h: Similarly.
1029         * i370/i370.c: Similarly.
1030         * i370/i370.h: Similarly.
1031         * i386/i386.c: Similarly.
1032         * i386/osf1elf.h: Similarly.
1033         * i386/osfrose.h: Similarly.
1034         * i860/i860-protos.h: Similarly.
1035         * i860/i860.c: Similarly.
1036         * i860/i860.h: Similarly.
1037         * i960/i960-protos.h: Similarly.
1038         * i960/i960.c: Similarly.
1039         * i960/i960.h: Similarly.
1040         * ia64/ia64-protos.h: Similarly.
1041         * ia64/ia64.c: Similarly.
1042         * ia64/ia64.h: Similarly.
1043         * m32r/m32r-protos.h: Similarly.
1044         * m32r/m32r.c: Similarly.
1045         * m32r/m32r.h: Similarly.
1046         * m68hc11/m68hc11-protos.h: Similarly.
1047         * m68hc11/m68hc11.c: Similarly.
1048         * m68hc11/m68hc11.h: Similarly.
1049         * m68k/crds.h: Similarly.
1050         * m68k/dpx2.h: Similarly.
1051         * m68k/m68k-protos.h: Similarly.
1052         * m68k/m68k.c: Similarly.
1053         * m68k/m68k.h: Similarly.
1054         * m68k/news.h: Similarly.
1055         * m88k/m88k-protos.h: Similarly.
1056         * m88k/m88k.c: Similarly.
1057         * m88k/m88k.h: Similarly.
1058         * mips/mips-protos.h: Similarly.
1059         * mips/mips.c: Similarly.
1060         * mips/mips.h: Similarly.
1061         * ns32k/merlin.h: Similarly.
1062         * ns32k/ns32k.c: Similarly.
1063         * ns32k/ns32k.h: Similarly.
1064         * ns32k/tek6000.h: Similarly.
1065         * pa/pa-protos.h: Similarly.
1066         * pa/pa.c: Similarly.
1067         * pa/pa.h: Similarly.
1068         * pdp11/2bsd.h: Similarly.
1069         * pdp11/pdp11-protos.h: Similarly.
1070         * pdp11/pdp11.c: Similarly.
1071         * pdp11/pdp11.h: Similarly.
1072         * romp/romp-protos.h: Similarly.
1073         * romp/romp.c: Similarly.
1074         * romp/romp.h: Similarly.
1075         * rs6000/rs6000-protos.h: Similarly.
1076         * rs6000/rs6000.c: Similarly.
1077         * rs6000/rs6000.h: Similarly.
1078         * rs6000/sysv4.h: Similarly.
1079         * sh/sh-protos.h: Similarly.
1080         * sh/sh.c: Similarly.
1081         * sh/sh.h: Similarly.
1082         * sparc/sparc-protos.h: Similarly.
1083         * sparc/sparc.c: Similarly.
1084         * sparc/sparc.h: Similarly.
1085         * vax/vax.c: Similarly.
1086         * vax/vax.h: Similarly.
1087         * vax/vms.h: Similarly.
1088         * we32k/we32k.c: Similarly.
1089         * we32k/we32k.h: Similarly.
1090
1091 Fri Jul  6 11:47:59 2001  Jeffrey A Law  (law@cygnus.com)
1092
1093         * basic-block.h (first_insn_after_basic_block_note): Declare.
1094         * flow.c (first_insn_after_basic_block_note): Define.  Moved
1095         from...
1096         * ssa.c (first_insn_after_basic_block_note): Remove.
1097         * ssa-dce.c (find_inherently_necessary): Consider BARRIERs
1098         necessary.
1099         (ssa_eliminate_dead_code): Properly update the CFG and PHI
1100         nodes when we find a dead conditional branch.  Insert BARRIERs
1101         after any blocks with no successors, but which do not have
1102         any BARRIERs.
1103
1104 2001-07-06  Zack Weinberg  <zackw@stanford.edu>
1105
1106         * varray.c (varray_check_failed): Use internal_error.
1107
1108 2001-07-05  Andrew Haley  <aph@redhat.com>
1109
1110         * Makefile.in (LIB2_DIVMOD_FUNCS): New.
1111         (LIB2FUNCS): Move divmod functions to LIB2_DIVMOD_FUNCS.
1112         * mklibgcc.in: Compile LIB2_DIVMOD_FUNCS.
1113
1114 2001-07-02  Jason Merrill  <jason_merrill@redhat.com>
1115
1116         * dwarf2out.c (mem_loc_descriptor): Only look through a constant pool
1117         reference if the target constant is also a SYMBOL_REF.
1118
1119 2001-07-05  Eric Christopher  <echristo@redhat.com>
1120
1121         * config/mips/mips.h (MASK_MIPS3900): Remove.
1122         (MASK_MIPS16,MASK_NO_CHECK_ZERO_DIV,MASK_CHECK_RANGE_DIV,
1123         MASK_UNINIT_CONST_IN_RODATA): Change for 3900 mask removal.
1124         (TARGET_MIPS3900): Change to use mips_arch.
1125         (TARGET_MIPS4000): New.
1126         (TARGET_MIPS4100): New.
1127         (TARGET_MIPS4300): New.
1128         (TARGET_SWITCHES): Change 3900 and 4650 options to NULL.
1129         (SUBTARGET_TARGET_OPTIONS): Add -march. Change help text
1130         for -mipsX.
1131         (GENERATE_BRANCHLIKELY): Move TARGET_MIPS3900.
1132         (ISA_HAS_BRANCHLIKELY): To here.
1133         (CC1_CPU_SPEC):  New.
1134         (CC1_SPEC): Use here.  Remove 4650 and 3900 options.
1135         (mips_arch_string): Declare.
1136         (mips_arch): Declare.
1137         (TARGET_OPTIONS): Add -march and -mtune.
1138
1139         * config/mips/mips.c (mips_arch_string): New.
1140         (mips_arch): New.
1141         (override_options): Handle -march for codegen and -mtune
1142         for scheduling. Use mips_arch. Move tx39 target default here.
1143         (mips_parse_cpu): Move error message to override_options.
1144
1145         * config/mips/r3900.h (TARGET_DEFAULT): Remove.
1146
1147         * config/mips/mips.md: Use TARGET_MIPS4000 and TARGET_MIPS4300.
1148
1149         * doc/invoke.texi (Option Summary): Add -march and -mtune entries.
1150         (MIPS Options): Ditto.  Change mcpu entry to historical text.
1151
1152 2001-07-05  H.J. Lu  (hjl@gnu.org)
1153
1154         * config/mips/mips.c (mips_parse_cpu): New function to parse
1155         -march=*/-mcpu=*.
1156
1157 2001-07-05  Jim Wilson  <wilson@redhat.com>
1158
1159         * config/ia64/lib1funcs.asm: Revert 2001-07-02 change.
1160         * config/ia64/t-ia64: Likewise.
1161         (LIB1ASMFUNCS): Update comment.
1162
1163 2001-07-05  David Edelsohn  <edelsohn@gnu.org>
1164
1165         * doc/install.texi (Install GCC: Binaries): Fix typo.
1166
1167 2001-07-04  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
1168
1169         * config/m68hc11/m68hc11.md ("*ashlsi3"): Operand 1 can be a memory
1170         reference using the stack pointer, adjust it since we push Y
1171         temporarily.
1172         ("*ashrsi3"): Likewise.
1173         ("*lshrsi3"): Likewise.
1174
1175 2001-07-05  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
1176
1177         * config/m68hc11/m68hc11.h (RETURN_ADDR_RTX): Fix return address
1178         when -fomit-frame-pointer is used.
1179
1180 2001-07-05  Jeffrey Oldham  <oldham@codesourcery.com>
1181
1182         * flow.c: Reverse Jan Hubicka's patch of 02July2001.
1183         (try_redirect_by_replacing_jump): Reverse updating properly the
1184         count and frequency information.  Reverse removing cc0 setter.
1185         (forwarder_block_p): Reverse fixing for fallthru blocks.
1186
1187 2001-07-05  DJ Delorie  <dj@redhat.com>
1188
1189         * gcc.c (TARGET_OPTION_TRANSLATE_TABLE): New.
1190         (translate_options): If the above is defined, use it to map
1191         given options to new options.
1192         * doc/tm.texi: Document it.
1193
1194 2001-07-05  Brad Lucier <lucier@math.purdue.edu>
1195             Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
1196
1197         * doc/invoke.texi (Optimize Options): Document that -fgcse may
1198         cause programs using computed gotos to run more slowly.
1199
1200 2001-07-05  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
1201
1202         * doc/install.texi (Specific): Markup, spelling and typo fixes.
1203         Fixed sorting.
1204         Consistently require binutils 2.11.2, not prereleases.
1205         (Specific, decstation-*): Canonicalize as mips-dec-*.
1206         (Specific, i?86-*-sco3.2v5*): Remove make bootstrap requirement,
1207         always necessary.
1208         (Specific, m68k-altos): Removed reference to README.altos, deleted.
1209         (Specific, mips-*): Reword MIPS C compiler requirements.
1210         (Specific, powerpc*-*-*): New, mention --with-cpu once.
1211         (Specific, sunv5): Removed, obsolete.
1212
1213 2001-07-05  Nathan Sidwell  <nathan@codesourcery.com>
1214
1215         * dwarf2out.c (output_loc_list): Use an all ones mask for
1216         .text asm output and don't rely on long long
1217         literals. Reformat some long lines.
1218
1219 2001-07-05  Andreas Jaeger  <aj@suse.de>
1220
1221         * doc/gcc.texi (GNU/Linux): Remove accidental re-add of GPL
1222         section.
1223
1224 2001-07-04  Daniel Berlin  <dan@cgsoftware.com>
1225
1226         * dwarf2out.c (dwarf2out_define): Update comment.
1227         (dwarf2out_undef): Ditto.
1228         (dwarf2out_start_source_file): Ditto.
1229         (dwarf2out_end_source_file): Ditto.
1230         (dwarf2out_finish): Output DW_MACINFO_end_file for primary file,
1231         since we never call the start/end debug hook for the primary file.
1232
1233 2001-07-04  Kazu Hirata  <kazu@hxi.com>
1234
1235         * config/h8300/h8300.c (get_shift_alg): Remove an extra operand
1236         from shll.
1237
1238 2001-07-04  Nathan Sidwell  <nathan@codesourcery.com>
1239
1240         * cppinit.c (remove_dup_dirs): Inform if a system include
1241         directory is being reordered.
1242         * doc/invoke.texi (Directory Options): GCC warns if you hide a
1243         system include.
1244         * doc/cpp.texi (Search Paths): Likewise.
1245         * doc/gcc.texi (Interoperation): Remove information about
1246         -I/usr/include.
1247
1248 2001-07-04  Nathan Sidwell  <nathan@codesourcery.com>
1249
1250         * varray.h (VARRAY_TOP_GENERIC_PTR): Remove spurious parameter.
1251         (VARRAY_TOP_CHAR_PTR): Likewise.
1252
1253 2001-07-04  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
1254
1255         * gcc.c (process_command): Don't assign elements of a const char*.
1256
1257 Wed Jul  4 13:40:02 2001  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1258
1259         * emit-rtl.c (change_address): Don't abort if invalid address while
1260         reload is in progress.
1261
1262 2001-07-04  Daniel Berlin  <dan@cgsoftware.com>
1263
1264         * c-lex.c (cb_file_change): Pass line number to
1265         debug_start_source_file.
1266         (cb_undefine): Pass correct line number to debug_undef.
1267
1268         * toplev.c (debug_start_source_file): Add line number to
1269         parameters. Pass it along to dwarf2out_start_source_file.
1270         (decode_g_option): Stop resetting debug level back to normal when
1271         we change debug formats, unless the current level is
1272         none. (Before, -g3 -gdwarf-2 would use debug level 2, rather than
1273         3).
1274
1275         * toplev.h (debug_start_source_file): Add line number to
1276         parameters.
1277
1278         * dwarf2out.h (dwarf2out_start_source_file): Add line number to
1279         parameters.
1280
1281         * dwarf2out.c (dwarf2out_start_source_file): Add line number to
1282         parameters.
1283         Output debug_macinfo data for starting file if requested.
1284         (dwarf2out_end_source_file): Output debug_macinfo data for ending
1285         file if requested.
1286         (dwarf2out_define): Output debug_macinfo data for defining a macro
1287         if requested.
1288         (dwarf2out_undef): Output debug_macinfo data for undefining a
1289         macro if requested.
1290         (DEBUG_MACINFO_SECTION): New. DWARF2 macro info section name.
1291         (DEBUG_MACINFO_SECTION_LABEL): New. DWARF2 macro info section label.
1292         (macinfo_section_label): New. DWARF2 macro info section label.
1293         (dwarf2out_init): If we want macro info, output the start label
1294         for the section.
1295         (dwarf2out_finish): If we want macro info, add a DW_AT_macro_info
1296         attribute to the compilation unit die pointing to the macro info.
1297
1298 2001-07-04  Daniel Berlin  <dan@cgsoftware.com>
1299
1300         * dwarf2out.c (new_loc_list): Move to inside #ifdef
1301         DWARF2_DEBUGGING_INFO.
1302         (add_loc_descr_to_loc_list): Ditto.
1303         (output_loc_list): Ditto.
1304         Also, fix thinko in curr not being initialized.
1305         (gen_internal_sym): Ditto.
1306
1307 Wed Jul  4 13:40:02 2001  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1308
1309         * emit-rtl.c (replace_equiv_address): New function.
1310         * expr.h (replace_equiv_address): New declaration.
1311         * explow.c (validize_mem): Call it instead of change_address and
1312         also call if -fforce-addr and address is constant.
1313         * expr.c: Replace more calls to change_address with adjust_address
1314         and/or replace_equiv_address or to validize_mem.
1315         * function.c, regmove.c, config/alpha/alpha.c: Likewise.
1316         * config/arm/arm.md, config/clipper/clipper.md: Likewise.
1317         * config/dsp16xx/dsp16xx.md, config/fr30/fr30.c: Likewise.
1318         * config/i370/i370.md, config/i860/i860.md: Likewise.
1319         * config/i960/i960.md, config/mips/mips.c: Likewise.
1320         * config/mips/mips.md, config/pa/pa.md: Likewise.
1321         * config/pdp11/pdp11.md, config/rs6000/rs6000.c: Likewise.
1322         * config/rs6000/rs6000.md, config/sh/sh.md: Likewise.
1323
1324 2001-07-04  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
1325
1326         * bitmap.c (bitmap_union_of_diff): Don't use BITMAP_ALLOCA.
1327
1328         * bitmap.h (BITMAP_ALLOCA): Don't pass alloca as an argument to a
1329         function.
1330
1331 2001-07-04  Joseph S. Myers  <jsm28@cam.ac.uk>
1332
1333         * doc/include: New directory.
1334         * doc/fdl.texi: Move to doc/include/fdl.texi.
1335         * doc/texinfo.tex: Move to doc/include/texinfo.tex.
1336         * doc/include/funding.texi, doc/include/gpl.texi: New files.
1337         * doc/gcc.texi: Use funding.texi and gpl.texi.
1338         * Makefile.in ($(docdir)/cpp.info, $(docdir)/gcc.info,
1339         $(docdir)/cppinternals.info, cpp.dvi. gcc.dvi. cppinternals.dvi):
1340         Update dependencies and use -I $(docdir)/include.
1341
1342 2001-07-04  Anthony Green  <green@redhat.com>
1343
1344         * config/v850/t-v850 (v850-c.o): Add missing dependencies.
1345
1346 2001-07-04  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
1347
1348         * doc/install.texi (sparc64-*-*): Remove garbage.
1349
1350 Wed Jul  4 09:07:44 2001  Jan van Male  <jan.vanmale@fenk.wau.nl>
1351
1352         * i386.c (ix86_expand_builtin, case IX86_BUILTIN_SETPS):
1353         Fix typo in last change to use adjust_address.
1354
1355 2001-07-04  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
1356
1357         * doc/install.texi (Specific): Update information for *-*-solaris*.
1358
1359 Tue Jul  3 22:33:15 2001  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1360
1361         * explow.c (plus_constant_wide): Reinitialize Y for restart.
1362
1363 2001-07-03  Stan Shebs  <shebs@apple.com>
1364
1365         * config/darwin.h (SECTION_FUNCTION): Remove WAS_TEXT argument, remove
1366         case for flag_no_mach_text_sections.
1367         (EXTRA_SECTION_FUNCTIONS): Remove arg from uses of SECTION_FUNCTION.
1368         * config/darwin.c (flag_no_mach_text_sections): Remove.
1369         * config/darwin-protos.h (darwin_init_pragma): Remove decl.
1370
1371 Tue Jul  3 15:35:52 2001  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1372
1373         * explow.c (plus_constant_wide, case PLUS): Call find_constant_term
1374         and avoid checking for constant as first operand.
1375         * recog.c (find_constant_term_loc): No longer static.
1376         (adj_offettable_operand): Delete.
1377         * rtl.h (adj_offsettable_operand): Delete declaration.
1378         (find_constant_term): Add declaration.
1379         * caller-save.c: Replace calls to adj_offsettable_operand with calls
1380         to adjust_address.
1381         * config/arm/arm.c, config/c4x/c4x.c: Likewise.
1382         * config/clipper/clipper.md, config/h8300/h8300.c: Likewise.
1383         * config/i386/i386.c, config/i386/i386.md: Likewise.
1384         * config/i860/i860.c, config/i960/i960.c: Likewise.
1385         * config/i960/i960.md, config/m68hc11/m68hc11.c: Likewise.
1386         * config/m68k/m68k.c, config/m68k/m68k.md: Likewise.
1387         * config/m88k/m88k.md, config/mcore/mcore.c: Likewise.
1388         * config/mips/mips.c, config/mips/mips.md: Likewise.
1389         * config/mn10200/mn10200.c, config/mn10300/mn10300.c: Likewise.
1390         * config/ns32k/ns32k.c, config/ns32k/ns32k.md: Likewise.
1391         * config/pa/pa.c, config/pdp11/pdp11.c: Likewise.
1392         * config/pdp11/pdp11.md, config/sh/sh.c, config/v850/v850.c: Likewise.
1393         * config/vax/vax.md, config/ns32k/ns32k.c: Likewise.
1394         * config/ns32k/ns32k.md: Likewise.
1395
1396 2001-07-03  Zack Weinberg  <zackw@stanford.edu>
1397
1398         * rtl.c (copy_rtx): Handle 'T' format letter.
1399         * gensupport.c (collect_insn_data): Likewise.
1400         * print-rtl.c (print_rtx): Print 'T' slots like 's'.
1401
1402 2001-07-03  Nick Clifton  <nickc@cambridge.redhat.com>
1403
1404         * doc/invoke.texi (Directory Options): Specifiy range for <N> in
1405         -B option.  Use 'dir' not 'foo' as example directory name.
1406
1407 2001-07-03  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
1408
1409         * config/i386/sol2.h (ASM_PREFERRED_EH_DATA_FORMAT): Define.
1410         Fixes PRs bootstrap/3067, bootstrap/3249, bootstrap/3275.
1411
1412 2001-07-03  Joseph S. Myers  <jsm28@cam.ac.uk>
1413
1414         * doc/cppinternals.texi: Improve formatting and logical markup.
1415
1416 2001-07-03  Andreas Jaeger  <aj@suse.de>
1417
1418         * Makefile.in (insn-recog.o): Add dependency on reload.h.
1419
1420         * genrecog.c (write_header): Include reload.h for prototypes in
1421         insn-recog.c.
1422
1423 2001-07-03  Neil Booth  <neil@daikokuya.demon.co.uk>
1424
1425 config:
1426         * i386/cygwin.h (VALID_MACHINE_DECL_ATTRIBUTE,
1427         VALID_MACHINE_TYPE_ATTRIBUTE): Remove.
1428         * i386/i386-protos.h (i386_pe_valid_decl_attribute_p,
1429         i386_pe_valid_type_attribute_p): Add.
1430         * i386/i386.c (TARGET_INITIALIZER): Override for cygwin targets.
1431         * i386/winnt.c (i386_valid_decl_attribute_p): Return directly.
1432
1433 Mon Jul  2 21:52:19 2001  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1434
1435         * explow.c (plus_constant_wide, case LO_SUM): New case.
1436         (plus_constant_for_output_wide): Delete.
1437         * rtl.h (plus_constant_for_output): Delete.
1438         * alias.c (canon_rtx, init_alias_analysis): Call plus_constant
1439         instead of plus_constant_for_output.
1440         * recog.c (offsettable_address_p, adj_offsettable_operand): Likewise.
1441         * config/darwin.c, config/arm/arm.c, config/m68k/m68k.c: Likewise.
1442         * config/m88k/m88k.c, config/mips/mips.c, config/pa/pa.c: Likewise.
1443         * config/rs6000/rs6000.c, config/sparc/sparc.c: Likewise.
1444         * config/sparc/sparc.md: Likewise.
1445         Convert some change_address calls to adjust_address.
1446
1447 2001-07-03  Joseph S. Myers  <jsm28@cam.ac.uk>
1448
1449         * doc/extend.texi, doc/gcc.texi, doc/invoke.texi, doc/md.texi,
1450         doc/rtl.texi, doc/tm.texi: Improve formatting.  Improve
1451         documentation of -std and -Wwrite-strings.
1452
1453 2001-07-02  Geoffrey Keating  <geoffk@redhat.com>
1454
1455         * cse.c (canon_hash): Don't register registers in very small
1456         register classes, as extending their lifetime might cause
1457         reload to fail.
1458
1459 Mon Jul  2 23:14:00 CEST 2001  Jan Hubicka  <jh@suse.cz>
1460
1461         * flow.c (try_redirect_by_replacing_jump): Remove cc0 setter.
1462
1463         * flow.c (forwarder_block_p): Fix for fallthru blocks.
1464         (try_redirect_by_replacing_jump): Update properly the count
1465         and frequency information.
1466
1467 Mon Jul  2 14:20:13 2001  Jeffrey A Law  (law@cygnus.com)
1468
1469         * toplev.c (dump_file_index): Move SSA dumps just after first
1470         jump dump.
1471         (dump_file): Corresponding changes.
1472         (rest_of_compilation): Move SSA path to just after the first
1473         jump pass.
1474         * doc/gcc.texi (Passes): Update due to movement of SSA path.
1475         * doc/invoke.texi: Update dump file #s as they were completely
1476         out of date with reality.
1477
1478 2001-07-02  Geoffrey Keating  <geoffk@redhat.com>
1479
1480         * doc/tm.texi (Frame Layout): Document STACK_PUSH_CODE.
1481
1482         * expr.c (emit_move_insn_1): Deal with non-default
1483         STACK_PUSH_CODE.
1484
1485         * expr.c (emit_single_push_insn): Fix warning.
1486
1487 2001-07-02  Toshiyasu Morita  <toshiyasu.morita@hsa.hitachi.com>
1488
1489         * expr.c (emit_move_insn_1): Avoid modifying
1490         cfun->expr->x_stack_pointer when PUSH_ROUNDING is defined.
1491
1492 Mon Jul  2 15:33:31 2001  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1493
1494         * emit-rtl.c (adjust_address): New function.
1495         * expr.h (adjust_address): Add declaration.
1496         * builtins.c: Replace some calls to change_address with calls to it
1497         or to validize_mem.
1498         * caller-save.c, dwarf2out.c, except.c, expmed.c, expr.c: Likewise.
1499         * function.c, config/a29k/a29k.md, config/alpha/alpha.c: Likewise.
1500         * config/arm/arm.c, config/convex/convex.c: Likewise.
1501         * config/dsp16xx/dsp16xx.md, config/fr30/fr30.c: Likewise.
1502         * config/i386/i386.c, config/i386/i386.md: Likewise.
1503         * config/ia64/ia64.c, config/ia64/ia64.md: Likewise.
1504         * config/m32r/m32r.c, config/m68k/m68k.md: Likewise.
1505         * config/m88k/m88k.c, config/mips/mips.md: Likewise.
1506         * config/ns32k/ns32k.c, config/rs6000/rs6000.c: Likewise.
1507         * config/sh/sh.c, config/sparc/sparc.md: Likewise.
1508
1509 2001-07-02  Jim Wilson  <wilson@redhat.com>
1510
1511         * config/ia64/ia64.h: Delete obsolete lib1funcs.asm comment.
1512
1513 2001-07-02  Steve Ellcey  <sje@cup.hp.com>
1514
1515         * config/ia64/t-ia64: Change LIB1ASMFUNCS to use single underscore.
1516         * config/ia64/lib1funcs.asm: Change macro names to match t-ia64.
1517
1518 2001-07-02  Zack Weinberg  <zackw@stanford.edu>
1519
1520         * cppinit.c (lang_defaults): New table.
1521         (set_lang): Just read from lang_defaults into the live options
1522         structure.
1523
1524 2001-07-02  Zack Weinberg  <zackw@stanford.edu>
1525
1526         * Makefile.in (doc): Depend on $(GENERATED_MANPAGES).
1527         * doc/.cvsignore: Add gcc.1, cpp.1, gcov.1.
1528         * doc/gcc.1, doc/cpp.1, doc/gcov.1: Removed.
1529
1530 2001-07-02  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
1531
1532         * doc/install.texi: Various spelling and markup fixes.
1533         (Installing GCC): Component specific installation instructions are
1534         gone.
1535         Fix reference.
1536         Warn about removing old install dir in the presence of shared libs.
1537         (Configuration): Invoke with options target to match configure
1538         --help.
1539         Consistently refer to gas, gld pathnames.
1540         Invert --enable-multilib documentation.
1541         Remove references to old compiler versions.
1542
1543 Mon Jul  2 12:50:51 2001  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1544
1545         * flow.c (try_simplify_condjump): Fix typo in updating fallthru flags.
1546
1547 2001-07-02  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
1548
1549         * doc/install.texi (Specific, mips*-sgi-irix4): Split from IRIX 5
1550         section.
1551         (Specific, mips*-sgi-irix5): Note IDO download.
1552         Reworded MIPS C hints.
1553         Use GNU as instead of GAS.
1554         Markup fixes.
1555         Removed SGI Freeware reference, IRIX 6 only.
1556         (Specific, mips*-sgi-irix6): Removed ranlib caveats, obsolete.
1557         Note N64 library requirement/workaround.
1558         Update O32 hints.
1559         Complete list of structure passing bug victims.
1560
1561 2001-07-02  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
1562
1563         * doc/install.texi: Remove CVS Id.
1564
1565 2001-07-02  Andreas Jaeger  <aj@suse.de>
1566
1567         * ssa-dce.c (note_inherently_necessary_set): Add unused attribute.
1568         (find_inherently_necessary): Remove unused variable.
1569
1570 2001-07-02  Nathan Sidwell  <nathan@codesourcery.com>
1571
1572         * c-common.h (TDI_inlined): New ast dump phase.
1573         (dump_flag_name): New function.
1574         * c-dump.c (dump_files): Add inlined phase.
1575         (dump_flag_name): Define.
1576         * doc/invoke.texi (-fdump-ast-inlined): Document.
1577
1578 Mon Jul  2 06:29:36 2001  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1579
1580         * stor-layout.c (layout_decl): Revert change to handling of alignment
1581         in packed types.
1582
1583 Sun Jul  1 11:53:52 2001  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1584
1585         * c-common.c (decl_attributes, case A_MODE): Don't call layout_decl
1586         for FIELD_DECL.
1587
1588 2001-07-01  Geoffrey Keating  <geoffk@redhat.com>
1589
1590         * doc/tm.texi (FUNCTION_ARG): Document that the last call
1591         is special.
1592
1593 2001-07-01  Nathan Sidwell  <nathan@codesourcery.com>
1594
1595         * tlink.c (recompile_files): Remove COMPILER_PATH and
1596         LIBRARY_PATH from the environment.
1597
1598 2001-07-01  Zack Weinberg  <zackw@stanford.edu>
1599
1600         * c-common.h (enum rid): Add RID_FIRST_AT, RID_LAST_AT,
1601         RID_LAST_PQ.  Move RID_FIRST_PQ down with the other FIRST/LAST
1602         enumerators.
1603         (OBJC_IS_AT_KEYWORD, OBJC_IS_PQ_KEYWORD): New macros.
1604
1605         * c-parse.in (OBJC_STRING): Kill.
1606         (objc_string): Decompose to [objc_string] '@' STRING.
1607         (reswords): Take the leading '@' off all the Objective C keywords.
1608         (objc_rid_sans_at): Kill.
1609         (init_reswords): Don't initialize it.
1610         (yylexname): Use OBJC_IS_AT_KEYWORD and OBJC_IS_PQ_KEYWORD.
1611         (_yylex): Kill reconsider label.  Look ahead one token after
1612         an '@'; if we get an identifier, check whether it's an
1613         Objective C @-keyword.  If so, return the keyword.  Otherwise,
1614         put back the token and return the '@' as a terminal.
1615
1616         * cpplib.c (lex_macro_node): Remove unnecessary check for
1617         leading '@' on identifier.  Clarify control flow and commentary.
1618
1619 Sun Jul  1 11:53:52 2001  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1620
1621         * cse.c (new_label_ref): Variable deleted.
1622         (insert): Remove set of new_label_ref.
1623         (check_for_label_ref): New function.
1624         (cse_basic_block): Don't check new_label_ref; call check_for_label_ref.
1625
1626 See ChangeLog.5 for earlier changes.