OSDN Git Service

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