OSDN Git Service

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