OSDN Git Service

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