OSDN Git Service

65b1c29868b428eb2e7202225ea0d27f493d024a
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
1 2002-01-30  David O'Brien  <obrien@FreeBSD.org>
2
3         * config.gcc: Include sparc/biarch64.h rather than sparc/sparc_bi.h.
4         * config/sparc/sparc_bi.h: Remove file.
5         * config/sparc/biarch64.h: New file (rename of sparc_bi.h).
6
7 2002-01-30  Richard Henderson  <rth@redhat.com>
8
9         * sched-deps.c (sched_analyze): Make a call read the frame pointer.
10
11 2002-01-30  Zack Weinberg  <zack@codesourcery.com>
12
13         * expmed.c (emit_store_flag): Call protect_from_queue on op0 and op1.
14
15 2002-01-28  Jason Merrill  <jason@redhat.com>
16
17         * dwarf2out.c (dwarf_cfi_name): Add other DWARF 3 codes.
18         (output_cfi): Likewise. Disable DW_CFA_GNU_negative_offset_extended.
19         (reg_save): Use DW_CFA_offset_extended_sf instead.
20
21         * dwarf2out.c (dwarf2out_finish): Don't abort if there were errors.
22
23 2002-01-29  Jakub Jelinek  <jakub@redhat.com>
24
25         * cselib.c (cselib_record_sets): Use IF_THEN_ELSE result
26         in cselib_lookup.
27
28 2002-01-29  Aldy Hernandez  <aldyh@redhat.com>
29
30         * rs6000.md ("*call_value_local32"): Remove constraints.
31         ("*call_value_local64"): Same.
32         ("*call_value_indirect_nonlocal_aix32"): Same.
33         ("*call_value_nonlocal_aix32"): Same.
34         ("*call_value_indirect_nonlocal_aix64"): Same.
35         ("*call_value_nonlocal_aix64"): Same.
36         ("*call_value_nonlocal_sysv"): Same.
37
38 2002-01-29  Richard Henderson  <rth@redhat.com>
39
40         * config/alpha/elf.h (SDB_DEBUGGING_INFO): Undef.
41
42 2002-01-29  Richard Henderson  <rth@redhat.com>
43
44         * expr.c (force_operand): Ignore flag_pic for detecting pic
45         address loads.
46         * regclass.c (init_reg_sets_1): Test fixed_regs not flag_pic
47         for determining if PIC_OFFSET_TABLE_REGNUM is call-clobbered.
48         * resource.c (mark_target_live_regs): Use regs_invalidated_by_call
49         instead of open-coded loop.
50         * doc/tm.texi (PIC_OFFSET_TABLE_REGNUM): Clarify that it must
51         be fixed when in use.
52
53 2002-01-29  Richard Henderson  <rth@redhat.com>
54
55         * sched-int.h (struct deps_reg): Add uses_length, clobbers_length.
56         * sched-rgn.c (propagate_deps): Update them.
57         * sched-deps.c (sched_analyze_insn): Update them.  Flush the
58         clobbers list when either gets too long.
59
60 2002-01-29  Jakub Jelinek  <jakub@redhat.com>
61
62         * config/i386/i386.h (LIMIT_RELOAD_CLASS): Handle LEGACY_REGS
63         and INDEX_REGS the same as GENERAL_REGS.
64         (SECONDARY_OUTPUT_RELOAD_CLASS): Likewise.
65
66 2002-01-29  Neil Booth  <neil@daikokuya.demon.co.uk>
67
68         * tree.c (build_nonstandard_integer_type): Correct prototype.
69
70 2002-01-29  Ulrich Weigand  <uweigand@de.ibm.com>
71
72         * config/s390/s390.md (movstrsico, movstrdix_64, 
73         movstrsix_31): Remove, replace by ...
74         (movstrdi_short, movstrsi_short, movstrdi_long, 
75         movstrsi_long): ... these.  New.
76         (movstrdi, movstrsi): Adapt.
77
78         (rotldi3, rotlsi3, ashldi3, *ashldi3_31, *ashldi3_64,
79         ashlsi3, lshrdi3, *lshrdi3_31, *lshrdi3_64, lshrsi3): 
80         Remove unnecessary CC clobber.
81         (*ashrdi3_cc_31, *ashrdi3_cconly_31, *ashrdi3_cc_64,
82         *ashrdi3_cconly_64, *ashrsi3_cc, *ashrsi3_cconly): New.
83
84         (divmoddi4): Don't partially initialize TImode register.
85
86 2002-01-29  Geoffrey Keating  <geoffk@redhat.com>
87
88         * doc/sourcebuild.texi (C Tests): Document gcc.dg/debug directory.
89
90 2002-01-29  Richard Henderson  <rth@redhat.com>
91
92         * flow.c (print_rtl_and_abort): Remove.
93         (print_rtl_and_abort_fcn): Remove.
94         (verify_local_live_at_start): Use dump_bb instead.
95         (verify_wide_reg): Likewise. Take a basic_block, not rtl endpoints.
96         (verify_wide_reg_1): Return 2 on mode test failure.
97
98 2002-01-29  Neil Booth  <neil@daikokuya.demon.co.uk>
99
100         PR c/3325, c/3326, c/2511, c/3347
101         * c-decl.c (enum_decl_context): Remove BITFIELD.
102         (grokdeclarator): Take bitfield width as an input.
103         Ensure bitfields are given the correct type.  Perform
104         bitfield width validation with build_bitfield_integer_type
105         rather than waiting for finish_struct.
106         (grok_typename, grok_typename_in_parm_context, start_decl,
107         push_parmdecl, grokfield, start_function): Update calls to
108         grokdeclarator.
109         (build_bitfield_integer_type): New function.
110         (finish_struct): Move bitfield validation to grokdeclarator
111         and build_bitfield_integer_type. 
112         * tree.c (build_nonstandard_integer_type): New function.
113         * tree.h (build_nonstandard_integer_type): New prototype.
114 objc:
115         * objc-act.c (objc_copy_list): Remove DECL_INITIAL kludge.
116
117 2002-01-29  Jakub Jelinek  <jakub@redhat.com>
118
119         PR other/1502:
120         * cppinit.c (cpp_handle_option): Add ignore argument, if it is zero,
121         don't ignore unrecognized -W* options.
122         (cpp_handle_options): Pass 1 as last argument to cpp_handle_option.
123         * cpplib.h (cpp_handle_option): Adjust prototype.
124         * c-decl.c (c_decode_options): Pass 0 as last argument to
125         cpp_handle_option.
126
127         PR c/2896:
128         * gcc.c (cpp_unique_options): Split from cpp_options.
129         (cpp_options): Source cpp_unique_options.
130         (default_compilers): Use cpp_unique_options instead of cpp_options
131         when used together with cc1_options.
132         (static_specs): Add cpp_unique_options.
133         * objc/lang-specs.h: Use cpp_unique_options instead of cpp_options
134         when used together with cc1_options.
135
136 2002-01-29  Kazu Hirata  <kazu@hxi.com>
137
138         * config/h8300/h8300-protos.h: Update the prototype of
139         output_a_shift.
140         * config/h8300/h8300.c (output_a_shift): Remove an unused
141         argument 'insn'.  Remove redundant code.
142         * config/h8300/h8300.md: Adust to the new prototype of
143         output_a_shift.
144
145 2002-01-29  Kazu Hirata  <kazu@hxi.com>
146
147         * config/h8300/h8300-protos.h: Update the prototypes of
148         emit_a_rotate and expand_a_rotate.
149         * config/h8300/h8300.c (emit_a_rotate): Change the type of the
150         first argument to 'enum rtx_code'.
151         (expand_a_rotate): Likewise.
152
153 2002-01-28  Kazu Hirata  <kazu@hxi.com>
154
155         * config/h8300/h8300-protos.h: Update the prototype of
156         output_simode_bld.
157         * config/h8300/h8300.c (output_simode_bld): Remove an argumen
158         'log2'.
159         * config/h8300/h8300.md: Adjust to the new prototype.
160
161 2002-01-28  Kazu Hirata  <kazu@hxi.com>
162
163         * conifg/h8300/h8300.c (h8300_adjust_insn_length): Remove
164         redundant code.
165
166 2002-01-28  John David Anglin  <dave@hiauly1.hia.nrc.ca>
167
168         * emit-rtl.c (gen_rtx_REG): Check that the PIC_OFFSET_TABLE_REGNUM
169         is a fixed register before returning pic_offset_table_rtx.
170         * loop.c (scan_loop): Don't hoist insns that set pic_offset_table_rtx
171         when PIC_OFFSET_TABLE_REG_CALL_CLOBBERED is defined.
172
173 2002-01-28  Jason Merrill  <jason@redhat.com>
174
175         * dwarf2.h: Sync with src version.
176
177 2002-01-28  Paul Koning  <pkoning@equallogic.com>
178
179         * builtin-types.def (BT_FN_VOID_CONST_PTR_VAR): Replace
180         BT_FN_VOID_PTR_VAR.
181         * builtins.def (BUILT_IN_PREFETCH): Change first argument to be const.
182         * doc/extend.texi (__builtin_prefetch): Update documentation:
183         first argument is now const void ptr.
184
185 2002-01-28  Kazu Hirata  <kazu@hxi.com>
186
187         * config/h8300/h8300-protos.h: Remove an unused prototype.
188
189 2002-01-28  Roman Zippel  <zippel@linux-m68k.org>
190
191         * toplev.c (lang_independent_init): Round up identifier size.
192
193 2002-01-28  Richard Earnshaw  <rearnsha@arm.com>
194
195         * config.gcc: Revert previous change.
196
197 2002-01-28  Andris Pavenis  <pavenis@latnet.lv>
198
199         * config/i386/djgpp.h: Use STRIP_NAME_ENCODING in macro UNIQUE_SECTION
200
201 2002-01-28  Richard Earnshaw  <rearnsha@arm.com>
202
203         * config.gcc (*-*-netbsdelf*): Set up generic parameters.
204         (*-*-netbsd*): Always use collect2.  Remove collect2 settings from
205         other non-elf netbsd config frags.
206         * config/netbsd-aout.h (STARTFILE_SPEC): Don't pull in c++rt0 since
207         collect2 will does that.
208         * config/netbsd.h (LIBGCC_SPEC): Add white space before -lgcc, so that
209         shared-lib frobbing will work.
210
211 2002-01-28  Kazu Hirata  <kazu@hxi.com>
212
213         * config/h8300/h8300.h: Fix formatting.
214         * config/h8300/h8300.md: Likewise.
215
216 2002-01-28  Loren J. Rittle  <ljrittle@acm.org>
217
218         * fixinc/inclhack.def (strict_ansi_not): Add a bypass based on
219         the old, removed AAA_standards fix.
220         * fixinc/fixincl.x: Rebuilt.
221
222 2002-01-28  Hans-Peter Nilsson  <hp@axis.com>
223
224         * config/cris/cris.h (CRT_CALL_STATIC_FUNCTION): Change to emit
225         atexit call in crtbegin, hooked in after call to frame_dummy;
226         register EH before registering __fini__start.
227
228 2002-01-28  Aldy Hernandez  <aldyh@redhat.com>
229
230         * config/rs6000/altivec.h: Remove spurious semicolons.
231
232 2002-01-27  Kazu Hirata  <kazu@hxi.com>
233
234         * config/h8300/h8300.md: Replace dead bit extraction patterns
235         with ones that work.
236
237 Sun Jan 27 13:23:40 2002  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
238
239         * emit-rtl.c (get_mem_attrs): Don't default alignment for non-BLKmode
240         if not STRICT_ALIGNMENT.
241         * rtl.h (MEM_ALIGN): Likewise.
242
243 2002-01-27  Craig Rodrigues  <rodrigc@gcc.gnu.org>
244
245         * doc/invoke.texi (-fdump-translation-unit): Revert this
246         patch: 2001-10-21  Craig Rodrigues  <rodrigc@gcc.gnu.org>
247
248 2002-01-27  Kazu Hirata  <kazu@hxi.com>
249
250         * config/h8300/h8300.md (define_constants): New.
251         (anonymous patterns) Use defined constants appropriately.
252
253 2002-01-27  Kazu Hirata  <kazu@hxi.com>
254
255         * config/h8300/h8300.c (function_arg): Remove redundant code.
256
257 2002-01-26  Richard Henderson  <rth@redhat.com>
258
259         * sched-deps.c (reg_pending_uses_head): New.
260         (reg_pending_barrier): Rename from reg_pending_sets_all.
261         (find_insn_list): Don't mark inline.
262         (find_insn_mem_list): Remove.
263         (add_dependence_list, add_dependence_list_and_free): New.
264         (flush_pending_lists): Replace only_write param with separate
265         for_read and for_write parameters.  Update all callers.  Use
266         add_dependence_list_and_free.
267         (sched_analyze_1): Do not add reg dependencies here; just set
268         the pending bits.  Use add_dependence_list.
269         (sched_analyze_2): Likewise.
270         (sched_analyze_insn): Replace schedule_barrier_found with
271         reg_pending_barrier.  Add all dependencies for pending reg
272         uses, sets, and clobbers.
273         (sched_analyze): Don't add reg dependencies for calls, just
274         set pending bits.  Use regs_invalidated_by_call.  Treat
275         sched_before_next_call as a normal list, not a fake insn.
276         (init_deps): No funny init for sched_before_next_call.
277         (free_deps): Free pending mems lists.  Don't zero reg_last.
278         (init_deps_global): Init reg_pending_uses.
279         (finish_deps_global): Free it.
280         * sched-int.h (deps): Make in_post_call_group_p boolean.  Update docs.
281         (find_insn_mem_list): Remove.
282         * sched-rgn.c (concat_INSN_LIST, concat_insn_mem_list): New.
283         (propagate_deps): Use them.  Zero temp mem lists.
284
285 2002-01-26  Richard Henderson  <rth@redhat.com>
286
287         * Makefile.in (CRTSTUFF_CFLAGS): New.
288         (crtbegin.o, crtend.o, crtbeginS.o, crtendS.o, crtbeginT.o): Use it.
289         * config.gcc (alpha-linux, alpha-freebsd, alpha-netbsd): Use plain
290         crtstuff.c instead of alpha assembly version.
291         * crtstuff.c (CRT_CALL_STATIC_FUNCTION): Rewrite to assume the
292         entire dummy function sequence.  Use FORCE_CODE_SECTION_ALIGN
293         not FORCE_{INIT,FINI}_SECTION_ALIGN.
294         (__do_global_dtors_aux): Mark used.
295         (frame_dummy, __do_global_ctors_aux): Mark used.
296         (fini_dummy, init_dummy): Remove.
297
298         * config/alpha/crtbegin.asm: Remove file.
299         * config/alpha/crtend.asm: Remove file.
300         * config/alpha/t-crtbe: Remove file.
301         * config/alpha/elf.h (CRT_CALL_STATIC_FUNCTION): New.
302         (LINK_EH_SPEC): New.
303
304         * config/cris/cris.h (CRT_CALL_STATIC_FUNCTION): Rewrite old
305         FORCE_INIT_SECTION_ALIGN hack.  Register __fini_start before
306         calling constructors.
307         * config/cris/linux.h (CRT_CALL_STATIC_FUNCTION): Undef.
308
309         * config/i386/i386.h (CRT_CALL_STATIC_FUNCTION): New.
310         * config/i386/linux.h (CRT_CALL_STATIC_FUNCTION): Replace old
311         CRT_END_INIT_DUMMY hack.
312         * config/i386/sol2.h (FORCE_CODE_SECTION_ALIGN): Replace
313         FORCE_{INIT,FINI}_SECTION_ALIGN.
314
315         * config/mcore/mcore-elf.h (FORCE_CODE_SECTION_ALIGN): Replace
316         FORCE_{INIT,FINI}_SECTION_ALIGN.
317
318         * config/s390/s390.h (CRT_CALL_STATIC_FUNCTION): Update for new
319         invocation sequence.
320         * config/sh/sh.h (CRT_CALL_STATIC_FUNCTION): Likewise.
321
322         * doc/tm.texi (CRT_CALL_STATIC_FUNCTION): Update.
323         (FORCE_CODE_SECTION_ALIGN): New.
324
325 2002-01-26  Richard Henderson  <rth@redhat.com>
326
327         * config/cris/cris.c (cris_print_operand): Handle 64-bit CONST_INT.
328
329 2002-01-26  Richard Henderson  <rth@redhat.com>
330
331         * config/alpha/alpha.c (alpha_sa_mask): Mark RA for unicos here too.
332         (alpha_sa_size): Use alpha_sa_mask to compute size of saved regs.
333
334 2002-01-26  Kazu Hirata  <kazu@hxi.com>
335
336         * config/h8300/h8300.md: Remove bit extraction patterns that
337         cannot be triggered.
338         Restrict each bit extraction pattern to a variant on which the
339         pattern is tested.
340
341 2002-01-26  Joseph S. Myers  <jsm28@cam.ac.uk>
342
343         * doc/include/texinfo.tex: Update to version 2002-01-04.07.
344
345 2002-01-26  Kazu Hirata  <kazu@hxi.com>
346
347         * config/h8300/h8300.md: Remove bit test patterns that cannot
348         be triggered.
349         Restrict each bit test pattern to a variant on which the
350         pattern is tested.
351
352 2002-01-26  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
353
354         * builtins.c (expand_builtin_strncat): Remove redundant check for
355         INTEGER_CST.
356
357 2002-01-25  David O'Brien  <obrien@FreeBSD.org>
358
359         * config/i386/x86-64.h (DEFAULT_PCC_STRUCT_RETURN): Do not overide
360         default setting.
361         * config/i386/freebsd64.h (DEFAULT_PCC_STRUCT_RETURN): Do not override
362         existing setting.
363
364 2002-01-25  Geoffrey Keating  <geoffk@redhat.com>
365
366         * dbxout.c (dbxout_init): Use assemble_name rather than just
367         stripping off the first character.
368         (dbxout_source_file): Likewise.
369
370 2002-01-25  DJ Delorie  <dj@redhat.com>
371
372         * config/sparc/sparc.c (sparc_emit_set_symbolic_const64): Compare
373         using rtx_equal_p, not by comparing pointers.
374
375 2002-01-25  Steve Ellcey  <sje@cup.hp.com>
376
377         * emit-rtl.c (gen_rtx_REG): Always return the same rtx
378         for PIC_OFFSET_TABLE_REGNUM.
379         (init_emit_once): Use gen_raw_REG to initialize pic_offset_table_rtx.
380
381 2002-01-25  David O'Brien  <obrien@FreeBSD.org>
382
383         * config.gcc (x86_64-*-freebsd*): New target.
384         (x86_64-*-netbsd*,x86_64-*-linux*): Use ${tm_file} rather than its
385         value.
386         (i[34567]86-*-freebsd*): Don't include svr4.h.
387         * config/i386/freebsd64.h: New file.
388
389 2002-01-25  Douglas B Rupp  <rupp@gnat.com>
390
391         * config/alpha/x-vms (version): Make static.
392
393         * config/alpha/vms.h (MD_FALLBACK_FRAME_STATE_FOR): Fix error
394         in previous checkin.
395
396         * Makefile.in (install-headers-cp): New target.
397         * config.gcc (alpha-dec-*vms*): Install headers with
398         install-headers-cp
399
400 Fri Jan 25 22:42:49 CET 2002  Jan Hubicka  <jh@suse.cz>
401
402         * unroll.c (unroll_loop): Lower final_value to nonmemory operand;
403         avoid it's copies.
404
405 Fri Jan 25 08:26:19 2002  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
406
407         * builtins.c (expand_builtin_strncpy): Use integer_zerop instead
408         of compare_tree_int.
409         (expand_builtin_strncat): Likewise.
410         * c-decl.c (finish_struct): Use tree_low_cst.
411         * tree.h (compare_tree_int): Arg is unsigned HOST_WIDE_INT.
412         * tree.c (compare_tree_int): Likewise.
413
414 2002-01-25  Ulrich Weigand  <uweigand@de.ibm.com>
415
416         * reload1.c (eliminate_regs_in_insn): Recognize frame pointer
417         adjustments even if they are implemented by more than two insns.
418
419 Fri Jan 25 20:43:56 CET 2002  Jan Hubicka  <jh@suse.cz>
420
421         * df.c (df_ref_create, df_ref_record_1, df_ref_record): Kill BB arg.
422         * df.h (struct ref): Kill B.
423         (DF_REF_BB, DF_REF_BBNO): Use BLOCK_FOR_INSN.
424
425         * basic-block.h (PROP_EQUAL_NOTES): New flag.
426         * flow.c (propagate_one_insn): Use it.
427         (mark_used_regs): Handle NIL.
428
429 2001-01-25  Geoffrey Keating  <geoffk@redhat.com>
430
431         * config/stormy16/stormy16.md (tablejump_pcrel): Use a MEM
432         to help folding.
433
434 2002-01-25  David Edelsohn  <edelsohn@gnu.org>
435
436         * rs6000.md (prefetch): Make address V4SI mode so that the address
437         is restricted to legitimate form for instruction.
438
439 2002-01-25  Bob Wilson  <bob.wilson@acm.org>
440
441         * doc/install.texi (xtensa-*-elf): New target.
442         (xtensa-*-linux*): New target.
443         * doc/contrib.texi: Add myself.
444
445 2002-01-25  Nick Clifton  <nickc@cambridge.redhat.com>
446
447         * config/arm/arm.c (arm_hard_regno_mode_ok): Allow any general
448         purpose register to hold an SImode (or smaller) value.
449
450 2002-01-25  Jakub Jelinek  <jakub@redhat.com>
451
452         * unwind-dw2-fde-glibc.c: If inhibit_libc, use __register_frame*
453         registry only.
454         * crtstuff.c: Likewise.
455
456 2002-01-25  Kazu Hirata  <kazu@hxi.com>
457
458         * config/h8300/h8300.md (negation patterns): Tighten
459         predicates to register_operand.
460
461 2002-01-24  Aldy Hernandez  <aldyh@redhat.com>
462
463         * loop.c (emit_prefetch_instructions): Use the prefetch insn's
464         mode, not Pmode.
465
466         * builtins.c (expand_builtin_prefetch): Same.
467
468 2002-01-24  Alexandre Oliva  <aoliva@redhat.com>
469
470         * config/sh/sh.md (sym_label2reg): Make sure all CONSTs have
471         modes.
472
473 2002-01-24  Kazu Hirata  <kazu@hxi.com>
474
475         * config/h8300/h8300.c (print_operand): Remove support for
476         operand character 'A'.
477         * config/h8300/h8300.md (three anonymous patterns): Replace
478         operand character 'A' with either 'T' or 'S'.
479
480 2002-01-24  Kazu Hirata  <kazu@hxi.com>
481
482         * config/h8300/h8300.c (print_operand): Remove support for
483         operand character 'U'.
484
485 2002-01-24  Andris Pavenis  <pavenis@latnet.lv>
486
487         * config/i386/t-djgpp: Use NATIVE_SYSTEM_HEADER_DIR.
488
489 2002-01-24  Nick Clifton  <nickc@cambridge.redhat.com>
490
491         * config/arm/arm.c (arm_hard_regno_mode_ok): Allow SImode
492         values to be assigned to the stack pointer.
493
494 2002-01-14  Hartmut Penner  <hpenner@de.ibm.com>
495
496         * emit_rtl.c (gen_lowpart_common): Conversion from const_int 
497         to const_double needs to be done right for big-endian systems.
498
499 2002-01-24  Jason Merrill  <jason@redhat.com>
500
501         PR c++/2432
502         * config/sparc/sparc.md (call-jump peepholes): Pass the right insn
503         to can_throw_internal.
504
505 2002-01-23  Richard Henderson  <rth@redhat.com>
506
507         * fold-const.c (fold): Change UINT_MAX test to check vs precision
508         rather than TYPE_MAX_VALUE.  Fix indentation and a bogus negation.
509
510 2002-01-24  Alexandre Oliva  <aoliva@redhat.com>
511
512         * config/sh/sh.md (symGOT_load, sym2GOT, sym2GOTOFF): New expands.
513         (symGOT2reg): Use them, then set as GOT value as unchanging.
514         (symGOTOFF2reg): Set REG_EQUAL note.  Use a different pseudo
515         as a temporary, if possible.
516         (symPLT_label2reg): Enclose (pc) in UNSPEC_PIC.  Emit
517         sym@PLT-(.LPCS#+2-.) instead of sym@PLT+.-(.LPCS#+2).
518
519 2002-01-23  Kazu Hirata  <kazu@hxi.com>
520
521         * config/h8300/h8300.md: Fix xorqi and xorqi so that they will
522         accept to accept 0x80 as operands[2].
523
524 2002-01-24  Alexandre Oliva  <aoliva@redhat.com>
525
526         * config/sparc/sparc.md (fix_trunctfdi2): Correct typo in mode.
527
528 2002-01-23  Richard Henderson  <rth@redhat.com>
529
530         * config/alpha/alpha.md (call_value_osf_1_er peepholes): Fix typo.
531
532 2002-01-23  Aldy Hernandez  <aldyh@redhat.com>
533
534         * c-parse.in (parmlist_or_identifiers): Add maybe_attribute.
535         (parmlist_or_identifiers_1): Verify that only a parmlist follows
536         an attribute.
537
538 2002-01-23  Richard Henderson  <rth@redhat.com>
539
540         * expr.c (move_by_pieces_1): Extend size before negation.
541
542         * config/m68k/t-m68kbare (MULTILIB_OPTIONS): Add 68040 and 68060.
543         (MULTILIB_MATCHES): Remove 68040 and 68060 aliases.
544         (MULTILIB_EXCEPTIONS): Ignore 68881 and soft-float for 68040 and 68060.
545         * config/m68k/t-m68kelf: Likewise.
546
547 2002-01-23  Bob Wilson  <bob.wilson@acm.org>
548
549         * config/xtensa/elf.h: New file.
550         * config/xtensa/lib1funcs.asm: New file.
551         * config/xtensa/lib2funcs.S: New file.
552         * config/xtensa/linux.h: New file.
553         * config/xtensa/t-xtensa: New file.
554         * config/xtensa/xtensa-config.h: New file.
555         * config/xtensa/xtensa-protos.h: New file.
556         * config/xtensa/xtensa.c: New file.
557         * config/xtensa/xtensa.h: New file.
558         * config/xtensa/xtensa.md: New file.
559         * config.gcc (xtensa-*-elf*): New target.
560         (xtensa-*-linux*): New target.
561         * cse.c (canon_hash): Compare rtx pointers instead of register
562         numbers.  This is required for the Xtensa port.
563         * integrate.c (copy_insn_list): Handle case where the static
564         chain is in memory and the memory address has to be copied to
565         a register.
566         * doc/invoke.texi (Option Summary): Add Xtensa options.
567         (Xtensa Options): New node.
568         * doc/md.texi (Machine Constraints): Add Xtensa machine constraints.
569
570 2002-01-23  Zack Weinberg  <zack@codesourcery.com>
571
572         * diagnostic.c (internal_error): Do ICE suppression only
573         when ENABLE_CHECKING is not defined.
574
575         * c-typeck.c (require_complete_type): Return error_mark_node
576         if type is error_mark_node.
577
578 2002-01-23  Janis Johnson  <janis187@us.ibm.com>
579
580         * toplev.c (process_options): Disable -fprefetch-loop-arrays with
581         -Os and issue a warning.
582
583 2002-01-23  Zack Weinberg  <zack@codesourcery.com>
584
585         * doc/fragments.texi, doc/hostconfig.texi: Update to reflect
586         current (lack of) need for host configuration by hand.
587
588         * doc/gccint.texi, doc/rtl.texi, doc/tm.texi: Adjust cross
589         references.  Documentation of some target macros moved from
590         hostconfig.texi to tm.texi.
591
592 2002-01-23  Will Cohen  <wcohen@redhat.com>
593
594         * config/arm/arm.h (THUMB_FUNCTION_PROFILER): Define if not currently
595         defined.
596
597 2002-01-23  Kazu Hirata  <kazu@hxi.com>
598
599         * config/h8300/h8300.md (*andorhi3): Accept 0x8000 as an
600         operand[3].
601
602 2002-01-23  Jason Merrill  <jason@redhat.com>
603
604         * tree.c (build1): Don't set TREE_READONLY on INDIRECT_REF.
605
606         * function.c (assign_parms): Don't put args of inline functions
607         into registers when not optimizing.
608
609 2002-01-23  Nick Clifton  <nickc@cambridge.redhat.com>
610
611         * config/arm/arm.md (UNSPEC_PROLOGUE_USE): New unspec constant.
612         (prologue_use): New pattern.
613         * config/arm/arm.c (expand_prologue): Use gen_prologue_use in
614         preference to gen_rtx_USE.
615         (thumb_expand_prologue): Use gen_prologue_use in preference to
616         gen_rtx_USE.
617         (thumb_expand_epilogue): Use gen_prologue_use in preference to
618         gen_rtx_USE.
619
620 2002-01-23  Hans-Peter Nilsson  <hp@bitrange.com>
621
622         * loop.c [!HAVE_prefetch] (CODE_FOR_prefetch): Define to 0.
623
624 2002-01-23  Neil Booth  <neil@daikokuya.demon.co.uk>
625
626         PR c/3504
627         * doc/extend.texi: Correct documentation of __alignof__.
628
629 2002-01-22  Zack Weinberg  <zack@codesourcery.com>
630
631         * params.h: Rename arguments of DEFPARAM so that it will be
632         recognized as a translation keyword.
633
634 2002-01-22  Aldy Hernandez  <aldyh@redhat.com>
635
636         * extend.texi: Document altivec functions.
637         Fix N-bit adjectives in X86 builtin documentation.
638
639 2002-01-22  Alexandre Oliva  <aoliva@redhat.com>
640
641         * reload.c (reg_overlap_mentioned_for_reload_p): Handle PLUS and
642         auto_inc_dec values.
643
644 2002-01-22  Richard Earnshaw  <rearnsha@arm.com>
645
646         * config/netbsd-aout.h (SWITCH_TAKES_ARG): Remove bogus white space
647         after backslash.
648         (ASM_DECLARE_OBJECT_NAME): Add missing backslash before final line.
649
650 2002-01-22  Alexandre Oliva  <aoliva@redhat.com>
651
652         * config/i386/freebsd-aout.h (ASM_QUAD): Undefine.
653
654 2002-01-22  Richard Henderson  <rth@redhat.com>
655
656         * config/alpha/alpha.c (split_small_symbolic_mem_operand): Use
657         copy_insn not copy_rtx.
658
659 2002-01-23  Alan Modra  <amodra@bigpond.net.au>
660
661         * combine.c (simplify_and_const_int): Don't trunc_int_for_mode
662         "nonzero" as that might add "1" bits.  Ensure "constop" is
663         properly sign extened.
664         (force_to_mode): Tweak for sign extended constop.
665
666 2002-01-22  Richard Henderson  <rth@redhat.com>
667
668         * config/alpha/alpha.c (some_small_symbolic_mem_operand) Use
669         for_each_rtx instead of assuming we're already looking at the MEM.
670         (split_small_symbolic_mem_operand): Likewise.
671         * config/alpha/alpha.h (PREDICATE_CODES): Update.
672         * config/alpha/alpha.md (small symbolic memory splitters): Update.
673
674 2002-01-22  Richard Henderson  <rth@redhat.com>
675
676         * config/alpha/alpha.md (divmodsi_internal_er): Generate lituse
677         sequence number for the literal.
678         (divmoddi_internal_er): Likewise.
679
680 2002-01-22  Craig Rodrigues  <rodrigc@gcc.gnu.org>
681
682         PR java/4972
683         * aclocal.m4 (AM_ICONV): Put linking flags for libiconv
684         in LIBICONV variable.
685         * configure: Regenerated.
686
687 2002-01-22  Krister Walfridsson  <cato@df.lth.se>
688
689         * dependence.c (build_def_use): Remove array_idx.
690
691         * dwarfout.c (last_filename): Remove.
692         (output_compile_unit_die): Remove last_filename.
693
694 2002-01-22  Roger Sayle  <roger@eyesopen.com>
695             Richard Henderson  <rth@redhat.com>
696
697         PR opt/3640
698         * fold-const.c (fold): Optimize unsigned comparisons against
699         UINT_MAX (and similar unsigned constants).
700
701 2002-01-22  Janis Johnson  <janis187@us.ibm.com>
702
703         * Makefile.in (loop.o): Depend on OPTABS_H.
704         * loop.c (emit_prefetch_instructions): Check the prefetch operand
705         against the predicate.
706
707         PR target/5379
708         * config/i386/i386.md (prefetch_sse): Specify "p" as a constraint
709         for the address operand.
710
711 2002-01-22  Richard Henderson  <rth@redhat.com>
712
713         * config/alpha/freebsd.h (FUNCTION_PROFILER): Remove.
714
715 2002-01-22  Craig Rodrigues  <rodrigc@gcc.gnu.org>
716
717         PR other/5450
718         * config/i386/sysv4.h (CPP_SPEC): Define, and add CPU
719         preprocessor flags.
720
721 2002-01-22  Jason Thorpe  <thorpej@wasabisystems.com>
722
723         * config.gcc (x86_64-*-netbsd*): New target.
724         * config/i386/netbsd64.h: New file.
725
726 2002-01-22  Aldy Hernandez  <aldyh@redhat.com>
727
728         * regrename.c (kill_value): Fix typo.
729
730 2002-01-22  Aldy Hernandez  <aldyh@redhat.com>
731
732         * doc/tm.texi: Remove STARTING_FRAME_PHASE.
733
734         * config/rs6000/rs6000.h: Same.
735
736         * function.c (instantiate_virtual_regs): Remove
737         STARTING_FRAME_PHASE.
738         (assign_stack_local_1): Same.
739         Calculate frame phase.
740
741 2002-01-22  Nick Clifton  <nickc@redhat.com>
742
743         * config/arm/arm.h (CONDITIONAL_REGISTER_USAGE): Move 'regno'
744         variable declaration to outer scope in order to simplify
745         future extensions.
746         (HARD_REGNO_MODE_OK): Replace macro body with a with a call to
747         arm_hard_regno_mode_ok.
748         * config/arm/arm-protos.h: Add a prototype for
749         arm_hard_regno_mode_ok.
750         * config/arm/arm.c (soft_df_operand): Remove now redundant
751         check for DImode values using IP_REGNUM.
752         (nonimmediate_soft_df_operand): Remove now redundant check for
753         DImode values using IP_REGNUM.
754         (arm_hard_regno_mode_ok): New function. New check: make sure
755         that DImode values are not stored in IP_REGNUM.
756
757         * config/arm/arm.c (arm_expand_prologue): Replace REG_MAYBE_DEAD
758         note with a USE.
759         (thumb_expand_prologue): Replace REG_MAYBE_DEAD note with a USE.
760
761 2002-01-22  Jason Merrill  <jason@redhat.com>
762
763         * c-semantics.c (genrtl_compound_stmt): Only check nesting
764         consistency if this COMPOUND_STMT is scoped.
765
766 2002-01-22  Kazu Hirata  <kazu@hxi.com>
767
768         * predict.c: Fix formatting.
769         * print-tree.c: Likewise.
770         * protoize.c: Likewise.
771         * real.h: Likewise.
772         * rtl.h: Likewise.
773         * sbitmap.h: Likewise.
774         * scan.c: Likewise.
775         * sched-deps.c: Likewise.
776         * sched-vis.c: Likewise.
777         * sdbout.c: Likewise.
778         * sibcall.c: Likewise.
779         * ssa.c: Likewise.
780         * ssa-ccp.c: Likewise.
781         * ssa-dce.c: Likewise.
782         * stmt.c: Likewise.
783         * stor-layout.c: Likewise.
784         * system.h: Likewise.
785
786 Tue Jan 22 06:26:33 2002  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
787
788         * tree.c (int_fits_type_p): If bounds of a subtype are variable, see
789         if fits in bounds of base type.
790
791         * dwarf2out.c (equate_decl_number_to_die): Add "int" to decls.
792         (loc_descriptor_from_tree, case CALL_EXPR, case ADDR_EXPR): New.
793         (add_bound_info, default): If can't find a context, make a
794         SAVE_EXPR.
795         (dwarf2out_finish): Check for SAVE_EXPR in node->created_for.
796
797 2002-01-22  Hans-Peter Nilsson  <hp@axis.com>
798
799         * c-typeck.c (parser_build_binary_op): If result from
800         build_binary_op is ERROR_MARK just return error_mark_node without
801         further processing.
802
803 2002-01-21  Jason Thorpe  <thorpej@wasabisystems.com>
804
805         * config/netbsd.h (TARGET_HAS_F_SETLKW): define.
806         Split a.out-specific bits into...
807         * config/netbsd-aout.h: ...this.
808         * config/netbsd-elf.h: New file.
809         * config/alpha/netbsd-elf.h: Remove.
810         * config/alpha/netbsd.h: Rewrite for a NetBSD/alpha ELF target.
811         * config/i386/netbsd-elf.h (LIB_SPEC): Remove.
812         (STARTFILE_SPEC): Remove redundant definition.
813         (ENDFILE_SPEC): Likewise.
814         (LINK_SPEC): Likewise.
815         (CPP_SPEC): Likewise.
816         (ASM_SPEC): Likewise.
817         (LIB_SPEC): Likewise.
818         (SWITCH_TAKES_ARG): Likewise.
819         (TARGET_MEM_FUNCTIONS): Likewise.
820         (CPP_PREDEFINES): Redefine.
821         (ASM_FINAL_SPEC): Remove redefinition.
822         (ASM_COMMENT_START): Redefine.
823         (FUNCTION_PROFILER): Define.
824         (TARGET_VERSION): Redefine.
825         Comment and formatting cleanup.
826         * config/i386/netbsd.h: Include <netbsd-aout.h>.
827         * config/m68k/netbsd.h: Include <netbsd-aout.h>.
828         * config/mips/netbsd.h: Rewrite for NetBSD/mips ELF target,
829         big- or little-endian.
830         * config/ns32k/netbsd.h: Include <netbsd-aout.h>.
831         * config.gcc (*-*-netbsd*): Add definitions common to all
832         NetBSD configs.
833         (alpha*-*-netbsd*): Remove redundant xm_defines, gas, and
834         gnu_ld definitions.  Add netbsd-elf.h to and remove
835         alpha/netbsd-elf.h from tm_file.  Remove alpha/t-crtfm from
836         tmake_file, and don't lose previous tmake_file contents.
837         (arm*-*-netbsd*): Add netbsd-aout.h to tm_file.
838         (i[34567]86-*-netbsdelf*): Remove redundant xm_defines, gas, and
839         gnu_ld definitions.  Add netbsd-elf.h to tm_file.
840         (mips-dec-netbsd*): Remove as alias for mipsel-*-netbsd*.
841         (mipsel-*-netbsd*): Rename this to...
842         (mips*-*-netbsd*): ...this.  Add elfos.h to tm_file.  Add
843         mips/little.h to tm_file for mips*el-*.
844         (powerpc-*-netbsd*): Remove redundant xm_defines definition.
845         (sparc-*-netbsd*): Add netbsd-aout.h to tm_file.
846         (vax-*-netbsd*): Add netbsd-aout.h to tm_file.
847
848 2002-01-21  John David Anglin  <dave@hiauly1.hia.nrc.ca>
849
850         * pa-protos.h (reg_before_reload_operand): New function prototype.
851         * pa.c (reg_before_reload_operand): New function implementation.
852         * pa.md (decrement_and_branch_until_zero, movb): Use it.  Change "!*m"
853         contraints to "*m".
854
855 2002-01-21  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
856
857         * combine.c (simplify_and_const_int): Properly sign-extend CONSTOP.
858
859 2002-01-21  John David Anglin  <dave@hiauly1.hia.nrc.ca>
860
861         * pa64-hpux.h (MD_EXEC_PREFIX): Set to "/usr/ccs/bin".
862         (MD_STARTFILE_PREFIX): Set to "/usr/ccs/lib/pa20_64/".
863         (MD_STARTFILE_PREFIX_1): Set to "/opt/langtools/lib/pa20_64/".
864         (EH_FRAME_IN_DATA_SECTION): Define and update comment on init sections.
865         (ENDFILE_SPEC): Undefine.
866         (STARTFILE_SPEC): Redefine for PA.
867
868 2002-01-21  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
869
870         * config/rs6000/t-ppccomm (CRTSTUFF_T_CFLAGS_S): Re-add -fPIC.
871
872 2002-01-21  Daniel Jacobowitz  <drow@mvista.com>
873
874         * config.gcc: Add entries to supported PowerPC --with-cpu
875         types.
876
877 2002-01-21  Jakub Jelinek  <jakub@redhat.com>
878
879         * config/i386/i386.c (ix86_function_arg_regno_p): Never return
880         true for 64-bit mode only SSE registers in 32-bit mode.
881
882 2002-01-21  Kazu Hirata  <kazu@hxi.com>
883
884         * unwind-dw2.c: Fix formatting.
885         * unwind-dw2-fde.c: Likewise.
886         * unwind-dw2-fde.h: Likewise.
887         * unwind-pe.h: Likewise.
888         * varasm.c: Likewise.
889         * varray.h: Likewise.
890
891 2002-01-21  Hans-Peter Nilsson  <hp@bitrange.com>
892
893         Remove workaround for register stack overwrite bug in mmix.
894         * config/mmix/mmix.c (mmix_target_asm_function_prologue): Remove
895         support for TARGET_REG_STACK_FILL_BUG.
896         * config/mmix/mmix.h: Remove member has_call_without_parameters.
897         (TARGET_MASK_REG_STACK_FILL_BUG, TARGET_REG_STACK_FILL_BUG):
898         Delete.
899         (TARGET_DEFAULT): Remove TARGET_MASK_REG_STACK_FILL_BUG.
900         (TARGET_SWITCHES): Remove -mreg-stack-fill-bug-workaround and
901         -mno-reg-stack-fill-bug-workaround.
902         * config/mmix/mmix.md ("call", "call_value"): Don't set struct
903         machine member has_call_without_parameters.
904         * doc/invoke.texi (Option Summary) <MMIX Options>: Remove
905         -mreg-stack-fill-bug-workaround and
906         -mno-reg-stack-fill-bug-workaround.
907         (MMIX Options): Ditto.
908
909 2002-01-21  Kazu Hirata  <kazu@hxi.com>
910
911         * config/h8300/h8300.c (function_arg): Replace 0 with NULL_RTX
912         as appropriate.
913         Remove redundant code.
914
915 2002-01-21  Joseph S. Myers  <jsm28@cam.ac.uk>
916
917         * config/alpha/alpha.h, config/arc/arc.h, config/avr/avr.h,
918         config/c4x/c4x.h, config/d30v/d30v.h, config/dsp16xx/dsp16xx.h,
919         config/fr30/fr30.h, config/ia64/ia64.h, config/m68hc11/m68hc11.h,
920         config/mips/mips.h, config/rs6000/rs6000.h, config/sparc/sparc.h,
921         config/stormy16/stormy16.h, config/v850/v850.h: Remove commented
922         out target macro definitions and non-target-specific comments
923         mostly taken from old versions of the manual.
924
925 2002-01-20  Kazu Hirata  <kazu@hxi.com>
926
927         * config/h8300/h8300.h: Fix comment formatting.
928         * config/ia64/aix.h: Likewise.
929         * config/ia64/ia64-protos.h: Likewise.
930         * config/ia64/ia64.c: Likewise.
931         * config/ia64/ia64.h: Likewise.
932         * config/ia64/ia64intrin.h: Likewise.
933         * config/ia64/linux.h: Likewise.
934         * config/ia64/unwind-aix.c: Likewise.
935         * config/ia64/unwind-ia64.c: Likewise.
936
937 2002-01-20  Kazu Hirata  <kazu@hxi.com>
938
939         * config/h8300/h8300.c: Revise comments about shift code.
940
941 2002-01-20  Kazu Hirata  <kazu@hxi.com>
942
943         * config/h8300/h8300.c (function_arg): Update a comment.
944
945 2002-01-20  Kazu Hirata  <kazu@hxi.com>
946
947         * config/h8300/h8300.md: Update the comments at the beginning
948         of the file.
949
950 2002-01-20  Kazu Hirata  <kazu@hxi.com>
951
952         * config/i370/i370.c: Fix comment formatting.
953         * config/i370/i370.h: Likewise.
954         * config/i370/i370.md: Likewise.
955         * config/i370/linux.h: Likewise.
956
957 Sun Jan 20 18:40:14 2002  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
958
959         * reg-stack.c (subst_stack_regs): Properly check for deleted insn.
960
961         * dwarf2out.c (loc_descriptor_from_tree): Add TRUTH_*_EXPR cases.
962         (gen_struct_or_union_type_die): Don't SIGSEGV if no TYPE_STUB_DECL
963         in incomplete case.
964
965 2002-01-20  Graham Stott  <grahams@redhat.com>
966
967         * cfgloop.c (flow_loop_preheader_scan): Fix typo.
968
969 2002-01-19  John David Anglin  <dave@hiauly1.hia.nrc.ca>
970
971         * config.gcc (hppa*64*-*-hpux11*): Fix tmake_file.
972
973 2002-01-19  Tom Rix  <trix@redhat.com>
974
975         * config/rs6000/rs6000.md: Fix DF split for 64 bit hosts.
976
977 2002-01-18  Aldy Hernandez  <aldyh@redhat.com>
978
979         * doc/tm.texi (STARTING_FRAME_PHASE): Document.
980
981         * function.c (assign_stack_local_1): Adjust x_frame_offset with
982         STARTING_FRAME_PHASE.
983         (STARTING_FRAME_PHASE): New.
984         (instantiate_virtual_regs): Check saneness of
985         STARTING_FRAME_PHASE.
986
987         * config/rs6000/rs6000.h (STARTING_FRAME_PHASE): New.
988
989 2002-01-19  Alexandre Oliva  <aoliva@redhat.com>
990
991         * config/sh/sh.md (movdf_i4 split): Fix alter_subreg calls.
992
993 2002-01-18  Craig Rodrigues  <rodrigc@gcc.gnu.org>
994
995         * doc/install.texi (hppa*-hp-hpux11): Clarify that GCC 2.95.x cannot
996         be used for bootstrapping GCC 3.0.
997
998 2002-01-18  Kazu Hirata  <kazu@hxi.com>
999
1000         * config/h8300/h8300.md: Fix an insn length.
1001
1002 2002-01-18  Kazu Hirata  <kazu@hxi.com>
1003
1004         * bitmap.h: Fix comment formatting.
1005         * combine.c: Likewise.
1006         * cppfiles.c: Likewise.
1007         * c-pragma.h: Likewise.
1008         * c-typeck.c: Likewise.
1009         * df.c: Likewise.
1010         * dwarf2out.c: Likewise.
1011         * function.c: Likewise.
1012         * gcc.c: Likewise.
1013         * genattrtab.c: Likewise.
1014         * gthr-win32.h: Likewise.
1015         * haifa-sched.c: Likewise.
1016         * predict.c: Likewise.
1017         * rtlanal.c: Likewise.
1018         * rtl.h: Likewise.
1019         * unwind-dw2-fde.h: Likewise.
1020         * unwind-pe.h: Likewise.
1021         * vmsdbgout.c: Likewise.
1022
1023 Thu Jan 17 15:28:26 2002  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1024
1025         * attribs.c (decl_attributes): Clear ATTR_FLAG_TYPE_IN_PLACE
1026         if type_required and passed decl.
1027
1028 2002-01-17  Aldy Hernandez  <aldyh@redhat.com>
1029
1030         * config.gcc (cpu_type): Include altivec.h in powerpc
1031         extra_headers.
1032         Same for darwin.
1033
1034         * config/rs6000/altivec.h: New.
1035
1036 2002-01-17  David Edelsohn  <edelsohn@gnu.org>
1037
1038         * doc/install.texi (*-ibm-aix*): Update assembler and exception
1039         handling information.
1040         * doc/trouble.texi (Interoperation): Add libstdc++ information
1041         for AIX.
1042         (Misunderstandings): Add template instantiation and static template
1043         member information for AIX.
1044
1045 2002-01-17  Jason Merrill  <jason@redhat.com>
1046
1047         * dbxout.c (dbxout_type): Support const and volatile.
1048
1049         * except.c (add_partial_entry): Remove backwards compatibility code.
1050         (end_protect_partials): Likewise.
1051
1052 2002-01-17  Jakub Jelinek  <jakub@redhat.com>
1053
1054         * config/ia64/ia64.md (prologue_use): New.
1055         * config/ia64/ia64.c (ia64_expand_prologue): Use
1056         gen_prologue_use instead of gen_rtx_USE.
1057         (group_barrier_needed_p): Handle CODE_FOR_prologue_use the same way
1058         as CODE_FOR_pred_rel_mutex.
1059         (ia64_sched_reorder2): Likewise.
1060
1061 2002-01-16  Eric Christopher  <echristo@redhat.com>
1062
1063         * config/mips/r3900.h: Reformat.
1064         (SUBTARGET_CPP_SIZE_SPEC): Remove.
1065         * config/mips/isa3264.h (SUBTARGET_CPP_SIZE_SPEC): Ditto.
1066         * config/mips/mips.h (ABI_GAS_ASM_SPEC): Default to "".
1067         (SUBTARGET_CPP_SIZE_SPEC): Rewrite.
1068         * config/mips/t-elf: Remove mips3 multilib.
1069
1070 2002-01-16  H.J. Lu <hjl@gnu.org>
1071
1072         * config/mips/linux.h: Include "mips/abi64.h".
1073
1074 2002-01-16  H.J. Lu <hjl@gnu.org>
1075
1076         * config/mips/t-linux: New.
1077
1078         * config.gcc: Add mips/t-linux to tmake_file for mips*-*-linux*.
1079
1080         * config/mips/linux.h: Don't include "gofast.h".
1081         (INIT_SUBTARGET_OPTABS): Removed.
1082
1083 2002-01-16  Kazu Hirata  <kazu@hxi.com>
1084
1085         * config/h8300/h8300-protos.h: Replace emit_a_shift with
1086         output_a_shift.
1087         * config/h8300/h8300.c: Likewise.
1088         * config/h8300/h8300.md: Likewise.
1089
1090 2002-01-16  Kazu Hirata  <kazu@hxi.com>
1091
1092         * config/h8300/h8300.md (pushqi1_h8300): Use a tab instead of
1093         spaces after an opcode name.
1094         (pushqi1_h8300hs): Likewise.
1095         (pushhi1_h8300hs): Likewise.
1096
1097 2002-01-16  Kazu Hirata  <kazu@hxi.com>
1098
1099         * doc/extend.texi: Replace "option" with "attribute"
1100         appropriately.
1101
1102 2002-01-16  Jakub Jelinek  <jakub@redhat.com>
1103
1104         * config/alpha/alpha.c (some_small_symbolic_mem_operand): Look into
1105         (and:DI () (const_int -8)).
1106         (split_small_symbolic_mem_operand): Split
1107         (mem (and:DI () (const_int -8)).
1108
1109 2002-01-16  Jakub Jelinek  <jakub@redhat.com>
1110
1111         PR target/5309:
1112         * config/sparc/sparc.c (ultrasparc_adjust_cost): Handle TYPE_IDIV the
1113         same way as TYPE_IMUL.
1114         (ultrasparc_sched_reorder): Likewise.
1115         * config/sparc/sparc.md (type): Add comment to update
1116         ultrasparc_sched_reorder when making changes.
1117
1118 2002-01-16  Kazu Hirata  <kazu@hxi.com>
1119
1120         * doc/invoke.texi: Change the dump file name of block
1121         reordering pass from 28.bbro to 29.bbro.
1122         Mention -dk option.
1123
1124 Wed Jan 16 17:54:22 CET 2002  Jan Hubicka  <jh@suse.cz>
1125
1126         * i386.md (minsf splitter): Fix pasto.
1127
1128 2002-01-16  Nick Clifton  <nickc@cambridge.redhat.com>
1129
1130         * config/arm/arm.c (arm_expand_prologue): Add REG_MAYBE_DEAD note
1131         to frame pointer initialisation instruction.
1132         (thumb_expand_prologue): Add REG_MAYBE_DEAD note to frame pointer
1133         initialisation instruction.
1134         (soft_df_operand): Do not accept the IP register.
1135         (nonimmediate_soft_df_operand): Do not accept the IP register.
1136
1137 2002-01-16  Jakub Jelinek  <jakub@redhat.com>
1138
1139         PR target/5357:
1140         * config/sparc/sparc.c (sparc_override_options): Avoid MASK_V9 and
1141         MASK_V8 being both set.
1142
1143 2002-01-16  Ulrich Weigand  <uweigand@de.ibm.com>
1144
1145         * config/s390/s390.c (s390_emit_prologue): Do not emit USE
1146         insn for GOT register; add REG_MAYBE_DEAD notes instead.
1147         config/s390/s390.md (call, call_value): Add GOT register to
1148         CALL_INSN_FUNCTION_USAGE where needed.
1149         (call_exp, call_value_exp): New.
1150
1151 2002-01-16  Nick Clifton  <nickc@cambridge.redhat.com>
1152
1153         * config/arm/arm.c: General formatting tidy up.
1154
1155 2002-01-16  Graham Stott  <grahams@redhat.com>
1156
1157         * calls.c (try_to_integrate): Use "(size_t)" intermediate
1158         cast and when casting an integer literal to "rtx" pointer.
1159         (expand_call): Likewise.
1160         * flow.c (try_pre_increment): Likewise.
1161         (find_use_as_address): Likewise.
1162         * integrate.c (expand_iline_function): Likewise.
1163         * regmove.c (try_auto_increment): Likewise.
1164
1165 2002-01-16  Graham Stott  <grahams@redhat.com>
1166
1167         * sched-rgn.c (passed): Use sbitmap_free.
1168         (header): Likewise.
1169         (inner): Likewise.
1170         (in_queue): Likewise.
1171         (in_stack): Likewise.
1172
1173 2002-01-15  Eric Christopher  <echristo@redhat.com>
1174
1175         * flow.c (propagate_one_insn): Change to use fatal_insn.
1176
1177 2002-01-15  Kazu Hirata  <kazu@hxi.com>
1178
1179         * expmed.c (extract_fixed_bit_field): Remove unused code.
1180         * system.h: Poison SLOW_ZERO_EXTEND.
1181         * doc/tm.texi: Remove.
1182         * config/1750a/1750a.h (SLOW_ZERO_EXTEND): Remove.
1183         * config/arm/arm.h: Likewise.
1184         * config/avr/avr.h: Likewise.
1185         * config/clipper/clipper.h: Likewise.
1186         * config/convex/convex.h: Likewise.
1187         * config/d30v/d30v.h: Likewise.
1188         * config/dsp16xx/dsp16xx.h: Likewise.
1189         * config/elxsi/elxsi.h: Likewise.
1190         * config/fr30/fr30.h: Likewise.
1191         * config/h8300/h8300.h: Likewise.
1192         * config/i370/i370.h: Likewise.
1193         * config/i386/i386.h: Likewise.
1194         * config/m68k/m68k.h: Likewise.
1195         * config/mips/mips.h: Likewise.
1196         * config/ns32k/ns32k.h: Likewise.
1197         * config/pdp11/pdp11.h: Likewise.
1198         * config/pj/pj.h: Likewise.
1199         * config/s390/s390.h: Likewise.
1200         * config/sh/sh.h: Likewise.
1201         * config/stormy16/stormy16.h: Likewise.
1202         * config/v850/v850.h: Likewise.
1203         * config/vax/vax.h: Likewise.
1204         * config/we32k/we32k.h: Likewise.
1205
1206 2002-01-15  Aldy Hernandez  <aldyh@redhat.com>
1207
1208         * config/rs6000/rs6000.md (altivec_stvx): Add parallels to stvx.
1209         (altivec_lvsl): Change constraint to b.
1210         (altivec_lvsr): Same.
1211         (altivec_lvebx): Same.
1212         (altivec_lvehx): Same.
1213         (altivec_lvewx): Same.
1214         (altivec_lvxl): Same.
1215         (altivec_lvx): Same.
1216         (altivec_stvx): Add parallel.
1217         (altivec_stvxl): Same.
1218         (altivec_stvehx): Same.
1219         (altivec_stvebx): Same.
1220         (altivec_stvebx): Same.
1221
1222 2002-01-15  Aldy Hernandez  <aldyh@redhat.com>
1223
1224         * config.gcc: Change altivec.h to altivec-defs.h.
1225
1226         * config/rs6000/altivec.h: Delete.
1227
1228         * config/rs6000/altivec-defs.h: Add.
1229
1230 2002-01-15  John David Anglin  <dave@hiauly1.hia.nrc.ca>
1231
1232         * vax.c (vax_rtx_cost): Return MAX_COST for unsupported MULT, UDIV
1233         and UMOD modes.
1234
1235         * vax.h (INDEX_TERM_P): Restrict indexing to modes which have a size
1236         less than or equal to eight bytes.
1237
1238         * vax.md (andsi3): Remove constraints and change SET destination
1239         operand type to nonimmediate_operand.
1240         (andhi3, andqi3): Likewise.  Don't clear high order bits of operand 1
1241         when it is a CONST_INT.
1242
1243 2002-01-15  Jason Merrill  <jason@redhat.com>
1244
1245         * c-common.def (FILE_STMT): New code.
1246         * c-common.c (statement_code_p): It's a statement.
1247         * c-common.h (stmt_tree_s): Add x_last_filename.
1248         (FILE_STMT_FILENAME_NODE, FILE_STMT_FILENAME): New macros.
1249         (last_expr_filename): New macro.
1250         * c-semantics.c (begin_stmt_tree): Initialize it.
1251         (add_stmt): If the filename changed, also insert a
1252         FILE_STMT.
1253         (expand_stmt): Handle seeing one.
1254
1255 2002-01-15  Eric Christopher  <echristo@redhat.com>
1256
1257         * flow.c (propagate_one_insn): Add error message and print out
1258         insn for debugging.
1259
1260 2002-01-15  Joseph S. Myers  <jsm28@cam.ac.uk>
1261
1262         * system.h (ASM_IDENTIFY_GCC, STDC_VALUE, TRAMPOLINE_ALIGN,
1263         ASM_IDENTIFY_GCC_AFTER_SOURCE): Poison.
1264         * config/pdp11/pdp11.h (TRAMPOLINE_ALIGN): Rename to
1265         TRAMPOLINE_ALIGNMENT.
1266         * config/arm/arm.h, config/mcore/mcore.h: Likewise.  Change value
1267         to be in bits.
1268         * config/i386/cygwin.h (PCC_BITFIELDS_TYPE_MATTERS): Rename to
1269         PCC_BITFIELD_TYPE_MATTERS.
1270         * config/interix.h (STDC_VALUE): Remove.  Use
1271         STDC_0_IN_SYSTEM_HEADERS.
1272         * config/darwin.h (ASM_IDENTIFY_GCC), config/dsp16xx/dsp16xx.h
1273         (ASM_IDENTIFY_GCC), config/stormy16/stormy16.h (ASM_IDENTIFY_GCC,
1274         ASM_IDENTIFY_GCC_AFTER_SOURCE): Remove.
1275
1276 2002-01-15  Craig Rodrigues  <rodrigc@gcc.gnu.org>
1277
1278         * doc/install.texi (hppa*-hp-hpux11): --enable-threads does
1279         not work on this platform currently.
1280
1281 2002-01-15  Joseph S. Myers  <jsm28@cam.ac.uk>
1282
1283         * c-typeck.c (build_unary_op): Don't wrap msgid argument of
1284         readonly_warning in _().
1285
1286 2002-01-15  Douglas B Rupp  <rupp@gnat.com>
1287
1288         * gcc.c (delete_if_ordinary): Backout previous change.
1289
1290 2002-01-15  Kazu Hirata  <kazu@hxi.com>
1291
1292         * config/h8300/h8300.c (print_operand): Remove support for
1293         unused operand characters.
1294
1295         * read-rtl.c: Fix formatting.
1296         * real.c: Likewise.
1297         * recog.c: Likewise.
1298         * regclass.c: Likewise.
1299         * regmove.c: Likewise.
1300         * reg-stack.c: Likewise.
1301         * reload1.c: Likewise.
1302         * rtlanal.c: Likewise.
1303
1304 2002-01-15  Kazu Hirata  <kazu@hxi.com>
1305
1306         * config/i386/i386.c: Fix formatting.
1307
1308 2002-01-15  Jakub Jelinek  <jakub@redhat.com>
1309
1310         * c-typeck.c (process_init_element): Don't save_expr
1311         COMPOUND_LITERAL_EXPR if just its initializer will be used.
1312
1313 2002-01-15  David Edelsohn  <edelsohn@gnu.org>
1314
1315         * config/rs6000/rs6000.c (rs6000_output_function_epilogue): Do not
1316         emit optional traceback table if optimize_size or TARGET_ELF.
1317         * config/rs6000/rs6000.md (prefetch): New.
1318
1319 2002-01-15  Andreas Jaeger  <aj@suse.de>
1320
1321         * config.gcc (x86_64-*-*): Install mmintrin.h and xmmintrin.h.
1322
1323 2002-01-15  Kazu Hirata  <kazu@hxi.com>
1324
1325         * mips-tfile.c: Fix formatting.
1326
1327 Tue Jan 15 00:56:11 CET 2002  Jan Hubicka  <jh@suse.cz>
1328
1329         * unroll.c (final_reg_note_copy): Fix previous commit.
1330
1331 2002-01-14  Kazu Hirata  <kazu@hxi.com>
1332
1333         * config/h8300/h8300-protos.h: Remove the prototype for
1334         eq_operator.
1335         * config/h8300/h8300.c (eq_operator): Remove.
1336
1337 2002-01-14  Richard Henderson  <rth@redhat.com>
1338
1339         * config/i386/i386.md (prefetch): Tidy.
1340         (prefetch_3dnow): Fix locality operand.
1341
1342 2002-01-14  Richard Henderson  <rth@redhat.com>
1343
1344         * config/mips/mips.h (HI_AND_FP_REGS): New register class.
1345         (CLASS_CANNOT_CHANGE_MODE): Disallow HI in little-endian mode.
1346
1347 2002-01-14  Hans-Peter Nilsson  <hp@bitrange.com>
1348
1349         * reload1.c (reload_combine): Pass reg_sum replacement through
1350         copy_rtx in loop performing multiple changes.
1351
1352 2002-01-14  Jakub Jelinek  <jakub@redhat.com>
1353
1354         * except.c (remove_unreachable_regions): New.
1355         (free_eh_status): Clear exception_handler_labels.
1356         (convert_from_eh_region_ranges): Call remove_unreachable_regions.
1357         (find_exception_handler_labels): Don't add the same label more than
1358         once.
1359         (remove_exception_handler_label): Don't die if
1360         find_exception_handler_labels hasn't been called for the current
1361         function yet.
1362
1363 Mon Jan 14 21:26:13 CET 2002  Jan Hubicka  <jh@suse.cz>
1364
1365         * toplev.c (rest_of_compilation): Rebuild jump labels after
1366         gcse.
1367
1368 2002-01-14  Joseph S. Myers  <jsm28@cam.ac.uk>
1369
1370         * doc/extend.texi: Move documentation of X86 built-in functions
1371         here.
1372         * doc/invoke.texi: From here.
1373         * doc/sourcebuild.texi: Document location of documentation for
1374         machine built-in functions.
1375
1376 2002-01-13  Christopher Faylor  <cgf@redhat.com>
1377
1378         * cppfiles.c (TEST_THRESHOLD): New macro.
1379         (SHOULD_MMAP): Ditto.
1380         (read_include_file): Use SHOULD_MMAP macro to decide when mmap should
1381         be used.
1382
1383 Mon Jan 14 20:23:34 CET 2002  Jan Hubicka  <jh@suse.cz>
1384
1385         * unroll.c (final_reg_note_copy): Properly handle
1386         REG_LABEL
1387         (unroll_loops): Fix LOOP_CONDITION heuristics.
1388
1389 2002-01-14  Geoffrey Keating  <geoffk@redhat.com>
1390
1391         * doc/invoke.texi (Xstormy16 Options): Add xstormy16 option.
1392         * doc/md.texi (Machine Constraints): Use @minus{} where appropriate.
1393
1394 Mon Jan 14 20:18:19 CET 2002  Jan Hubicka  <jh@suse.cz>
1395
1396         * cfgcleanup.c (try_forward_edges): Avoid infinite loop at infinite
1397         threaded loop.
1398
1399 2002-01-14  Tom Rix  <trix@redhat.com>
1400
1401         * config/rs6000/rs6000.md: Fix typo with sradi.
1402
1403 2002-01-14  Ulrich Weigand  <uweigand@de.ibm.com>
1404
1405         * config/s390/s390.md (movstrdix_64, movstrsix_31, movstrdi_64,
1406         movstrsi_31, clrstrsi_64, clrstrsi_31): Improve RTL templates.
1407         (clrstrdi, clrstrsi): Adapt callers.
1408
1409         (extendsidi2, zero_extendsidi2): Remove no-conflict blocks.
1410
1411         (movti splitter): Never use register 0 as base register.
1412
1413 2002-01-14  Hartmut Penner  <hpenner@de.ibm.com>
1414
1415         * combine.c (simplify_shift_const): Always generate new rtx
1416         for shift expression instead of reusing given expression.
1417
1418 Mon Jan 14 07:08:55 2002  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1419
1420         * config/alpha/alpha.c (alpha_expand_mov): Don't call
1421         alpha_legitimize_address unless mode is Pmode.
1422
1423 2002-01-13  Geoffrey Keating  <geoffk@redhat.com>
1424
1425         * doc/md.texi (Modifiers): Document the '*' constraint for the
1426         user.
1427
1428         * doc/md.texi (Machine Constraints): Add constraints for xstormy16.
1429         * doc/extend.texi (Function Attributes): 'interrupt' is valid
1430         for xstormy16 too.
1431
1432 2002-01-13  Richard Henderson  <rth@redhat.com>
1433
1434         * reload.c (find_reloads): Use a hard reg destination as reload reg
1435         for an input reload of the source.
1436
1437 2002-01-13  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
1438
1439         * doc/install.texi (Binaries): Make link to ftp.writtenword.com
1440         more generic.
1441
1442 Sun Jan 13 07:23:01 2002  Douglas B Rupp  <rupp@gnat.com>
1443
1444         * Makefile.in (LIB2FUNCS): Split into LIB2FUNCS_1 and LIB2FUNCS_2.
1445         * mklibgcc.in (LIB2FUNCS): Split into LIB2FUNCS_1 and LIB2FUNCS_2.
1446
1447         * config/alpha/x-vms (USE_COLLECT2): Set to empty.
1448
1449 Sun Jan 13 06:55:31 2002  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1450
1451         * dwarf2out.c (mem_loc_descriptor, case ADDRESSOF): New case.
1452
1453 2002-01-12  Tom Rix  <trix@redhat.com>
1454
1455         * config/rs6000/rs6000.c (rs6000_emit_set_long_const): Use ior for
1456         TARGET_POWERPC64.
1457
1458 2002-01-12  Richard Henderson  <rth@redhat.com>
1459
1460         * config/i386/i386.c (bdesc_2arg): Mark psadbw MASK_3DNOW_A.
1461
1462         * doc/invoke.texi: Update Alpha options.
1463
1464         * doc/invoke.texi: Update i386 built-in function lists.
1465
1466 Sat Jan 12 17:38:11 CET 2002  Jan Hubicka  <jh@suse.cz>
1467
1468         * unroll.c (final_reg_note_copy): Avoid crash on REG_LABEL note
1469         referencing outside.
1470
1471 Sat Jan 12 08:54:51 2002  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1472
1473         * diagnostic.c (warn_deprecated_use): Rework to lower indentation.
1474         * expr.c (emit_move_insn_1): Remove warning, use HOST_WIDE_INT for
1475         offsets, and change line folding.
1476         * optabs.c (expand_binop): Remove warnings.
1477         * sdbout.c (sdbout_record_type_name): Constify NAME to avoid warning.
1478
1479 2002-01-12  Graham Stott <grahams@redhat.com>
1480
1481         * attribs.c (handle_deprecated_attribute): constify WHAT.
1482         * diagnostic.c (warn_deprecated_use): Add braces, fixes
1483         dangling else warning and constify WHAT.
1484         * except.h (struct function, struct inline_remap): Move
1485         struct tag forward defs before all prototypes.
1486         (duplicate_eh_regions): Whitespace.
1487
1488 2002-01-12  Nick Clifton  <nickc@cambridge.redhat.com>
1489
1490         * config/arm/arm.h (ARM_LEGITIMIZE_RELOAD_ADDRESS): Use
1491         MODE_BASE_REG_CLASS.
1492         (THUMB_LEGITIMIZE_RELOAD_ADDRESS): Use MODE_BASE_REG_CLASS.
1493
1494 2002-01-12  Richard Henderson  <rth@redhat.com>
1495
1496         * config/i386/i386.c (override_options): If SSE, enable sse prefetch.
1497         (ix86_expand_vector_move): New.
1498         (bdesc_2arg): Remove andps, andnps, orps, xorps.
1499         (ix86_init_mmx_sse_builtins): Make static.  Remove composite builtins.
1500         Remove old prefetch builtins.  Special case the logicals removed above.
1501         (ix86_expand_builtin): Likewise.
1502         (safe_vector_operand): Use V4SFmode, not TImode.
1503         (ix86_expand_store_builtin): Remove shuffle arg.  Update callers.
1504         (ix86_expand_timode_binop_builtin): New.
1505         * config/i386/i386-protos.h: Update.
1506         * config/i386/i386.h (enum ix86_builtins): Update.
1507         * config/i386/i386.md: Correct predicates on MMX/SSE patterns.
1508         Use ix86_expand_vector_move in vector move expanders.
1509         (movti_internal, movti_rex64): Add xorps alternative.
1510         (sse_clrv4sf): Rename and adjust from sse_clrti.
1511         (prefetch): Don't work so hard.
1512         (prefetch_sse, prefetch_3dnow): Use PREFETCH rtx, not UNSPEC.
1513         * config/i386/xmmintrin.h (__m128): Use V4SFmode.
1514         (_mm_getcsr, _mm_setcsr): Fix typo in builtin name.
1515
1516 2002-01-11  Richard Henderson  <rth@redhat.com>
1517
1518         * config/i386/mmintrin.h: New file.
1519         * config/i386/xmmintrin.h: New file.
1520         * config.gcc (i?86-*-*): Add extra_headers.
1521         * simplify-rtx.c (simplify_unary_operation): Handle saturating
1522         truncation codes.
1523         (simplify_binary_operation): Handle saturating arithmetic codes.
1524         * config/i386/i386.c (ix86_expand_sse_comi): Return the full result,
1525         not the lowpart subreg.
1526         (ix86_expand_builtin): Return a TImode dummy register instead of 0
1527         on error.
1528         * config/i386/i386.md (mmx_clrdi): Override memory attribute.
1529
1530 2002-01-12  Michael Hayes  <m.hayes@elec.canterbury.ac.nz>
1531
1532         * conflict.c (conflict_graph_compute): Free regsets when finished.
1533         * ssa.c (compute_coalesced_reg_partition): Likewise.
1534
1535 2002-01-12  Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
1536
1537         * global.c (find_reg): Check for HARD_REGNO_CALL_PART_CLOBBERED
1538         every where we allocate a register.
1539
1540 2002-01-12  Michael Hayes  <m.hayes@elec.canterbury.ac.nz>
1541
1542         * gcse.c (compute_pre_data, pre_gcse): Use sbitmap_free.
1543         * lcm.c (compute_earliest, compute_farthest): Likewise.
1544
1545 2002-01-11  Janis Johnson  <janis187@us.ibm.com>
1546
1547         * expr.c (expand_assignment): Fix misuse of MEM_KEEP_ALIAS_SET.
1548
1549 2002-01-11  Janis Johnson  <janis187@us.ibm.com>
1550
1551         * doc/rtl.texi (Insns): Fix 2 typos.
1552
1553 2002-01-11  Joseph S. Myers  <jsm28@cam.ac.uk>
1554
1555         * doc/invoke.texi: Avoid overfull hboxes.  Add summary of D30V
1556         options.  Use @table @gcctabopt for MMIX options.  Add index
1557         entries for MMIX options.  Start new paragraph with first
1558         heading of the machine-dependent options.
1559
1560 2002-01-11  Craig Rodrigues  <rodrigc@gcc.gnu.org>
1561
1562         PR other/5299
1563         * config/ns32k/ns32k.md: Fix spelling mistake of "than" in comments.
1564         * combine.c (force_to_mode): Same.
1565         * reload1.c (clear_reload_reg_in_use): Same.
1566
1567 2002-01-11  Nick Clifton  <nickc@cambridge.redhat.com>
1568
1569         * config/arm/arm.c (arm_gen_constant): Correct test of 'remainder'
1570         and 'subtargets'.
1571
1572 2002-01-11  Andreas Jaeger  <aj@suse.de>,
1573             Brad Lucier <lucier@math.purdue.edu>
1574
1575         * config/i386/i386.h (CPP_CPUCOMMON_SPEC): Remove wrong
1576         mcpu.
1577
1578 Fri Jan 11 07:35:12 2002  Douglas B Rupp  <rupp@gnat.com>
1579
1580         * config/alpha/vms.h: (MD_FALLBACK_FRAME_STATE_FOR): Fix errors.
1581         Protect with IN_LIBGCC.
1582         (LINK_EH_SPEC): Add required trailing space.
1583
1584 Fri Jan 11 09:25:05 2002  Nicola Pero  <n.pero@mi.flashnet.it>
1585
1586         * c-tree.h: Move function declarations so that they are listed
1587         under the filename which contains them.
1588         (check_identifier, finish_decl_top_level,
1589         lookup_name_current_level_global, shadow_record_fields): Remove.
1590
1591 2002-01-11  Andreas Jaeger  <aj@suse.de>
1592
1593         * config/i386/i386.h (CPP_CPUCOMMON_SPEC): Remove duplicated
1594         march.
1595
1596 2002-01-10  Richard Henderson  <rth@redhat.com>
1597
1598         * config/alpha/alpha.c (print_operand): Add 'J'.
1599         * config/alpha/alpha.md (call_osf_1_er, call_value_osf_1_er): Take a
1600         new operand with the sequence number for the lituse.  When splitting
1601         the insns, use gen_movdi_er_high_g and generate a sequence number.
1602         (gen_movdi_er_high_g): Print the sequence number if non-zero.
1603
1604 2002-01-10  Aldy Hernandez  <aldyh@redhat.com>
1605
1606         * config/rs6000/rs6000.c (altivec_init_builtins): Add support for
1607         lvebx, lvehx, lvewx, lvxl, lvx, stvx, stvebx, stvehx, stvewx,
1608         stvxl.
1609         (altivec_expand_builtin): Same.
1610         (altivec_expand_stv_builtin): New.
1611
1612         * config/rs6000/rs6000.h (rs6000_builtins): Same.
1613
1614         * config/rs6000/rs6000.md ("altivec_lvebx"): New.
1615         ("altivec_lvehx"): New.
1616         ("altivec_lvewx"): New.
1617         ("altivec_lvxl"): New.
1618         ("altivec_lvx"): New.
1619         ("altivec_stvx"): New.
1620         ("altivec_stvebx"): New.
1621         ("altivec_stvehx"): New.
1622         ("altivec_stvewx"): New.
1623         ("altivec_stvxl"): New.
1624
1625 2002-01-10  Richard Henderson  <rth@redhat.com>
1626
1627         * cfgrtl.c (delete_insn): Assert insn hasn't been deleted yet.
1628         * reload1.c (delete_output_reload): Zap spill_reg_store.  Take
1629         care not to delete instructions twice.
1630
1631 2002-01-10  Zack Weinberg  <zack@codesourcery.com>
1632
1633         * toplev.c: Don't declare environ (it's not used anywhere).
1634         * configure.in: Don't check for declaration of environ.
1635         * config/i386/xm-mingw32.h: Don't #define environ.
1636         * config.in, configure: Regenerate.
1637
1638 2002-01-10  Zack Weinberg  <zack@codesourcery.com>
1639
1640         * configure.in: Set stage1_cflags for powerpc-*-darwin*.
1641         * configure: Regenerate.
1642
1643         * config/interix.h: Set DO_GLOBAL_CTORS_BODY and
1644         DO_GLOBAL_DTORS_BODY here, not in xm-interix.h.
1645         * config/alpha/vms.h: Set INCLUDE_DEFAULTS here, not in
1646         alpha/xm-vms.h.
1647         * config/m68k/t-next: Set OTHER_FIXINCLUDES_DIRS and
1648         LIMITS_H_TEST here, not in m68k/x-next.
1649         * config/rs6000/beos.h: Set STANDARD_INCLUDE_DIR and
1650         SYSTEM_INCLUDE_DIR here, not in rs6000/xm-beos.h.
1651
1652         * config/x-interix: Don't set RANLIB, RANLIB_TEST, SHELL,
1653         LIBGCC2_INCLUDES, or SYSTEM_HEADER_DIR.
1654         * config/alpha/x-vms: Don't set USE_COLLECT2.  Add comments.
1655
1656         * config/i386/x-djgpp: Renamed i386/t-djgpp.
1657         * config/m88k/x-dolph: Renamed m88k/t-dolph.
1658         * config/m88k/x-texXD88: Renamed m88k/t-texXD88.
1659         * config/pa/x-pa-mpeix: Renamed pa/t-mpeix.  Update for
1660         replacement of quadlib.asm with quadlib.c.
1661
1662         * config/x-interix3, config/xm-interix.h, config/i386/x-beos,
1663         config/i386/xm-osf1elf.h, config/rs6000/x-darwin,
1664         config/rs6000/xm-beos.h: Delete file.
1665
1666         * config.gcc: Update to match above changes.
1667
1668 2002-01-10  Kazu Hirata  <kazu@hxi.com>
1669
1670         * config/h8300/h8300.h: Fix comment typos.
1671         * config/h8300/h8300.md: Likewise.
1672         * config/h8300/lib1funcs.asm: Likewise.
1673
1674 2002-01-10  Dale Johannesen  <dalej@apple.com>
1675
1676         PR optimization/5269
1677         * unroll.c (precondition_loop_p): Make *increment be the correct
1678         sign when n_iterations known, to avoid confusing caller.
1679
1680 2002-01-10  Kazu Hirata  <kazu@hxi.com>
1681
1682         * doc/extend.texi (deprecated): Fix a typo.
1683
1684 Thu Jan 10 22:35:54 CET 2002  Jan Hubicka  <jh@suse.cz>
1685
1686         * basic-block.h (update_br_prob_note): Declare.
1687         * cfgcleanup.c (try_simplify_condjump): Call update_br_prob_note.
1688         (try_forward_edges): Care negative frequencies and update note.
1689         (outgoing_edges_match): Tweek conditional merging heuristics.
1690         (try_crossjump_to_edge): use update_br_prob_note.
1691         * cfglayout.c (fixup_reorder_chain): Likewise.
1692         * cfrtl.c (update_br_prob_note): New.
1693         * ifcvt.c (dead_or_predicable): Call update_br_prob_note.
1694
1695         * i386.c (ix86_decompose_address): Return -1 if address contains
1696         shift.
1697         (legitimate_address_p): Require ix86_decompose_address to return 1.
1698
1699         * gcse.c (hash_scan_set): Use CONSTANT_INSN_P.
1700         (cprop_insn): Likewise.
1701
1702 2002-01-10  Kazu Hirata  <kazu@hxi.com>
1703
1704         * toplev.c: Fix formatting.
1705         * tree.c: Likewise.
1706         * tree-dump.c: Likewise.
1707         * unroll.c: Likewise.
1708         * unwind-dw2.c: Likewise.
1709         * unwind-dw2-fde.c: Likewise.
1710         * unwind-dw2-fde-glibc.c: Likewise.
1711         * unwind-sjlj.c: Likewise.
1712
1713 2002-01-10  Joseph S. Myers  <jsm28@cam.ac.uk>
1714
1715         * doc/invoke.texi: Document PDP-11 options.
1716
1717 2002-01-10  Kazu Hirata  <kazu@hxi.com>
1718
1719         * config/h8300/h8300.h: Fix formatting.
1720
1721 2001-01-10  Ira Ruben   <ira@apple.com>
1722
1723         Add __attribute__ ((deprecated)).
1724         * extend.texi: Document __attribute__ ((deprecated)).
1725         * invoke.texi: Document -Wno-deprecated-declarations.
1726         * testsuite/g++.dg/other/deprecated.C: New C++ test.
1727         * testsuite/gcc.dg/deprecated.c: New C test.
1728         * attribs.c (enum attrs): Declare handle_deprecated_attribute().
1729         (c_common_attribute_table): Add "deprecated" entry.
1730         (handle_deprecated_attribute): New function.
1731         * c-decl.c (deprecated_states): New enum.
1732         deprecated_state: State of "deprecated" handling.
1733         (start_decl): Set deprecated_state based on attributes.
1734         (grokdeclarator): Test for deprecated uses, propagate attribute.
1735         * c-typeck.c (build_component_ref): Test for deprecated fields.
1736         (build_external_ref): Test for deprecated primaries.
1737         * diagnostic.c (warn_deprecated_use) New function to issue
1738         warnings about __attribute__ ((depricated)) references.
1739         * flags.h (warn_deprecated_decl): Extern declared for
1740         -W[no-]deprecated-declarations option.
1741         * print-tree.c (print_node): Show deprecated flag status.
1742         * toplev.c (warn_deprecated_decl): Defined.
1743         (W_options): Added "deprecated-declaration".
1744         * toplev.h (warn_deprecated_use): Extern declared.
1745         * tree.h (struct tree_common): Define deprecated_flag.
1746         (TREE_DEPRECATED): New macro to access flag.
1747         * cp/call.c (build_call): Test for deprecated calls.
1748         * cp/class.c (add_implicitly_declared_members): Set global
1749         flag to tell grokdeclarator to not issue deprecated warnings.
1750         * cp/cp-tree.h: Add extern for adding_implicit_members.
1751         * cp/decl.c (deprecated_states): New enum.
1752         (start_decl): Set deprecated_state based on attributes.
1753         (grokdeclarator): Test for deprecated uses, propagate attribute.
1754         * cp/lex.c (do_identifier): Test for deprecated primaries.
1755         * cp/typeck.c (build_component_ref): Test for deprecated fields.
1756
1757 2001-01-10  Ira Ruben   <ira@apple.com>
1758
1759         Fix to assign attributes to inline member functions.
1760         * cp/decl.c (start_method): Handle attrlist.
1761
1762 2002-01-10  Kazu Hirata  <kazu@hxi.com>
1763
1764         * combine.c (expand_field_assignment): Use subreg_lsb().
1765
1766 2002-01-10  David Edelsohn  <edelsohn@gnu.org>
1767
1768         * alias.c (find_base_value): Add cases for HIGH, PRE_INC, PRE_DEC,
1769         POST_INC, POST_DEC, PRE_MODIFY, and POST_MODIFY.
1770         (find_base_term): Add cases for TRUNCATE, PRE_MODIFY, and POST_MODIFY.
1771         Recurse for any operand of AND as long as constant is non-zero.
1772
1773 2002-01-10  Kazu Hirata  <kazu@hxi.com>
1774
1775         * config/h8300/h8300.md: Remove constraints from expanders.
1776
1777 2002-01-10  Kazu Hirata  <kazu@hxi.com>
1778
1779         * varasm.c: Fix formatting.
1780         * varray.c: Likewise.
1781         * vmsdbgout.c: Likewise.
1782         * xcoffout.c: Likewise.
1783
1784 Thu Jan 10 17:19:12 CET 2002  Jan Hubicka  <jh@suse.cz>
1785
1786         * cfgcleanup.c (try_forward_edges): Properly initialize nthreaded_edges;
1787         update edge probabilities to match.
1788
1789 2002-01-10  Joseph S. Myers  <jsm28@cam.ac.uk>
1790
1791         * Makefile.in ($(docdir)/gccint.info, gccint.dvi): Add additional
1792         dependencies.
1793         * doc/languages.texi, doc/sourcebuild.texi: New files.
1794         * doc/configfiles.texi: Make a subsubsection.  Update.
1795         * doc/configterms.texi: Add @node.  Remove warning that this isn't
1796         instructions for building GCC.
1797         * doc/makefile.texi: Make a subsection.
1798         * doc/gccint.texi: Update.
1799
1800 Thu Jan 10 16:39:58 CET 2002  Jan Hubicka  <jh@suse.cz>
1801
1802         * i386.md (sse_mov?fcc_const0_?): Fix constraints.
1803
1804 Thu Jan 10 12:45:50 2002  Nicola Pero  <n.pero@mi.flashnet.it>
1805
1806         * doc/cpp.texi: Document the __OBJC__ preprocessor macro.
1807
1808 Thu Jan 10 11:19:18 CET 2002  Jan Hubicka  <jh@suse.cz>
1809
1810         * optabs.c (expand_fix): Look for wider integer modes first.
1811
1812         * i386.md (mov?f): Avoid the fake const double trick for medium
1813         memory model.
1814         (min?f*/max?f*): Prohibit memory operands for i387 variant.
1815         (fop_df_4): Disable for SSE compilation.
1816
1817 2002-01-10  Graham Stott  <grahams@redhat.com>
1818
1819         * dwarf2out.c (indirect_string_alloc, output_indirect_string):
1820         Move prototype into DWARF2_DEBUGGING_INFO conditional block.
1821
1822 2002-01-10  Richard Henderson  <rth@redhat.com>
1823
1824         * config/alpha/alpha.md (extendsidi2_fix): Penalize f/f alternative.
1825
1826 2002-01-10  Richard Henderson  <rth@redhat.com>
1827
1828         * regrename.c (find_oldest_value_reg): Fix typo in mode change check.
1829         (copyprop_hardreg_forward_1): Likewise.  Use mode_change_ok.
1830
1831 2002-01-10  Kazu Hirata  <kazu@hxi.com>
1832
1833         * combine.c (can_combine_p): Fix a comment typo.
1834
1835 2002-01-09  Zack Weinberg  <zack@codesourcery.com>
1836
1837         * Makefile.in (s-gencheck, s-options, s-specs): Handle an
1838         empty list correctly.  Change loop index $t to $f for
1839         consistency with rest of Makefile.
1840
1841 2002-01-08  Aldy Hernandez  <aldyh@redhat.com>
1842
1843         * testuite/gcc.dg/altivec-4.c: Add test for mtvscr, dssall,
1844         mfvscr, dss, lvsl, lvsr, dstt, dstst, dststt, dst.
1845
1846         * config/rs6000/rs6000.c (altivec_expand_builtin): Add support for
1847         mtvscr, dssall, mfvscr, dss, lvsl, lvsr, dstt, dst, dstst, dststt.
1848         (altivec_init_builtins): Same.
1849         (altivec_expand_unop_builtin): Return NULL_RTX on error.
1850         (altivec_expand_binop_builtin): Same.
1851         (altivec_expand_ternop_builtin): Same.
1852         (bdesc_dst): New.
1853
1854         * config/rs6000/rs6000.md ("altivec_mtvscr"): New.
1855         ("altivec_vctuxs"): Fix typo.
1856         ("altivec_vnmsubfp"): Same.
1857         ("altivec_dssall"): New.
1858         ("altivec_mfvscr"): New.
1859         ("altivec_dss"): New.
1860         ("altivec_lvsl"): New.
1861         ("altivec_lvsr"): New.
1862         ("altivec_dstt"): New.
1863         ("altivec_dstst"): New.
1864         ("altivec_dststt"): New.
1865         ("altivec_dst"): New.
1866
1867         * config/rs6000/rs6000.h (rs6000_builtins): Add mtvscr, dssall,
1868         mfvscr, dss, lvsl, lvsr, dstt, dstst, dststt, dst.
1869
1870 2002-01-09  Richard Henderson  <rth@redhat.com>
1871
1872         * config/alpha/alpha.md (prologue_mcount): Remove lituse_jsr reloc.
1873
1874 2002-01-10  Hans-Peter Nilsson  <hp@bitrange.com>
1875
1876         * config/mmix/mmix.c (mmix_asm_identify_gcc): Remove unused
1877         function.
1878         * config/mmix/mmix-protos.h (mmix_asm_identify_gcc): Don't
1879         prototype.
1880         * config/mmix/mmix.h (ASM_IDENTIFY_GCC): Remove unused macro.
1881
1882 2002-01-09  Kazu Hirata  <kazu@hxi.com>
1883
1884         * read-rtl.c: Fix formatting.
1885         * real.c: Likewise.
1886         * regclass.c: Likewise.
1887         * regrename.c: Likewise.
1888         * reg-stack.c: Likewise.
1889         * reload1.c: Likewise.
1890         * reload.c: Likewise.
1891         * rtl.c: Likewise.
1892
1893 2002-01-09  Kazu Hirata  <kazu@hxi.com>
1894
1895         * rtlanal.c (find_reg_fusage): Use XEXP instead of SET_DEST
1896         to extract items in the expr_list chain.
1897
1898 2002-01-09  Richard Henderson  <rth@redhat.com>
1899
1900         * config/vax/vax.c (vax_rtx_cost): Never abort.
1901
1902         * config/vax/vax.h (REAL_ARITHMETIC): Define.
1903
1904 2002-01-09  Jan Hubicka  <jh@suse.cz>
1905
1906         * gcse.c (cprop_jump): Delete insn if simplified jump is no-op.
1907
1908 2002-01-09  Richard Henderson  <rth@redhat.com>
1909
1910         * config/arm/arm.c (arm_gen_constant): Use trunc_int_for_mode.
1911         Unify code from various alternatives.
1912
1913 2002-01-09  Richard Henderson  <rth@redhat.com>
1914
1915         * regrename.c (copy_value): Ignore the copy if the source register
1916         is present in the value chain with a narrower mode.
1917
1918 2002-01-09  Herman A.J. ten Brugge  <Haj.Ten.Brugge@net.HCC.nl>
1919
1920         * real.c (c4xtoe, toc4x): Do some special conversion on long doubles
1921         for the c4x target. Also improve layout.
1922
1923 2002-01-09  Richard Henderson  <rth@redhat.com>
1924
1925         * config/m32r/m32r.c (move_src_operand): Fix 32-bit int test.
1926         * config/m32r/m32r.md (and ior xor splitters): Swap operands
1927         to match insn patterns.
1928
1929 2002-01-09  Richard Henderson  <rth@redhat.com>
1930
1931         * regrename.c (find_oldest_value_reg): Use gen_rtx_raw_REG.
1932         (copyprop_hardreg_forward_1): Likewise.
1933
1934 2002-01-09  John David Anglin  <dave@hiauly1.hia.nrc.ca>
1935
1936         * pa.md (decrement_and_branch_until_zero): Change predicate for
1937         operand 0 from register_operand to reg_or_nonsymb_mem_operand.
1938
1939 2002-01-09  Bryce McKinlay  <bryce@waitaki.otago.ac.nz>
1940
1941         * ginclude/stddef.h: Define _BSD_WCHAR_T_DEFINED_ if _BSD_WCHAR_T_
1942         gets undefined. For Darwin.
1943
1944 2002-01-09  Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
1945
1946         * config/c4x/c4x.h: Use PUSH_ARGS and PUSH_ROUNDING for stack passing.
1947
1948 2002-01-09  Michael Hayes  <m.hayes@elec.canterbury.ac.nz>
1949
1950         * config/c4x/c4x/md: Remove extraneous constraints from define_splits.
1951
1952 2002-01-08  Richard Henderson  <rth@redhat.com>
1953
1954         * regrename.c (copy_value): Ignore overlapping copies.
1955
1956 2002-01-08  Richard Henderson  <rth@redhat.com>
1957
1958         * config/alpha/alpha.c (alpha_split_conditional_move): Call copy_rtx
1959         as needed to avoid shared structure.
1960
1961 2002-01-08  Kazu Hirata  <kazu@hxi.com>
1962
1963         * config/h8300/h8300.c (get_shift_alg): Fix 15-bit LSHIFTRT on
1964         H8/300H and H8/S.
1965
1966 2002-01-08  Joseph S. Myers  <jsm28@cam.ac.uk>
1967
1968         * doc/tm.texi (EASY_DIV_EXPR, IMPLICIT_FIX_EXPR,
1969         LONGJMP_RESTORE_FROM_STACK, MAX_INT_TYPE_SIZE): Remove
1970         documentation of obsolete macros.
1971         * system.h: Poison these macros.
1972         * config/1750a/1750a.h, config/a29k/a29k.h, config/alpha/alpha.h,
1973         config/arc/arc.h, config/arm/arm.h, config/avr/avr.h,
1974         config/c4x/c4x.h, config/clipper/clipper.h,
1975         config/convex/convex.h, config/cris/cris.h, config/d30v/d30v.h,
1976         config/dsp16xx/dsp16xx.h, config/elxsi/elxsi.h,
1977         config/fr30/fr30.h, config/h8300/h8300.h, config/i370/i370.h,
1978         config/i386/i386.h, config/i860/i860.h, config/i960/i960.h,
1979         config/ia64/ia64.h, config/m32r/m32r.h, config/m68hc11/m68hc11.h,
1980         config/m68k/m68k.h, config/m88k/m88k.h, config/mcore/mcore.h,
1981         config/mips/mips.h, config/mmix/mmix.h, config/mn10200/mn10200.h,
1982         config/mn10300/mn10300.h, config/ns32k/ns32k.h, config/pa/pa.h,
1983         config/pdp11/pdp11.h, config/pj/pj.h, config/romp/romp.h,
1984         config/rs6000/rs6000.h, config/s390/s390.h, config/sh/sh.h,
1985         config/sparc/sparc.h, config/stormy16/stormy16.h,
1986         config/v850/v850.h, config/vax/vax.h, config/we32k/we32k.h: Remove
1987         definitions and commented out definitions of obsolete macros.
1988         * config/mips/iris5.h (MAX_WCHAR_TYPE_SIZE): Don't define in terms
1989         of MAX_INT_TYPE_SIZE.
1990
1991 2002-01-08  Ulrich Weigand  <uweigand@de.ibm.com>
1992
1993         * config/s390/s390.c (s390_preferred_reload_class): Never
1994         return ADDR_REGS if it isn't a subset of the given class.
1995         * config/s390/s390.h (REGISTER_MOVE_COST): Penalize not just
1996         FP_REGS, but all superclasses as well.
1997
1998         * config/s390/s390.c (s390_function_profiler): Fix thinko.
1999
2000         * config/s390/s390.md (cmpdi_ccu_mem, cmpsi_ccu_mem,
2001         cmphi_ccu_mem, cmpqi_ccu_mem): First operand of compare
2002         must not be a const_int.
2003
2004 2002-01-08  Richard Henderson  <rth@redhat.com>
2005
2006         * Makefile.in (toplev.o): Depend on options.h.
2007         (gcc.o): Depend on specs.h.
2008
2009 2002-01-08  Jakub Jelinek  <jakub@redhat.com>
2010
2011         * expr.c (store_expr): Convert VOIDmode constants back to target's
2012         mode.
2013
2014 2002-01-08  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
2015
2016         * doc/invoke.texi: Markup gcc as @command.  Refer to
2017         http://gcc.gnu.org/onlinedocs/gcc/Contributors.html instead
2018         of http://gcc.gnu.org/thanks.html.
2019
2020 2002-01-08  Dale Johannesen  <dalej@apple.com>
2021
2022         * config/rs6000/rs6000.md: Add missing int register
2023         target case to movdf_low.
2024
2025 2002-01-08  Zack Weinberg  <zack@codesourcery.com>
2026
2027         * Makefile.in (cs-tconfig.h): Don't depend on $(CONFIG_H) or
2028         except.h.  Remove commands to define USING_SJLJ_EXCEPTIONS.
2029         (cppinit.o): Depend on except.h.
2030         (gencheck.h, options.h, specs.h, s-gencheck, s-options,
2031         s-specs): New rules.
2032
2033         * configure.in: Don't AC_DEFINE_UNQUOTED PACKAGE or VERSION.
2034         Don't create specs.h/options.h/gencheck.h here.  Remove
2035         unnecessary variable settings from last argument of AC_OUTPUT.
2036         * config.in, configure: Regenerate.
2037         * intl.c: Hardcode package name as "gcc".
2038
2039         * cppinit.c: Include except.h.
2040         (builtin_array): Define __USING_SJLJ_EXCEPTIONS__ when
2041         appropriate.
2042         * unwind-dw2.c, unwind-sjlj.c, config/ia64/unwind-ia64.c:
2043         Use #if(n)def __USING_SJLJ_EXCEPTIONS, not #if
2044         (!)USING_SJLJ_EXCEPTIONS.
2045         * doc/cpp.texi: Document __USING_SJLJ_EXCEPTIONS__.
2046
2047 2002-01-08  Joseph S. Myers  <jsm28@cam.ac.uk>
2048
2049         * doc/tm.texi (ASM_OUTPUT_EH_REGION_BEG, ASM_OUTPUT_EH_REGION_END,
2050         ASM_OUTPUT_LABELREF_AS_INT, DOESNT_NEED_UNWINDER, EH_TABLE_LOOKUP,
2051         OBJC_SELECTORS_WITHOUT_LABELS, OMIT_EH_TABLE): Remove
2052         documentation of obsolete macros.
2053         * system.h: Poison these macros.
2054         * config/d30v/d30v.h, config/ns32k/encore.h,
2055         config/stormy16/stormy16.h: Remove definitions and commented out
2056         definitions of obsolete macros.
2057
2058 Tue Jan  8 15:56:41 2002  Nicola Pero  <nicola@brainstorm.co.uk>
2059
2060         * objc/objc-act.c (handle_class_ref): Mark the declaration of
2061         %sobjc_class_ref_%s as used - to prevent unwanted compiler
2062         warnings.
2063
2064 2002-01-08  Ulrich Weigand  <uweigand@de.ibm.com>
2065
2066         * config/s390/linux.h (ASM_OUTPUT_LABELREF): Remove.
2067         * config/s390/s390.c (s390_emit_epilog): Add REG_FRAME_RELATED_EXPR
2068         to insn adjusting stack/frame pointer.
2069         * config/s390/s390.md (reload_la_64, reload_la_31): Do not
2070         accept operands that cause the insn to be non-splittable.
2071
2072 2002-01-08  Graham Stott  <grahams@redhat.com>
2073
2074         * c-tree.h (C_TYPE_FIELDS_READONLY): Uppercase macro parameter.
2075         (C_TYPE_FIELDS_VOLATILE): Likewise.
2076         (C_TYPE_BEING_DEFINED): Likewise.
2077         (C_IS_RESERVED_WORD): Likewise.
2078         (C_TYPE_VARIABLE_SIZE): Likewise.
2079         (C_DECL_VARIABLE_SIZE): Likewise.
2080         (C_MISSING_PROTOTYPE_WARNED): Likewise.
2081         (C_SET_EXP_ORIGINAL_CODE): Likewise.
2082         (C_TYPEDEF_EXPLICITLY_SIGNED): Uppercase macro parameter and remove
2083         parenthesis.
2084         (C_DECL_ANTICIPATED): Likewise.
2085         (c_build_type_variant): Add parenthesis.
2086
2087 2002-01-08  Joseph S. Myers  <jsm28@cam.ac.uk>
2088
2089         * gcc.c (option_map): Remove --version.
2090         (process_command): Handle -fversion following the GNU Coding
2091         Standards.  Partially addresses PR other/704.
2092
2093 2002-01-08  Graham Stott  <grahams@redhat.com>
2094
2095         * combine.c (combine_instructions): Fix typo.
2096
2097 2002-01-08  Graham Stott  <grahams@redhat.com>
2098
2099         * debug.h: Use "tree" and "rtx" throughout.
2100
2101         * debug.c: Likewise.
2102
2103 2002-01-08  Nick Clifton  <nickc@cambridge.redhat.com>
2104
2105         * dbxout.c (dbxout_symbol_location): If a symbol ref is in the
2106         constant pool, use the pool's version of the symbol instead.
2107
2108 2002-01-07  Richard Henderson  <rth@redhat.com>
2109
2110         * regrename.c (find_oldest_value_reg): Ignore the value chain if
2111         the original register was copied in a mode with a fewer number of
2112         hard registers than the desired mode.
2113         (copyprop_hardreg_forward_1): Likewise.
2114         (debug_value_data): Fix loop test.
2115         * toplev.c (parse_options_and_default_flags): Reenable
2116         -fcprop-registers at -O1.
2117
2118 2002-01-07  Aldy Hernandez  <aldyh@redhat.com>
2119
2120         * config/rs6000/rs6000.c (bdesc_2arg): Add altivec predicates.
2121         (altivec_init_builtins): New node v4si_ftype_v16qi_v16qi.
2122
2123         * config/rs6000/rs6000.h (rs6000_builtins): Add enums for altivec
2124         predicates.
2125
2126         * config/rs6000/rs6000.md: Add altivec predicate patterns.
2127
2128 2002-01-07  John David Anglin  <dave@hiauly1.hia.nrc.ca>
2129
2130         * pa.c (FUNC_BEGIN_PROLOG_LABEL, current_function_number): Define.
2131         (pa_output_function_prologue): Output local label at the beginning of
2132         the prologue when profiling.
2133         (hppa_profile_hook): Use the local label rather than the function label.
2134         * pa.h (PROFILE_BEFORE_PROLOGUE): Define.
2135
2136 2002-01-07  Aldy Hernandez  <aldyh@redhat.com>
2137
2138         * config/rs6000/rs6000.c (print_operand): Remove extra space.
2139         (altivec_expand_unop_builtin): Fix thinko.
2140         (altivec_expand_binop_builtin): Same.
2141         (altivec_expand_ternop_builtin): Same.
2142         (altivec_expand_builtin): Same.
2143
2144 2002-01-07  Richard Henderson  <rth@redhat.com>
2145
2146         * config/rs6000/xcoff.h (ASM_FILE_START): Reverted to profile_flag.
2147
2148 2002-01-07  Jason Merrill  <jason@redhat.com>
2149
2150         * unwind-dw2.c (execute_cfa_program): Use < again.
2151
2152 2002-01-07  Jakub Jelinek  <jakub@redhat.com>
2153
2154         * predict.c (combine_predictions_for_insn): Avoid division by zero.
2155
2156 2002-01-07  Jakub Jelinek  <jakub@redhat.com>
2157
2158         * simplify-rtx.c (simplify_plus_minus): Bump n_ops for NOT.
2159         Don't allow -1 - x -> ~x simplifications in the first pass.
2160
2161 2002-01-07  Aldy Hernandez  <aldyh@redhat.com>
2162
2163         * rs6000.c (altivec_expand_ternop_builtin): Don't die on invalid
2164         arguments.
2165         (altivec_expand_binop_builtin): Same.
2166         (altivec_expand_unop_builtin): Same.
2167         (print_operand): Fix typo.
2168         (bdesc_1arg): Add vupk* variants.
2169
2170         * rs6000.h (rs6000_builtins): Add vupk* enums.
2171
2172         * rs6000.md: Add altivec_vupk* variants.
2173
2174 2002-01-07  Joseph S. Myers  <jsm28@cam.ac.uk>
2175
2176         * doc/gcc.texi, doc/gccint.texi, doc/cppinternals.texi,
2177         doc/install.texi, doc/invoke.texi, doc/rtl.texi: Update copyright
2178         and last update dates.
2179
2180 2002-01-07  Janis Johnson  <janis187@us.ibm.com>
2181
2182         * doc/rtl.texi (Flags): Clean up documentation of RTL flags
2183
2184 2002-01-07  Marek Michalkiewicz  <marekm@amelek.gda.pl>
2185
2186         * config/avr/avr.c (avr_mcu_types): Add new MCU types.
2187         * config/avr/avr.h (CPP_SPEC): Likewise.
2188         (LINK_SPEC): Likewise.
2189         (CRT_BINUTILS_SPECS): Likewise.
2190         * config/avr/t-avr (MULTILIB_MATCHES): Likewise.
2191         * doc/invoke.texi (AVR Options): Document them.
2192
2193 Mon Jan  7 11:59:34 CET 2002  Jan Hubicka  <jh@suse.cz>
2194
2195         * unroll.c (copy_loop_body): Always properly update JUMP_LABEL and
2196         LABEL_NUSES.
2197
2198 2002-01-07  Graham Stott  <grahams@redhat.com>
2199
2200         * config/i386/i386.h: Update copyright date.
2201         (HALF_PIC_PTR): Add parenthesis.
2202         (OPTIMIZATION_OPTIONS): Whitespace, add parenthesis and wrap.
2203         (CONSTANT_ALIGNMENT): Add parenthesis.
2204         (DATA_ALIGNMENT): Likewise.
2205         (LOCAL_ALIGNMENT): Likewise.
2206         (FUNCTION_ARG_BOUNDARY): Whitespace, add parenthesis and wrap.
2207         (IS_STACK_MODE): Uppercase macro parameter, add parenthesis and wrap.
2208         (CONDITIONAL_REGISTER_USAGE): Wrap in do {...} while (0).
2209         (HARD_REGNO_NREGS): Add paranethesis.
2210         (VALID_SSE_REG_MODE): Whitespace.
2211         (VALID_MMX_REG_MODE): Whitespace.
2212         (VALID_FP_MODE_P): Uppercase macros parameter and whitespace.
2213         (ix86_hard_regno_mode_ok): Add parenthesis.
2214         (HARD_REGNO_CALLER_SAVE_MODE): Whitespace.
2215         (RETURN_IN_MEMORY): Whitespace.
2216         (N_REG_CLASSES): Add parenthesis.
2217         (INTEGER_CLASS_P): Add parenthesis and wrap.
2218         (FLOAT_CLASS_P): Likewise.
2219         (SSE_CLASS_P): Likewise.
2220         (MMX_CLASS_P): Likewise.
2221         (MAYBE_INTEGER_CLASS_P): Likewise.
2222         (MAYBE_FLOAT_CLASS_P): Likewise.
2223         (MAYBE_SSE_CLASS_P): Likewise.
2224         (MAYBE_MMX_CLASS_P): Likewise.
2225         (Q_CLASS_P): Likewise.
2226         (GENERAL_REGNO_P): Uppercase macro parameter.
2227         (REX_INT_REGNO_P): Uppercase macro parameter and wrap.
2228         (FP_REGNO_P): Likewise.
2229         (ANY_FP_REGNO_P): Uppercase macro parameter.
2230         (SSE_REGNO_P): Likewise.
2231         (SSE_REGNO): Likewise.
2232         (SSE_REG_P): Likewise.
2233         (SSE_FLOAT_MODE_P): Likewise.
2234         (MMX_REGNO_P): Likewise.
2235         (MMX_REG_P):Likewise.
2236         (STACK_REG_P): Likewise.
2237         (NON_STACK_REG_P): Likewise.
2238         (STACK_TOP_P): Likewise.
2239         (CONVERT_HARD_REGISTER_TO_SSA_P): Add parenthesis.
2240         (PREFERRED_RELOAD_CLASS): Add parenthesis and whitespace.
2241         (SECONDARY_MEMORY_NEEDED): Likewise.
2242         (SECONDARY_OUTPUT_RELOAD_CLASS): Whitespace.
2243         (MD_ASM_CLOBBERS): Whitespace and wrap.
2244         (MUST_PASS_IN_STACK): Whitespace and wrap.
2245         (RETURN_POPS_ARGS): Add parenthesis.
2246         (INIT_CUMULATIVE_ARGS): Likewise.
2247         (FUNCTION_ARG): Likewise.
2248         (FUNCTION_OK_FOR_SIBCALL): Add parenthesis and whitespace.
2249         (SETUP_INCOMING_VARARGS): Likewise.
2250         (BUILD_VA_LIST_TYPE):  Add parenthesis.
2251         (EXPAND_BUILTIN_VA_START): Uppercase macro paremeters and add
2252         parenthsis.
2253         (EXPAND_BUILTIN_VA_ARG): Likewise.
2254         (FUNCTION_PROFILER): Wrap in do { ... } while (0) and add parenthesis.
2255         (INITIALIZE_TRAMPOLINE): Add parenthesis.
2256         (INITIAL_ELIMINATION_OFFSET): Likewise.
2257         (REGNO_OK_FOR_INDEX_P): Add parenthesis.
2258         (REGNO_OK_FOR_BASE_P): Likewise.
2259         (REGNO_OK_FOR_SIREG_P): Add parenthesis and wrap.
2260         (REGNO_OK_FOR_DIREG_P): Likewise.
2261         (REG_OK_FOR_INDEX_P): Whitespace.
2262         (REG_OK_FOR_BASE_P): Whitespace.
2263         (GO_IF_LEGITIMATE_ADDRESS): Wrap in do { ... } while (0) and add
2264         parenthesis.
2265         (FIND_BASE_TERM): Fix typo.
2266         (LEGITIMIZE_ADDRESS): Wrap in  { .. } while (0) and add parenthesis.
2267         (REWRITE_ADDRESS): Uppercase macro parameter and whitespace.
2268         (SYMBOLIC_CONST; Whitespace.
2269         (GO_IF_MODE_DEPENDENT_ADDRESS):Wrap in  { .. } while (0) and wrap.
2270         (ENCODE_SECTION_INFO): Whitespace.
2271         (FINALIZE_PIC): Remove do { ... } while (0).
2272         (PROMOTE_MODE): Wrap in do { ... } while (0).
2273         (CONST_COSTS): Whitespace.
2274         (RTX_COSTS): Add paramethesis, whitespace and wrap.
2275         (REGISTER_MOVE_COST): Add parenthesis.
2276         (MEMORY_MOVE_COST): Likewise.
2277         (EXTRA_CC_MODES): Whitespace.
2278         (SELECT_CC_MODE): Add parenthesis and whitespace.
2279         (DBX_REGISTER_NUMBER): Uppercase macro parameter and add parenthsis.
2280         (ASM_PREFERRED_EH_DATA_FORMAT): Add parenthesis and whitespace.
2281         (ASM_OUTPUT_LABEL): Add paramethesis.
2282         (ASM_OUTPUT_REG_PUSH): Add parenthesis and whitespace.
2283         (ASM_OUTPUT_REG_POP): Likewise.
2284         (ASM_OUTPUT_ADDR_VEC_ELT): Add parenthesis.
2285         (ASM_OUTPUT_ADDR_DIFF_ELT): Likewise.
2286
2287         * config/i386/i386.c: Update copyright.
2288         (CHECK_STACK_LIMIT): Add parenthesis.
2289         (AT_BP): Uppercase macro parameter.
2290         (x86_64_int_parameter_registers): Constify.
2291         (x86_64_int_return_registers): Likewise.
2292         (ix86_compare_op0): Use rtx.
2293         (construct_container): Constify INTREG parameter.
2294         (function_arg): Use rtx.
2295
2296         * diagnostic.h: Update copyright date.
2297         (output_buffer_state): Add parenthesis.
2298         (output_buffer_format_args): Likewise.
2299
2300         * combine.c (combine_instructions): Replace XEXP (links, 0)
2301         with link.
2302
2303 2002-01-06  H.J. Lu <hjl@gnu.org>
2304
2305         * cfgcleanup.c (thread_jump): Fix 2 typos.
2306
2307 2002-01-06  Aldy Hernandez  <aldyh@redhat.com>
2308
2309         * config.gcc: Add support for --enable-altivec.
2310
2311 2002-01-06  Craig Rodrigues  <rodrigc@gcc.gnu.org>
2312
2313         * emit-rtl.c (gen_highpart): Add check for NULL_RTX.
2314
2315 2002-01-06  Jakub Jelinek  <jakub@redhat.com>
2316
2317         * objc/objc-act.c (handle_impent): Use assemble_variable to emit
2318         __objc_class_name_*.
2319
2320 2002-01-06  Craig Rodrigues  <rodrigc@gcc.gnu.org>
2321
2322         * doc/install.texi (sparcv9-*-solaris2*): Add documentation.
2323
2324 2002-01-06  Richard Henderson  <rth@redhat.com>
2325
2326         * reorg.c (emit_delay_sequence): Remove death notes, not merely
2327         nop them out.  Increment label reference count for REG_LABEL.
2328         (fill_slots_from_thread): Frob label reference count around
2329         delete_related_insns.
2330
2331 2002-01-05  Richard Henderson  <rth@redhat.com>
2332
2333         * cfgcleanup.c (try_forward_edges): Detect infinite loops while
2334         jump threading.
2335
2336 2002-01-05  Richard Henderson  <rth@redhat.com>
2337
2338         * c-decl.c (c_expand_body): Don't call outlining_inline_function.
2339         * integrate.c (output_inline_function): Likewise.
2340         * toplev.c (rest_of_compilation): Do it here instead.  Move call
2341         to remove_unnecessary_notes after emitting abstract instance.
2342         Force an emitted nested function to have its parent emited as well.
2343         * dwarf2out.c (loc_descriptor_from_tree): Read mode after checking
2344         for null.
2345         (rtl_for_decl_location): Do not look at reload data structures
2346         before reload has run.
2347
2348 2002-01-05  Kazu Hirata  <kazu@hxi.com>
2349
2350         * cse.c: Fix formatting.
2351         * dwarf2asm.c: Likewise.
2352         * dwarf2out.c: Likewise.
2353         * explow.c: Likewise.
2354         * expmed.c: Likewise.
2355         * function.c: Likewise.
2356         * gcov.c: Likewise.
2357         * gencheck.c: Likewise.
2358         * genrecog.c: Likewise.
2359         * ggc-common.c: Likewise.
2360         * ggc-page.c: Likewise.
2361         * global.c: Likewise.
2362
2363 2002-01-05  Kazu Hirata  <kazu@hxi.com>
2364
2365         * combine.c: Fix formatting.
2366
2367 2002-01-05  Craig Rodrigues  <crodrigu@bbn.com>
2368
2369         PR middle-end/1557
2370         * config/ia64/ia64.h (RENAME_EXTENDED_BLOCKS): Remove.
2371
2372 2002-01-05  David Edelsohn  <edelsohn@gnu.org>
2373
2374         * config/rs6000/rs6000.h (TARGET_POWERPC): For IN_LIBGCC2, define
2375         as 1 for __powerpc64__ as well.
2376
2377         * config/rs6000/t-aix43 (T_ADAFLAGS): Define.
2378
2379         * alias.c (find_base_value, PLUS/MINUS): If we found a base,
2380         return it.
2381
2382 2002-01-05  Daniel Berlin  <dan@dberlin.org>
2383
2384         * lcm.c: Revert change, due to performance regression it causes on
2385         SPEC because it's slightly more conservative (sigh, I hate
2386         edge-based LCM).
2387
2388 Sat Jan  5 11:52:05 CET 2002  Jan Hubicka  <jh@suse.cz>
2389
2390         * cfgcleanup.c (try_forward_edges): Allow multiple jump threading.
2391
2392 2002-01-05  Neil Booth  <neil@daikokuya.demon.co.uk>
2393
2394         * doc/cppinternals.texi: Update.
2395
2396 2002-01-05  Hans-Peter Nilsson  <hp@bitrange.com>
2397
2398         * doc/invoke.texi (Option Summary) <MMIX Options>: Document
2399         -mbranch-predict, -mreg-stack-fill-bug-workaround and their
2400         negatives.
2401         (MMIX Options): Ditto.  Fix item/itemx typo for -mno-zero-extend.
2402         * config/mmix/mmix.c (mmix_target_asm_function_prologue): Rework
2403         kludge for pre-october-14th mmix versions to handle new-found bug
2404         with PUSHJ/PUSHGO and the register stack.
2405         * config/mmix/mmix.h (struct machine_function): Rename member
2406         has_call_value_without_parameters to has_call_without_parameters.
2407         All referers changed.
2408         (TARGET_MASK_REG_STACK_FILL_BUG, TARGET_DEFAULT
2409         TARGET_MASK_BRANCH_PREDICT): New macros.
2410         (TARGET_SWITCHES): New options -mreg-stack-fill-bug-workaround,
2411         -mno-reg-stack-fill-bug-workaround.
2412         * config/mmix/mmix.md ("call"): Set struct machine member
2413         has_call_without_parameters.
2414
2415 Sat Jan  5 02:20:22 CET 2002  Jan Hubicka  <jh@suse.cz>
2416
2417         * cfgcleanup.c (thread_jump): Fix handling of reversed branches.
2418
2419 Sat Jan  5 01:35:29 CET 2002  Jan Hubicka  <jh@suse.cz>
2420
2421         * cfgcleanup.c: Include tm_p.h
2422         (mark_effect): Fix handling of hard register; fix handling of SET
2423
2424 2002-01-04  Kazu Hirata  <kazu@hxi.com>
2425
2426         * config/h8300/h8300.md (anonymous patterns): Check that
2427         operands are registers before using REGNO on them.
2428
2429 2002-01-03  Roland McGrath  <roland@frob.com>
2430
2431         * doc/invoke.texi (RS/6000 and PowerPC Options): Add -mcall-gnu.
2432
2433 2002-01-04  Jakub Jelinek  <jakub@redhat.com>
2434
2435         * tree.h (expand_expr_stmt_value): Add maybe_last argument.
2436         * c-common.h (genrtl_expr_stmt_value): Likewise.
2437         * stmt.c (expand_expr_stmt): Pass 1 as maybe_last.
2438         (expand_expr_stmt_value): Add maybe_last argument.
2439         Don't warn about statement with no effect if it is the last statement
2440         in expression statement.
2441         * c-semantics.c (genrtl_expr_stmt): Pass 1 as maybe_last.
2442         (genrtl_expr_stmt_value): Add maybe_last argument, pass it down to
2443         expand_expr_stmt_value.
2444         (expand_stmt) [EXPR_STMT]: Pass 1 as maybe_last to
2445         genrtl_expr_stmt_value if t is the last EXPR_STMT in its scope.
2446         * expr.c (expand_expr) [LABELED_BLOCK_EXPR, LOOP_EXPR]: Pass 1
2447         as maybe_last to expand_expr_stmt_value.
2448
2449 Fri Jan  4 11:45:05 2002  Jeffrey A Law  (law@redhat.com)
2450
2451         * c-common.c (c_expand_start_cond): Expect the IF_STMT node to
2452         be passed in, do not build it.
2453         (c_begin_if_stmt): New function.
2454         (c_begin_while_stmt, c_finish_while_stmt_cond): Likewise.
2455         * c-common.h (c_expand_start_cond): Update prototype.
2456         (c_begin_if_stmt): Prototype new function.
2457         (c_begin_while_stmt, c_finish_while_stmt_cond): Likewise.
2458         * c-parse.in (if_prefix): Use c_begin_if_stmt,
2459         c_begin_while_stmt and c_finish_while_stmt_cond.
2460
2461 2002-01-04  William Cohen  <wcohen@redhat.com>
2462
2463         * config/pa/elf.h (ASM_FILE_START): Reverted to profile_flag.
2464         * config/pa/pa-linux.h (ASM_FILE_START): Likewise.
2465         * config/pa/pa64-hpux.h (ASM_FILE_START): Likewise.
2466         * config/pa/som.h (ASM_FILE_START): Likewise.
2467
2468 2001-01-04  Daniel Berlin  <dan@cgsoftware.com>
2469
2470         * lcm.c: Include df.h.
2471         Add available_transfer_function prototype.
2472         (compute_available): Rework to use iterative dataflow framework.
2473         (struct bb_info): s/bb_info/lcm_bb_info/g to avoid conflict
2474         with bb_info in df.h
2475         (available_transfer_function): New function.
2476
2477         * Makefile.in (lcm.o): add df.h to dependencies.
2478
2479 2002-01-04  Richard Henderson  <rth@redhat.com>
2480
2481         * config/alpha/alpha.c (some_operand): Accept HIGH.
2482         (input_operand): Likewise; accept simple references to globals.
2483         (alpha_const_ok_for_letter_p): New, outlined from alpha.h.
2484         (alpha_const_double_ok_for_letter_p): Likewise.
2485         (alpha_extra_constraint): Likewise.
2486         (alpha_preferred_reload_class): Likewise.  Do not force
2487         symbolic constants to memory.
2488         (alpha_legitimate_address_p): Accept simple references
2489         to small_symbolic_operand.
2490         (alpha_legitimize_address): New arg scratch.  Be prepared to be
2491         called when no_new_pseudos.  Emit simple symbolic references.
2492         Split integers into low, high, and rest.
2493         (alpha_expand_mov): Use alpha_legitimize_address.
2494         (some_small_symbolic_mem_operand): New.
2495         (split_small_symbolic_mem_operand): New.
2496         * config/alpha/alpha-protos.h: Update.
2497         * config/alpha/alpha.h (CONST_OK_FOR_LETTER_P): Out-line.
2498         (CONST_DOUBLE_OK_FOR_LETTER_P): Likewise.
2499         (EXTRA_CONSTRAINT): Likewise.
2500         (PREFERRED_RELOAD_CLASS): Likewise.
2501         (LEGITIMIZE_ADDRESS): Update for alpha_legitimize_address change.
2502         (PREDICATE_CODES): Update.
2503         * config/alpha/alpha.md: New post-reload splitters to convert
2504         simplfied symbolic operands to the form that references $29.
2505         (divide expanders): Use emit_move_insn, not gen_movdi_er_high_g.
2506         (movdi_er_nofix, movdi_er_fix): Accept any symbolic operand.
2507
2508 2002-01-03  Richard Henderson  <rth@redhat.com>
2509
2510         * local-alloc.c (function_invariant_p): Update commentary.
2511
2512 2002-01-04  H.J. Lu <hjl@gnu.org>
2513
2514         * toplev.c (rest_of_compilation): Fix a typo when calling
2515         cleanup_cfg.
2516
2517 2002-01-03  Kazu Hirata  <kazu@hxi.com>
2518
2519         * c-common.c: Fix formatting.
2520         * diagnostic.c: Likewise.
2521         * doloop.c: Likewise.
2522         * dwarf2out.c: Likewise.
2523
2524 2002-01-03  Kazu Hirata  <kazu@hxi.com>
2525
2526         * config/h8300/h8300.c (output_logical_op): Use 'not.w' instead
2527         of 'neg.w' when xoring with 0x0000ffff or 0xffff0000.
2528
2529 2002-01-03  Neil Booth  <neil@daikokuya.demon.co.uk>
2530
2531         * cpperror.c: Update comments and copyright.
2532         * cppexp.c, cppfiles.c, cpphash.c, cpphash.h, cppinit.c,
2533         cpplex.c, cpplib.c, cpplib.h, cppmacro.c, cppmain.c: Similarly.
2534
2535 2002-01-03  John David Anglin  <dave@hiauly1.hia.nrc.ca>
2536
2537         * collect2.c (main): Use strcmp when testing for "-shared".
2538
2539 2002-01-03  Neil Booth  <neil@daikokuya.demon.co.uk>
2540
2541         * cppmacro.c: Don't include intl.h.  Update comments.
2542         (new_number_token): Allocate enough buffer for 64-bit unsigned
2543         integers; update prototype.
2544         * cppmain.c: Update comments.
2545
2546 2002-01-03  William Cohen  <wcohen@redhat.com>
2547
2548         * function.h (struct function): Add profile.
2549         (current_function_profile): New.
2550         doc/extend.texi: Update documentation.
2551         * final.c (final_start_function): Use current_function_profile
2552         instead of profile_flag.
2553         (profile_after_prologue): Likewise.
2554         * function.c (expand_function_start): Likewise.
2555         (expand_function_start): Likewise.
2556         * config/alpha/alpha.c (direct_call_operand):
2557         (alpha_does_function_need_gp): Likewise.
2558         (alpha_expand_prologue): Likewise.
2559         * config/arm/arm.c (arm_expand_prologue): Likewise.
2560         thumb_expand_prologue: Likewise.
2561         * config/d30v/d30v.c (d30v_stack_info): Likewise.
2562         * config/fr30/fr30.c (MUST_SAVE_RETURN_POINTER): Likewise.
2563         (fr30_expand_prologue): Likewise.
2564         * config/i386/cygwin.h (SUBTARGET_PROLOGUE): Likewise.
2565         * config/i386/i386.c (ix86_osf_output_function_prologue): Likewise.
2566         * config/i386/i386.h (FINALIZE_PIC): Likewise.
2567         * config/i386/win32.h (SUBTARGET_PROLOGUE): Likewise.
2568         * config/i960/i960.c (i960_output_function_prologue): Likewise.
2569         * config/ia64/ia64.c (ia64_compute_frame_size): Likewise.
2570         * config/m32r/m32r.c (MUST_SAVE_RETURN_ADDR): Likewise.
2571         (m32r_expand_prologue): Likewise.
2572         * config/m88k/m88k.c (m88k_layout_frame): Likewise.
2573         (m88k_expand_prologue): Likewise.
2574         * config/m88k/m88k.h (ADJUST_INSN_LENGTH): Likewise.
2575         * config/mips/mips.c (compute_frame_size): Likewise.
2576         (mips_expand_prologue): Likewise.
2577         (mips_can_use_return_insn): Likewise.
2578         * config/pa/elf.h (ASM_FILE_START): Likewise.
2579         * config/pa/pa-linux.h (ASM_FILE_START): Likewise.
2580         * config/pa/pa64-hpux.h (ASM_FILE_START): Likewise.
2581         * config/pa/som.h (ASM_FILE_START): Likewise.
2582         * config/romp/romp.c (romp_using_r14): Likewise.
2583         * config/rs6000/rs6000.c (first_reg_to_save): Likewise.
2584         (rs6000_stack_info): Likewise.
2585         * config/rs6000/sysv4.h (ASM_DECLARE_FUNCTION_NAME): Likewise.
2586         * config/rs6000/xcoff.h (ASM_FILE_START): Likewise.
2587         * config/v850/v850.c (compute_register_save_size): Likewise.
2588
2589 2002-01-03  Jakub Jelinek  <jakub@redhat.com>
2590
2591         * simplify-rtx.c (simplify_binary_operation) [DIV]: If
2592         gen_lowpart_common fails, use gen_lowpart_SUBREG.
2593
2594 2002-01-03  Turly O'Connor  <turly@apple.com>
2595
2596         * darwin.c (machopic_output_possible_stub_label): Don't generate
2597         stub routines for pseudo-stubs which we've just defined.
2598
2599 2002-01-03  Kazu Hirata  <kazu@hxi.com>
2600
2601         * builtins.c: Fix formatting.
2602         * c-typeck.c: Likewise.
2603         * combine.c: Likewise.
2604         * expr.c: Likewise.
2605         * loop.c: Likewise.
2606
2607 2002-01-03  Andreas Schwab  <schwab@suse.de>
2608
2609         * cppfiles.c (_cpp_pop_file_buffer): Change return type to bool
2610         and return true if _cpp_push_next_buffer pushed a new include
2611         file.
2612         * cpplib.c (_cpp_pop_buffer): Only call obstack_free if
2613         _cpp_pop_file_buffer did not push a new file.
2614         * cpphash.h (_cpp_pop_file_buffer): Update declaration.
2615
2616 2002-01-02  Eric Christopher  <echristo@redhat.com>
2617
2618         * final.c (final_scan_insn): Change 0 -> NULL_RTX in
2619         FIND_REG_INC_NOTE call. Update copyright.
2620         * loop.c (canonicalize_condition): Ditto.
2621         * reorg.c (delete_scheduled_jump): Ditto.
2622
2623 2002-01-03  Kazu Hirata  <kazu@hxi.com>
2624
2625         * gcse.c: Fix formatting.
2626
2627 2002-01-03  Graham Stott  <grahams@redhat.com>
2628
2629         * mkconfig.sh: Output to config.h, hconfig.h and tconfig.h
2630         forward defs for struct tags rtx_def, union_tree, rtvec_def
2631         also output corresponding typedefs for rtx, tree, and rtvec.
2632
2633         * system.h: Move forward defs for struct tags rtx_def, union_tree,
2634         rtvec_def along with corresponding typedefs for rtx, tree, and
2635         rtvec to config.h, hconfig.h, tconfig.h.
2636
2637 2002-01-03  Graham Stott  <grahams@redhat.com>
2638
2639         * tree.h: Update copyright date.
2640         (IS_EXPR_CODE_CLASS): Add parenthesis.
2641         (TREE_SET_CODE): Add whitespace.
2642         (TREE_CHECK): Add parenthesis.
2643         (TREE_CLASS_CODE): Add parenthesis and wrap long line.
2644         (CST_OR_CONSTRUCTOR_CHECK):
2645         (EXPR_CHECK): Add parenthis, whitespace and wrap line.
2646         (TREE_SYMBOL_REFERENCED): Whitespace.
2647         (INT_CST_LT): Likewise.
2648         (INT_CST_LT_UNSIGNED): Likewise.
2649         (tree_real_cst): Unwrap comment.
2650         (tree_string): Likewise.
2651         (tree_complex): Likewise.
2652         (IDENTIFIER_POINTER): correct cast.
2653         (SAVE_EXPR_CONTEXT): Whitespace.
2654         (EXPR_WFL_FILENAME_NODE): Likewise.
2655         (EXPR_WFL_FILENAME): Remove parenthesis.
2656         (DECL_ORIGIN): Add parenthesis.
2657         (DECL_FROM_INLINE): Use NULL_TREE.
2658         (build_int_2): Whitespace.
2659         (build_type_variant): Add parenthesis.
2660
2661         * gcc/jcf-parse.c: Update copyright date.
2662         (yyparse): Constify resource_filename.
2663
2664 2002-01-03  Graham Stott  <grahams@redhat.com>
2665
2666         * rtl.h: Update copyright date.
2667         (RTL_CHECK1): Wrap long line.
2668         (RTL_CHECK2): Likewise.
2669         (RTL_CHECKC1): Wrap long line and whitespace.
2670         (RTL_CHECKC2): Likewise.
2671         (XWINT): Whitespace.
2672         (XINT): Likewise.
2673         (XSTR): Likewise.
2674         (XEXP): Likewise.
2675         (XVEC): Likewise.
2676         (XMODE): Likewise.
2677         (XBITMAP): Likewise.
2678         (XTREE): Likewise.
2679         (XBBDEF): Likewise.
2680         (XTMPL): Likewise.
2681         (X0WINT): Likewise.
2682         (X0INT):Likewise.
2683         (X0UINT): Likewise.
2684         (X0STR): Likewise.
2685         (X0EXP): Likewise.
2686         (X0VEC): Likewise.
2687         (X0MODE): Likewise.
2688         (X0BITMAP): Likewise.
2689         (X0TREE): Likewise.
2690         (X0BBDEF): Likewise.
2691         (X0ADVFLAGS): Likewise.
2692         (X0CSELIB): Likewise.
2693         (X0MEMATTR): Likewise.
2694         (XCWINT): Likewise.
2695         (XCINT): Likewise.
2696         (XCUINT): Likewise.
2697         (XCSTR): Likewise.
2698         (XCEXP): Likewise.
2699         (XCVEC): Likewise.
2700         (XCMODE): Likewise.
2701         (XCBITMAP): Likewise.
2702         (XCTREE): Likewise.
2703         (XCBBDEF): Likewise.
2704         (XCADVFLAGS): Likewise.
2705         (XCCSELIB): Likewise.
2706         (XC2EXP): Likewise.
2707         (INSN_UID): Likewise.
2708         (PREV_INSN): Likewise.
2709         (PATTERN): Likewise.
2710         (INSN_CODE): Likewise.
2711         (PUT_REG_NOTE_KIND): Likewise.
2712         (CODE_LABEL_NUMBER): Likewise.
2713         (NOTE_SOURCE_FILE): Likewise.
2714         (NOTE_BLOCK): Likewise.
2715         (NOTE_EH_HANDLER): Likewise.
2716         (NOTE_RANGE_INFO): Likewise.
2717         (NOTE_LIVE_INFO): Likewise.
2718         (NOTE_BASIC_BLOCK): Likewise.
2719         (NOTE_EXPECTED_VALUE): Likewise.
2720         (NOTE_LINE_NUMBER): Likewise.
2721         (LABEL_NAME): Likewise.
2722         (LABEL_NUSES): Likewise.
2723         (LABEL_ALTERNATE_NAME): Likewise.
2724         (ADDRESSOF_DECL): Likewise.
2725         (JUMP_LABEL): Likewise.
2726         (LABEL_NEXTREF): Likewise.
2727         (REGNO): Likewise.
2728         (ORIGINAL_REGNO: Likewise.
2729         (HARD_REGISTER_NUM_P): Add parenthesis.
2730         (SUBREG_REG): Whitespace.
2731         (SUBREG_BYTE): Likewise.
2732         (ASM_OPERANDS_TEMPLATE): Remove parenthesis.
2733         (ASM_OPERANDS_OUTPUT_CONSTRAINT): Likewise.
2734         (ASM_OPERANDS_OUTPUT_IDX): Likewise.
2735         (ASM_OPERANDS_INPUT_VEC): Likewise.
2736         (ASM_OPERANDS_INPUT_CONSTRAINT_VEC): Likewise.
2737         (ASM_OPERANDS_INPUT): Likewise.
2738         (ASM_OPERANDS_INPUT_LENGTH): Likewise.
2739         (ASM_OPERANDS_INPUT_CONSTRAINT_EXP): Likewise.
2740         (ASM_OPERANDS_INPUT_CONSTRAINT): Likewise.
2741         (ASM_OPERANDS_INPUT_MODE): Likewise.
2742         (ASM_OPERANDS_SOURCE_FILE): Likewise.
2743         (ASM_OPERANDS_SOURCE_LINE): Likewise.
2744         (MEM_SET_IN_STRUCT_P): Minor reformat.
2745         (TRAP_CONDITION): Whitespace.
2746         (TRAP_CODE): Likewise.
2747         (COND_EXEC_TEST): Likewise.
2748         (COND_EXEC_CODE): Likewise.
2749         (FIND_REG_INC_NOTE): Uppercase macro args and add parenthesis.
2750         (PHI_NODE_P): Add parenthesis.
2751         (plus_constant): Whitespace and add parenthesis.
2752
2753 2002-01-03  Kazu Hirata  <kazu@hxi.com>
2754
2755         * config/avr/avr.c: Fix comment typos.
2756         * config/c4x/c4x.md: Likewise.
2757         * config/dsp16xx/dsp16xx.h: Likewise.
2758         * config/dsp16xx/dsp16xx.md: Likewise.
2759         * config/i386/i386.md: Likewise.
2760         * config/ia64/ia64.c: Likewise.
2761         * config/m32r/m32r.h: Likewise.
2762         * config/m68hc11/m68hc11.md: Likewise.
2763         * config/mmix/mmix.c: Likewise.
2764         * config/mn10200/mn10200.c: Likewise.
2765         * config/romp/romp.c: Likewise.
2766         * config/sh/sh.c: Likewise.
2767         * config/stormy16/stormy16.c: Likewise.
2768         * config/stormy16/stormy16.h: Likewise.
2769         * config/stormy16/stormy16.md: Likewise.
2770
2771 2002-01-03  Graham Stott  <grahams@redhat.com>
2772
2773         * loop.h: Update copyright date.
2774         (LOOP_MOVABLES): Fix typo.
2775         (LOOP_REGS): Likewise.
2776         (LOOP_IVS): Likewise.
2777
2778 2002-01-03  Graham Stott  <grahams@redhat.com>
2779
2780         * cppinit.c: Update copyright date.
2781         Don't include output.h
2782         * Makefile.in: Update copyright date.
2783         Update dependency.
2784
2785 2002-01-02  Craig Rodrigues  <rodrigc@gcc.gnu.org>
2786
2787         PR c/5226
2788         * invoke.texi (-mthreads): Remove from documented RS/6000 options.
2789         (-pthread) Add to RS/6000 options.
2790
2791 2002-01-02  Kazu Hirata  <kazu@hxi.com>
2792
2793         * except.c: Fix comment typos.
2794         * loop.c: Likewise.
2795         * varasm.c: Likewise.
2796         * doc/tm.texi: Fix a typo.
2797
2798 2002-01-02  Jakub Jelinek  <jakub@redhat.com>
2799
2800         * c-typeck.c (output_init_element): Allow initializing static storage
2801         duration objects with compound literals.
2802
2803 2002-01-02  Richard Henderson  <rth@redhat.com>
2804
2805         * objc/objc-act.c (hack_method_prototype): Clear current_function_decl
2806         after abusing it.
2807
2808 2002-01-02  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
2809
2810         * gcc.c (default_compilers): Const-ify.
2811         * mips-tdump.c (stab_names): Likewise.
2812         * mips-tfile.c (map_coff_types, map_coff_storage,
2813         map_coff_sym_type, map_coff_derived_type, stabs_symbol,
2814         pseudo_ops_t, pseudo_ops): Likewise.
2815         * protoize.c (default_include): Likewise
2816
2817         * real.c (GET_REAL, PUT_REAL): Don't cast away const-ness.
2818         (ezero, ehalf, eone, etwo, e32, elog2, esqrt2, epi): Const-ify.
2819         Add array size in declaration.
2820         (endian, emov, eisneg, eisinf, eisnan, eiisnan, eiisneg, emovi,
2821         emovo, emovz, eiisinf, ecmpm, eaddm, esubm, m16m, edivm, emulm,
2822         esub, eadd, eadd1, ediv, emul, e53toe, e64toe, e113toe, e24toe,
2823         etoe113, etoe64, etoe53, etoe24, ecmp, eround, ltoe, ultoe,
2824         eifrac, euifrac, e24toasc, e53toasc, e64toasc, e113toasc, etoasc,
2825         efloor, efrexp, eldexp, eremain, dectoe, etodec, ibmtoe, etoibm,
2826         c4xtoe, etoc4x, uditoe, ditoe, etoudi, etodi, esqrt, etens,
2827         emtens, make_nan): Const-ify.
2828         (TFbignan, TFlittlenan, XFbignan, XFlittlenan, DFbignan,
2829         DFlittlenan, SFbignan, SFlittlenan): Make static and const-ify.
2830
2831 2002-01-02  Joseph S. Myers  <jsm28@cam.ac.uk>
2832
2833         * config.gcc (ia64-*-*): Set extra_headers.
2834         (alpha*-dec-osf*): Likewise.  Don't use alpha/t-osf.
2835         * config/alpha/t-osf: Remove.
2836         * config/ia64/t-ia64 (EXTRA_HEADERS): Remove.
2837
2838 2002-01-02  David Edelsohn  <edelsohn@gnu.org>
2839
2840         * config/rs6000/t-aix43: Revert previous change.
2841
2842 2002-01-02  Jason Merrill  <jason@redhat.com>
2843
2844         * c-decl.c (c_expand_body): Call outlining_inline_function when
2845         emitting an inline function out of line.
2846
2847 2002-01-02  Richard Henderson  <rth@redhat.com>
2848
2849         * dwarf2out.c (limbo_die_node): Add created_for member.
2850         (new_die): New argument created_for.  Update all callers.
2851         (mark_limbo_die_list): New.
2852         (dwarf2out_init): Register limbo_die_list as a root.
2853         (dwarf2out_finish): Force insert limbo dies into their function
2854         context.
2855
2856 2002-01-02  Nathan Sidwell  <nathan@codesourcery.com>
2857
2858         PR c++/5089
2859         * doc/invoke.texi (-Wold-style-cast): Only warn about non-void casts.
2860
2861 2002-01-02  Kazu Hirata  <kazu@hxi.com>
2862
2863         * config/h8300/fixunssfsi.c: Update copyright.
2864         Fix comment typos.
2865         Fix formatting.
2866         * config/h8300/h8300.c: Update copyright.
2867         Eliminate warnings.
2868
2869 2002-01-02  Kazu Hirata  <kazu@hxi.com>
2870
2871         * config/romp/romp.c: Fix comment formatting.
2872         * config/romp/romp.h: Likewise.
2873         * config/romp/romp.md: Likewise.
2874         * config/s390/s390.c: Likewise.
2875         * config/stormy16/stormy16.c: Likewise.
2876         * config/stormy16/stormy16.h: Likewise.
2877
2878 2002-01-02  Alexandre Oliva  <aoliva@redhat.com>
2879
2880         * c-common.h (genrtl_expr_stmt_value): Declare.
2881         * c-semantics.c (genrtl_goto_stmt): Redirect to...
2882         (genrtl_goto_stmt_value): ... this new function.  Pass new
2883         argument down to expand_expr_stmt_value, taking
2884         TREE_ADDRESSABLE into account.
2885         * c-common.c (c_expand_expr): Mark the last EXPR_STMT of a
2886         STMT_EXPR as addressable, i.e., one whose result we want.
2887         * expr.c (expand_expr): Don't save expression statement value
2888         of labeled_blocks or loop_exprs.
2889         * stmt.c (expand_expr_stmt): Redirect to...
2890         (expand_expr_stmt_value): ... this new function.  Use new
2891         argument to tell whether to save expression value.
2892         (expand_end_stmt_expr): Reset last_expr_type and
2893         last_expr_value if we don't have either.
2894         * tree-inline.c (declare_return_variable): Mark its use
2895         statement as addressable.
2896         * tree.h: Document new use of TREE_ADDRESSABLE.
2897         (expand_expr_stmt_value): Declare.
2898
2899 2002-01-01  Tom Rix  <trix@redhat.com>
2900
2901         * config/rs6000/rs6000.c (rs6000_emit_set_long_const): Fix for use by
2902         rs6000_emit_allocate_stack.
2903
2904 2002-01-01  Joseph S. Myers  <jsm28@cam.ac.uk>
2905
2906         * configure.in: Prepend ${srcdir}/config/${cpu_type}/ instead of
2907         ${srcdir}/ginclude/ to every entry in extra_headers.
2908         * configure: Regenerate.
2909         * ginclude/math-3300.h: Rename to config/m68k/math-3300.h.
2910         * ginclude/math-68881.h: Rename to config/m68k/math-68881.h.
2911         * ginclude/ppc-asm.h: Rename to config/rs6000/ppc-asm.h.
2912         * ginclude/proto.h: Rename to config/convex/proto.h.
2913
2914 Tue Jan  1 17:12:56 2002  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
2915
2916         * attribs.c (handle_vector_size_attribute): Use host_integerp
2917         and tree_int_cst; remove warnings.
2918         * caller-save.c (insert_restore): Add cast to get rid of warning.
2919         (insert_save): Likewise.
2920         * emit-rtl.c (adjust_address_1, offset_address): Likewise.
2921         * regmove.c (find_matches): Add temporary var to kill a warning.
2922
2923 2002-01-01  Douglas B Rupp  <rupp@gnat.com>
2924
2925         * config/alpha/vms.h (DWARF2_UNWIND_INFO, EH_RETURN_HANDLER_RTX,
2926         LINK_EH_SPEC, MD_FALLBACK_FRAME_STATE_FOR): Define.
2927         * config/alpha/t-vms (EXTRA_PARTS): Add vms-dwarf2eh.o
2928         (vms-dwarf2eh.o): Add Makefile rule.
2929         * config/alpha/vms-ld.c (main): Handle vms-dwarf2eh.o.
2930         * config/alpha/vms-dwarf2eh.asm: New file.
2931
2932         * gcc.c (delete_if_ordinary): Delete all versions.
2933
2934 2002-01-01  Hans-Peter Nilsson  <hp@bitrange.com>
2935
2936         * config/mmix/mmix.md: Update FIXME to not mention
2937         define_constants.
2938         (MMIX_rJ_REGNUM): New define_constants constant.
2939         ("movqi", "movsi", "movdi", "*movdicc_real_foldable",
2940         "*movdicc_real"): Adjust contraints formatting.
2941         ("*bCC_foldable"): Add %+ for P in output format and delete FIXME
2942         for branch prediction.
2943         ("*bCC", "*bCC_inverted_foldable", "*bCC_inverted"): Add %+ in
2944         output template.
2945         ("*call_real", "*call_value_real", "nonlocal_goto_receiver",
2946         "*nonlocal_goto_receiver_expanded"): Use MMIX_rJ_REGNUM instead of
2947         number.  Delete related FIXMEs.
2948         * config/mmix/mmix.h (MMIX_INCOMING_RETURN_ADDRESS_REGNUM): Change
2949         from number to MMIX_rJ_REGNUM.
2950         (TARGET_MASK_BRANCH_PREDICT): New.
2951         (TARGET_DEFAULT): Change to TARGET_MASK_BRANCH_PREDICT.
2952         (TARGET_SWITCHES): Update comment.  Correct -mno-toplevel-symbols
2953         value.  Add -mbranch-predict and -mno-branch-predict.
2954         (TARGET_VERSION): Drop date.
2955         (ADDITIONAL_REGISTER_NAMES): Use MMIX_rJ_REGNUM, not number.
2956         * config/mmix/mmix.c (mmix_encode_section_info): Correct condition
2957         for finding out global symbols.
2958         (mmix_asm_output_labelref): Revert condition for global symbol.
2959         (mmix_print_operand): <case '+'>: Emit P for a likely branch.
2960         (mmix_print_operand_punct_valid_p): A '+' is valid.
2961
2962 See ChangeLog.6 for earlier changes.