xref: /openbsd/gnu/usr.bin/gcc/gcc/ChangeLog (revision 34c26535)
12005-05-03  Release Manager
2
3	* GCC 3.3.6 Released.
4
52005-05-01  Roger Sayle  <roger@eyesopen.com>
6
7	PR rtl-optimization/19579
8	Backport from mainline
9	2005-01-26  Jakub Jelinek  <jakub@redhat.com>
10	* ifcvt.c (noce_try_cmove_arith): If emitting instructions to set up
11	both A and B, see if they don't clobber registers the other expr uses.
12
132005-04-30  Gabriel Dos Reis  <gdr@integrable-solutions.net>
14
15	PR 14884
16	* Apply:
17	2004-03-25  Joseph S. Myers  <jsm@polyomino.org.uk>
18
19	* fixinc/inclhack.def (rpc_xdr_lvalue_cast_a,
20	rpc_xdr_lvalue_cast_b): New fixes.
21	* fixinc/tests/base/rpc/xdr.h: Add new tests.
22
232005-04-30  Gabriel Dos Reis  <gdr@integrable-solutions.net>
24
25	* Apply:
26	2004-10-21  Aldy Hernandez  <aldyh@redhat.com>
27
28	PR target/18004.
29	* expmed.c (store_bit_field): Pass original 'value' before
30	recursing.
31
322005-04-22  Eric Botcazou  <ebotcazou@libertysurf.fr>
33
34	* doc/invoke.texi (SPARC options): Document that -mapp-regs
35	is turned off by default on Solaris.
36
372005-04-06  James E. Wilson  <wilson@specifixinc.com>
38
39	PR target/20670
40	* unwind-ia64.c (uw_intall_context): Add missing load of r27.
41
422005-04-04  Gabriel Dos Reis  <gdr@integrable-solutions.net>
43
44	PR c++/18644
45	* doc/invoke.texi (-Wsynth): Remove documentation.
46
472005-03-28  James E Wilson  <wilson@specifixinc.com>
48
49	PR target/20286.
50	* config/ia64/ia64.c (ia64_encode_section_info): Only abort if encoding
51	or symbol_str[1] is 's'.
52
532005-02-23  Michael Beach  <michaelb@ieee.org>
54
55	PR target/20159
56	* config/sparc/t-elf (startup files): Assemble with CPP.
57
582005-02-11  John David Anglin  <dave.anglin@nrc-crnc.gc.ca>
59
60        PR middle-end/19697
61	2005-01-30  Roger Sayle  <roger@eyesopen.com>
62        * config/pa/pa.md (anddi3, iordi3): On HPPA64, disallow an integer
63        constant as the second operand and a register as the third.
64
652005-01-29  Alan Modra  <amodra@bigpond.net.au>
66
67	* unwind-dw2.c (execute_stack_op): Add missing cases for
68	DW_OP_shl, DW_OP_shr, DW_OP_shra, DW_OP_xor.
69
702005-01-28  Stephane Carrez  <stcarrez@nerim.fr>
71
72	PR target/15384
73	* config/m68hc11/t-m68hc11-gas (dp-bit.c): Fix typo causing a
74	configuration part of dp-bit.c to be lost.
75
762005-01-27  Ulrich Weigand  <uweigand@de.ibm.com>
77
78	PR target/17771
79	Backport from mainline:
80	* config/s390/s390.md ("reload_outti"): Remove predicate for
81	output operand.  Abort if operand is not a MEM.
82	("reload_outdi", "reload_outdf"): Likewise.
83
842005-01-22  Roger Sayle  <roger@eyesopen.com>
85
86	PR target/18402
87	Backport from mainline
88	2003-02-05  Jakub Jelinek  <jakub@redhat.com>
89
90 	PR optimization/8555
91 	* config/i386/i386.md (sse_mov?fcc split): Handle op2 == op3 case
92 	instead of aborting.
93
942005-01-21  Giovanni Bajo  <giovannibajo@gcc.gnu.org>
95
96	* gccbug.in: Update optimization -> tree-optimization/rtl-optimization.
97
982005-01-21  Giovanni Bajo  <giovannibajo@gcc.gnu.org>
99
100	PR c++/17115
101	* tree-inline.c (expand_call_inline): Do not warn for functions
102	marked with attribute noinline.
103
1042005-01-18  Eric Botcazou  <ebotcazou@libertysurf.fr>
105
106	PR rtl-optimization/19296
107	* combine.c (simplify_comparison): Rewrite the condition under
108	which a non-paradoxical SUBREG of a PLUS can be lifted when
109	compared against a constant.
110
1112004-01-14  David Mosberger  <davidm@hpl.hp.com>
112	    James E Wilson  <wilson@specifixinc.com>
113
114	PR target/18987
115	* config/ia64/ia64.c (process_set): For alloc insn, only call
116	process_epilogue is !frame_pointer_needed.
117
118	PR target/13158
119	* config/ia64/ia64.c (ia64_expand_epilogue): Set RTX_FRAME_RELATED_P on
120	sibcall alloc instruction.
121	(process_set): Handle sibcall alloc instruction.
122
1232005-01-13  David O'Brien  <obrien@FreeBSD.org>
124
125	Backport from mainline:
126	* config/freebsd-spec.h:  Use KSE pthread lib for -pthread.
127
1282005-01-08  Sergey M. Samoylov  <ssamoylov@dev.rtsoft.ru>
129
130	Backport:
131	2004-02-12  Richard Sandiford  <rsandifo@redhat.com>
132	PR bootstrap/13617
133	* config/mips/mips-protos.h (mips_output_aligned_decl_common): Declare.
134	(mips_declare_object): Make variadic.
135	* config/mips/mips.h (ASM_OUTPUT_ALIGNED_DECL_COMMON): Use
136	mips_output_aligned_decl_common.
137	* config/mips/mips.c (mips_output_aligned_decl_common): New function.
138	(mips_declare_object): Make variadic.
139
1402005-01-08  Richard Sandiford  <rsandifo@redhat.com>
141
142	PR target/17565
143	* config/mips/mips.md (define_asm_attributes): Set can_delay to no.
144
1452004-12-27 John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
146
147	* vax.c (vax_address_cost, vax_rtx_cost): Correct casts.
148	(vax_rtx_cost): Handle small offsets for both PLUS and MINUS.
149
1502004-12-27  Steven Bosscher  <stevenb@suse.de>
151	    John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
152
153	rtl-optimization/12863
154        * config/vax/vax.h (CASE_DROPS_THROUGH): Don't define.
155        * config/vax/vax.md (casesi): Emit a test-and-branch to make sure
156        that the case is in range, to make sure the casesi insn is always
157        in range and never falls through.
158        (casesi1): Add comment to explain why casesi never falls through.
159        Remove the unnamed special case casesi pattern.
160
1612004-12-26  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
162
163	PR target/17643
164	* config/pa/pa32-linux.h (FUNCTION_OK_FOR_SIBCALL): Return false when
165	TARGET_PORTABLE_RUNTIME is true.
166
1672004-12-25  Alan Modra  <amodra@bigpond.net.au>
168
169	PR target/19147
170	* config/rs6000/rs6000.md (andsi3_internal7, andsi3_internal8): Delete.
171
1722004-12-21  Joseph S. Myers  <jsm@polyomino.org.uk>
173
174	PR c/14765
175	* c-parse.in (compstmt_primary_start): Set last_expr_type to
176	NULL_TREE.
177
1782004-12-19  Roger Sayle  <roger@eyesopen.com>
179
180	PR middle-end/19068
181	* expr.c (expand_expr_real_1) <MAX_EXPR>: Ensure that target, op0
182	and op1 are all registers (or constants) before expanding the RTL
183	comparison sequence [to avoid reg_overlap_mentioned (target, op1)].
184
1852004-12-16  Eric Botcazou  <ebotcazou@adacore.com>
186
187	PR middle-end/18882
188	* function.c (assign_stack_local_1): Use BITS_PER_UNIT alignment
189	when passed -2 as 'align'.
190	(put_var_into_stack): Adjust calls to put_reg_into_stack.
191	When passed a CONCAT, instruct put_reg_into_stack to use
192	a consecutive stack slot for the second part.
193	(put_reg_into_stack): Remove 'promoted_mode' parameter, add
194	'consecutive_p' parameter.  Retrieve the register mode from 'reg'.
195	When consecutive_p is true, instruct assign_stack_local_1 to use
196	BITS_PER_UNIT alignment.
197	(put_addressof_into_stack): Adjust call to put_reg_into_stack.
198
1992004-12-16  Eric Botcazou  <ebotcazou@libertysurf.fr>
200
201	PR middle-end/18590
202	* function.c (fixup_var_refs_insns_with_hash): Do not invoke
203	fixup_var_refs_insn on insns marked as deleted.
204
2052004-12-15  Richard Henderson  <rth@redhat.com>
206
207        PR target/19005
208        * config/i386/i386.md (swaphi_1): Swap with swaphi_2, allow with
209        optimize_size.
210        (swapqi_1): Rename from swapqi.  Enable only for no partial reg
211        stall and optimize_size.
212        (swapqi_2): New.
213        (swaphi_1, swaphi_2, swapqi_1): Add athlon_decode.
214        (swapsi, swaphi_1, swaphi_2, swapqi_1, swapdi): Remove modrm override.
215
2162004-12-13  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
217
218	PR middle-end/18730
219	* emit-rtl.c (get_first_nonnote_insn, get_last_nonnote_insn): When
220	the first/last insn is a sequence, return the first/last insn of the
221	sequence.
222
2232004-12-12  Richard Henderson  <rth@redhat.com>
224
225        PR target/18932
226        * config/i386/i386.md (all splits and peepholes): Use flags_reg_operand
227        and compare_operator to propagate the input CC mode to the output.
228        * config/i386/i386.c (flags_reg_operand, compare_operator): New.
229        * config/i386/i386.h (PREDICATE_CODES): Add them.
230        * config/i386/i386-protos.h: Update.
231
2322004-12-10  Volker Reichelt  <reichelt@igpm.rwth-aachen.de>
233
234	PR rtl-optimization/16536
235	Backport from mainline:
236	2004-06-25  Mark Mitchell  <mark@codesourcery.com>
237	* alias.c (get_alias_set): Adjust setting of
238	DECL_POINTER_ALIAS_SET for pointers to aggregates.
239
2402004-12-09  Richard Henderson  <rth@redhat.com>
241
242	PR target/17025
243	* config/i386/i386.md (testqi_1_maybe_si, andqi_2_maybe_si): New.
244	(test_qi_1, andqi_2): Do not promote to simode.
245
2462004-12-07  David Mosberger  <davidm@hpl.hp.com>
247
248	PR target/18443
249	* config/ia64/ia64.c (ia64_assemble_integer): Add support for
250	emitting unaligned pointer-sized integers.
251
2522004-12-05  Richard Henderson  <rth@redhat.com>
253
254	PR target/18841
255	* config/alpha/alpha.md (UNSPECV_SETJMPR_ER): New.
256	(builtin_setjmp_receiver_er_sl_1): Use it.
257	(builtin_setjmp_receiver_er_1): Likewise.
258	(builtin_setjmp_receiver_er, exception_receiver_er): Remove.
259	(builtin_setjmp_receiver): Don't split for explicit relocs until
260	after reload.
261	(exception_receiver): Likewise.
262
2632004-12-03  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
264
265	2003-10-31  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
266	Backport from mainline
267	* aclocal.m4 (gcc_AC_FUNC_MMAP_BLACKLIST): Blacklist ultrix*.
268	* configure: Rebuilt.
269
2702004-12-03  Richard Henderson  <rth@redhat.com>
271
272	2004-09-24  Richard Henderson  <rth@redhat.com>
273	PR rtl-opt/17503
274	* regclass.c (subregs_of_mode): Turn into an htab.  Make static.
275	(som_hash, som_eq): New.
276	(init_subregs_of_mode, record_subregs_of_mode): New.
277	(cannot_change_mode_set_regs): Rewrite for htab implementation.
278	(invalid_mode_change_p): Likewise.
279	* combine.c (gen_lowpart_for_combine): Use record_subregs_of_mode.
280	* flow.c (mark_used_regs): Likewise.
281	(life_analysis): Use init_subregs_of_mode.
282	* regs.h (subregs_of_mode): Remove.
283	* rtl.h (init_subregs_of_mode, record_subregs_of_mode): Declare.
284
2852004-12-03  Roger Sayle  <roger@eyesopen.com>
286
287	PR target/9908
288	* config/i386/i386.md (*call_value_1): Correct Intel assembler
289	syntax by using %A1 instead of %*%1.
290
2912004-12-01  Alan Modra  <amodra@bigpond.net.au>
292
293	PR target/12817
294	* config/rs6000/rs6000.c (rs6000_emit_prologue): Use r0 for vrsave.
295
2962004-11-29  Roger Sayle  <roger@eyesopen.com>
297
298	PR rtl-optimization/9771
299	* regclass.c (CALL_REALLY_USED_REGNO_P): New macro to eliminate
300	conditional compilation in init_reg_sets_1.
301	(init_reg_sets_1): Let global_regs[i] take priority over the frame
302	(but not stack) pointer exceptions to regs_invalidated_by_call.
303	(globalize_reg): Globalizing a fixed register may need to update
304	regs_invalidated_by_call.
305
3062004-11-27  Falk Hueffner  <falk@debian.org>
307	    Eric Botcazou  <ebotcazou@libertysurf.fr>
308
309	PR optimization/18577
310	* unroll.c (unroll_loop): Test both REGNO_LAST_UID and
311	REGNO_LAST_NOTE_UID to decide whether a pseudo is local
312	to the loop.
313
3142004-11-27  Alan Modra  <amodra@bigpond.net.au>
315
316	PR target/12769
317	* config/rs6000/rs6000.c (init_cumulative_args): Set call_cookie
318	from rs6000_default_long_calls for libcalls.
319
3202004-11-25  Richard Henderson  <rth@redhat.com>
321
322	PR c++/6764
323	* reload1.c (set_initial_eh_label_offset): New.
324	(set_initial_label_offsets): Use it.
325
3262004-11-22  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
327
328	PR rtl-optimization/14838
329	* emit-rtl.c (get_first_nonnote_insn): Don't assume first insn is a
330	note.
331	(get_last_nonnote_insn): Don't assume last insn is a note.
332
3332004-10-14  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
334
335	* doc/install.texi (*-*-solaris2*): Update with info about kernel
336	patches to solve spurious testsuite failures.
337
3382004-10-13  Eric Botcazou  <ebotcazou@libertysurf.fr>
339
340	PR target/14454
341	* config/sparc/sparc.c (TARGET_ASM_CAN_OUTPUT_MI_THUNK): Set to
342	sparc_can_output_mi_thunk.
343	(sparc_output_mi_thunk): Simplify handling of delta offset.  Add
344	handling of vcall offset.
345	(sparc_can_output_mi_thunk): New predicate.
346	* doc/tm.texi (TARGET_ASM_OUTPUT_MI_THUNK): Document VCALL_OFFSET.
347	(TARGET_ASM_OUTPUT_MI_VCALL_THUNK): Delete.
348	(TARGET_ASM_CAN_OUTPUT_MI_THUNK): New target hook.
349
350	* config/sparc/sparc.md (movdi): Remove redundant test.
351
3522004-10-07  Eric Botcazou  <ebotcazou@libertysurf.fr>
353
354	* doc/install.texi (*-*-solaris2*): Fix marker for URL.
355
3562004-10-06  Eric Botcazou  <ebotcazou@libertysurf.fr>
357
358	PR target/16007
359	* doc/install.texi (*-*-solaris2*): Mention potential problem
360	with Sun assembler + GNU linker and C++ programs.
361	Document status of binutils 2.15 release.
362
3632004-09-30  Richard Henderson  <rth@redhat.com>
364
365	* config/alpha/qrnnd.asm: Mark for noexecstack.
366
3672004-09-30  Richard Henderson  <rth@redhat.com>
368
369	* unwind-dw2.c (_Unwind_GetGR): Honor DWARF_ZERO_REG.
370	* doc/tm.texi (DWARF_ZERO_REG): New.
371
372	* config/alpha/alpha.c (alpha_sa_mask, alpha_expand_prologue,
373	alpha_expand_epilogue): Revert 2003-09-30 change to store zero.
374	* config/alpha/alpha.h (DWARF_ZERO_REG): New.
375
3762003-07-06  James E Wilson  <wilson@tuliptree.org>
377
378	PR optimization/9812
379	* rtl.h (mem_for_const_double): Delete prototype.
380	* varasm.c (mem_for_const_double): Delete function.
381	* config/m68k/hp320.h, config/m68k/linux.h, config/m68k/m68kelf.h,
382	config/m68k/m68kv4.h, config/m68k/netbsd-elf.h
383	(LEGITIMATE_PIC_OPERAND_P): Delete duplicate definitions.
384	* config/m68k/m68k.h (LEGITIMATE_CONSTANT_P): Disallow XFmode.
385	(LEGITIMATE_PIC_OPERAND_P): Delete CONST_DOUBLE tests.
386	* config/m68k/m68k.md (movxf): Add reload_in_progress guard.  Add
387	comment about confused support for XFmode constants.
388
3892004-09-30  Release Manager
390
391	* GCC 3.3.5 Released.
392
3932004-09-20  Roger Sayle  <roger@eyesopen.com>
394
395	PR rtl-optimization/17363
396	Backport from mainline
397	2003-07-19  Zdenek Dvorak  <rakdver@atrey.karlin.mff.cuni.cz>
398
399		PR bootstrap/11593
400		* sched-rgn.c (find_rgns): Initialize current_edge correctly.
401
4022004-09-17  James E Wilson  <wilson@specifixinc.com>
403
404	PR target/17455
405	* config/ia64/ia64.c (ia64_function_ok_for_sibcall): Return false
406	if current_function_decl is a sibcall.
407
4082004-09-13  Richard Henderson  <rth@redhat.com>
409
410	PR inline-asm/6806
411	* cselib.c (cselib_invalidate_rtx): Export.  Remove unused args.
412	(cselib_invalidate_rtx_note_stores): New.
413	(cselib_record_sets, cselib_process_insn): Update to match.
414	* cselib.h (cselib_invalidate_rtx): Declare.
415	* reload1.c (reload_cse_simplify): Invalidate asm clobbers.
416
4172004-08-29  Jonathan Wakely  <redi@gcc.gnu.org>
418
419	* doc/trouble.texi (C++ misunderstandings): Fix example code.
420
4212004-08-26  Richard Henderson  <rth@redhat.com>
422
423	PR target/15718
424	* config/alpha/alpha.h (HARD_REGNO_MODE_OK): Allow complex float
425	modes.
426
4272004-08-26  Matthias Klose  <doko@debian.org>
428
429	* doc/invoke.texi: Remove duplicate -fbranch-probabilities entry.
430
4312004-08-14  Roger Sayle  <roger@eyesopen.com>
432
433	* fixinc/tests/base/obstack.h: Backport from mainline.
434
4352004-08-14  Roger Sayle  <roger@eyesopen.com>
436	    David Billinghurst  <David.Billinghurst@riotinto.com>
437
438	PR libgfortran/15930
439	* fixinc/inclhack.def (irix___generic1, irix___generic2): New.
440	* fixinc/fixincl.x: Regenerate.
441	* fixinc/tests/base/internal/math_core.h: New file
442
4432004-08-08  Roger Sayle  <roger@eyesopen.com>
444
445	PR middle-end/16790
446	* fold-const.c (expand_muldiv_1) <NOP_EXPR>: Disallow local
447	truncations, not just global truncations.
448
4492004-08-02  Ulrich Weigand  <uweigand@de.ibm.com>
450
451	Backport from mainline:
452	2003-07-11  Jakub Jelinek  <jakub@redhat.com>
453	* optabs.c (prepare_cmp_insn): Try cmpmemM first if it exists,
454	then fall back to cmpstrM.
455	* builtins.c (expand_builtin_memcmp): Likewise.
456	* config/s390/s390-protos.h (s390_expand_cmpstr): Rename to...
457	(s390_expand_cmpmem): ... this.
458	* config/s390/s390.md (cmpmemdi, cmpmemsi, cmpmem_short_64,
459	cmpmem_short_31, cmpmem_long_64, cmpmem_long_31): Renamed
460	from cmpstr* patterns.  Rename call to s390_expand_cmpstr
461	to s390_expand_cmpmem.
462	* config/s390/s390.c (s390_expand_cmpstr): Rename to...
463	(s390_expand_cmpstr): ... this.  Rename cmpstr* instructions
464	to cmpmem*.
465	* config/i370/i370.md (cmpmemsi, cmpmemsi_1): Renamed from
466	cmpstr* patterns.
467	* doc/md.texi (cmpstrM): Describe as String compare insn, not
468	Block compare insn.
469	(cmpmemM): Add.
470
4712004-07-25  Andreas Jaeger  <aj@suse.de>
472
473	Backport from mainline:
474	* libgcc-std.ver: Add __unorddf2 and __unordsf2 with version 3.3.4.
475
4762004-07-25  Kaz Kojima  <kkojima@gcc.gnu.org>
477
478	PR target/13250
479	Backport from mainline:
480	* config/sh/sh.md (rotlsi3): Use emit_move_insn.
481
482	PR target/15647
483	Backport from mainline:
484	* config/sh/t-linux (SHLIB_MAPFILES): Use sh specific
485	libgcc-std.ver.
486	* config/sh/libgcc-std.ver: New file.
487
4882004-07-25  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
489
490	PR target/15202
491	* pa.md (movdi, movsi, movhi, movqi): Support move from shift amount
492	register to general register for DI, SI, HI and QI modes.  Remove
493	move to shift amount register in DF mode.
494
495	PR rtl-optimization/14782
496	* pa.c (emit_move_sequence): Use SFmode for 4-byte modes when doing
497	the address checks for secondary reloads for loads from and stores
498	to floating-point registers.
499	* pa.h (EXTRA_CONSTRAINT, case T): Use SFmode for 4-byte modes
500	in the address check.  Move work around for ELF32 targets to
501	GO_IF_LEGITIMATE_ADDRESS.
502	(GO_IF_LEGITIMATE_ADDRESS): Require constant offsets to be
503	correctly aligned for DImode loads and stores.  Don't allow long
504	SFmode displacements on ELF32.
505
5062004-07-25  Matthias Klose  <doko@debian.org>
507
508	Backport:
509	PR rtl-optimization/14700
510
511	2004-06-24  Eric Christopher  <echristo@redhat.com>
512
513 	* combine.c (distribute_notes): Don't delete sets to
514 	global register variables.
515
516	2004-06-29  Zack Weinberg  <zack@codesourcery.com>
517
518 	* combine.c (distribute_notes): Don't look at global_regs for
519 	pseudos.
520
5212004-07-23  James E Wilson  <wilson@specifixinc.com>
522
523	PR target/16559
524	* ia64.c (ia64_expand_load_address): For CONST, replace
525	gen_load_symptr call with recursive call.
526
5272004-07-17  Eric Botcazou  <ebotcazou@libertysurf.fr>
528
529	Backport from mainline:
530	2004-07-13  Eric Botcazou  <ebotcazou@libertysurf.fr>
531
532	PR target/13926
533	* config/sparc/sparc-protos.h (output_ubranch): New prototype.
534	* config/sparc/sparc.c (output_ubranch): New function.
535	* config/sparc/sparc.md (jump pattern): Use it.
536
5372004-07-13  Eric Botcazou  <ebotcazou@libertysurf.fr>
538
539	PR target/16494
540	* config/sparc/sparc.c (output_cbranch): Properly guard
541	the code handling far branches with TARGET_V9.
542	* config/sparc/sparc.md (length attribute): Document the
543	side-effect of having a length greater or equal to 3.
544
5452004-07-13  Eric Botcazou  <ebotcazou@libertysurf.fr>
546	    Lloyd Parkes  <lloyd@must-have-coffee.gen.nz>
547
548	PR target/15186
549	* config/sparc/sol2-bi.h (LINK_ARCH64_SPEC_BASE): Pass
550	/usr/ucblib/sparcv9 as -R path when -compat-bsd is specified.
551
5522004-07-13  Eric Botcazou  <ebotcazou@libertysurf.fr>
553	    Martin Sebor  <sebor@roguewave.com>
554
555	PR target/12602
556	* doc/invoke.texi (SPARC options): Document -threads
557	and -pthreads on Solaris.
558
5592004-07-12  Eric Botcazou  <ebotcazou@libertysurf.fr>
560
561	* config/sparc/sol2-bi.h: Handle TARGET_CPU_ultrasparc3.
562	(CPP_CPU_SPEC): Handle -mcpu=ultrasparc3.
563	(ASM_CPU_SPEC): Likewise
564	* config/sparc/sol2.h: Handle TARGET_CPU_ultrasparc3.
565	(ASM_CPU_SPEC): Handle -mcpu=ultrasparc3.
566
5672004-07-10  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
568
569	* pa.c (output_indirect_call): Only use %r2 as the link register in
570	indirect calls with the long PA 2.0 pc-relative branch.
571
572	PR target/16459
573	* pa.c (output_indirect_call): Use %r2 as the link register when
574	calling $$dyncall with a pc-relative branch.
575
5762004-07-07  Andreas Schwab  <schwab@suse.de>
577
578	* config/ia64/ia64.md: Define new attribute "empty".
579	(prologue_use, nop_x, insn_group_barrier): Set it.
580
581	* config/ia64/ia64.c (ia64_reorg): When looking for trailing call
582	skip over "empty" insns.
583
5842004-07-04  Gerald Pfeifer  <gerald@pfeifer.com>
585
586	* doc/contrib.texi (Contributors): Adjust link for GNU Classpath.
587
5882004-06-30  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
589
590	* pa.c (emit_move_sequence): Fix loading of non 14-bit CONST operands
591	when generating PIC code.
592
5932004-06-28  Josef Zlomek  <zlomekj@suse.cz>
594
595	PR c/15549
596	Backport from mainline
597	2003-08-19  Mark Mitchell  <mark@codesourcery.com>
598
599		PR c++/11946
600		* convert.c (convert_to_integer): Use CONVERT_EXPR (instead of
601		NOP_EXPR) when necessary.
602
6032004-06-17  Ian Lance Taylor  <ian@wasabisystems.com>
604
605	PR middle-end/16038
606	Backport from mainline:
607	Fri Apr  4 17:43:52 2003  Olivier Hainque <hainque@act-europe.fr>
608
609	* emit-rtl.c (get_mem_attrs): Adjust alignment tests determining
610	use of default attributes to agree MEM_ALIGN macro.
611
6122004-05-31  Release Manager
613
614	* GCC 3.3.4 Released.
615
6162004-05-31  Eric Botcazou  <ebotcazou@libertysurf.fr>
617
618	PR target/15693
619	* config/sparc/sparc.c (compare_operand): New predicate.
620	* config/sparc/sparc.h (PREDICATE_CODES): Add it.
621	* config/sparc/sparc.md (cmpsi expander): Use it.  If the first
622	operand is a ZERO_EXTRACT and the second operand is not zero,
623	force the former to a register.
624	(cmpdi expander): Likewise.
625
6262004-05-29  Eric Botcazou  <ebotcazou@libertysurf.fr>
627
628	PR optimization/13653
629	* loop.c (loop_givs_rescan): When reducing a non-replaceable giv,
630	clear the RTX_UNCHANGING_P flag.
631
6322004-05-28  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
633
634	PR bootstrap/14671
635	* alias.c (init_alias_analysis): Allocate alias_invariant array with
636	ggc_alloc_cleared instead of xrealloc.
637	(end_alias_analysis): Don't free alias_invariant.
638
6392004-05-27  Richard Henderson  <rth@redhat.com>
640
641	Backport from mainline:
642	2004-01-19  Richard Henderson  <rth@redhat.com>
643	* alpha.md (UNSPEC_NT_LDA): Renumber.
644	(UNSPEC_CVTLQ, cvtlq): New.
645	(extendsidi2_1): Rename from extendsidi2_nofix; remove f/f.
646	(extendsidi2_fix): Remove.
647	(extendsidi2 splitter): Use cvtlq.
648	(extendsidi2 fp peepholes): Remove.
649	(cvtql): Use SFmode instead of SImode.
650	(fix_trunc?fsi): Update to match.
651	(floatsisf2_ieee, floatsisf2, floatsidf2_ieee, floatsidf2): New.
652	(movsi): Rename from movsi_nofix, remove f alternatives.
653	(movsi_nt_vms): Similarly.
654	(movsi_fix, movsi_nt_vms_fix): Remove.
655
6562004-05-26  Hans-Peter Nilsson  <hp@axis.com>
657
658	PR optimization/15296
659	* reorg.c (fill_simple_delay_slots): Use next_real_insn when
660	getting last consecutive label at a branch.
661	(relax_delay_slots): Similar, near top of loop.
662
6632004-05-17  H.J. Lu  <hongjiu.lu@intel.com>
664
665	Backport from mainline
666
667	PR target/15301
668	PR target/15302
669	2004-05-17  Jan Hubicka  <jh@suse.cz>
670
671	* i386.c (construct_container): Do not produce BLKmode registers.
672	(classify_argument): Properly compute alignment of complex types.
673
6742004-05-17  Eric Botcazou  <ebotcazou@libertysurf.fr>
675
676	PR optimization/11841
677	* loop.h (REGNO_LAST_NOTE_LUID): New macro.
678	* unroll.c (unroll_loop): Take into account notes when deciding
679	whether a pseudo is local to the loop.
680
6812004-05-16  Gabriel Dos Reis  <gdr@integrable-solutions.net>
682
683	Backport from mainline
684	2004-05-01  Ulrich Weigand  <uweigand@de.ibm.com>
685	PR middle-end/15054
686	* expr.c (expand_expr_real): Do not call preserve_temp_slots
687	on a TARGET_EXPR temp.
688	* function.c (assign_stack_temp_for_type): Set 'keep' flag for
689	TARGET_EXPR temp slots.
690
6912004-05-13  Kaz Kojima  <kkojima@gcc.gnu.org>
692
693	PR target/15130
694	* config/sh/sh-protos.h (sh_expand_epilogue): Change prototype.
695	* config/sh/sh.c (output_stack_adjust): Generate a special
696	push/pop sequence when failing to get a temporary register for
697	non SHmedia epilogue.
698	(sh_expand_epilogue): Add an argument to show whether it's for
699	sibcall or not.  Take the sibcall epilogue into account.
700	(sh_need_epilogue): Call sh_expand_epilogue with 0.
701	* config/sh/sh.md (sibcall_epilogue): Call sh_expand_epilogue
702	with 1.
703	(epilogue): Call sh_expand_epilogue with 0.
704
7052004-05-08  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
706
707	* alias.c (set_reg_known_value, set_reg_known_equiv_p):
708	Prototype.
709	(get_reg_known_value, set_reg_known_value,
710	get_reg_known_equiv_p, set_reg_known_equiv_p): Use traditional
711	style function definitions.
712	(set_reg_known_equiv_p): Change parameter from bool to int.
713
714	Backport:
715
716	2003-06-13  Matt Kraai  <kraai@alumni.cmu.edu>
717
718	* unwind-c.c: Define NO_SIZE_OF_ENCODED_VALUE.
719	* unwind-pe.h (size_of_encoded_value): Do not define if
720	NO_SIZE_OF_ENCODED_VALUE is defined.
721
722	2003-10-27  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
723
724	* unwind-dw2.c (NO_SIZE_OF_ENCODED_VALUE): Define when
725	appropriate.
726
727	2003-05-07  Richard Henderson  <rth@redhat.com>
728
729	* unwind-dw2.c (_Unwind_GetCFA): Cast pointer to _Unwind_Ptr,
730	not _Unwind_Word.
731
7322004-05-08  Eric Botcazou  <ebotcazou@libertysurf.fr>
733
734	* doc/install.texi (sparc-sun-solaris2*): Document bootstrap
735	problems with earlier versions of the GNU compiler.
736
7372004-05-07  Steven Bosscher  <stevenb@suse.de>
738
739	PR opt/14749
740	* expr.c (do_jump): If TREE_CONSTANT_OVERFLOW is set, don't
741	trust integer_zerop.  Just expand both branches.
742
7432004-04-29  Matthias Klose  <doko@debian.org>
744
745	Backport:
746
747	2004-03-04  Eric Botcazou  <ebotcazou@libertysurf.fr>
748
749	PR optimization/14235
750	* expr.c (convert_move): Copy the source to a new pseudo
751	when converting from a sub-word source to a larger-than-word
752	register which conflicts with the source.
753
7542004-04-29  Jakub Jelinek  <jakub@redhat.com>
755
756	* config/sparc/sparc.h (FLOATDITF2_LIBCALL, FIX_TRUNCTFDI2_LIBCALL,
757	FIXUNS_TRUNCTFDI2_LIBCALL): Define.
758	(INIT_TARGET_OPTABS): If DITF_CONVERSION_LIBFUNCS, initialize
759	DI <-> TF libfuncs for TARGET_ARCH32.
760	(DITF_CONVERSION_LIBFUNCS): Define to 0.
761	* config/sparc/linux.h (DITF_CONVERSION_LIBFUNCS): Redefine to 1.
762	* config/sparc/linux64.h (DITF_CONVERSION_LIBFUNCS): Redefine to 1.
763	* config.gcc (sparc-*-linux*): Revert 2004-03-25 change.
764	* config/sparc/t-linux64 (TARGET_LIBGCC2_CFLAGS): Likewise.
765	* config/sparc/t-linux: Removed.
766
7672004-04-28  H.J. Lu  <hongjiu.lu@intel.com>
768
769	PR target/15084
770	* config/i386/i386.md (*movsi_insv_1_rex64): Changed to DImode
771	and renamed to movdi_insv_1_rex64.
772	(insv): Support SImode for 32bit and DImode for 64bit.
773
7742004-04-24  Richard Henderson  <rth@redhat.com>
775
776	PR bootstrap/14671
777	* alias.c (alias_invariant, alias_invariant_size): Mark GTY.
778	(reg_known_value, reg_known_value_size): Likewise; make static.
779	(reg_known_equiv_p): Make static.
780	(clear_reg_alias_info): Update for new indexing.
781	(get_reg_known_value, set_reg_known_value): New.
782	(get_reg_known_equiv_p, set_reg_known_equiv_p): New.
783	(canon_rtx): Use them.
784	(init_alias_analysis): Likewise.  Allocate reg_known_value with gc.
785	Don't play queer offsetting games with reg_known_value and
786	reg_known_equiv_p.
787	(end_alias_analysis): Don't free reg_known_value.
788	* rtl.h (get_reg_known_value, get_reg_known_equiv_p): Declare.
789	* sched-deps.c (reg_known_equiv_p, reg_known_value): Remove.
790	(deps_may_trap_p, sched_analyze_1, sched_analyze_2): Use the new
791	functions instead.
792
7932004-04-21  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
794
795	* pa64-hpux.h (LIB_SPEC): Fix library specification used with GNU ld.
796
797	* pa64-regs.h (DBX_REGISTER_NUMBER): Simplify and correct mapping of
798	SAR register.  Fix comment.
799	(ADDITIONAL_REGISTER_NAMES): Correct register number of SAR register
800	(%cr11).
801
8022004-04-14  Zack Weinberg  <zack@codesourcery.com>
803
804	PR 14936
805	Backport from mainline:
806	2004-03-12  Matt Austern  <austern@apple.com>
807
808	* varasm.c (make_decl_one_only): Don't use DECL_COMMON if
809	we're compiling for a SUPPORTS_ONE_ONLY target.
810
8112004-04-13  H.J. Lu  <hongjiu.lu@intel.com>
812
813	PR debug/14919
814
815	From gcc-3_2-rhl8-branch:
816	2003-02-04  Jakub Jelinek  <jakub@redhat.com>
817
818	* dwarf2out.c (dwarf2out_finish): Add AT_comp_dir attribute
819	even if input file name is absolute, but one of the includes
820	is relative.
821
8222004-04-06  Devang Patel  <dpatel@apple.com>
823
824	PR 14467
825	* config/darwin.h (LINK_COMMAND_SPEC): Use c++filt instead of c++filt3.
826
8272004-03-25  Ulrich Weigand  <uweigand@de.ibm.com>
828
829	* expr.c (store_constructor): Use gen_int_mode to correctly
830	sign-extend CONST_INT value.
831
8322004-04-01  Alan Modra  <amodra@bigpond.net.au>
833	    Jakub Jelinek  <jakub@redhat.com>
834
835	* gcc.c (init_gcc_specs): If HAVE_LD_AS_NEEDED, link with
836	-lgcc --as-needed -lgcc_s --no-as-needed by default.
837	* configure.in (HAVE_LD_AS_NEEDED): Check for ld --as-needed.
838	* configure: Rebuilt.
839	* config.in: Rebuilt.
840	* Makefile.in (stage1-start): Copy also libgcc_s*$(SHLIB_EXT).
841	(stage2-start, stage3-start, stage4-start): Likewise.
842	(stageprofile-start, stagefeedback-start): Likewise.
843
8442004-04-01  Jakub Jelinek  <jakub@redhat.com>
845
846	PR c++/14755
847	* fold-const.c (fold) <EQ_EXPR>: Properly compute newconst in
848	"bitfld++ == const" to "++bitfld == const + incr" transformations.
849
8502004-04-01  Jakub Jelinek  <jakub@redhat.com>
851
852	PR c/14069
853	* c-decl.c (finish_struct): Change type of incorrect flexible array
854	field into error_mark_node.
855
856	Backport from mainline:
857	2003-04-07  J"orn Rennecke  <joern.rennecke@superh.com>
858
859	* c-typeck.c (output_init_element): Check for type == error_mark_node.
860
8612004-04-01  Alan Modra  <amodra@bigpond.net.au>
862
863	* dwarf2out.c (DEBUG_STR_SECTION_FLAGS): Heed flag_merge_constants.
864
8652004-03-30  Matthias Klose  <doko@debian.org>
866
867	Backport:
868
869	2004-01-14  Richard Earnshaw  <rearnsha@arm.com>
870
871	PR bootstrap/12527
872	* config.gcc (arm*-*-linux*): Don't include unknown-elf.h in tm_file.
873	Move linux-gas.h and linux-elf.h before aout.h.
874	* arm/arm.h (INITIALIZE_TRAMPOLINE): Only define if not already.
875	* arm/linux-elf.h (SUBTARGET_CPU_DEFAULT): Define.
876
877	2003-05-15  Philip Blundell  <philb@gnu.org>
878
879	* config/arm/arm.c (arm_is_xscale): Rename to arm_arch_xscale.
880	All uses updated.
881	(arm_tune_xscale): New variable.
882	(arm_override_options): Set it.
883	(arm_adjust_cost): Use it in place of arm_arch_xscale.
884	(arm_gen_load_multiple): Likewise.
885	(arm_gen_store_multiple): Likewise.
886	* config/arm/arm.md (is_xscale): Likewise.
887	* config/arm/arm.h (arm_tune_xscale): Declare.
888
889	2003-04-28  Nick Clifton  <nickc@redhat.com>
890
891	* config/arm/elf.h (ASM_OUTPUT_ALIGNED_COMMON): Remove definition.
892
8932004-03-29  Matthias Klose  <doko@debian.org>
894
895	2003-09-17  Daniel Jacobowitz  <drow@mvista.com>
896
897	* config/rs6000/sysv4.h (LIB_LINUX_SPEC): Give -lpthread before -lc.
898
8992004-03-29  Matthias Klose  <doko@debian.org>
900
901	Backport:
902	2004-01-15  Andreas Schwab  <schwab@suse.de>
903
904	PR bootstrap/13562
905	* config/m68k/m68k.c (output_move_const_into_data_reg): Clear cc
906	status for NOTB/NOTW/NEGW methods.
907
9082004-03-29  Aldy Hernandez  <aldyh@redhat.com>
909
910	PR 14219
911	* c-typeck.c (build_binary_op): Do not allow comparisons of
912	vectors.
913
9142004-03-27  Matthias Klose  <doko@debian.org>
915
916	PR target/11716
917	Michael Eager <eager@mvista.com>
918
919	* config/mips/mips.md: Limit the maximum length of a short branch to
920	64K instead of 128K.
921
9222004-03-26  Richard Henderson  <rth@redhat.com>
923
924	PR 11527
925	* c-typeck.c (pop_init_level): Emit pending init elements earlier
926	rather than later.
927
9282004-03-26  Jan Hubicka  <jh@suse.cz>
929	    H.J. Lu  <hongjiu.lu@intel.com>
930
931	PR Target/14723
932	* config.gcc: Add support --with-cpu=nocona.
933
934	* config/i386/i386.c (override_options): Add support for
935	Prescott and Nocona.
936
937	* doc/invoke.texi: Extend documentation of -mcpu/-march for new
938	CPUs.
939
9402004-03-25  Jakub Jelinek  <jakub@redhat.com>
941
942	* config.gcc (sparc-*-linux*): Add sparc/t-linux to tmake_file.
943	* config/sparc/t-linux64 (TARGET_LIBGCC2_CFLAGS): Set.
944	* config/sparc/t-linux: New file.
945
9462004-03-24  Kelley Cook  <kcook@gcc.gnu.org>
947
948	Backport:
949	2004-03-01  Mark Mitchell  <mark@codesourcery.com>
950
951	PR bootstrap/14356
952	* gcc.c (process_command): Remove const-qualification from argv.
953	(main): Likewise.
954
9552004-03-24  Alexandre Oliva  <aoliva@redhat.com>
956
957	PR preprocessor/14438
958	* cpplib.c (do_pragma): Remove line_change call after pragma
959	handler.
960
9612004-03-22  Andrew Pinski  <pinskia@physics.uc.edu>
962
963	BackPort:
964		2004-01-09  Andrew Pinski <pinskia@physics.uc.edu>
965
966		PR debug/11231
967		* dbxout.c (dbxout_type_fields): Return if any item is error_mark_node or the
968		type is error_mark_node.
969
9702004-03-22  Eric Botcazou  <ebotcazou@libertysurf.fr>
971
972	PR middle-end/14470
973	* expr.c (mark_queue): New function.
974	(emit_insns_enqueued_after_mark): New function replacing
975	emit_queue.  Clear the body of emitted queued insns.
976	(emit_queue): Call emit_insns_enqueued_after_mark.
977	(store_expr): Mark the increment queue on entry.  Emit
978	only the incrementations queued when expanding the source.
979
9802004-03-17  Ralf Corsepius <corsepiu@faw.uni-ulm.de>
981
982	PR target/14260
983	* config/rtems.h: Add STD_LIB_SPEC and LIB_SPEC.
984
9852004-03-21  Roger Sayle  <roger@eyesopen.com>
986
987	* fold-const.c (fold) <EQ_EXPR>: Rewrite optimization to transform
988	"foo++ == const" into "++foo == const+incr".
989
9902004-03-21  Roger Sayle  <roger@eyesopen.com>
991
992	PR target/13889
993	* cse.c (fold_rtx): Avoid substituting constants into unary
994	conversion operations.
995
9962004-03-17  Ian Lance Taylor  <ian@wasabisystems.com>
997
998	Backport:
999	2003-11-08  Joseph S. Myers  <jsm@polyomino.org.uk>
1000
1001	* c-typeck.c (pedantic_lvalue_warning): Deprecate compound
1002	expressions as lvalues.
1003	* doc/extend.texi: Document that all extended lvalues are now
1004	deprecated.
1005
1006	2003-11-05  Joseph S. Myers  <jsm@polyomino.org.uk>
1007
1008	* c-typeck.c (pedantic_lvalue_warning): Deprecate use of
1009	conditional expressions as lvalues.
1010
1011	2003-10-22  Joseph S. Myers  <jsm@polyomino.org.uk>
1012
1013	* c-typeck.c (pedantic_lvalue_warning): Unconditionally warn of
1014	deprecation of casts as lvalues.
1015	* fixinc/inclhack.def (obstack_lvalue_cast): New fix.
1016	* fixinc/fixincl.x: Regenerate.
1017
10182004-03-15  Richard Henderson  <rth@redhat.com>
1019
1020	PR middle-end/14535
1021	* except.c (collect_one_action_chain): Record action for cleanup
1022	outer of exception spec.
1023
10242004-03-13  Dara Hazeghi  <dhazeghi@yahoo.com>
1025
1026	* doc/install.texi: Note status of -fnew-ra.
1027
10282004-03-13  Jakub Jelinek  <jakub@redhat.com>
1029
1030	PR target/14533
1031	* config/s390/s390.c (legitimize_pic_address): Don't abort on UNSPEC
1032	other than 100.
1033
10342004-03-13  Alan Modra  <amodra@bigpond.net.au>
1035
1036	PR debug/11983
1037	* dwarf2out.c (enum dw_val_class): Rename dw_val_class_float to
1038	dw_val_class_vec.  Replace use throughout file.
1039	(dw_float_const): Delete.
1040	(dw_vec_const): New.
1041	(dw_val_struct_union): Rename val_float to val_vec.  Replace use
1042	throughout file.
1043	(add_AT_vec): Rename from add_AT_float.  Add elt_size param.
1044	(same_dw_val_p): Adjust vec comparison.  Use memcmp.
1045	(size_of_die): Adjust dw_val_class_vec sizing.
1046	(output_die): Output dw_val_class_vec.
1047	(insert_int, extract_int, insert_float): New functions.
1048	(add_const_value_attribute): Use insert_float for CONST_DOUBLE.
1049	Handle CONST_VECTOR.
1050	(add_location_or_const_value_attribute): Handle CONST_VECTOR.
1051
10522004-03-12  Gabriel Dos Reis  <gdr@integrable-solutions.net>
1053
1054	Backport:
1055	2004-03-13  Eric Botcazou  <ebotcazou@libertysurf.fr>
1056	PR middle-end/14470
1057	* expr.c (store_expr): Call emit_queue before generating the move
1058	from the temporary to the original target.  Protect the temporary
1059	from emit_queue.
1060
10612004-03-10  James E Wilson  <wilson@specifixinc.com>
1062
1063	PR target/13877
1064	* unroll.c (unroll_loop): If precondition loop, clear the initial_value
1065	field in loop_info.
1066
10672004-03-12  Gabriel Dos Reis  <gdr@integrable-solutions.net>
1068
1069	Backport:
1070	2004-03-05  Nathan Sidwell  <nathan@codesourcery.com>
1071	PR driver/13577
1072	* gcc.c (cc1_options): Robustify -auxbase-strip from multiple -o
1073	options.
1074
10752004-03-12  Gabriel Dos Reis  <gdr@integrable-solutions.net>
1076
1077	Endorse:
1078	2004-01-10  Eric Botcazou  <ebotcazou@libertysurf.fr>
1079	PR optimization/13472
1080	* reload1.c (reload): Don't record unchanging memory locations.
1081
10822004-03-12  Gabriel Dos Reis  <gdr@integrable-solutions.net>
1083
1084	Backport
1085	2004-02-27  Mark Mitchell  <mark@codesourcery.com>
1086	PR middle-end/13448
1087	* c-tree.h (readonly_warning): Rename to ...
1088	(readonly_error): ... this.
1089	* c-typeck.c (build_unary_op): Adjust accordingly.
1090	(readonly_warning): Rename to ...
1091	(readonly_error): ... this and issue errors, not warnings.
1092	(build_modify_expr): Call readonly_error, not readonly_warning.
1093	(c_expand_asm_operands): Likewise.
1094	* tree-inline.c (optimize_inline_calls): Do not inline
1095	functions after errors have occurred.
1096
10972004-03-12  Philip Blundell  <philb@gnu.org>
1098
1099	PR target/10730
1100	Backport from trunk:
1101	2003-05-15  Philip Blundell  <philb@gnu.org>
1102	* config/arm/arm.c (adjacent_mem_locations): Reject offsets
1103	involving invalid constants.
1104
11052004-03-12  Philip Blundell  <philb@gnu.org>
1106
1107	PR target/14558
1108	Backport from trunk:
1109	2004-02-25  Richard Earnshaw  <rearnsha@arm.com>
1110	* arm.h (ARM_GO_IF_LEGITIMATE_INDEX): For QImode the range of
1111	an offset is -4095...+4095 inclusive.
1112
11132004-03-11  Richard Henderson  <rth@redhat.com>
1114
1115	PR target/14539
1116	* config/alpha/alpha.h (STACK_BOUNDARY): Set to 128.
1117
11182004-03-10  Roger Sayle  <roger@eyesopen.com>
1119
1120	PR middle-end/14289
1121	* c-typeck.c (c_mark_addressable): A register variable should
1122	be considered global if its not automatic, i.e. TREE_PUBLIC,
1123	TREE_STATIC or DECL_EXTERNAL.
1124	* function.c (put_var_into_stack): Call abort when placing a
1125	hard register into the stack, if x_parm_reg_stack_loc is NULL.
1126
11272004-03-10  Andrew Haley  <aph@redhat.com>
1128
1129	PR optimization/14381
1130	* function.c (expand_function_end): Emit a blockage insn before
1131	the epilogue when -fnon-call-exceptions is used.
1132
11332004-03-10  Joel Sherrill  <joel@oarcorp.com>
1134
1135	PR target/14480
1136	* config.gcc (powerpc*-*-rtems*): Use rs6000/t-rtems.
1137
11382004-03-07  Aldy Hernandez  <aldyh@redhat.com>
1139
1140	* config/rs6000/rs6000.md (ashrdi3): Do not call ashrdi3_no_power
1141	for little endian.
1142	("ashrdi3_no_power"): Disable for little endian.
1143	(ashrdi3): Same.
1144
11452004-03-07  Richard Henderson  <rth@redhat.com>
1146
1147	* config/alpha/alpha.h (MASK_LONG_DOUBLE_128): New.
1148	(TARGET_LONG_DOUBLE_128): New.
1149	(TARGET_SWITCHES): Add long-double-{128,64}.
1150	(TARGET_HAS_XFLOATING_LIBS): Default to TARGET_LONG_DOUBLE_128.
1151	(LONG_DOUBLE_TYPE_SIZE): Honor TARGET_LONG_DOUBLE_128.
1152	(LIBGCC2_LONG_DOUBLE_TYPE_SIZE): New.
1153	(WIDEST_HARDWARE_FP_SIZE): New.
1154	(TARGET_CPU_CPP_BUILTINS): Define __LONG_DOUBLE_128__.
1155	* config/alpha/alpha.c (override_options): Clear MASK_LONG_DOUBLE_128
1156	if TARGET_VAX_FLOAT.
1157	* config/alpha/osf5.h (LONG_DOUBLE_TYPE_SIZE): Remove.
1158	(TARGET_DEFAULT): Set MASK_LONG_DOUBLE_128.
1159
11602004-03-08  Hans-Peter Nilsson  <hp@axis.com>
1161
1162	PR target/14471
1163	* doc/invoke.texi (CRIS Options): Document -mmul-bug-workaround
1164	and -mno-mul-bug-workaround.
1165	* config/cris/cris.md ("smulsi3_highpart", "umulsi3_highpart")
1166	("mulsidi3", "umulsidi3"): Prefix output template with "%!".
1167	("umulhisi3", "umulqihi3", "mulsi3", "mulqihi3", "mulhisi3"):
1168	Ditto.  Make attribute "slottable" dependent on TARGET_MUL_BUG.
1169	* config/cris/mulsi3.asm (__Mul) [__CRIS_arch_version >= 10]: Make
1170	sure mulu.d is not last on cache-line.
1171	* config/cris/cris.h (ASM_SPEC): Translate -mno-mul-bug-workaround
1172	into -no-mul-bug-abort depending on HAVE_AS_MUL_BUG_ABORT_OPTION.
1173	(TARGET_MASK_MUL_BUG, TARGET_MUL_BUG): New macros.
1174	(TARGET_SWITCHES): New options -mmul-bug-workaround and
1175	-mno-mul-bug-workaround.
1176	(TARGET_DEFAULT): Include TARGET_MASK_MUL_BUG.
1177	(PRINT_OPERAND_PUNCT_VALID_P): Include '!'.
1178	* config/cris/cris.c (cris_operand_extend_operator): Clarify
1179	relation to MULT in head comment.
1180	(cris_op_str): Abort for MULT.
1181	(cris_print_operand) <case '!'>: New case.
1182
11832004-03-06  Richard Henderson  <rth@redhat.com>
1184
1185	* config/alpha/alpha.c (alpha_in_small_data_p): False for functions.
1186
11872004-03-05  Ulrich Weigand  <uweigand@de.ibm.com>
1188
1189	* config/s390/s390.md ("load_multiple", "*load_multiple_di",
1190	"*load_multiple_si"): Allow only if reload_completed.
1191	("store_multiple", "*store_multiple_di", "*store_multiple_si"):
1192	Likewise.
1193
11942004-03-05  Ulrich Weigand  <uweigand@de.ibm.com>
1195
1196	* config/s390/s390.c (s390_expand_movstr): Clobber double-word
1197	register before initializing high and low parts separately.
1198	(s390_expand_clrstr): Likewise.
1199	(s390_expand_cmpstr): Likewise.
1200
12012004-03-05  Ulrich Weigand  <uweigand@de.ibm.com>
1202
1203	PR optimization/12147
1204	* reload1.c (reload_reg_free_p): RELOAD_OTHER conflicts with
1205	RELOAD_FOR_OPADDR_ADDR.
1206	(reload_reg_reaches_end_p): A RELOAD_FOR_OTHER_ADDRESS register
1207	might be reused as RELOAD_FOR_OPADDR_ADDR register.
1208
12092004-03-05  Ian Lance Taylor  <ian@wasabisystems.com>
1210
1211	PR target/1532
1212	Backport from mainline:
1213
1214	2004-02-24  Kazu Hirata  <kazu@cs.umass.edu>
1215
1216	* cse.c (cse_change_cc_mode_insns): Stop at any instruction
1217	which modifies NEWREG.
1218	(cse_condition_code_reg): Update the mode of CC_REG in
1219	CC_SRC_INSN on our own.
1220
1221	2004-02-11  Richard Henderson  <rth@redhat.com>
1222
1223	* flow.c (insn_dead_p): A clobber of a dead hard register is a
1224	dead insn after reload.
1225
1226	2004-01-24  Ian Lance Taylor  <ian@wasabisystems.com>
1227
1228	* cse.c (cse_cc_succs): Change the mode of the source expression
1229	as soon as decide we need a new mode.  Don't permit changing modes
1230	if we found a match in a successor block.
1231	(cse_condition_code_reg): Save original mode of source expression
1232	so that we know whether we have to change the mode in other
1233	insns.
1234
1235	2004-01-24  Andreas Tobler  <a.tobler@schweiz.ch>
1236
1237	* cse.c: (cse_cc_succs) Fix comparison warning.
1238
1239	2004-01-23  Ian Lance Taylor  <ian@wasabisystems.com>
1240
1241	* cse.c: Include "target.h".
1242	(cse_change_cc_mode): New static function.
1243	(cse_change_cc_mode_insns, cse_cc_succs): Likewise.
1244	(cse_condition_code_reg): New function.
1245	(default_cc_modes_compatible): New function.
1246	* rtl.h (cse_condition_code_reg): Declare.
1247	(default_cc_modes_compatible): Declare.
1248	* toplev.c (rest_of_compilation): Call cse_condition_code_reg.
1249	* target.h (struct gcc_target): Add fixed_condition_code_regs and
1250	cc_modes_compatible.
1251	* target-def.h (TARGET_FIXED_CONDITION_CODE_REGS): Define.
1252	(TARGET_CC_MODES_COMPATIBLE): Define.
1253	(TARGET_INITIALIZER): Add new initializers.
1254	* targhooks.c (default_cc_modes_compatible): Declare.
1255	* hooks.c (hook_bool_intp_intp_false): New function.
1256	* hooks.h (hook_bool_intp_intp_false): Declare.
1257	* config/i386/i386.c (TARGET_FIXED_CONDITION_CODE_REGS): Define.
1258	(TARGET_CC_MODES_COMPATIBLE): Define.
1259	(ix86_fixed_condition_code_regs): New static function.
1260	(ix86_cc_modes_compatible): Likewise.
1261	* doc/gccint.texi: Add copyright 2004.
1262	* doc/tm.texi (Condition Code): Document new hooks.
1263	* Makefile.in (cse.o): Depend upon $(TARGET_H).
1264
1265	PR inline-asm/6162
1266	* reload.c (find_reloads): Only support one pair of commutative
1267	operands.
1268
12692004-03-02  Richard Henderson  <rth@redhat.com>
1270
1271	PR middle-end/11767
1272	* optabs.c (prepare_cmp_insn): Force trapping memories to registers
1273	before the compare, if flag_non_call_exceptions.
1274
12752004-03-02  Richard Henderson  <rth@redhat.com>
1276
1277	PR middle-end/14327
1278	* stmt.c (expand_computed_goto): Do do_pending_stack_adjust before
1279	emitting the label, not after.
1280
12812004-03-02  Danny Smith  <dannysmith@users.sourceforge.net>
1282
1283	* cppinit.c (init_standard_includes): Check that sysroot
1284	string is not empty.
1285
12862004-03-01  Gabriel Dos Reis  <gdr@integrable-solutions.net>
1287
1288	Backport from 3.4.0:
1289	2004-02-29  Mark Mitchell  <mark@codesourcery.com>
1290	PR debug/14328
1291	* dwarf2out.c (gen_enumeration_type_die): Output all enumeration
1292	constants as signed values.
1293
1294	2004-01-16  J"orn Rennecke <joern.rennecke@superh.com>
1295	PR optimization/11864
1296	* reload1.c (reload_cse_simplify_operands): Don't remove
1297	implicit extension from LOAD_EXTEND_OP.
1298
12992004-02-29  Hans-Peter Nilsson  <hp@axis.com>
1300
1301	PR target/14346
1302	* config/cris/cris.c (cris_asm_output_mi_thunk): For PIC, prepend
1303	TAB to jumping "add.d" insn.  Avoid PLT indirection by equating a
1304	local symbol and jumping through it.
1305
13062004-02-29  Gabriel Dos Reis  <gdr@integrable-solutions.net>
1307
1308	Backport from mainline:
1309	2004-01-27  Eric Botcazou  <ebotcazou@libertysurf.fr>
1310	PR target/10904
1311	PR target/13058
1312	* config/sparc/sparc.h (CANNOT_CHANGE_MODE_CLASS): New.
1313	Forbid mode changes from SImode for lower FP regs if ARCH64.
1314
13152004-02-28  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
1316
1317	* pa.h (TRAMPOLINE_TEMPLATE, TRAMPOLINE_SIZE, TRAMPOLINE_CODE_SIZE,
1318	MIN_CACHELINE_SIZE, INITIALIZE_TRAMPOLINE): Backport fixes from 3.5.
1319	* pa.md (anddi3, dcacheflush, icacheflush): Likewise.
1320
1321	* pa64-hpux.h (LIB_SPEC): Fix linking under HP-UX 11.00 with -p and -pg.
1322
13232004-02-27  Ian Lance Taylor  <ian@wasabisystems.com>
1324
1325	PR optimization/7871
1326	* flow.c (mark_set_1): Don't add LOG_LINKS for global registers
1327	from or to call insns.
1328
13292004-02-27  Eric Botcazou  <ebotcazou@libertysurf.fr>
1330
1331	PR optimization/7871
1332	* flow.c (propagate_one_insn): Interpret calls as setting global
1333	registers, not merely clobbering them.
1334
13352004-02-26  Richard Earnshaw  <rearnsha@arm.com>
1336	Daniel Jacobowitz  <drow@mvista.com>
1337
1338	PR target/14302
1339	* arm.h (ARM_GO_IF_LEGITIMATE_ADDRESS): Don't check the mode
1340	size for minipool references.
1341
13422004-02-25  Richard Earnshaw  <rearnsha@arm.com>
1343
1344	PR target/14166
1345	* arm.h (THUMB_GO_IF_LEGITIMATE_ADDRESS): Only allow constant pool
1346	references from SImode.
1347	* arm.md (thumb_movhi_insn): Don't allow minipool references.
1348
13492004-02-24  Bob Wilson  <bob.wilson@acm.org>
1350
1351	Backport from mainline (changes to xtensa_expand_prologue go into
1352	xtensa_reorg instead; remove irrelevant portions of the patch)
1353
1354	2004-02-09  Bob Wilson  <bob.wilson@acm.org>:
1355
1356	* config/xtensa/xtensa-protos.h (xtensa_copy_incoming_a7): Update.
1357	(init_cumulative_args): Likewise.
1358	(a7_overlap_mentioned_p): Delete prototype.
1359	* config/xtensa/xtensa.c (struct machine_function): Replace
1360	incoming_a7_copied field with need_a7_copy and vararg_a7 flags.
1361	Add set_frame_ptr_insn field.
1362	(xtensa_emit_move_sequence): Update call to xtensa_copy_incoming_a7.
1363	(xtensa_copy_incoming_a7): Rewrite to check need_a7_copy flag and check
1364	if the operand is an argument in a7.  If so, copy a7 to a new pseudo
1365	at the function entry and replace the operand with the pseudo.
1366	(init_cumulative_args): Remove unused arguments.  Add new "incoming"
1367	argument and record this flag in CUMULATIVE_ARGS.
1368	(function_arg): Remove result_mode and special-case code to handle
1369	arguments in a7.  Instead, set need_a7_copy flag when there is an
1370	incoming argument in a7.
1371	(xtensa_expand_prologue): Remove code to search for set_frame_ptr insn
1372	and use the value recorded in cfun->machine->set_frame_ptr_insn.
1373	(xtensa_builtin_saveregs): Check for negative gp_left value.  Set
1374	need_a7_copy and vararg_a7 flags.  Use move_block_from_reg instead of
1375	special-case code.
1376	(a7_overlap_mentioned_p): Delete.
1377	* config/xtensa/xtensa.h (CUMULATIVE_ARGS): Add "incoming" flag.
1378	(INIT_CUMULATIVE_ARGS, INIT_CUMULATIVE_INCOMING_ARGS): Remove useless
1379	arguments to init_cumulative_args and pass "incoming" flag instead.
1380	(BLOCK_REG_PADDING): Delete.
1381	* config/xtensa/xtensa.md (movdi, movsf, movdf): Remove unnecessary
1382	checks for reload_in_progress and reload_completed.  Update calls to
1383	xtensa_copy_incoming_a7.
1384	(ashlsi3): Rename existing insn to ashlsi3_internal.  Add expander
1385	to call xtensa_copy_incoming_a7.
1386
13872004-02-22  Jakub Jelinek  <jakub@redhat.com>
1388
1389	* config/i386/i386.c (override_options): Don't imply 3DNow! for -m64
1390	by default.
1391
13922004-02-22  James E Wilson  <wilson@specifixinc.com>
1393
1394	PR target/13918
1395	* sched-ebb.c (ebb_sched_info): Disable use of cselib.
1396
13972004-02-22  Hans-Peter Nilsson  <hp@axis.com>
1398
1399	PR target/14209
1400	* config/cris/cris.md ("*andsi_movu", "*andhi_movu"): Tweak
1401	constraints to not match postincrement.  Adjust the predicate to
1402	exclude a volatile memory reference.
1403	("*andsi_clear"): Tweak constraints to not match postincrement.
1404	Adjust the predicate to exclude a volatile memory reference.
1405	("*andhi_clear"): Ditto.  Rename from "*andhi_clear_signed".
1406	("*andhi_clear_unsigned"): Remove, non-matching pattern.
1407
14082004-02-14  Release Manager
1409
1410	* GCC 3.3.3 Released.
1411
14122004-02-12  Eric Botcazou  <ebotcazou@libertysurf.fr>
1413
1414	PR target/14113
1415	Backport from mainline:
1416
1417	2004-02-03  Eric Botcazou  <ebotcazou@libertysurf.fr>
1418
1419	* config/sparc/sparc.md (call followed by jump define_peephole's):
1420	Delete.
1421
14222004-02-06  H.J. Lu  <hongjiu.lu@intel.com>
1423
1424	* doc/invoke.texi: Mention SSE2 and SSE3.
1425
1426	* config/i386/i386.h: Deprecate -mpni/-mno-pni.
1427
14282004-02-06  Kelley Cook  <kcook@gcc.gnu.org>
1429
1430	* config/i386/i386.c: Rename pni to sse3.
1431	* config/i386/i386.h: Likewise.
1432	* config/i386/i386.md: Likewise.
1433	* config/i386/pmmintrin.h: Likewise.
1434	* doc/extend.texi: Likewise.
1435	* doc/invoke.texi: Likewise.
1436
14372004-02-03  Wolfgang Bangerth  <bangerth@dealii.org>
1438
1439	PR other/14003
1440	* doc/invoke.texi (x86 options): Fix spelling/wording.
1441
14422004-02-01  Geoffrey Keating  <geoffk@apple.com>
1443
1444	PR bootstrap/13960
1445	* config/rs6000/rs6000.h (LEGITIMATE_LO_SUM_ADDRESS_P): Accept
1446	lo_sum addresses on Darwin.
1447
14482004-01-30  Eric Botcazou  <ebotcazou@libertysurf.fr>
1449
1450	* config/sparc/sparc.c: Update copyright.
1451	* config/sparc/sparc.h: Likewise.
1452	* config/sparc/sparc.md: Likewise.
1453
14542004-01-29  Roger Sayle  <roger@eyesopen.com>
1455
1456	PR java/13824
1457	* tree.c (unsafe_for_reeval): Handle EXIT_BLOCK_EXPR nodes specially
1458	as their EXIT_BLOCK_LABELED_BLOCK operands can lead to unbounded
1459	recursion.
1460
14612004-01-29  H.J. Lu  <hongjiu.lu@intel.com>
1462
1463	* doc/invoke.texi: Remove the pni option from -mfpmath=.
1464
14652004-01-29  Gabriel Dos Reis  <gdr@integrable-solutions.net>
1466
1467	Backport from mainline
1468
1469	2004-01-20  Zdenek Dvorak  <rakdver@atrey.karlin.mff.cuni.cz>
1470
1471	PR optimization/12440
1472	* loop.c: Include ggc.h.
1473	(loop_optimize): Run garbage collector between optimization of loops.
1474	* Makefile.in (loop.o): Add GGC_H dependency.
1475
14762004-01-24  Matthias Klose  <doko@debian.org>
1477
1478	* objc/objc-act.c (is_public): Fix typo in message.
1479
14802004-01-23  Richard Henderson  <rth@redhat.com>
1481
1482	PR opt/12941
1483	* combine.c (SHIFT_COUNT_TRUNCATED): Provide default value.
1484	(simplify_comparison): Don't simplify (eq (zero_extract c 1 r) 0)
1485	if SHIFT_COUNT_TRUNCATED is set.
1486
14872004-01-23  Ian Lance Taylor  <ian@wasabisystems.com>
1488
1489	* doc/invoke.texi (Optimize Options): Note that --param arguments
1490	are subject to change without notice.
1491
14922004-01-23  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
1493
1494	* reload.c (can_reload_into): Add prototype and K&R style function
1495	declaration.
1496
14972004-01-21  Andreas Jaeger  <aj@suse.de>
1498	    Michael Matz  <matz@suse.de>
1499
1500	* doc/extend.texi (Extended Asm): Clarify memory clobber.
1501
15022004-01-21  Ralf Corsepius  <corsepiu@faw.uni-ulm.de>
1503
1504	PR target/13073
1505	* config/h8300/t-rtems (h8300-*-rtems*): New.
1506	* config.gcc: Use config/h8300/t-rtems.
1507
15082004-01-20  Gabriel Dos Reis  <gdr@integrable-solutions.net>
1509
1510	Backport from mainline
1511
1512	2004-01-10  Jan Hubicka  <jh@suse.cz>
1513	PR opt/12826
1514	* loop.c (insert_loop_mem): Prefer VOLATILE memory references to be
1515	stored.
1516
15172004-01-16  Jan Hubicka  <jh@suse.cz>
1518
1519	PR opt/13608
1520	* i386.c (ix86_compute_frame_layout): Fix for alloca on leaf function.
1521
15222004-01-16  Segher Boessenkool  <boessen@de.ibm.com>
1523
1524	PR target/11793
1525	* config/rs6000/rs6000.h (LEGITIMATE_CONSTANT_P): Handle
1526	vectors.
1527
15282004-01-16  Jan Hubicka  <jh@suse.cz>
1529
1530	PR opt/11350
1531	* cfgcleanup.c (try_optimize_cfg): Suppress tablejump removal
1532	after reload.
1533	* cfgrtl.c (try_redirect_by_replacing_branch): Likewise.
1534
15352004-01-15  J"orn Rennecke <joern.rennecke@superh.com>
1536
1537	PR optimization/10392
1538	* reload.c (can_reload_into): New function.
1539	(push_reload): Use it.
1540
15412004-01-14  J"orn Rennecke <joern.rennecke@superh.com>
1542
1543	PR target/9365
1544	* sh.c (gen_block_redirect): Add special handling of RETURN.
1545	(gen_far_branch) Don't call gen_stuff_delay_slot if there is no
1546	far branch target (i.e. it's a return).
1547
15482004-01-14  Hartmut Penner  <hpenner@de.ibm.com>
1549
1550	* gcc/config/rs6000/rs6000.c (rs6000_stack_info)
1551	Calculate always vrsave_mask if TARGET_ALTIVEC.
1552	(rs6000_emit_prologue): Emit code for vrsave
1553	only if TARGET_ALTIVEC_VRSAVE.
1554	(rs6000_emit_epilogue): Likewise.
1555
15562003-01-14  Nicola Pero  <n.pero@mi.flashnet.it>
1557
1558	PR objc/7993
1559	* objc-act.c (is_private): Do not emit the 'instance variable %s
1560	is declared private' error.
1561	(is_public): Emit the error after calling is_private.
1562	(lookup_objc_ivar): If the instance variable is private, return 0
1563	- the instance variable is invisible here.
1564
15652004-01-12  Marc Espie <espie@openbsd.org>
1566
1567	* system.h: handle YYBYACC like YYBISON.
1568
15692004-01-12  Matthias Klose  <doko@debian.org>
1570
1571	Backport from mainline
1572
1573	2003-12-08 Stuart Hastings <stuart@apple.com>
1574	* config/i386/i386.md: Typo in split of fp-valued if_then_else.
1575
15762004-01-12  Roger Sayle  <roger@eyesopen.com>
1577
1578	PR middle-end/11397
1579	* varasm.c (assemble_alias): Remove weak aliases from weak_decls.
1580
15812004-01-12  J"orn Rennecke <joern.rennecke@superh.com>
1582
1583	PR target/13585
1584	* sh-protos.h (check_use_sfunc_addr): Declare.
1585	* sh.c (extract_sfunc_addr, check_use_sfunc_addr): New functions.
1586	* sh.md (use_sfunc_addr): Use check_use_sfunc_addr in insn predicate.
1587
15882004-01-12  Matthias Klose  <doko@debian.org>
1589
1590	Backport from mainline
1591
1592	2004-01-11  Richard Henderson  <rth@redhat.com>
1593	PR opt/12441
1594	Revert: Sat Mar 30 14:08:55 CET 2002  Jan Hubicka  <jh@suse.cz>
1595	* i386.c (aligned_operand): Be prepared for SUBREGed registers.
1596	(ix86_decompose_address): Use REG_P instead of GET_CODE (...) == REG.
1597	(ix86_address_cost): Be prepared for SUBREGed registers.
1598	(legitimate_address_p): Accept SUBREGed registers.
1599
16002004-01-11  Richard Henderson  <rth@redhat.com>
1601
1602	* config/alpha/alpha.c (alpha_encode_section_info): Use 'I'
1603	for TLS_MODEL_INITIAL_EXEC.
1604	(tls_symbolic_operand_1): Update to match.
1605	(tls_symbolic_operand_type): Likewise.
1606
16072004-01-11  Jakub Jelinek  <jakub@redhat.com>
1608
1609	PR middle-end/13392
1610	* builtins.c (expand_builtin_expect_jump): Handle conditional jumps
1611	to drop through label.  Don't fall back to SCC even when conditional
1612	jump has not been found.
1613
16142004-01-09  Jeff Bailey  <jbailey@nisa.net>
1615
1616	PR target/12561
1617	* config/t-gnu: Rename SYSTEM_HEADER_DIR to NATIVE_SYSTEM_HEADER_DIR.
1618
16192004-01-09  Richard Henderson  <rth@redhat.com>
1620
1621	* recog.c (constrain_operands): Validate mem operands.
1622
16232004-01-02  Nathanael Nerode  <neroden@gcc.gnu.org>
1624
1625	PR target/13069
1626	Backport the following from mainline:
1627
1628	2003-03-08  Neil Booth  <neil@daikokuya.co.uk>
1629	* config/sh/rtemself.h (TARGET_OS_CPP_BUILTINS): Use instead of
1630	CPP_PREDEFINES.
1631	* config/sh/rtems.h (TARGET_OS_CPP_BUILTINS): Use instead of
1632	CPP_PREDEFINES.
1633
1634	2003-09-27  Kelley Cook  <kcook@gcc.gnu.org>
1635	* config/sh/rtemself.h, config/sh/rtems.h: GNU CC -> GCC.
1636
16372004-01-02  Roger Sayle  <roger@eyesopen.com>
1638
1639	* tree.h (integer_nonzerop): Use PARAMS macro with prototype.
1640	* tree.c (integer_nonzerop): Use K&R style function declaration.
1641
16422004-01-02  Andreas Schwab  <schwab@suse.de>
1643
1644	* doc/c-tree.texi: Fix @item vs. @itemx.
1645	* doc/cpp.texi: Likewise.
1646	* doc/install.texi: Likewise.
1647	* doc/invoke.texi: Likewise.
1648
16492004-01-02  Andreas Jaeger  <aj@suse.de>, Gerald Pfeifer  <gp@suse.de>
1650
1651	* doc/install.texi (Specific): Mention x86_64.
1652
16532004-01-01  Jakub Jelinek  <jakub@redhat.com>
1654
1655	PR optimization/13521
1656	Backport from mainline:
1657		2003-03-22  Richard Henderson <rth@redhat.com>
1658
1659		* cfgcleanup.c (insns_match_p): Do not do EQUIV substitution
1660		after reload.
1661
16622003-12-31  Roger Sayle  <roger@eyesopen.com>
1663
1664	PR fortran/12632
1665	* tree.c (integer_nonzerop): New predicate for nonzero integers.
1666	* tree.h (integer_nonzerop): Add function prototype.
1667	* fold-const.c (fold) <COND_EXPR>: Don't fold a constant condition,
1668	if we'd replace a COND_EXPR of non-void type by one of its operands
1669	of void type.
1670
16712003-12-31  Kazu Hirata  <kazu@cs.umass.edu>
1672
1673	Backport from mainline:
1674
1675	2003-09-12  Richard Sandiford  <rsandifo@redhat.com>
1676
1677	PR target/13373
1678	* config/mcore/mcore-protos.h (mcore_r15_operand_p): Declare.
1679	(mcore_secondary_reload_class): Declare.
1680	(mcore_output_inline_const_forced): Remove.
1681	* config/mcore/mcore.md (movsi): Remove the code that forced
1682	non-inlineable constants into a register if the target was r15
1683	or the stack pointer.  Remove constant restrictions from the main
1684	define_insn.  Remove r <- I, r <- M and r <- N alternatives in favor
1685	of an r <- P alternative.  Remove fallback define_insn for reload.
1686	(movhi, movqi): Use gen_lowpart rather than gen_SUBREG.  Remove reload
1687	define_insn.  Use mcore_output_move in the remaining define_insn.
1688	Adjust condition and constraints in the way as for movsi.
1689	(movdi): Always split unacceptable constants into two.  Use
1690	simplify_gen_subreg instead of operand_subword{,_force}.
1691	* config/mcore/mcore.c (mcore_output_inline_const_forced): Remove.
1692	(mcore_output_move): Support HImode and QImode moves as well.
1693	(mcore_m15_operand_p): New function.
1694	(mcore_reload_class): Use it to detect cases where LRW_REGS are better.
1695	(mcore_secondary_reload_class): New function.
1696	* config/mcore/mcore.h (SECONDARY_RELOAD_CLASS): Redefine in
1697	terms of mcore_secondary_reload_class.
1698
16992003-12-31  Zack Weinberg  <zack@codesourcery.com>
1700
1701	* config/ia64/ia64.c (ia64_va_arg): Pass pointer for
1702	variable-sized type through convert_memory_address.
1703	(ia64_in_small_data_p): Always return false for FUNCTION_DECLs.
1704
17052003-12-24  Andrew Pinski  <pinskia@physics.uc.edu>
1706
1707	PR bootstrap/13068
1708	Backport from mainline:
1709		2003-05-09  Matt Kraai <kraai@alumni.cmu.edu>
1710
1711		* mklibgcc.in: Remove extra quotes.
1712		2003-05-08  Aldy Hernandez  <aldyh@redhat.com>
1713
1714		* mklibgcc.in: Use mkinstalldirs when installing multilib
1715		directories.
1716
17172003-12-24  Roger Sayle  <roger@eyesopen.com>
1718
1719	Backport from mainline:
1720
1721	2003-09-18  Mark Mitchell  <mark@codesourcery.com>
1722	* explow.c (convert_memory_address): Define even when
1723	POINTERS_EXTEND_UNSIGNED is not defined.  Do nothing if the address
1724	is already in the right mode.
1725
17262003-12-23  Andrew Pinski  <pinskia@physics.uc.edu>
1727
1728	PR middle-end/13475
1729	Backport from mainline:
1730		2003-06-19  Aldy Hernandez  <aldyh@redhat.com>
1731
1732		* expr.c (const_vector_from_tree): Initialize remaining
1733		elements to 0.
1734
17352003-12-23  Kazu Hirata  <kazu@cs.umass.edu>
1736
1737	PR target/11576
1738	* config/h8300/h8300.h (CONSTANT_ADDRESS_P): Allow CONST and
1739	HIGH on all variants.
1740
17412003-12-23  Matthias Klose  <doko@debian.org>
1742
1743	* config/mips/linux.h (LIB_SPEC): Use -lpthread when
1744	-pthread was specified.
1745
17462003-12-23  Eric Botcazou  <ebotcazou@libertysurf.fr>
1747
1748	PR optimization/13394
1749	* toplev.c (rest_of_compilation): Move call to
1750	check_function_return_warnings right after the sibcall
1751	optimization pass.
1752
17532003-12-23  Eric Botcazou  <ebotcazou@libertysurf.fr>
1754
1755	PR c/13382
1756	* c-typeck.c (convert_for_assignment): When converting from
1757	integral type to pointer type, always call convert.
1758
17592003-12-22  Gabriel Dos Reis <gdr@integrable-solutions.net>
1760
1761	PR target/11271
1762	* reload.c: Revert last backport from mainline.  It breaks s390.
1763
17642003-12-21  Roger Sayle  <roger@eyesopen.com>
1765
1766	* config/ia64/hpux.h (TARGET_OS_CPP_BUILTINS): Define _ILP32
1767	when compiling in ILP32 mode.
1768
17692003-12-21  Gabriel Dos Reis <gdr@integrable-solutions.net>
1770
1771    Backport from mainline:
1772    2003-10-31  Richard Earnshaw  <rearnsha@arm.com>
1773
1774	    PR target/11271
1775	    * reload.c (find_reloads_address): Handle any register in
1776	    (PLUS (PLUS (REG) (REG)) (CONST_INT).
1777
17782003-12-21  Roger Sayle  <roger@eyesopen.com>
1779
1780	PR middle-end/13400
1781	* ifcvt.c (noce_process_if_block): Disable unconditional write
1782	optimizations if we could introduce a store to trapping memory
1783	that wasn't present previously.
1784
17852003-12-20  Roger Sayle  <roger@eyesopen.com>
1786
1787	PR optimization/13031
1788	* gcse.c (cprop_jump): Backport code clean-up and bug-fix
1789	from mainline [2003-05-20 Sayle, Hirata and Rennecke patch].
1790	(cprop_insn): Don't attemp further substitutions if the
1791	current instruction has been deleted.
1792	(local_cprop_pass): Likewise.
1793
17942003-12-19  Jakub Jelinek  <jakub@redhat.com>
1795
1796	PR c++/13239
1797	* builtins.c (expand_builtin_expect_jump): Update
1798	TREE_VALUE (arglist) if unsave_expr_now langhook
1799	created a new tree.
1800
18012003-12-18  Mark Mitchell  <mark@codesourcery.com>
1802
1803	* config/sol2.h (LINK_ARCH32_SPEC): Define in terms of ...
1804	(LINK_ARCH32_SPEC_BASE): ... this new macro.
1805	* config/sparc/sol2-bi.h (LINK_ARCH64_SPEC): Define in terms of
1806	...
1807	(LINK_ARCH64_SPEC_BASE): ... this new macro.
1808	* config/sparc/sol2-gld-bi.h (LINK_ARCH32_SPEC): New macro.
1809	(LINK_ARCH64_SPEC): Likewise.
1810
18112003-12-17  Ulrich Weigand  <uweigand@de.ibm.com>
1812
1813	PR target/11992
1814	* config/s390/s390.md ("*cmpmem_long_64"): Use CLCLE instruction
1815	instead of CLCL.
1816	("*cmpmem_long_31"): Likewise.
1817
18182003-12-16  Zack Weinberg  <zack@codesourcery.com>
1819
1820	Backport the following patches from mainline.
1821
1822    2003-12-05  Mark Mitchell  <mark@codesourcery.com>
1823
1824	* config/ia64/ia64.h (MUST_PASS_IN_STACK): Define.
1825
1826    2003-12-01  James E Wilson  <wilson@specifixinc.com>
1827
1828	* config/ia64/ia64.h (FUNCTION_ARG_REGNO_P): Use AR_REG_FIRST not
1829	GR_ARG_FIRST.
1830
1831    2003-10-21  Zack Weinberg  <zack@codesourcery.com>
1832
1833	* config/ia64/ia64.md (cmpxchg_acq_si): Mark operand 3 as DImode.
1834	* config/ia64/ia64.c (ia64_expand_fetch_and_op,
1835	ia64_expand_op_and_fetch): Make sure the REG for ar.ccv is
1836	DImode.   Use convert_move to load ar.ccv.
1837	(ia64_expand_compare_and_swap): Likewise.
1838	If expand_expr doesn't put 'old' and 'new' in the proper
1839	modes, run them through convert_to_mode.
1840
1841    2003-10-14  Steve Ellcey  <sje@cup.hp.com>
1842
1843	* config/ia64/ia64.c (ia64_expand_call): Force function address
1844	to DImode.
1845	* config/ia64/ia64.md (call_gp): Put DImode on operand 0.
1846
1847    2003-06-11  Richard Henderson  <rth@redhat.com>
1848
1849	* config/ia64/ia64.md (call_gp): Fix memory mode.
1850
1851    2003-05-14  Eric Christopher  <echristo@redhat.com>
1852
1853	* combine.c: Fix header comments.
1854	(distribute_notes): Remove usage of elim_i1, elim_i2. Propagate
1855	to all calls and prototype.
1856
18572003-12-16  David O'Brien  <obrien@FreeBSD.org>
1858
1859	* config/alpha/freebsd.h (FBSD_TARGET_CPU_CPP_BUILTINS): Add __LP64__.
1860	* config/sparc/freebsd.h (FBSD_TARGET_CPU_CPP_BUILTINS): Likewise.
1861	* config/i386/freebsd64.h (FBSD_TARGET_CPU_CPP_BUILTINS): Conditionally
1862	add __LP64__.
1863
18642003-12-16  Hartmut Penner  <hpenner@de.ibm.com>
1865
1866	* altivec.h (vec_cmple, vec_all_numeric): Fix typo.
1867	* testsuite/gcc.dg/altivec-10.c: Test for above.
1868
18692003-12-15  Kazu Hirata  <kazu@cs.umass.edu>
1870
1871	PR target/13122
1872	* config/h8300/h8300.md (pushqi1_h8300hs_normal): New.
1873	(pushqi1): Call gen_pushqi1_h8300hs_normal in normal mode.
1874	(pushhi1_h8300hs_normal): New.
1875	(pushhi1): Call gen_pushqi1_h8300hs_normal in normal mode.
1876
1877	* config/h8300/h8300.h (LINK_SPEC): Support normal mode.
1878	* config/h8300/h8300.c (asm_file_start): Correctly output
1879	an architecture directive.
1880	* config/h8300/lib1funcs.asm: Correctly specify an
1881	architecture directive.
1882
18832003-12-12  Roger Sayle  <roger@eyesopen.com>
1884
1885	PR optimization/13037
1886	* loop.c (update_giv_derive): Ignore redundant sets of a biv when
1887	calculating how to derive a giv from a biv.
1888
18892003-12-12  Jakub Jelinek  <jakub@redhat.com>
1890
1891	* config/ia64/linux.h (IA64_GATE_AREA_END): Increase by 64K.
1892	(MD_FALLBACK_FRAME_STATE_FOR): Set fpsr_loc, br_loc[6] and
1893	br_loc[7].  Update comment.
1894	(MD_HANDLE_UNWABI): Define.
1895	* config/ia64/unwind-ia64.c (struct unw_state_record): Add
1896	unwabi field.
1897	(struct _Unwind_Context): Increase br_loc array size to 8 entries.
1898	(desc_abi): Set unwabi.
1899	(uw_update_reg_address): Allow br up to 7.
1900	(uw_update_context): Invoke MD_HANDLE_UNWABI if defined.
1901	(uw_install_context): Load b1..b5 from correct locations.
1902	Fix insn loading ar.fpsr.
1903	* doc/tm.texi: Document MD_HANDLE_UNWABI.
1904
19052003-12-12  Hans-Peter Nilsson  <hp@axis.com>
1906
1907	PR target/13256
1908	Backport from mainline:
1909	* resource.h (enum mark_resource_type): Remove member MARK_DEST.
1910	The only user changed as follows:
1911	* resource.c (mark_set_resources) <case SET>: Always recurse for
1912	SET_SRC (x).
1913	<case SIGN_EXTRACT, case ZERO_EXTRACT>: Always recurse on
1914	operands.
1915	<case STRICT_LOW_PART>: Delete, deferring to default code.
1916
1917	PR target/12598
1918	Backport from mainline:
1919	* config/cris/cris.md (define_split "*mov_sidesi_biap_mem"+1)
1920	(define_splits "*mov_sidesi_mem"+1, "casesi"+9, +10, +11, +12):
1921	Use cris_mem_op and replace_equiv_address, not gen_rtx_MEM.
1922	("call", "call_value", define_split "*mov_sidesi_mem"+19, +20)
1923	(define_split "*mov_sidesi_mem"+21, +22, +23, +24, +25, +26, +27)
1924	(define_split "*mov_sidesi_mem"+28, +29, +30): Use
1925	replace_equiv_address, not gen_rtx_MEM.
1926	* config/cris/cris.c (cris_mem_op): New match_operator function.
1927	(cris_notice_update_cc): Use replace_equiv_address, not
1928	gen_rtx_MEM.
1929	* config/cris/cris.h (PREDICATE_CODES): Add cris_mem_op.
1930
19312003-12-11  Eric Botcazou  <ebotcazou@libertysurf.fr>
1932
1933	Backport from mainline:
1934
1935	2003-12-07  Eric Botcazou  <ebotcazou@libertysurf.fr>
1936
1937	PR optimization/13318
1938	* loop.c (express_from): Protect integer division from overflow.
1939
19402003-12-11  Eric Botcazou  <ebotcazou@libertysurf.fr>
1941
1942	Backport from mainline:
1943
1944	2003-12-07  Eric Botcazou  <ebotcazou@libertysurf.fr>
1945
1946	PR optimization/13060
1947	* function.c (fixup_var_refs_1) [SUBREG]: Recognize even if a
1948	replacement already exists.  Fix again the whole insn if that fails.
1949
19502003-12-11  Eric Botcazou  <ebotcazou@libertysurf.fr>
1951
1952	Backport from mainline:
1953
1954	2003-12-07  Eric Botcazou  <ebotcazou@libertysurf.fr>
1955
1956	PR optimization/12965
1957	* caller-save.c (save_call_clobbered_regs): Do not save/restore
1958	registers around no-return calls.
1959
19602003-12-10  Andrew Pinski  <pinskia@physics.uc.edu>
1961
1962	* emit-rtl.c (copy_rtx_if_shared_1): Fix warning.
1963
19642003-12-10  Nathanael Nerode  <neroden@gcc.gnu.org>
1965
1966	Backport from mainline (fixes unreported regression):
1967	* cpptrad.c (_cpp_scan_out_logical_line): Improve test for
1968	  whether directive begins at the beginning of a line.
1969
19702003-12-10  Eric Botcazou  <ebotcazou@libertysurf.fr>
1971
1972	PR target/13354
1973	* config/sparc/sparc.c (sparc_output_mi_thunk): Load DELTA
1974	manually if one can do that with only one instruction.
1975
19762003-12-09  Kelley Cook  <kelleycook@wideopenwest.com>
1977
1978	2003-06-04  Kelley Cook  <kelleycook@wideopenwest.com>
1979	PR optimization/4490
1980	* config/i386/i386.md: Don't use XFMode if TARGET_128BIT_LONG_DOUBLE.
1981
19822003-12-08  David Edelsohn  <edelsohn@gnu.org>
1983	    Graham Reed <greed@pobox.com>
1984
1985	PR target/13150
1986	* collect2.c (GCC_OK_SYMBOL): Add support for AIX C_WEAKEXT.
1987	(GCC_UNDEF_SYMBOL): Same.
1988
19892003-12-08  Andrew Pinski  <pinskia@physics.uc.edu>
1990
1991	PR middle-end/10060
1992	* emit-rtl.c (copy_rtx_if_shared): Split out into ...
1993	(copy_rtx_if_shared_1): here and optimize the last one
1994	in the sequence into tail-recursion.
1995	(reset_used_flags): Optimize the last one
1996	in the sequence into tail-recursion.
1997
19982003-12-07  Alan Modra  <amodra@bigpond.net.au>
1999
2000	* config/rs6000/rs6000.c (rs6000_elf_section_type_flags): Don't
2001	set SECTION_WRITE on TARGET_RELOCATABLE.
2002
20032003-12-05  Andrew Pinski <pinskia@physics.uc.edu>
2004
2005	PR driver/13211
2006	* gcc.c (execute) Increment execution_count when returning
2007	early because verbose_only_flag is true.
2008
20092003-12-05  Stuart Menefy <stuart.menefy@st.com>
2010	    J"orn Rennecke <joern.rennecke@superh.com>
2011
2012	PR target/13302
2013	* sh.c (sh_build_builtin_va_list): Use (*lang_hooks.types.make_type).
2014
20152003-12-04  Andrew Pinski  <pinskia@physics.uc.edu>
2016
2017	PR target/11322
2018	* config/sh/netbsd-elf.h (NO_PROFILE_COUNTERS): Define.
2019
2020	PR target/12467
2021	* config/rs6000/altivec.md (altivec_vmsummbm): Fix typo.
2022
20232003-12-04  H.J. Lu  <hongjiu.lu@intel.com>
2024
2025	* Makefile.in (stmp-fixinc): Don't bail out if SYSTEM_HEADER_DIR
2026	does not exist and it's the default sys-include directory.
2027
20282003-12-03  Mark Mitchell  <mark@codesourcery.com>
2029
2030	* config/ia64/hpux.h (TARGET_HAVE_TLS): Define it to false.
2031	* config/ia64/ia64.h (TARGET_HAVE_TLS): Define it to true if
2032	HAVE_AS_TLS is true.
2033	* config/ia64/ia64.c (TARGET_HAVE_TLS): Do not define it.
2034
20352003-12-03  James E Wilson  <wilson@specifixinc.com>
2036
2037       2003-11-29  James E Wilson  <wilson@specifixinc.com>
2038       * gcc.c (init_spec): Pass -lunwind to init_gcc_specs in eh_name
2039       instead of in shared_name.
2040
20412003-12-03 David Mosberger  <davidm@hpl.hp.com>
2042
2043       2003-11-20 David Mosberger  <davidm@hpl.hp.com>
2044       * config/t-libunwind (LIB2ADDEH): Add unwind-c.c.
2045       (SHLIB_LC): Define.
2046       * unwind-libunwind.c (_Unwind_GetCFA): Implement.
2047       (_Unwind_GetBSP) [UNW_TARGET_IA64]: New function.
2048
20492003-12-03  Jakub Jelinek  <jakub@redhat.com>
2050
2051	* expr.c (store_constructor): Only set RTX_UNCHANGING_P for
2052	read-only field if cleared is 0.
2053
20542003-12-03  Kean Johnston  <jkj@sco.com>
2055
2056	PR 12969
2057	* fixinc/inclhack.def (AAB_svr4_replace_byteorder): Revert the
2058	change I made on 2003-08-11 that removes the mach lines.
2059	Restore them to the same list thats in the head, as per
2060	Nathanael Nerode's changes.
2061	* fixinc/fixincl.x: Regenerated
2062	* fixinc/tests/base/ansi/string.h: Fix test case
2063
20642003-12-03  James E Wilson  <wilson@specifixinc.com>
2065
2066	2003-12-01  James E Wilson  <wilson@specifixinc.com>
2067	PR target/8407
2068	* config/ia64/ia64.c (ia64_function_arg): For single-reg HFA, call
2069	gen_rtx_REG to create new reg with argument mode.
2070
20712003-12-03  Josef Zlomek  <zlomekj@suse.cz>
2072
2073	Backport from mainline
2074
2075	2003-10-31  Josef Zlomek  <zlomekj@suse.cz>
2076
2077		PR/10239
2078		* cfgrtl.c (delete_insn): Decrease LABEL_NUSES for all
2079		REG_LABEL notes.
2080
2081	2003-10-31  Josef Zlomek  <zlomekj@suse.cz>
2082
2083		PR/11640
2084		* cfgrtl.c (try_redirect_by_replacing_jump): Move jump
2085		immediatelly before BARRIER.
2086
20872003-12-01  Kaz Kojima  <kkojima@gcc.gnu.org>
2088
2089	Backport from mainline
2090
2091	2002-11-19  Kaz Kojima  <kkojima@gcc.gnu.org>
2092
2093	* config.gcc (sh*-*-linux*): Add t-slibgcc-elf-ver and t-linux.
2094	to tmake_file.
2095	* config/sh/libgcc-glibc.ver: New file.
2096
2097	Backport from mainline
2098
2099	2003-10-08  Kaz Kojima  <kkojima@gcc.gnu.org>
2100
2101	* config/sh/t-linux (SHLIB_LINK): Override to use a linker script
2102	libgcc_s.so.
2103	(SHLIB_INSTALL): Likewise.
2104
21052003-12-01  Roger Sayle  <roger@eyesopen.com>
2106
2107	PR optimization/11634
2108	* recog.c (split_insn): Factor test of INSN_P and handling of
2109	set_noop_p out of here into the two callers.
2110	(split_all_insns): Add INSN_P test and set_noop_p handling here.
2111	If deleting a no-op set after reload that has a REG_UNUSED note,
2112	mark the basic block as changed and recalculate life information.
2113	(split_all_insns_noflow): Add INSN_P test and set_noop_p handling
2114	here.
2115
21162003-12-01  Zack Weinberg  <zack@codesourcery.com>
2117
2118	PR 12505
2119	* configure.in: Check for system-provided 'uchar' type.
2120	* configure, config.in: Regenerate.
2121	* cpphash.h: Only typedef 'uchar' if the system doesn't.
2122
21232003-12-01  Ulrich Weigand  <uweigand@de.ibm.com>
2124
2125	* unroll.c (find_splittable_givs): Add missing extend_value_for_giv.
2126
21272003-12-01  Eric Botcazou  <ebotcazou@libertysurf.fr>
2128
2129	Backport from mainline:
2130
2131	2003-11-27  Eric Botcazou  <ebotcazou@libertysurf.fr>
2132
2133	PR optimization/13041
2134	* final.c (frame_pointer_needed): Fix comment.
2135	* reload1.c (reload): Decrease alignment of the frame
2136	pointer if it was used for register allocation.
2137
21382003-12-01  Eric Botcazou  <ebotcazou@libertysurf.fr>
2139
2140	Backport from mainline:
2141
2142	2003-11-27  Eric Botcazou  <ebotcazou@libertysurf.fr>
2143
2144	PR target/12900
2145	* reg-stack (move_for_stack_reg): New prototype.  Return
2146	whether a control flow insn was deleted.
2147	(subst_stack_regs_pat): Likewise, using the information provided
2148	by move_for_stack_reg.
2149	(subst_stack_regs): Likewise, using the information provided
2150	by subst_stack_regs_pat.
2151	(convert_regs_1): Record whether a control flow insn was deleted,
2152	using the information provided by subst_stack_regs.  Purge dead
2153	edges only if a control flow insn was deleted.
2154
21552003-12-01  Gabriel Dos Reis <gdr@integrable-solutions.net>
2156
2157	* doc/c-tree.texi (Function Bodies): Update HANDLER documentation.
2158
21592003-11-29  Ulrich Weigand  <uweigand@de.ibm.com>
2160
2161	* config/s390/s390.md ("cmpint_di"): Fix incorrect instruction lengths.
2162
21632003-11-19  Alan Modra  <amodra@bigpond.net.au>
2164
2165	Backport 2003-03-26  Alan Modra  <amodra@bigpond.net.au>
2166	* cppinit.c (init_standard_includes): Add both "translated" and
2167	non-translated header paths.
2168
21692003-11-18  Gerald Pfeifer  <gerald@pfeifer.com>
2170
2171	Fix links in online manuals.
2172	* doc/invoke.texi (H8/300 Options): @xref to ld, not ld.info.
2173
21742003-11-17  Gerald Pfeifer  <gerald@pfeifer.com>
2175
2176	* doc/invoke.texi (Warning Options): Simplify and clarify the
2177	description of -Wnonnull.
2178
21792003-11-14  Matthias Klose  <doko@debian.org>
2180
2181	Backport from mainline
2182
2183	2003-06-04  Jakub Jelinek  <jakub@redhat.com>
2184
2185	* function.c (trampolines_created): New variable.
2186	(expand_function_end): Set it when doing INITIALIZE_TRAMPOLINE.
2187	* function.h (trampolines_created): Add.
2188	* config/s390/linux.h (ASM_FILE_END): Define.
2189	* config/alpha/linux-elf.h (ASM_FILE_END): Define.
2190	* config/m68k/linux.h (ASM_FILE_END): Define.
2191	* config/rs6000/linux.h (ASM_FILE_END): Define.
2192	* config/rs6000/linux64.h (ASM_FILE_END): Define.
2193	* config/sparc/linux.h (ASM_FILE_END): Define.
2194	* config/sparc/linux64.h (ASM_FILE_END): Define.
2195	* config/i386/i386.c (ix86_asm_file_end): Use SUBTARGET_FILE_END.
2196	* config/i386/linux.h (SUBTARGET_FILE_END): Define.
2197	* config/i386/linux64.h (SUBTARGET_FILE_END): Define.
2198
2199	2003-06-05  Jakub Jelinek  <jakub@redhat.com>
2200
2201	* mklibgcc.in: Propagate .note.GNU-stack section if needed into
2202	the .hidden assembly stubs.
2203
22042003-11-13  Eric Botcazou  <ebotcazou@libertysurf.fr>
2205
2206	PR optimization/12926
2207	* expr.c (expand_assignment) [COMPONENT_REF]: Don't put
2208	the UNCHANGING_RTX_P flag on memory references to read-only
2209	components that are not addressable.
2210
22112003-11-12  Alexey Starovoytov  <alexey.starovoytov@sun.com>
2212
2213	PR optimization/12953
2214	* c-objc-common.c (inline_forbidden_p): Added check for BUILT_IN
2215	before switch by FUNCTION_CODE.
2216
22172003-11-10  Waldek Hebisch  <hebisch@math.uni.wroc.pl>
2218
2219	PR target/12865
2220	* config/sparc/sparc.c (sparc_initialize_trampoline): Call
2221	__enable_execute_stack only after writing onto the stack.
2222	(sparc64_initialize_trampoline): Likewise.
2223
22242003-11-08  Roger Sayle  <roger@eyesopen.com>
2225
2226	Backport from mainline
2227	PR optimization/10467, PR optimization/11741
2228	* gcse.c (pre_insert_copy_insn): Tweak the logic for finding the
2229	appropriate set to match the code in hash_scan_insn.
2230
22312003-11-06  H.J. Lu <hongjiu.lu@intel.com>
2232
2233	* cppinit.c (init_standard_includes): Updated.
2234
2235	* Makefile.in (fixinc.sh): Updated.
2236
2237	Backport from 3.4-branch
2238
2239	2003-07-16  Daniel Jacobowitz  <drow@mvista.com>
2240
2241	* gcc.c (STANDARD_STARTFILE_PREFIX): Remove unnecessary definition.
2242	(main): Remove unnecessary case.  Only use standard_startfile_prefix
2243	if native.
2244
2245	2003-04-11 Alexandre Oliva  <aoliva@redhat.com>
2246
2247	* Makefile.in (fixinc.sh): Pass BUILD_LIBERTY as LIBERTY to
2248	mkfixinc.sh.
2249	* fixinc/mkfixinc.sh (defs): Add LIBERTY.
2250	* configure.in (STMP_FIXINC, STMP_FIXPROTO): Don't disable on
2251	build != host sysrooted builds.
2252	* configure.in (SYSTEM_HEADER_DIR): Make sure it contains
2253	TARGET_SYSTEM_ROOT even on sysrooted natives.
2254	* configure: Rebuilt.
2255
2256	2003-03-04  Daniel Jacobowitz  <drow@mvista.com>
2257
2258	* configure.in: Don't always define TARGET_SYSTEM_ROOT.
2259	* configure: Regenerated.
2260	* gcc.c: Check whether TARGET_SYSTEM_ROOT is defined.
2261
2262	2003-01-16  Daniel Jacobowitz  <drow@mvista.com>
2263
2264	* Makefile.in (PREPROCESSOR_DEFINES): Add
2265	@TARGET_SYSTEM_ROOT_DEFINE@.
2266	* configure.in (PREFIX_INCLUDE_DIR): Don't define if $with_sysroot
2267	is specified or if building a cross compiler.
2268	(TARGET_SYSTEM_ROOT_DEFINE): Add TARGET_SYSTEM_ROOT_RELOCATABLE
2269	if the sysroot is under $exec_prefix.
2270	* configure: Regenerated.
2271	* cppdefault.h: Use native include paths if TARGET_SYSTEM_ROOT is
2272	defined.
2273	(struct default_include): Add add_sysroot field.
2274	(cpp_SYSROOT): Declare.
2275	* cppdefault.c (cpp_include_defaults): Fill in add_sysroot
2276	field.
2277	(cpp_SYSROOT): New variable.
2278	* cppinit.c (cpp_create_reader): Initialize
2279	CPP_OPTION (pfile, sysroot).
2280	(init_standard_includes): Handle add_sysroot.  Do not
2281	add unrelocated copies of relocated directories.
2282	(COMMAND_LINE_OPTIONS): Add -isysroot.
2283	(cpp_handle_option): Handle -isysroot.
2284	* cpplib.h (struct cpp_options): Add sysroot member.
2285	* gcc.c (The Specs Language): Update description of %I.
2286	(target_system_root_changed): New variable.
2287	(process_command): Conditionalize make_relative_prefix call
2288	on !VMS and TARGET_SYSTEM_ROOT_RELOCATABLE.  Set
2289	target_system_root_changed.
2290	(do_spec_1): Add -isysroot to %I.
2291	* doc/invoke.texi (Spec Files): Update description of %I.
2292	* doc/install.texi (--with-sysroot): Update comment about
2293	relocation.
2294
2295	2002-10-19  Alexandre Oliva  <aoliva@redhat.com>
2296		    Angela Marie Thomas  <angela@releasedominatrix.com>
2297		    Brendan Kehoe  <brendan@zen.org>
2298		    Nick Clifton  <nickc@redhat.com>
2299		    Andrew Haley  <aph@redhat.com>
2300
2301	* configure.in (--with-sysroot): New.  Don't inhibit libc if
2302	given.  AC_SUBST TARGET_SYSTEM_ROOT, TARGET_SYSTEM_ROOT_DEFINE
2303	and CROSS_SYSTEM_HEADER_DIR.
2304	* configure: Rebuilt.
2305	* Makefile.in (CROSS_SYSTEM_HEADER_DIR): Set in configure.
2306	(TARGET_SYSTEM_ROOT): New.
2307	(DRIVER_DEFINES): Define CROSS_INCLUDE_DIR from
2308	CROSS_SYSTEM_HEADER_DIR.
2309	(install-gcc-tooldir): New target.
2310	(stmp-fixinc): Do not create $(libsubdir), but rather bail out
2311	of SYSTEM_HEADER_DIR does not exist.
2312	(deduced.h, stmp-fixproto): Quote SYSTEM_HEADER_DIR properly.
2313	(install-mkheaders): Likewise.
2314	* gcc.c (target_system_root): New variable.
2315	(add_sysrooted_prefix): New function.
2316	(process_command): Recompute run-time target_system_root from
2317	gcc_exec_prefix, keeping it unchanged if the relocated sysroot
2318	does not exist.
2319	(do_spec_1): Process 'R' spec.
2320	(main): Add md_exec_prefix to exec_prefixes regardless of
2321	startfile_prefix_spec.  Use add_sysrooted_prefix for
2322	startfile_prefixes, and don't skip the default ones when cross
2323	compiling with sysroot enabled.  Removed unused case of
2324	non-absolute standard_startfile_prefix.
2325	* config/interix.h: Remove the only potential, yet disabled,
2326	occurrence of non-absolute (empty) standard_startfile_prefix.
2327	* config/sh/linux.h (LIB_SPEC): Add -rpath-link in non-static
2328	linking.
2329	* config/mips/linux.h (LIB_SPEC): Define as in sh/linux.h.
2330	* doc/install.texi (--with-sysroot): Document.
2331	(--with-headers, --with-libs): Deprecate.
2332
23332003-11-06  Ulrich Weigand  <uweigand@de.ibm.com>
2334
2335	* config/s390/s390-protos.h (s390_output_dwarf_dtprel): Declare.
2336	* config/s390/s390.c (s390_output_dwarf_dtprel): New function.
2337	* config/s390/s390.h (ASM_OUTPUT_DWARF_DTPREL): Define.
2338
23392003-11-06  Ulrich Weigand  <uweigand@de.ibm.com>
2340
2341	* config/s390/s390.c (s390_function_arg_pass_by_reference): Return
2342	true for all arguments larger than 8 bytes, as well as for all vector
2343	type arguments.
2344	* config/s390/s390.h (RETURN_IN_MEMORY): Likewise for return values.
2345
23462003-11-05  Roger Sayle  <roger@eyesopen.com>
2347
2348	PR optimization/10339
2349	* builtins.c (expand_builtin_strcmp): Try to emit cmpstrsi insn
2350	directly instead of unsafely transforming call into a memcmp.
2351	(expand_builtin_strncmp): Likewise.
2352
23532003-11-03  Alexander Kabaev  <ak03@gte.com>
2354
2355	* real.c (encode_ieee_single): Ensure proper promotion.
2356
23572003-11-04  H.J. Lu <hongjiu.lu@intel.com>
2358
2359	Backport from 3.4-branch
2360
2361	2003-07-13  Andreas Jaeger  <aj@suse.de>
2362
2363	* config.gcc: Add pmmintrin.h for x86_64-*-*.
2364
2365	2003-06-26  H.J. Lu  <hongjiu.lu@intel.com>
2366
2367	* config.gcc (extra_headers): Add pmmintrin.h for i[34567]86-*-*.
2368
2369	* config/i386/i386.c (override_options): Turn on MASK_SSE2
2370	for -mpni.
2371	(bdesc_2arg): Add PNI builtins with 2 args.
2372	(bdesc_1arg): Add PNI builtins with 1 arg.
2373	(ix86_init_mmx_sse_builtins): Handle PNI builtins.
2374	(ix86_expand_builtin): Likewise.
2375
2376	* config/i386/i386.h (MASK_3DNOW, MASK_3DNOW_A,
2377	MASK_128BIT_LONG_DOUBLE, MASK_64BIT, MASK_MS_BITFIELD_LAYOUT,
2378	MASK_TLS_DIRECT_SEG_REFS): Renumbered.
2379	(TARGET_PNI): New.
2380	(TARGET_SWITCHES): Add -mpni and -mno-pni.
2381	(TARGET_CPU_CPP_BUILTINS): Defined __PNI__ for PNI.
2382	(ix86_builtins): Add PNI builtins.
2383	(config/i386/i386.md): Add PNI patterns.
2384
2385	* config/i386/pmmintrin.h: New file.
2386
2387	* config/i386/i386.c (override_options): Turn on MASK_SSE for
2388	-msse2.
2389	(MASK_SSE1): Removed.
2390	(MASK_SSE164): Removed.
2391	(MASK_SSE264): Removed.
2392	(bdesc_2arg): Replace MASK_SSE1 with MASK_SSE. Replace
2393	MASK_SSE164 with MASK_SSE | MASK_64BIT. Replace MASK_SSE264
2394	with MASK_SSE2 | MASK_64BIT.
2395	(bdesc_1arg): Likewise.
2396	(ix86_init_mmx_sse_builtins): Likewise.
2397
2398	* config/i386/i386.h (TARGET_SSE): Remove MASK_SSE2.
2399
2400	2003-06-20  H.J. Lu  <hongjiu.lu@intel.com>
2401
2402	* doc/extend.texi: Document new builtin functions for Intel
2403	Prescott New Intrunctions.
2404
2405	* doc/invoke.texi: Document new command-line options, -mpni and
2406	-mno-pni, for Intel Prescott New Intrunctions.
2407
2408	2003-06-05  H.J. Lu  <hongjiu.lu@intel.com>
2409
2410	* config.gcc (extra_headers): Add emmintrin.h for i[34567]86-*-*
2411	and x86_64-*-*.
2412
2413	* config/i386/mmintrin.h: Update version and add alternate
2414	intrinsic names.
2415	* config/i386/xmmintrin.h: Likewise.
2416
2417	* config/i386/xmmintrin.h: Include <emmintrin.h>. Move SSE2
2418	intrinsics to ...
2419	* config/i386/emmintrin.h: Here. New file.
2420
24212003-11-04  H.J. Lu  <hongjiu.lu@intel.com>
2422
2423	Backport from 3.4-branch
2424	2003-04-25  H.J. Lu   <hjl@gnu.org>
2425
2426	* config/ia64/ia64.c (ia64_expand_compare_and_swap): Add rmode
2427	for return mode.
2428	(ia64_expand_builtin): Set rmode to SImode for
2429	IA64_BUILTIN_BOOL_COMPARE_AND_SWAP_SI,
2430	IA64_BUILTIN_VAL_COMPARE_AND_SWAP_SI and
2431	IA64_BUILTIN_BOOL_COMPARE_AND_SWAP_DI. Set remode to DImode
2432	for IA64_BUILTIN_VAL_COMPARE_AND_SWAP_DI.
2433
2434	2003-04-24  H.J. Lu  <hjl@gnu.org>
2435
2436	* config/ia64/ia64.c (ia64_init_builtins): Add si_ftype_pdi_di_di
2437	for __sync_bool_compare_and_swap_di for int return type.
2438
2439	* config/ia64/ia64intrin.h (__sync_bool_compare_and_swap_di):
2440	Change return type to int.
2441	(__sync_bool_compare_and_swap): Likewise.
2442
24432003-11-03  Volker Reichelt  <reichelt@igpm.rwth-aachen.de>
2444
2445	* doc/contrib.texi: Add Giovanni Bajo, Dara Hazeghi, Falk Hueffner,
2446	and Andrew Pinski.
2447
24482003-11-03  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
2449
2450	* fixinc/inclhack.def (stdio_va_list): Allow tab before va_list.
2451	Merge two substitutions.
2452	* fixinc/fixincl.x: Regenerate.
2453	Fixes PR bootstrap/12666.
2454
24552003-10-28  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
2456
2457	PR target/11598
2458	PR libgcj/10610
2459	* config/rs6000/sysv4.h (PREFERRED_STACK_BOUNDARY): New macro.
2460
24612003-10-27  Falk Hueffner  <falk@debian.org>
2462
2463	PR target/12654
2464	* config/alpha/alpha.c (alpha_emit_conditional_branch): Don't do
2465	comparison against constant by adjusting the argument except for
2466	EQ and NE.
2467
24682003-10-26  Ottavio Campana <ottavio@campana.vi.it>
2469
2470	PR target/12690
2471	* config/i386/mmintrin.h (_mm_set1_pi8): Fix comment.
2472
24732003-10-25  Bruce Korb  <bkorb@gnu.org>
2474
2475	* gcc/fixinc/tests/base/ansi/string.h:
2476	This fixes a result from a broken sed or a hand-edited output file.
2477	The '__GNUC__' wrappers were misplaced.
2478
24792003-10-25  Eric Botcazou  <ebotcazou@libertysurf.fr>
2480
2481	PR target/12712
2482	* reg-stack.c (convert_regs_1): Create an arbitrary input stack
2483	if the block has no predecessors.
2484	(convert_regs_2): Document the problem with successors whose
2485	only predecessor is the block to be processed.
2486	(convert_regs): Don't create the arbitrary input stack here.
2487
24882003-10-22  David Taylor <dtaylor@emc.com>
2489
2490	PR debug/12500
2491	* dbxout.c (dbxout_typedefs): Use COMPLETE_OR_VOID_TYPE_P.
2492
24932003-10-20  Zack Weinberg  <zack@codesourcery.com>
2494
2495	* fixinc/inclhack.def (hpux11_snprintf): New edit.
2496	* fixinc/fixincl.x: Regenerate.
2497	* fixinc/tests/base/stdio.h: Add test for hpux11_snprintf.
2498
24992003-05-16  Jakub Jelinek  <jakub@redhat.com>
2500
2501	* config/ia64/unwind-ia64.c (uw_update_reg_address): Handle
2502	.save XX, r0.
2503
25042003-10-19  Mark Mitchell  <mark@codesourcery.com>
2505
2506	* doc/include/gcc-common.texi: Bump version number.
2507	* version.c (version_string): Reset to prerelease format.
2508
25092003-10-18  Kazu Hirata  <kazu@cs.umass.edu>
2510
2511	* doc/extend.texi: Fix typos.
2512
25132003-10-16  Release Manager
2514
2515	* GCC 3.3.2 Released.
2516
25172003-10-14  Jason Merrill  <jason@redhat.com>
2518
2519	PR c/11885
2520	* stor-layout.c (update_alignment_for_field): Packed non-bit-fields
2521	get byte alignment.
2522
25232003-10-14  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
2524
2525	* fixinc/inclhack.def (alpha_pthread_gcc): New fix.
2526	* fixinc/fixincl.x: Regenerate.
2527	* fixinc/tests/base/pthread.h [ALPHA_PTHREAD_GCC_CHECK]: New
2528	testcase.
2529	Fixes PR bootstrap/9330.
2530
25312003-10-14  Steven Bosscher  <steven@gcc.gnu.org>
2532
2533	PR target/11087
2534	Backport from gcc-3_3-rhl-branch and mainline.
2535
2536	2003-07-17  Jakub Jelinek  <jakub@redhat.com>
2537
2538	* loop.c (basic_induction_var): Check if convert_modes
2539	emitted any instructions. Remove them and return 0 if so.
2540
25412003-10-13  Matt Kraai <kraai@alumni.cmu.edu>
2542
2543	PR target/11949
2544	Backport from mainline:
2545
2546	2003-05-05  Aldy Hernandez  <aldyh@redhat.com>
2547
2548	* testsuite/gcc.c-torture/compile/simd-6.c: New.
2549	* c-typeck.c (digest_init): Handle arrays of vector constants.
2550
25512003-10-11  Eric Botcazou  <ebotcazou@libertysurf.fr>
2552
2553	PR optimization/12544
2554	* function.c (put_var_into_stack): Don't generate ADDRESSOFs
2555	for DECL_NONLOCAL decls.
2556
25572003-10-09  Eric Botcazou  <ebotcazou@libertysurf.fr>
2558
2559	PR optimization/12510
2560	Backport from mainline:
2561
2562	2003-09-08  Jakub Jelinek  <jakub@redhat.com>
2563
2564	* toplev.c (rest_of_compilation): Call split_all_insns before
2565	regstack if optimizing but not scheduling after reload.
2566
25672003-10-09  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
2568
2569	* fixinc/inclhack.def (stdio_va_list): Removed _ap fix.
2570	(irix_stdio_va_list): Don't require leading printf, IRIX 6.5.21
2571	introduced some multi-line prototypes.
2572	* fixinc/fixincl.x: Regenerate.
2573	Fixes PR libf2c/12263.
2574
25752003-10-08  Timo Kokkonen  <tjko@iki.fi>
2576	    Eric Botcazou  <ebotcazou@libertysurf.fr>
2577
2578	PR bootstrap/12490
2579	* scan-decls.c (MAX_EXTERN_C_BRACES): New preprocessor constant
2580	to define the size of the extern_C_braces array.  Set it to 200.
2581	(scan_decls): Abort when extern_C_braces_length is out-of-bounds.
2582
25832003-10-06  Eric Botcazou  <ebotcazou@libertysurf.fr>
2584
2585	PR optimization/12215
2586	* cse.c (cse_set_around_loop): Emit the move at the beginning
2587	of the next basic block for trapping sets.
2588
25892003-10-06  Eric Botcazou  <ebotcazou@libertysurf.fr>
2590
2591	PR optimization/11637
2592	* combine.c (adjust_for_new_dest): New function to adjust the
2593	notes and LOG_LINKS when the dest of an insn has changed.
2594	(try_combine): Use it when deleting the first insn of a two-insn
2595	parallel or splitting a two-load parallel.
2596
25972003-10-04  Stephane Carrez  <stcarrez@nerim.fr>
2598
2599	* config/m68hc11/t-m68hc11-gas (MULTILIB_MATCHES): m68hcs12 is
2600	identical to m68hc12 as far as libraries are concerned.
2601
26022003-10-04  Eric Botcazou  <ebotcazou@libertysurf.fr>
2603
2604	PR c/12446
2605	* c-typeck.c (convert_for_assignment): Issue an error for
2606	array to pointer assignment after default conversion.
2607	(digest_init): Likewise.
2608
26092003-10-03  Gerald Pfeifer  <gerald@pfeifer.com>
2610
2611	* doc/extend.texi (Function Attributes): Fix title of GNU C
2612	Preprocessor manual.
2613	(C++ Extensions): Fix reference to "Predefined Macros" in the
2614	GNU C Preprocessor manual.
2615
26162003-10-03  Zdenek Dvorak  <rakdver@atrey.karlin.mff.cuni.cz>
2617
2618	PR/11883
2619	* cfgloop.c (flow_loops_find): Fix handling of abnormal edges.
2620
26212003-10-02  Mark Mitchell  <mark@codesourcery.com>
2622
2623	PR optimization/12180
2624	* c-objc-common.c (inline_forbidden_p): Do not permit inlining of
2625	functions containing calls to __builtin_next_arg.
2626
26272003-10-02  Josef Zlomek  <zlomekj@suse.cz>
2628
2629	PR/12292
2630	* combine.c (make_field_assignment): Check whether rtx's code
2631	is CONST_INT before using INTVAL.
2632
26332003-10-02  Josef Zlomek  <zlomekj@suse.cz>
2634
2635	Waldek Hebisch <hebisch@math.uni.wroc.pl>
2636	PR/12072
2637	* varasm.c (compare_constant): Fix thinko.
2638
26392003-10-01  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
2640
2641	* aclocal.m4: Add hpux10* and hpux11.00 to /dev/zero blacklist.
2642	* configure: Rebuilt.
2643
26442003-10-01  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
2645
2646	* aclocal.m4: Add ultrix* to /dev/zero blacklist.
2647	* configure: Rebuilt.
2648
26492003-10-01  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
2650
2651	* config.gcc (sparc-*-solaris2*): Handle Solaris 10 and up like
2652	Solaris 7-9.
2653
2654	* fixinc/inclhack.def (solaris_widec): Replace solaris2.[0-5]* by
2655	wildcards which explicitly match micro versions.
2656	* fixinc/fixincl.x: Regenerate.
2657
26582003-10-01  Richard Henderson  <rth@redhat.com>
2659
2660	* dwarf2out.c (expand_builtin_init_dwarf_reg_sizes): Honor
2661	DWARF_ALT_FRAME_RETURN_COLUMN.
2662	* unwind-dw2.c (dwarf_reg_size_table): Expand by one.
2663	(_Unwind_GetGR, _Unwind_SetGR): Validate lookup column.
2664	(uw_frame_state_for): Return end-of-stack for null return address.
2665
2666	* config/alpha/alpha.c (alpha_sa_mask): Add r31 for eh_return.
2667	(alpha_expand_prologue): Store a zero for it.
2668	(alpha_expand_epilogue): Don't reload it.
2669	* config/alpha/alpha.h (DWARF_ALT_FRAME_RETURN_COLUMN): New.
2670	* config/alpha/linux.h (MD_FALLBACK_FRAME_STATE_FOR): Use column 64
2671	for the sigframe return address.
2672
26732003-10-01  Nick Clifton  <nickc@redhat.com>
2674
2675	* Import this patch from mainline:
2676
2677	2003-02-01  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
2678
2679	* collect2.c (pexecute_pid): Rename to pid.
2680	(collect_wait, collect_execute, scan_prog_file, scan_libraries): Use
2681	pid.
2682
26832003-09-23  David S. Miller  <davem@redhat.com>
2684
2685	* config/sparc/linux.h (LINK_GCC_C_SEQUENCE_SPEC): Undefine
2686	before redefining.
2687	* config/sparc/linux64.h (LINK_GCC_C_SEQUENCE_SPEC): Likewise.
2688
26892003-10-01  Eric Botcazou  <ebotcazou@libertysurf.fr>
2690
2691	PR optimization/11753
2692	* config/sparc/sparc.md (length attribute) [fcc branch]: Add 1 to
2693	the length in the non-V9 case.
2694
26952003-09-27  Eric Botcazou  <ebotcazou@libertysurf.fr>
2696
2697	PR optimization/12340
2698	* loop.h (struct induction): Document the new semantics
2699	of the 'same' field for bivs.
2700	* unroll.c (biv_total_increment): Don't count the same
2701	biv increment several times.
2702	(loop_iterations) [GENERAL_INDUCT]: Likewise.
2703
27042003-09-26  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
2705
2706	PR bootstrap/12358
2707	* pa.c (output_bvb): Fix typo.
2708
27092003-09-24  Alexandre Oliva  <aoliva@redhat.com>
2710
2711	* cpplib.c (do_pragma): Reintroduce cb_line_change call in the
2712	code path that calls a handler.
2713
27142003-09-23  Geoffrey Keating  <geoffk@apple.com>
2715
2716	* config/t-darwin (crt2.o): Add stmp-int-hdrs to dependencies.
2717
2718	* config/rs6000/rs6000.c (function_arg_pass_by_reference): Don't
2719	pass zero-size arrays by reference.
2720	(rs6000_va_arg): Likewise.
2721
27222003-09-22	Joel Sherrill <joel@oarcorp.com>
2723
2724	* combine.c, config/mips/t-elf, config/c4x/rtems.h: Revert patches
2725	which should not have been committed with other RTEMS changes.
2726
27272003-09-22  Olivier Hainque  <hainque@act-europe.fr>
2728
2729	PR target/9786
2730	* reg-stack.c (convert_regs_1): Purge possible dead eh edges
2731	after potential deletion of trapping insn. Avoids later ICE
2732	from call to fixup_abnormal_edges.
2733	(convert_regs_2): Stack the current block successors before
2734	processing this block, that is, before the potential deletion of
2735	dead edges by convert_regs_1, because these edges have been used
2736	to initialize the predecessors count.
2737
27382003-09-21  Eric Botcazou  <ebotcazou@libertysurf.fr>
2739
2740	PR target/12301
2741	* reorg.c (stop_search_p): Return 1 for insns that can
2742	throw internally.
2743
27442003-09-19  Joel Sherrill <joel@oarcorp.com>
2745
2746	* config/m68k/t-m68kbare, config/m68k/t-rtems: Change 68681 to
2747	68881.
2748
27492003-09-19  Ralf Corsepius <corsepiu@faw.uni-ulm.de>
2750
2751	* config/m68k/t-rtems (m68k-*-rtems*): New.
2752	* config.gcc: Use config/m68k/t-rtems.
2753
27542003-09-19  Ralf Corsepius <corsepiu@faw.uni-ulm.de>
2755
2756	* config/mips/t-rtems: New.
2757	* config.gcc (mips*-*-rtems*): Use config/mips/t-rtems.
2758
27592003-09-19  T. Papadopoulo <Theodore.Papadopoulo@sophia.inria.fr>
2760	    Eric Botcazou <ebotcazou@libertysurf.fr>
2761
2762	PR target/12166
2763	* config/sparc/sol2-c1.asm (start): Set __Argv if GCRT1.
2764
27652003-09-18  Mark Mitchell  <mark@codesourcery.com>
2766
2767	PR target/11184
2768	* builtins.c (expand_builtin_apply): Use convert_memory_address
2769	before returning the value.
2770
27712003-09-17  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
2772
2773	* configure.in (gcc_cv_as_hidden): Only disable if no GNU ld
2774	detected.
2775	* configure: Regenerate.
2776	Fixes PR target/12248.
2777
27782003-09-17  Richard Henderson  <rth@redhat.com>
2779
2780	* config/alpha/alpha.c (alpha_expand_mov): Do gen_movdi_er_maybe_g
2781	always during initial code generation.
2782	* config/alpha/alpha.md (movdi_er_maybe_g): Don't conditionalize
2783	on flag_inline_functions.
2784
27852003-09-17  Eric Botcazou  <ebotcazou@libertysurf.fr>
2786
2787	PR optimization/11646
2788	* cfgrtl.c (purge_dead_edges) [JUMP_INSN]: Rematerialize the
2789	EDGE_ABNORMAL flag for EH edges.
2790	* toplev.c (rest_of_compilation): Delete unreachable blocks
2791	if dead edges were purged after the first CSE pass.
2792
27932003-09-16  Jakub Jelinek  <jakub@redhat.com>
2794
2795	* config/linux.h (LINK_GCC_C_SEQUENCE_SPEC): Define.
2796	* config/alpha/linux.h (LINK_GCC_C_SEQUENCE_SPEC): Define.
2797	* config/arm/linux-elf.h (LINK_GCC_C_SEQUENCE_SPEC): Define.
2798	* config/rs6000/linux.h (LINK_GCC_C_SEQUENCE_SPEC): Define.
2799	* config/rs6000/linux64.h (LINK_GCC_C_SEQUENCE_SPEC): Define.
2800	* config/sh/linux.h (LINK_GCC_C_SEQUENCE_SPEC): Define.
2801	* config/sparc/linux.h (LINK_GCC_C_SEQUENCE_SPEC): Define.
2802	* config/sparc/linux64.h (LINK_GCC_C_SEQUENCE_SPEC): Define.
2803
28042003-09-15  Alexandre Oliva  <aoliva@redhat.com>
2805
2806	* cpplib.c (do_pragma): Remove unnecessary cb_line_change.
2807
28082003-09-14  Alexandre Oliva  <aoliva@redhat.com>
2809
2810	* cppmain.c (cb_line_change): Revert 2003-08-04's change.
2811	* c-lex.c (cb_line_change): Skip line changing whenever
2812	cppmain.c would.
2813
28142003-09-11  Alexandre Oliva  <aoliva@redhat.com>
2815
2816	PR fortran/11522
2817	* dwarf2out.c (gen_inlined_subroutine_die): Emit abstract function
2818	for ultimate origin even if block is abstract.
2819
28202003-09-10  Martin Husemann  <martin@duskware.de>
2821
2822	PR target/11965
2823	* config/sparc/sparc.c (sparc_v8plus_shift): Protect against
2824	constants greater than 63.
2825	* config/sparc/sparc.md (ashlsi3, ashrsi3, lshrsi3): Protect
2826	against constants greater than 31.
2827	(*ashldi3_sp64, *ashrdi3_sp64, *lshrdi3_sp64): Protect against
2828	constants greater than 63.
2829
28302003-09-09  Richard Henderson  <rth@redhat.com>
2831
2832	PR target/12224:
2833	* config/ia64/ia64.c (ia64_expand_move): Properly truncate
2834	result when op0 is SImode.
2835
28362003-09-09  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
2837
2838	* configure.in (gcc_cv_as_ix86_cmov_sun_syntax): Check if
2839	assembler supports Sun syntax for cmov.
2840	* configure: Regenerate.
2841	* config.in: Li{ewise.
2842	* config/i386/i386.c: Rename CMOV_SUN_AS_SYNTAX to
2843	HAVE_AS_IX86_CMOV_SUN_SYNTAX.
2844	* config/i386/sol2.h (CMOV_SUN_AS_SYNTAX): Remove.
2845	Fixes PR target/12101.
2846
28472003-09-09  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
2848
2849	* configure.in (gcc_cv_as_hidden): Disable unless using GNU ld.
2850	* configure: Regenerate.
2851
28522003-09-08  Mark Mitchell  <mark@codesourcery.com>
2853
2854	* mklibgcc.in (libcc.a): Depend on stmp-dirs.
2855	(libgov.a): Likewise.
2856	(libgcc_eh.a): Likewise.
2857
28582003-09-07  Eric Botcazou  <ebotcazou@libertysurf.fr>
2859
2860	PR target/11689
2861	* config/i386/i386.c (memory_address_length): Fix computation when
2862	the base is esp or ebp.
2863
28642003-09-07  Mark Mitchell  <mark@codesourcery.com>
2865
2866	PR c++/11852
2867	* varasm.c (initializer_constant_valid_p): Correct logic for
2868	CONSTRUCTORs.
2869
2870Sun Sep  7 14:53:36 CEST 2003  Jan Hubicka  <jh@suse.cz>
2871
2872	* cfgcleanup.c (try_simplify_condjump): Fix again the preivous patch.
2873
28742003-09-07  Christian Ehrhardt  <ehrhardt@mathematik.uni-ulm.de>
2875
2876	PR optimization/11662
2877	Backport from mainline:
2878
2879	2003-07-10  Denis Chertykov  <denisc@overta.ru>
2880		    Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
2881
2882	* combine.c (gen_binary): Handle the CLOBBER rtx and
2883	don't build a binary operation with it.
2884
2885Sat Sep  6 23:16:35 CEST 2003  Jan Hubicka  <jh@suse.cz>
2886
2887	* cfgcleanup.c (try_simplify_condjump): Fix my previous patch.
2888
2889	PR target/12070
2890	* calls.c (emit_library_call_value_1): Fix saving of BLKmode arguments.
2891
2892	PR opt/12082
2893	* cfgcleanup.c (try_simplify_condjump): Avoid unreachable code warning.
2894
28952003-09-06  Steven Bosscher  <steven@gcc.gnu.org>
2896
2897	PR c/9862
2898	* c-decl.c (c_expand_body): Move return warning from here...
2899	(finish_function): ...to here.
2900
29012003-09-05  Jan Hubicka  <jh@suse.cz>
2902
2903	PR target/8869
2904	* expr.c (convert_modes): Deal properly with integer to vector
2905	constant conversion.
2906
29072003-09-05  Andrew Pinski <pinskia@physics.uc.edu>
2908
2909	PR c/10962
2910	* c-decl.c (field_decl_cmp): Add back function.
2911	(finish_struct): Sort fields if number greater than 15
2912	and no anymous structs/unions.
2913
29142003-09-04  Jakub Jelinek  <jakub@redhat.com>
2915
2916	* config/ia64/libgcc-ia64.ver: Export _Unwind_GetBSP@@GCC_3.3.2.
2917	* config/ia64/unwind-ia64.c (_Unwind_GetBSP): New function.
2918	* unwind.h (_Unwind_GetBSP): New prototype.
2919	* libgcc-std.ver: Add empty GCC_3.3.2 version.
2920	* mkmap-symver.awk: For symbol versions with no exported symbols,
2921	don't put anything into version script, just change all symbol
2922	versions which inherit from it to inherit from its ancestor.
2923
29242003-09-02  Kazuhiro Inaoka  <inaoka.kazuhiro@renesas.com>
2925
2926	This is a fix for PR 10988:
2927	* m32r.c (m32r_print_operand): Correct comment.
2928	(m32r_expand_block_move): Correct the handling of leftover/small
2929	blocks.
2930	(m32r_block_small_immediate_operand): New predicate.
2931	* m32r.md (movstrsi_small_internal): New pattern.
2932	* m32r.h (PREDICATE_CODES): Add m32r_block_small_immediate_operand.
2933	* m32r-protos.h: Add prototype for m32r_block_small_immediate_operand.
2934
29352003-08-25  Richard Henderson  <rth@redhat.com>
2936
2937	* config/i386.i386.c (ix86_return_in_memory): Reformat.  Return true
2938	for 16-byte vector modes if sse not enabled; warn for abi change.
2939	(ix86_value_regno): Only return xmm0 for 16-byte vector types.
2940
29412003-08-25  Zack Weinberg  <zack@codesourcery.com>
2942
2943	* config.gcc (hppa*-*-hpux11*, ia64*-*-hpux*): Remove
2944	commented-out logic to use DCE threads (if present), add
2945	support for POSIX threads.
2946	* config/ia64/hpux.h: Define CPP_SPEC to set appropriate
2947	#defines for -pthread.  Add -lpthread to LIB_SPEC when
2948	-pthread.  In both cases take -mt as a synonym for -pthread
2949	for acc compatibility.
2950	Define GTHREAD_USE_WEAK to 0.
2951	* config/pa/pa-hpux11.h: Likewise for CPP_SPEC and LIB_SPEC.
2952	Remove old logic for DCE threads from LIB_SPEC.
2953	* config/pa/pa64-hpux.h: Define GTHREAD_USE_WEAK to 0.
2954
29552003-08-25  Ulrich Weigand  <uweigand@de.ibm.com>
2956
2957	* combine.c (distribute_notes): Handle REG_ALWAYS_RETURN.
2958
29592003-08-23  Jakub Jelinek  <jakub@redhat.com>
2960
2961	* c-decl.c (pushdecl): Only put decls which finish_struct will do
2962	something about onto incomplete chain.
2963	(finish_struct): If not removing type from incomplete
2964	list, update prev.
2965
29662003-08-23  Alexandre Oliva  <aoliva@redhat.com>
2967
2968	* cppmain.c (cb_line_change): Don't skip line changing while
2969	parsing macro arguments in the top-level context.
2970
29712003-08-22  Mark Mitchell  <mark@codesourcery.com>
2972
2973	* config/ia64/hpux.h (SUPPORTS_INIT_PRIORITY): Define to 0.
2974
2975	* config/ia64/ia64.c (ia64_output_mi_thunk): Support ILP32 mode.
2976
29772003-08-21  Kazu Hirata  <kazu@cs.umass.edu>
2978
2979	PR target/11805
2980	* config/h8300/h8300.md (two anonymous patterns): Remove.
2981
29822003-08-20  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
2983
2984	* stmt.c (expand_asm_operands): Avoid string concatenation.
2985	* tree.c (default_flag_random_seed): Avoid ISO C definition.
2986	* varasm.c (output_constant_def): Delete unused variable.
2987
29882003-08-18  Matt Kraai  <kraai@alumni.cmu.edu>
2989
2990	PR c/11207
2991	* c-typeck.c (set_init_index): Check for negative index.
2992
29932003-08-14  Mark Mitchell  <mark@codesourcery.com>
2994
2995	* version.c (version_string): Use "prerelease" not "experimental".
2996
29972003-08-11  James E Wilson  <wilson@tuliptree.org>
2998
2999	PR optimization/11319
3000	PR target/10021
3001	* alias.c (find_base_value, case REG): Return 0 not src if no base
3002	found.
3003
30042003-08-11  Kean Johnston  <jkj@sco.com>
3005
3006	* fixinc/inclhack.def (sco_math): Updated test text and select trigger
3007	according to bkorb's review.
3008	* fixinc/inclhack.def (sco_regset): Ditto.
3009	* fixinc/inclhack.def (AAB_svr4_replace_byteorder): Remove all mach
3010	lines so that this file is unconditionally replaced.
3011	* fixinc/inclhack.def (sco_string): Use ansi/string.h as the first file
3012	to check so that the Ultrix string.h check doesnt overwrite the test
3013	case with its replacement text.
3014	* fixinc/fixincl.x: Regenerated
3015	* fixinc/tests/base/math.h: Updated sco_math result text
3016	* fixinc/tests/base/ansi/string.h: New file.
3017	* fixinc/tests/base/sys/regset.h: Compacted result text to fewer lines.
3018
30192003-08-11  Dale Johannesen  <dalej@apple.com>
3020	* config/rs6000/rs6000.md (ctrsi, ctrdi):  Reenable handling of
3021	decrement-and-branch farther away than 32 bits.
3022
30232003-08-10  Zack Weinberg  <zack@codesourcery.com>
3024
3025	Backport the following changes from mainline:
3026
3027    2003-05-08  David Mosberger <davidm@hpl.hp.com>
3028
3029	* unwind-libunwind.c (_Unwind_FindEnclosingFunction): New.
3030
3031    2003-04-03  Richard Henderson  <rth@redhat.com>
3032
3033	* unwind-libunwind.c (_Unwind_GetCFA): New.
3034
3035    2003-03-27  David Mosberger <davidm@hpl.hp.com>
3036
3037	* unwind-libunwind.c (uw_frame_state_for): Adjust for libunwind
3038	v0.9 API change: replace read of UNW_REG_HANDLER with
3039	unw_get_proc_info().
3040	(_Unwind_GetLanguageSpecificData): Replace read of UNW_REG_LSDA
3041	with unw_get_proc_info().
3042	(_Unwind_GetRegionStart): Replace UNW_REG_PROC_START with
3043	unw_get_proc_info().
3044
3045    2003-03-13  Nathanael Nerode  <neroden@gcc.gnu.org>
3046
3047	* unwind-libunwind.c: Replace "GNU CC" with "GCC".
3048
3049    2002-10-02  David Mosberger-Tang  <David.Mosberger@acm.org>
3050
3051	* config/t-libunwind: Mention unwind-sjlj.c.
3052	* unwind-libunwind.c: Change #ifdef __USING_LIBUNWIND_EXCEPTIONS__
3053	to #ifndef __USING_SJLJ_EXCEPTIONS__.
3054
3055	* configure.in: Move sjlj-exceptions and --enable-libunwind-exceptions
3056	before inclusion of config.gcc, but after configuring the compiler etc.
3057	Determine default value for --enable-libunwind-exceptions based on
3058	whether the host has a libunwind library (not guaranteed to be correct,
3059	but it's a reasonable first guess and can always be overridden with an
3060	explicit --enable/disable-libunwind-exceptions.
3061	* config.gcc: For target ia64*-*-linux*, mention t-libunwind as a
3062	tmake_file when $use_libunwind_exceptions is enabled.
3063	* Makefile.in: Update comment: LIB2ADDEH is updated not just by
3064	ia64 (e.g., config/t-linux also updates it).
3065	* gcc.c (init_spec) [USE_LIBUNWIND_EXCEPTIONS]: Mention -lunwind
3066	along with the shared version of libgcc since the latter requires
3067	the former.
3068
3069	* unwind-libunwind.c: New file.
3070	* config/t-libunwind: Ditto.
3071
30722003-08-10  Richard Henderson  <rth@redhat.com>
3073
3074	PR target/11693
3075	* config/ia64/ia64.c (ia64_emit_nops): Skip L slots when
3076	padding before inline assembly.
3077
30782003-08-10  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
3079
3080	PR c++/11712
3081	* pa-hpux.h, pa-hpux10.h, pa-hpux11.h (TARGET_OS_CPP_BUILTINS): Define
3082	__STDC_EXT__ when using C++ dialect.
3083
30842003-08-08  Kean Johnston  <jkj@sco.com>
3085
3086	PR target/9877
3087	PR target/8336
3088	* config.gcc (sco3.2v5*): Use elfos.h and dbxelf.h in tm_file;
3089	Eliminate need for t-sco5gas target fragment.
3090	No longer build crt{begin,end}S.o, that were used for COFF support.
3091	* tlink.c (recompile_files): Add missing = in putenv() calls.
3092	* unwind-dw2.c (_Unwind_GetCFA): Correct return cast.
3093	* config/i386/sco5.h: Major overhaul to remove all COFF support
3094	* config/i386/t-sco5: Multilib for PIC support
3095	* config/i386/t-sco5gas: Remove
3096	* config/i386/i386.c: Check value as well as presence of
3097	SUPPORTS_ONE_ONLY
3098	* doc/install.texi: Update for modern SCO instructions
3099	* fixinc/check.tpl: Allow user to specify diff program for make check
3100	* fixinc/inclhack.def: Fix several SCO header files, namely string.h,
3101	math.h, sys/byteorder.h and sys/regset.h.
3102	* fixinc/fixincl.x: Regenerate
3103	* fixinc/tests/base/math.h: Update
3104	* fixinc/tests/base/sys/byteorder.h: Update
3105	* fixinc/tests/base/string.h: Added
3106	* fixinc/tests/base/sys/regset.h: Added
3107	* testsuite/gcc.dg/nest.c: Allow failure on SCO (-pg not supported)
3108
31092003-08-08  Roger Sayle  <roger@eyesopen.com>
3110
3111	PR c/11370
3112	* calls.c (emit_call_1): Don't bother popping the arguments off of
3113	the stack after a noreturn function call;  The adjustment is dead.
3114	(expand_call): Likewise.
3115
31162003-08-08  SUGIOKA Toshinobu  <sugioka@itonet.co.jp>
3117
3118	* config.gcc: Do not override sh/t-linux with sh/t-le.
3119
31202003-08-08  Kaz Kojima  <kkojima@gcc.gnu.org>
3121
3122	* config/sh/linux.h (SUBTARGET_LINK_SPEC): Don't set rpath.
3123	(LIB_SPEC): Set -lpthread always when -pthread set.  Set -lieee
3124	when -mieee-fp set and -shared not set.
3125
31262003-08-08  Richard Henderson  <rth@redhat.com>
3127
3128	PR target/11535
3129	* config/ia64/ia64.c (ia64_initial_elimination_offset): Remove
3130	RETURN_ADDRESS_POINTER_REGNUM.
3131	(ia64_expand_prologue): Don't frob it.
3132	(ia64_output_function_epilogue): Likewise.
3133	(ia64_return_addr_rtx): New.
3134	(ia64_split_return_addr_rtx): New.
3135	* config/ia64/ia64-protos.h: Update.
3136	* config/ia64/ia64.h (FIRST_PSEUDO_REGISTER): Decrement.
3137	(RETURN_ADDRESS_POINTER_REGNUM): Remove.
3138	(GENERAL_REGNO_P): Don't check it.
3139	(AR_*_REGNUM): Renumber.
3140	(FIXED_REGISTERS): Remove RETURN_ADDRESS_POINTER_REGNUM.
3141	(CALL_USED_REGISTERS, CALL_REALLY_USED_REGISTERS): Likewise.
3142	(REG_ALLOC_ORDER, REG_CLASS_CONTENTS): Likewise.
3143	(ELIMINABLE_REGS, REGISTER_NAMES): Likewise.
3144	(RETURN_ADDR_RTX): Use ia64_return_addr_rtx.
3145	* config/ia64/ia64.md (UNSPEC_RET_ADDR): New.
3146	(movdi_ret_addr): New.
3147
31482003-08-03  Geoffrey Keating  <geoffk@apple.com>
3149
3150	PR 11709
3151	* varasm.c (output_constant_def_contents): Use
3152	ASM_DECLARE_CONSTANT_NAME if defined.
3153	* doc/tm.texi (Label Output): Document ASM_DECLARE_CONSTANT_NAME.
3154	* config/darwin.h (ASM_DECLARE_OBJECT_NAME): Ensure zero-sized
3155	objects get at least one byte to prevent assembler problems.
3156	(ASM_DECLARE_CONSTANT_NAME): New.
3157
31582003-08-07  Mark Mitchell  <mark@codesourcery.com>
3159
3160	* version.c (version_string): Reset to prerelease.
3161	* doc/include/gcc-common.texi: Update version.
3162
31632003-08-04  Release Manager
3164
3165	* GCC 3.3.1 Released.
3166
31672003-08-04  Release Manager
3168
3169	* GCC 3.3.1 Released.
3170
31712003-08-03  Neil Booth  <neil@daikokuya.co.uk>
3172
3173	PR preprocessor/11534
3174	* cppexp.c (parse_defined): Warn only if -pedantic.
3175
31762003-08-03  Mark Mitchell  <mark@codesourcery.com>
3177
3178	* Makefile.in (ORDINARY_FLAGS_TO_PASS): Pass AR.
3179
3180	* Makefile.in (STAGE2_FLAGS_TO_PASS): Pass AR_FOR_TARGET and
3181	RANLIB_FOR_TARGET.
3182	(stage1_build): Likewise.
3183
31842003-08-03  Jan Hubicka  <jh@suse.cz>
3185
3186	PR 10510
3187	* config/pa/pa.h (MAYBE_FP_REG_CLASS_P): New.
3188	(SECONDARY_MEMORY_NEEDED): Use it.
3189
31902003-08-01  Geoffrey Keating  <geoffk@apple.com>
3191
3192	PR 11709 (partial fix)
3193	* config/rs6000/rs6000.c (rs6000_output_function_epilogue): Don't
3194	insert a label at the end of an function under Mach-O.
3195
3196	PR 11313
3197	* c-pragma.c (maybe_apply_pragma_weak): Don't get DECL_ASSEMBLER_NAME
3198	when it's not needed.
3199
32002003-07-29  Richard Henderson  <rth@redhat.com>
3201
3202	PR target/10681
3203
3204	2003-06-27  J"orn Rennecke <joern.rennecke@superh.com>
3205	* flow.c (propagate_one_insn): Use proper test for a register
3206	being part of the return value.
3207
3208	2003-06-26  Richard Henderson  <rth@redhat.com>
3209	* flow.c (propagate_one_insn): Preserve live-at-end registers
3210	across tail calls.
3211
3212	2003-06-26  Richard Henderson  <rth@redhat.com>
3213	* config/ia64/ia64.c (ia64_expand_call): Don't add ar.pfs for sibcalls.
3214	(ia64_split_call): Only load descriptor for GP register inputs.
3215	(ia64_expand_epilogue): Check current_frame_info.mask not
3216	current_function_is_leaf to restore ar.pfs.
3217
32182003-07-26  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
3219
3220	* doc/install.texi (Testing): Adjust required versions of DejaGnu.
3221
32222003-07-24  Aldy Hernandez  <aldyh@redhat.com>
3223
3224	Backport the folling patch.
3225
3226	2003-04-01  Aldy Hernandez  <aldyh@redhat.com>
3227
3228	PR/8878
3229	* expr.c (expand_expr): Handle VECTOR_CST.
3230	(const_vector_from_tree): New.
3231
3232	* varasm.c (output_constant): Handle VECTOR_CST.
3233
3234	* c-typeck.c (digest_init): Build a vector constant from a
3235	VECTOR_TYPE.
3236
32372003-07-23  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
3238
3239	PR target/11607 and PR target/11516
3240	* pa.md (extzv, extv, insv): Revert latter half of last patch.
3241
32422003-07-23  Mark Mitchell  <mark@codesourcery.com>
3243
3244	PR optimization/10679
3245	* tree-inline.c (inlinable_function_p): Honor MIN_INLINE_INSNS.
3246
32472003-07-22  Bob Wilson  <bob.wilson@acm.org>
3248
3249	* unwind-c.c (PERSONALITY_FUNCTION): Delete duplicate define.
3250
32512003-07-23  Dave Fluri  <dave.fluri@onlink.net>
3252
3253	* doc/extend.texi: Fixes to spelling, grammar, and diction.
3254
32552003-07-21  H.J. Lu <hongjiu.lu@intel.com>
3256
3257	PR optimization/11599
3258	* config/ia64/ia64.md (prefetch): Support predicate.
3259
32602003-07-17  Eric Botcazou  <ebotcazou@libertysurf.fr>
3261
3262	PR optimization/11536
3263	* unroll.c (loop_iterations): Do not replace a register holding
3264	the final value by its equivalent before the loop if it is not
3265	invariant.
3266
32672003-07-21  Ben Elliston  <bje@wasabisystems.com>
3268
3269	* doc/invoke.texi (V850 Options): Spelling fixes.
3270
32712003-07-21  Lisa M. Goldstein  <opus@gnu.org>
3272
3273	* doc/invoke.texi: Fixes to style, grammar and diction.
3274
32752003-07-20  Mark Mitchell  <mark@codesourcery.com>
3276
3277	PR debug/11279
3278	* dwarf2out.c (gen_enumeration_type_die): Remember that
3279	enumerators can be unsigned.
3280
32812003-07-19  Kelley Cook  <kelleycook@wideopenwest.com>
3282
3283	* c-tree.texi: Backport changes from mainline.
3284	* c-tree.texi: Ditto.
3285	* collect2.texi: Ditto.
3286	* cpp.texi: Ditto.
3287	* cppopts.texi: Ditto.
3288	* extend.texi: Ditto.
3289	* fragments.texi: Ditto.
3290	* headerdirs.texi: Ditto.
3291	* install.texi: Ditto.
3292	* invoke.texi: Ditto.
3293	* md.texi: Ditto.
3294	* portability.texi: Ditto.
3295	* rtl.texi: Ditto.
3296	* sourcebuild.texi: Ditto.
3297	* trouble.texi: Ditto.
3298
32992003-07-19  Kelley Cook  <kelleycook@wideopenwest.com>
3300
3301	PR optimization/4490
3302	* doc/invoke.texi (m96bit-long-double, m128bit-long-double):  Reword
3303	documentation to accurately reflect what these options do.
3304
33052003-07-18  Richard Henderson  <rth@redhat.com>
3306	    David S. Miller  <davem@redhat.com>
3307
3308	PR target/11556
3309	* optabs.c (prepare_operand): Fail gracefully instead of abort
3310	if the predicate doesn't satisfy.
3311	(gen_cond_trap): Allow prepare_operand to fail.
3312	Pass correct opnum argument to prepare_operand.
3313
33142003-07-18  Eric Botcazou  <ebotcazou@libertysurf.fr>
3315
3316	PR optimization/11083
3317	* toplev.c (rest_of_compilation): Delete unreachable blocks
3318	if dead edges were purged after the addressof pass.
3319
33202003-07-17  Mark Mitchell  <mark@codesourcery.com>
3321
3322	PR optimization/11557
3323	* calls.c (flags_from_decl_or_type): Do not set ECF_LIBCALL_BLOCK
3324	unless we know which function is being called.
3325
33262003-07-17  Nathanael Nerode  <neroden@gcc.gnu.org>
3327
3328	PR bootstrap/11043
3329	* config/arc/t-arc: Replace bogus references to "x-crtinit.o",
3330	"x-crtfini.o" with "crtinit.o", "crtfini.o".
3331
33322003-07-17  Eric Botcazou  <ebotcazou@libertysurf.fr>
3333
3334	PR other/11466
3335	* doc/invoke.texi (SPARC Options): Document "-mlittle-endian"
3336	and its restrictions for the SPARC64 port.
3337
3338	Backport from mainline:
3339	2003-06-13  Florian Weimer  <fw@deneb.enyo.de>
3340
3341	* doc/invoke.texi (SPARC Options): Document "-mimpure-text".
3342
33432003-07-17  Eric Botcazou <ebotcazou@libertysurf.fr>
3344	    Phil Edwards <phil@jaj.com>
3345
3346	* doc/install.texi (*-*-solaris2*): Document the step-by-step
3347	procedure to bootstrap and install.
3348	Document the preference for the legacy Sun tools in /usr/bin
3349	over the POSIX tools in /usr/xpg4/bin for the build process.
3350
33512003-07-16  Richard Henderson  <rth@redhat.com>
3352
3353	PR target/10907
3354	* config/ia64/ia64.c (ia64_epilogue_uses): GP is live at end
3355	even with !TARGET_CONST_GP.
3356	(ia64_function_ok_for_sibcall): Reject non-local functions.
3357
33582003-07-15  Geoffrey Keating  <geoffk@apple.com>
3359
3360	* config/darwin.c (machopic_select_section): Use decl_readonly_section
3361	to do most of the work.
3362
33632003-07-15  David S. Miller  <davem@redhat.com>
3364
3365	* config/sparc/sparc.c (sparc_nonflat_function_epilogue): Only
3366	emit nop if the last real insn is CALL_INSN.
3367
33682003-07-15  Loren James Rittle  <ljrittle@acm.org>
3369
3370	* config/i386/freebsd.h (SET_ASM_OP): Remove.
3371	(SUBTARGET_OVERRIDE_OPTIONS): Handle TARGET_64BIT case.
3372	(ASM_COMMENT_START, ASM_APP_ON, ASM_APP_OFF, DBX_REGISTER_NUMBER
3373	 MCOUNT_NAME, SIZE_TYPE, PTRDIFF_TYPE, WCHAR_TYPE_SIZE): Whitespace.
3374
33752003-07-15  Mark Mitchell  <mark@codesourcery.com>
3376
3377	PR debug/11473
3378	* dbxout.c (dbxout_type): Use TYPE_SIZE to determine the sizes of
3379	base classes.
3380
33812003-07-15  James A. Morrison  <ja2morri@student.math.uwaterloo.ca>
3382
3383	* doc/include/texinfo.tex: Upgrade to texinfo 4.6.
3384
33852003-07-15  Eric Botcazou  <ebotcazou@libertysurf.fr>
3386
3387	PR optimization/11320
3388	* sched-int.h (struct deps) [reg_conditional_sets]: New field.
3389	(struct sched_info) [compute_jump_reg_dependencies]: New prototype.
3390	* sched-deps.c (sched_analyze_insn) [JUMP_INSN]: Update call to
3391	current_sched_info->compute_jump_reg_dependencies. Record which
3392	registers are used and which registers are set by the jump.
3393	Clear deps->reg_conditional_sets after a barrier.
3394	Set deps->reg_conditional_sets if the insn is a COND_EXEC.
3395	Clear deps->reg_conditional_sets if the insn is not a COND_EXEC.
3396	(init_deps): Initialize reg_conditional_sets.
3397	(free_deps): Clear reg_conditional_sets.
3398	* sched-ebb.c (compute_jump_reg_dependencies): New prototype.
3399	Mark registers live on entry of the fallthrough block and conditionally
3400	set as set by the jump. Mark registers live on entry of non-fallthrough
3401	blocks as used by the jump.
3402	* sched-rgn.c (compute_jump_reg_dependencies): New prototype.
3403	Mark new parameters as unused.
3404
34052003-07-14  Mark Mitchell  <mark@codesourcery.com>
3406
3407	PR debug/11098
3408	* integrate.c (copy_decl_for_inlining): Do not mark copied decls
3409	as DECL_ABSTRACT.
3410
34112003-07-14  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
3412
3413	PR optimization/11440
3414	* gcse.c (try_replace_reg): Don't attach notes to ZERO_EXTRACT or
3415	SIGN_EXTRACT SETs.
3416
34172003-07-13  Aaron W. LaFramboise  <awlaframboise@aol.com>
3418
3419	* config/i386/gthr-win32.c (__GTHREAD_HIDE_WIN32API): Define to 1.
3420
34212003-07-13  Roger Sayle  <roger@eyesopen.com>
3422
3423	PR optimization/11059
3424	* expr.c (can_store_by_pieces): Return true if length is zero.
3425	(store_by_pieces): Do nothing if length is zero.
3426	(clear_by_pieces): Do nothing if length is zero.
3427	(clear_storage): Do nothing if length is zero.
3428	(store_constructor): Simplify code when size is zero, or the
3429	target has already been cleared.  This avoids emitting a
3430	blockage instruction when initializing empty structures.
3431
34322003-07-13  Richard Henderson  <rth@redhat.com>
3433
3434	* libgcc-std.ver (GCC_3.3.1): Export __gcc_personality_sj0,
3435	__gcc_personality_v0.
3436
34372003-07-11  Dara Hazeghi  <dhazeghi@yahoo.com>
3438
3439	PR optimization/10877
3440	* doc/install.tex: Update required binutils for i?86-*-linux*
3441
34422003-07-11  Ben Elliston  <bje@redhat.com>
3443
3444	PR c++/1607
3445	* doc/extend.texi (Function Attributes): Document the effect of
3446	the C++ "this" parameter on the counting of arguments for the
3447	"format" and "format_arg" attributes.
3448
34492003-07-11  Danny Smith  <dannysmith@users.sourceforge.net>
3450
3451	Backport from mainline.
3452
3453	2003-05-13  Richard Henderson  <rth@redhat.com>
3454
3455	* c-decl.c (duplicate_decls): Re-invoke make_decl_rtl if
3456	the old decl had instantiated DECL_RTL.
3457
3458	2003-05-21  Danny Smith  <dannysmitx@users.sourceforge.net>
3459
3460	PR c++/9738
3461	* config/i386/winnt.c (i386_pe_encode_section_info): Enable
3462	even if not first.
3463
3464	2003-07-04  Danny Smith  <dannysmith@users.sourceforge.net>
3465
3466	PR c++/5287, PR c++/7910, PR c++/11021
3467	* config/i386/winnt.c (ix86_handle_dll_attribute): Don't add
3468	dllimport attribute if function is defined at declaration, but
3469	report error instead. Likewise for dllimport'd variable
3470	definitions.  Set implicit TREE_PUBLIC for dllimport'd variables
3471	declared within functions, Report error if dllimport or dllexport
3472	symbol is not global.
3473	(i386_pe_dllimport_p): Ignore dllimport attribute of functions
3474	if defined after declaration or if inlined. Don't allow definition
3475	of static data members of C++ classes. Don't dllimport virtual
3476	methods.
3477	(i386_pe_mark_dllexport): Warn about inconsistent dll attributes.
3478	(i386_pe_mark_dllimport): Remove unnecessary checks.
3479	(i386_pe_encode_section_info): Warn if the dllimport attribute
3480	and symbol prefix have been instantiated and then overridden.
3481
3482	* doc/extend.texi: Document dllimport and dllexport attributes.
3483
34842003-07-10  James E Wilson  <wilson@tuliptree.org>
3485
3486	PR optimization/9745
3487	* loop.c (loop_iv_add_mult_emit_before): Call loop_regs_update before
3488	loop_insn_emit_before.
3489	(loop_iv_add_mult_sink, loop_iv_add_mult_hoist): Likewise.
3490
34912003-07-10  Dara Hazeghi  <dhazeghi@yahoo.com>
3492
3493	PR bootstrap/10758
3494	* doc/install.texi: Document requirements for ia64-*-hpux* target.
3495
34962003-07-09  Mark Mitchell  <mark@codesourcery.com>
3497
3498	PR c++/10032
3499	* doc/invoke.texi (C++ Dialect Options): Change documentation of
3500	-fpermissive.
3501
35022003-07-10  Matt Kraai  <kraai@alumni.cmu.edu>
3503
3504	* doc/invoke.texi: Fix misspelling of "@item".
3505
35062003-07-09  Hans-Peter Nilsson  <hp@bitrange.com>
3507
3508	* doc/install.texi (Configuration): Document the valgrind option
3509	to --enable-checking.
3510
35112003-07-08  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
3512
3513	PR Target/11453
3514	* pa.md: Disparage all mtsar constraints.
3515	(extzv, extv, insv): Don't fail on length of {32|64}.
3516
35172003-07-08  James E Wilson  <wilson@tuliptree.org>
3518
3519	PR target/10021
3520	* emit-rtl.c (set_mem_attribute_minus_bitpos): When handle ARRAY_REF,
3521	loop over new variable t2 instead of t.
3522
35232003-07-08  Stephane Carrez  <stcarrez@nerim.fr>
3524
3525	* config/m68hc11/m68hc11.h (HAVE_AS_DWARF2_DEBUG_LINE): Don't define
3526	as .file/.loc directives are incompatible with linker relaxation.
3527
35282003-07-08  Jakub Jelinek  <jakub@redhat.com>
3529
3530	PR c/11420
3531	* config/i386/i386.c (ix86_check_movabs): New function.
3532	* config/i386/i386-protos.h (ix86_check_movabs): New prototype.
3533	* config/i386/i386.md (movabs[shqd]i_1_rex64): Kill broken alternative.
3534	(movabs[shqd]i_[12]_rex64): Add ix86_check_movabs check to conditions.
3535
3536	* config/i386/i386.md (movdi_1_rex64): Set Y<-m alternative's type
3537	to ssemov.
3538
35392003-07-08  Jakub Jelinek  <jakub@redhat.com>
3540
3541	* unroll.c (reg_dead_after_loop): Check for reg in REG_EQUAL and
3542	REG_EQUIV notes as well.
3543
35442003-07-07  Dale Johannesen <dalej@apple.com>
3545
3546	PR 10900
3547	* config/rs6000/darwin-tramp.asm:  Fix trampolines.
3548
35492003-07-07 Andrew Pinski <pinskia@physics.uc.edu>
3550
3551	PR optimization/11368
3552	* doc/invoke.texi (-falign-functions): Document that
3553	when n is zero then a machine-dependent default is used.
3554	(-falign-labels): Document that when n is zero then a
3555	machine-dependent default is used and that -falign-labels =1
3556	is equivalent to -fno-align-labels.
3557	(-falign-loops): Likewise.
3558	(-falign-jumps): Likewise.
3559
35602003-07-07  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
3561	    Eric Botcazou  <ebotcazou@libertysurf.fr>
3562
3563	PR optimization/11198
3564	* alias.c (objects_must_conflict_p): Return 1 if the types have
3565	the same alias set, not if the alias sets only conflict.
3566
35672003-07-06  Matthias Klose  <doko@debian.org>
3568
3569	Backport from mainline:
3570
3571	2003-07-04  Zack Weinberg  <zack@codesourcery.com>
3572
3573	* doc/extend.texi: Delete entire section on multiline strings.
3574
35752003-07-04  H.J. Lu <hongjiu.lu@intel.com>
3576
3577	* Makefile.in: Replace PWD with PWD_COMMAND.
3578
35792003-07-03  Eric Botcazou  <ebotcazou@libertysurf.fr>
3580
3581	PR optimization/11304
3582	Backport from mainline:
3583
3584	2003-04-18  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
3585
3586	* cfgcleanup.c (flow_find_cross_jump): Use INSN_P, not active_insn_p.
3587
35882003-07-03  Roger Sayle  <roger@eyesopen.com>
3589
3590	PR target/10700
3591	* fold-const.c (extract_muldiv_1): There's nothing that can be done
3592	if the expression is a SAVE_EXPR.
3593
35942003-07-03  Eric Botcazou  <ebotcazou@libertysurf.fr>
3595
3596	PR optimization/11381
3597	* simplify-rtx.c (simplify_relational_operation): Check that
3598	two equal operands have no side-effects before simplifying
3599	the comparison.
3600
36012003-07-01  Zack Weinberg  <zack@codesourcery.com>
3602
3603	PR 2873
3604	* fixinc/inclhack.def (avoid_wchar_t_type): Add bypass
3605	expressions to prevent triggering on recent curses.h,
3606	linux/nls.h, or X11/Xlib.h.
3607	(stdio_va_list): Add _G_va_list to bypass pattern.
3608	(strict_ansi_not): Add bypass pattern for __SCO_VERSION__.
3609	* fixinc/fixincl.x: Regenerate.
3610
36112003-07-02  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
3612
3613	* fixinc/inclhack.def (irix_stdio_va_list): Apply to IRIX 6.5
3614	<internal/stdio_core.h> too.
3615	(stdio_va_list): Apply to IRIX 6.5 <internal/stdio_core.h> and
3616	<internal/wchar_core.h> too.
3617	Substitute va_list uses in inline definition.
3618	* fixinc/fixincl.x: Regenerate.
3619
36202003-07-01  Richard Henderson  <rth@redhat.com>
3621	    (blame to: Loren James Rittle  <ljrittle@acm.org>)
3622
3623	* real.h (ieee_extended_intel_96_round_53_format): New.
3624	* real.c (ieee_extended_intel_96_round_53_format): New.
3625	* config/i386/freebsd.h (SUBTARGET_OVERRIDE_OPTIONS): Use it
3626	for XFmode and TFmode.
3627
36282003-07-01  Kazu Hirata  <kazu@cs.umass.edu>
3629
3630	* doc/contrib.texi: Fix typos.
3631	* doc/sourcebuild.texi: Likewise.
3632
36332003-06-27  Gunther Nikl  <gni@gecko.de>
3634
3635	PR target/11014
3636	* config/m68k/m68k.c (m68k_output_mi_thunk): Use correct assembly
3637	syntax for MIT / MOTOROLA.
3638
36392003-06-27  Ulrich Weigand  <uweigand@de.ibm.com>
3640
3641	* config/s390/s390.h (SECONDARY_OUTPUT_RELOAD_CLASS): Define.
3642	* config/s390/s390.c (s390_secondary_output_reload_class): New function.
3643	* config/s390/s390-protos.h (s390_secondary_output_reload_class):
3644	Declare it.
3645	* config/s390/s390.md ("reload_outti", "reload_outdi",
3646	"reload_outdf"): New expanders.
3647
3648	* config/s390/s390.md ("movti" + splitters): Handle non-offsettable
3649	memory operands as source.
3650	("movdi" + splitters): Likewise.
3651	("movdf" + splitters): Likewise.
3652	* config/s390/s390.c (s390_split_ok_p): New function.
3653	* config/s390/s390-protos.h (s390_split_ok_p): Declare it.
3654
36552003-06-27  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
3656
3657	* config/mips/mips.md (trap): Use break 0 when !TARGET_GAS.
3658
3659	* config/mips/iris6-o32.h (MIPS_ISA_DEFAULT): Remove.
3660	(MIPS_CPU_STRING_DEFAULT): Redefine to mips2.
3661
3662	* config/mips/mips.c (TARGET_ASM_UNALIGNED_DI_OP) [TARGET_IRIX5 &&
3663	!TARGET_IRIX6]: Define as NULL.
3664
3665	* config/mips/iris5gas.h (MDEBUG_ASM_SPEC): Override to match
3666	DWARF 2 default.
3667
3668	* config/mips/dbxmdebug.h: New file.
3669	* config.gcc (mips-sgi-irix6*o32, mips-sgi-irix5*): Use it with
3670	gas and --with-stabs.
3671
36722003-06-27  Andreas Schwab  <schwab@suse.de>
3673
3674	* config.gcc (m68k-*-linux*): Don't override extra_parts and
3675	gnu_ld, use the generic *-*-linux* settings instead.
3676
36772003-06-26  Roger Sayle  <roger@eyesopen.com>
3678
3679	PR optimization/11054
3680	* rtlanal.c (reg_overlap_mentioned_p): Handle ZERO_EXTRACT
3681	and SIGN_EXTRACT.
3682
36832003-06-25  Zack Weinberg  <zack@codesourcery.com>
3684
3685	PR bootstrap/3163
3686	* aclocal.m4 (AC_FUNC_MMAP_ANYWHERE, AC_FUNC_MMAP_FILE): Delete.
3687	(gcc_AC_FUNC_MMAP_BLACKLIST): New.
3688	* configure.in: Check for sys/mman.h and mmap in AC_CHECK_HEADERS
3689	and AC_CHECK_FUNCS lists, respectively.  Use
3690	gcc_AC_FUNC_MMAP_BLACKLIST, not AC_FUNC_MMAP_ANYWHERE nor
3691	AC_FUNC_MMAP_FILE.
3692	* configure, config.in: Regenerate.
3693
3694	* ggc-page.c (init_gcc): Call fatal_io_error, not abort,
3695	if opening /dev/zero fails.
3696
36972003-06-25  Roger Sayle  <roger@eyesopen.com>
3698
3699	* builtins.c (expand_builtin_strcpy): Construct new argument list
3700	manually instead of using chainon to modify the original arglist.
3701	(expand_builtin_strcmp): Likewise.
3702
37032003-06-25  David O'Brien  <obrien@FreeBSD.org>
3704
3705	* config/i386/i386.h (builtin_define): Remove duplicate __amd64
3706	and __amd64__.
3707
37082003-06-25	Dhananjay Deshpande <dhananjayd@kpitcummins.com>
3709
3710	* config/sh/sh.c (sh_register_move_cost):
3711	Add case for moving between MAC_REGS.
3712
37132003-06-24  Jerry Quinn  <jlquinn@optonline.net>
3714
3715	PR other/11280
3716	* gcc/doc/invoke.texi (Optimization Options): Remove -Os from
3717	-freorder-functions description.
3718
37192003-06-25  Richard Sandiford  <rsandifo@redhat.com>
3720
3721	PR target/11084
3722	* config/mips/mips.c (mips_expand_prologue): Fix setting of regno
3723	for the end of a variable argument list.
3724
37252003-06-25  Josef Zlomek  <zlomekj@suse.cz>
3726
3727	* dwarf2out.c (gen_field_die): Return if type of decl is error mark.
3728
37292003-06-24  Falk Hueffner  <falk.hueffner@student.uni-tuebingen.de>
3730
3731	PR target/11260
3732	* config/alpha/alpha.md (sqrtdf2): Fix operand substitution.
3733
37342003-06-24  Jakub Jelinek  <jakub@redhat.com>
3735
3736	* builtins.c (expand_builtin_strcpy): Don't evaluate side-effects in
3737	src twice.
3738
37392003-06-23  Jakub Jelinek  <jakub@redhat.com>
3740
3741	* config/s390/s390.c (s390_output_mi_thunk): Avoid .plt in -m31
3742	mode, as it requires pic register loaded.
3743
37442003-06-23  Kazu Hirata  <kazu@cs.umass.edu>
3745
3746	* doc/extend.texi: Fix typos.
3747	* doc/md.texi: Likewise.
3748
37492003-06-23  Roger Sayle  <roger@eyesopen.com>
3750	    Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
3751
3752	* doc/contrib.texi (Contributors): Add a note on testing and
3753	remove duplicates from testers list.
3754
37552003-06-23  Kazu Hirata  <kazu@cs.umass.edu>
3756
3757	* doc/invoke.texi: Document dump options, dT and dW.
3758
37592003-06-23  Andreas Schwab  <schwab@suse.de>
3760
3761	* doc/invoke.texi: Remove leading `-' from options in index.
3762
37632003-06-22  Kazu Hirata  <kazu@cs.umass.edu>
3764
3765	* doc/invoke.texi: Document dump, .cfg.
3766
37672003-06-22  Kazu Hirata  <kazu@cs.umass.edu>
3768
3769	* doc/invoke.texi: Alphabetize dump options.
3770
37712003-06-22  Kazu Hirata  <kazu@cs.umass.edu>
3772
3773	* doc/invoke.texi: Remove a duplicate -dk.
3774
37752003-06-22  Kazu Hirata  <kazu@cs.umass.edu>
3776
3777	* doc/rtl.texi: Fix the @findex for pre_modify.
3778
3779Sat Jun 21 13:37:52 CEST 2003  Jan Hubicka  <jh@suse.cz>
3780
3781	* i386.c (ix86_va_arg): Fix allocation of temporary slot.
3782
37832003-06-21  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
3784
3785	* doc/contrib.texi (Contributors): Use Windows instead of Win32.
3786
3787	Update Andreas Jaeger's entry.
3788
3789	Merge the two entries of Kaveh Ghazi, David Edelsohn, and
3790	Loren J. Rittle.
3791
37922003-06-20  Geoffrey Keating  <geoffk@apple.com>
3793
3794	PR c++/9393
3795	* doc/invoke.texi (Debugging Options): Document -frandom-seed.
3796	* configure.in: Check for gettimeofday.
3797	* tree.c (flag_random_seed): Define.
3798	(default_flag_random_seed): New.
3799	(append_random_chars): Use flag_random_seed rather than trying
3800	to acquire randomness here.
3801	* tree.h (default_flag_random_seed): Declare.
3802	* toplev.c (display_help): Add -frandom-seed and -fstack-limit-*
3803	descriptions.
3804	(decode_f_option): Handle -frandom-seed.
3805	(print_switch_values): Call default_flag_random_seed.
3806	* flags.h (flag_random_seed): Declare.
3807	* configure: Regenerate.
3808	* config.in: Regenerate.
3809
38102003-06-20  Mark Mitchell  <mark@codesourcery.com>
3811
3812	PR c++/10888
3813	* tree-inline.c (expand_call_inline): Do not warn about failing to
3814	inline functions declared in system headers.
3815	* doc/invoke.texi (-Winline): Expand on documentation.
3816
38172003-06-20  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
3818
3819	* configure.in (gcc_cv_as_gstabs_flag): Disable if assembler warns.
3820	* configure: Regenerate.
3821	Fixes PR driver/9362.
3822
38232003-06-19  Vladimir Makarov  <vmakarov@redhat.com>
3824
3825	* haifa-sched.c (max_isse): Backport from the mainline.
3826	(choice_entry): New structure.
3827	(choice_stack, cycle_issued_insns, max_lookahead_tries,
3828	cached_first_cycle_multipass_dfa_lookahead, cached_issue_rate):
3829	New variables.
3830	(choose_ready): Calculate max_lookahead_tries.  Initiate
3831	ready_try.
3832	(schedule_block): Allocate/deallocate choice_stack.  Change
3833	cycle_issued_insns value as necessary.
3834	(sched_init): Check cached_issue_rate.
3835
38362003-06-20  Daniel Egger  <degger@fhm.edu>
3837	    Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
3838
3839	* doc/install.texi (Building): Correct and improve statement
3840	about parallel builds.
3841
38422003-06-20  Eric Botcazou  <ebotcazou@libertysurf.fr>
3843
3844	* doc/install.texi (--with-gnu-as): Mention SPARC/Solaris and
3845	SPARC64/Solaris as platforms where --with-gnu-as makes a difference.
3846	(--with-as): Add @anchor.
3847	(--with-gnu-ld): Fix typo.
3848	(--with-ld): Add @uref to --with-as.
3849
38502003-06-19  Kazu Hirata  <kazu@cs.umass.edu>
3851
3852	* flow.c (initialize_uninitialized_subregs): Use
3853	emit_move_insn instead of emitting a hardcoded move.
3854
38552003-06-19  David Edelsohn  <edelsohn@gnu.org>
3856
3857	* config/rs6000/rs6000.c (init_cumulative_args): Limit CALL_LIBCALL
3858	to ABI_V4.
3859
38602003-06-19  DJ Delorie  <dj@redhat.com>
3861
3862	PR preprocessor/11022
3863	* cppmacro.c (warn_of_redefinition): Handle cases where the two
3864	definitions have different numbers of tokens.
3865
38662003-06-18  Richard Henderson  <rth@redhat.com>
3867
3868	* config/ia64/unwind-ia64.c (_Unwind_GetCFA): New.
3869	(_Unwind_FindEnclosingFunction): Implement.
3870
38712003-06-18  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
3872
3873	* config/rs6000/rs6000.c (init_cumulative_args): Add and handle LIBCALL
3874	argument.
3875	(function_arg): Handle CALL_LIBCALL flag.
3876	* config/rs6000/rs6000-protos.h (init_cumulative_args): Update
3877	prototype.
3878	* config/rs6000/rs6000.h (CALL_LIBCALL): New macro.
3879	(INIT_CUMULATIVE_LIBCALL_ARGS): New macro.
3880	(INIT_CUMULATIVE_ARGS): Add LIBCALL argument.
3881	(INIT_CUMULATIVE_INCOMING_ARGS): Likewise.
3882
38832003-06-17  Jason Merrill  <jason@redhat.com>
3884
3885	PR c++/10929
3886	* tree-inline.c (expand_call_inline): Don't warn about failing to
3887	inline a function which was made inline by -finline-functions.
3888
38892003-06-17  Ranjit Mathew  <rmathew@hotmail.com>
3890
3891	* install.texi (Testing): Add information on how to run Java
3892	runtime tests separately.
3893
38942003-06-17  Christopher Faylor  <cgf@redhat.com>
3895
3896	* doc/install.texi: Add msvc rebuild caveat.
3897
38982003-06-17  Kazu Hirata  <kazu@cs.umass.edu>
3899
3900	* doc/contrib.texi: Replace Hitachi with Renesas.
3901	* doc/install.texi: Likewise.
3902	* doc/invoke.texi: Likewise.
3903
39042003-06-17  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
3905
3906	* config/rs6000/linux.h (MD_FALLBACK_FRAME_STATE_FOR): Partly revert
3907	2003-01-23 patch. Corrected to handle kernels with changed ucontext.
3908
3909	* config/rs6000/sysv4.h (SUBTARGET_OVERRIDE_OPTIONS): Error on invalid
3910	-msdata=eabi usages.
3911
39122003-06-14  Richard Earnshaw  <rearnsha@arm.com>
3913
3914	PR optimization/10842
3915	From trunk:
3916	2003-01-20  Nick Clifton  <nickc@redhat.com>
3917
3918	* config/arm/arm.md (sibcall_epilogue): Add an
3919	UNSPEC_PROLOGUE_USE to prevent the link register from being
3920	considered dead.
3921
3922	2003-02-02  Richard Earnshaw  <rearnsha@arm.com>
3923
3924	* arm.md (sibcall_epilogue): Set the "conds" to "clob".
3925	(epilogue_insns): Likewise.
3926
39272003-06-14  Richard Earnshaw  <rearnsha@arm.com>
3928
3929	PR target/11183
3930	* arm.c (output_move_double): Pass SImode to adjust_address.
3931
39322003-06-13  Janis Johnson  <janis187@us.ibm.com>
3933
3934	* doc/install.texi (m32r-*-elf): Change company to Renesas.
3935
39362003-06-13  Richard Earnshaw  <rearnsha@arm.com>
3937
3938	* arm.c (output_call_mem): If the address references the link-register
3939	use an instruction sequence that avoids early-clobbering IP.
3940	(eliminate_lr2ip): Delete.
3941
39422003-06-12  Richard Henderson  <rth@redhat.com>
3943
3944	PR target/11089
3945	* config/i386/i386.md (sse_movaps): Use an expander to force
3946	one operand to be a register.
3947	(sse_movups): Likewise.
3948
39492003-06-12  Richard Henderson  <rth@redhat.com>
3950
3951	PR middle-end/10557
3952	* rtlanal.c (subreg_offset_representable_p): Relax subreg check.
3953
39542003-06-13  Eric Botcazou  <ebotcazou@libertysurf.fr>
3955	    Christian Ehrhardt <ehrhardt@mathematik.uni-ulm.de>
3956
3957	PR target/10142
3958	* config/sparc/sparc.c (function_arg_record_value_parms): Add
3959	new 'stack' field.
3960	(function_arg_record_value_1): Set 'stack' to 1 if we run out of
3961	integer slots for an integer field.
3962	(function_arg_record_value_3): Shift vector index.
3963	(function_arg_record_value_2): Likewise.
3964	(function_arg_record_value): Initialize 'stack' to 0.
3965	Set 'stack' to 1 if we run out of integer slots for an integer field.
3966	Generate (parallel [(expr_list (nil) ...) ...]) if 'stack' is set to 1.
3967
39682003-06-13  Eric Botcazou  <ebotcazou@libertysurf.fr>
3969
3970	PR optimization/10955
3971	* unroll.c (unroll_loop): Fix off-by-one bug.
3972
39732003-06-12  Richard Henderson  <rth@redhat.com>
3974
3975	PR middle-end/10475
3976	* expmed.c (emit_store_flag): Use simplify_gen_subreg directly
3977	for extracting sub-words.
3978
39792003-06-12  Richard Henderson  <rth@redhat.com>
3980
3981	PR target/7594
3982	* config/m68k/m68k.md (zero_extendhisi2): Use gen_lowpart_SUBREG.
3983	(zero_extendqihi2, zero_extendqisi2): Likewise.
3984
39852003-06-12  Richard Henderson  <rth@redhat.com>
3986
3987	PR inline-asm/4823
3988	* reg-stack.c (any_malformed_asm): New.
3989	(check_asm_stack_operands): Set it.
3990	(convert_regs_1): Check it before aborting.
3991
39922003-06-12  Jakub Jelinek  <jakub@redhat.com>
3993
3994	* c-decl.c (c_expand_body): Save input_filename and lineno,
3995	set it before tree inlining and restore before return.
3996
39972003-06-12  Ulrich Weigand  <uweigand@de.ibm.com>
3998
3999	* config/s390/s390.c (s390_emit_prologue): Use LA instead of AR
4000	to initialize GOT register.
4001
40022003-06-12  Jakub Jelinek  <jakub@redhat.com>
4003
4004	* c-opts.c (complain_wrong_lang): Add on argument.
4005	Print no- switch if on is false.
4006	(c_common_decode_option): Adjust caller.
4007
40082003-06-11  Richard Henderson  <rth@redhat.com>
4009
4010	* stmt.c (expand_asm_operands): Don't warn for memories with
4011	queued addresses.
4012
40132003-06-11  Andrew Pinski  <pinskia@physics.uc.edu>
4014
4015	PR target/8787
4016	* config/i386/djgpp.h (ASM_FILE_START): emit `.intel_syntax'
4017	if -masm=intel.
4018
40192003-06-10  Andrew Haley  <aph@redhat.com>
4020
4021	* langhooks-def.h (LANG_HOOKS_DECL_OK_FOR_SIBCALL): New.
4022	(LANG_HOOKS_DECLS): Add LANG_HOOKS_DECL_OK_FOR_SIBCALL.
4023	(lhd_decl_ok_for_sibcall): New.
4024	* langhooks.c (lhd_decl_ok_for_sibcall): New.
4025	* langhooks.h (lang_hooks_for_decls.ok_for_sibcall): New field.
4026	* calls.c (expand_call): Check lang_hook before generating a
4027	sibcall.
4028
40292003-06-09  Richard Henderson  <rth@redhat.com>
4030
4031	2003-05-11  Ulrich Weigand  <uweigand@de.ibm.com>
4032	* except.c (EH_RETURN_STACKADJ_RTX): Do not define.
4033	(EH_RETURN_HANDLER_RTX): Likewise.
4034	(expand_builtin_eh_return): Do not copy stack adjustment
4035	if EH_RETURN_STACKADJ_RTX is not defined.
4036	(expand_eh_return): Likewise.  Also, do not pass stack
4037	adjustment as argument to the eh_return pattern.
4038	* except.h (MUST_USE_SJLJ_EXCEPTIONS): Do not define just
4039	because EH_RETURN_STACKADJ_RTX is not defined.
4040	* unwind-dw.c (uw_update_context_1): If EH_RETURN_STACKADJ_RTX
4041	is not defined, treat stack pointer like a regular register.
4042	(uw_init_context_1): Set up fake initial stack pointer register.
4043	(uw_install_context_1): Do not compute stack adjustment if
4044	EH_RETURN_STACKADJ_RTX is not defined.
4045
4046	* config/i386/i386.md ("eh_return"): Remove first argument.
4047	* config/mips/mips.md ("eh_return"): Likewise.
4048	* config/rs6000/rs6000.md ("eh_return"): Likewise.
4049	* config/sh/sh.md ("eh_return"): Likewise.
4050
4051	* config/s390/s390.h (EH_RETURN_STACKADJ_RTX): Remove.
4052
40532003-06-08  Richard Henderson  <rth@redhat.com>
4054
4055	* stmt.c (expand_asm_operands): Re-word warning.
4056
40572003-06-08  Richard Henderson  <rth@redhat.com>
4058
4059	* expr.h (EXPAND_MEMORY): New.
4060	* expr.c (expand_expr): Check it.
4061	* stmt.c (expand_asm_operands): Provide it when the constraint
4062	requires a memory.  Warn for memory input constraints without
4063	a memory operand.
4064
40652003-06-07  Richard Henderson  <rth@redhat.com>
4066
4067	* c-common.c (cb_register_builtins): Define __EXCEPTIONS for C also.
4068
40692003-06-07  Kelley Cook  <kelleycook@wideopenwest.com>
4070
4071	* configure.in (HAVE_LD_RO_RW_SECTION_MIXING): Remove quotes in
4072	section names.
4073	* configure: Regenerate.
4074
40752003-06-07  Alan Modra  <amodra@bigpond.net.au>
4076
4077	* config/rs6000/linux64.h (CRT_CALL_STATIC_FUNCTION): Define.
4078
40792003-06-06  James E Wilson  <wilson@tuliptree.org>
4080
4081	PR inline-asm/10890
4082	* reload1.c (merge_assigned_reloads): Abort only if two reloads have
4083	different in fields.
4084
40852003-06-06  Richard Earnshaw  <rearnsha@arm.com>
4086
4087	PR target/11052
4088	* ifcvt.c (noce_process_if_block): Fail if the destination has
4089	side-effects.
4090
40912003-06-06  Dan Kegel  <dank@kegel.com>
4092	    Kaz Kojima  <kkojima@gcc.gnu.org>
4093
4094	PR target/10331
4095	* config/sh/t-linux (STMP_FIXPROTO): Define.
4096
4097	PR target/11096
4098	* config/sh/linux.h (CPLUSPLUS_CPP_SPEC): Redefine so to include
4099	-D_GNU_SOURCE.
4100
41012003-06-05  David Miller  <davem@redhat.com>
4102	    Richard Henderson  <rth@redhat.com>
4103
4104	* optabs.c (HAVE_conditional_trap): Provide default.
4105	(gen_conditional_trap): Likewise.
4106	(init_optabs): Merge init_traps.
4107	(gen_cond_trap): Use prepare_operand.  Restructure and avoid ifdef.
4108
41092003-06-05  Eric Botcazou  <ebotcazou@libertysurf.fr>
4110
4111	* doc/md.texi (Machine Constraints): Correct the meaning of
4112	constraints related to floating-point registers on SPARC.
4113
41142003-06-05  Eric Botcazou  <ebotcazou@libertysurf.fr>
4115	    Paolo Bonzini  <bonzini@gnu.org>
4116
4117	PR target/10663
4118	* configure.in (HAVE_LD_RO_RW_SECTION_MIXING): Redirect
4119	assembler and linker output to /dev/null.
4120	Use a 'sed' construct instead of 'grep -A1'.
4121	* configure: Regenerate.
4122
41232003-06-04  David Edelsohn  <edelsohn@gnu.org>
4124
4125	* doc/install.texi (*-ibm-aix*): Native as and ld required
4126	to bootstrap on AIX 5L.
4127
41282003-06-04  Richard Henderson  <rth@redhat.com>
4129
4130	* c-common.c (handle_cleanup_attribute): New.
4131	(c_common_attributes): Add it.
4132	* c-decl.c (finish_decl): Honor the cleanup attribute.
4133	* doc/extend.texi (Variable Attributes): Document it.
4134
4135	* unwind-c.c: New file.
4136	* Makefile.in (LIB2ADDEH): Add it.
4137	* config/t-darwin, config/t-linux, config/t-linux-gnulibc1,
4138	config/ia64/t-ia64: Likewise.
4139
41402003-06-04  Eric Botcazou  <ebotcazou@libertysurf.fr>
4141
4142	PR optimization/11018
4143	* config/sparc/sparc.c (sparc_v8plus_shift): Use which_alternative
4144	consistently to decide whether the scratch register is really
4145	required.
4146
41472003-06-04  Eric Botcazou  <ebotcazou@libertysurf.fr>
4148
4149	PR optimization/10876
4150	* config/sparc/sparc.h (CONST_OK_FOR_LETTER): Add
4151	new 'O' constraint for constant 4096.
4152	(CONST_DOUBLE_OK_FOR_LETTER_P): Likewise.
4153	* config/sparc/sparc.md (adddi3 expander): Canonicalize pattern.
4154	Do not transform into MINUS insn for constant 4096.
4155	(*adddi3_sp64 insn): Canonicalize pattern. Add new alternative
4156	for constant 4096 as third operand.
4157	(addsi3 expander): Remove.
4158	(*addsi3 insn): Rename into 'addsi3'. Canonicalize pattern. Add
4159	new alternative for constant 4096 as third operand.
4160	(subdi3 expander): Do not transform into PLUS insn for constant 4096.
4161	(*subdi3_sp64 insn): Add new alternative for constant 4096 as third
4162	operand.
4163	(subsi3 expander): Remove.
4164	(*subsi3 insn): Rename into 'subsi3'. Add new alternative for
4165	constant 4096 as third operand.
4166	* doc/md.texi (Machine Constraints): Document new 'O' constraint for
4167	the SPARC port.
4168
41692003-06-03  Richard Henderson  <rth@redhat.com>
4170
4171	* unwind.inc (_Unwind_Resume_or_Rethrow): Fix return type.
4172	* unwind.h (_Unwind_Resume_or_Rethrow): Update.
4173	(_Unwind_SjLj_Resume_or_Rethrow): Likewise.
4174
41752003-06-03  Douglas B Rupp  <rupp@gnat.com>
4176
4177	* Makefile.in (TEXI_GCC_FILES): Remove vms.texi entry.
4178	* doc/gcc.texi: Remove vms.texi section.
4179	* doc/vms.texi: Remove obsolete file.
4180
41812003-06-03  Richard Henderson  <rth@redhat.com>
4182
4183	PR target/10673
4184	* config/i386/i386.c (ix86_split_long_move): Fix base register
4185	mode for XFmode splits for TARGET_64BIT.
4186
41872003-06-02  Kazuhiro Inaoka  <inaoka.kazuhiro@renesas.com>
4188
4189	* gcc/config.gcc Add support multilib parts for m32rx processor.
4190
41912003-06-01  Eric Botcazou  <ebotcazou@libertysurf.fr>
4192
4193	PR target/11044
4194	* config/i386/i386.md (length attribute): Set length to 4
4195	for instructions of type "fcmp".
4196
41972003-06-01  Josef Zlomek  <zlomekj@suse.cz>
4198
4199	* rtl.def (CONST_DOUBLE): Update comment.
4200
42012003-06-01  Seth Arnold  <sarnold@wirex.com>
4202	    Aldy Hernandez  <aldyh@redhat.com>
4203
4204	PR10871
4205	* config/rs6000/rs6000.c (rs6000_stack_info): Do not add
4206	vrsave_size twice.
4207
42082003-05-31  Eric Botcazou  <ebotcazou@libertysurf.fr>
4209
4210	* doc/install.texi (mips-sgi-irix5): Add missing
4211	HTML <hr> marker.
4212
42132003-05-31  Eric Botcazou  <ebotcazou@libertysurf.fr>
4214
4215	* doc/md.texi (Machine Constraints): Document
4216	missing SPARC constraints.
4217
42182003-05-31  Eric Botcazou  <ebotcazou@libertysurf.fr>
4219
4220	* doc/md.texi (Automaton pipeline description): Use
4221	"type" instead of "cpu" as the attribute in the examples.
4222
42232003-05-30  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
4224
4225	* config/mips/mips.h (SUBTARGET_ASM_DEBUGGING_SPEC): Move
4226	-mdebug/-no-mdebug switches ...
4227	(MDEBUG_ASM_SPEC): ... here.
4228	Use only with gas.
4229	(EXTRA_SPECS): Initialize mdebug_asm_spec.
4230	(CONSTANT_ADDRESS_P): Allow native IRIX 6 O32 assembler.
4231
42322003-05-29  Gabriel Dos Reis <gdr@integrable-solutions.net>
4233
4234	* diagnostic.h (output_verbatim): Remove printf attribute.
4235	(verbatim): Likewise.
4236	* diagnostic.c (output_pointer): New function.
4237	(output_format): Use it.  Handle %p format specifier.
4238
42392003-05-27  Denis Chertykov  <denisc@overta.ru>
4240
4241	* cselib.c (cselib_invalidate_regno): Abort if hardreg have a
4242	VOIDmode.
4243	* cselib.c (cselib_process_insn): Pass reg_raw_mode for hardreg in
4244	call of cselib_invalidate_regno.
4245
42462003-05-25  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
4247
4248	* doc/contrib.texi (Contributors): Update Kean Johnston.
4249
4250Fri May 23 21:19:31 CEST 2003  Jan Hubicka  <jh@suse.cz>
4251			       Andreas Jaeger  <aj@suse.de>
4252
4253	* i386.h (TARGET_CPU_CPP_BUILTINS): Define __amd64 and __amd64__;
4254	do not use assertion.
4255
4256Fri May 23 20:55:39 CEST 2003  Jan Hubicka  <jh@suse.cz>
4257
4258	* i386.md (sse_loadss, sse_loadss_1, sse2_loadsd, sse2_loadsd_1):
4259	Rewrite
4260
42612003-05-23  Eric Botcazou  <ebotcazou@libertysurf.fr>
4262
4263	* doc/install.texi: Remove sparc64-*-*. Add sparc64-*-solaris2*.
4264	Document sparcv9-*-solaris2* as a synonym for sparc64-*-solaris2*.
4265
42662003-05-22  Eric Botcazou  <ebotcazou@libertysurf.fr>
4267
4268	PR bootstrap/10805
4269	* doc/install.texi (sparc-sun-solaris2.7): Document bootstrap
4270	failure with Sun assembler 5.0 Alpha 03/27/98.
4271
42722003-03-21  Loren James Rittle  <ljrittle@acm.org>
4273
4274	* config/sparc/freebsd.h (CPP_CPU64_DEFAULT_SPEC): Add -D__sparcv9
4275	-D__sparc__ to match system compiler convention.
4276
42772003-05-20  Kevin Ryde <user42@zip.com.au>
4278	    Wolfgang Bangerth <bangerth@dealii.org>
4279
4280	PR c/10355
4281	* doc/extend.texi: Put a warning into the documentation
4282	of attribute regparm.
4283
42842003-05-20  Ulrich Weigand  <uweigand@de.ibm.com>
4285
4286	* config/s390/s390.md ("*iordi3_oi"): Do not mark commutative.
4287	("*iorsi3_oi"): Likewise.
4288
42892003-05-19  John David Anglin  <dave.anglin@nrc-gnrc.gc.ca>
4290
4291	* pa/milli64.S ($$mulI): Fix typo.
4292
42932003-05-19  Gabriel Dos Reis  <gdr@integrable-solutions.net>
4294
4295	* hashtable.h (struct ht_identifier): Add new field "hash_value".
4296	* hashtable.c (ht_lookup): Use it.
4297	(ht_expand): Likewise.  Avoid doing the same computation twice.
4298	* tree.h (IDENTIFIER_HASH_VALUE): New macro.
4299
43002003-05-19  Nick Clifton  <nickc@redhat.com>
4301
4302	* config/arm/arm.c (use_return_insn): Do not use a single return
4303	instruction for interrupt handlers which have to create a stack
4304	frame.
4305	(arm_expand_prologue): Do not pre-bias the return address of
4306	interrupt handlers which create a stack frame.
4307
43082003-05-19  Eric Botcazou  <ebotcazou@libertysurf.fr>
4309
4310	Backport from mainline:
4311
4312	2003-05-10  Alexander Aganichev  <aaganichev@yandex.ru>
4313
4314	* config/i386/i386.h (MODES_TIEABLE_P): Fix typo.
4315
43162003-05-16  Wolfgang Bangerth <bangerth@dealii.org>
4317
4318	* doc/bugreport.texi: Remove most of the preface of the
4319	bugs section.
4320
43212003-05-16  Nick Clifton  <nickc@redhat.com>
4322
4323	* config/mcore/mcore.md (jump): Use emit_jump_insn to generate the
4324	jump insn.
4325
43262003-05-15  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
4327
4328	* doc/invoke.texi (Warning Options): Mark -Wmissing-declarations
4329	as a C only option.
4330
43312003-05-15  Wolfgang Bangerth <bangerth@dealii.org>
4332
4333	* doc/bugreport.texi: Remove most of the bug reporting
4334	instructions and merge them into bugs.html.
4335
43362003-05-14  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
4337
4338	* sparc.c (print_operand): Fix uninitialized warning.
4339
43402003-05-14  Mark Mitchell  <mark@codesourcery.com>
4341
4342	* version.c: Reset to prerelease format.
4343	* doc/include/gcc-common.texi: Update version number.
4344
43452003-05-13  Release Manager
4346
4347	* GCC 3.3 Released.
4348
43492003-05-12  Mark Mitchell  <mark@codesourcery.com>
4350
4351	PR other/10745
4352	* configure.in: Correct detection of GNU ld version number.
4353	* configure: Regenerated.
4354
43552003-05-08  J"orn Rennecke <joern.rennecke@superh.com>
4356
4357	* sh.c (gen_block_redirect, split_branches): Use
4358	CODE_FOR_jump_compact instead of CODE_FOR_jump
4359
43602003-05-06  Eric Christopher  <echristo@redhat.com>
4361
4362	* config/mips/linux.h: Fix typo.
4363
43642003-05-06  Ulrich Weigand  <uweigand@de.ibm.com>
4365
4366	PR other/10650
4367	* unwind-dw2.c (uw_update_context_1): Don't set sp as cfa on s390.
4368	(uw_init_context_1): Set initial sp to outer cfa on s390.
4369
43702003-05-06  Mark Mitchell  <mark@codesourcery.com>
4371
4372	PR other/10658
4373	* gcc.c (process_command): Update copyright date.
4374
43752003-05-06  Bruce Korb  <bkorb@gnu.org>
4376
4377	* inclhack.def: fix up whitespace differences from mainline.
4378	mark fix tests that fail on BSD systems (like mainline).
4379	Fixup the solaris_mutex_init test to cope with Sol. 2.6 (like mainline).
4380	Removed unused SONY commentary (its obsolete anyway).
4381	(svr4_mach_defines): remove i860 machine from comment (like mainline).
4382	* gcc/fixinc/tests/base/pthread.h: solaris_mutex_init fix tests
4383	* gcc/fixinc/tests/base/testing.h: remove ^M chars from some mistake
4384	* gcc/fixinc/tests/base/Xm/Traversal.h: accommodate BSD's sed
4385	* gcc/fixinc/tests/base/sys/stat.h: accommodate BSD's sed
4386	* gcc/fixinc/fixincl.x: regenerated
4387
43882003-05-06  Phil Edwards  <pme@gcc.gnu.org>
4389
4390	* doc/install.texi (mips-*-*):  Add note about libstdc++.
4391
43922003-05-05  Mark Mitchell  <mark@codesourcery.com>
4393	    Kean Johnston <jkj@sco.com>
4394
4395	* toplev.c (check_global_declarations): Do not warn about unused
4396	static consts.
4397
43982003-05-05  Richard Henderson  <rth@redhat.com>
4399
4400	* builtins.c (expand_builtin) <BUILT_IN_DWARF_FP_REGNUM>: Remove.
4401	<BUILT_IN_DWARF_SP_COLUMN>: New.
4402	* builtins.def (BUILT_IN_DWARF_FP_REGNUM): Remove.
4403	(BUILT_IN_DWARF_SP_COLUMN): New.
4404	* dwarf2out.c (expand_builtin_dwarf_fp_regnum): Remove.
4405	(expand_builtin_dwarf_sp_column): New.
4406	* except.h: Update to match.
4407	* unwind-dw2.c (execute_stack_op): Correct stack push typo.
4408	(execute_cfa_program): Record location expression address
4409	before extracting length.
4410	(uw_update_context_1): Install old CFA into stack pointer column.
4411	(uw_init_context_1): Set cfa_reg to stack pointer column.
4412
44132003-05-05  David O'Brien  <obrien@FreeBSD.org>
4414
4415	* config/rs6000/sysv4.h (CPP_OS_FREEBSD_SPEC): Add __ELF__ to mirror
4416	other FreeBSD ports.
4417	(LINK_OS_FREEBSD_SPEC): Mirror conventions on other FreeBSD ports.
4418
44192003-05-05  Jason Merrill  <jason@redhat.com>
4420
4421	* stor-layout.c (update_alignment_for_field): Set DECL_ALIGN for
4422	the field.
4423
44242003-05-02  Zack Weinberg  <zack@codesourcery.com>
4425
4426	PR c/10604
4427	* c-opts.c (c_common_decode_option <OPT_Wall>): Set
4428	warn_sign_compare for C++ only.
4429	* doc/invoke.texi: Clarify documentation of -Wsign-compare.
4430
44312003-05-03  Falk Hueffner <falk.hueffner@student.uni-tuebingen.de>
4432	    Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
4433
4434	* doc/contrib.texi (Contributors): Add Zdenek Dvorak, Aldy
4435	Hernandez, and Kazu Hirata.
4436
44372003-05-02  Richard Henderson  <rth@redhat.com>
4438
4439	PR c++/10570
4440	* except.c: Revert 04-01 and 04-02 forced-unwind changes.
4441	* flags.h, toplev.c, doc/invoke.texi: Likewise.
4442
4443	* unwind-dw2.c (_Unwind_GetCFA): Fix ptr->int conversion warning.
4444	* unwind.inc (_Unwind_DeleteException): Check for null
4445	exception_cleanup.
4446
4447	* unwind-sjlj.c (_Unwind_SjLj_Resume_or_Rethrow): New.
4448	* unwind.inc (_Unwind_Resume_or_Rethrow): New.
4449	* unwind.h: Declare them.
4450	* libgcc-std.ver (GCC_3.3): Export them.
4451
44522003-05-02  Steven Bosscher  <steven@gcc.gnu.org>
4453
4454	* tree-inline.c (find_alloca_call):
4455	Use walk_tree_without_duplicates, instead of walk_tree.
4456	(find_builtin_longjmp_call): Ditto.
4457	* c-objc-common.c (c_cannot_inline_fn): Ditto.
4458
44592003-05-02  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
4460
4461	* doc/contrib.texi (Contributors): Add Daniel Berlin.
4462
44632003-05-01  Rodney Brown  <rbrown64@csc.com.au>
4464
4465      * rtl.h (subreg_offset_representable_p): Prototype.
4466
44672003-05-01  Roger Sayle  <roger@eyesopen.com>
4468
4469	PR fortran/9974
4470	* gcse.c (reg_killed_on_edge): New function to test whether the
4471	given reg is overwritten by any instruction queued on an edge.
4472	(bypass_block): Ignore substitutions killed on incoming edges.
4473	Don't bypass outgoing edges that have queued instructions.
4474
44752003-04-30  Andreas Schwab  <schwab@suse.de>
4476
4477	* doc/extend.texi (Other Builtins): Enclose multiple word data
4478	type in braces for @deftypefn.
4479
44802003-04-29  Jason Merrill  <jason@redhat.com>
4481
4482	PR middle-end/10336
4483	* jump.c (never_reached_warning): Really stop looking if we reach
4484	the beginning of the function.
4485
4486Tue Apr 29 21:07:00 CEST 2003  Jan Hubicka  <jh@suse.cz>
4487
4488	* cse.c (count_reg_usage): Revert my previous patch.
4489
44902003-04-29  Alexander Kabaev  <kan@FreeBSD.ORG>
4491
4492	bootstrap/10452
4493	* gengtype-yacc.y: Improve portability.
4494
44952003-04-29  Zack Weinberg  <zack@codesourcery.com>
4496
4497	* config.gcc: Install obsolete target list for GCC 3.3.
4498	* doc/install.texi: Mention in specific-target instructions
4499	that certain configurations are deprecated.
4500
45012003-04-29  Kriang Lerdsuwanakij  <lerdsuwa@users.sourceforge.net>
4502
4503	* c-pragma.c (maybe_apply_renaming_pragma): Fix typo.
4504	* gcc.c (display_help): Likewise.
4505	* toplev.c (f_options): Likewise.
4506	* params.def (PARAM_MAX_INLINE_SCOPE): Likewise.
4507	* config/c4x/c4x.h (TARGET_SWITCHES): Likewise.
4508	* config/mcore/mcore.h (TARGET_SWITCHES): Likewise.
4509	* config/s390/s390.h (TARGET_SWITCHES): Likewise.
4510	* config/v850/v850.h (TARGET_SWITCHES): Likewise.
4511
45122003-04-29  Danny Smith  <dannysmith@users.sourceforge.net>
4513
4514	* config/i386/mingw32.h (LIBGCC_SPEC): Add libmingwex.a.
4515	Update copyright.
4516	* config/i386/cygwin.h (LIBGCC_SPEC): Add libmingwex.a, for
4517	-mno-cygwin case.
4518
45192003-04-29  J"orn Rennecke <joern.rennecke@superh.com>
4520
4521	* varasm.c (default_assemble_visibility): Use assemble_name.
4522
45232003-04-29  David O'Brien  <obrien@FreeBSD.org>
4524
4525	* config/i386/freebsd64.h (LINK_SPEC): Mirror FreeBSD linker.
4526	* config/rs6000/freebsd.h (LINK_SHLIB_SPEC): New macro.
4527	(SIZE_TYPE): New macro.
4528	* config/i386/freebsd-aout.h (NO_PROFILE_COUNTERS): New macro.
4529	(SET_ASM_OP): New macro.
4530	(HANDLE_SYSV_PRAGMA): New macro.
4531	(ASM_WEAKEN_LABEL): New macro.
4532
45332003-04-28  Mark Mitchell  <mark@codesourcery.com>
4534
4535	PR c++/10180
4536	* tree-inline.c (expand_call_inline): Call push_srcloc when
4537	encountering EXPR_WITH_FILE_LOCATION.  Honor warn_inline.
4538
45392003-04-28  Mike Stump  <mrs@apple.com>
4540
4541	* gdbinit.in: Update to reflect new identifier structure.
4542
45432003-04-28  Richard Henderson  <rth@redhat.com>
4544
4545	* config/sparc/sparc.c (print_operand): Add 's' to sign-extend.
4546	* config/sparc/sparc.md (const_mulsidi3_v8plus): Fix mode of
4547	integral constant mult operand.
4548	(const_mulsidi3_sp32, const_mulsidi3_sp64): Likewise.
4549	(const_smulsi3_highpart_v8plus): Likewise.
4550	(const_smulsi3_highpart): Likewise.
4551	(const_umulsidi3_sp32): Likewise; sign-extend it in the output.
4552	(const_umulsidi3_sp64, const_umulsidi3_v8plus): Likewise.
4553	(const_umulsi3_highpart_v8plus): Likewise.
4554	(const_umulsi3_highpart): Likewise.
4555
45562003-04-28  David O'Brien  <obrien@FreeBSD.org>
4557
4558	* config/i386/i386.h (builtin_define): Add __amd64 and __amd64__.
4559
4560Mon Apr 28 09:54:56 CEST 2003  Jan Hubicka  <jh@suse.cz>
4561
4562	PR c/10308
4563	* reload.c (find_reloads_address_1): Reload plus at the place of
4564	index register.
4565
45662003-04-26  Richard Henderson  <rth@redhat.com>
4567
4568	* config/ia64/ia64.c (ia64_compute_frame_size): Allow inline asm
4569	to clobber ar.pfs and ar.unat.
4570	(ia64_expand_prologue): Force alloc instruction if ar.pfs saved;
4571	fix test for spilling ar.pfs to the stack.
4572
45732003-04-26  Stephane Carrez  <stcarrez@nerim.fr>
4574
4575	* doc/install.texi (Binaries): Mention binaries for HC11/HC12.
4576
45772003-04-26 Stephane Carrez <stcarrez@nerim.fr>
4578
4579	* doc/extend.texi (Function Attributes): Document "near" and "far"
4580	for 68HC11 and 68HC12.
4581
45822003-04-25  Bob Wilson  <bob.wilson@acm.org>
4583
4584	* config/xtensa/linux.h (TARGET_OS_CPP_BUILTINS): Back out previous
4585	addition of __PIC__ and __pic__ macros.
4586	* config/xtensa/xtensa.h: Clean up indentation.
4587
45882003-04-25  Bob Wilson  <bob.wilson@acm.org>
4589
4590	* config/xtensa/linux.h (TARGET_OS_CPP_BUILTINS): Remove definition of
4591	_GNU_SOURCE.  Add definitions of __PIC__ and __pic__.
4592	(SUBTARGET_CPP_SPEC): Define.
4593	(LIB_SPEC): Delete.
4594	* config/xtensa/xtensa-protos.h (xtensa_declare_object): Delete.
4595	* config/xtensa/xtensa.c (xtensa_declare_object): Delete.
4596	* config/xtensa/xtensa.h (CPP_SPEC, SUBTARGET_CPP_SPEC, EXTRA_SPECS):
4597	Define.
4598	(ASM_OUTPUT_COMMON, ASM_OUTPUT_LOCAL): Delete.
4599	(ASM_OUTPUT_ALIGNED_BSS, BSS_SECTION_ASM_OP): Define.
4600
46012003-04-25  Richard  Henderson  <rth@redhat.com>
4602
4603	PR opt/10315
4604	* config/rs6000/rs6000.c (rs6000_emit_move): Only elide proper
4605	checks during reload; use validize_mem instead of adjust_address.
4606
4607Fri Apr 25 15:43:23 CEST 2003  Jan Hubicka  <jh@suse.cz>
4608
4609	* emit-rtl.c (subreg_hard_regno):  Check that register is
4610	representable.
4611	* reload.c (reload_inner_reg_of_subreg):  When register is not
4612	representable, reload the whole thing.
4613	(find_reloads): Likewsie.
4614	* rtlanal.c (subreg_representable_p):  New function.
4615
4616Sun Apr 20 18:23:18 CEST 2003  Richard Henderson  <rth@redhat.com>
4617
4618	(backported to 3.3 by Jan Hubicka)
4619
4620	* config/ia64/ia64.md (UNSPECV_SETJMP_RECEIVER): New.
4621	(builtin_setjmp_receiver): Delay call to ia64_reload_gp
4622	until after reload.
4623
4624	* emit-rtl.c (try_split): Handle 1-1 splits of call insns properly.
4625
4626	* config/ia64/ia64.c (TARGET_FUNCTION_OK_FOR_SIBCALL): New.
4627	(ia64_gp_save_reg): Remove.
4628	(struct ia64_frame_info): Move to the beginning of the file;
4629	add reg_save_gp.
4630	(ia64_expand_call): Rearrange for new call patterns.
4631	(ia64_reload_gp): New.
4632	(ia64_split_call): New.
4633	(ia64_compute_frame_size): Allocate reg_save_gp.
4634	(ia64_expand_prologue): Save reg_save_gp.
4635	(ia64_expand_epilogue): Don't restore gp.
4636	(ia64_hard_regno_rename_ok): Remove R4 hack.
4637	(ia64_function_ok_for_sibcall): New.
4638	(ia64_output_mi_thunk): Set reload_completed, no_new_pseudos;
4639	call try_split on sibcall pattern.
4640	* config/ia64/ia64-protos.h: Update.
4641	* config/ia64/ia64.md (call_nogp, call_value_nogp, sibcall_nogp):
4642	Rename from nopic versions.  Confiscate 2nd argument to call as
4643	a marker.
4644	(call_pic, call_value_pic, sibcall_pic): Remove.
4645	(call_gp, call_value_gp, sibcall_gp): New.
4646	(builtin_setjmp_setup): Remove.
4647	(builtin_setjmp_receiver): Call ia64_reload_gp.
4648
46492003-04-24  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
4650
4651	PR opt/8705
4652	* gcse.c (try_replace_reg): On a successful substitution of a constant
4653	into a single set, try to simplify the source of the set.
4654	* loop.c (scan_loop): Don't try to optimize a MODE_CC set with a
4655	constant source.
4656
46572003-04-24  Alexander Kabaev <kan@FreeBSD.ORG>
4658
4659	bootstrap/10453
4660	* config/sparc/sparc.md (umulsidi3, mulsidi3): Avoid using
4661	const_umulsidi3_sp32 and const_mulsidi3_sp32 on 64bit targets
4662	where they might be not present. Use their _sp64 equivalent
4663	instead.
4664
46652003-04-23  Richard Henderson  <rth@redhat.com>
4666
4667	PR opt/8300
4668	* toplev.c (rest_of_compilation): Delay no_new_pseudos until
4669	after initialize_uninitialized_subregs; update reg info assuming
4670	new pseudos were created.
4671
46722003-04-23  Olivier Hainque  <hainque@act-europe.fr>
4673
4674	* config/pa/pa.md (extv, extzv): FAIL if the bitfield length is zero.
4675
46762003-04-23  James A Morrison  <ja2morri@uwaterloo.ca>
4677
4678	* invoke.texi: Eliminate extra white-space caused by @gccoptlist{
4679	on its own line.
4680	Ensure there are two spaces between each pair of options and add
4681	@gol where appropriate.
4682
46832003-04-23  Ulrich Weigand  <uweigand@de.ibm.com>
4684
4685	* config/s390/s390.c (s390_expand_cmpstr): Disable CLC loop.
4686
46872003-04-22  Devang Patel  <dpatel@apple.com>
4688
4689	* cpptrad.c (_cpp_replacement_text_len): Add check for macro parameter count.
4690	(_cpp_copy_replacement_text): Same.
4691
46922003-04-22  Richard Henderson  <rth@redhat.com>
4693
4694	PR 8866
4695	* rtl.h (MEM_NOTRAP_P): New.
4696	(MEM_COPY_ATTRIBUTES): Copy it.
4697	* rtlanal.c (may_trap_p): Check it.
4698	* expr.c (do_tablejump): Set it.
4699
4700	* cfgrtl.c (try_redirect_by_replacing_jump): Revert last three changes.
4701
47022003-04-22  David Turner <novalis@gnu.org>
4703
4704	* gbl-ctors.h: Add special license exception.
4705	* libgcc2.h: Likewise.
4706	* tsystem.h: Likewise.
4707	* gcov-io.h: Likewise.
4708
47092003-04-21  Mark Mitchell  <mark@codesourcery.com>
4710
4711	* Makefile.in (calls.o): Depend on except.h.
4712	* calls.c: Include except.h.
4713	(emit_call_1): Call note_eh_region_may_contain_throw if
4714	appropriate.
4715	* except.c (eh_region): Add may_contain_throw.
4716	(expand_eh_region_end_cleanup): Do not include handler code when
4717	it cannot be reached.
4718	(note_eh_region_may_contain_throw): New function.
4719	* except.h (note_eh_region_may_contain_throw): New function.
4720
47212003-04-21  Mark Mitchell  <mark@codesourcery.com>
4722
4723	* config/i386/winnt.c (i386_pe_mark_dllimport): Revert previous
4724	changes.
4725
47262003-04-21  Mark Mitchell  <mark@codesourcery.com>
4727
4728	* config/i386/winnt.c (i386_pe_}ark_dllimport): Make the new RTL
4729	have the same form as the old RTL.
4730
47312003-04-18  Mark Mitchell  <mark@codesourcery.com>
4732
4733	* cfgrtl.c (try_redirect_by_replacing_jump): Create a basic block
4734	for orphaned jump tables.
4735
47362003-04-20  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
4737
4738	PR/8705
4739	* pa.md (movccfp): New expander.
4740	(setccfp0, setccfp1): Rename to movccfp0 and movccfp1, respectively.
4741	Reverse fcmp conditions.
4742
47432003-04-20  Marek Michalkiewicz  <marekm@amelek.gda.pl>
4744
4745	* config/avr/avr.md (*cmpqi_sign_extend): Handle negative values
4746	of operand 1 correctly.
4747
47482003-04-19  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
4749
4750	* cfgrtl.c (try_redirect_by_replacing_jump): Remove unused variables.
4751	* flow.c (life_analysis): Fix warning.
4752
47532003-04-18  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
4754
4755	* doc/contrib.texi (Contributors): Prefer "bug fix" over "bugfix".
4756	Add Segher Boessenkool.
4757
47582003-04-18  Alexander Sotirov  <sluncho@mirizma.org>
4759
4760	PR c/9177
4761	* c-decl.c (c_expand_body): Don't garbage collect the function
4762	body if we are going to dump it later.
4763
47642003-04-18  Eric Botcazou  <ebotcazou@libertysurf.fr>
4765
4766	PR optimization/7675
4767	* c-typeck.c (build_external_ref): Set the DECL_NONLOCAL flag
4768	on VAR_DECL, PARM_DECL and FUNCTION_DECL from within
4769	nested functions if they refer to declarations from parent functions.
4770	* stmt.c (expand_decl): Don't put automatic variables in registers
4771	if the DECL_NONLOCAL flag is set.
4772
47732003-04-17  Janis Johnson  <janis187@us.ibm.com>
4774
4775	* doc/sourcebuild.texi (Test Suites): Document support for testing
4776	binary compatibility (moved from testsuite/README.compat).
4777
47782003-04-17  Simon Law  <sfllaw@engmail.uwaterloo.ca>
4779
4780	* doc/include/gpl.texi: Fix double-spacing after "MA" to match
4781	the one provided by the FSF.
4782
47832003-04-17  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
4784
4785	* doc/install.texi (Binaries): Update URL and list of platforms
4786	provided by ftp.thewrittenword.com.
4787
47882003-04-17  Eric Botcazou  <ebotcazou@libertysurf.fr>
4789
4790	* doc/invoke.texi (inline-limit): Fix pasto.
4791
47922003-04-16  Mark Mitchell  <mark@codesourcery.com>
4793
4794	PR middle-end/8866
4795	* cfgtrl.c (try_redirect_by_replacing_jump): Do not delete
4796	jumptables.
4797
47982003-04-16  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
4799
4800	PR/10271
4801	* pa-protos.h (function_arg): Remove last argument.
4802	* pa.c (function_arg): Likewise.  Use CUMULATIVE_ARGS struct instead.
4803	* pa.h (struct hppa_args): Add member incoming.
4804	(INIT_CUMULATIVE_ARGS, INIT_CUMULATIVE_INCOMING_ARGS): Initialize
4805	member incoming.
4806	(FUNCTION_ARG): Revise call to function_arg.
4807	(FUNCTION_INCOMING_ARG): Delete.
4808
48092003-04-15  J"orn Rennecke <joern.rennecke@superh.com>
4810
4811	PR target/9594:
4812	* sh.c (barrier_align): Also recognize stuff_delay_slot as
4813	an indicator that a barrier was created by branch splitting.
4814
4815	merge from mainline:
4816
4817	2003-03-05  J"orn Rennecke <joern.rennecke@superh.com>
4818
4819	* sh.h (OVERRIDE_OPTIONS): For TARGET_SHMEDIA, the minimum value
4820	for align_jumps is 4.
4821
4822	(SECONDARY_INPUT_RELOAD_CLASS): If reloading a PLUS into FPUL,
4823	use GENERAL_REGS.
4824
4825	2003-03-03  J"orn Rennecke <joern.rennecke@superh.com>
4826
4827	* sh.h (OVERRIDE_OPTIONS): Set default values for align_loops
4828	and align_jumps if not set.
4829	Force align_jumps to be at least 2.
4830	When relaxing, force align_functions to be at least the maximum of
4831	align_loops, align_jumps and 4.
4832	* sh.c (find_barrier, barrier_align): Honour align_jumps_log.
4833	(sh_loop_align): Honour align_loops_log.
4834
4835	* sh.md (length attribute): Use prev_nonnote_insn instead of PREV_INSN
4836	to check for indirect_jump_scratch.
4837	(indirect_jump_scratch): Add second set.
4838	* sh.c (output_far_jump): Use prev_nonnote_insn instead of PREV_INSN
4839	when looking for indirect_jump_scratch.
4840	Extract scratch register taking new structure of indirect_jump_scratch
4841	into account.
4842	(gen_block_redirect): Set INSN_SCOPE for indirect_jump_scratch.
4843
48442003-04-15  James A. Morrison  <ja2morri@uwaterloo.ca>
4845
4846	* invoke.texi (Spec Files): Wrap if-exists-else example.
4847	(MCore): Remove duplicate @itemx entries and @opindex entries.
4848
48492003-04-15  Ulrich Weigand  <uweigand@de.ibm.com>
4850
4851	* unwind.inc (_Unwind_Backtrace): New function.
4852	* unwind.h (_Unwind_Backtrace): Declare it.
4853	* libgcc-std.ver (_Unwind_Backtrace): Export it.
4854
48552003-04-15  Jason Merrill  <jason@redhat.com>
4856
4857	PR middle-end/10336, c++/10401
4858	* jump.c (never_reached_warning): Also stop looking if we reach the
4859	beginning of the function.
4860
48612003-04-15  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
4862
4863	PR target/10338
4864	PR bootstrap/10198
4865	PR bootstrap/10140
4866	* fixinc/gnu-regex.c (regerror): Use mempcpy not __mempcpy.
4867
48682003-04-15  Jakub Jelinek  <jakub@redhat.com>
4869
4870	* config/rs6000/rs6000.h (EPILOGUE_USES): Use register 2,
4871	instead of TOC_REGISTER in epilogue in
4872	current_function_calls_eh_return functions.
4873
48742003-04-14  Hans-Peter Nilsson  <hp@axis.com>
4875
4876	PR target/10377
4877	* config/cris/cris.md ("*mov_sideqi", "*mov_sidehi")
4878	("*mov_sidesi", "*mov_sideqi_mem", "*mov_sidehi_mem")
4879	("*mov_sidesi_mem", "*clear_sidesi", "*clear_sidehi")
4880	("*clear_sideqi", "*ext_sideqihi", "*ext_sideqisi")
4881	("*ext_sidehisi", "*op_sideqi", "*op_sidehi", "*op_sidesi")
4882	("*op_swap_sideqi", "*op_swap_sidehi", "*op_swap_sidesi")
4883	("*extopqihi_side", "*extopqisi_side", "*extophisi_side")
4884	("*extopqihi_swap_side", "*extopqisi_swap_side")
4885	("*extophisi_swap_side", 8th, 9th, 10th, 11th, 14th peepholes):
4886	When next to constraint R, replace constraint i with n.
4887
4888Mon Apr 14 16:14:37 CEST 2003  Jan Hubicka  <jh@suse.cz>
4889
4890	PR opt/10024
4891	* cfgrtl.c (force_nonfallthru_and_redirect): Use unchecked_make_edge.
4892
48932003-04-14  Kriang Lerdsuwanakij  <lerdsuwa@users.sourceforge.net>
4894
4895	* doc/contrib.texi (Contributors): Correct my entry.
4896
48972003-04-12  Stephane Carrez  <stcarrez@nerim.fr>
4898
4899	* config/m68hc11/m68hc11-protos.h
4900	(m68hc11_eq_compare_operator): Declare
4901	* config/m68hc11/m68hc11.h (PREDICATE_CODES): Register new predicate.
4902	* config/m68hc11/m68hc11.c (m68hc11_eq_compare_operator): New predicate
4903	(d_register_operand): Check the operand mode.
4904	(hard_addr_reg_operand): Likewise.
4905
49062003-04-12  Stephane Carrez  <stcarrez@nerim.fr>
4907
4908	* config/m68hc11/m68hc11.md ("decrement_and_branch_until_zero"): New
4909	pattern for dbcc/ibcc generation for 68HC12.
4910	("doloop_end"): New pattern.
4911	("m68hc12_dbcc_dec_hi"): New pattern for dbeq/dbne.
4912	("m68hc12_dbcc_inc_hi"): New pattern for ibeq/ibne.
4913	("m68hc12_dbcc_dec_qi"): New pattern.
4914	("m68hc12_dbcc_inc_qi"): New pattern.
4915	(split): Add split for the above when we can't use dbcc/ibcc due to
4916	reloading.
4917	(peephole2): Add peephole2 to generate the above when possible.
4918
49192003-04-12  Stephane Carrez  <stcarrez@nerim.fr>
4920
4921	* config/m68hc11/m68hc11.md ("bitcmpqi" split): No need to test the
4922	mode of operand 0.
4923	(peephole2 optimize const load): Likewise for operand 2.
4924	("*rotlhi3_with_carry"): Change pattern to a const 1 rotate which
4925	clobbers CC_REGNUM.
4926	("*rotrhi3_with_carry"): Likewise.
4927	(ashift:DI 1 split): Update pattern to create the above rotate.
4928	(lshiftrt:DI 1 split): Likewise.
4929
49302003-04-12  Stephane Carrez  <stcarrez@nerim.fr>
4931
4932	* config/m68hc11/m68hc11.md (SOFT_Z_REGNUM): New constant.
4933	("tstqi_z_used" split): Use it.
4934	("cmphi_z_used"): Likewise.
4935	("bitcmpqi_z_used"): Likewise; also use SP_REGNUM constant.
4936	("cmpqi_z_used"): Likewise.
4937
49382003-04-12  Mark Mitchell  <mark@codesourcery.com>
4939
4940	PR c++/7910
4941	* config/i386/winnt.c (i386_pe_mark_dllimport): Fix thinko.
4942
49432003-04-12  Stephane Carrez  <stcarrez@nerim.fr>
4944
4945	* config/m68hc11/m68hc11.h (TARGET_SWITCHES): Fix -mnominmax option;
4946	recognize -mnorelax.
4947	(reg_class): Add Z_OR_S_REGS to represent soft registers with Z
4948	(REG_CLASS_NAMES): Add its name.
4949	(REG_CLASS_CONTENTS): Define its content.
4950
49512003-04-12  Stephane Carrez  <stcarrez@nerim.fr>
4952
4953	* config/m68hc11/larith.asm (memcpy): Use ARG macro to access stack
4954	parameters so that offsets are valid for far definition.
4955	(__mulsi3): Likewise and use ret to return.
4956	(___adddi3, ___subdi3, ___notdi2, ): Don't use it to save the result.
4957
49582003-04-11  Geoffrey Keating  <geoffk@apple.com>
4959
4960	* doc/extend.texi (Empty Structures): New.
4961
49622003-04-11  Richard Henderson  <rth@redhat.com>
4963
4964	PR c++/10202
4965	* expr.c (expand_expr): Use COMPLETE_OR_UNBOUND_ARRAY_TYPE_P
4966	not COMPLETE_TYPE_P for re-invoking layout_decl.
4967
49682003-04-11  Simon Law  <sfllaw@engmail.uwaterloo.ca>
4969
4970	* doc/bugreport.texi: Fix paragraph breaking between sections
4971	in preparation for TeXinfo's paragraph indentation fixes.
4972	* doc/extend.texi: Ditto.
4973	* doc/invoke.texi: Ditto.
4974	* doc/objc.texi: Ditto.
4975	* doc/gcov.texi: Wrap 'gcov' in @command{}.
4976	* doc/invoke.texi (Darwin Options): Add a preamble.
4977
49782003-04-11  Richard Henderson  <rth@redhat.com>
4979
4980	PR c/10201
4981	* expr.c (expand_expr): Move DECL_RTL frobbing ...
4982	* stor-layout.c (layout_decl): ... here.
4983
49842003-04-11  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
4985
4986	* doc/install.texi (hppa): Update links for HP-UX patches.  Revise
4987	notes on linker selection and configuration for 64-bit HP-UX port.
4988	* doc/invoke.texi (hppa): Remove hppa text from description for
4989	-ffunction-sections and -fdata-sections.  Document -static, -nolibdld
4990	and -threads options.
4991
4992	* pa-hpux10.h (LIB_SPEC): Add link options to resolve dependency of
4993	libc.a on libdld.sl when -static is specified and -nolibdld is not
4994	specified.
4995	* pa64-hpux.h (LIB_SPEC): Likewise.
4996	* pa-hpux11.h (LIB_SPEC): Likewise.
4997	(LINK_SPEC): Add __gcc_plt_call as an undefined symbol when -shared
4998	is not specified.
4999
50002003-04-08  Jonathan Wakely  <redi@gcc.gnu.org>
5001
5002 	* doc/extend.texi (Template Instantiation): Refer to ISO standard,
5003 	not Working Paper.
5004 	* doc/invoke.texi (C++ Dialect Options): Same.
5005
5006Fri Apr 11 00:12:14 CEST 2003  Jan Hubicka  <jh@suse.cz>
5007
5008	PR inline-asm/8803
5009	* function.c (instantate_virtual_regs):  Verify that all ASM statements
5010	match after the virutal regs instantiation.
5011
50122003-04-10  Steve Ellcey  <sje@cup.hp.com>
5013
5014	* ia64-protos.h (addp4_optimize_ok): New.
5015	* ia64.c (addp4_optimize_ok): New.
5016	* ia64.md (*ptr_extend_plus_1): Use addp4_optimize_ok.
5017	(*ptr_extend_plus_2): Ditto.
5018
50192003-04-10  Steve Ellcey  <sje@cup.hp.com>
5020
5021	* expr.c (expand_assignment): Extend offset_rtx with convert_to_mode
5022	not with convert_memory_address.
5023	(store_constructor): Ditto, and same for copy_size_rtx.
5024	(expand_expr): Ditto.
5025
50262003-04-10  Ulrich Weigand  <uweigand@de.ibm.com>
5027
5028	* config/s390/s390.c (larl_operand): Do not allow symbols
5029	marked with '@'.
5030	(s390_encode_section_info): Mark symbols with forced 1-byte
5031	alignment with '@'.
5032	(s390_strip_name_encoding): Strip '@'.
5033	(legitimize_pic_address): Handle symbols that are not valid
5034	LARL operands in 64-bit mode.
5035
50362003-04-10  Andrew Haley  <aph@redhat.com>
5037
5038	* tree-inline.c (inlinable_function_p): Disable inlining for
5039	synchronized methods.
5040
50412003-04-09  Alexandre Oliva  <aoliva@redhat.com>
5042
5043	* config/fp-bit.c (unpack_d): Handle pair of doubles with
5044	different signs correctly.
5045
50462003-04-08  Richard Henderson  <rth@redhat.com>
5047
5048	PR target/9886
5049	* config/ia64/ia64.md (cmovdi_internal): Use 'n' not 'i' constraints.
5050	(cmovsi_internal): Likewise.
5051
50522003-04-07  Matt Kraai  <kraai@alumni.cmu.edu>
5053
5054	* doc/install.texi: Use @command and @samp for single- and
5055	multi-word commands respectively.
5056	* doc/makefile.texi: Likewise.
5057	* doc/sourcebuild.texi: Likewise.
5058
50592003-04-07  Christian Ehrhardt  <ehrhardt@mathematik.uni-ulm.de>
5060	    Richard Henderson  <rth@redhat.com>
5061
5062	PR c/9516
5063	* expr.c (safe_from_p): Rearrange to avoid deep recursion in
5064	favour of looping and tail recursion for TREE_LIST and binops.
5065
50662003-04-07  Glen Nakamura  <glen@imodulo.com>
5067
5068	PR opt/8634
5069	* explow.c (maybe_set_unchanging): Don't flag non-static const
5070	aggregate type initializers with RTX_UNCHANGING_P.
5071
50722003-04-07  Richard Henderson  <rth@redhat.com>
5073
5074	PR opt/8634
5075	* function.c (purge_addressof_1): Don't try arithmetics for
5076	unchanging memories.
5077
50782003-04-07  Janis Johnson  <janis187@us.ibm.com>
5079
5080	* doc/sourcebuild.texi (Test Suites): Document testing support for
5081	gcov and profile-directed optimizations; describe gcc.misc-tests.
5082
50832003-04-07  Eric Botcazou  <ebotcazou@libertysurf.fr>
5084
5085	* doc/rtl.texi (Comparison operations): Update to
5086	record the allowed comparison modes.
5087
5088Mon Apr  7 22:13:38 CEST 2003  Jan Hubicka  <jh@suse.cz>
5089
5090	PR target/10077
5091	* i386.md (movsi_1):  Fix SSEMOV alternative.
5092
5093Mon Apr  7 15:56:30 CEST 2003  Jan Hubicka  <jh@suse.cz>
5094
5095	PR opt/10024
5096	Revert Zack's change
5097	* cfglayout.c (cfg_layout_redirect_edge):
5098	Redirect any branch edges unified with the fallthru one.
5099	* cfgrtl.c (force_nonfallthru_and_redirect):  Do not special
5100	case fallthru edges when called via cfglayout.c
5101
51022003-04-07  James A Morrison <ja2morri@student.math.uwaterloo.ca>
5103
5104	* doc/extend.texi (Darwin Pragmas): Fix spelling of Mac OS.
5105
51062003-04-05  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
5107
5108	* c-decl.c (set_save_expr_context): Prototype.
5109
51102003-04-05  David Edelsohn  <edelsohn@gnu.org>
5111
5112	* config/rs6000/rs6000.h (RTX_COSTS): Halve Power multiply costs.
5113	* config/rs6000/rs6000.md: Correct Power4 multiply latency.
5114
51152003-04-05  Zack Weinberg  <zack@codesourcery.com>
5116
5117	PR optimization/10024
5118	* cfgrtl.c (force_nonfallthru_and_redirect): If e is the edge
5119	we want, use it.
5120
51212003-04-05  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
5122
5123	PR bootstrap/10267
5124	* doc/install.texi (*-*-solaris2): /bin/ksh is not just recommended
5125	for configuring.
5126
51272003-04-04  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
5128
5129	* c-decl.c (set_save_expr_context): Use traditional-style function
5130	definition.
5131
51322003-04-04  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
5133
5134	* doc/contrib.texi (Contributors): Add entries for Wolfgang
5135	Bangerth, DJ Delorie, Christian Ehrhardt, Christopher Faylor,
5136	Nathanael Nerode, Diego Novillo, Hartmut Penner, Volker Reichelt,
5137	Danny Smith, and Ulrich Weigand.
5138	Update Kriang Lerdsuwanakij and fix a typo in Janis Johnson's
5139	entry.
5140
51412003-04-04  Zack Weinberg  <zack@codesourcery.com>
5142
5143	PR bootstrap/10216
5144	* configure.in: Check whether it is necessary to link against
5145	libm to use ldexp.
5146	* configure: Regenerate.
5147	* Makefile.in: Add LDEXP_LIB substitution variable.
5148
51492003-04-03  Jason Merrill  <jason@redhat.com>
5150
5151	PR c/10175
5152	* jump.c (never_reached_warning): Revert patch of 2002-11-02.
5153	Look backwards for a line note.
5154
51552003-04-02  Mike Stump  <mrs@apple.com>
5156
5157	* doc/extend.texi (PowerPC AltiVec Built-in Functions): Split up
5158	some to avoid faulting makeinfo --html.
5159
51602003-04-02  Richard Henderson  <rth@redhat.com>
5161
5162	* libgcc-std.ver (_Unwind_GetCFA): New.
5163	* unwind-dw2.c (_Unwind_GetCFA): New.
5164	* unwind-sjlj.c (_Unwind_GetCFA): New.
5165	* unwind.h: Declare it.
5166
51672003-04-02  Mike Stump  <mrs@apple.com>
5168
5169	* doc/install.texi (Specific): Update pointers to apple.com.
5170
51712003-04-01  Jan Hubicka  <jh@suse.cz>
5172
5173	PR inline-asm/8088
5174	* i386.c (ix86_hard_regno_mode_ok):  Return 0 for MMX/SSE registers
5175	when MMX/SSE is not available.
5176
51772003-04-02  Richard Henderson  <rth@redhat.com>
5178
5179	* except.c (sjlj_find_directly_reachable_regions): Recognize when
5180	must-not-throw region has been deleted.
5181
51822003-04-02  Richard Henderson  <rth@redhat.com>
5183
5184	* dwarf2out.c (output_call_frame_info): Ignore fde->nothrow as an
5185	optimization when flag_exceptions not enabled.
5186
51872003-04-01  Richard Henderson  <rth@redhat.com>
5188
5189	* except.c (convert_from_eh_region_ranges_1): Smash REG_EH_REGION
5190	notes for nothrow calls if flag_forced_unwind_exceptions.
5191	(build_post_landing_pads): Mind flag_forced_unwind_exceptions.
5192	(sjlj_find_directly_reachable_regions): Likewise.
5193	(reachable_handlers): Likewise.
5194	(can_throw_external): Likewise.
5195	(collect_one_action_chain): Record cleanups after catch-all and
5196	must-not-throw if flag_forced_unwind_exceptions.
5197	* flags.h (flag_forced_unwind_exceptions): Declare.
5198	* toplev.c (flag_forced_unwind_exceptions): New.
5199	(lang_independent_options): Add it.
5200	* doc/invoke.texi: Add it.
5201
52022003-04-01  Geoffrey Keating  <geoffk@apple.com>
5203
5204	* unwind-dw2-fde-darwin.c (DESTRUCTOR_MAY_BE_CALLED_LIVE): New.
5205	(live_image_destructor): Reset image to initial state.
5206	(examine_objects): Set DESTRUCTOR_MAY_BE_CALLED_LIVE.
5207
52082003-04-01  Dale Johannesen  <dalej@apple.com>
5209
5210	* cse.c (count_reg_usage): Fix handling of REG_EQUAL notes.
5211	(Zdenek Dvorak's fix from 3.4 branch)
5212
52132003-04-01  Ulrich Weigand  <uweigand@de.ibm.com>
5214
5215	* config/s390/s390.c (s390_fixup_clobbered_return_reg):
5216	Do nothing if __builtin_return_address was not used.
5217
52182003-04-01  David Edelsohn  <edelsohn@gnu.org>
5219
5220	* config/rs6000/rs6000.c (function_arg_pass_by_reference):
5221	Return true for variable sized types.
5222	(rs6000_va_arg): Handle variable sized types passed by reference
5223	on non-SVR4 ABI.
5224
52252003-03-31  Mark Mitchell  <mark@codesourcery.com>
5226
5227	PR c/9936
5228	* c-decl.c (grokdeclarator): Clear SAVE_EXPR_CONTEXT for
5229	variably-sized arrays in parameters.
5230	(set_save_expr_context): New function.
5231	(c_expand_body): Use it, via walk_tree.
5232
52332003-03-31  Stephane Carrez  <stcarrez@nerim.fr>
5234
5235	* config/m68hc11/m68hc11.c (hard_reg_operand): Check the mode.
5236
52372003-03-31  Stephane Carrez  <stcarrez@nerim.fr>
5238
5239	* config/m68hc11/m68hc11.c (m68hc11_gen_movhi): Don't rely on REG_WAS_0
5240	notes as they are boggus.
5241	(m68hc11_gen_movqi): Likewise.
5242
52432003-03-31  Stephane Carrez  <stcarrez@nerim.fr>
5244
5245	* config/m68hc11/m68hc11.c (expand_prologue): For an interrupt handler
5246	save the soft registers after the frame pointer so that gdb can unwind
5247	the frame more easily.
5248	(expand_epilogue): Likewise in opposite order; allow to use X register
5249	as scratch if the return value is by reference.
5250
52512003-03-31  Jason Merrill  <jason@redhat.com>
5252
5253	PR java/10145
5254	* stor-layout.c (update_alignment_for_field): Respect
5255	DECL_USER_ALIGN for zero-length bitfields, too.
5256	* c-decl.c (finish_struct): Don't set DECL_ALIGN for normal
5257	fields.
5258
52592003-03-30  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
5260
5261	PR other/6955
5262	* collect2.c (collect_wait): Use WCOREDUMP and fix output message.
5263	* system.h (WCOREDUMP, WCOREFLG): Define if necessary.
5264
52652003-03-30  Richard Henderson  <rth@redhat.com>
5266
5267	PR c/10083
5268	* config/alpha/alpha.md (umuldi3_highpart): Change to expander;
5269	don't zero_extend const inputs.
5270
52712003-03-29  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
5272
5273	* doc/contrib.texi: Add Eric Botcazou and Roger Sayle.
5274	Uniformly use bugfix instead of bug fix.
5275
52762003-03-29  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
5277
5278	PR doc/895
5279	* ONEWS: Remove those items that already appear in the EGCS
5280	release notes on our web pages.
5281
52822003-03-29  Alan Modra  <amodra@bigpond.net.au>
5283
5284	* config/rs6000/rs6000.h (FUNCTION_VALUE_REGNO_P): Respect
5285	TARGET_HARD_FLOAT.  Reformat.
5286	(FUNCTION_ARG_REGNO_P): Likewise, and remove unneeded casts.
5287
52882003-03-29  Ulrich Weigand  <uweigand@de.ibm.com>
5289
5290	* config/s390/s390.c (s390_emit_prologoue): Make sure backchain is
5291	set up before any trapping memory access if flag_non_call_exceptions.
5292
52932003-03-29  Alan Modra  <amodra@bigpond.net.au>
5294
5295	* reload1.c (reload_as_needed): Allow a USE in asm reloads.
5296
5297	* loop.c: (find_mem_in_note_1, find_mem_in_note): Comment.
5298
52992003-03-28  Loren James Rittle  <ljrittle@acm.org>
5300
5301	* doc/install.texi (*-*-freebsd*): Update with known status.
5302
53032003-03-28  Ulrich Weigand  <uweigand@de.ibm.com>
5304
5305	* config/s390/s390.md ("literal_pool_31"): Output pool anchor
5306	label even if pool empty when generating PIC.
5307	("literal_pool_31", "literal_pool_64"): Coding style cleanup.
5308
53092003-03-28  Kazu Hirata  <kazu@cs.umass.edu>,
5310	    Dhananjay Deshpande  <dhananjayd@kpit.com>
5311
5312	PR target/10205
5313	* config/h8300/h8300.c (h8300_initial_elimination_offset):
5314	Correct the offset computation when TARGET_NORMAL.
5315
53162003-03-28  Eric Botcazou  <ebotcazou@libertysurf.fr>
5317
5318	PR target/10067
5319	* config/sparc/sparc.md (jump pattern): Correct order
5320	when issuing the annuling marker.
5321
53222003-03-28  Alan Modra  <amodra@bigpond.net.au>
5323
5324	* loop.c: (find_mem_in_note_1, find_mem_in_note): New functions.
5325	(replace_loop_mems): Add "written" param.  Remove invalid REG_EQUAL
5326	notes after hoisting.
5327	(load_mems): Adjust replace_loop_mems call.
5328
53292003-03-28  Eric Botcazou  <ebotcazou@libertysurf.fr>
5330
5331	PR c/8281
5332	* config/sparc/sparc.md (movdi_insn_sp32_v9): Remove 'f-f' alternative.
5333	(movdi reg/reg split): Match only on sparc32, and v9 when int regs.
5334
53352003-03-28  Eric Botcazou  <ebotcazou@libertysurf.fr>
5336	    Richard Henderson  <rth@redhat.com>
5337
5338	PR target/10114 and PR target/10084
5339	* dwarf2out.c (mem_loc_descriptor): Handle LO_SUM.
5340
53412003-03-27  Olivier Hainque  <hainque@act-europe.fr>
5342
5343	PR ada/9953
5344	* ada/Makefile.in (gnatlib configuration for HPUX): Split
5345	the general section for HPUX into specific sections for
5346	HPUX 10 and HPUX 11. Fix the setting of TGT_LIB in the HPUX
5347	11 case.
5348
53492003-03-26  Ulrich Weigand  <uweigand@de.ibm.com>
5350
5351	* config/s390/s390.c (s390_optimize_prolog): Do not save/restore
5352	registers used for global asm variables.
5353	(s390_frame_info, s390_arg_frame_offset): Likewise.
5354	(s390_emit_prologue, s390_emit_epilogue): Likewise.
5355
53562003-03-26  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
5357
5358	* doc/contrib.texi (Contributors): Update Janis Johnson.
5359
53602003-03-26  Jakub Jelinek  <jakub@redhat.com>
5361
5362	* config/ia64/ia64.c (ia64_expand_op_and_fetch): Fix comment.
5363	(ia64_expand_compare_and_swap): Use always DImode ar.ccv,
5364	zero extend old to it.
5365	* config/ia64/ia64.md (cmpxchg_acq_si): Remove mode from ccv
5366	operand.
5367
53682003-03-26  Eric Botcazou  <ebotcazou@libertysurf.fr>
5369
5370	PR target/7784
5371	* reload.c (find_reloads_address): Handle
5372	(PLUS (PLUS (REG) (REG)) (CONST_INT)) form for
5373	all base registers.
5374
53752003-03-25  Marcelo Abreu  <mmabreu@inf.ufrgs.br>
5376
5377	PR other/10203
5378	* version.c: Reference the GCC web site in the URL.
5379
53802003-03-25  Jan Hubicka  <jh@suse.cz>
5381
5382	PR opt/10056
5383	* cfglayout.c (fixup_reorder_chain):  Fix dealing with the conditional
5384	jump jumping to the next instruction.
5385	* cfgrtl.c (force_nonfallthru_and_redirect):  Likewise.
5386	* cfg.c (unchecked_make_edge): New.
5387	* basic-block.h (unchecked_make_edge): Declare.
5388
53892003-03-25  Jason Merrill  <jason@redhat.com>
5390
5391	PR optimization/10171
5392	* unroll.c (unroll_loop): Don't delete the jump at the end unless
5393	we also delete a jump at the beginning.
5394
53952003-03-25  Stephane Carrez  <stcarrez@nerim.fr>
5396
5397	* doc/contrib.texi (Contributors): Mention self as 68HC11/68HC12
5398	contributor.
5399
54002003-03-25  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
5401
5402	* doc/passes.texi (Passes): Properly document that we do not
5403	perform jump2 any longer; remove command-line option -dJ.
5404
54052003-03-25  Eric Botcazou  <ebotcazou@libertysurf.fr>
5406
5407	PR optimization/8746
5408	* config/i386/i386.md (and promoting splitters): Disable HImode to
5409	SImode promoting when the sign bit matters and is not preserved, or
5410	when TARGET_FAST_PREFIX is true. Disable promoting when optimizing
5411	for size.
5412
54132003-03-24  Stephane Carrez  <stcarrez@nerim.fr>
5414
5415	* config/m68hc11/t-m68hc11-gas (LIB1ASMFUNCS): Add _call_far and
5416	_return_far
5417	(MULTILIB_OPTIONS): Don't multilib on -mlong-calls.
5418	(MULTILIB_EXCEPTIONS): Likewise.
5419	* config/m68hc11/m68hc11.md ("call"): Support far calls for 68HC11
5420	by calling some board support routine.
5421	("call_value"): Likewise.
5422	("*return_void"): Likewise for return.
5423	("*return_16bit"): Likewise.
5424	("*return_32bit"): Likewise.
5425	* config/m68hc11/m68hc11.h (ASM_DECLARE_FUNCTION_NAME): Generate .far
5426	for 68HC11 too.
5427	(DWARF2_ADDR_SIZE): Use 4 so that addresses can
5428	* config/m68hc11/m68hc11.c (m68hc11_override_options): Accept
5429	-mlong-calls for 68HC11.
5430	* config/m68hc11/larith.asm (declare_near): New macro.
5431	(__premain, ___negsi2, ___one_cmplsi2, ___ashlsi3): Use it.
5432	(___ashrsi3, ___lshrsi3, ___lshrhi3, ___lshlhi3): Likewise.
5433	(___rotrhi3, ___rotlhi3, ___ashrhi3, ___ashrqi3): Likewise.
5434	(___lshlqi3, __divmodhi4, ___mulqi3, ___mulhi3): Likewise.
5435	(__mulhi32): Likewise.
5436	(ret): Update macro for 68HC11.
5437	(__far_trampoline): Implement for 68HC11.
5438	(__call_a16, __call_a32, __return_void, __return_16): New support
5439	routines for 68HC11 memory bank switching calling support.
5440	(__return_32): Likewise.
5441
54422003-03-21  Glen Nakamura  <glen@imodulo.com>
5443
5444	PR opt/10087
5445	* loop.c (loop_givs_reduce): Skip bivs with duplicate locations
5446	while incrementing giv.
5447	(record_biv): Check for duplicate biv locations and
5448	set (struct induction *) v->same if found.
5449
54502003-03-24  Janis Johnson  <janis187@us.ibm.com>
5451
5452	* doc/install.texi (Testing): Mention test result links from build
5453	status pages.
5454
54552003-03-24  Mark Mitchell  <mark@codesourcery.com>
5456
5457	* function.c (put_var_into_stack): Change bool parameter to int.
5458	(gen_mem_addressof): Likewise.
5459	* rtl.h (gen_mem_addressof): Likewise.
5460	* tree.h (put_var_into_stack): Likewise.
5461	* config/alpha/alpha.c (alpha_gp_save_rtx): Adjust call to
5462	gen_mem_addressof or put_var_into_stack.
5463	* config/c4x/c4x.c (c4x_expand_builtin): Likewise.
5464
54652003-03-24  Andreas Schwab  <schwab@suse.de>
5466
5467	* config/ia64/ia64.c (spill_tfmode_operand): Adjust calls to
5468	gen_mem_addressof.
5469
54702003-03-24  Jakub Jelinek  <jakub@redhat.com>
5471
5472	* expr.c (do_jump): Handle UNSAVE_EXPR specially.
5473
54742003-03-23  Eric Botcazou  <ebotcazou@libertysurf.fr>
5475
5476	PR target/10072
5477	* combine.c (simplify_if_then_else): Check that the mode
5478	has MODE_INT class before applying the (OP Z (mult COND C2))
5479	transformation.
5480
54812003-03-23  Eric Botcazou  <ebotcazou@libertysurf.fr>
5482
5483	PR optimization/9414
5484	* config/sparc/sparc.md (widening peepholes): Use
5485	widen_memory_access instead of change_address.
5486
54872003-03-23  Mark Mitchell  <mark@codesourcery.com>
5488
5489	PR c++/7086
5490	* c-typeck.c (c_mark_addressable): Adjust calls to
5491	put_var_into_stack.
5492	* expr.c (expand_expr): Likewise.
5493	* function.c (put_var_into_stack): Add rescan parameter.  Do not
5494	call fixup_var_refs when rescan is false.
5495	(gen_mem_addressof): Likewise.
5496	(assign_parms): Adjust calls to put_var_into_stack.
5497	(setjmp_protect): Likewise.
5498	(setjmp_protect_args): Likewise.
5499	* rtl.h (gen_mem_addressof): Change prototype.
5500	* stmt.c (expand_decl): Adjust calls to put_var_into_stack.
5501	* tree.h (put_var_into_stack): Change prototype.
5502
55032003-03-23  Arpad Beszedes <beszedes@cc.u-szeged.hu>
5504
5505	PR middle-end/9967
5506	* builtins.c (expand_builtin_fputs): When optimizing for size,
5507	don't transform fputs into fwrite.
5508
55092003-03-24  Alan Modra  <amodra@bigpond.net.au>
5510
5511	* config/rs6000/sysv4.h (ASM_OUTPUT_ALIGNED_BSS): Remove unnecessary
5512	globalize_label.
5513
5514	Merge from mainline.
5515	2003-01-13  Andreas Schwab  <schwab@suse.de>
5516	* config/rs6000/sysv4.h (ASM_OUTPUT_ALIGNED_LOCAL): Output type
5517	directive.
5518
55192003-03-23  Glen Nakamura <glen@imodulo.com>
5520
5521	PR c/8224
5522	* fold-const.c (extract_muldiv_1): Don't pass through type conversions
5523	when signedness changes for division or modulus.
5524
55252003-03-23  Richard Henderson  <rth@redhat.com>
5526
5527	* cfgcleanup.c (try_optimize_cfg): Allow merging of tablejumps
5528	before flow2.
5529	* cfgrtl.c (try_redirect_by_replacing_jump): Similarly.
5530
55312003-03-23  Richard Henderson  <rth@redhat.com>
5532
5533	PR opt/10116
5534	* ifcvt.c (find_if_block): Disallow tablejump insns outgoing
5535	from then_bb or else_bb after flow2.
5536	* jump.c (tablejump_p): New.
5537	* rtl.h: Declare it.
5538
55392003-03-22  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
5540
5541	* pa.c (output_cbranch): Fix typo in comment.
5542
55432003-03-22  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
5544
5545	* pa.c (output_cbranch, output_bb, output_bvb): Output nop for
5546	conditional branch to the following instruction.  Use next_real_insn
5547	instead of next_active_insn.
5548	(output_dbra, output_movb, jump_in_call_delay): Use next_real_insn
5549	instead of next_active_insn.
5550
55512003-03-22  Ulrich Weigand  <uweigand@de.ibm.com>
5552
5553	* config/s390/s390.md ("movti", "*movdi_31", "*movdf_31"): Use 'o' instead
5554	of 'm' constraint in forced-split alternatives.
5555	("*adddi3_31", "*subdi3_31"): Likewise.  Also, pass 0 instead of 1 as
5556	VALIDATE_ADDRESS parameter to operand_subword.
5557
55582003-03-22  Svein E. Seldal  <Svein.Seldal@solidas.com>
5559
5560	* config/c4x/t-c4x (MULTILIB_MATCHES): Make gcc recognize a c33 as
5561	a c30 instead of a c40 processor.
5562
55632003-03-21  Richard Henderson  <rth@redhat.com>
5564
5565	PR opt/2001
5566	* bb-reorder.c (maybe_duplicate_computed_goto_succ): New.
5567	(make_reorder_chain_1): Call it.
5568
5569	* function.h (struct function): Add computed_goto_common_label,
5570	computed_goto_common_reg.
5571	* function.c (free_after_compilation): Zap them.
5572	* stmt.c (expand_computed_goto): Use them to produce one
5573	indirect branch per function.
5574
55752003-03-22  Stephane Carrez  <stcarrez@nerim.fr>
5576
5577	* config/m68hc11/m68hc11.md ("call_value"): Fix trap check.
5578
55792003-03-22  Stephane Carrez  <stcarrez@nerim.fr>
5580
5581	* config/m68hc11/m68hc11.h (ASM_DECLARE_FUNCTION_NAME): Fix typo in
5582	writing .interrupt command.
5583	* config/m68hc11/m68hc11.md ("call"): Look at the symbol to see
5584	if it's a far or near function.
5585	("call_value"): Likewise.
5586	* config/m68hc11/m68hc11.c (m68hc11_attribute_table): Add far and
5587	near attributes.
5588	(m68hc11_handle_fntype_attribute): Accept attributes on methods.
5589	(m68hc11_override_options): Ignore -mlong-calls for 68HC11.
5590	(m68hc11_initial_elimination_offset): Set current_function_far
5591	according to attributes.
5592	(expand_prologue): Likewise.
5593	(trap_handler_symbol): New global to keep track of trap handlers.
5594	(m68hc11_encode_section_info): Mark symbol as far if needed; set
5595	trap symbol.
5596	(m68hc11_is_far_symbol): New function.
5597	(m68hc11_is_trap_symbol): New function.
5598	* config/m68hc11/m68hc11-protos.h (m68hc11_is_far_symbol): Declare.
5599	(m68hc11_is_trap_symbol): Declare.
5600
56012003-03-21  Jan Hubicka  <jh@suse.cz>
5602
5603	PR inline-asm/7916
5604
5605	* function.c (instantiate_virtual_regs_lossage): New function.
5606	(instantiate_virtual_regs_1): Use it.
5607	(instantiate_virtual_regs): Do not continue in substition when insn has
5608	been deleted.
5609
56102003-03-21  Ulrich Weigand  <uweigand@de.ibm.com>
5611
5612	* config/s390/s390.h: Do not include fixdfdi.h on s390x.
5613	(TARGET_64BIT): Define as compile-time constant when IN_LIBGCC2.
5614	(MIN_UNITS_PER_WORD): Do not define when IN_LIBGCC2.
5615
56162003-03-21  Volker Reichelt  <reichelt@igpm.rwth-aachen.de>
5617
5618	PR doc-bug/9813
5619	* doc/extend.texi: Move misplaced paragraph about underscores in
5620	variables in macros.
5621
56222003-03-21  Volker Reichelt  <reichelt@igpm.rwth-aachen.de>
5623
5624	* doc/invoke.texi: Fix table environment.
5625
56262003-03-21 Richard Earnshaw  <rearnsha@arm.com>
5627
5628	* ifcvt.c (find_if_case_1): If we add a new bb, update the dominance
5629	information.
5630
56312003-03-21  Eric Botcazou  <ebotcazou@libertysurf.fr>
5632	    Richard Henderson  <rth@redhat.com>
5633
5634	PR optimization/8366
5635	* config/sparc/sparc.h: (SYMBOLIC_CONST): New macro.
5636	(GO_IF_LEGITIMATE_ADDRESS): Use it. Reject the form
5637	PIC+SYMBOLIC_CONST in other modes than Pmode.
5638	(GO_IF_MODE_DEPENDENT_ADDRESS): Use it. Mark
5639	the form PIC+SYMBOLIC_CONST as mode dependent.
5640
56412003-03-20  Richard Henderson  <rth@redhat.com>
5642
5643	* fold-const.c (extract_muldiv_1): Revert changing order of
5644	operands in case MULT_EXPR of 2003-02-16 patch.
5645
56462003-03-20  Richard Henderson  <rth@redhat.com>
5647
5648	PR c/8602
5649	* integrate.c (output_inline_function): Reset input_filename
5650	and lineno from the decl before rest_of_compilation.
5651
56522003-03-20  Richard Earnshaw  <rearnsha@arm.com>
5653
5654	PR 10066
5655	* arm.md (UNSPEC_PIC_BASE): New constant.
5656	(pic_add_dot_plus_four): Wrap with unspec.
5657	(pic_add_dot_plus_eight): Likewise.
5658
56592003-03-19  Ulrich Weigand  <uweigand@de.ibm.com>
5660
5661	* config/s390/s390.c (s390_preferred_reload_class): Do not
5662	force constants to the pool unless necessary.
5663	(s390_decompose_address): Prefer to use pointer as base,
5664	not index register.
5665	* config/s390/s390.md ("*tsthiCCT_only"): Remove '?' from
5666	Q alternative.
5667	("*movdi_64", "*movsi", "movhi", "movqi_64", "movqi",
5668	"*movdf_64", "*movsf"): Add '?' to Q->Q alternatives.
5669	("*extractqi", "*extracthi", "*zero_extendhisi2_31",
5670	"*zero_extendqisi2_31", "*zero_extendqihi2_31",
5671	"*adddi3_31", "*subdi3_31"): Do not set "type" attribute.
5672
56732003-03-19  Jakub Jelinek  <jakub@redhat.com>
5674
5675	* config/rs6000/rs6000.c (rs6000_emit_load_toc_table): Don't call
5676	rs6000_maybe_dead if !fromprolog.
5677
56782003-03-19  Jakub Jelinek  <jakub@redhat.com>
5679
5680	* ifcvt.c (dead_or_predicable): Fail if there are any references
5681	to tablejump in merge_bb other than the final JUMP_INSN.
5682
56832003-03-19  Jakub Jelinek  <jakub@redhat.com>
5684
5685	* stmt.c (expand_start_case): Call emit_queue ().
5686
56872003-03-19  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
5688
5689	PR 10062
5690	* config/pa/pa-hpux.h (TARGET_HPUX_UNWIND_LIBRARY): Redefine.
5691	* pa-protos.h (output_lbranch): New prototype.
5692	* pa.c (compute_frame_size): Change size of the frame marker on the
5693	64-bit ports to 48 bytes.
5694	(pa_output_function_prologue): Document why SAVE_SP is set.
5695	(hppa_expand_prologue): Save previous stack pointer into frame marker
5696	on targets which use the hpux unwind library.
5697	(output_cbranch): Use output_lbranch.
5698	(output_lbranch): New function to output long unconditional branches.
5699	* pa.h (TARGET_HPUX_UNWIND_LIBRARY): Define.
5700	(STACK_POINTER_OFFSET): Update offset for 48-byte frame marker on
5701	64-bit ports.
5702	* pa.md (jump): Use output_lbranch.
5703	(allocate_stack): New expander for dynamic stack allocation.
5704
57052003-03-18  Alexandre Oliva  <aoliva@redhat.com>
5706
5707	* toplev.c (independent_decode_option): Return success for --help,
5708	--target-help and --version.
5709
57102003-03-19  Alan Modra  <amodra@bigpond.net.au>
5711
5712	PR target/10073
5713	* combine.c (force_to_mode <NOT>): Use gen_int_mode.
5714
57152003-03-18  Andreas Schwab  <schwab@suse.de>
5716
5717	PR target/7248
5718	* config/m68k/m68k.md (iordi3): Fix setting low half to -1.  From
5719	martin@blom.org.
5720
57212003-03-17  Jason Merrill  <jason@redhat.com>
5722
5723	PR c++/10091
5724	* expr.c (expand_expr) [ADDR_EXPR]: Disallow taking the address of
5725	an unaligned member of TREE_ADDRESSABLE type.
5726
57272003-03-17  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
5728
5729	* dwarf2asm.h: Delete obsolete comment.
5730	(dw2_asm_output_data, dw2_asm_output_delta, dw2_asm_output_offset,
5731	dw2_asm_output_pcrel, dw2_asm_output_addr,
5732	dw2_asm_output_addr_rtx, dw2_asm_output_encoded_addr_rtx,
5733	dw2_asm_output_nstring, dw2_asm_output_data_uleb128,
5734	dw2_asm_output_data_sleb128, dw2_asm_output_delta_uleb128,
5735	dw2_asm_output_delta_sleb128): Add ATTRIBUTE_NULL_PRINTF.
5736
57372003-03-17  Steve Ellcey  <sje@cup.hp.com>
5738
5739	* stmt.c (tail_recursion_args): Call promote_mode to set
5740	unsignedp flag correctly before calling convert_move.
5741
57422003-03-17  Dave Love  <fx@gnu.org>
5743	    Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
5744
5745	* config/alpha/osf.h (TARGET_OS_CPP_BUILTINS): Define __digital__,
5746	__arch64__ to match Compaq cc.
5747
57482003-03-17  Michael Hayes  <m.hayes@elec.canterbury.ac.nz>
5749
5750	* function.c (thread_prologue_and_epilogue_insns): Set delete_unused
5751	argument to 0 for redirect_jump.
5752
57532003-03-16  Mark Mitchell  <mark@codesourcery.com>
5754
5755	PR c++/8805
5756	* except.c (eh_region_u_cleanup): Add prev_try.
5757	(expand_eh_region_end_cleanup): Set it.
5758	(reachable_handlers): Use it to skip over cleanup blocks.
5759
57602003-03-16  Richard Henderson  <rth@redhat.com>
5761
5762	PR opt/6798
5763	* cfgcleanup.c: Include params.h.
5764	(try_crossjump_bb): Use PARAM_MAX_CROSSJUMP_EDGES.  Fix test for
5765	too many outgoing edges from a block.
5766	* Makefile.in (cfgcleanup.o): Depend on PARAMS_H.
5767	* params.def (max-crossjump-edges): New.
5768	* doc/invoke.texi: Document it.
5769
57702003-03-16  Richard Henderson  <rth@redhat.com>
5771
5772	* config/i386/i386.md (movstrictqi, movstrictqi_1): Check
5773	optimize_size as well.
5774
57752003-03-16  Stephane Carrez  <stcarrez@nerim.fr>
5776
5777	* config/m68hc11/m68hc11.c (print_operand): Handle 'b' modifier
5778	for D register to specify the low part of it, aka B.
5779	(m68hc11_gen_movhi): Use REG_WAS_0 note and increment or decrement
5780	the register if we are loading 1 or -1 to it; avoid using temp
5781	register when moving X/Y to Y/X.
5782	(m68hc11_gen_movqi): Likewise.
5783	(m68hc11_check_z_replacement): Fix last insn setting for compare case.
5784
57852003-03-14  Mark Mitchell  <mark@codesourcery.com>
5786
5787	PR optimization/9016
5788	* config/i386/i386.c (ix86_expand_move): Force more CONST_DOUBLEs
5789	into the constant pool.
5790
57912003-03-16  Falk Hueffner  <falk.hueffner@student.uni-tuebingen.de>
5792
5793	PR target/9164
5794	* tree.c (get_narrower): For extensions with unchanged bit number,
5795	return the unsignedness of the outer mode.
5796
57972003-03-16  Roger Sayle  <roger@eyesopen.com>
5798
5799	* c-typeck.c (build_component_ref):  Turn "for" into "do .. while"
5800	to avoid "may be used uninitialized" warning on ia64-hpux.
5801	* config/ia64/ia64-c.c: Include "tm_p.h" for function prototypes.
5802
58032003-03-16  Neil Booth  <neil@daikokuya.co.uk>
5804
5805	* cppinit.c: Remove support of -A-.
5806	* doc/cppopts.texi: Remove documentation of -A-.
5807
58082003-03-15  Richard Henderson  <rth@redhat.com>
5809
5810	2003-01-14  Richard Henderson  <rth@redhat.com>
5811	* config/alpha/alpha.c (alpha_expand_mov): Use correct mode
5812	for force_const_mem.
5813
58142003-03-15  Richard Henderson  <rth@redhat.com>
5815
5816	PR target/9700
5817	* config/alpha/alpha.c (alpha_va_start): Account for
5818	current_function_pretend_args_size in the AP offset.
5819
58202003-03-15  Jason Merrill  <jason@redhat.com>
5821
5822	PR debug/6387
5823	* dwarf2out.c (dwarf2out_decl): If we're at -g1, just stick nested
5824	function DIEs at toplevel.
5825	(decls_for_scope): At -g1, don't descend into subblocks.
5826
58272003-03-15  Ulrich Weigand  <uweigand@de.ibm.com>
5828
5829	* varasm.c (struct rtx_const): Change type of un.addr member
5830	to struct holding an additional 'symbol' member.
5831	(decode_rtx_const): Re-enable optimization to count SYMBOL_REFs
5832	with equal string addresses as equal.
5833	(simplify_subtraction): Adapt to struct rtx_const change.
5834
58352003-03-15  Glen Nakamura  <glen@imodulo.com>
5836
5837	* reload1.c (choose_reload_regs): Use && instead of ||
5838	with REG_CANNOT_CHANGE_MODE_P condition.
5839
58402003-03-15  Michael Hayes  <m.hayes@elec.canterbury.ac.nz>
5841
5842	PR optimization/9387
5843	* function.c (thread_prologue_and_epilogue_insns): Use redirect jump
5844	for conditional returns.
5845
58462003-03-14  Jason Merrill  <jason@redhat.com>
5847
5848	PR optimization/6871
5849	* varasm.c (assemble_variable): Leave constant zeroes in .rodata.
5850
58512003-03-12  Andrew Lewycky  <andrew@mxc.ca>
5852
5853	PR c++/7050
5854	* expr.c (store_expr): Don't attempt to store void-typed trees,
5855	just evaluate them for side effects.
5856
58572003-03-14  Eric Botcazou  <ebotcazou@libertysurf.fr>
5858
5859	PR optimization/8396
5860	* tree-inline.c (initialize_inlined_parameters): Make sure the value
5861	of read-only constant arguments is passed with the right type.
5862
58632003-03-14  Andreas Jaeger  <aj@suse.de>
5864	    Gwenole Beauchesne  <gbeauchesne@mandrakesoft.com>
5865
5866	* linux64.h (TARGET_OS_CPP_BUILTINS): Define _LP64 and __LP64__ in
5867	64-bit mode.
5868
58692003-03-13  Mike Stump  <mrs@apple.com>
5870
5871	* ggc-page.c (struct page_entry): Remove varray.h header.
5872	Add index_by_depth field.
5873	Remove save_in_use_p field.
5874	(struct globals): Add depth_in_use, depth_max, by_depth_in_use,
5875	by_depth_max, by_depth, and save_in_use fields.
5876	(INITIAL_PTE_COUNT): Add.
5877	(save_in_use_p_i): Add.
5878	(save_in_use_p): Add.
5879	(adjust_depth): Add.
5880	(push_depth): Add.
5881	(push_by_depth): Add.
5882	(prefetch): Add.
5883	(free_page): Add support for and use faster data structures.
5884	(ggc_alloc): Likewise.
5885	(init_ggc): Likewise.
5886	(ggc_recalculate_in_use_p): Likewise.
5887	(ggc_pop_context): Likewise.
5888	(clear_marks): Likewise.
5889	* Makefile.in (ggc-page.o): Remove varray.h.
5890
58912003-03-12  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
5892
5893	* pa.c (pa_init_builtins): Fix warning.
5894
58952003-03-12  Richard Henderson  <rth@redhat.com>
5896
5897	PR opt/8178
5898	* config/i386/i386.md (ffssi2): Tighten op1 predicate to
5899	the requirements of the output insns.
5900
59012003-03-12  Steve Ellcey  <sje@cup.hp.com>
5902
5903	* config/ia64/ia64.h (ASM_OUTPUT_XDATA_CHAR): Remove.
5904	(ASM_OUTPUT_XDATA_SHORT): Remove.
5905	(ASM_OUTPUT_XDATA_INT): Remove.
5906	(ASM_OUTPUT_XDATA_DOUBLE_INT): Remove.
5907	(ASM_OUTPUT_ADDR_DIFF_ELT): Handled 32 bit address diffs.
5908	(ASM_PREFERRED_EH_DATA_FORMAT): Handle 32 bit EH pointers.
5909	(CASE_VECTOR_MODE): Handle 32 bit pointers in case statement.
5910
59112003-03-12  Andrew Lewycky  <andrew@mxc.ca>
5912
5913	PR c++/7050
5914	* expr.c (store_expr): Don't attempt to store void-typed trees,
5915	just evaluate them for side effects.
5916
59172003-03-12  Bob Wilson  <bob.wilson@acm.org>
5918
5919	Backport from mainline:
5920	2003-03-12  Bob Wilson  <bob.wilson@acm.org>
5921
5922	* config/xtensa/xtensa.md (adddi3): Don't clobber source operand used
5923	to detect carry.
5924	(subdi3): Reorder emitted instructions.
5925
59262003-03-12  Jan Hubicka  <jh@suse.cz>
5927
5928	* i386.c (ix86_setup_incoming_varargs): Set stack_alignment_needed to 128.
5929
59302003-03-12  Daniel Jacobowitz  <drow@mvista.com>
5931
5932	Fix PR target/9797 and PR c/9853.
5933	* stmt.c (expand_decl_init): Call push_temp_slots () and
5934	pop_temp_slots ().
5935
59362003-03-12  Hans-Peter Nilsson  <hp@bitrange.com>
5937
5938	* configure.in (rlim_t): Define to long if no valid definition
5939	found in sys/resource.h.
5940	* config.in, configure: Regenerate.
5941
59422003-03-12  Eric Botcazou  <ebotcazou@libertysurf.fr>
5943
5944	PR c/9928
5945	* c-decl.c (duplicate_decls): Discard the initializer of the new decl
5946	only if it is a VAR_DECL.
5947
59482003-03-12  Eric Botcazou  <ebotcazou@libertysurf.fr>
5949
5950	PR optimization/9888
5951	* config/i386/i386.md (jcc_1): Fix range.
5952	(jcc_2): Likewise.
5953	(jump): LIkewise.
5954	(doloop_end_internal): Likewise.
5955
59562003-03-12  Eric Botcazou  <ebotcazou@libertysurf.fr>
5957
5958	PR optimization/9888
5959	* config/i386/i386.md (movsi_1): Remove special alternatives
5960	for %eax register.
5961	(movhi_1): Likewise.
5962	* config/i386/i386.c (memory_address_length): Do not use
5963	short displacement when there is no base.
5964	(ix86_attr_length_address_default): Handle LEA instructions.
5965
59662003-03-11  Loren James Rittle  <ljrittle@acm.org>
5967
5968	(per-port preprocessor fix, concurrent to Neil's cppinit.c fix)
5969	* config/freebsd-spec.h (FBSD_CPP_PREDEFINES): Remove.
5970	(FBSD_TARGET_OS_CPP_BUILTINS): New port-specific macro.
5971	(FBSD_TARGET_CPU_CPP_BUILTINS): New port-specific macro.
5972	* config/freebsd.h (CPP_PREDEFINES): Remove.
5973	(TARGET_OS_CPP_BUILTINS): New.
5974	* config/alpha/freebsd.h: Use overridden FBSD_TARGET_CPU_CPP_BUILTINS
5975	instead of TARGET_OS_CPP_BUILTINS.
5976	* config/sparc/freebsd.h (CPP_PREDEFINES): Remove.
5977
59782003-03-11  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
5979
5980	PR bootstrap/9994
5981	Backport from mainline:
5982
5983	2003-02-18  Roger Sayle  <roger@eyesopen.com>
5984
5985	* sbitmap.c (sbitmap_resize): New function.
5986	* sbitmap.h (sbitmap_resize): Prototype here.
5987	* recog.c (split_all_insns): Use sbitmap_resize.
5988
5989	Mon Feb 17 16:16:54 CET 2003  Jan Hubicka  <jh@suse.cz>
5990
5991	* recog.c (split_all_insns):  Fix memory overflow.
5992
5993	2003-02-15  Richard Henderson  <rth@redhat.com>
5994
5995	* recog.c (split_all_insns): Include new blocks in life update;
5996	do a global life update.
5997
59982003-03-11  Hans-Peter Nilsson  <hp@bitrange.com>
5999
6000	* config/cris/cris.md: Remove lingering EGCS reference.
6001	("*extopqihi_side_biap"): For HI operation, match
6002	cris_additive_operand_extend_operator, not
6003	cris_operand_extend_operator.  Adjust condition.
6004	("*extopqihi_side", "*extopqihi"): Ditto.
6005	("*extopqisi_side_biap"): Correct operand numbers in condition.
6006	("*extophisi_side_biap", "*extopqisi_swap_side_biap"): Ditto.
6007	("*extophisi_swap_side_biap", "*extopqisi_swap"): Ditto.
6008	("*extophisi_swap"): Ditto.
6009	("*extopqihi_swap_side_biap"): For HI operation, match a simple
6010	PLUS, not cris_operand_extend_operator.  Adjust condition and
6011	output template.
6012	("*extopqihi_swap_side", "*extopqihi_swap"): Ditto.
6013	* config/cris/cris.h (PREDICATE_CODES): Add
6014	cris_additive_operand_extend_operator.
6015	* config/cris/cris.c (cris_additive_operand_extend_operator):
6016	New predicate.
6017
6018	* config/cris/aout.h (ENDFILE_SPEC): Undef.
6019	(CRIS_CPP_SUBTARGET_SPEC): Move -D__AOUT__ to...
6020	(TARGET_OS_CPP_BUILTINS): New macro.
6021	(HAVE_GAS_HIDDEN): Undef.
6022	* config/cris/cris.h: Remove EGCS references.
6023	(CPP_SPEC): Remove "-$".
6024	(INIT_CUMULATIVE_ARGS): Correct comment.
6025	* config/cris/cris.h (CRIS_CPP_SUBTARGET_SPEC): Move -D__ELF__ to...
6026	(TARGET_OS_CPP_BUILTINS): New macro.
6027	(CPP_PREDEFINES): Don't define.  Move old definitions and...
6028	(CPP_SPEC): ...move -D__CRIS_ABI_version=2 to...
6029	(TARGET_CPU_CPP_BUILTINS): New macro.
6030	* config/cris/linux.h (CRIS_CPP_SUBTARGET_SPEC): Move constant
6031	definitions and the optional __PIC__, __pic__ and
6032	__NO_UNDERSCORES__ definitions to...
6033	(TARGET_OS_CPP_BUILTINS): New macro.
6034
60352003-03-10  Devang Patel  <dpatel@apple.com>
6036
6037	PR c++/9394
6038	* gcc.c (DEFAULT_SWITCH_TAKES_ARG): Remove.
6039	(DEFAULT_WORD_SWITCH_TAKES_ARG): Remove.
6040	* gcc.h (DEFAULT_SWITCH_TAKES_ARG): Add.
6041	(DEFAULT_WORD_SWITCH_TAKES_ARG): Add.
6042	* cppspec.c (DEFAULT_SWTICH_TAKES_ARG): Remove.
6043	(DEFAULT_WORD_SWITCH_TAKES_ARG): Remove.
6044
60452003-03-10  Stephane Carrez  <stcarrez@nerim.fr>
6046
6047	* config/m68hc11/m68hc11.h (HARD_REGNO_RENAME_OK): Define.
6048	* config/m68hc11/m68hc11-protos.h (m68hc11_hard_regno_rename_ok):
6049	Declare.
6050	* config/m68hc11/m68hc11.c (m68hc11_hard_regno_rename_ok): New function
6051	for reg rename optimization to avoid using Z and Y registers.
6052
60532003-03-10  Stephane Carrez  <stcarrez@nerim.fr>
6054
6055	* config/m68hc11/m68hc11.md ("*addhi3_68hc12"): Accept any constant
6056	when adding to X and Y since leax/leay are fast.
6057	("*addhi3"): Accept 'I' constraint when adding to address register.
6058	("rotlhi3"): Operand 1 must be a register_operand.
6059	(peephole2): New peephole to optimize some adds.
6060	* config/m68hc11/m68hc11.h (CONST_OK_FOR_LETTER_P): Use 'I' constraint
6061	to represent -2 .. 2 small integer range.
6062
60632003-03-10  Stephane Carrez  <stcarrez@nerim.fr>
6064
6065	* config/m68hc11/m68hc11.c (m68hc11_gen_rotate): Set carry before
6066	each 16-bit rotation.
6067
60682003-03-10  Aldy Hernandez  <aldyh@redhat.com>
6069
6070	* config/rs6000/spe.h: Merge from mainline.
6071
60722003-03-10  Jan Hubicka  <jh@suse.cz>
6073
6074	* toplev.c (rest_of_compilation):  Revert the previous patch.
6075
60762003-03-09  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
6077
6078	PR middle-end/9986
6079	* c-common.c (c_common_nodes_and_builtins): Initialize target builtins
6080	after the common builtins.
6081	* pa-hpux.h (DONT_HAVE_FPUTC_UNLOCKED): Define.
6082	* pa.c (TARGET_INIT_BUILTINS): Define.
6083	(pa_init_builtins): New function.
6084
6085	* pa.md (call, call_value, sibcall, sibcall_value): When sufficient
6086	space has been allocated for the outgoing arguments, set the arg
6087	pointer for a call emitted after virtuals have been instantiated
6088	using the stack pointer offset, otherwise abort.
6089
60902003-03-06  Jan Hubicka  <jh@suse.cz>
6091
6092	* toplev.c (rest_of_compilation):  Defer RTL compilation only when
6093	RTL inlining is done.
6094
6095	* i386.c (ix86_expand_vector_move): Do not crash when offloading
6096	to memory in PIC mode.
6097
60982003-03-08  Neil Booth  <neil@daikokuya.co.uk>
6099
6100	* cppinit.c (cpp_finish_options): Set first_unused_line to -1.
6101
61022003-03-08  Eric Botcazou  <ebotcazou@libertysurf.fr>
6103
6104	PR middle-end/7796
6105	* unroll.c (calculate_giv_inc): Handle constants being
6106	loaded with LSHIFTRT.
6107
61082003-03-07  Eric Botcazou  <ebotcazou@libertysurf.fr>
6109
6110	PR optimization/8726
6111	Backport patch from mainline:
6112
6113	2003-01-08  Dale Johannesen  <dalej@apple.com>
6114
6115	* function.c (assign_parms):  Don't set pretend_args_size if
6116	REG_PARM_STACK_SPACE.
6117
61182003-03-06  Kurt Garloff  <garloff@suse.de>
6119	    Geoffrey Keating  <geoffk@apple.com>
6120	    Dale Johannesen  <dalej@apple.com>
6121	* params.def: Introduce parameter max-inline-insns-rtl for
6122	a separate limit for the RTL inliner.
6123	* params.h: Likewise.
6124	* integrate.c (function_cannot_inline_p): Use it.
6125	* toplev.c (decode_f_option): Set multiple parameters
6126	controlling inlining with -finline-limit.
6127	* params.def: Fix orthographic and typographic errors.
6128	* doc/invoke.texi: Document parameters controlling inlining
6129	and the way -finline-limit sets multiple of them.
6130	* tree.h (struct tree_decl): Introduce inlined_function_flag,
6131	recording whether the function became eligible for inlining
6132	by a compiler flag rather than the declaration.
6133	Provide DID_INLINE_FUNC macro to access it.
6134	* c-decl.c (grokdeclarator): Set DID_INLINE_FUNC.
6135	* cp/decl.c (grokfndecl): Likewise.
6136	* toplev.c (rest_of_compilation): Likewise.
6137	* cp/optimize (maybe_clone_body): Copy DID_INLINE_FUNC.
6138	* print-tree.c (print_node): Report it.
6139	* params.def: Introduce new max-inline-insns-auto limit.
6140	* params.h: Likewise.
6141	* tree-inline.c (inlinable_function_p): Apply it to functions
6142	with DID_INLINE_FUNC set.
6143	* toplev.c (decode_f_option): Initialize it from -finline-limit
6144	value.
6145	* doc/invoke.texi: Document new parameter.
6146
61472003-03-06  Michael Matz  <matz@suse.de>
6148
6149	* i386/i386.c (ix86_save_reg): Also test
6150	current_function_uses_const_pool.
6151
61522003-03-05  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
6153
6154	* pa.md (return_external_pic): Add !TARGET_PA_20 to constraint.
6155	(epilogue): Don't generate return_external_pic when emitting PA 2.0
6156	code.
6157
61582003-03-05  Stephane Carrez  <stcarrez@nerim.fr>
6159
6160	* config/m68hc11/m68hc11.h (PAD_VARARGS_DOWN): Define and return
6161	according to va_arg type.
6162	(EXPAND_BUILTIN_VA_ARG): Remove.
6163	* config/m68hc11/m68hc11.c (m68hc11_va_arg): Remove.
6164	* config/m68hc11/m68hc11-protos.h (m68hc11_va_arg): Remove.
6165
61662003-03-05  Jan Hubicka  <jh@suse.cz>
6167
6168	* toplev.c (rest_of_compilation):  Do duplicate loop headers when
6169	optimizing for size.
6170
61712003-03-05  Michael Matz  <matz@suse.de>
6172
6173	* unwind.h: Add the GPL exception.
6174	* Makefile.in (USER_H): Add unwind.h.
6175
61762003-03-05  Eric Botcazou  <ebotcazou@libertysurf.fr>
6177
6178	PR c/9799
6179	* c-typeck.c (push_init_level): Add sanity check.
6180
61812003-03-04  Steve Ellcey  <sje@cup.hp.com>
6182
6183	* expr.c (convert_modes): Check for legal hard register.
6184
61852003-03-04  Andreas Schwab  <schwab@suse.de>
6186
6187	* config/m68k/m68k.c (m68k_output_function_prologue): Fix CFA
6188	offset without frame pointer.
6189
61902003-03-04  Steve Ellcey  <sje@cup.hp.com>
6191
6192	* expr.c (expand_expr): Call promote_mode to set unsignedp.
6193
61942003-03-04  Roger Sayle  <roger@eyesopen.com>
6195
6196	PR c++/9367
6197	* builtin-types.def (DEF_FUNCTION_TYPE_VAR_3): New macro.
6198	(BT_FN_INT_CONST_STRING_VALIST_ARG,
6199	BT_FN_INT_STRING_CONST_STRING_VALIST_ARG,
6200	BT_FN_INT_CONST_STRING_CONST_STRING_VALIST_ARG,
6201	BT_FN_INT_STRING_SIZE_CONST_STRING_VALIST_ARG,
6202	BT_FN_INT_STRING_CONST_STRING_VAR,
6203	BT_FN_INT_CONST_STRING_CONST_STRING_VAR,
6204	BT_FN_INT_STRING_SIZE_CONST_STRING_VAR): New built-in types.
6205	* builtin-attrs.def (ATTR_NONNULL_1, ATTR_NONNULL_2,
6206	ATTR_NONNULL_3): Also include the nothrow attribute.
6207	(sprintf, scanf, sscanf, vprintf, vsprintf, snprintf,
6208	vsnprintf, vscanf, vsscanf): Don't define attributes here.
6209	* builtins.def (putchar, puts): Make full C89 built-ins.
6210	(snprintf, sprintf, scanf, sscanf, vprintf, vscanf,
6211	vsscanf, vsnprintf, vsprintf): New built-ins.
6212	* c-common.c (c_common_nodes_and_builtins): Handle new macro
6213	DEF_FUNCTION_TYPE_VAR_3.
6214
6215	* doc/extend.texi: Document these new built-in functions.
6216
62172003-03-04  Jan Hubicka  <jh@suse.cz>
6218
6219	* calls.c (rtx_for_function_call): Take the address as an argument
6220	(expand_call): Do not modify the expression.
6221
62222003-03-04  Kevin Buettner  <kevinb@redhat.com>
6223
6224	* dwarf2out.c (rtl_for_decl_location): Don't return NULL_RTX for
6225	global register variables.
6226
62272003-03-03  Richard Henderson  <rth@redhat.com>
6228
6229	* configure.in (HAVE_AS_LTOFFX_LDXMOV_RELOCS): New ia64 test.
6230	* config.in, configure: Rebuild.
6231	* config/ia64/ia64.c (ia64_ld_address_bypass_p): Accept lo_sum.
6232	* config/ia64/ia64.md (load_symptr): Use high/lo_sum for the
6233	paired ldtoffx and ldxmov annotations.
6234	(load_symptr_internal1): Remove.
6235	(load_symptr_high, load_symptr_low): New.
6236	* config/ia64/ia64.h (HAVE_AS_LTOFFX_LDXMOV_RELOCS): Default to 0.
6237
62382003-03-03  Jason Merrill  <jason@redhat.com>
6239
6240	* calls.c (compute_argument_addresses): Give the new MEMs a
6241	minimum alignment of PARM_BOUNDARY.
6242
62432003-03-03  Geoffrey Keating  <geoffk@apple.com>
6244
6245	* doc/install.texi (Specific): Update entry for powerpc-darwin.
6246
62472003-03-03  Jan Hubicka  <jh@suse.cz>
6248	* toplev.c (rest_of_compilation):  Avoid cfg_cleanup calls when not
6249	optimizing.
6250
62512003-02-28  Jan Hubicka  <jh@suse.cz>
6252
6253	* combine.c (gen_lowpart_for_combine): Update handling of subregs_of_mode
6254	* flow.c (life_analysis, mark_used_regs): Likewise.
6255	* regclass.c (subregs_of_mode): Turn into single bitmap.
6256	(cannot_change-mode_set_regs, invalid_mode_change_p): Update
6257	dealing with subregs_of_mode
6258	* regs.h (subregs_of_mode): Update prototype.
6259
62602003-02-28  Jan Hubicka  <jh@suse.cz>
6261
6262	* toplev.c (rest_of_compilation): Rearrange insn splitting
6263	* reg-stack.c (reg_to_stack): Do not split insns.
6264
62652003-03-02  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
6266
6267	* ggc-common.c (ggc_rlimit_bound): Cast RLIM_INFINITY to avoid
6268	warnings.
6269
62702003-03-02  Stephane Carrez  <stcarrez@nerim.fr>
6271
6272	* config/m68hc11/m68hc11.c (m68hc11_override_options): Don't enable
6273	min/max instructions by default as may result in reload errors.
6274
62752003-03-02  Stephane Carrez  <stcarrez@nerim.fr>
6276
6277	* config/m68hc11/m68hc11.md ("mulqi3"): Allow address register to
6278	avoid reload problems; define split for it.
6279
62802003-03-02  Stephane Carrez  <stcarrez@nerim.fr>
6281
6282	* config/m68hc11/m68hc11.c (m68hc11_shift_operator): New function.
6283	* config/m68hc11/m68hc11-protos.h (m68hc11_shift_operator): Declare.
6284	* config/m68hc11/m68hc11.h (PREDICATE_CODES): Register.
6285	* config/m68hc11/m68hc11.md ("rotrhi3", "rotlhi3"): New patterns for
6286	rotatert and rotate.
6287	("rotrhi3_const", "rotlhi3_const"): Rename of old 'rotrhi3' insns.
6288	("*rotrhi3", "*rotlhi3"): New insn pattern for non-const rotatert.
6289	("*rotrhi3_addr"): New split for shift insns on address register.
6290	("*lshrhi3", "*ashrhi3", "*ashlhi3_2"): Use new split.
6291	* config/m68hc11/larith.asm (___rotlhi3): New asm function.
6292	(___rotrhi3): Likewise.
6293	* config/m68hc11/t-m68hc11-gas (LIB1ASMFUNCS): Build them.
6294
62952003-03-02  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
6296
6297	* fp-bit.h (float_to_usi): Fix condition wrapping prototype.
6298
62992003-03-02  Ashif Harji  <asharji@uwaterloo.ca>
6300
6301	* gcc.c (default_compilers): Add -no-integrated-cpp flag to invoke
6302	  an external cpp during compilation.
6303	(option_map): Likewise.
6304	* objc/lang-specs.h (default_compilers): Similarly.
6305	* doc/invoke.texi: Document -no-integrated-cpp flag.
6306
63072003-03-01  Jason Thorpe  <thorpej@wasabisystems.com>
6308
6309	* config.gcc (*-*-netbsd[2-9]*, *-*-netbsdelf[2-9]*): Enable
6310	POSIX thread support by default.
6311
63122003-03-01  Roger Sayle  <roger@eyesopen.com>
6313
6314	PR bootstrap/7389.
6315	* basic-block.h (flow_bb_inside_loop_p): Correct prototype.
6316
63172003-02-28  Jason Thorpe  <thorpej@wasabisystems.com>
6318
6319	* config/netbsd.h: Update copyright years.
6320	(NETBSD_CPP_SPEC): Define _REENTRANT and _PTHREADS if
6321	-pthread is specified on the command line.
6322
63232003-02-28  Bob Wilson  <bob.wilson@acm.org>
6324
6325	Backport following patch:
6326
6327	2003-02-28  Bob Wilson  <bob.wilson@acm.org>
6328	* config.gcc (xtensa-*-linux*): Add t-slibgcc-elf-ver to tmake_file.
6329
63302003-02-27  Joel Sherrill <joel@OARcorp.com>
6331
6332	PR 9638/other
6333	* config/i386/i386.c (DEFAULT_PCC_STRUCT_RETURN): Ensure the
6334	this constant defaults to 1.
6335
63362003-02-28  Richard Sandiford  <rsandifo@redhat.com>
6337
6338	* config/mips/mips.md: Disable the movstrsi define_split.
6339
63402003-02-28  Richard Sandiford  <rsandifo@redhat.com>
6341
6342	* config/mips/mips.h (CRT_CALL_STATIC_FUNCTION): Wrap in
6343	#ifndef __mips16.
6344
63452003-02-27   Geert Bosch <bosch@gnat.com>
6346
6347	* toplev.c (print_version): Add indentation for GGC heuristics and
6348	output after printing version information.
6349
63502003-02-27  James E Wilson  <wilson@tuliptree.org>
6351
6352	PR bootstrap/9255
6353	* combine.c (simplify_comparison): Require integral mode when
6354	permuting SUBREG with AND.
6355
63562003-02-27  Steve Ellcey  <sje@cup.hp.com>
6357
6358	* config/ia64/hpux.h (STARTFILE_PREFIX_SPEC): Remove.
6359
63602003-02-27  Alan Modra  <amodra@bigpond.net.au>
6361
6362	* config/rs6000/rs6000.md: Add TI constant splitter.
6363
63642003-02-26  Jan Hubicka  <jh@suse.cz>
6365
6366	* expr.c (emit_group_store):  Fix crash when converting single
6367	register into complex register.
6368
63692003-02-26  Michael Matz  <matz@suse.de>
6370
6371	* ra-colorize.c (merge_moves): Fix list handling.
6372
63732003-02-26  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
6374
6375	* pa.c (compute_frame_size): Don't assume PREFERRED_STACK_BOUNDARY
6376	is 8 * STACK_BOUNDARY.
6377	* pa.h (PREFERRED_STACK_BOUNDARY): Change to 128 on 64-bit port.
6378
63792003-02-26  Alan Modra  <amodra@bigpond.net.au>
6380
6381	PR target/9681
6382	* tlink.c (scan_linker_output): Drop leading '.' from symbol names.
6383
63842003-02-25  Richard Henderson  <rth@redhat.com>
6385
6386	* config/i386/i386.c (function_arg): Pass variable sized
6387	structures correctly on the stack.
6388
63892003-02-25  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
6390
6391	PR target/9732
6392	* config/rs6000/rs6000.c (first_reg_to_save): Handle
6393	PIC_OFFSET_TABLE_REGNUM for -fPIC too.
6394	(rs6000_emit_prologue): Likewise.
6395	(rs6000_emit_epilogue): Likewise.
6396	* config/rs6000/rs6000.h (CONDITIONAL_REGISTER_USAGE): Make
6397	PIC_OFFSET_TABLE_REGNUM a fixed register for -fPIC.
6398
63992003-02-25  Richard Henderson  <rth@redhat.com>
6400
6401	* real.c (real_to_integer2): Force overflow result only for
6402	unsigned overflow.
6403
64042003-02-25  Jan Hubicka  <jh@suse.cz>
6405
6406	PR target/8343
6407	* m68k.md (umulsidi, mulsidi expanders): Use register operand.
6408
64092003-02-24  Svein E. Seldal  <Svein.Seldal@solidas.com>
6410
6411	* config/c4x/c4x.h (ASM_FILE_START): Added support for the c33
6412	processor.
6413
64142003-02-24  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
6415
6416	* config/mips/iris6.h (TARGET_OS_CPP_BUILTINS): Define __c99 for
6417	ISO C99 and C++.
6418
6419	* fixinc/inclhack.def (irix___restrict): Don't change __restrict
6420	for C++ on IRIX 6.5.1[89].
6421	* fixinc/tests/base/internal/sgimacros.h: New file.
6422
6423	* fixinc/inclhack.def (irix_wcsftime): Use XPG5 variant for C99.
6424	* fixinc/tests/base/internal/wchar_core.h: New file.
6425
6426	* fixinc/inclhack.def (irix_socklen_t): Fix broken IRIX 6.5.1[78]
6427	socklen_t definition.
6428	* fixinc/fixincl.x: Regenerate.
6429	* fixinc/tests/base/sys/socket.h: New file.
6430	Fixes PR libgcj/9652.
6431
64322003-02-24  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
6433
6434	* config/alpha/osf.h (TARGET_OS_CPP_BUILTINS): Rename
6435	__EXTERN_PREFIX to __PRAGMA_EXTERN_PREFIX.
6436	* doc/extend.texi (Tru64 Pragmas): Reflect this.
6437
6438	* fixinc/inclhack.def (alpha___extern_prefix): Indicate #pragma
6439	extern_prefix support for Tru64 UNIX V5 <sys/stat.h>.
6440	* fixinc/fixincl.x: Regenerate.
6441	* fixinc/tests/base/sys/stat.h [ALPHA___EXTERN_PREFIX_CHECK]: New
6442	testcase.
6443	Fixes PR c/5059, c/6126, other/9671.
6444
64452003-02-24  Alan Modra  <amodra@bigpond.net.au>
6446
6447	PR 9297, PR 9722
6448	* calls.c (store_one_arg): Revert 1999-02-16 change.  Revert
6449	2000-12-17 change.  Pass EXPAND_STACK_PARM to expand_expr.
6450	* expr.h (enum expand_modifier): Define EXPAND_STACK_PARM.
6451	(enum block_op_methods): Reorder for better store_expr optimization.
6452	* expr.c (store_expr): Test bit 1 of "want_value" for call param
6453	stores, test bit 0 for original want_value meaning.  Pass
6454	BLOCK_OP_CALL_PARM to emit_block_move when bit 1 set.  Adjust
6455	recursive calls, and calls to expand_param.
6456	(expand_expr): Handle EXPAND_STACK_PARM modifier.  When cse
6457	expected, set target to 0 rather than to subtarget.  Formatting.
6458
64592003-02-23  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
6460
6461	* doc/invoke.texi (ggc-min-expand, ggc-min-heapsize): Document
6462	new default behavior.
6463	* ggc-common.c: Include sys/resource.h.
6464	(ggc_rlimit_bound): New function.
6465	(ggc_min_expand_heuristic, ggc_min_heapsize_heuristic): Update
6466	defaults to account for rlimits.
6467
64682003-02-22  Jan Hubicka  <jh@suse.cz>
6469
6470	* config/linux.h (TARGET_HAS_F_SETLKW): Define.
6471	* config/alpha/linux.h (TARGET_HAS_F_SETLKW): Likewise
6472
64732003-02-22  Hans-Peter Nilsson  <hp@axis.com>
6474
6475	* regmove.c (optimize_reg_copy_1): Do not replace a hard register
6476	in an asm.
6477
64782003-02-22  Jan Hubicka  <jh@suse.cz>
6479
6480	* i386.c (builtin_description): Add __builtin_ia32_paddq and
6481	__builtin_ia32_psubq. Fix __builtin_ia32_paddq128
6482	 and __builtin_ia32_psubq128.
6483	* i386.h (IX86_BUILTIN_PADDQ, IX86_BUILTIN_PSUBQ): New.
6484	* i386.md (addv*, mmx_ior*, mmx_xoe*, mmx_and*): Add missing '%'.
6485	(mmx_adddi3, mmx_subdi3): New.
6486	* mmintrin.h (_mm_add_si64, _mm_sub_si64): New.
6487	* xmmintrin.h (_mm_movepi64_pi64): New.
6488	(_mm_add_epi64, _mm_sub_epi64): fix.
6489	(_mm_mul_pu16): Rename to...
6490	(_mm_mul_su32): ... this one.
6491
6492	* i386.c (def_builtin):  Special case 64bit builtins.
6493	(MASK_SSE164, MASK_SSE264): New constants.
6494	(builtin_description): Add 64bit builtins.
6495	(ix86_init_mmx_sse_builtins): Likewise.
6496	* i386.h (enum ix86_builtins): Likewise.
6497	* i386.md (cvtss2siq, cvttss2siq, cvtsd2siq, cvttsd2siq, cvtsi2sdq,
6498	sse2_movq2dq_rex64, sse2_movsq2q_rex64): New.
6499	(sse2_movq2dq, sse2_movsq2q): Disable for 64bit.
6500	* mmintrin.h (_mm_cvtsi64x_si64, _mm_set_pi64x, _mm_cvtsi64_si64x): New.
6501	* xmmintrin.h (_mm_cvtss_si64x, _mm_cvttss_si64x, _mm_cvtsi64x_ss,
6502	_mm_set_epi64x, _mm_set1_epi64x, _mm_cvtsd_si64x, _mm_cvttsd_si64x,
6503	_mm_cvtsi64x_sd, _mm_cvtsi64x_si128, _mm_cvtsi128_si64x): New.
6504
6505	* builtins.c (expand_builtin_expect):  Do not predict
6506	flag_guess_branch_prob is not set.
6507	* c-semantics.c (expand_stmt): Likewise.
6508	* predict.c (predict_insn): Likewise.
6509	* stmt.c (expand_continue_loop): Likewise.
6510	* toplev.c (rest_of_compilation): Do not call
6511	note_prediction_to_br_prob and note_prediction_to_br_prob
6512	when not optimizing.
6513
6514	* basic-block.h (tidy_fallthru_edges): Kill.
6515	* cfgrtl.c (tidy_fallthru_edges): Kill.
6516	* cfgbuild.c (find_basic_blocks): Do not call tidy_fallthru_edges.
6517	* cfgcleanup.c (delete_unreachable_blocks): Likewise.
6518
65192003-02-22  Steven Bosscher  <s.bosscher@student.tudelft.nl>
6520
6521	PR other/3782
6522	* toplev.c (process_options): If flag_detailed_statistics is set,
6523	then set time_report as well.
6524
6525	PR c/8828
6526	* jump.c (never_reached_warning): Don't fall through BARRRIER
6527	insns.  Update comments to reflect what the function really does.
6528
65292003-02-21  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
6530
6531	* doc/invoke.texi (ggc-min-expand, ggc-min-heapsize): Update
6532	documentation.
6533	* ggc-common.c: Include params.h
6534	(ggc_min_expand_heuristic, ggc_min_heapsize_heuristic,
6535	init_ggc_heuristics): New functions.
6536	* ggc.h (ggc_min_expand_heuristic, ggc_min_heapsize_heuristic,
6537	init_ggc_heuristics): Prototype.
6538	* toplev.c (print_version):  Output GGC heuristics.
6539	(parse_options_and_default_flags): Call init_ggc_heuristics.
6540
65412003-02-21  Jan Hubicka  <jh@suse.cz>
6542
6543	* cfgrtl.c (commit_edge_insertions):  Call
6544	find_many_sub_basic_block only when some code has been emitted.
6545	(commit_edge_insertions_watch_calls): Bring into sync with
6546	commit_edge_insertions
6547
65482003-02-21  Zack Weinberg  <zack@codesourcery.com>
6549
6550	* cpphash.h (struct lexer_state): Add directive_wants_padding.
6551	* cpplib.c (_cpp_handle_directive): Set directive_wants_padding
6552	for directives of type INCL.
6553	(glue_header_name, parse_include): Use get_token_no_padding.
6554	* cppmacro.c (replace_args): If directive_wants_padding,
6555	provide padding tokens.
6556
65572003-02-21  Jan Hubicka  <jh@suse.cz>
6558
6559	* cfgrtl.c (commit_one_edge_insertion): Only mark BB for splitting.
6560	(commit_edge_insertions): Call find_many_sub_basic_blocks
6561
6562	* reg-stack.c (convert_regs): Cleax aux for blocks.
6563
65642003-02-21  Glen Nakamura  <glen@imodulo.com>
6565
6566	PR optimization/8613
6567	* builtins.c (expand_builtin): Emit postincrements before expanding
6568	builtin functions.
6569
65702003-02-21  Toon Moene  <toon@moene.indiv.nluug.nl>
6571
6572	PR fortran/9038
6573	* c-opts.c (sanitize_cpp_opts): Add Fortran front end
6574	options to be ignored.
6575	(c_common_decode_option): Ignore them when preprocessing.
6576
65772003-02-21  Ben Elliston  <bje@redhat.com>
6578
6579	PR other/5634
6580	* doc/install.texi (Configuration): Explain using $HOME instead of
6581	the ~ metacharacter when referring to home directories.
6582
65832003-02-20  Richard Earnshaw  <rearnsha@arm.com>
6584
6585	* arm.c (arm_reload_in_hi): Ensure that the scratch register does
6586	not overlap the final result register.
6587
65882003-02-20  Josef Zlomek  <zlomekj@suse.cz>
6589
6590	* combine.c (distribute_notes): Kill REG_EXEC_COUNT.
6591	* rtl.c (reg_note_name): Likewise.
6592	* rtl.h (enum reg_note): Likewise.
6593	* doc/invoke.texi: Likewise.
6594	* doc/rtl.texi: Likewise.
6595
65962003-01-30  Richard Henderson  <rth@redhat.com>
6597
6598	* tree-inline.c (walk_tree): Streamline duplicate hash table lookup.
6599
66002003-02-19  Daniel Jacobowitz  <drow@mvista.com>
6601
6602	* expr.c (expand_expr): Use gen_int_mode for the argument
6603	to gen_rtx_MULT.
6604
66052003-02-19  Jan Hubicka  <jh@suse.cz>
6606
6607	* i386.md (cosxf2):  Fix conditional.
6608
66092003-02-18  Matt Austern <austern@apple.com>
6610	* toplev.c, langhooks.c, langhooks-def.h: Move
6611	write_global_declarations from toplev.c to langhooks.c.
6612
66132003-02-18  Kazu Hirata  <kazu@cs.umass.edu>
6614
6615	* config/h8300/h8300.c (general_operand_src): Always check
6616	MODE.
6617	(general_operand_dst): Likewise.
6618
66192003-02-18  Richard Henderson  <rth@redhat.com>
6620
6621	* c-common.c (handle_used_attribute): Accept static data too.
6622
66232003-02-18  Jim Wilson  <wilson@redhat.com>
6624
6625	* config/ia64/ia64.md (floatdidf2, floatdisf2): Add %, before second
6626	instruction in output template.
6627	(bsp_value): Change output template from string to C code, add %,
6628	before actual instruction.
6629	(flushrs): Mark as not predicable.
6630
66312003-02-18  Kazu Hirata  <kazu@cs.umass.edu>
6632
6633	* config/h8300/h8300.md (*zero_extendhisi2_h8300): Fix the
6634	insn length.
6635	(extendqisi2): Likewise.
6636	(*extendhisi2_h8300): Likewise.
6637
66382003-02-18  Matt Austern <austern@apple.com>
6639
6640	* langhooks.h, langhooks-def.h: introduce new langhook,
6641	final_write_globals, with write_global_declarations as default.
6642	* toplev.c: Move invocation of wrapup_global_declarations from
6643	compile_file to new function, write_global_declarations.  Change
6644	compile_file to use final_write_globals hook.  Change
6645	wrapup_global_declarations so writing to DECL_DEFER_OUTPUT is
6646	conditional.
6647
66482003-02-18  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
6649
6650	* pa.md: Correct and enhance comment.
6651
66522003-02-16  Kai Henningsen  <kaih@khms.westfalen.de>
6653	    Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
6654
6655	* doc/install.texi (Specific): Fix link for m68k-att-sysv.
6656	(Binaries): Ditto for Sinix/Reliant Unix.
6657
66582003-02-16  Zdenek Dvorak  <rakdver@atrey.karlin.mff.cuni.cz>
6659
6660	* config/i386/i386-protos.h (function_arg_pass_by_reference): Declare.
6661	* config/i386/i386.h (FUNCTION_ARG_PASS_BY_REFERENCE): Use it.
6662	* config/i386/i386.c (function_arg_pass_by_reference): New.
6663	(ix86_va_arg): Support arguments passed by reference.
6664
66652003-02-16 Arend Bayer <arend.bayer@web.de>
6666	   Richard Henderson  <rth@redhat.com>
6667
6668	PR c/8068
6669	* fold-const.c (extract_muldiv_1): Rename from extract_muldiv;
6670	rearrange mult arguments for less recursion.
6671	(extract_muldiv): New.  Prevent runaway recursion.
6672
66732003-02-16  Danny Smith  <dannysmith@users.sourceforge.net>
6674
6675	* config/i386/cygwin.h (TARGET_SUBTARGET_DEFAULT): Set
6676	MASK_ALIGN_DOUBLE.
6677
66782003-02-15  Adam Nemet  <anemet@lnxw.com>
6679
6680	PR opt/2391
6681	* combine.c: Fix spelling in comment.
6682	(cached_nonzero_bits): New function.
6683	(cached_num_sign_bit_copies): New function.
6684	(nonzero_bits_with_known): New macro.
6685	(num_sign_bit_copies_with_known): New macro.
6686	(nonzero_bits1): Rename from nonzero_bits.  Add three new
6687	arguments.  Change calls from nonzero_bits to
6688	nonzero_bits_with_known.
6689	(num_sign_bit_copies1): Rename from num_sign_bit_copies.  Add
6690	three new arguments.  Change calls from num_sign_bit_copies to
6691	num_sign_bit_copies_with_known.
6692	(nonzero_bits): New macro.
6693	(num_sign_bit_copies): New macro.
6694	(update_table_tick): Don't traverse identical subexpression more
6695	than once.
6696	(get_last_value_validate): Likewise.
6697
66982003-02-15  Falk Hueffner  <falk.hueffner@student.uni-tuebingen.de>
6699
6700	PR optimization/7702
6701	* reload1.c (reload_cse_simplify_set): Honor
6702	CANNOT_CHANGE_MODE_CLASS.
6703
67042003-02-15  Jan Hubicka  <jh@suse.cz>
6705
6706	PR optimization/9258, PR fortran/7681
6707	* global.c (struct allocno): Add no_stack_reg.
6708	(global_conflicts): Set it.
6709	(find_reg): Use it.
6710
67112003-02-14  Alexandre Oliva  <aoliva@redhat.com>
6712
6713	* config/mn10300/mn10300.c (mn10300_wide_const_load_uses_clr): New
6714	function.
6715	* config/mn10300/mn10300-protos.h: Declare it.
6716	* config/mn10300/mn10300.md (movdi, movdf): Use it to compute
6717	attribute cc of instructions that may use clr.
6718
67192003-02-13  John David Anglin  <dave.anglin@nrc-crnc.gc.ca>
6720
6721	* inclhack.def (hpux_long_double): Tighten select and add bypass
6722	regexp.
6723	* fixincl.x: Rebuilt.
6724
67252003-01-30  Richard Henderson  <rth@redhat.com>
6726
6727	* ggc-page.c (G.context_depth_allocations): New.
6728	(G.context_depth_collections): New.
6729	(alloc_page): Set G.context_depth_allocations.
6730	(ggc_collect): Set G.context_depth_collections.
6731	(ggc_push_context): Limit to HOST_BITS_PER_LONG contexts.
6732	(ggc_pop_context): Early exit for no allocations or collections.
6733
67342003-01-25  Segher Boessenkool  <segher@koffie.nl>
6735
6736	* bitmap.h (BITMAP_WORD): New typedef: fundamental storage
6737	type for bitmaps.  Use unsigned long.
6738	(nBITMAP_WORD_BITS): New macro.
6739	(BITMAP_WORD_BITS): New macro.
6740	(rest of file): Use it.
6741	* bitmap.c: Use it.
6742
67432003-02-13  Josef Zlomek  <zlomekj@suse.cz>
6744
6745	* cfgcleanup.c (outgoing_edges_match): When there is single outgoing
6746	edge and block ends with a jump insn it must be simple jump.
6747
67482003-02-13  Robert Lipe <robertlipe@usa.net>
6749	    Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
6750
6751	* doc/install.texi (Specific): Update three SCO-related URLs.
6752
67532003-02-12  Ranjit Mathew  <rmathew@hotmail.com>
6754
6755	* doc/tm.texi (MODIFY_JNI_METHOD_CALL): Document.
6756	* config/i386/cygwin.h (MODIFY_JNI_METHOD_CALL): New macro.
6757
67582003-02-11  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
6759
6760	* doc/install.texi (Specific): Update AVR- and Darwin-related URLs.
6761
67622003-02-11  Eric Botcazou  <ebotcazou@libertysurf.fr>
6763
6764	PR c/9100
6765	Backport patch from mainline:
6766
6767	2003-01-12  Mark Mitchell  <mark@codesourcery.com>
6768
6769	PR c++/9264
6770	* c-lex.c (c_lex): Set the token value to error_mark_node for
6771	invalid numeric constants.
6772
67732003-02-11  Jan Hubicka  <jh@suse.cz>
6774
6775	* i386.md (ahi?v*3): Set third operand type to TImode.
6776	* i386.c (ix86_expand_binop_builtin): Extend operand when needed.
6777
6778	* i386.c (contains_128bit_aligned_vector_p): New function
6779	(ix86_function_arg_boundary): Properly align vector modes.
6780
67812003-02-11  Bob Wilson  <bob.wilson@acm.org>
6782
6783	Backport following patch:
6784
6785	2003-02-11  Bob Wilson  <bob.wilson@acm.org>
6786
6787	* config/xtensa/xtensa.md (set_frame_ptr): Change rtl to set reg a7.
6788	* config/xtensa/xtensa.c (xtensa_reorg): Search for UNSPECV_SET_FP
6789	as a SET pattern.
6790
67912003-02-11  Jan Hubicka  <jh@suse.cz>
6792
6793	* simplify-rtx.c (simplify_subreg): Fix conversion from vector into
6794	integer mode.
6795
6796	* rtl.def (VEC_MERGE, VEC_SELECT, VEC_CONCAT, VEC_DUPLICATE):
6797	Change code so they are arithmetic expressions now.
6798	* simplify-rtx.c (simplify_unary_operation, simplify_binary_operation,
6799	simplify_ternary_operation): Deal with VEC_* expressions.
6800
68012003-02-11  Richard Henderson  <rth@redhat.com>
6802
6803	2003-01-15  Richard Henderson  <rth@redhat.com>
6804	* config/alpha/alpha.c (find_lo_sum_using_gp): Rename from find_lo_sum;
6805	also check that GP is being used.
6806	(alpha_find_lo_sum_using_gp): New.
6807	(alpha_does_function_need_gp): Use get_attr_usegp.
6808	* config/alpha/alpha-protos.h: Update.
6809	* config/alpha/alpha.md (attr usegp): New.  Annotate patterns
6810	as needed.
6811
68122003-02-11  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
6813
6814	* inclhack.def (hpux_long_double, hpux10_ctype_declarations1,
6815	hpux10_ctype_declarations2, hpux_ctype_macros): New hacks.
6816	* fixincl.x: Rebuilt.
6817	* tests/base/stdlib.h: Update.
6818	* tests/base/ctype.h: New file.
6819
68202003-02-11  Janis Johnson  <janis187@us.ibm.com>
6821
6822	* config/rs6000/ppc64-fp.c: New file.
6823	* config/rs6000/t-linux64 (LIB2FUNCS_EXTRA): Add ppc64-fp.c.
6824
68252003-02-11  Falk Hueffner  <falk.hueffner@student.uni-tuebingen.de>
6826
6827	PR optimization/9651
6828	* rtlanal.c (may_trap_p): Handle FIX.
6829
68302003-02-11  Jan Hubicka  <jh@suse.cz>
6831
6832	* predict.c (choose_function_section): Choose sections correctly.
6833
68342003-02-10  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
6835
6836	* reload1.c (first_label_num): New.
6837	(reload): Index offsets_known_at and offsets_at using difference of
6838	label number and first label number.  Don't use offset pointers.
6839	(set_label_offsets, set_initial_label_offsets): Likewise.
6840
68412003-02-10  Eric Botcazou  <ebotcazou@libertysurf.fr>
6842	    Christian Ehrhardt  <ehrhardt@mathematik.uni-ulm.de>
6843
6844	PR c/7741
6845	* c-decl.c (duplicate_decls): Discard the initializer of the
6846	new decl when the types are conflicting.
6847
68482003-02-09  Wolfgang Bangerth  <bangerth@ticam.utexas.edu>
6849
6850	* doc/install.texi: Squeeze and streamline section on
6851	testing and regression checking.
6852
68532003-02-07  Jason Thorpe  <thorpej@wasabisystems.com>
6854
6855	* config/t-netbsd (USER_H): Revert previous change.
6856
68572003-02-07  Richard Henderson  <rth@redhat.com>
6858
6859	PR 9226
6860	* gcse.c (local_cprop_find_used_regs): New.
6861	(local_cprop_pass): Use it.
6862
68632003-02-07  Jan Hubicka  <jh@suse.cz>
6864
6865	* i386.md (sse2_nandv2di3):  Fix.
6866
6867	* i386.md (movdi_rex64_1): Fix mmx<->int move opcode.
6868
68692003-02-07  Andrey Petrov <petrov@netbsd.org>
6870
6871	* optabs.c (expand_float): Search wider integer modes first.
6872
68732003-02-06  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
6874
6875	* config.gcc (hppa*-*-linux*): Set MASK_NO_SPACE_REGS in
6876	target_cpu_default.
6877	* pa.c (attr_length_call): Add 8 to call length (long indirect PA 1.X)
6878	if not MASK_NO_SPACE_REGS.
6879	(output_call): Adjust return pointer, don't load new space register
6880	into %sr0, and use %sr4 for call if TARGET_NO_SPACE_REGS is true.
6881	(pa_asm_output_mi_thunk): Don't load new space register into %sr0 if
6882	TARGET_NO_SPACE_REGS is true.
6883	* pa.md (return_external_pic): Add TARGET_NO_SPACE_REGS to insn
6884	conditions.
6885	(epilogue): Always use return_internal if TARGET_NO_SPACE_REGS is true.
6886	(interspace_jump): Add new pattern for when TARGET_NO_SPACE_REGS is
6887	true.  Use bve when TARGET_64BIT is true.
6888
68892003-02-06  Eric Botcazou <ebotcazou@libertysurf.fr>
6890	    Richard Henderson <rth@redhat.com>
6891
6892	PR c/9530
6893	* config/i386/i386.h (FUNCTION_OK_FOR_SIBCALL): Forbid sibcalls
6894	from functions that return a float to functions that don't.
6895
68962003-02-04  Ulrich Weigand  <uweigand@de.ibm.com>
6897
6898	* reload.c (find_reloads): Do not use the mode specified in the insn
6899	pattern as reload mode for address operands.  Do not generate optional
6900	reloads for operands where a mandatory reload was already pushed.
6901
69022003-02-04  Jan Hubicka  <jh@suse.cz>
6903
6904	* i386.md (movti_rex64):  Fix constraint.
6905
69062003-02-04  Rodney Brown  <rbrown64@csc.com.au>
6907
6908	* config/i386/i386.c (x86_function_profiler): Fix typo in format.
6909
69102003-01-23  Mike Stump  <mrs@apple.com>
6911
6912	* regclass.c (init_reg_autoinc): New function.
6913	(regclass): Move initialization of forbidden_inc_dec_class from
6914	here...
6915	(init_regs): to here.  Avoids reinitialization for each function,
6916	saving compilation time.
6917
69182003-02-04  Phil Edwards  <pme@gcc.gnu.org>
6919
6920	* doc/install.texi (*-*-linux-gnu):  Mention glibc requirements
6921	for recent libstdc++.  Remove formatting cruft.
6922
69232003-02-04  Joseph S. Myers  <jsm@polyomino.org.uk>
6924
6925	* doc/gcc.texi, doc/gccint.texi, doc/gcov.texi,
6926	doc/include/fdl.texi, doc/invoke.texi: Update to GFDL 1.2.
6927	* doc/install.texi: Update copyright dates.  Update to GFDL 1.2.
6928
69292003-02-03  Bob Wilson  <bob.wilson@acm.org>
6930
6931	* config/xtensa/xtensa.c (order_regs_for_local_alloc): Order the
6932	coprocessor registers before floating-point registers.
6933	* config/xtensa/xtensa.h (REG_ALLOC_ORDER): Adjust register numbers
6934	to account for a previously removed register.
6935	(SPEC_REG_FIRST, SPEC_REG_LAST, SPEC_REG_NUM, COUNT_REGISTER_REGNUM):
6936	Delete unused macros.
6937
69382003-02-03  Jan Hubicka  <jh@suse.cz>
6939
6940	* i386.c (ix86_expand_store_builtin):  Always force op1 to register.
6941	(mov*_internal): Fix predicates; require one of operands to not be memory.
6942	(SSE?MMX move expanders):  Fix predicates; force one of operands to register.
6943	(SSE/MMX push patterns): Reorganize; fix x86-64 code generation.
6944	(movups/movupd/movdqu patterns): Force one of operands to not be memory.
6945
69462003-02-03  Jan Hubicka  <jh@suse.cz>
6947
6948	* regclass.c (cannot_change_mode_set_regs): Correct argument order.
6949
69502003-02-02  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
6951
6952	* mips/_tilib.c: Don't include tsystem.h.  Don't define
6953	LIBGCC2_WORDS_BIG_ENDIAN.
6954
69552003-02-02  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
6956
6957	* doc/install.texi (hppa*-hp-hpux11*): Update installation notes.
6958
69592003-02-02  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
6960
6961	* pa-protos.h (attr_length_millicode_call): Remove second argument.
6962	(attr_length_indirect_call, attr_length_indirect_call,
6963	attr_length_save_restore_dltp): New prototypes.
6964	* pa.c (attr_length_millicode_call): Remove second argument.  Check
6965	INSN_ADDRESSES_SET_P in distance calculation.
6966	(output_millicode_call): Check INSN_ADDRESSES_SET_P before using
6967	INSN_ADDRESSES.
6968	(attr_length_call): Check INSN_ADDRESSES_SET_P in distance calculation.
6969	(output_call): Check INSN_ADDRESSES_SET_P before using INSN_ADDRESSES.
6970	Call attr_length_call directly.
6971	(attr_length_indirect_call, output_indirect_call,
6972	attr_length_save_restore_dltp): New functions.
6973	* pa.md (attr_length_millicode_call): Drop second argument from all
6974	patterns.
6975	(return_internal_pic): Delete.
6976	(return_external_pic): Remove use of PIC register and pic operand and
6977	flag checks.
6978	(epilogue): Use return_internal for both normal and pic code.
6979	(call, call_value): Emit new 32-bit pic patterns for symref and
6980	indirect calls.  Remove uses for arg pointer and pic register.
6981	(call_symref_pic, call_symref_pic_post_reload, call_reg_pic,
6982	call_reg_pic_post_reload, call_val_symref_pic,
6983	call_val_symref_pic_post_reload, call_val_reg_pic,
6984	call_val_reg_pic_post_reload): New pre and post reload insn patterns.
6985	Implement define_split and define_peephole2 patterns for pre reload
6986	patterns.
6987	(call_symref_64bit, call_internal_reg_64bit, call_value_symref_64bit,
6988	call_value_internal_reg_64bit): Shorten names.
6989	(all call patterns): Explicitly indicate registers used and clobbered.
6990	Use attr_length_indirect_call and attr_length_save_restore_dltp for
6991	attribute length calculation.  Move code generation for indirect calls
6992	to output_indirect_call.
6993	(sibcall, sibcall_value): Don't restore PIC register.
6994	(exception_receiver, builtin_setjmp_receiver): Add blockage after PIC
6995	register retore.
6996
69972003-02-02  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
6998
6999	* doc/install.texi (Testing): Simplify and compress instructions
7000	concerning Dejagnu.
7001
70022003-02-01  Daniel Jacobowitz  <drow@mvista.com>
7003
7004	* dwarf2out.c (gen_type_die): Check for typedefs before calling
7005	for TYPE_MAIN_VARIANT.
7006
70072003-02-01  Ulrich Weigand  <uweigand@de.ibm.com>
7008
7009	* reload.c: Revert 2003-01-31 change.
7010
70112003-02-01  Jan Hubicka  <jh@suse.cz>
7012
7013	PR c/9506
7014	* i386.c (override_options): Use DEFAULT_PCC_STRUCT_RETURN.
7015
70162003-01-31  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
7017
7018	* pa.c (pa_output_function_prologue, pa_output_function_epilogue): Move
7019	updating of total_code_bytes from prologue to epilogue.
7020
70212003-01-31  Ulrich Weigand  <uweigand@de.ibm.com>
7022
7023	* regclass.c (record_reg_classes): Fix incorrect argument
7024	to EXTRA_ADDRESS_CONSTRAINT macro.
7025
70262003-01-31  Ulrich Weigand  <uweigand@de.ibm.com>
7027
7028	* reload.c (find_reloads): Do not use the mode specified in the insn
7029	pattern as reload mode for address operands.  Do not generate optional
7030	reloads for operands where a mandatory reload was already pushed.
7031	Generate optional reloads only in the final pass though find_reloads.
7032	(have_replacement_p): New function.
7033
70342003-01-31  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
7035
7036	* doc/install.texi (Testing): Remove a reference to our obsolete
7037	/testresults web pages and strip redundant information concerning
7038	test results.
7039	(Binaries): Refer to Microsoft Windows instead of listing all
7040	possible variants.
7041
70422003-02-01  Jan Hubicka  <jh@suse.cz>
7043
7044	* loop.c (emit_prefetch_instructions):  Do conversion at right place in
7045	RTL chain.
7046
7047	* combine.c (simplify_set): Reverse order of ragumetns to
7048	REG_CANNOT_CHANGE_MODE_P
7049	* df.c (df_def_record_1): Likewise.
7050	* recog.c (register_operand): Likewise.
7051	* simplify-rtx.c (simplify_subreg): Likewise.
7052	* hard-reg-set.h (REG_CANNOT_CHANGE_MODE_P): Update use of
7053	CANNOT_CHANGE_MODE_CLASS.
7054	* regclass.c (cannot_change_mode_set_regs, invalid_mode_change_p):
7055	Likewise.
7056	* reload.c (push_reload): Likewise.
7057	* alpha.h (CANNOT_CHANGE_MODE_CLASS): Update definition.
7058	* ia64.h (CANNOT_CHANGE_MODE_CLASS): Update definition.
7059	* mips.h (CANNOT_CHANGE_MODE_CLASS): Update definition.
7060	* mips-protos.h (mips_cannot_change_mode_class): Update prototype.
7061	* mips.c (mips_cannot_change_mode_class): Update.
7062	* pa64-regs.h (CANNOT_CHANGE_MODE_CLASS): Update definition.
7063	* rs6000.h (CANNOT_CHANGE_MODE_CLASS): Update definition.
7064	* s390.h (CANNOT_CHANGE_MODE_CLASS): Update definition.
7065	* sh.h (CANNOT_CHANGE_MODE_CLASS): Update definition.
7066	* sh-protos.h (sh_cannot_change_mode_class): Update prototype.
7067	* sh.c (sh_cannot_change_mode_class): Update.
7068	* i386.h (CANNOT_CHANGE_MODE_CLASS): New.
7069	* tm.texi (CANNOT_CHANGE_MODE_CLASS): Update documentation.
7070
70712003-01-31  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
7072
7073	* pa32-regs.h (REGNO_REG_CLASS, REG_CLASS_FROM_LETTER): Delete
7074	duplicated code.
7075
70762003-01-30  Richard Earnshaw  <rearnsha@arm.com>
7077
7078	* arm.c (arm_compute_initial_elimination_offset): If optimizing for
7079	size, the link register is always saved if any other register is
7080	saved.
7081
70822003-01-30  Jerry Quinn  <jlquinn@optonline.net>
7083
7084	* gcc/doc/invoke.texi (Optimization Options): Group together
7085	optional and experimental flags.  Move trapv and bounds-check
7086	out of this section.  Group floating point flags together.
7087	(Code Gen Options): Move trapv and bounds-check to here.
7088
70892003-01-30  Jerry Quinn  <jlquinn@optonline.net>
7090
7091	* gcc/doc/invoke.texi (Optimization Options): List -O levels
7092	for each optimization flag.
7093
70942003-01-30  Ralf Corsepius  <corsepiu@faw.uni-ulm.de>
7095
7096	PR target/9316
7097	* config/rs6000/rtems.h: Add CPP_OS_DEFAULT_SPEC.
7098	* config/rs6000/sysv4.h: Add CPP_OS_RTEMS_SPEC.
7099	* config/rs6000/t-rtems: New file. multilib variants to match OS.
7100	* config.gcc (powerpc-*-rtems*): Use rs6000/t-rtems instead of
7101	rs6000/t-ppcgas so we get the desired multilibs.
7102
71032003-01-30  Alexandre Oliva  <aoliva@redhat.com>
7104
7105	* config/fp-bit.h (__make_dp): Declare if TMODES.
7106
71072003-01-29	Steve Ellcey <sje@cup.hp.com>
7108
7109	* config/ia64/ia64.c (ia64_rwreloc_section_type_flags): New.
7110	* config/ia64/hpux.h (TARGET_SECTION_TYPE_FLAGS): New.
7111
71122003-01-29	Steve Ellcey <sje@cup.hp.com>
7113
7114	* config/ia64/ia64.c (ia64_rwreloc_select_rtx_section): Rename
7115	from ia64_aix_select_rtx_section.
7116	(ia64_rwreloc_select_section): Simlarly; use default*_1 function
7117	instead of saving and restoring flag_pic.
7118	(ia64_rwreloc_unique_section): Similarly.
7119	* config/ia64/aix.h (TARGET_ASM_SELECT_SECTION,
7120	TARGET_ASM_UNIQUE_SECTION, TARGET_ASM_SELECT_RTX_SECTION): Update.
7121	* config/ia64/hpux.h (TARGET_ASM_SELECT_SECTION,
7122	TARGET_ASM_UNIQUE_SECTION, TARGET_ASM_SELECT_RTX_SECTION): New.
7123
71242003-01-29  Joel Sherrill  <joel@OARcorp.com>
7125
7126	PR bootstrap/9296
7127	* gthr-rtems.h: Define __GTHREAD_MUTEX_INIT.  Apparently no code
7128	depended on it being defined until now.
7129
71302003-01-29  Joel Sherrill  <joel@OARcorp.com>
7131
7132	PR target/9295
7133	* config/mips/rtems.h: Predefine __USE_INIT_FINI__ so generic
7134	RTEMS code knows which C++ initialization style the toolset
7135	configuration is using.
7136
71372003-01-29  Joel Sherrill  <joel@OARcorp.com>
7138
7139	PR bootstrap/9293
7140	* config/m68k/t-crtstuff: Replace spaces with tabs, add
7141	 $(MULTILIB_CFLAGS) as compiler option and multilib crtbegin/end.o.
7142
71432003-01-29  Joel Sherrill  <joel@OARcorp.com>
7144
7145	PR bootstrap/9292
7146	* config.gcc (hppa1.1-rtems):  Did not include t-rtems nor enable
7147	RTEMS threads.
7148	* config/pa/rtems.h (LIB_SPEC): Use -N when linking.
7149
71502003-01-25  Andrew Haley  <aph@redhat.com>
7151
7152	* tree-inline.c (walk_tree): Add CHAR_TYPE.
7153
71542003-01-28  Christian Cornelssen  <ccorn@cs.tu-berlin.de>
7155
7156	* doc/install.texi: Add documentation for installation into
7157	tooldirs and with DESTDIR.
7158
71592003-01-28  Andreas Schwab  <schwab@suse.de>
7160
7161	* config/m68k/m68k.md (tablejump+2): Don't sign extend an address
7162	register.
7163	* config/m68k/apollo68.h (ASM_RETURN_CASE_JUMP): Likewise.
7164	* config/m68k/coff.h (ASM_RETURN_CASE_JUMP): Likewise.
7165	* config/m68k/linux.h (ASM_RETURN_CASE_JUMP): Likewise.
7166	* config/m68k/m68kelf.h (ASM_RETURN_CASE_JUMP): Likewise.
7167	* config/m68k/mot3300.h (ASM_RETURN_CASE_JUMP): Likewise.
7168	* config/m68k/netbsd-elf.h (ASM_RETURN_CASE_JUMP): Likewise.
7169	* config/m68k/pbb.h (ASM_RETURN_CASE_JUMP): Likewise.
7170
71712003-01-28  David Edelsohn  <edelsohn@gnu.org>
7172
7173	* config/rs6000/rs6000.md (movti_string): Remove clobber.
7174	* config/rs6000/rs6000.c (rs6000_emit_move, TImode): Explicitly
7175	generate PARALLEL with clobber for TARGET_POWER.
7176
71772003-01-28  Richard Henderson  <rth@redhat.com>
7178
7179	* ifcvt.c (noce_process_if_block): Re-add check vs X being changed
7180	in no-else-block case.  Add commentary.
7181
71822003-01-28  Alexandre Oliva  <aoliva@redhat.com>
7183
7184	* config/mips/mips.h (UNITS_PER_HWFPVALUE): Renamed from...
7185	(UNITS_PER_FPVALUE): Defined as the width of a long double, or
7186	zero if no hardware floating point.
7187	(LONG_DUBLE_TYPE_SIZE): Set to 128 on N32 and N64.
7188	(MAX_FIXED_MODE_SIZE): Define to LONG_DOUBLE_TYPE_SIZE.
7189	(LIBGCC2_LONG_DOUBLE_TYPE_SIZE): Define.
7190	(BIGGEST_ALIGNMENT): Same as LONG_DOUBLE_TYPE_SIZE.
7191	(FUNCTION_VALUE_REGNO_P): Set for FP_RETURN+2 on N32 and N64.
7192	* config/mips/iris6.h (MIPS_TFMODE_FORMAT): Define.
7193	* config/mips/mips.c (override_options): Use it.
7194	(mips_arg_info): Pass TFmode values in even FP registers on N32
7195	and N64.
7196	(mips_setup_incoming_varargs): Use UNITS_PER_HWFPVALUE.
7197	(mips_va_start): Adjust alignment of ARG_POINTER_REGNUM.
7198	(mips_va_arg): Use UNITS_PER_HWFPVALUE.  Impose additional
7199	even-register-like alignment to 128-bit arguments.
7200	(save_restore_insns): Use UNITS_PER_HWFPVALUE.
7201	(mips_function_value): Likewise.  Return TFmode in $f0 and $f2
7202	on N32 or N64.
7203	* config/mips/_tilib.c (__negti2, __ashlti3, __lshrti3): New.
7204	* config/mips/t-iris6 (LIB2FUNCS_EXTRA): Add _tilib.c.
7205	(TPBIT): Set to tp-bit.c.
7206	(tp-bit.c): Create out of fp-bit.c.
7207
72082003-01-27  Gabriel Dos_Reis  <gdosreis@sophia.inria.fr>
7209
7210	* c-parse.in: Remove '%expect 32' directive when in objc mode.
7211
72122003-01-27  Josef Zlomek  <zlomekj@suse.cz>
7213
7214	* gcse.c (constprop_register): Check NEXT_INSN (insn) != NULL.
7215
72162003-01-27  Richard Earnshaw  <rearnsha@arm.com>
7217
7218	PR optimization/9090
7219	* function.c (purge_addressof_1): After pushing an addressed register
7220	onto the stack, simplify the result.
7221
72222003-01-27  Volker Reichelt  <reichelt@igpm.rwth-aachen.de>
7223
7224	* doc/extend.texi: Fix typo.
7225
72262003-01-27  Volker Reichelt  <reichelt@igpm.rwth-aachen.de>
7227
7228	* doc/cppopts.texi: Fix typo.
7229	* doc/objc.texi: Likewise.
7230	* doc/passes.texi: Likewise.
7231
72322003-01-27  Alexandre Oliva  <aoliva@redhat.com>
7233
7234	* real.c (ibm_extended_format): Add 53 to minimum exponent.
7235	(encode_ibm_extended): Adjust.
7236
72372003-01-26  Kazu Hirata  <kazu@cs.umass.edu>
7238
7239	* doc/gccint.texi: Update the copyright.
7240
72412003-01-26  Kazu Hirata  <kazu@cs.umass.edu>
7242
7243	* doc/cpp.texi: Fix typos.
7244	* doc/extend.texi: Likewise.
7245	* doc/gty.texi: Likewise.
7246	* doc/install.texi: Likewise.
7247	* doc/passes.texi: Likewise.
7248	* doc/rtl.texi: Likewise.
7249
72502003-01-26  Christian Cornelssen  <ccorn@cs.tu-berlin.de>
7251
7252	* Makefile.in (ORDINARY_FLAGS_TO_PASS): Also pass DESTDIR.
7253	(install-cpp, installdirs, install-common)
7254	(install-driver, install-info, install-man)
7255	(install-headers, install-include-dir, install-headers-tar)
7256	(install-headers-cpio, install-headers-cp, install-mkheaders)
7257	(install-collect2, uninstall): Prepend $(DESTDIR) to
7258	destination paths in all (un)installation commands.
7259	(install-driver): Rewrite $(LN) commands to support DESTDIR
7260	with "ln" as well as with "ln -s".
7261	(installdirs): Simply use mkinstalldirs.
7262	(install-libgcc, install-multilib): Also pass DESTDIR.
7263	* mklibgcc.in: Prepend $(DESTDIR) to $(libsubdir) in the
7264	installation destination variable ldir.
7265	* config/alpha/t-osf4 (SHLIB_INSTALL): Prepend $$(DESTDIR)
7266	to $$(slibdir) in the installation commands.
7267	* config/arm/t-netbsd (SHLIB_INSTALL): Likewise.
7268	* config/ia64/t-hpux (SHLIB_INSTALL): Likewise.
7269	* config/mips/t-iris5-6 (SHLIB_INSTALL): Likewise.
7270	* config/pa/t-hpux-shlib (SHLIB_INSTALL): Likewise.
7271	* config/rs6000/t-aix43 (SHLIB_INSTALL): Likewise.
7272	* config/rs6000/t-aix52 (SHLIB_INSTALL): Likewise.
7273	* config/t-slibgcc-elf-ver (SHLIB_INSTALL): Likewise.
7274	* config/t-slibgcc-sld (SHLIB_INSTALL): Likewise.
7275	* config/arc/t-arc (install-multilib-arc): Prepend $(DESTDIR) to
7276	$(libsubdir) in the installation commands.
7277
72782003-01-26  Alexandre Oliva  <aoliva@redhat.com>
7279
7280	* fp-bit.h: Define macros for TFmode floating-point constants
7281	in IBM-extended TFmode types.
7282	(TMODES): Define if __LDBL_MANT_DIG__ has the newly-supported
7283	widths.
7284	* config/fp-bit.c (pack_d, unpack_d): Support IBM-extended
7285	TFmode type.
7286
7287	* config/fp-bit.h: Define macros for TFmode floating-point
7288	constants in IEEE quad TFmode type.  Declare functions according
7289	to L_ macros.
7290	(TMODES): Define if __LDBL_MANT_DIG__ is 113.
7291	(TFtype, TItype, UTItype): Define if TMODES is defined.
7292	(MAX_UDI_INT, MAX_DI_INT, BITS_PER_DI): Likewise.
7293	(F_T_BITOFF, D_T_BITOFF): Define.
7294	(IMPLICIT_1, IMPLICIT_2): Cast constants to types that are
7295	guaranteed to be wide enough.
7296	* config/fp-bit.c: Check for L_ macros for tf functions.
7297	(__thenan_tf): New.
7298	(nan): Adjust.
7299	(pack_d, unpack_d): Support IEEE 854 quad type.
7300	(_fpmul_parts): Support TFmode.  Compute exponent adjustment
7301	from FRAC_NBITS, FRAC_BITS and NGARDS.
7302	(usi_to_float): Cast constants to be shifted to fractype
7303	instead of assuming long long is wide enough.
7304	(sf_to_tf, df_to_tf, __make_tp, tf_to_df, tf_to_sf): New.
7305
7306	* Makefile.in (FPBIT_FUNCS): Added _sf_to_tf.
7307	(DBBIT_FUNCS): Added _df_to_tf.
7308	(TPBIT_FUNCS): New.
7309	(libgcc.mk): Pass TPBIT and TPBIT_FUNCS down.
7310	(LIBGCC_DEPS): Added TPBIT.
7311	* mklibgcc.in: Support TPBIT and TPBIT_FUNCS.
7312
7313	* optabs.c (expand_binop) <add, sub>: Return xtarget if we haven't
7314	been able to move the result to target.
7315
7316	* expr.c (emit_group_store): Initialize dst with CONST0_RTX
7317	for the appropriate mode.
7318
7319	* calls.c (emit_library_call_value_1): Handle return values
7320	in a PARALLEL.
7321
7322	* rtl.c (get_mode_alignment): Moved to...
7323	* stor-layout.c: ... here.
7324
7325	* print-rtl.c (print_rtx): Don't print MEM details in
7326	GENERATOR_FILEs.
7327
73282003-01-26  Michael Hayes  <m.hayes@elec.canterbury.ac.nz>
7329
7330	* df.c (df_uses_record): Handle CC0.
7331
73322003-01-25  Jan Hubicka  <jh@suse.cz>
7333	    Eric Botcazou <ebotcazou@libertysurf.fr>
7334
7335	PR opt/8492
7336	* gcse.c (one_cprop_pass): Delete unreachable blocks.
7337
73382003-01-25  Ulrich Weigand  <uweigand@de.ibm.com>
7339
7340	* reload.c (maybe_memory_address_p): New function.
7341	(find_reloads_address): Use it instead of memory_address_p.
7342
73432003-01-25  Kaz Kojima  <kkojima@gcc.gnu.org>
7344
7345	* final.c (shorten_branches): Align the address of code label
7346	when computing initial lengths and addresses.
7347
73482003-01-25  Richard Henderson  <rth@redhat.com>
7349
7350	2002-02-19  Robert Lipe  <robertlipe@usa.net>
7351	* config/i386/t-sco5gas: (CRTSTUFF_T_CFLAGS_S): Delete -mcoff.
7352
73532003-01-23  Andreas Schwab  <schwab@suse.de>
7354
7355	* config/ia64/crtend.asm [HAVE_INITFINI_ARRAY]: Make
7356	__do_global_ctors_aux hidden global and don't put it in
7357	.init_array.
7358	* config/ia64/crtbegin.asm [HAVE_INITFINI_ARRAY]: Put it here
7359	instead so that it comes first.
7360
73612003-01-25  Michael Hayes  <m.hayes@elec.canterbury.ac.nz>
7362
7363	* config/c4x/c4x.h (ASM_SPEC): Fix for new gas format.
7364
73652003-01-24  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
7366
7367	* calls.c (fix_unsafe_tree): Prototype.
7368	* loop.c (loop_invariant_p): Avoid signed/unsigned warning.
7369
73702003-01-24  Richard Henderson  <rth@redhat.com>
7371
7372	PR optimization/4382
7373	* tree-inline.c (find_builtin_longjmp_call_1): New.
7374	(find_builtin_longjmp_call): New.
7375	(inlinable_function_p): Use it.
7376
73772003-01-24  Ulrich Weigand  <uweigand@de.ibm.com>
7378
7379	* configure.in (HAVE_AS_TLS): Add s390-*-* and s390x-*-* cases.
7380	* configure: Regenerate.
7381
7382	* config/s390/s390-protos.h (tls_symbolic_operand): Add prototype.
7383	(tls_symbolic_reference_mentioned_p): Add prototype.
7384	(s390_tls_get_offset): Add prototype.
7385	(emit_pic_move): Remove prototype, replace by ...
7386	(emit_symbolic_move): .. this new prototype.
7387
7388	* config/s390/s390.c (TARGET_HAVE_TLS): Conditionally define.
7389	(tls_model_chars): New global variable.
7390	(s390_encode_section_info): Encode TLS model.
7391	Use targetm.binds_local_p to check for local symbols.
7392	(s390_strip_name_encoding): New function.
7393	(TARGET_STRIP_NAME_ENCODING): Define.
7394
7395	(get_thread_pointer): New function.
7396	(legitimize_tls_address): New function.
7397	(legitimize_address): Call it.
7398	(emit_pic_move): Remove, replace by ...
7399	(emit_symbolic_move): ... this new function.
7400
7401	(larl_operand): Handle TLS operands.
7402	(legitimate_constant_p): Likewise.
7403	(s390_decompose_address): Likewise.
7404	(s390_cannot_force_const_mem): New function.
7405	(TARGET_CANNOT_FORCE_CONST_MEM): Define.
7406
7407	(s390_output_symbolic_const): Handle TLS unspecs.
7408	(print_operand): New code 'J'.
7409	(machine_function): Add struct member 'some_ld_name'.
7410	(get_some_local_dynamic_name, get_some_local_dynamic_name_1): New.
7411
7412	(enum s390_builtin): New type.
7413	(code_for_builtin_64, code_for_builtin_31): New global variables.
7414	(s390_init_builtins, s390_expand_builtin): New functions.
7415	(TARGET_INIT_BUILTINS, TARGET_EXPAND_BUILTIN): Define.
7416
7417	* config/s390/s390.h (TLS_SYMBOLIC_CONST): New macro.
7418	(ASM_OUTPUT_LABELREF): Define.
7419	(ASM_OUTPUT_SPECIAL_POOL_ENTRY): Handle TLS constants.
7420
7421	* config/s390/s390.md: Define TLS UNSPEC constants.
7422	("movdi", "movsi"): Handle TLS operands.
7423	("get_tp_64", "get_tp_31", "set_tp_64", "set_tp_31"): New insns.
7424	("*tls_load_64", "*tls_load_31"): New insns.
7425	("call_value_tls", "call_value_tls_exp"): New expanders.
7426	("brasl_tls", "bras_tls", "basr_tls_64", "basr_tls_31",
7427	"bas_tls_64", "bas_tls_31"): New insns.
7428
74292003-01-24  Volker Reichelt  <reichelt@igpm.rwth-aachen.de>
7430
7431	* doc/passes.texi: Fix typo.
74322003-02-01  Jan Hubicka  <jh@suse.cz>
7433
7434	* loop.c (emit_prefetch_instructions):  Do conversion at right place in
7435	RTL chain.
7436
7437	* combine.c (simplify_set): Reverse order of ragumetns to
7438	REG_CANNOT_CHANGE_MODE_P
7439	* df.c (df_def_record_1): Likewise.
7440	* recog.c (register_operand): Likewise.
7441	* simplify-rtx.c (simplify_subreg): Likewise.
7442	* hard-reg-set.h (REG_CANNOT_CHANGE_MODE_P): Update use of
7443	CANNOT_CHANGE_MODE_CLASS.
7444	* regclass.c (cannot_change_mode_set_regs, invalid_mode_change_p):
7445	Likewise.
7446	* reload.c (push_reload): Likewise.
7447	* alpha.h (CANNOT_CHANGE_MODE_CLASS): Update definition.
7448	* ia64.h (CANNOT_CHANGE_MODE_CLASS): Update definition.
7449	* mips.h (CANNOT_CHANGE_MODE_CLASS): Update definition.
7450	* mips-protos.h (mips_cannot_change_mode_class): Update prototype.
7451	* mips.c (mips_cannot_change_mode_class): Update.
7452	* pa64-regs.h (CANNOT_CHANGE_MODE_CLASS): Update definition.
7453	* rs6000.h (CANNOT_CHANGE_MODE_CLASS): Update definition.
7454	* s390.h (CANNOT_CHANGE_MODE_CLASS): Update definition.
7455	* sh.h (CANNOT_CHANGE_MODE_CLASS): Update definition.
7456	* sh-protos.h (sh_cannot_change_mode_class): Update prototype.
7457	* sh.c (sh_cannot_change_mode_class): Update.
7458	* i386.h (CANNOT_CHANGE_MODE_CLASS): New.
7459	* tm.texi (CANNOT_CHANGE_MODE_CLASS): Update documentation.
7460
74612003-01-24  Gabriel Dos Reis  <gdr@integrable-solutions.net>
7462
7463	* timevar.def (TV_NAME_LOOKUP, TV_OVERLOAD,
7464	TV_TEMPLATE_INSTANTIATION):  New timevar_id eumerations.
7465	* timevar.h (POP_TIMEVAR_AND_RETURN): New macro.
7466	* timevar.c (timevar_pop): Be verbose when aborting.  Include
7467	"toplev.h".
7468
74692003-01-24  Volker Reichelt  <reichelt@igpm.rwth-aachen.de>
7470
7471	* doc/bugreport.texi: Use @command instead of @code for commands.
7472	* doc/collect2.texi: Likewise.
7473	* doc/headerdirs.texi: Likewise.
7474	* doc/invoke.texi: Likewise.
7475	* doc/standards.texi: Likewise.
7476	* doc/tm.texi: Likewise.
7477	* doc/trouble.texi: Likewise.
7478
74792003-01-23  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
7480
7481	PR java/6748
7482	* config/rs6000/linux.h (MD_FALLBACK_FRAME_STATE_FOR): Don't destroy
7483	regs->nip. Fix rt_sigreturn frame layout. Add support for newer
7484	kernels.
7485
74862003-01-23  Volker Reichelt  <reichelt@igpm.rwth-aachen.de>
7487
7488	PR other/7341
7489	* invoke.texi (ftest-coverage): Fix broken cross-reference.
7490	Change @code to @command for gcov command.
7491
7492	* gcc.texi: Adjust title of gcov section.
7493	Adjust copyright.
7494	* gcov.texi: Likewise.
7495
74962003-01-23  Volker Reichelt  <reichelt@igpm.rwth-aachen.de>
7497
7498	PR other/7448
7499	* doc/passes.texi (fssa-ccp): Remove misplaced line.
7500
75012003-01-22  Ulrich Weigand  <uweigand@de.ibm.com>
7502
7503	* config/s390/s390.h (HARD_REGNO_MODE_OK): Fix warning regression
7504	introduced by last change.
7505
75062003-01-22  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
7507
7508	* configure.in: Make --disable-checking the default.
7509	* configure: Regenerate.
7510
75112003-01-22  Ulrich Weigand  <uweigand@de.ibm.com>
7512
7513	* config/s390/s390-protos.h (preferred_la_operand_p):
7514	Remove second parameter.
7515	* config/s390/s390.c (preferred_la_operand_p): Likewise.
7516	* config/s390/s390.h (FRAME_REGNO_P, FRAME_REG_P): New macros.
7517	(HARD_REGNO_MODE_OK): Use FRAME_REGNO_P.
7518	* config/s390/s390.md ("*la_cc_64", "*la_cc_31", splitters): Remove.
7519	Add peepholes to transform ADD to LOAD ADDRESS.
7520
75212003-01-20  Jan Hubicka  <jh@suse.cz>
7522
7523	* i386.md (SSE cmov splitter):  Handle memory operand in operand 5.
7524
75252003-01-21  Christian Ehrhardt  <ehrhardt@mathematik.uni-ulm.de>
7526
7527	PR opt/7507
7528	* calls.c (fix_unsafe_tree): Split out from ...
7529	(expand_call): ... here.  Use it on the function address too.
7530
75312003-01-20  Richard Henderson  <rth@redhat.com>
7532
7533	PR opt/7154
7534	* stmt.c (expand_asm_operands): Validize memory operands.
7535
75362003-01-20  Richard Henderson  <rth@redhat.com>
7537
7538	PR opt/8848
7539	* ifcvt.c (noce_process_if_block): Correct arguments to
7540	modified_between_p for no-else-block case.
7541
75422003-01-20  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
7543
7544	* ifcvt.c (noce_emit_store_flag): Don't emit store flag if mode of x
7545	is not a scalar int mode.
7546
75472003-01-20  Kazu Hirata  <kazu@cs.umass.edu>
7548
7549	* config/h8300/h8300.c (notice_update_cc): Don't assume that
7550	recog_data.operands[0] is always associated with cc0.
7551
75522003-01-19  Stephane Carrez  <stcarrez@nerim.fr>
7553
7554	* config/m68hc11/m68hc11.c (stack_push_word, stack_pop_word,
7555	z_reg, z_reg_qi): Declare static and GTY().
7556	(da_reg): Remove.
7557	(create_regs_rtx): Don't create da_reg.
7558	("gt-m68hc11.h"): Include for GTY roots.
7559	(m68hc11_autoinc_compatible_p): Remove.
7560	(autoinc_mode): Declare prototype.
7561	(m68hc11_make_autoinc_notes): Likewise.
7562	* config/m68hc11/m68hc11.h (ix_reg, iy_reg, d_reg): Declare extern
7563	and GTY() here.
7564	(m68hc11_compare_op0, m68hc11_compare_op1): Likewise.
7565	(m68hc11_soft_tmp_reg): Likewise.
7566	* config/m68hc11/m68hc11-protos.h: Remove above declarations.
7567
75682003-01-18  Roger Sayle  <roger@eyesopen.com>
7569
7570	* config/pa/pa.md (muldi3): Avoid invalid sharing of SUBREG RTXs.
7571
75722003-01-10  Geoffrey Keating  <geoffk@apple.com>
7573
7574	* varasm.c (struct constant_descriptor_rtx): Remove unused
7575	`label' field.
7576
7577	* ggc-page.c (ggc_collect): Avoid overflow computing
7578	min_expand.
7579
75802002-12-20  Geoffrey Keating  <geoffk@apple.com>
7581
7582	* integrate.c (output_inline_function): Don't hold private
7583	pointers to 'struct function' over GC calls.
7584
75852003-01-17  Alexandre Oliva  <aoliva@redhat.com>
7586
7587	* config/mips/mips.h: Don't use #elif.  Reported by Kaveh
7588	R. Ghazi.
7589
75902003-01-16  Kaz Kojima  <kkojima@gcc.gnu.org>
7591
7592	* config/sh/sh.c (sh_initialize_trampoline): Emit rotrdi3_mextr
7593	instead of rotldi3_mextr.
7594
75952003-01-16  Stephane Carrez  <stcarrez@nerim.fr>
7596
7597	* config/m68hc11/m68hc11.c (m68hc11_check_z_replacement): Fix handling
7598	68HC12 pre/post inc/dec side effects.
7599
76002003-01-16  Stephane Carrez  <stcarrez@nerim.fr>
7601
7602	* config/m68hc11/m68hc11.h (MASK_M6812): Define.
7603
76042003-01-16  Stephane Carrez  <stcarrez@nerim.fr>
7605
7606	* config/m68hs11/m68hc11.c (expand_prologue): Use push/pop to
7607	allocate 4-bytes of locals on 68HC11.
7608	(expand_epilogue): Likewise.
7609	(m68hc11_memory_move_cost): Increase cost of HI/QI soft registers.
7610
76112003-01-15  John David Anglin  <dave@hiauly1.hia.nrc.ca>
7612
7613	* som.h (SUPPORTS_WEAK, SUPPORTS_ONE_ONLY, MAKE_DECL_ONE_ONLY,
7614	ASM_WEAKEN_LABEL, GTHREAD_USE_WEAK): Define.
7615	* pa.h (TARGET_SOM_SDEF): Define.
7616	* pa-hpux11.h (TARGET_SOM_SDEF): Define.
7617
76182003-01-15  Stephane Carrez  <stcarrez@nerim.fr>
7619
7620	* config/m68hc11/m68hc11.h (ASM_SPEC): Handle -m68hcs12; Pass -mshort
7621	and -mshort-double to the assembler to specify the ABI.
7622	(LINK_SPEC): Likewise.
7623	(CPP_SPEC): Pass HCS12 specific define.
7624	(MASK_M68S12): New define.
7625	(TARGET_M68S12): Likewise.
7626	(TARGET_SWITCHES): New options -m68hcs12 and -m68S12.
7627	(TARGET_VERSION): Update.
7628	* config/m68hc11/m68hc12.h (CPP_SPEC): Pass HCS12 specific define.
7629	(LINK_SPEC): Update.
7630	(ASM_SPEC): Update.
7631	* config/m68hc11/m68hc11.c (m68hc11_asm_file_start): Update.
7632	* doc/invoke.texi (M68hc1x Options): Document -m68hcs12.
7633
76342003-01-15  John David Anglin  <dave.anglin@nrc.gc.ca>
7635
7636	* gengtype-lex.l (malloc, realloc): Move defines after include of
7637	system.h.
7638
76392003-01-15  Stephane Carrez  <stcarrez@nerim.fr>
7640
7641	* config/m68hc11/m68hc11.md ("return"): Use emit_jump_insn to emit
7642	the return code.
7643
76442003-01-15  Josef Zlomek  <zlomekj@suse.cz>
7645
7646	* cfganal.c (set_edge_can_fallthru_flag): Clear the EDGE_CAN_FALLTHRU
7647	flag before setting it.
7648
76492003-01-15  Josef Zlomek  <zlomekj@suse.cz>
7650
7651	Segher Boessenkool  <segher@koffie.nl>
7652
7653	* predict.c (real_inv_br_prob_base): New variable.
7654	(propagate_freq): Use multiply by reciprocal instead of
7655	division.  Don't divide by 1.0 at all.
7656	(estimate_bb_frequencies): Similar.
7657
76582003-01-15  Alexandre Oliva  <aoliva@redhat.com>
7659
7660	* configure.in (libgcc_visibility): Force disabled on IRIX 6 too.
7661	* configure: Rebuilt.
7662
7663	* config/mips/mips.h (CRT_CALL_STATIC_FUNCTION): Define so as
7664	to set $gp before the call.
7665
76662003-01-10  Andrew Haley  <aph@redhat.com>
7667
7668	* config/i386/linux64.h (MD_FALLBACK_FRAME_STATE_FOR): Rename
7669	registers to be in correct order.  Add rip.
7670
76712003-01-14  Denis Chertykov  <denisc@overta.ru>
7672
7673	* config/ip2k/ip2k.h (VALID_MACHINE_DECL_ATTRIBUTE): Remove.
7674	(VALID_MACHINE_TYPE_ATTRIBUTE): Remove.
7675
7676	* config/ip2k/ip2k.c (ip2k_attribute_table): New table of
7677	attributes.
7678	(TARGET_ATTRIBUTE_TABLE): New macro.
7679	(valid_machine_type_attribute): Remove.
7680	(valid_machine_decl_attribute): Remove.
7681	(ip2k_handle_progmem_attribute): New function.
7682	(ip2k_handle_fndecl_attribute): New function.
7683
76842003-01-14  Eric Botcazou  <ebotcazou@libertysurf.fr>
7685
7686	PR target/8870, PR target/9195
7687
7688	Backport from mainline:
7689
7690	2003-01-10  Richard Henderson  <rth@redhat.com>
7691
7692	* combine.c (make_compound_operation): Use SCALAR_INT_MODE_P,
7693	not INTEGRAL_MODE_P when widening extensions.
7694
76952003-01-13  Alexandre Oliva  <aoliva@redhat.com>
7696
7697	* aclocal.m4 (gcc_AC_PROG_GNAT): Don't try to prepend
7698	${ac_tool_prefix} to ADAC or CC.  Protect them from word
7699	splitting.
7700	* configure: Rebuilt.
7701
77022003-01-12  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
7703
7704	* unwind-dw2-fde.h (last_fde): Mark parameter with __attribute__
7705	((__unused__)).
7706
77072003-01-12  Alan Modra  <amodra@bigpond.net.au>
7708
7709	* expr.c (expand_expr <RDIV_EXPR>): Correct recursive call args.
7710
77112003-01-11  Jan Hubicka  <jh@suse.cz>
7712
7713	PR target/9068
7714	* i386.c (output_fp_compare): Fix typo
7715
77162003-01-10  Josef Zlomek  <zlomekj@suse.cz>
7717
7718	* jump.c (next_nonnote_insn_in_loop): New function.
7719	(copy_loop_headers): Use next_nonnote_insn_in_loop instead of
7720	next_nonnote_insn.
7721	(duplicate_loop_exit_test). Likewise.
7722
77232003-01-08  Jan Hubicka  <jh@suse.cz>
7724
7725	PR target/8213
7726	* i386.c (ix86_expand_int_movcc): Fix RTL sharing problem.
7727
77282003-01-09  Kazu Hirata  <kazu@cs.umass.edu>
7729
7730	* config/h8300/h8300.md (*extzv_1_r_h8300): Correct the insn
7731	length.
7732	(*extzv_1_r_h8300hs): Likewise.
7733	(*extzv_1_r_inv_h8300): Likewise.
7734	(*extzv_1_r_inv_h8300hs): Likewise.
7735
77362003-01-09  Josef Zlomek  <zlomj9am@artax.karlin.mff.cuni.cz>
7737
7738	* Makefile.in (optabs.o): Add dependency on basic-block.h.
7739	* basic-block.h (control_flow_insn_p): Fuction was exported.
7740	* cfgbuild.c (control_flow_insn_p): Fuction was made non-static.
7741	* optabs.c (emit_libcall_block): Emit REG_LIBCALL and REG_RETVAL
7742	notes only when the region is contained in a single basic block.
7743
77442003-01-09  Josef Zlomek  <zlomj9am@artax.karlin.mff.cuni.cz>
7745
7746	* Makefile.in (PARTITION_H): New.
7747	(BASIC_BLOCK_H): Added hard-reg-set.h and $(PARTITION_H).
7748	* basic-block.h: Include hard-reg-set.h.
7749
77502003-01-09  Eric Botcazou  <ebotcazou@libertysurf.fr>
7751
7752	PR inline-asm/8832
7753	* tree.h (expand_asm): New prototype.
7754	* stmt.c (expand_asm): Set the MEM_VOLATILE_P flag if instructed
7755	to do so.
7756	* c-semantics (genrtl_asm_stmt): Pass the RID_VOLATILE qualifier
7757	down to expand_asm.
7758	* c-typeck.c (simple_asm_stmt): Set the RID_VOLATILE qualifier.
7759	* rtlanal.c (volatile_insn_p) [ASM_INPUT]: Test the MEM_VOLATILE_P flag.
7760	(volatile_refs_p) [ASM_INPUT]: Likewise.
7761	(side_effects_p) [ASM_INPUT]: Likewise.
7762
77632003-01-09  Eric Botcazou  <ebotcazou@libertysurf.fr>
7764
7765	PR c/8032
7766	* c-typeck.c (process_init_element) [RECORD_TYPE]: For
7767	an empty element, do not advance the pointer to unfilled
7768	fields if there are pending initializers.
7769
77702003-01-09  Kaz Kojima  <kkojima@gcc.gnu.org>
7771
7772	* config/sh/sh.h (CASE_VECTOR_MODE): Use SImode for a
7773	non-optimizing compile.
7774	(ASM_OUTPUT_ADDR_VEC_ELT): Use .long for a non-optimizing
7775	compile.
7776
77772003-01-09  Andreas Jaeger  <aj@suse.de>
7778
7779	* unwind-dw2-fde.h (last_fde): Revert last patch.
7780
77812003-01-08  Danny Smith  <dannysmith@users.sourceforge.net>
7782
7783	PR optimization/8750
7784	* config/i386/i386.c (ix86_expand_prologue): Don't allow
7785	scheduling pass to move insns across __alloca call.
7786
77872003-01-08  Jeff Sturm  <jsturm@one-point.com>
7788
7789	PR target/9210
7790	* config/rs6000/rs6000.c (rs6000_elf_encode_section_info):
7791	Set SYMBOL_REF_FLAG on local data sym_ref.
7792
77932003-01-08  Jan Hubicka  <jh@suse.cz>
7794
7795	PR target/8322
7796	* i386.c (ix86_init_mmx_sse_builtins): Constify arguments of loads.
7797	* xmmintrin.h (_mm_load*_si128. _mm_store*_si128): Add casts.
7798
7799	PR target/7782
7800	* reload1.c (delete_output_reload): Avoid repeated attempts
7801	to delete insn.
7802
7803	* cselib.c (cselib_current_insn_in_libcall): New static variable.
7804	(new_elt_loc_list, cselib_process_insn, cselib_init): Keep track on whether
7805	we are inside libcall.
7806	* cselib.h (elt_loc_list): Add in_libcall.
7807	* gcse.c (do_local_cprop): Do not copy propagate using insns
7808	in libcalls.
7809
78102003-01-07  Janis Johnson  <janis187@us.ibm.com>
7811
7812	PR other/8947
7813	* doc/invoke.texi (-malign-double): Explain that the option breaks
7814	binary compatibility.
7815
78162003-01-07  Richard Henderson  <rth@redhat.com>
7817
7818	* alias.c (find_base_value): Only use new_reg_base_value shortcut
7819	if the register is set once.
7820
78212003-01-07  Sylvain Pion <Sylvain.Pion@mpi-sb.mpg.de>
7822
7823	* config/i386/i386.c (ix86_init_mmx_sse_builtins):
7824	__builtin_ia32_ldmxcsr and __builtin_ia32_stmxcsr are SSE, not MXX.
7825	* config/i386/i386.md (ldmxcsr, stmxcsr): SSE, not MMX.
7826
78272003-01-07  Benjamin Kosnik  <bkoz@redhat.com>
7828	    Sunil Davasam  <sunil.k.davasam@intel.com>
7829
7830	PR libstdc++/9076
7831	* unwind-dw2.c (execute_cfa_program): DW_CFA_undefined,
7832	DW_CFA_same_value, read next and ignore.
7833
78342003-01-07  Richard Henderson  <rth@redhat.com>
7835
7836	* cfganal.c (flow_call_edges_add): Don't crash on noreturn call.
7837
78382003-01-06  Aldy Hernandez  <aldyh@redhat.com>
7839
7840	Segher Boessenkool  <segher@koffie.nl>
7841
7842	* config/rs6000/rs6000.c (rs6000_reg_names): Add missing registers.
7843	(alt_reg_names): Ditto, fix formatting.
7844	* config/rs6000/rs6000.h (DEBUG_REGISTER_NAMES): Fix formatting.
7845
78462003-01-06  Bruce Korb  <bkorb@gnu.org>
7847
7848	* fixinc/fixfixes.c(wrap_fix): the wrapper guard must be a function
7849	of *both* the file name and the fix name.
7850
78512003-01-06  Richard Henderson  <rth@redhat.com>
7852
7853	* config/alpha/alpha.c (alpha_encode_section_info): Adjust symbol_str
7854	properly when changing "local-ness".
7855	* config/alpha/alpha.md (movdi_er_high_g): Allow all symbols.
7856
78572003-01-05  Andreas Jaeger  <aj@suse.de>
7858
7859	* unwind-dw2-fde.h (last_fde): Add unused attribute for obj.
7860
78612003-01-05  John David Anglin  <dave@hiauly1.hia.nrc.ca>
7862
7863	* pa64-hpux.h (JCR_SECTION_NAME): Define.
7864	(PA_INIT_FRAME_DUMMY_ASM_OP): Check EH_FRAME_SECTION_NAME instead of
7865	USE_EH_FRAME_REGISTRY when defining.
7866
78672003-01-04  John David Anglin  <dave.anglin@nrc.ca>
7868
7869	* config.gcc (hppa*64*-*-hpux11*): Define extra_parts.  Don't use
7870	collect2.
7871	* pa-hpux11.h (LDD_SUFFIX, PARSE_LDD_OUTPUT): Undefine.
7872	(HAS_INIT_SECTION, LD_INIT_SWITCH, LD_FINI_SWITCH): Define.
7873	* pa64-hpux.h (HP_INIT_ARRAY_SECTION_ASM_OP,
7874	GNU_INIT_ARRAY_SECTION_ASM_OP, HP_FINI_ARRAY_SECTION_ASM_OP,
7875	GNU_FINI_ARRAY_SECTION_ASM_OP): Define.
7876	(CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP): Define when not using
7877	elfos.h.
7878	(EH_FRAME_IN_DATA_SECTION): Delete define.
7879	(HAS_INIT_SECTION, LD_INIT_SWITCH, LD_FINI_SWITCH): Undefine.
7880	(STARTFILE_SPEC): Use crtbegin.o.
7881	(ENDFILE_SPEC): Use crtend.o.
7882	(INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP, CRT_CALL_STATIC_FUNCTION,
7883	SUPPORTS_INIT_PRIORITY, PA_CXA_FINALIZE_STUB, PA_INIT_FINI_HACK,
7884	PA_INIT_FRAME_DUMMY_ASM_OP, PA_JV_REGISTERCLASSES_STUB,
7885	DTOR_LIST_BEGIN): Define.
7886	* pa.c (TARGET_ASM_CONSTRUCTOR): Define.
7887	(pa_asm_out_constructor, pa_asm_out_destructor): New functions.
7888	* som.h (SUPPORTS_INIT_PRIORITY): Delete define.
7889
78902003-01-02  Eric Christopher  <echristo@redhat.com>
7891
7892	* config/mips/mips.md (movdf_internal2): Fix constraints.
7893
78942003-01-03  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
7895
7896	* doc/install.texi (Configuration): Fix markup for reference to
7897	gcc/config.gcc.
7898
78992003-01-02  Kazu Hirata  <kazu@cs.umass.edu>
7900
7901	* config/h8300/h8300.c (stack_pointer_operand): New.
7902	(const_int_gt_2_operand): Likewise.
7903	(const_int_ge_8_operand): Likewise.
7904	* config/h8300/h8300.md (a splitter): Likewise.
7905	(a peephole2): Likewise.
7906	* config/h8300/h8300-protos.h: Add prototypes for the new
7907	functions above.
7908
79092003-01-02  Neil Booth  <neil@daikokuya.co.uk>
7910
7911	* gccbug.in: Update for new categories.
7912
79132002-12-31  Tom Tromey  <tromey@redhat.com>
7914
7915	* doc/install.texi (Testing): Fixed typo.
7916
79172002-12-31  Jerry Quinn  <jlquinn@optonline.net>
7918
7919	* gcc/doc/invoke.texi (Optimization Options): Clean up -O flag
7920	descriptions.
7921
79222002-12-31  Jerry Quinn  <jlquinn@optonline.net>
7923
7924	* gcc/doc/invoke.texi (Optimization Options): List the options
7925	enabled by each -O flag.
7926
79272002-12-31  David Edelsohn  <edelsohn@gnu.org>
7928
7929	* config/rs6000/rs6000.h (WIDEST_HARDWARE_FP_SIZE): Define.
7930
79312002-12-31  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
7932
7933	* doc/install.texi (Configuration): Explicitly refer
7934	gcc/config.gcc for a list of cpu models.
7935
79362002-12-30  Joseph S. Myers  <jsm@polyomino.org.uk>
7937
7938	* doc/gcc.texi, doc/gccint.texi: Update last modification dates.
7939
79402002-12-30  Tom Tromey  <tromey@redhat.com>
7941
7942	* doc/install.texi (Testing): Mention Jacks.
7943
79442002-12-30  Joseph S. Myers  <jsm@polyomino.org.uk>
7945
7946	* doc/service.texi: Uncomment and update FAQ link.
7947
79482002-12-28  Joseph S. Myers  <jsm@polyomino.org.uk>
7949
7950	* doc/cpp.texi, doc/gcc.texi, doc/gccint.texi, doc/install.texi:
7951	Use @copying.
7952
79532002-12-28  Joseph S. Myers  <jsm@polyomino.org.uk>
7954
7955	* configure.in: Increase makeinfo version requirement to 4.[2-9].
7956	* configure: Regenerate.
7957	* doc/install.texi: Update Texinfo version requirement.
7958
79592002-12-27  Joseph S. Myers  <jsm@polyomino.org.uk>
7960
7961	* doc/include/texinfo.tex: Update to version 2002-12-26.16.
7962
79632002-12-26  Joseph S. Myers  <jsm@polyomino.org.uk>
7964
7965	* doc/standards.texi, doc/invoke.texi: Point to 3.3 version of
7966	c99status.html.
7967
79682002-12-26  Kazu Hirata  <kazu@cs.umass.edu>
7969
7970	* config/h8300/h8300.h (IDENT_ASM_OP): End with a tab.
7971
79722002-12-23  Larin Hennessy  <larin@science.oregonstate.edu>
7973
7974	* doc/install.texi: Remove i386-*-isc, i860-*-bsd,
7975	m68k-altos-sysv, m68k-isi-bsd, m68k-sony-bsd entries.
7976	* doc/invoke.texi: Remove AMD 29K, ARM RISC/iX, Clipper, Convex,
7977	DG/UX entries.
7978	* doc/md.texi: Remove AMD 29K entries.
7979	* doc/trouble.texi: Remove Alliant, DG/UX, Iris 4.0.5F, GAS
7980	1.38.1, NewsOS, RT PC, WE32K entries.
7981
79822002-12-23  Aldy Hernandez  <aldyh@redhat.com>
7983
7984	PR/8763
7985	* config/rs6000/altivec.md (mulv4sf3): Rewrite to add -0.0 vector.
7986	(altivec_vspltisw_v4sf): Name pattern.
7987	(altivec_vslw_v4sf): New pattern.
7988
79892002-12-23  Joseph S. Myers  <jsm@polyomino.org.uk>
7990
7991	* doc/include/gcc-common.texi: Clear DEVELOPMENT.
7992
79932002-12-23  David Edelsohn  <edelsohn@gnu.org>
7994
7995	PR middle-end/8784
7996	* expr.c (expand_assignment): Apply special treatment to
7997	ARRAY_TYPE.
7998
79992002-12-21  Kazu Hirata  <kazu@cs.umass.edu>
8000
8001	* config/h8300/h8300.md (zero_extendqisi2): Correct the
8002	length.
8003
80042002-12-19  Devang Patel <dpatel@apple.com>
8005
8006	* config/darwin.h (TARGET_OPTION_TRANSLATE_TABLE): Add support for -dynamic.
8007	(CPP_SPEC): Define __STATIC__ and __DYNAMIC__ depending on -dynamic.
8008	(LINK_SPEC): Pass -dynamic to linker.
8009	* config/rs6000/darwin.h: Reject conflicting -static and -dynamic.
8010
80112002-12-19  Kazu Hirata  <kazu@cs.umass.edu>
8012
8013	* config/h8300/h8300.md (pushqi_h8300): Don't push the stack
8014	pointer.
8015	(pushqi_h8300hs): Likewise.
8016	(pushhi_h8300): Likewise.
8017	(pushhi_h8300hs): Likewise.
8018
80192002-12-19  Eric Botcazou  <ebotcazou@libertysurf.fr>
8020
8021	PR optimization/8988
8022	* loop.c (maybe_eliminate_biv): Kill REG_EQUAL notes mentioning
8023	the biv when eliminating.
8024
80252002-12-19  Aldy Hernandez  <aldyh@redhat.com>
8026
8027	PR 8553
8028	* config/rs6000/altivec.md ("absv8hi2"): Add & to clobbered
8029	registers.
8030	("absv16qi2"): Same.
8031	("absv4si2"): Same.
8032	("absv4sf2"): Same.
8033	("altivec_abss_v16qi"): Same.
8034	("altivec_abss_v8hi"): Same.
8035	("altivec_abss_v4si"): Same.
8036
80372002-12-19  Ulrich Weigand  <uweigand@de.ibm.com>
8038
8039	* config/s390/s390.md ("*tsthiCCT", "*tsthiCCT_cconly",
8040	"*tstqiCCT", "*tstqiCCT_cconly"): New insns.
8041
80422002-12-18  Aldy Hernandez  <aldyh@redhat.com>
8043
8044	* config/rs6000/altivec.h (vec_cmplt macro): Reverse arguments in
8045	macro.
8046	(vec_cmplt C++ functions): Reverse arguments.
8047
80482002-12-17  Kazu Hirata  <kazu@cs.umass.edu>
8049
8050	* doc/c-tree.texi: Restore deliberate spelling mistakes.
8051
80522002-12-17  Kazu Hirata  <kazu@cs.umass.edu>
8053
8054	* doc/c-tree.texi: Fix typos and follow spelling conventions.
8055	* doc/cpp.texi: Likewise.
8056	* doc/extend.texi: Likewise.
8057	* doc/gty.texi: Likewise.
8058	* doc/install.texi: Likewise.
8059	* doc/invoke.texi: Likewise.
8060	* doc/md.texi: Likewise.
8061	* doc/passes.texi: Likewise.
8062	* doc/rtl.texi: Likewise.
8063	* doc/sourcebuild.texi: Likewise.
8064	* doc/tm.texi: Likewise.
8065
80662002-12-17  Jerry Quinn  <jlquinn@optonline.net>
8067
8068	* doc/invoke.texi: Minor spelling and grammar fixes.
8069
80702002-12-16  Mark Mitchell  <mark@codesourcery.com>
8071
8072	* version.c (version_string): Mark as prerelease.
8073
80742002-12-13  John David Anglin  <dave@hiauly1.hia.nrc.ca>
8075
8076	* pa.c (output_millicode_call): Correct typo.
8077	(output_call): Likewise.
8078
80792002-12-13  Alexandre Oliva  <aoliva@redhat.com>
8080
8081	* config/mn10300/mn10300.c (print_operand) <case N>: Check
8082	operand's range.  Print value directly, without aid from
8083	output_address.
8084	<case U>: New.
8085	<case S>: Make sure argument to fprintf has the right type.
8086	* config/mn10300/mn10300.h (OK_FOR_T): New macro.
8087	(EXTRA_CONSTRAINT): Adjust.
8088	* config/mn10300/mn10300.md: Add new all-QImode pattern for
8089	bclr.  Use %U for immediate operands of bset and bclr.
8090	(iorqi3): New expand, with insns for AM33 and mn10300.
8091
80922002-12-13  J"orn Rennecke <joern.rennecke@superh.com>
8093
8094	* sh.c (sh_register_operand): New function.
8095	(prepare_move_operands): Use it.
8096	* sh.h (PREDICATE_CODES): Add entry for sh_register_operand.
8097	* sh.md (movsi_media, movsi_media_nofpu): Allow stores of 0.
8098	(movqi_media, movhi_media, movdi_media, movdi_media_nofpu): Likewise.
8099	(movdf_media, movdf_media_nofpu, movv4sf_i, movsf_media): Likewise.
8100	(movsf_media_nofpu, movv2hi_i, movv4hi_i, movv8qi_i): Likewise.
8101	(movv2si_i): Likewise.
8102
81032002-12-13  Jim Wilson  <wilson@redhat.com>
8104
8105	* doc/extend.texi (Complex Numbers): Update info on debug info.
8106
81072002-12-13  Kazu Hirata  <kazu@cs.umass.edu>
8108
8109	* config/h8300/h8300.md (addhi3_h8300): Remove the last
8110	alternative.
8111
81122002-12-12  Devang Patel  <dpatel@apple.com>
8113
8114	* doc/invoke.texi: Document Darwin linker options, -bundle
8115	-bind_at_load, -all_load and -arch_errors_fatal
8116
81172002-12-12  Jim Wilson  <wilson@redhat.com>
8118
8119	* dbxout.c (dbxout_fptype_value): New.
8120	(dbxout_type, case COMPLEX_TYPE): Call it.  Use 'R' instead of 'r'.
8121
81222002-12-12  Kazu Hirata  <kazu@cs.umass.edu>
8123
8124	* c-decl.c: Fix a comment typo.
8125	* cfg.c: Likewise.
8126	* cfgcleanup.c: Likewise.
8127	* cfglayout.c: Likewise.
8128	* cfgrtl.c: Likewise.
8129	* c-typeck.c: Likewise.
8130	* dominance.c: Likewise.
8131	* dwarf2asm.c: Likewise.
8132	* dwarfout.c: Likewise.
8133	* expmed.c: Likewise.
8134	* expr.c: Likewise.
8135	* final.c: Likewise.
8136	* flow.c: Likewise.
8137	* function.c: Likewise.
8138	* gcc.c: Likewise.
8139	* genautomata.c: Likewise.
8140	* integrate.c: Likewise.
8141	* loop.c: Likewise.
8142	* loop.h: Likewise.
8143	* output.h: Likewise.
8144	* profile.c: Likewise.
8145	* ra.h: Likewise.
8146	* reload1.c: Likewise.
8147	* reload.c: Likewise.
8148	* sched-rgn.c: Likewise.
8149	* stmt.c: Likewise.
8150	* tree.h: Likewise.
8151	* vmsdbgout.c: Likewise.
8152
81532002-12-12  Kazu Hirata  <kazu@cs.umass.edu>
8154
8155	* config/h8300/h8300.md: Add a new peephole2.
8156
81572002-12-12  Kazu Hirata  <kazu@cs.umass.edu>
8158
8159	* config/h8300/h8300.md (a peephole2): Accept a constant
8160	that's accepted by CONST_OK_FOR_J.
8161
81622002-12-12  Kazu Hirata  <kazu@cs.umass.edu>
8163
8164	* config/h8300/h8300.h (CONST_OK_FOR_J): New.
8165	(CONST_OK_FOR_LETTER_P): Use CONST_OK_FOR_J.
8166	* config/h8300/h8300.md (*addhi_h8300): Add a new alternative.
8167	(*addhi_h8300hs): Likewise.
8168
81692002-12-12  J"orn Rennecke <joern.rennecke@superh.com>
8170
8171	* sh.c (reg_class_from_letter): No longer const.  Add 'e' entry.
8172	(sh_register_move_cost): Add clause for SImode fp-fp moves.
8173	Increase cost for moves involving multiple general purpose registers.
8174	* sh.h (OVERRIDE_OPTIONS): Set reg_class_from_letter['e'] according to
8175	TARGET_FMOVD.
8176	(HARD_REGNO_MODE_OK): Allow V2SFmode and V4SFmode in general purpose
8177	registers, and SImode in fp registers, for ! TARGET_SHMEDIA.
8178	(enum reg_class reg_class_from_letter): No longer const.
8179	(SECONDARY_OUTPUT_RELOAD_CLASS): Use REGCLASS_HAS_FP_REG /
8180	REGCLASS_HAS_GENERAL_REG.
8181	Handle SImode moves from/to fp registers.
8182	! TARGET_SHMEDIA && TARGET_FMOVD.
8183	(SECONDARY_INPUT_RELOAD_CLASS): Use REGCLASS_HAS_FP_REG.
8184	* sh.md (movsi_ie): Add alternatives to move from / to fp regisyters.
8185
81862002-12-12  Andreas Schwab  <schwab@suse.de>
8187
8188	* config/ia64/ia64.c (ia64_hpux_asm_file_end): Fix typo in last
8189	change and some warnings.
8190
81912002-12-12  Kazu Hirata  <kazu@cs.umass.edu>
8192
8193	* doc/md.texi (pushm): Fix a typo.
8194
81952002-12-12  Alexandre Oliva  <aoliva@redhat.com>
8196
8197	* config/mips/mips.c (mips_output_conditional_branch): Support
8198	PIC-safe out-of-range branch and branch-likely.
8199	* config/mips/mips.md (attr length): PIC-safe out-of-range
8200	branches are longer.
8201	("jump"): Support PIC-safe out-of-range-for-branch jumps.  Remove
8202	unused code to support indirect jumps.
8203
82042002-12-11  John David Anglin  <dave@hiauly1.hia.nrc.ca>
8205
8206	* pa.h (BIGGEST_ALIGNMENT): Change 32-bit value to 64 bits.
8207	(MAX_PARM_BOUNDARY, STACK_BOUNDARY): Express in terms of
8208	BIGGEST_ALIGNMENT.
8209	(PREFERRED_STACK_BOUNDARY): Express in terms of STACK_BOUNDARY.
8210	(FUNCTION_BOUNDARY): Express in terms of BITS_PER_WORD.
8211
82122002-12-11  Kazu Hirata  <kazu@cs.umass.edu>
8213
8214	* doc/invoke.texi: Correct dump file names.
8215
82162002-12-09  Steve Ellcey  <sje@cup.hp.com>
8217
8218	* config/ia64/ia64.c (ia64_hpux_asm_file_end): Don't send stripped
8219	name to globalize_label or assemble_name.
8220
82212002-12-11  J"orn Rennecke <joern.rennecke@superh.com>
8222
8223	* sh.h (REG_CLASS_HAS_GENERAL_REG): Only true for SIBCALL_REGS
8224	if not TARGET_SHMEDIA.
8225
82262002-12-11  J"orn Rennecke <joern.rennecke@superh.com>
8227
8228	* sh.h (REG_CLASS_HAS_FP_REG): New.
8229	(REGISTER_MOVE_COST) Use it.  Put body into a function and
8230	move it into:
8231	* sh.c (sh_register_move_cost).
8232	* sh-protos.h (sh_register_move_cost): Declare.
8233
8234	* sh.c (sh_expand_builtin): Abort for unexpected nop values.
8235	(sh_adjust_cost): Always return a value.
8236
82372002-12-11  J"orn Rennecke <joern.rennecke@superh.com>
8238
8239	* sh.h (REG_CLASS_HAS_GENERAL_REG): New.
8240	(REGISTER_MOVE_COST): Use it.
8241
82422002-12-11  Richard Henderson  <rth@redhat.com>
8243
8244	* tree.h (MODULE_LOCAL_P): Kill.
8245	* varasm.c (default_binds_local_p_1): Use decl_visibility instead.
8246
82472002-12-11  Kazu Hirata  <kazu@cs.umass.edu>
8248
8249	* config/h8300/h8300.md (two define_peephole2): New.
8250
82512002-12-11  Kazu Hirata  <kazu@cs.umass.edu>
8252
8253	* config/h8300/h8300.h (CONST_OK_FOR_J): Remove.
8254	(CONST_OK_FOR_K): Likewise.
8255	(CONST_OK_FOR_M): Likewise.
8256	(CONST_OK_FOR_LETTER_P): Do not use the above macros.
8257
82582002-12-11  Neil Booth  <neil@daikokuya.co.uk>
8259
8260	* c-common.c (builtin_define_type_max): Handle unsigned
8261	types too.
8262
82632002-12-10  Janis Johnson  <janis187@us.ibm.com>
8264
8265	PR other/8882
8266	* doc/tm.texi (PUSH_ARGS): Remove misplaced line.
8267
82682002-12-10  Devang Patel  <dpatel@appple.com>
8269
8270	* config/darwin.h(LINK_SPEC): Add darwin specific linker options.
8271	* doc/invoke.texi: Add new "Darwin Options" section.
8272
82732002-12-10  Jim Wilson  <wilson@redhat.com>
8274
8275	* rs6000.h (RETURN_IN_MEMORY): If ABI_V4, then TFmode is returned in
8276	memory.
8277
82782002-12-10  Andrew Haley  <aph@redhat.com>
8279
8280	* cse.c (cse_insn): Don't cse past a basic block boundary.
8281
82822002-12-10  Jakub Jelinek  <jakub@redhat.com>
8283
8284	* config/linux.h (LIB_SPEC): If -pthread, add -lpthread even if
8285	-shared.
8286	* config/alpha/linux-elf.h (LIB_SPEC): Likewise.
8287	* config/alpha/linux.h (LIB_SPEC): Likewise.
8288	* config/arm/linux-elf.h (LIB_SPEC): Likewise.
8289	* config/pa/pa-linux.h (LIB_SPEC): Likewise.
8290	* config/sparc/linux.h (LIB_SPEC): Likewise.
8291	* config/sparc/linux64.h (LIB_SPEC): Likewise.
8292
82932002-12-09  Larin Hennessy  <larin@science.oregonstate.edu>
8294
8295	* doc/invoke.texi: Document UltraSparc III option.
8296
82972002-12-09  Richard Henderson  <rth@redhat.com>
8298
8299	* config/i386/i386.h (TARGET_CPU_CPP_BUILTINS): Define
8300	__tune_pentium2__ and __tune_pentium3__ as necessary.
8301
83022002-12-09  Richard Henderson  <rth@redhat.com>
8303
8304	* target.h (gcc_target): Add cannot_force_const_mem.
8305	* target-def.h (TARGET_CANNOT_FORCE_CONST_MEM): New.
8306	(TARGET_INITIALIZER): Add it.
8307	* varasm.c (force_const_mem): Fail if cannot_force_const_mem.
8308	* expr.c (emit_move_insn): Be prepared for force_const_mem to fail.
8309	* reload1.c (reload): Likewise.
8310	* hooks.c (hook_bool_rtx_false): New.
8311	* hooks.h: Declare it.
8312
8313	* config/i386/i386.c (ix86_cannot_force_const_mem): New.
8314	(TARGET_CANNOT_FORCE_CONST_MEM): New.
8315	(ix86_expand_move): Remove de-const-pooling hack.
8316
83172002-12-09  Jan Hubicka  <jh@suse.cz>
8318
8319	* toplev.c (dump_file): Fix order to match reality.
8320
83212002-12-08  Geoffrey Keating  <geoffk@apple.com>
8322
8323	* config/rs6000/rs6000.md (load_multiple): Use adjust_address_nv.
8324	(store_multiple): Likewise.
8325
83262002-12-09  John David Anglin  <dave@hiauly1.hia.nrc.ca>
8327
8328	* pa/fptr.c (__canonicalize_funcptr_for_compare): Don't canonicalize
8329	function pointers in page 0.
8330
83312002-12-09  Steve Ellcey  <sje@cup.hp.com>
8332
8333	* config/ia64/hpux.h (TARGET_STRUCT_ARG_REG_LITTLE_ENDIAN): Remove
8334	definition
8335	(MEMBER_TYPE_FORCES_BLK): Move.
8336	* config/ia64/ia64.c (ia64_function_arg): Use PARALLEL to pass
8337	aggregate arguments.
8338	(ia64_function_value): Use PARALLEL to return aggregate values.
8339
83402002-12-09  Steve Ellcey  <sje@cup.hp.com>
8341
8342	* doc/tm.texi (FUNCTION_ARG_REG_LITTLE_ENDIAN): Remove definition.
8343	* defaults.h (FUNCTION_ARG_REG_LITTLE_ENDIAN): Remove definition.
8344	* calls.c (store_unaligned_arguments_into_pseudos) Remove
8345	FUNCTION_ARG_REG_LITTLE_ENDIAN.
8346	* stmt.c (expand_return): Ditto.
8347	* expr.c (move_block_from_reg): Ditto.
8348	(copy_blkmode_from_reg): Ditto.
8349	* expmed.c (store_bit_field): Ditto.
8350
83512002-12-09  Svein E. Seldal  <Svein.Seldal@solidas.com>
8352
8353	* config.gcc: Added tic4x-* target as an alias to c4x-*
8354
83552002-12-08  Jan Hubicka  <jh@suse.cz>
8356
8357	* i386.c (ix86_expand_int_movcc): Use force_operand instead of
8358	constructing insn directly.
8359
83602002-12-07  Kazu Hirata  <kazu@cs.umass.edu>
8361
8362	* config/h8300/h8300.md (*iorhi_shift_8): New.
8363
83642002-12-06  Bernd Schmidt  <bernds@redhat.com>
8365
8366	* doc/invoke.texi: Document FRV port options.
8367	* doc/md.texi: Document FRV register classes.
8368
83692002-12-07  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
8370
8371	* doc/install.texi (Configuration): Improve description of cases
8372	where `make distclean` may fail; clarify --with-gnu-as; fix grammar.
8373
83742002-12-06 Dhananjay Deshpande <dhananjayd@kpit.com>
8375
8376	* gcc/config/sh/sh.c (calc_live_regs): Save fpscr only if target has
8377	FPU.
8378	(push): Generate push_fpscr.
8379	(pop): Generate pop_fpscr.
8380	* gcc/config/sh/sh.md : Add define_expand "push_fpscr", "pop_fpscr".
8381	(fpu_switch): Add alternative to push fpscr.  Enable for TARGET_SH3E.
8382
83832002-12-06  J"orn Rennecke <joern.rennecke@superh.com>
8384
8385	* sh.c (dump_table): DImode pool constants need only 32 bit alignment.
8386	DFmode alignment depends on TARGET_FMOVD && TARGET_ALIGN_DOUBLE.
8387
83882002-12-06  J"orn Rennecke <joern.rennecke@superh.com>
8389
8390	* sh.md (movdi_i): Name.  Remove inappropriate comment.
8391
83922002-12-06  J"orn Rennecke <joern.rennecke@superh.com>
8393	Merged from basic improvements branch (excerpt):
8394
8395	2002-11-19  Kaz Kojima  <kkojima@gcc.gnu.org>
8396	* config/sh/sh.h (SH_DBX_REGISTER_NUMBER): Handle PR_MEDIA_REG.
8397
83982002-12-06  Jakub Jelinek  <jakub@redhat.com>
8399
8400	* expr.c (expand_expr) <case COND_EXPR>: Never modify exp in place.
8401
84022002-12-05  John David Anglin  <dave@hiauly1.hia.nrc.ca>
8403
8404	* pa32-linux.h (CANONICALIZE_FUNCPTR_FOR_COMPARE_LIBCALL): Move define.
8405	* pa.h (CANONICALIZE_FUNCPTR_FOR_COMPARE_LIBCALL): To here.
8406
84072002-12-05  Dale Johannesen  <dalej@apple.com>
8408
8409	* tree.c (unsafe_for_reeval):  Consider callee child of CALL_EXPR.
8410
84112002-12-05  Danny Smith  <dannysmith@users.sourceforge.net>
8412
8413	* config/i386/cygwin.h (SUBTARGET_PROLOGUE): Replace with
8414	PROFILE_HOOK.
8415	* config/i386/mingw32.h (SUBTARGET_PROLOGUE): Don't undef.
8416
84172002-12-05  Aldy Hernandez  <aldyh@redhat.com>
8418
8419	* config/rs6000/spe.h (__ev_mwlufi): Remove.
8420	(__ev_mwlufia): Remove.
8421	(__ev_mwlumfaaw): Remove.
8422	(__ev_mwlusfaaw): Remove.
8423	(__ev_mwlumfanw): Remove.
8424	(__ev_mwlusfanw): Remove.
8425
84262002-12-05  Kazu Hirata  <kazu@cs.umass.edu>
8427
8428	* config/h8300/h8300.md (*andorsi3_shift_8): New.
8429
84302002-12-05  Kazu Hirata  <kazu@cs.umass.edu>
8431
8432	* config/h8300/h8300.c (shift_alg_si): Optimize ashift:HI and
8433	lshiftrt:SI by 28, 29, and 30 bits when !TARGET_H8300.
8434	(get_shift_alg): Return optimal assembly instructions for the
8435	shifts mentioned above.
8436
84372002-12-04  Kazu Hirata  <kazu@cs.umass.edu>
8438
8439	* config/h8300/h8300.c (h8300_init_once): Do not use loop to
8440	implement ashiftrt:HI by 13 bits on H8S.
8441
84422002-12-04  John David Anglin  <dave@hiauly1.hia.nrc.ca>
8443
8444	* pa/fptr.c (__canonicalize_funcptr_for_compare): New file and function.
8445	* pa.md (canonicalize_funcptr_for_compare): Output library call to
8446	canonicalize_funcptr_for_compare_libfunc on TARGET_ELF32.
8447	* pa32-linux.h (CANONICALIZE_FUNCPTR_FOR_COMPARE_LIBCALL,
8448	CTOR_LIST_BEGIN): New defines.
8449	* pa/t-linux (LIB2FUNCS_EXTRA): New define.
8450	(fptr.c): Add make rules.
8451
84522002-12-04  Geoffrey Keating  <geoffk@apple.com>
8453
8454	* combine.c (combine_simplify_rtx): Add new canonicalizations.
8455	* doc/md.texi (Insn Canonicalizations): Document new
8456	canonicalizations for multiply/add combinations.
8457	* config/rs6000/rs6000.md: Add and modify floating add/multiply
8458	patterns to ensure they're used whenever they can be.
8459
84602002-12-04  Kazu Hirata  <kazu@cs.umass.edu>
8461
8462	* config/h8300/h8300.c: Update the comments related to shifts.
8463
84642002-12-04  Chris Demetriou  <cgd@broadcom.com>
8465
8466	* config/mips/mips.md (get_fnaddr): Correct length attribute.
8467
84682002-12-04  Kazu Hirata  <kazu@cs.umass.edu>
8469
8470	* config/h8300/h8300.md (*extzv_8_8): New.
8471	(*extzv_8_16): Likewise.
8472
84732002-12-04  Jason Merrill  <jason@redhat.com>
8474
8475	PR c++/8461, c++/8625
8476	* integrate.c (copy_decl_for_inlining): Handle explicit invisible
8477	references.
8478	* tree-inline.c (initialize_inlined_parameters): Likewise.
8479
8480	* tree.c (variably_modified_type_p): Just return an error_mark_node.
8481
84822002-12-04  Chris Demetriou  <cgd@broadcom.com>
8483
8484	* config/mips/mips.md (get_fnaddr): Avoid placing an "la"
8485	macro instruction in a branch delay slot, to avoid assembler
8486	warnings.
8487
84882002-12-04  Eric Botcazou  <ebotcazou@libertysurf.fr>
8489
8490	PR c/7622
8491	* c-semantics (genrtl_scope_stmt): Do not output inlined
8492	nested functions that contain no code.
8493
84942002-12-04  Jan Hubicka  <jh@suse.cz>
8495
8496	* cfgrtl.c (force_nonfallthru_and_redirect):  Allow abnormal edge
8497	to be forced into nonfallthru.
8498
84992002-12-03  Jason Thorpe  <thorpej@wasabisystems.com>
8500
8501	* config/t-netbsd (USER_H): Set to $(EXTRA_HEADERS).
8502
85032002-12-03  Aldy Hernandez  <aldyh@redhat.com>
8504
8505	* config/rs6000/spe.md (*movv1di_const0): New pattern.
8506
85072002-12-03  Richard Henderson  <rth@redhat.com>
8508
8509	* libgcc-std.ver: Inherit GCC_3.3 from GCC_3.0.
8510
85112002-12-03  Hans-Peter Nilsson  <hp@bitrange.com>
8512
8513	* bitmap.c (bitmap_ior_and_compl, bitmap_union_of_diff):
8514	Initialize tmp.using_obstack to 0.
8515
85162002-12-03  Andreas Schwab  <schwab@suse.de>
8517
8518	* config/m68k/m68k.h (EH_RETURN_DATA_REGNO): Define.
8519	(EH_RETURN_STACKADJ_RTX): Define.
8520	(EH_RETURN_HANDLER_RTX): Define.
8521	(ASM_PREFERRED_EH_DATA_FORMAT): Define.
8522	* config/m68k/m68k.c (m68k_save_reg): New function.  Handle eh
8523	registers and don't save fixed registers.
8524	(m68k_output_function_prologue): Use it.
8525	(use_return_insn): Likewise.
8526	(m68k_output_function_epilogue): Likewise.
8527
85282002-12-03  Kazu Hirata  <kazu@cs.umass.edu>
8529
8530	* config/h8300/h8300.c (single_one_operand): Fix a warning.
8531	(single_zero_operand): Likewise.
8532
85332002-12-02  Kazu Hirata  <kazu@cs.umass.edu>
8534
8535	* config/h8300/h8300.c (dosize): Replace argument op with
8536	sign.
8537	(h8300_output_function_prologue): Update the call to dosize.
8538	(h8300_output_function_epilogue): Likewise.
8539
85402002-12-02  Bob Wilson  <bob.wilson@acm.org>
8541
8542	* config/xtensa/xtensa.h: Delete ifndefs with nothing inside them.
8543
85442002-12-02  Craig Rodrigues  <rodrigc@gcc.gnu.org>
8545
8546	* configure.in: Use "missing" script to generate warning if
8547	flex or bison programs not found, instead of invoking "false".
8548	* configure: Rebuilt.
8549
85502002-12-02  Jan Hubicka  <jh@suse.cz>
8551
8552	* unroll.c (copy_loop_body): Copy CONST_OR_PURE_CALL_P.
8553
85542002-12-02  Jan Hubicka  <jh@suse.cz>
8555
8556	* i386.c (ix86_expand_int_movcc):  Avoid overflow.
8557
85582002-12-02  Kazu Hirata  <kazu@cs.umass.edu>
8559
8560	* config/h8300/h8300.c (dosize): Output r7/er7 instead of sp.
8561	(push): Likewise.
8562	(pop): Likewise.
8563	(h8300_output_function_prologue): Likewise.
8564	(h8300_output_function_epilogue): Likewise.
8565
85662002-12-02  J"orn Rennecke <joern.rennecke@superh.com>
8567
8568	* expmed.c (store_bit_field): Use int_mode_for_mode to find
8569	corresponding mode of non-integer mode, unless it is VOIDmode.
8570
85712002-12-02  Kazu Hirata  <kazu@cs.umass.edu>
8572
8573	* config/h8300/h8300.md (stm_h8300s_2): New.
8574	(stm_h8300s_3): Likewise.
8575	(stm_h8300s_4): Likewise.
8576	(five define_peephole2): Likewise.
8577
85782002-12-02  Kazu Hirata  <kazu@cs.umass.edu>
8579
8580	* ra-build.c: Fix a comment typo.
8581
85822002-12-01  Kazu Hirata  <kazu@cs.umass.edu>
8583
8584	* config/h8300/h8300.c (h8300_output_function_prologue):
8585	Remove variable idx.
8586	(h8300_output_function_epilogue): Likewise.
8587
85882002-12-01  Zack Weinberg  <zack@codesourcery.com>
8589
8590	* config/frv/xm-frv.h: Delete, unnecessary.
8591
85922002-12-01  Kazu Hirata  <kazu@cs.umass.edu>
8593
8594	* config/h8300/h8300.md: Add comments for define_peephole2.
8595
85962002-12-01  Mark Mitchell  <mark@codesourcery.com>
8597
8598	* builtin-types.def (BT_SIZE): Use size_type_node.
8599	* builtins.c (fold_builtin): Make the builtin strlen returns a
8600	size_t, not a sizetype.
8601	* c-common.c (c_sizeof_or_alignof_type): Use size_type_node, not
8602	c_size_type_node.
8603	(c_alignof_expr): Likewise.
8604	(c_common_nodes_and_builtins): Likewise.
8605	* c-common.h (CTI_C_SIZE_TYPE): Remove.
8606	(c_size_type_node): Likewise.
8607	* c-format.c (T_ST): Use size_type_node, not c_size_type_node.
8608	* tree.h (TI_SIZE_TYPE): New enumeral.
8609	(size_type_node): Likewise.
8610
86112002-11-30  John David Anglin  <dave@hiauly1.hia.nrc.ca>
8612
8613	* cfg.c (dump_flow_info): Use max_reg_num () to determine the largest
8614	pseudo register number plus 1.
8615
86162002-11-29  Hans-Peter Nilsson  <hp@bitrange.com>
8617
8618	* cpplib.c (_cpp_test_assertion): Default *value to 0.
8619
8620	* cppexp.c (num_part_mul): Initialize result.unsignedp, to 1.
8621
86222002-11-29  Ulrich Weigand  <uweigand@de.ibm.com>
8623
8624	* config/s390/t-crtstuff: New target makefile fragment.
8625	* config.gcc [s390-*-linux, s390x-*-linux]: Use it.
8626
86272002-11-29  Kazu Hirata  <kazu@cs.umass.edu>
8628
8629	* config/h8300/h8300.md (movsi_h8300hs): Change the order of
8630	alternatives to correct the length when the memory operand is
8631	either pre_dec or post_inc.
8632
86332002-11-29  Kazu Hirata  <kazu@cs.umass.edu>
8634
8635	* config/h8300/h8300.md (an anonymous pattern): Give an
8636	internal name *tst_extzv_bitqi_1_n.
8637	Accept bit_operand instead of bit_memory_operand.
8638	Do not accept bit tests with the MSB.
8639	(*tst_extzv_memqi_1_n): New.
8640
86412002-11-28  Kazu Hirata  <kazu@cs.umass.edu>
8642
8643	* config/h8300/h8300.c (h8300_eightbit_constant_address_p):
8644	Fix a comment typo.
8645	(h8300_tiny_constant_address_p): Likewise.
8646
86472002-11-28  Michael Matz  <matz@suse.de>
8648
8649	* doc/passes.texi: Mention the other register allocator.
8650
86512002-11-28  Kazu Hirata  <kazu@cs.umass.edu>
8652
8653	* config/h8300/h8300.md (6 new peephole2 patterns): New.
8654
86552002-11-28  Jakub Jelinek  <jakub@redhat.com>
8656
8657	* config.gcc (x86_64-*-linux*) [tmake_file]: Remove i386/t-crtstuff.
8658	* config/t-linux (CRTSTUFF_T_CFLAGS_S): Add $(CRTSTUFF_T_CFLAGS).
8659	* config/i386/t-linux64 (CRTSTUFF_T_CFLAGS): Define.
8660
86612002-11-28  Kazu Hirata  <kazu@cs.umass.edu>
8662
8663	* config/h8300/h8300.c (h8300_and_costs): New.
8664	* config/h8300/h8300.h (RTX_COSTS): Use h8300_and_costs.
8665	* config/h8300/h8300-protos.h: Add a prototype for
8666	h8300_and_costs.
8667
86682002-11-27  Zack Weinberg  <zack@codesourcery.com>
8669
8670	* config/rs6000/rs6000.c (altivec_init_builtins): Make the
8671	pointer argument in the prototypes of the following builtins
8672	be (const TYPE *) rather than (TYPE *):
8673	 + __builtin_altivec_ld_internal_4sf
8674	 + __builtin_altivec_ld_internal_4si
8675	 + __builtin_altivec_ld_internal_8hi
8676	 + __builtin_altivec_ld_internal_16qi
8677	 + __builtin_altivec_lvsl
8678	 + __builtin_altivec_lvsr
8679	 + __builtin_altivec_lvebx
8680	 + __builtin_altivec_lvehx
8681	 + __builtin_altivec_lvewx
8682	 + __builtin_altivec_lvxl
8683	 + __builtin_altivec_lvx
8684	 + __builtin_altivec_dst
8685	 + __builtin_altivec_dstt
8686	 + __builtin_altivec_dstst
8687	 + __builtin_altivec_dststt
8688
86892002-11-27  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
8690
8691	* except.c (default_exception_section): Move variable into the
8692	scope where it is used.
8693
86942002-11-27  Krister Walfridsson  <cato@df.lth.se>
8695
8696	* config.gcc (*-*-netbsd[2-9]*, *-*-netbsdelf[2-9]*): Test for
8697	correct version.
8698
86992002-11-27  Kazu Hirata  <kazu@cs.umass.edu>
8700
8701	* config/h8300/h8300.h (OK_FOR_U): Remove extra parentheses.
8702
87032002-11-27  Kazu Hirata  <kazu@cs.umass.edu>
8704
8705	* config/h8300/h8300.c (h8300_shift_costs): New.
8706	* config/h8300/h8300.h (RTX_COSTS): Use h8300_shift_costs.
8707	* config/h8300/h8300-protos.h: Add a prototype for
8708	h8300_shift_costs.
8709
87102002-11-27  Jim Wilson  <wilson@redhat.com>
8711
8712	* config/rs6000/spe.md (spu_evsplatfi, spu_evsplati): Swap operands
8713	in output template.
8714
87152002-11-27  Casper S. Hornstrup  <chorns@users.sourceforge.net>
8716
8717	* config/i386/i386.h (DLL_IMPORT_EXPORT_PREFIX): Define.
8718	* config/i386/winnt.c (i386_pe_dllexport_name_p): Use
8719	DLL_IMPORT_EXPORT_PREFIX, not '@'.
8720	(i386_pe_dllimport_name_p): Likewise.
8721	(i386_pe_mark_dllexport): Likewise.
8722	(i386_pe_mark_dllimport): Likewise.
8723	(i386_pe_encode_section_info): Likewise.
8724	(i386_pe_strip_name_encoding): Likewise.
8725
87262002-11-27  Richard Henderson  <rth@redhat.com>
8727
8728	* mkmap-symver.awk (BEGIN): Set sawsymbol false.
8729	(nm && NF == 3): Set sawsymbol true.
8730	(END): Exit if no symbols seen.
8731	(output): Fix map syntax error if no globals for the version.
8732
87332002-11-27  Jan Hubicka  <jh@suse.cz>
8734
8735	* builtins.def (DEF_C99_BUILTIN): Fix.
8736
87372002-11-26  Andrew Haley  <aph@redhat.com>
8738
8739	* unwind-sjlj.c (_Unwind_FindEnclosingFunction): Rename
8740	from_Unwind_Find_Enclosing_Function.
8741	* unwind-dw2.c (_Unwind_FindEnclosingFunction): Likewise.
8742	* config/ia64/unwind-ia64.c (_Unwind_FindEnclosingFunction): Likewise.
8743	* libgcc-std.ver (_Unwind_FindEnclosingFunction): Rename from
8744	_Unwind_Find_Enclosing_Function, export @@GCC_3.3.
8745	* unwind.h (_Unwind_FindEnclosingFunction): Add.
8746
87472002-11-26  Hartmut Penner  <hpenner@de.ibm.com>
8748
8749	* config/s390/s390.c (390_output_constant_pool): Set alignment
8750	before label in 64 bit mode, behind otherwise.
8751
87522002-11-26  Richard Henderson  <rth@redhat.com>
8753
8754	* c-common.c (handle_visibility_attribute): Accept "default".
8755	* tree.h (enum symbol_visibility): New.
8756	(decl_visibility): Declare.
8757	* target.h (gcc_target.visibility): Take visibility arg as integer.
8758	* varasm.c (default_assemble_visibility): Likewise.
8759	(decl_visibility): New.
8760	(maybe_assemble_visibility): Use it.
8761	* output.h (default_assemble_visibility): Update prototype.
8762	* config/rs6000/rs6000.c (rs6000_assemble_visibility): Take
8763	visibility arg as integer.
8764	* doc/extend.texi: Document default visibility.
8765
87662002-11-26  Kazu Hirata  <kazu@cs.umass.edu>
8767
8768	* config/h8300/h8300.c: Adjust spacing.
8769	* config/h8300/h8300.h: Likewise.
8770
87712002-11-26  Richard Henderson  <rth@redhat.com>
8772
8773	* hooks.c (hook_bool_void_false, hook_void_tree_int,
8774	hook_void_FILEptr_constcharptr): Rename so that the return
8775	type is first.
8776	(hook_int_tree_tree_1, hook_void_tree, hook_void_tree_treeptr,
8777	hook_bool_tree_false): New.
8778	* hooks.h: Update.
8779	* langhooks-def.h: Update for renames.
8780	* target-def.h: Likewise.
8781	* tree.c (default_comp_type_attributes,
8782	default_set_default_type_attributes, default_insert_attributes,
8783	default_function_attribute_inlinable_p,
8784	default_ms_bitfield_layout_p): Remove.
8785	* tree.h: Update.
8786
87872002-11-26  John David Anglin  <dave@hiauly1.hia.nrc.ca>
8788
8789	* pa-protos.h (function_value): New prototype.
8790	* pa.c (function_value): Use a PARALLEL to return small aggregates on
8791	TARGET_64BIT.
8792	* pa.h (FUNCTION_VALUE): Use function_value.
8793	* pa.md (call_value_internal_symref, call_value_internal_reg_64bit,
8794	call_value_internal_reg, sibcall_value_internal_symref,
8795	sibcall_value_internal_symref_64bit): Remove =rf constraint on return
8796	value.
8797
87982002-11-26  John David Anglin  <dave@hiauly1.hia.nrc.ca>
8799
8800	* expr.c (gen_group_rtx, emit_group_move): New functions.
8801	* expr.h (gen_group_rtx, emit_group_move): Prototype.
8802	* function.c (expand_function_start): Use gen_group_rtx to create a
8803	PARALLEL rtx to hold the return value when the real return rtx is a
8804	PARALLEL.
8805	(expand_function_end): Use emit_group_move to move the return value
8806	from a PARALLEL to the real return registers.
8807	* rtl.h (REG_FUNCTION_VALUE_P): Allow function values to be returned
8808	in PARALLELs.
8809
88102002-11-26  Jason Thorpe  <thorpej@wasabisystems.com>
8811
8812	* config/t-libc-ok: Fix typo.
8813
88142002-11-26  Jakub Jelinek  <jakub@redhat.com>
8815
8816	* configure.in: Move AC_CANONICAL_SYSTEM and AC_ARG_PROGRAM back
8817	before AC_PROG_CC.
8818	* configure: Rebuilt.
8819
88202002-11-26  Nathan Sidwell  <nathan@codesourcery.com>
8821
8822	* c-decl.c: (start_struct): Commonize flag setting.
8823
88242002-11-26  Jason Thorpe  <thorpej@wasabisystems.com>
8825
8826	* config/rs6000/rs6000.h (RS6000_CPU_CPP_ENDIAN_BUILTINS): New.
8827	* config/rs6000/rs6000-c.c (rs6000_cpu_cpp_builtins): Use
8828	RS6000_CPU_CPP_ENDIAN_BUILTINS.
8829	* config/rs6000/netbsd.h (RS6000_CPU_CPP_ENDIAN_BUILTINS): Redefine.
8830
88312002-11-26  Hartmut Penner  <hpenner@de.ibm.com>
8832
8833	* config/s390/s390.md (literal_pool_64, literal_pool_31 ): New
8834	insns.
8835	* config/s390/s390.c (struct machine_function): Introduction of
8836	struct machine_function.
8837	(s390_output_symbolic_const): Use of cfun.
8838	(s390_optimize_prolog): Likewise.
8839	(s390_fixup_clobbered_return_reg): Likewise.
8840	(s390_frame_info): Likewise.
8841	(s390_emit_prologue, s390_emit_epilogue): Likewise.
8842	(s390_init_machine_status): New function.
8843	(override_options): call s390_init_machine_status.
8844	* config/s390/s390-protos.h (s390_output_constant_pool): Changed
8845	prototype.
8846
88472002-11-26  Jakub Jelinek  <jakub@redhat.com>
8848
8849	* varasm.c (output_constant_pool): For pool constants in mergeable
8850	section ensure each constant is padded to multiple of entity size.
8851
88522002-11-26  Jakub Jelinek  <jakub@redhat.com>
8853
8854	* varasm.c (default_exception_section): Move to...
8855	* except.c (default_exception_section): ... here. Make
8856	.gcc_except_table read-only if it is not expected to have any
8857	dynamic relocations and linker handles it.
8858	* dwarf2out.c (default_eh_frame_section): Make .eh_frame read-only
8859	if it is not expected to have any dynamic relocations and linker
8860	handles it.
8861	* configure.in (HAVE_LD_RO_RW_SECTION_MIXING): Check what ld does
8862	when linking read-only and read-write sections together.
8863	* configure, config.in: Rebuilt.
8864	* crtstuff.c (EH_FRAME_SECTION_CONST): Define.
8865	(__EH_FRAME_BEGIN__, __FRAME_END__): Add it.
8866
88672002-11-25  Aldy Hernandez  <aldyh@redhat.com>
8868
8869	* config/rs6000/spe.h (__ev_create_sfix32_fs): Change macro into
8870	new function.
8871	(__ev_create_ufix32_fs): Same.
8872	(__ev_get_sfix32_fs_internal): New.
8873	(__ev_get_sfix32_fs): Define to use function.
8874	(__ev_get_ufix32_fs_internal): New.
8875	(__ev_get_ufix32_fs): Define to use function.
8876	(__ev_get_upper_ufix32_fs): Call __ev_get_ufix32_fs.
8877	(__ev_get_lower_ufix32_fs): Same.
8878	(__ev_get_upper_sfix32_fs): Call __ev_get_sfix32_fs.
8879	(__ev_get_lower_sfix32_fs): Same.
8880	(__ev_set_sfix32_fs_internal): New.
8881	(__ev_set_ufix32_fs_internal): New.
8882	(__ev_set_sfix32_fs): Call __ev_set_sfix32_fs_internal.
8883	(__ev_set_ufix32_fs): Call __ev_set_ufix32_fs_internal.
8884	(__ev_set_upper_sfix32_fs): Call function.
8885	(__ev_set_lower_sfix32_fs): Same.
8886	(__ev_set_upper_ufix32_fs): Same.
8887	(__ev_set_lower_ufix32_fs): Same.
8888
88892002-11-25  Douglas B Rupp  <rupp@gnat.com>
8890
8891	* gcc.c (do_spec_1): Reset delete_this_arg to zero.
8892
88932002-11-25  Jason Thorpe  <thorpej@wasabisystems.com>
8894
8895	* config/elfos.h (HANDLE_SYSV_PRAGMA): Define as 1.
8896	* config/interix.h (HANDLE_SYSV_PRAGMA): Likewise.
8897	* config/linux-aout.h (HANDLE_SYSV_PRAGMA): Likewise.
8898	* config/lynx-ng.h (HANDLE_SYSV_PRAGMA): Likewise.
8899	* config/lynx.h (HANDLE_SYSV_PRAGMA): Likewise.
8900	* config/netbsd.h (HANDLE_SYSV_PRAGMA): Likewise.
8901	* config/openbsd.h (HANDLE_SYSV_PRAGMA: Likewise.
8902	* config/alpha/elf.h (HANDLE_SYSV_PRAGMA): Likewise.
8903	* config/arm/netbsd.h (HANDLE_SYSV_PRAGMA): Likewise.
8904	* config/cris/aout.h (HANDLE_SYSV_PRAGMA): Likewise.
8905	* config/d30v/d30v.h (HANDLE_SYSV_PRAGMA): Likewise.
8906	* config/frv/frv.h (HANDLE_SYSV_PRAGMA): Likewise.
8907	* config/i386/djgpp.h (HANDLE_SYSV_PRAGMA): Likewise.
8908	* config/i386/i386-interix.h (HANDLE_SYSV_PRAGMA): Likewise.
8909	* config/i386/vxi386.h (HANDLE_SYSV_PRAGMA): Likewise.
8910	* config/ia64/ia64.h (HANDLE_SYSV_PRAGMA): Likewise.
8911	* config/m88k/m88k.h (HANDLE_SYSV_PRAGMA): Likewise.
8912	* config/mmix/mmix.h (HANDLE_SYSV_PRAGMA): Likewise.
8913	* config/rs6000/aix.h (HANDLE_SYSV_PRAGMA): Likewise.
8914	* config/rs6000/darwin.h (HANDLE_SYSV_PRAGMA): Likewise.
8915	* config/sparc/linux-aout.h (HANDLE_SYSV_PRAGMA): Likewise.
8916	* config/sparc/vxsparc64.h (HANDLE_SYSV_PRAGMA): Likewise.
8917	* config/stormy16/stormy16.h (HANDLE_SYSV_PRAGMA): Likewise.
8918	* config/alpha/osf.h (HANDLE_SYSV_PRAGMA): Don't undef before
8919	defining.
8920	* config/i386/sco5.h (HANDLE_SYSV_PRAGMA): Likewise.
8921	* config/mips/iris5.h (HANDLE_SYSV_PRAGMA): Likewise.
8922
89232002-11-25  Dave Pitts  <dpitts@cozx.com>
8924
8925	* gcc/fixinc/mkfixinc.sh: add i370-*-openedition to bypass fixinc list
8926
89272002-11-25  Kazu Hirata  <kazu@cs.umass.edu>
8928
8929	* config/h8300/h8300.md (an anonymous pattern): New.
8930
89312002-11-25  Richard Henderson  <rth@redhat.com>
8932
8933	* alias.c (find_base_value): Use new_reg_base_value if it's live.
8934	(copying_arguments): Make boolean.
8935
89362002-11-25  Jason Thorpe  <thorpej@wasabisystems.com>
8937
8938	* gcc.c (static_spec_functions): Add if-exists-else spec
8939	function.
8940	(if_exists_else_spec_function): New function.
8941	* doc/invoke.texi: Document the if-exists-else spec function.
8942
8943	* config/netbsd-elf.h (NETBSD_STARTFILE_SPEC): For -static, use
8944	"%:if-exists-else(crtbeginT%O%s crtbegin%O%s)".
8945
89462002-11-25  Jason Thorpe  <thorpej@wasabisystems.com>
8947
8948	* config.gcc (powerpc-*-netbsd*): Replace "svr4.h" with
8949	"netbsd.h netbsd-elf.h" in tm_file.  Set tmake_file to
8950	"${tmake_file} rs6000/t-netbsd".
8951	* config/rs6000/netbsd.h: Rewrite.
8952	* config/rs6000/t-netbsd: New file.
8953
89542002-11-25  Kazu Hirata  <kazu@cs.umass.edu>
8955
8956	* config/h8300/h8300.md (an anonymous pattern): Relax the
8957	condition for the pattern.
8958
89592002-11-25  Aldy Hernandez  <aldyh@redhat.com>
8960
8961	* config/rs6000/rs6000.h (enum rs6000_builtins): Remove evmwlssf,
8962	evmwlsmf, evmwlssfa, evmwlsmfa, evmwlssfaaw, evmwlsmfaaw,
8963	evmwlssfanw, evmwlsmfanw.
8964
8965	* config/rs6000/rs6000.c (bdesc_2arg): Same.
8966
8967	* config/rs6000/spe.md: Same for patterns.
8968
89692002-11-25  Christian Ehrhardt  <ehrhardt@mathematik.uni-ulm.de>
8970
8971	PR c/8639
8972	* fold-const.c (extract_muldiv): Don't propagate division unless
8973	both arguments are multiples of C.
8974
89752002-11-25  Andrew Haley  <aph@redhat.com>
8976
8977	* libgcc-std.ver (_Unwind_Find_Enclosing_Function): Add.
8978	* config/ia64/unwind-ia64.c (_Unwind_Find_Enclosing_Function): New.
8979	* unwind-sjlj.c (_Unwind_Find_Enclosing_Function): Likewise.
8980	* unwind-dw2.c (_Unwind_Find_Enclosing_Function): Likewise.
8981
89822002-11-24  Kazu Hirata  <kazu@cs.umass.edu>
8983
8984	* config/h8300/h8300.c (h8300_init_once): Fix a typo in the
8985	target help message.
8986
89872002-11-24  Jason Thorpe  <thorpej@wasabisystems.com>
8988
8989	* config.gcc (*-*-netbsd*1.[7-9]*, *-*-netbsd*[2-9]*): Set
8990	extra_parts to "crtbegin.o crtend.o crtbeginS.o crtendS.o
8991	crtbeginT.o".
8992	(arm*-*-netbsd*, i[34567]86-*-netbsd*, m68k*-*-netbsd*)
8993	(ns32k-*-netbsd*, sparc-*-netbsd*, vax-*-netbsd*): Set extra_parts
8994	to "" for a.out configurations.
8995	* config/t-netbsd (CRTSTUFF_T_CFLAGS): Set to "-fPIC".
8996
89972002-11-24  Jason Thorpe  <thorpej@wasabisystems.com>
8998
8999	* config/alpha/netbsd.h (CPP_SUBTARGET_SPEC): Just use
9000	NETBSD_CPP_SPEC directly.
9001	(SUBTARGET_EXTRA_SPECS): Remove netbsd_cpp_spec.  Add
9002	netbsd_endfile_spec.
9003	(ENDFILE_SPEC): Use %(netbsd_endfile_spec).
9004
90052002-11-24  Jason Thorpe  <thorpej@wasabisystems.com>
9006
9007	* config/netbsd-elf.h (STARTFILE_SPEC): Rename to
9008	NETBSD_STARTFILE_SPEC.
9009	(STARTFILE_SPEC): Redefine in terms of NETBSD_STARTFILE_SPEC.
9010	(ENDFILE_SPEC): Likewise.
9011	* config/netbsd.h (LIB_SPEC, LIBGCC_SPEC): Likewise.
9012
90132002-11-24  Andreas Schwab  <schwab@suse.de>
9014
9015	* Makefile.in (install-driver): Remove versioned link before
9016	trying to create it.
9017
9018	* config/m68k/m68k.c: Fix typo in last change defining
9019	TARGET_ASM_CAN_OUTPUT_MI_THUNK.
9020
90212002-11-23  Kazu Hirata  <kazu@cs.umass.edu>
9022
9023	* config/h8300/h8300.c (print_operand): Update the use of
9024	h8300_tiny_constant_address_p.
9025	(h8300_adjust_insn_length): Likewise.
9026	(h8300_tiny_constant_address_p): Check if the given rtx is a
9027	variable declared with __attribute__ ((tiny_data)).
9028
90292002-11-22  Dale Johannesen  <dalej@apple.com>
9030
9031	* toplev.c (rest_of_compilation):  Fix comments.
9032
90332002-11-22  Geoffrey Keating  <geoffk@apple.com>
9034
9035	* aclocal.m4 (ac_cv_func_mmap_dev_zero): Darwin does not
9036	allow mmap from /dev/zero.  Don't make decisions for the host
9037	based on presence or absence of /dev/zero on the build machine.
9038	(ac_cv_func_mmap_anon): Darwin does have working MMAP_ANON.
9039	(AC_FUNC_MMAP_FILE): Darwin does have mmap of a file.
9040	* configure: Regenerate.
9041
90422002-11-22  Daniel Jacobowitz  <drow@mvista.com>
9043
9044	* gcc.c (make_relative_prefix, split_directories)
9045	(free_split_directories): Removed.
9046
90472002-11-22  Daniel Jacobowitz  <drow@mvista.com>
9048
9049	* configure.in: Set insn=nop for DWARF-2 tests on ARM.
9050	* configure: Regenerated.
9051
90522002-11-22  Kazu Hirata  <kazu@cs.umass.edu>
9053
9054	* config/h8300/h8300.c (compute_a_shift_length): Fix the insn
9055	length computation when xor.l is output.
9056
90572002-11-21  Jim Wilson  <wilson@redhat.com>
9058
9059	* config/rs6000/rs6000.c (function_arg): Set inner mode of SPE
9060	vectors to SI.
9061
90622002-11-21  Bob Wilson  <bob.wilson@acm.org>
9063
9064	* config/xtensa/xtensa-protos.h (xtensa_copy_incoming_a7): Declare.
9065	* config/xtensa/xtensa.c (struct machine_function): Add
9066	incoming_a7_copied flag.
9067	(xtensa_copy_incoming_a7): Define.
9068	(xtensa_emit_move_sequence): Use xtensa_copy_incoming_a7.
9069	* config/xtensa/xtensa.md (movdi, movsf, movdf): Ditto.
9070
90712002-11-21  Jan Hubicka  <jH@suse.cz>
9072
9073	* i386-protos.h (x86_64_sign_extended_value): Fix prototype.
9074	* i386.c (x86_64_general_operand, x86_64_szext_general_operand,
9075	x86_64_nonmemory_operand, x86_64_movabs_operand,
9076	x86_64_szext_nonmemory_operand, x86_64_immediate_operand,
9077	ix86_expand_int_movcc): Update call of x86_64_sign_extended_value.
9078	(local_symbolic_operand): Do not care the 64bit limits.
9079	(x86_64_sign_extended_value): Remove allow_rip support.
9080	(legitimate_pic_address_disp_p): Handle all cases allowed
9081	with RIP addressing.
9082	(legitimate_address_p): Use legitimate_pic_address_disp_p for PIC.
9083	(legitimize_pic_address): Reorganize.
9084	* i386.h (EXTRA_CONSTRAINT): Update call of x86_64_sign_extended_value.
9085
90862002-11-21  Jason Thorpe  <thorpej@wasabisystems.com>
9087
9088	* config.gcc (arm*-*-netbsdelf*): Enable configuration.
9089	* config/arm/netbsd-elf.h: New file.
9090
90912002-11-21  Jason Thorpe  <thorpej@wasabisystems.com>
9092
9093	* config/arm/elf.h (SUBTARGET_EXTRA_SPECS): Add
9094	subtarget_asm_float_spec.
9095	(SUBTARGET_ASM_FLOAT_SPEC): Define, moving the
9096	defaults from...
9097	(ASM_SPEC): ...here.  Use subtarget_asm_float_spec.
9098
90992002-11-21  Nick Clifton  <nickc@redhat.com>
9100
9101	* config/fr30/fr30.md (movsf_constant_store): Move code to
9102	detect 0.0 into fr30.c.
9103	* config/fr30/fr30-protos.h (fr30_const_double_is_zero):
9104	Prototype.
9105	* config/fr30/fr30.c (fr30_const_double_is_zero): New
9106	function.  Return true if the rtx is 0.0.
9107
91082002-11-21  Jason Thorpe  <thorpej@wasabisystems.com>
9109
9110	* config/arm/elf.h (ASM_SPEC, LINK_SPEC): Pass -EL
9111	if -mlittle-endian is specified.
9112
91132002-11-21  Richard Earnshaw  <rearnsha@arm.com>
9114
9115	PR optimization/2903
9116	* arm.md (anddi_notzesidi_di): Operand 2 is inverted not operand 1.
9117	(anddi_notsesidi_di): Likewise.
9118
91192002-11-21  Kazu Hirata  <kazu@cs.umass.edu>
9120
9121	* config/h8300/h8300.c (print_operand): Use
9122	h8300_eightbit_constant_address_p and
9123	h8300_tiny_constant_address_p.
9124	(h8300_adjust_insn_length): Likewise.
9125	* config/h8300/h8300.h (EIGHTBIT_CONSTANT_ADDRESS_P): Remove.
9126	(TINY_CONSTANT_ADDRESS_P): Likewise.
9127	(OK_FOR_U): Use eightbit_constant_address_p.
9128
91292002-11-21  Ulrich Weigand  <uweigand@de.ibm.com>
9130
9131	* config/s390/libgcc-libc.ver: Add multilib support.
9132	* config/s390/linux.h (MULTILIB_DEFAULT): Define.
9133	* config/s390/t-linux64 (MULTILIB_OPTIONS, MULTILIB_DIRNAMES,
9134	MULTILIB_OSDIRNAMES, LIBGCC, INSTALL_LIBGCC,
9135	EXTRA_MULTILIB_PARTS): Define.
9136
91372002-11-21  Richard Earnshaw  <rearnsha@arm.com>
9138
9139	* arm.c (arm_get_frame_size): A leaf function does not need its
9140	stack padding to an aligned boundary if it has no frame.
9141	(thumb_get_frame_size): Likewise.
9142
91432002-11-20  Steve Ellcey  <sje@cup.hp.com>
9144
9145	* emit-rtl.c (gen_reg_rtx): Simplify mapping of Complex type
9146	to component type using GET_MODE_INNER.
9147	* expr.c (emit_move_insn_1): Ditto.
9148	* optabs.c (expand_binop): Ditto.
9149	(expand_unop): Ditto.
9150	(expand_complex_abs): Ditto.
9151
91522002-11-20  Douglas B Rupp  <rupp@gnat.com>
9153
9154	* hwint.h (HAVE___INT64): Fix typo (was HAVE__INT64).
9155
91562002-11-20  DJ Delorie  <dj@redhat.com>
9157
9158	* config/stormy16/stormy16.c (s16builtins,
9159	xstormy16_init_builtins, xstormy16_expand_builtin): New.
9160	* config/stormy16/stormy16.md (divmodhi4, sdivlh, udivlh): New.
9161
91622002-11-20  Hans-Peter Nilsson  <hp@bitrange.com>
9163
9164	* Makefile.in (RUN_GEN, VALGRIND_DRIVER_DEFINES): New variables.
9165	(DRIVER_DEFINES): Add $(VALGRIND_DRIVER_DEFINES).
9166	(executing gencheck, genconfigs, genconditions, genflags,
9167	gencodes, genconstants, genemit, genrecog, genopinit, genextract,
9168	genpeep, genattr, genattrtab, genoutput, gengenrtl, genpreds,
9169	gengtype, genprotos): Prepend $(RUN_GEN).
9170	* configure.in: Move host compiler tests before --enable-checking
9171	tests.
9172	(--enable-checking=valgrind): New.
9173	* config.in, configure: Regenerate.
9174	* cppfiles.c [!ENABLE_VALGRIND_CHECKING] (VALGRIND_DISCARD):
9175	Define as empty.
9176	(read_include_file): When doing the mmap+1 trick,
9177	valgrind-annotate the byte after the mmap:ed area as readable.
9178	(purge_cache): Remove above annotation.
9179	* gcc.c (execute) [ENABLE_VALGRIND_CHECKING]: Arrange to prepend
9180	VALGRIND_PATH -q to each command.
9181
9182	* ggc-common.c [!ENABLE_VALGRIND_CHECKING] (VALGRIND_DISCARD):
9183	Define as empty.
9184	(ggc_realloc): Update valgrind annotations.
9185	* ggc-page.c [!ENABLE_VALGRIND_CHECKING] (VALGRIND_DISCARD):
9186	Define as empty.
9187	(alloc_anon, free_page, ggc_alloc, poison_pages): Add machinery to
9188	valgrind-annotate memory.
9189
91902002-11-20  Ulrich Weigand  <uweigand@de.ibm.com>
9191
9192	* recog.c (constrain_operands): Prefer exact match over reloadable
9193	EXTRA_MEMORY_CONSTRAINT or EXTRA_ADDRESS_CONSTRAINT.
9194
9195	* reload.c (find_reloads): Always reload EXTRA_ADDRESS_CONSTRAINT
9196	operands in Pmode.
9197
91982002-11-20  Eric Botcazou  <ebotcazou@libertysurf.fr>
9199
9200	PR c/8518
9201	* c-decl.c (duplicate_decls): Outline the second definition
9202	of an extern inline function in all cases.
9203
92042002-11-20  Richard Sandiford  <rsandifo@redhat.com>
9205
9206	* stor-layout.c (place_field): Update rli->offset as well as
9207	rli->bitpos.
9208
92092002-11-20  Richard Sandiford  <rsandifo@redhat.com>
9210
9211	* sched-deps.c (sched_analyze): Check HARD_REGNO_CALL_PART_CLOBBERED.
9212
92132002-11-20  Richard Sandiford  <rsandifo@redhat.com>
9214
9215	* config/sh/sh.md (udivsi3): Don't put udivsi3_i4_media instructions
9216	into a libcall block.
9217	(divsi3): Likewise divsi3_i4_media.
9218
92192002-11-20  Richard Sandiford  <rsandifo@redhat.com>
9220
9221	* global.c (find_reg): Check HARD_REGNO_NREGS before kicking
9222	out another register.
9223
92242002-11-20  Jakub Jelinek  <jakub@redhat.com>
9225
9226	* combine.c (force_to_mode): Only replace with (not Y) if all bits in fuller_mask
9227	(not just mask) are set in C.
9228
92292002-11-19  Andreas Jaeger  <aj@suse.de>
9230
9231	* loop.c (record_giv): Initialize not_replaceable.
9232	(check_final_value): Likewise.
9233
92342002-11-19  Kazu Hirata  <kazu@cs.umass.edu>
9235
9236	* config/h8300/h8300.c (h8300_init_once): Replace 1 with
9237	MASK_H8300S.
9238
92392002-11-19  Vijay L. Khuspe  <vijayk1@kpit.com>
9240
9241	* config/h8300/h8300.c (h8300_init_once): Allow -mn switch
9242	only if -mh or -ms present.
9243	(h8300_eightbit_constant_address_p): Support the normal mode.
9244	(h8300_tiny_constant_address_p): Likewise.
9245	* config/h8300/h8300.h (TARGET_NORMAL_MODE): New.
9246	(POINTER_SIZE): Add 16 bit pointer for the normal mode.
9247	(Pmode): Evaluate to HImode for the normal mode.
9248	(SIZE_TYPE): Evaluate to unsigned int for normal mode.
9249	(PTRDIFF_TYPE): Evaluate to int for the normal mode.
9250	(ASM_WORD_OP): Evaluate to word for the normal mode.
9251	* config/h8300/h8300.md (tablejump_normal_mode): New.
9252	(indirect_jump_normal_mode): New.
9253	* config/h8300/t-h8300 (MULTILIB_OPTIONS): Pass -mn option to
9254	directory.
9255	(MULTILIB_DIRNAMES): Create target dependent directory
9256	'normal'.
9257	(MULTILIB_EXCEPTIONS): Don't turn on -mn on H8/300.
9258	* doc/invoke.texi (gccoptlist): Describe the new switch -mn.
9259
92602002-11-19  Jan Hubicka  <jh@suse.cz>
9261
9262	* i386.md (length_immediate): Do not refer to insn address.
9263	(jcc*, jmp patterns):  Compute length explicitly.
9264
92652002-11-19 Eric Botcazou <ebotcazou@libertysurf.fr>
9266
9267	PR c/8588
9268	* optabs.c (expand_binop): Convert CONST_INTs in shift
9269	operations too.
9270
92712002-11-19  Roger Sayle  <roger@eyesopen.com>
9272
9273	* gcse.c (gcse_emit_move_after): Correct typo in REG_EQUAL note.
9274
92752002-11-19  Kazu Hirata  <kazu@cs.umass.edu>
9276
9277	* config/h8300/h8300.md (an anonymous pattern): Relax the
9278	condition to accept the same operands and/or subregs.
9279
92802002-11-19  Daniel Jacobowitz  <drow@mvista.com>
9281
9282	* config/sh/sh.c (gen_shl_and): Revert previous patch.
9283	* config/sh/sh.md (ashrdi3+1, ashrdi3+2): Predicate on
9284	reload_completed.
9285
92862002-11-19  Kazu Hirata  <kazu@cs.umass.edu>
9287
9288	* config/h8300/h8300.c (print_operand): Update the use of
9289	EIGHTBIT_CONSTANT_ADDRESS_P.
9290	(h8300_adjust_insn_length): Likewise.
9291	(h8300_eightbit_constant_address_p): Check if the given rtx is
9292	a variable with __attribute__((eightbit_data)).
9293	* config/h8300/h8300.h (OK_FOR_U): Update the use of
9294	EIGHTBIT_CONSTANT_ADDRESS_P.
9295
92962002-11-19  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
9297
9298	* doc/contrib.texi (Contributors): Add self as second contact in
9299	addition to Jeff Law.
9300
93012002-11-19  Andreas Jaeger  <aj@suse.de>
9302
9303	* tree-inline.c: Move prototpyes of find_alloca_call_1 and
9304	find_alloca_call to right place.
9305
93062002-11-19  Kazu Hirata  <kazu@cs.umass.edu>
9307
9308	* cppfiles.c: Fix formatting.
9309
93102002-11-19  Jason Thorpe  <thorpej@wasabisystems.com>
9311
9312	* gcc.c (The Specs Language): Document spec functions.
9313	(static_spec_functions, lookup_spec_function)
9314	(eval_spec_function, handle_spec_function)
9315	(if_exists_spec_function, alloc_args): New.
9316	(execute): Abort if processing_spec_function is true.
9317	(do_spec_1): Hand off spec to handle_spec_function if %:
9318	is encountered.  If processing_spec_function is true,
9319	end any pending argument when the end of the string is reached.
9320	(main): Use alloc_args to allocate the initial argument vector.
9321	* gcc.h (struct spec_function): New.
9322	(lang_specific_spec_functions): New extern.
9323
9324	* config/netbsd-elf.h (STARTFILE_SPEC): Add if-exists(crti%O%s).
9325	(ENDFILE_SPEC): Add if-exists(crtn%O%s).
9326	* config/alpha/netbsd.h (ENDFILE_SPEC): Likewise.
9327
9328	* doc/invoke.texi: Document spec functions.
9329
9330	* cppspec.c (lang_specific_spec_functions): New.
9331	* gccspec.c: Likewise.
9332
93332002-11-18  Steve Ellcey  <sje@cup.hp.com>
9334
9335	* config/ia64/hpux_longdouble.h (FIXUNS_TRUNCTFSI2_LIBCALL): New.
9336	(FIXUNS_TRUNCTFDI2_LIBCALL): New.
9337	(fixunstfsi_libfunc): Change.
9338	(fixunstfdi_libfunc): Change.
9339	(sdiv_optab): Don't zero out SImode handler.
9340	(udiv_optab): Don't zero out SImode handler.
9341	(smod_optab): Don't zero out SImode handler.
9342	(umod_optab): Don't zero out SImode handler.
9343
93442002-11-18  Neil Booth  <neil@daikokuya.co.uk>
9345
9346	PR preprocessor/8524
9347	* cpplib.c (run_directive): Remove previous kludge to _Pragma.
9348	Add a new one in its place, which hopefully works.
9349	(skip_rest_of_line): Change test for bottom-of-context-stack.
9350
93512002-11-18  Jan Hubicka  <jh@suse.cz>
9352
9353	* i386.md (addqi_1_slp): Fix output template.
9354	(subqi_1_slp): Fix type.
9355
93562002-11-17  Jan Hubicka  <jh@suse.cz>
9357
9358	* calls.c (alloca_call_p): New global function.
9359	* tree.h (alloca_call_p): New.
9360	* tree-inline.c (inlinable_function_p):  Do not inline when
9361	function calls alloca.
9362	(find_alloca_call, find_alloca_call_1): New functions.
9363
93642002-11-18  Kazu Hirata  <kazu@cs.umass.edu>
9365
9366	* config/h8300/h8300.md (*andorqi3): Use bor between bld and
9367	bst.  Update the insn length.
9368	(*andorhi3): Likewise.
9369	(*andorsi3): Likewise.
9370
93712002-11-18  Richard Sandiford  <rsandifo@redhat.com>
9372
9373	* config/sh/sh-protos.h (sh_mark_label): Declare.
9374	* config/sh/sh.c (sh_mark_label): New function, taken from
9375	movdi_const, but fixing the case when the address has an addend.
9376	* config/sh/sh.md (movdi_const, movdi_const_32bit): Use it.
9377
93782002-11-18  Richard Sandiford  <rsandifo@redhat.com>
9379
9380	* config/sh/sh.c (pool_node): New field: part_of_sequence_p.
9381	(add_constant): Set it.
9382	(dump_table): Don't reorder a constant if part_of_sequence_p.
9383	(machine_dependent_reorg): Assume that float constants will
9384	stay in their original order if used as a sequence.
9385
93862002-11-18  Richard Sandiford  <rsandifo@redhat.com>
9387
9388	* config/sh/sh.c (calc_live_regs): Update check for PIC liveness
9389	in compact code.
9390
93912002-11-18  Richard Sandiford  <rsandifo@redhat.com>
9392
9393	* config/sh/sh.md (initialize_trampoline): Do not force the
9394	trampoline address into R0_REGS here.
9395
93962002-11-17  Kazu Hirata  <kazu@cs.umass.edu>
9397
9398	* df.c: Fix formatting.
9399
94002002-11-17  Kazu Hirata  <kazu@cs.umass.edu>
9401
9402	* config/h8300/h8300.md (two anonymous patterns): Fix insn
9403	lengths.
9404
94052002-11-17  Daniel Jacobowitz  <drow@mvista.com>
9406
9407	* sh.c (gen_shl_and): Don't create a zero_extend if the operand
9408	is not an arith_reg_operand.
9409
94102002-11-17  Graham Stott  <graham.stott@btinternet.com>
9411
9412	* real.c (real_to_decimal): Fix buffer overrun when buffer size
9413	is smaller than representation.
9414
94152002-11-17  Kazu Hirata  <kazu@cs.umass.edu>
9416
9417	* builtins.c: Fix formatting.
9418
94192002-11-16  Kazu Hirata  <kazu@cs.umass.edu>
9420
9421	* config/h8300/h8300.md (two anonymous patterns): Fix typos.
9422
94232002-11-16  Kazu Hirata  <kazu@cs.umass.edu>
9424
9425	* config/h8300/h8300.md: Fix formatting.
9426
94272002-11-16  Kazu Hirata  <kazu@cs.umass.edu>
9428
9429	* config/h8300/h8300.md: Replace spaces with tabs.
9430	* config/h8300/t-h8300: Remove a trailing empty line.
9431
94322002-11-16  Kazu Hirata  <kazu@cs.umass.edu>
9433
9434	* tlink.c: Fix formatting.
9435
94362002-11-16  David Edelsohn  <edelsohn@gnu.org>
9437
9438	PR 8362
9439	* config/rs6000/rs6000.c (rs6000_outout_load_multiple): New function.
9440	* config/rs6000/rs6000.md (movti_string): Remove output modifier
9441	when scratch register never needed.
9442	(ldmsi[3-8]): New patterns.
9443
94442002-11-16  Kazu Hirata  <kazu@cs.umass.edu>
9445
9446	* hard-reg-set.h: Follow spelling conventions.
9447	* real.c: Likewise.
9448	* target.h: Likewise.
9449
94502002-11-16  Jakub Jelinek  <jakub@redhat.com>
9451
9452	* config/i386/x86-64.h (MCOUNT_NAME): Change into string literal.
9453
94542002-11-16  Kazu Hirata  <kazu@cs.umass.edu>
9455
9456	* optabs.c: Fix formatting.
9457
94582002-11-16  Jan Hubicka  <jh@suse.cz>
9459
9460	* athlon.md, k6.md, pentium.md, ppro.md: Handle shift1, rotate1
9461	* i386.md (attribute type): Add type shift1 and rotate1.
9462	(*_slp): Rewrite to have just two operands to avoid reload problems.
9463
94642002-11-15  Kazu Hirata  <kazu@cs.umass.edu>
9465
9466	* config/h8300/h8300.md (4 anonymous patterns): New.
9467
94682002-11-15  Geoffrey Keating  <geoffk@apple.com>
9469
9470	* params.def (GGC_MIN_HEAPSIZE): Fix GGC_ALWAYS_COLLECT problem.
9471	* doc/invoke.texi: Correct description of what needs to be done to
9472	force collection at every ggc_collect call.
9473
94742002-11-15  Ulrich Weigand  <uweigand@de.ibm.com>
9475
9476	* config/s390/s390.c (optimization_options): Set
9477	flag_asynchronous_unwind_tables to 1 by default.
9478
94792002-11-15  Ulrich Weigand  <uweigand@de.ibm.com>
9480
9481	* config/s390/s390.h (ASM_PREFERRED_EH_DATA_FORMAT): Define.
9482
94832002-11-15  Jan Hubicka  <jh@suse.cz>
9484
9485	* i386-protos.h (x86_function_profiler): New function
9486	* i386.h (MCOUNT_NAME): New.
9487	(PROFILE_COUNT_REGISTER): New.
9488	(FUNCTION_PROFILER): Move offline to ...
9489	* i386.c (x86_function_profiler) ... here; fix 64bit support
9490	* beos-elf.h (FUNCTION_PROFILER): Kill.
9491	(MCOUNT_NAME): New.
9492	* freebsd-aout.h (FUNCTION_PROFILER): Kill.
9493	(MCOUNT_NAME): New.
9494	(PROFILE_COUNT_REGISTER): New.
9495	* linux.h (FUNCTION_PROFILER): Kill.
9496	(MCOUNT_NAME): New.
9497	* x86-64.h (FUNCTION_PROFILER): Kill.
9498	(MCOUNT_NAME): New.
9499	* freebsd.h (FUNCTION_PROFILER): Kill.
9500	(MCOUNT_NAME): New.
9501
95022002-11-14  Jeroen Dobbelaere  <jeroen.dobbelaere@acunia.com>
9503
9504	* config/arm/arm.h (EXPAND_BUILTIN_VA_ARG,
9505	FUNCTION_ARG_PASS_BY_REFERENCE): Define.
9506	* config/arm/arm.c (arm_va_arg,
9507	arm_function_arg_pass_by_reference): New.
9508	* config/arm/arm-protos.h: Add prototypes.
9509
95102002-11-14  Kazu Hirata  <kazu@cs.umass.edu>
9511
9512	* gthr-single.h: Fix formatting.
9513
95142002-11-14  Zack Weinberg  <zack@codesourcery.com>
9515
9516	* tree.c (tree_vec_elt_check_failed): New function.
9517	* tree.h (TREE_VEC_ELT_CHECK): New checking macro.
9518	(TREE_VEC_ELT): Use it.
9519
9520	* tree-inline.c (optimize_inline_calls): Don't copy a
9521	zero-length vector.
9522
95232002-11-14  Gabriel Dos Reis  <gdr@integrable-solutions.net>
9524
9525	* diagnostic.c (sorry): Don't repeat "sorry, unimplemented" text.
9526
95272002-11-14  Jakub Jelinek  <jakub@redhat.com>
9528
9529	* varasm.c (output_addressed_constants) [MINUS_EXPR]: Clear reloc if
9530	both operands contain local relocations.
9531	(categorize_decl_for_section): Don't use mergeable sections if
9532	initializer has any relocations.
9533
95342002-11-14  Kazu Hirata  <kazu@cs.umass.edu>
9535
9536	* gthr-vxworks.h: Fix formatting.
9537
95382002-11-13  Janis Johnson  <janis187@us.ibm.com>
9539
9540	* doc/install.texi (Testing): Document extra Java testing.
9541	* doc/sourcebuild.texi (Test Suites): Document libgcj testing.
9542
95432002-11-13  John David Anglin  <dave@hiauly1.hia.nrc.ca>
9544
9545	* pa64-hpux.h (LINK_SPEC): Move "+Accept TypeMismatch" switch to the
9546	beginning of the spec.
9547	(LDD_SUFFIX, PARSE_LDD_OUTPUT): Delete.
9548	(LD_INIT_SWITCH, LD_FINI_SWITCH): Define but don't enable.  Add comment
9549	regarding problems with global constructors when using GNU ld.
9550
95512002-11-13  Kazu Hirata  <kazu@cs.umass.edu>
9552
9553	* gthr-solaris.h: Fix formatting.
9554
95552002-11-13  Kazu Hirata  <kazu@cs.umass.edu>
9556
9557	* gthr-posix.h: Fix formatting.
9558
95592002-11-12  Kazu Hirata  <kazu@cs.umass.edu>
9560
9561	* config/h8300/h8300.md (*andorsi3): New.
9562
95632002-11-12  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
9564
9565	* doc/install.texi (powerpc-*-linux-gnu*): Update binutils requirement.
9566
95672002-11-12  Kazu Hirata  <kazu@cs.umass.edu>
9568
9569	* config/h8300/h8300.c (tiny_constant_address_p): Parenthesize
9570	expressions appropriately.
9571
95722002-11-12  Kazu Hirata  <kazu@cs.umass.edu>
9573
9574	* gthr-win32.h: Fix formatting.
9575
95762002-11-12  Kazu Hirata  <kazu@cs.umass.edu>
9577
9578	* config/h8300/h8300.c (single_one_operand): Correctly compute
9579	mask when mode is SImode.
9580	(single_zero_operand): Likewise.
9581	* config/h8300/h8300.md (two new anonymous insns): New.
9582
95832002-11-12  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
9584
9585	* doc/contrib.texi (Contributors): Use GCJ instead of gcj to refer
9586	to that entire project.
9587
95882002-11-12  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
9589
9590	* config/mips/t-iris6 (MULTILIB_OSDIRNAMES): Restore old
9591	directories.
9592
95932002-11-11  Zack Weinberg  <zack@codesourcery.com>
9594
9595	* params.def (ggc-min-expand, ggc-min-heapsize): New parameters.
9596	* doc/invoke.texi: Document them.
9597
9598	* ggc-page.c: Include params.h.  Remove definitions of
9599	GGC_MIN_EXPAND_FOR_GC, GGC_MIN_LAST_ALLOCATED.  Replace
9600	GGC_POISON with ENABLE_GC_CHECKING in ifdefs, delete #define.
9601	(init_gcc): Don't set G.allocated_last_gc here.
9602	(ggc_collect): Use PARAM_VALUE (GGC_MIN_HEAPSIZE) and
9603	PARAM_VALUE (GGC_MIN_EXPAND) to decide whether or not to
9604	perform collection.
9605	* ggc-simple.c: Similarly.
9606	* Makefile.in (ggc-common.o, ggc-simple.o): Add $(PARAMS_H) to
9607	dependencies.
9608
96092002-11-11  Kazu Hirata  <kazu@cs.umass.edu>
9610
9611	* gthr-dce.h: Fix formatting.
9612
96132002-11-11  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
9614
9615	PR c/8467
9616	* stmt.c (tail_recursion_args): Handle DECL_MODE differing from the
9617	mode of DECL_RTL case.
9618
96192002-11-11  Janis Johnson  <janis187@us.ibm.com>
9620
9621	* doc/contrib.texi: Merge in the list from the libstdc++ web pages.
9622
96232002-11-11  Jan Hubicka  <jh@suse.cz>
9624
9625	* i386.c (construct_container): Fix handling of SSE_CLASS.
9626
96272002-11-10  Joel Sherrill <joel@gcc.gnu.org>
9628
9629	* config/m68k/t-crtstuff (crti.o): Use this...
9630	($(T)crti.o): ... instead.
9631	(crtn.o): Use this...
9632	($(T)crtn.o): ... instead.
9633
96342002-11-10  Eric Botcazou  <ebotcazou@libertysurf.fr>
9635
9636	PR c/8439
9637	* recog.c (validate_replace_rtx_1) [PLUS]: Simplify only
9638	if there is something new to be simplified.
9639
96402002-11-10  H.J. Lu <hjl@gnu.org>
9641
9642	* calls.c (PUSH_ARGS_REVERSED): Define only if not defined.
9643	* expr.c (PUSH_ARGS_REVERSED): Likewise.
9644
9645	* config/i386/i386.h (PUSH_ARGS_REVERSED): Set to 1.
9646
96472002-11-10  Zack Weinberg  <zack@codesourcery.com>
9648
9649	* config/rs6000/sysv4.h: Define NO_IMPLICIT_EXTERN_C here...
9650	* config/rs6000/linux.h, config/rs6000/linux64.h,
9651	config/rs6000/windiss.h: ... not here.
9652
96532002-11-10  Jason Thorpe  <thorpej@wasabisystems.com>
9654
9655	* config/mips/netbsd.h (TARGET_OS_CPP_BUILTINS): Define
9656	__ABICALLS__ if TARGET_ABICALLS.
9657
96582002-11-10  Jan Hubicka  <jh@suse.cz>
9659
9660	* i386.h (MIN_UNITS_PER_WORD): Define to 8 for x86-64 libgcc.
9661
96622002-11-10  Joseph S. Myers  <jsm@polyomino.org.uk>
9663
9664	* c-decl.c (grokdeclarator): Make error for duplicate type
9665	qualifiers into a pedwarn, disabled for C99.
9666
96672002-11-10  Hans-Peter Nilsson  <hp@bitrange.com>
9668
9669	* config/mmix/mmix.h (FUNCTION_ARG_CALLEE_COPIES): Define the same
9670	as FUNCTION_ARG_PASS_BY_REFERENCE.
9671
96722002-11-09  John David Anglin  <dave@hiauly1.hia.nrc.ca>
9673
9674	* pa.h (STARTING_FRAME_OFFSET): Change offset for TARGET_64BIT to 16.
9675
9676	* config.gcc (hppa*64*-*-linux*): Shorten lines in tm_file define.
9677	(hppa*64*-*-hpux11*): Likewise.  Use elfos.h with gas.
9678	* pa.c (output_millicode_call): Use symbol difference rather than
9679	$PIC_pcrel$0 when using HP assembler.
9680	* pa64-hpux.h (TARGET_GAS): Define to 1 or 0 depending on whether or
9681	not elfos.h (i.e., gas) is being used.
9682	(ASM_FILE_START, STRING_ASM_OP, TEXT_SECTION_ASM_OP,
9683	DATA_SECTION_ASM_OP, BSS_SECTION_ASM_OP, ASM_OUTPUT_ALIGNED_COMMON,
9684	ASM_OUTPUT_ALIGNED_LOCAL, GLOBAL_ASM_OP, ASM_DECLARE_FUNCTION_NAME,
9685	ASM_OUTPUT_EXTERNAL, ASM_OUTPUT_EXTERNAL_LIBCALL,
9686	ASM_OUTPUT_INTERNAL_LABEL, ASM_GENERATE_INTERNAL_LABEL): Define when
9687	using elfos.h.
9688	(TARGET_ASM_GLOBALIZE_LABEL): Undefine when using elfos.h.
9689	(DWARF2_ASM_LINE_DEBUG_INFO): Delete.
9690	(ASM_FILE_START): Add standard .SPACE and .SUBSPA defines when not
9691	using elfos.h.
9692	(TEXT_SECTION_ASM_OP, READONLY_DATA_SECTION_ASM_OP, DATA_SECTION_ASM_OP,
9693	BSS_SECTION_ASM_OP): New HP style defines when not using elfos.h.
9694	(TARGET_ASM_NAMED_SECTION, MAKE_DECL_ONE_ONLY, ASM_WEAKEN_LABEL):
9695	Don't define when not using elfos.h.
9696	(ASM_DECLARE_RESULT): Don't define.
9697	* doc/install.texi (hppa*-hp-hpux*): Remove statement that HP assembler
9698	doesn't work on hppa64-hp-hpux11.
9699	(hppa*-hp-hpux11): Update.
9700
97012002-11-09  Jason Thorpe  <thorpej@wasabisystems.com>
9702
9703	* config/mips/netbsd.h (SUBTARGET_ASM_SPEC): Don't pass -KPIC
9704	to the assembler if -mno-abicalls was specified.
9705
97062002-11-09  John David Anglin  <dave@hiauly1.hia.nrc.ca>
9707
9708	* pa-linux.h (PREFERRED_DEBUGGING_TYPE, DWARF2_ASM_LINE_DEBUG_INFO,
9709	ASM_OUTPUT_DEF): Delete.
9710
97112002-11-09  Neil Booth  <neil@daikokuya.co.uk>
9712
9713	* c-opts.c (COMMAND_LINE_OPTIONS): Fix -Wimplicit.
9714
97152002-11-08  Dale Johannesen  <dalej@apple.com>
9716
9717	* dbxout.c (dbxout_type):  Fix stabs info for vector types.
9718
97192002-11-08  Neil Booth  <neil@daikokuya.co.uk>
9720
9721	PR preprocessor/8497
9722	PR preprocessor/8501
9723	* cpptrad.c (scan_out_logical_line): A '#' from a macro doesn't
9724	start a directive.  In assembler, #NUM is not a line directive.
9725
97262002-11-08  Neil Booth  <neil@daikokuya.co.uk>
9727
9728	* cppmain.c (cpp_preprocess_file): Loop to pop any -included
9729	buffers.
9730
97312002-11-08  Kazu Hirata  <kazu@cs.umass.edu>
9732
9733	* config/h8300/h8300.md (two anonymous test insns): New.
9734
97352002-11-08  Jan Hubicka  <jh@suse.cz>
9736
9737	* jump.c (mark_jump_label): Handle subregs of label_refs.
9738
97392002-11-07  David Mosberger  <davidm@hpl.hp.com>
9740
9741	* config/ia64/crtend.asm: Include "auto-host.h".
9742	[HAVE_INITFINI_ARRAY]: Invoke __do_global_ctors_aux via .init_array.
9743	* config/ia64/crtbegin.asm: Similarly.
9744	* config/ia64/t-ia64 (crtbegin.o): Include from current directory.
9745	(crtend.o, crtbeginS.o, crtendS.o): Likewise.
9746
9747	* aclocal.m4 (gcc_AC_INITFINI_ARRAY): New.
9748	* configure.in: Use it if --enable-initfini-array not specified.
9749	* doc/install.texi (Configuration): Document --enable-initfini-array.
9750	* configure, config.in: Rebuild.
9751
97522002-11-07  Jason Thorpe  <thorpej@wasabisystems.com>
9753
9754	* config/arm/arm-protos.h (arm_get_frame_size)
9755	(thumb_get_frame_size): New prototypes.
9756	* config/arm/arm.c (arm_get_frame_size)
9757	(thumb_get_frame_size): New functions.
9758	(use_return_insn, arm_output_epilogue, arm_output_function_epilogue)
9759	(arm_compute_initial_elimination_offset, arm_expand_prologue): Use
9760	arm_get_frame_size.
9761	(thumb_expand_prologue, thumb_expand_epilogue): Use
9762	thumb_get_frame_size.
9763	* config/arm/arm.h (PREFERRED_STACK_BOUNDARY): Define.
9764	(machine_function): Add frame_size member.
9765	(THUMB_INITIAL_ELIMINATION_OFFSET): Use thumb_get_frame_size.
9766
97672002-11-07  Richard Earnshaw  <rearnsha@arm.com>
9768
9769	* arm.c (bit_count): Make argument unsigned long.  Return unsigned.
9770	Adjust code to use portable unsigned bit manipulation.
9771	(insn_flags, tune_flags): Change type to unsigned.
9772	(struct processors): Make flags unsigned long.
9773	(arm_override_options): Change type of count and current_bit_count
9774	to unsigned.
9775
97762002-11-07  Richard Earnshaw  <rearnsha@arm.com>
9777
9778	* arm/elf.h (TYPE_OPERAND_FMT): Prefix type with %.
9779
97802002-11-07  J"orn Rennecke <joern.rennecke@superh.com>
9781
9782	* sh.h (DWARF_FRAME_RETURN_COLUMN): Use DWARF_FRAME_REGNUM.
9783
97842002-11-07  Jan Hubicka  <jh@suse.cz>
9785
9786	* reg-stack.c (compensate_edge): Fix sanity check.
9787
97882002-11-05  Geoffrey Keating  <geoffk@apple.com>
9789
9790	* config.gcc: Don't create crtbegin, crtend on Darwin; do create
9791	crt2.o.  Rearrange t-darwin makefiles.
9792	* crtstuff.c [OBJECT_FORMAT_MACHO]: Delete.
9793	* unwind-dw2-fde-darwin.c: New.
9794	* unwind-dw2-fde-glibc.c: Correct comment.
9795	* unwind-dw2-fde.c (__register_frame_info_bases)
9796	[DWARF2_OBJECT_END_PTR_EXTENSION]: Clear fde_end.
9797	(classify_object_over_fdes): Use last_fde.
9798	(add_fdes): Likewise.
9799	(linear_search_fdes): Likewise.
9800	* unwind-dw2-fde.h (struct object)
9801	[DWARF2_OBJECT_END_PTR_EXTENSION]: Add fde_end field.
9802	(last_fde): New.
9803	* config/darwin.h (STARTFILE_SPEC): Include crt2.o not crtbegin.o.
9804	(ENDFILE_SPEC): No crtend.o.
9805	* config/t-darwin: New.
9806	* config/i386/t-darwin: Delete.
9807	* config/darwin-crt2.c: New.
9808	* config/rs6000/t-darwin: Delete contents duplicated in t-rs6000
9809	or config/t-darwin.
9810
98112002-11-06  David Edelsohn  <edelsohn@gnu.org>
9812
9813	PR target/8480
9814	* config/rs6000/rs6000.md (movdi_internal64): Discourage
9815	FPR to FPR moves.
9816
98172002-11-06  Janis Johnson  <janis187@us.ibm.com>
9818
9819	* doc/contrib.texi: Merge in the list from the Java web pages.
9820
98212002-11-06  David O'Brien  <obrien@FreeBSD.org>
9822
9823	* config/sparc/freebsd: Fix typo.
9824
98252002-11-06  John David Anglin  <dave@hiauly1.hia.nrc.ca>
9826
9827	* pa64-hpux.h (LDD_SUFFIX, PARSE_LDD_OUTPUT): Define.
9828
98292002-11-06  Alexandre Oliva  <aoliva@redhat.com>
9830
9831	* config/mips/mips.md (call_value_multiple_internal2): Use dla for
9832	non-SImode addresses.
9833
98342002-11-05  Bob Wilson  <bob.wilson@acm.org>
9835
9836	* config/xtensa/elf.h (LIB_SPEC): Add "-lhal".
9837
98382002-11-05  John David Anglin  <dave2hiauly1.hia.nrc.ca>
9839
9840	* pa64-hpux.h (LIB_SPEC): Fix p and pg options.
9841	(STARTFILE_SPEC): Remove p and pg options.
9842
98432002-11-05  Andrew Haley  <aph@redhat.com>
9844
9845	* fold-const.c (fold): Don't transform (a0 op compound(a1,a2))
9846	to (compound(a1,a0 op a2)) if a0 or a1 have side effects.
9847
98482002-11-05  Richard Sandiford  <rsandifo@redhat.com>
9849
9850	* config/mips/mips.h (CANNOT_CHANGE_MODE_CLASS): Move comment to...
9851	* config/mips/mips.c (mips_cannot_change_mode_class): ...here.
9852
98532002-11-04  Dale Johannesen  <dalej@apple.com>
9854
9855	* doloop.c (doloop_modify_runtime):  Fix loop count computation
9856	for unrolled loops.
9857	* loop.c (loop_invariant_p):  Support calling from unroller.
9858
98592002-11-04  Ulrich Weigand  <uweigand@de.ibm.com>
9860
9861	* config/s390/s390.c (s390_decompose_address): Use arg_pointer_rtx
9862	for comparison.
9863
98642002-11-04  Aldy Hernandez  <aldyh@redhat.com>
9865
9866	* hard-reg-set.h (REG_CANNOT_CHANGE_MODE_P): New.
9867
9868	* config/rs6000/rs6000.h (CLASS_CANNOT_CHANGE_MODE_P): Remove.
9869	(CLASS_CANNOT_CHANGE_MODE): Remove.
9870	(CANNOT_CHANGE_MODE_CLASS): New.
9871
9872	* config/alpha/alpha.h: Same.
9873
9874	* config/ia64/ia64.h: Same.
9875
9876	* config/mips/mips.h: Same.
9877
9878	* config/s390/s390.h: Same.
9879
9880	* config/sh/sh.h: Same.
9881
9882	* config/pa/pa64-regs.h: Same.
9883
9884	* config/sh/sh-protos.h (sh_cannot_change_mode_class): Add prototype.
9885
9886	* config/sh/sh.c (sh_cannot_change_mode_class): New.
9887
9888	* config/mips/mips-protos.h (mips_cannot_change_mode_class): Add
9889	prototype.
9890
9891	* config/mips/mips.c (mips_cannot_change_mode_class): New.
9892
9893	* doc/tm.texi (Register Classes): Remove
9894	CLASS_CANNOT_CHANGE_MODE and CLASS_CANNOT_CHANGE_MODE_P.
9895	Document CANNOT_CHANGE_MODE_CLASS.
9896
9897	* reload.c (push_reload): Use CANNOT_CHANGE_MODE_CLASS.
9898	(push_reload): Same.
9899
9900	* simplify-rtx.c (simplify_subreg): Same.
9901
9902	* reload1.c (choose_reload_regs): Same.
9903
9904	* recog.c (register_operand): Same.
9905
9906	* regrename.c (mode_change_ok): Change to use new
9907	CANNOT_CHANGE_MODE_CLASS infrastructure.
9908
9909	* regclass.c (cannot_change_mode_set_regs): New.
9910	Declare subregs_of_mode.
9911	(regclass): Use subregs_of_mode.
9912	Remove references to reg_changes_mode.
9913	(init_reg_sets_1): Remove class_can_change_mode and
9914	reg_changes_mode code.
9915	(invalid_mode_change_p): New.
9916	(dump_regclass): Use invalid_mode_change_p instead of
9917	class_can_change_mode.
9918	(regclass): Same.
9919	(record_operand_costs): Do not set reg_changes_mode.
9920
9921	* local-alloc.c (struct qty): Remove changes_mode field.
9922	(alloc_qty): Remove changes_mode initialization.
9923	(update_qty_class): Remove set of changes_mode.
9924	(find_free_reg): Use subregs_of_mode.
9925
9926	* global.c (find_reg): Use subregs_of_mode info.
9927
9928	* rtl.h (cannot_change_mode_set_regs): New prototype.
9929	(invalid_mode_change_p): Same.
9930	(REG_CANNOT_CHANGE_MODE_P): New macro.
9931
9932	* flow.c (mark_used_regs): Calculate subregs_of_mode.  Remove
9933	REG_CHANGES_MODE.
9934	(life_analysis): Clear subregs_of_mode.
9935
9936	* combine.c (subst): Pass class to CLASS_CANNOT_CHANGE_MODE_P.
9937	Remove use of CLASS_CANNOT_CHANGE_MODE.
9938	(simplify_set): Same.
9939	(gen_lowpart_for_combine): Calculate subregs_of_mode.  Remove
9940	REG_CHANGES_MODE.
9941
9942	* regs.h: Add extern for subregs_of_mode;
9943	Include hard-reg-set and basic-block.
9944	(REG_CHANGES_MODE): Delete.
9945
99462002-11-03  John David Anglin  <dave@hiauly1.hia.nrc.ca>
9947
9948	* jump.c (never_reached_warning): Don't set contains_insn until the
9949	first line note is seen.
9950
99512002-11-03  David Edelsohn  <edelsohn@gnu.org>
9952
9953	* config/rs6000/rs6000.md (movti_string): Use string instructions.
9954
99552002-11-03  Roger Sayle  <roger@eyesopen.com>
9956
9957	PR c/7128
9958	* c-typeck.c (c_expand_asm_operands): Defend against
9959	error_mark_nodes in the output argument to avoid ICE.
9960
99612002-11-03  Eric Botcazou  <ebotcazou@libertysurf.fr>
9962
9963	PR middle-end/8408
9964	* genrecog.c (preds): Handle ADDRESSOF.
9965	(validate_pattern): Mark it as an lvalue.
9966
99672002-11-02  David Edelsohn  <edelsohn@gnu.org>
9968
9969	* config/rs6000/rs6000.c (rs6000_override_options): Use string
9970	instructions when optimizing for size.
9971
99722002-11-02  Kazu Hirata  <kazu@cs.umass.edu>
9973
9974	* config/h8300/h8300.h: Fix comment typos.
9975	* config/h8300/h8300.md: Likewise.
9976	* config/h8300/lib1funcs.asm: Likewise.
9977
99782002-11-02  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
9979
9980	Revert this change:
9981
9982	*doc/install.texi (Installing GCC: Configuration): Clarify
9983	the only supported ways to configure gcc.
9984
99852002-11-01  Kazu Hirata  <kazu@cs.umass.edu>
9986
9987	* config/h8300/h8300.md (anonymous and:QI pattern): Use 'n'
9988	instead of 'O' for the constraint for the second operand.
9989
99902002-11-01  Mark Mitchell  <mark@codesourcery.com>
9991
9992	PR c++/8391
9993	* toplev.c (rest_of_compilation): Do not refuse to output code for
9994	an inline function in a local class.
9995
99962002-11-01  David O'Brien  <obrien@FreeBSD.org>
9997
9998	* config/sparc/freebsd.h (CPP_CPU64_DEFAULT_SPEC): Define __arch64__.
9999	(TRANSFER_FROM_TRAMPOLINE): Reformat.
10000	Add comment.
10001
100022002-11-01  Kazu Hirata  <kazu@cs.umass.edu>
10003
10004	* config/h8300/h8300.h (CAN_ELIMINATE): Simplify.
10005
100062002-11-01  Toshiyasu Morita  <toshiyasu.morita@hsa.hitachi.com>
10007
10008	* config/h8300/h8300.h (OPTIMIZATION_OPTIONS): New.
10009
100102002-11-01  Steve Ellcey  <sje@cup.hp.com>
10011
10012	* config/ia64/ia64.h (MASK_INLINE_DIV_LAT): Remove.
10013	(MASK_INLINE_DIV_THR): Remove.
10014	(TARGET_INLINE_DIV_LAT): Remove.
10015	(TARGET_INLINE_DIV_THR): Remove.
10016	(TARGET_INLINE_DIV): Remove.
10017	(MASK_INLINE_FLOAT_DIV_LAT): New macro.
10018	(MASK_INLINE_FLOAT_DIV_THR): New macro.
10019	(MASK_INLINE_INT_DIV_LAT): New macro.
10020	(MASK_INLINE_INT_DIV_THR): New macro.
10021	(TARGET_INLINE_FLOAT_DIV_LAT): New macro.
10022	(TARGET_INLINE_FLOAT_DIV_THR): New macro.
10023	(TARGET_INLINE_INT_DIV_LAT): New macro.
10024	(TARGET_INLINE_INT_DIV_THR): New macro.
10025	(TARGET_INLINE_FLOAT_DIV): New macro.
10026	(TARGET_INLINE_INT_DIV): New macro.
10027	* config/ia64/ia64.md (divsi3): Change to use new macros.
10028	(modsi3): Ditto.
10029	(udivsi3): Ditto.
10030	(umodsi3): Ditto.
10031	(divsi3_internal): Ditto.
10032	(divdi3): Ditto.
10033	(moddi3): Ditto.
10034	(udivdi3): Ditto.
10035	(umoddi3): Ditto.
10036	(divdi3_internal_lat): Ditto.
10037	(divdi3_internal_thr): Ditto.
10038	(divsf3): Ditto.
10039	(divsf3_internal_lat): Ditto.
10040	(divsf3_internal_thr): Ditto.
10041	(divdf3): Ditto.
10042	(divdf3_internal_lat): Ditto.
10043	(divdf3_internal_thr): Ditto.
10044	(divtf3): Ditto.
10045	(divtf3_internal_lat): Ditto.
10046	(divtf3_internal_thr): Ditto.
10047	* config/ia64/ia64.c (ia64_override_options): Change
10048	to check new macros for conflicts in settings.
10049	* doc/invoke.texi (-minline-divide-min-latency): Remove.
10050	(-minline-divide-max-throughput): Remove.
10051	(-minline-float-divide-min-latency): New.
10052	(-minline-float-divide-max-throughput): New.
10053	(-minline-int-divide-min-latency): New.
10054	(-minline-int-divide-max-throughput): New.
10055
100562002-11-01  Richard Earnshaw  (rearnsha@arm.com)
10057
10058	PR target/7856
10059	* arm.c (use_return_insn): Don't use a return insn if there are
10060	saved integer regs, but LR is not one of them.
10061
100622002-11-01  Jan Hubicka  <jh@suse.cz>
10063
10064	* expr.c (emit_move_insn):  Use SCALAR_FLOAT_MODE_P
10065	* machmode.h (SCALAR_FLOAT_MODE_P): New macro.
10066
100672002-10-31  Nathanael Nerode  <neroden@gcc.gnu.org>
10068
10069	PR optimization/6162
10070	* doc/md.texi: Document restriction on commutative operand
10071	specification.
10072
100732002-10-31  Eric Christopher  <echristo@redhat.com>
10074
10075	* explow.c (convert_memory_address): Use shallow_copy_rtx.
10076
100772002-10-31  Steve Ellcey  <sje@cup.hp.com>
10078
10079	* expmed.c (store_bit_field): Check FUNCTION_ARG_REG_LITTLE_ENDIAN.
10080
100812002-10-31  Steve Ellcey  <sje@cup.hp.com>
10082
10083	* config/ia64/hpux.h (MEMBER_TYPE_FORCES_BLK): Set for non-floats.
10084
10085Thu Oct 31  Dale Johannesen  <dalej@apple.com>
10086
10087	* config/rs6000/darwin.h:  Correct formatting in previous.
10088
10089Thu Oct 31  Dale Johannesen  <dalej@apple.com>
10090
10091	* config/rs6000/darwin.h:  Enable -falign-xxx options.
10092
100932002-10-31  Jan Hubicka  <jh@suse.cz>
10094
10095	* i386.c (override_options): Set defaults for flag_omit_frame_pointer,
10096	flag_asynchronous_unwind_tables, flag_pcc_struct_return.
10097	* i386.c (optimization_options): Set flag_omit_frame_pointer,
10098	flag_asynchronous_unwind_tables, flag_pcc_struct_return to 2.
10099	Do not clear -momit-leaf-frame-pointer when profiling.
10100	(ix86_frame_pointer_required): Frame pointer is always required when
10101	profiling.
10102
101032002-10-31  Jan Hubicka  <jh@suse.cz>
10104
10105	* i386.md (negdf2_ifs_rex64): Don't allow GPR operand.
10106
101072002-10-31  J"orn Rennecke <joern.rennecke@superh.com>
10108
10109	* sh.h (binary_logical_operator): Declare.
10110	* sh.c (binary_logical_operator): New function.
10111	* sh.md (xordi3+1): New combiner splitter pattern.
10112
101132002-10-31  David O'Brien  <obrien@FreeBSD.org>
10114
10115	* config/sparc/freebsd.h (TRANSFER_FROM_TRAMPOLINE): Define
10116	__enable_execute_stack function.
10117
101182002-10-30  Aldy Hernandez  <aldyh@redhat.com>
10119
10120	* c-common.c: Add GTY to vector_type_node_list.
10121
101222002-10-30  John David Anglin  <dave@hiauly.hia.nrc.ca>
10123
10124	* pa-linux.h (ASM_OUTPUT_EXTERNAL_LIBCALL): Define.
10125	* pa-protos.h (attr_length_millicode_call, attr_length_call,
10126	pa_init_machine_status): Declare new global functions.
10127	* pa.c (void copy_fp_args, length_fp_args, get_plabel): Declare and
10128	implement new functions.
10129	(attr_length_millicode_call, attr_length_call): Implement.
10130	(total_code_bytes): Change type to long.
10131	(pa_output_function_prologue): Compute total_code_bytes on TARGET_64BIT.
10132	Reset counter if flag_function_sections.
10133	(output_deferred_plabels): Set output alignment to 3 for TARGET_64BIT.
10134	(output_cbranch): Move call to gen_label_rtx.
10135	(output_millicode_call): Rewrite adding long TARGET_64BIT call, expose
10136	delay slot in all variants, shorten pc-relative calls.
10137	(output_call): Rewrite adding long TARGET_64BIT call, improved delay
10138	slot usage and exposure, various new call variants, and shortened
10139	sequences for some variants on TARGET_PA_20.
10140	Miscellaneous format changes.
10141	* pa.h (total_code_bytes): Change type to long.
10142	(MASK_LONG_CALLS, TARGET_LONG_CALLS, TARGET_LONG_ABS_CALL,
10143	TARGET_LONG_PIC_SDIFF_CALL, TARGET_LONG_PIC_PCREL_CALL): Define.
10144	(TARGET_SWITCHES): Add "-mlong-calls" and "-mno-long-calls" options.
10145	(EXTRA_CONSTRAINT, GO_IF_LEGITIMATE_ADDRESS,
10146	LEGITIMIZE_RELOAD_ADDRESS): Don't use long floating point loads and
10147	stores on TARGET_ELF32.
10148	*pa.md (define_delay): Allow insns in delay on TARGET_PORTABLE_RUNTIME.
10149	(unnamed patterns for mulsi3, divsi3, udivsi3, modsi3, umodsi3 and
10150	canonicalize_funcptr_for_compare expanders): Calculate attribute length
10151	attr_length_millicode_call().
10152	(call_internal_symref, call_value_internal_symref): Clobber register 1.
10153	Calculate attribute length using attr_length_call().
10154	(call_internal_reg_64bit, call_value_internal_reg_64bit): Move gp load
10155	to delay slot.
10156	(sibcall, sibcall_value): Rewrite.
10157	(sibcall_internal_symref, sibcall_value_internal_symref): Clobber
10158	register 1.  Use attr_length_call().
10159	(sibcall_internal_symref_64bit, sibcall_value_internal_symref_64bit):
10160	New patterns.
10161	(unamed pattern for canonicalize_funcptr_for_compare): Rewrite.
10162	* som.h (MEMBER_TYPE_FORCES_BLK): Define.
10163	* t-pa64 (TARGET_LIBGCC2_CFLAGS): Add "-mlong-calls".
10164	* doc/invoke.texi (mlong-calls): Document.
10165
101662002-10-30  Roger Sayle  <roger@eyesopen.com>
10167
10168	* fold-const.c (fold_binary_op_with_conditional_arg):  Improve
10169	handling of cases where one or both branches of the conditional
10170	have void type, i.e. throw an exception or don't return.
10171	(fold): Only apply (and undo) type conversion to the non-void
10172	branches of a COND_EXPR.
10173
101742002-10-30  Mark Mitchell  <mark@codesourcery.com>
10175
10176	PR c++/8333
10177	* varasm.c (asm_output_aligned_bss): Do not call
10178	ASM_GLOBALIZE_LABEL.
10179
101802002-10-30  David Edelsohn  <edelsohn@gnu.org>
10181	    Torbjorn Granlund  <tege@swox.com>
10182
10183	* config/rs6000/rs6000.md (load_toc_v4_PIC_1): Use preferred form
10184	for addressibility.
10185	(load_toc_v4_PIC_1b): Same.
10186
101872002-10-30  Kazu Hirata  <kazu@cs.umass.edu>
10188
10189	* config/h8300/h8300.c (h8300_eightbit_constant_address_p):
10190	Truncate the addresses for H8/300 using HImode.
10191
101922002-10-29  Hans-Peter Nilsson  <hp@bitrange.com>
10193
10194	* toplev.c (rest_of_type_compilation): Return early in case of
10195	errors.
10196	(check_global_declarations): Don't call debug_hooks->global_decl
10197	in case of errors.
10198
101992002-10-28  Andreas Bauer  <baueran@in.tum.de>
10200
10201	* doc/c-tree.texi (Tree overview): Fix typos.
10202
102032002-10-29  Phil Edwards  <pme@gcc.gnu.org>
10204
10205	* Makefile.in (gnucompare*):  Only record bad comparisons
10206	if there really was a bad comparison.
10207
102082002-10-29  Jan Hubicka  <jh@suse.cz>
10209
10210	* i386.h (CONST_DOUBLE_OK_FOR_LETTER_P): Remove 'H'
10211	* i386.md (movsf*, movdf*): Use 'C' instead of 'H'
10212	* md.texi (machine dependent constraints): Document 'C'
10213
10214	* simplify-rtx.c (simplify_subreg): Fix const_int->vector subregging.
10215
10216	* i386.c (ix86_expand_vector_move): Fix.
10217
10218	* i386.c (ix86_expand_builtin): Use sse2_maskmovdqu_rex64.
10219	* i386.md (sse2_maskmovdqu_rex64): New pattern
10220
10221	PR target/8322
10222	* xmmintrin.h (_mm_stream_pi, _mm_stream_pd): Fix cast.
10223	(ix86_init_mmx_sse_builtins): Fix type.
10224
102252002-10-29  Jason Thorpe  <thorpej@wasabisystems.com>
10226
10227	* gthr-posix.h: Include <unistd.h> for feature tests.
10228	(sched_get_priority_max, sched_get_priority_min)
10229	(pthread_getschedparam, pthread_setschedparam): Only use
10230	if _POSIX_THREAD_PRIORITY_SCHEDULING is defined.
10231	(__gthread_objc_thread_set_priority): Don't treat all non-zero
10232	returns from sched_get_priority_max and sched_get_priority_min
10233	as an error.
10234
102352002-10-29  Kazu Hirata  <kazu@cs.umass.edu>
10236
10237	* config/h8300/h8300.h (TARGET_DEFAULT): Make it
10238	MASK_QUICKCALL.
10239
102402002-10-29  Kazu Hirata  <kazu@cs.umass.edu>
10241
10242	* config/h8300/h8300.c (h8300_eightbit_constant_address_p): New.
10243	(h8300_tiny_constant_address_p): Likewise.
10244	* config/h8300/h8300.h (EIGHTBIT_CONSTANT_ADDRESS_P): Use
10245	h8300_eightbit_constant_address_p.
10246	(TINY_CONSTANT_ADDRESS_P): Use h8300_tiny_constant_address_p.
10247	* config/h8300/h8300-protos.h: Add the prototypes for the two
10248	new functions.
10249
102502002-10-29  Kazu Hirata  <kazu@cs.umass.edu>
10251
10252	* reload1.c (update_eliminables): Unconditionally check if
10253	frame_pointer_needed has changed.
10254
102552002-10-29  Jan Hubicka  <jh@suse.cz>
10256
10257	* toplev.c (rest_of_compilation): Reorganize way reg_scan is called
10258	before final pass.
10259
102602002-10-29  Eric Botcazou  <ebotcazou@libertysurf.fr>
10261
10262	PR optimization/8334
10263	* expr.c (expand_expr) [PLUS]: Don't use simplify_binary_operation;
10264	check for zero operands explicitly.
10265
102662002-10-29  Richard Sandiford  <rsandifo@redhat.com>
10267
10268	* config/mips/mips.md (extv, extzv, insv): Set size of referenced
10269	memory after adjusting to BLKmode.
10270
102712002-10-29  Kazu Hirata  <kazu@cs.umass.edu>
10272
10273	* config/h8300/h8300.h (MASK_*): New.
10274	(TARGET_*): Use MASK_*.
10275
102762002-10-28  Jason Thorpe  <thorpej@wasabisystems.com>
10277
10278	* config.gcc (*-*-netbsd*): Add NETBSD_ENABLE_PTHREADS to
10279	tm_defines if pthreads are enabled.
10280	* config/netbsd.h (LIB_SPEC): Only support the -pthread option
10281	if NETBSD_ENABLE_PTHREADS is defined.
10282
102832002-10-28  Kazu Hirata  <kazu@cs.umass.edu>
10284
10285	* ChangeLog.1: Fix typos.
10286	* cse.c: Fix a comment typo.
10287	* reload1.c: Likewise.
10288
102892002-10-27  Hans-Peter Nilsson  <hp@bitrange.com>
10290
10291	* fixinc/inclhack.def (libc1_G_va_list): Correct test_text.
10292	* fixinc/tests/base/_G_config.h: New file.
10293
102942002-10-27  Kazu Hirata  <kazu@cs.umass.edu>
10295
10296	* combine.c: Fix comment formatting.
10297	* loop.c: Likewise.
10298	* real.c: Likewise.
10299	* regclass.c: Likewise.
10300	* regmove.c: Likewise.
10301	* regrename.c: Likewise.
10302	* reg-stack.c: Likewise.
10303	* reload1.c: Likewise.
10304	* reload.c: Likewise.
10305	* reload.h: Likewise.
10306	* unroll.c: Likewise.
10307
103082002-10-27  Kazu Hirata  <kazu@cs.umass.edu>
10309
10310	* reload1.c (reload): Fix a comment typo.
10311
103122002-10-27  Jan Hubicka  <jh@suse.cz>
10313
10314	* linux64.h (DEFAULT_PCC_STRUCT_RETURN):  Define.
10315
103162002-10-27  Zdenek Dvorak  <rakdver@atrey.karlin.mff.cuni.cz>
10317
10318	* Makefile.in (dwarf2out.o): Add dependendcy on hashtab.h.
10319	* dwarf2out.c: Include hashtab.h.
10320	(is_main_source): New static variable.
10321	(attr_checksum, die_checksum): Modified to handle die references.
10322	(same_loc_p, same_dw_val_p, same_attr_p, same_die_p, same_die_p_wrap,
10323	unmark_all_dies, htab_cu_hash, htab_cu_eq, htab_cu_del, check_duplicate_cu,
10324	record_comdat_symbol_number): New static functions.
10325	(output_comp_unit, compute_section_prefix, is_type_die, break_out_includes,
10326	mark_dies, unmark_dies, dwarf2out_start_source_file): Modified.
10327	* toplev.c (rest_of_decl_compilation): Call of dwarf2out_decl for type
10328	declarations added.
10329
103302002-10-26  Kazu Hirata  <kazu@cs.umass.edu>
10331
10332	* config/h8300/h8300.c (initial_offset): Change to
10333	h8300_initial_elimination_offset.
10334	* config/h8300/h8300.h (INITIAL_ELIMINATION_OFFSET): Use
10335	h8300_initial_elimination_offset.
10336	* config/h8300/h8300-protos.h: Update the prototype.
10337
103382002-10-26  Hans-Peter Nilsson  <hp@bitrange.com>
10339
10340	* config/mmix/mmix.h (LIBCALL_VALUE): Use
10341	MMIX_RETURN_VALUE_REGNUM, not MMIX_OUTGOING_RETURN_VALUE_REGNUM.
10342	(FUNCTION_VALUE_REGNO_P): Similar, but move code to...
10343	* config/mmix/mmix.c (mmix_function_value_regno_p): New.
10344	* config/mmix/mmix-protos.h: Remove needless ifdefs on TREE_CODE
10345	and RTX_CODE.
10346	(mmix_function_value_regno_p): Declare.
10347
10348	* config/mmix/mmix.md ("fixuns_truncdfdi2"): Replace unsigned_fix,
10349	invalid for floating point mode result, with fix.
10350
103512002-10-25  Mike Stump  <mrs@apple.com>
10352
10353	Fixes gcc.dg/warn-1.c.
10354	* c-typeck.c (warn_for_assignment): Don't print argument number, if zero.
10355
103562002-10-26  Jan Hubicka  <jh@suse.cz>
10357
10358	* toplev.c (dump_file_index): Add DFI_ce3.
10359	(dump_file_info): Likewise.
10360	(rest_of_compilation): Run first ifcvt pass before tracer.
10361
103622002-10-25  Steve Ellcey  <sje@cup.hp.com>
10363
10364	* config/ia64/hpux.h (BITS_BIG_ENDIAN): Remove.
10365
103662002-10-25  Richard Henderson  <rth@redhat.com>
10367
10368	* real.c (real_to_decimal): If the >1 tens reduction loop results
10369	in a negative exponent, fall into the <1 pten computation.
10370
103712002-10-25  Zack Weinberg  <zack@codesourcery.com>
10372
10373	PR middle-end/6994
10374	* c-objc-common.c (inline_forbidden_p): Can not inline
10375	functions containing structures or unions containing VLAs.
10376	* tree-inline.c (walk_tree): For all class 't' nodes, walk
10377	TYPE_SIZE and TYPE_SIZE_UNIT.
10378	(copy_tree_r): Copy types if they are variably modified.
10379
103802002-10-25  Ulrich Weigand  <uweigand@de.ibm.com>
10381
10382	* config/s390/s390.md: Remove old-style peepholes.
10383
103842002-10-25  Ulrich Weigand  <uweigand@de.ibm.com>
10385
10386	* config/s390/s390.c (s390_decompose_address): Do not range check the
10387	displacement if base or index is the argument pointer register.
10388
103892002-10-24  Hans-Peter Nilsson  <hp@bitrange.com>
10390
10391	PR other/3337
10392	PR bootstrap/6763
10393	PR bootstrap/8122
10394	* fixinc/inclhack.def (libc1_G_va_list): New fix.
10395	* fixinc/fixincl.x: Regenerate.
10396	* config/i386/linux.h: Move MD_FALLBACK_FRAME_STATE_FOR inside
10397	ifndef IN_LIBGCC2.  Wrap it together with signal.h and
10398	sys/ucontext.h inclusion in ifndef USE_GNULIBC_1.
10399	* configure.in (gcc_AC_CHECK_DECLS): Check vasprintf too.
10400	* config.in, configure: Regenerate.
10401
104022002-10-24  Igor Shevlyakov <igor@microunity.com>
10403
10404	* varasm.c (struct rtx_const): Array size 16 for V16QImode.
10405
104062002-10-24  Richard Henderson  <rth@redhat.com>
10407
10408	* config/i386/i386.c (x86_output_mi_thunk): Fix x86_64 pic jump.
10409
104102002-10-24  Kazu Hirata  <kazu@cs.umass.edu>
10411
10412	* config/h8300/h8300.c (initial_offset): Simplify by using
10413	round_frame_size.
10414
104152002-10-24  Marek Michalkiewicz  <marekm@amelek.gda.pl>
10416
10417	* doc/install.texi (avr): Update required binutils version.
10418
104192002-10-24  Theodore A. Roth  <troth@openavr.org>
10420
10421	* doc/install.texi: Point avr users at more up-to-date information.
10422
104232002-10-24  Ulrich Weigand  <uweigand@de.ibm.com>
10424
10425	* config/s390/s390.md (movdi, movsi, movhi, movqi): Add peepholes2
10426	to pull operands out of the literal pool where possible.
10427
104282002-10-24  Denis Chertykov  <denisc@overta.ru>
10429
10430	* config/avr/avr.c (init_cumulative_args): Test fntype for zero.
10431
104322002-10-24  Steve Ellcey  <sje@cup.hp.com>
10433
10434	* expr.c (convert_move): If unsignedp is less then zero there
10435	is no equivalent code.
10436
104372002-10-24  Zack Weinberg  <zack@codesourcery.com>
10438
10439	* tree.def: Delete mention of nonexistent ARRAY_TYPE fields.
10440
104412002-10-24  Ulrich Weigand  <uweigand@de.ibm.com>
10442
10443	* config/s390/s390.h: Rework comments; re-sort target macro definitions
10444	according to the sequence they are defined in the manual.
10445	(POINTER_BOUNDARY): Remove.
10446
104472002-10-24  Kazu Hirata  <kazu@cs.umass.edu>
10448
10449	* config/h8300/h8300.c (round_frame_size): Replace 8 with
10450	BITS_PER_UNIT.
10451
104522002-10-24  Kazu Hirata  <kazu@cs.umass.edu>
10453
10454	* config/h8300/h8300.h (EIGHTBIT_CONSTANT_ADDRESS_P): Make it
10455	64-bit safe.
10456	(TINY_CONSTANT_ADDRESS_P): Likewise.
10457
104582002-10-24  Richard Henderson  <rth@redhat.com>
10459
10460	* config/ia64/ia64.c (TARGET_ASM_CAN_OUTPUT_MI_THUNK): True.
10461	(ia64_output_mi_thunk): Rewrite to use rtl, and to handle the
10462	vcall offset.
10463
104642002-10-24  Richard Henderson  <rth@redhat.com>
10465
10466	PR opt/7944
10467	* reload.c (find_reloads_toplev): Mode of X is not important
10468	when simplifying subregs of constants.
10469
104702002-10-24  Richard Sandiford  <rsandifo@redhat.com>
10471
10472	* config.gcc (mips64vr-*-elf*, mips64vrel-*-elf*): Add
10473	MIPS_MARCH_CONTROLS_SOFT_FLOAT=1 to $tm_defines.
10474	* config/mips/mips.c (MIPS_MARCH_CONTROLS_SOFT_FLOAT): Default to 0.
10475	(override_options): Base default setting of MASK_SOFT_FLOAT on -march
10476	if MIPS_MARCH_CONTROLS_SOFT_FLOAT.
10477
104782002-10-24  Richard Sandiford  <rsandifo@redhat.com>
10479
10480	* optabs.c (expand_binop): Don't reuse the shift target in the
10481	middle of shift sequences.
10482
104832002-10-23  Ziemowit Laski <zlaski@apple.com>
10484
10485	* objc/objc-act.c (get_static_reference): Remove unneeded
10486	TYPE_BINFO initialization.
10487	(get_object-reference): Likewise.
10488	(build_constructor): Tighten precondition check.
10489	(finish_message_expr): Likewise.
10490
104912002-10-23  Jakub Jelinek  <jakub@redhat.com>
10492
10493	* config/i386/i386.c (local_symbolic_operand): Move LABEL_REF test
10494	after CONST test.
10495
104962002-10-23  Steve Ellcey  <sje@cup.hp.com>
10497
10498	* config/ia64/ia64.c (hfa_element_mode): Don't allow 128 bit floats
10499	in HFAs.
10500
105012002-10-23  Richard Henderson  <rth@redhat.com>
10502
10503	* config/alpha/alpha.c (TARGET_ASM_CAN_OUTPUT_MI_THUNK): True.
10504	(alpha_output_mi_thunk_osf): Handle vcall_offset.
10505
105062002-10-23  Zack Weinberg  <zack@codesourcery.com>
10507
10508	* langhooks.h (struct lang_hooks_for_tree_inlining): Add
10509	var_mod_type_p.
10510	* langhooks-def.h: Default for tree_inlining.var_mod_type_p is
10511	hook_tree_bool_false.
10512
10513	* tree.c (variably_modified_type_p): Moved here from
10514	cp/tree.c.  Use lang_hooks.tree_inlining.var_mod_type_p for
10515	language-specific cases.  Due to this, must weaken some 'if
10516	and only if' checks to merely 'if'.
10517	* tree.h: Prototype variably_modified_type_p.
10518
10519	* tree-inline.c (walk_tree): #undef WALK_SUBTREE_TAIL at end.
10520
105212002-10-23  Ulrich Weigand  <uweigand@de.ibm.com>
10522
10523	* config/s390/linux.h (CC1_SPEC, CC1PLUS_SPEC): Remove.
10524	* config/s390/s390.c (optimization_options): Disable -fcaller-saves.
10525
10526	* config/s390/s390-protos.h (fp_operand): Remove.
10527	* config/s390/s390.c (fp_operand): Remove.
10528	* config/s390/s390.md ("movdi"): Replace fp_operand by FP_REG_P.
10529	("*movdi_lhi", "*movdi_lli", "*movdi_larl"): Likewise.
10530	("movsi", "*movsi_lhi", "*movsi_lli"): Likewise.
10531	(movdi_31, movdf_31 splitters): Likewise.
10532
10533	* config/s390/s390.h (IEEE_FLOAT): Remove.
10534	(TARGET_FLOAT_FORMAT): Define in terms of TARGET_IEEE_FLOAT.
10535	(INT_REGNO_P): Rename to ...
10536	(GENERAL_REGNO_P): ... this.
10537	(FLOAT_REGNO_P): Rename to ...
10538	(FP_REGNO_P): ... this.
10539	(ADDR_REGNO_P): New macro.
10540	(GENERAL_REG_P, ADDR_REG_P, FP_REG_P, CC_REG_P): New macros.
10541	(REGNO_OK_FOR_DATA_P, REGNO_OK_FOR_FP_P): Remove.
10542	(DATA_REG_P, FP_REG_P, ADDRESS_REG_P): Likewise.
10543	(HARD_REGNO_NREGS): Adapt to macro renaming.
10544	(HARD_REGNO_MODE_OK): Likewise.
10545
105462002-10-23  David Edelsohn  <edelsohn@gnu.org>
10547	    Geoff Keating  <geoffk@apple.com>
10548
10549	* config/rs6000/rs6000.c (rs6000_register_move_cost): New function.
10550	(rs6000_memory_move_cost): New function.
10551	* config/rs6000/rs6000-protos.h: Declare them.
10552	* config/rs6000/rs6000.h: Use them.
10553
105542002-10-23  Ulrich Weigand  <uweigand@de.ibm.com>
10555
10556	* libgcc2.c (__udiv_w_sdiv): Use attribute ((always_inline)) when
10557	inlining it into other libgcc2 routines.
10558	(__udivmoddi4): Likewise.
10559
105602002-10-22  Nathanael Nerode  <neroden@gcc.gnu.org>
10561
10562	* doc/sourcebuild.texi (Test Suites): Improve.
10563
105642002-10-22  Stan Shebs  <shebs@apple.com>
10565
10566	* config/rs6000/rs6000.c (rs6000_output_mi_thunk): Add missing
10567	case for Darwin.
10568
105692002-10-22  Jim Wilson  <wilson@redhat.com>
10570
10571	* config/i386/i386.md (subdi3_1): Add call to ix86_binary_operator_ok.
10572
105732002-10-23  Jan Hubicka  <jh@suse.cz>
10574
10575	PR other/8289
10576	* xmmintrin.h: Add const to the argument of loads.
10577
10578	* i386.md (pushv2di): New pattern.
10579	PR target/6890
10580	* xmmintrin.h (_MM_TRANSPOSE4_PS): New.
10581
105822002-10-22  Richard Henderson  <rth@redhat.com>
10583
10584	* target.h (gcc_target.asm_out): Merge output_mi_thunk and
10585	output_mi_vcall_thunk into a single hook.  Add can_output_mi_thunk.
10586	* target-def.h (TARGET_ASM_OUTPUT_MI_THUNK): Don't conditionalize.
10587	(TARGET_ASM_OUTPUT_MI_VCALL_THUNK): Remove.
10588	(TARGET_ASM_CAN_OUTPUT_MI_THUNK): New.
10589	(TARGET_ASM_OUT): Update.
10590	* hooks.c (hook_bool_tree_hwi_hwi_tree_false): New.
10591	(hook_bool_tree_hwi_hwi_tree_true): New.
10592	(default_can_output_mi_thunk_no_vcall): New.
10593	* hooks.h: Declare them.
10594	* system.h (ASM_OUTPUT_MI_THUNK): Poison.
10595
10596	* config/alpha/alpha.c (TARGET_ASM_CAN_OUTPUT_MI_THUNK): New.
10597	(alpha_output_mi_thunk_osf): Add VCALL_OFFSET parameter.
10598	* config/arm/arm.c, config/cris/cris.c, config/frv/frv.c,
10599	config/i960/i960.c, config/ia64/ia64.c, config/m68k/m68k.c,
10600	config/mmix/mmix.c, config/pa/pa.c, config/sparc/sparc.c,
10601	config/stormy16/stormy16.c: Similarly.
10602
10603	* config/i386/i386.c (x86_output_mi_thunk): Merge vcall_offset code.
10604	Handle 64-bit properly.  Streamline.
10605	(x86_output_mi_vcall_thunk): Remove.
10606	(x86_this_parameter): Rename from ia32_this_parameter; handle 64-bit.
10607	(x86_can_output_mi_thunk): New.
10608	(TARGET_ASM_OUTPUT_MI_VCALL_THUNK): Remove.
10609	(TARGET_ASM_CAN_OUTPUT_MI_THUNK): New.
10610	(override_options): Don't zap targetm.asm_out.output_mi_vcall_thunk.
10611
10612	* config/rs6000/rs6000.c (rs6000_output_mi_thunk): Rename from
10613	output_mi_thunk; make static; always use function_section.
10614	(TARGET_ASM_OUTPUT_MI_THUNK): New.
10615	(TARGET_ASM_CAN_OUTPUT_MI_THUNK): New.
10616	(rs6000_ra_ever_killed): Test no_new_pseudos not
10617	targetm.asm_out.output_mi_thunk in conjunction with thunks.
10618	* config/rs6000/rs6000-protos.h: Update.
10619	* config/rs6000/sysv4.h (TARGET_ASM_OUTPUT_MI_THUNK): Remove.
10620	* config/rs6000/xcoff.h (ASM_DECLARE_FUNCTION_NAME): Don't call
10621	xcoffout_declare_function when using rs6000_output_mi_thunk.
10622
10623	* config/s390/s390.c (s390_output_mi_thunk): Rename from
10624	s390_output_mi_vcall_thunk.
10625	(TARGET_ASM_OUTPUT_MI_THUNK): Remove.
10626	(TARGET_ASM_CAN_OUTPUT_MI_THUNK): New.
10627
10628	* config/vax/vax.c (vax_output_mi_thunk): Static; add vcall_offset.
10629	(TARGET_ASM_OUTPUT_MI_THUNK, TARGET_ASM_CAN_OUTPUT_MI_THUNK): New.
10630	* config/vax/vax-protos.h: Update.
10631	* config/vax/vax.h (ASM_OUTPUT_MI_THUNK): Remove.
10632
106332002-10-23  Jan Hubicka  <jh@suse,cz>
10634
10635	* i386.c (standard_sse_constant_p): Accept vector and integer zeros too.
10636	* i386.h (EXTRA_CONSTRAINT): Recognize 'C'
10637	* i386.md (movti_internal): Use 'C'
10638
10639	* xmmintrin.h (_mm_cmplt_epi*): New.
10640
106412002-10-22  Ulrich Weigand  <uweigand@de.ibm.com>
10642
10643	* config/s390/s390.md ("*movdi_64"): Fix op_type attribute.
10644	("*movdf_64"): Likewise.
10645	("*lshrdi3_64"): Likewise.
10646	("blockage"): Add length attribute.
10647	("lit"): Likewise.
10648
106492002-10-22  Jan Hubicka  <jh@suse.cz>
10650
10651	* i386.md: FIx typo.
10652	(sse2_cvtsi2sd, sse2_pslrdq): Fix template.
10653	(sse2_umulv2siv2di3): Fix predicate.
10654	(sse2_psadbw, ashrv8hi3, ashrv4si3, lshrv8hi3 lshrv4si3,
10655	lshrv2di3, ashlv8hi3, ashlv4si3, ashlv2di3): Likewise.
10656	* xmmintrin.h (_mm_mul_epu16): Rename to...
10657	(_mm_mul_epu32): This one.
10658	(_mm_cvtsi32_si128, _mm_cvtsi128_si32): New.
10659
10660	(contains_128bit_aligned_vector_p): Undo accidental checkin.
10661
106622002-10-22  Eric Christopher  <echristo@redhat.com>
10663
10664	* config/sparc/sparc.h: Add #error.
10665
106662002-10-22  Ulrich Weigand  <uweigand@de.ibm.com>
10667
10668	* config.gcc [s390-*-linux]: Remove s390/t-linux from tmake_file.
10669	[s390x-*-linux*]: Likewise.
10670	* config/s390/t-linux: Remove.
10671	* config/s390/s390.h: Include fixdfdi.h when building libgcc2.
10672
106732002-10-22  Jan Hubicka  <jh@suse.cz>
10674
10675	* i386.c (builtin_description): Add IX86_BUILTIN_PUNPCKHQDQ128.
10676	(ix86_expand_builtin): Fix MASKMOVDQU expasion.
10677	* i386.h (ix86_builtins): Add IX86_BUILTIN_PUNPCKHQDQ128.
10678	* i386.md (mmx_punpck?dq): Simplify.
10679	(sse2_pubpcklqdq): Fix.
10680	(sse2_pubpckhqdq): New.
10681	* xmmintrin.h (_mm_unpackhi_epi32): New.
10682
10683	* xmmintrin.h (_mm_cvt*, _mm_stream_pd): Fix prototypes.
10684	(_mm_shufflehi_epi16, _mm_shufflelo_epi16): Fix typo.
10685
106862002-10-22  Nathan Sidwell  <nathan@codesourcery.com>
10687
10688	PR c++/7209
10689	* fold_const.c (fold_binary_op_with_conditional_arg): Always
10690	build compound_expr if we used save_expr.
10691
106922002-10-22  Alan Modra  <amodra@bigpond.net.au>
10693
10694	* output.h (SECTION_NOTYPE): Define.
10695	* varasm.c (default_section_type_flags_1): Set SECTION_NOTYPE for
10696	init array sections.
10697	(default_elf_asm_named_section): Mind SECTION_NOTYPE.
10698	* config/arm/arm.c (arm_elf_asm_named_section): Likewise.  Also
10699	merge TLS support.
10700
107012002-10-21  Richard Henderson  <rth@redhat.com>
10702
10703	* real.c (sticky_rshift_significand): Return inexact, don't
10704	or it in immediately.
10705	(sub_significands): Accept incomming carry.
10706	(div_significands, rtd_divmod): Update for sub_significands change.
10707	(round_for_format): Update for sticky_rshift_significand change.
10708	(do_add): Don't involve the inexact bit in addition, do give the
10709	inexact bit as the subtraction carry-in.
10710	(encode_internal, decode_internal, real_internal_format): New.
10711	* real.h (real_internal_format): Declare.
10712
107132002-10-21  Ulrich Weigand  <uweigand@de.ibm.com>
10714
10715	* libgcc2.c: Fix __udiv_w_sdiv breakage on platforms that
10716	don't define sdiv_qrnnd.
10717
107182002-10-21  Kazu Hirata  <kazu@cs.umass.edu>
10719
10720	* config/h8300/h8300.h (EIGHTBIT_CONSTANT_ADDRESS_P): Simplify
10721	using IN_RANGE.
10722	(TINY_CONSTANT_ADDRESS_P): Likewise.
10723
107242002-10-22  Jan Hubicka  <jh@suse.cz>
10725
10726	* i386.c (builtin_description): Add punpcklqdq and movdq2q
10727	(ix86_init_mmx_sse_builtins): Add v2di_ftype_void, di_ftype_v2di,
10728	v16qi_ftype_pchar, void_ftype_pchar_v16qi, v4si_ftype_pchar,
10729	void_ftype_pchar_v4si; Initialize __builtin_ia32_movdq2q,
10730	__builtin_ia32_loaddqa, __builtin_ia32_loaddqu, __builtin_ia32_loadd
10731	__builtin_ia32_storedqa, __builtin_ia32_storedqu, __builtin_ia32_stored
10732	__builtin_ia32_setzero128.
10733	(ix86_expand_builtin): Handle IX86_BUILTIN_CLRTI, IX86_BUILTIN_LOADDQA,
10734	IX86_BUILTIN_LOADDQU, IX86_BUILTIN_LOADD, IX86_BUILTIN_STOREDQA,
10735	IX86_BUILTIN_STOREDQU, IX86_BUILTIN_STORED, Ix86_BUILTIN_MOVQ.
10736	* i386.h (ix86_builtins): Add IX86_BUILTIN_LOADDQA, IX86_BUILTIN_LOADDQU,
10737	IX86_BUILTIN_STOREDQA, IX86_BUILTIN_STOREDQU, IX86_BUILTIN_LOADD,
10738	IX86_BUILTIN_STORED, IX86_BUILTIN_CLRTI, IX86_BUILTIN_MOVDQ2Q,
10739	IX86_BUILTIN_PUNPCKLQDQ128, Ix86_BUILTIN_MOVQ.
10740	* i386.md (sse2_punpcklqdq, sse2_movqsse2_loadd, sse2_stored,
10741	sse2_movq): New patterns.
10742	(sse2_movdqa, sse2_movdqu, sse2_movdq2q): Fix.
10743	* xmmintrin.h (_mm_load_si128, _mm_loadu_si128, _mm_loadl_epi64,
10744	_mm_store_si128, _mm_storeu_si128, _mm_storel_epi64,
10745	_mm_setzero_si128, _mm_set_epi64, _mm_set_epi32, _mm_set_epi16,
10746	_mm_set_epi8, _mm_set1_epi64, _mm_set1_epi32, _mm_set1_epi16,
10747	_mm_set1_epi8, _mm_setr_epi64, _mm_setr_epi32, _mm_setr_epi16,
10748	_mm_setr_epi8, _mm_unpacklo_epi64,_mm_set_moveq): New functions.
10749	(_mm_insert_epi16): Fix.
10750
107512002-10-21  Dale Johannesen  <dalej@apple.com>
10752
10753	* config/rs6000/rs6000.c (rs6000_reverse_condition): Handle
10754	    unsafe math reversals correctly for RTL generation.
10755	  (output_cbranch):  Replace rs6000_reverse_condition call
10756	    by its former definition.
10757
107582002-10-21  Jakub Jelinek  <jakub@redhat.com>
10759
10760	* config/i386/i386.c (x86_64_sign_extended_value): Add allow_rip
10761	argument.  In CM_SMALL_PIC model consider SYMBOL_REFs binding locally or
10762	from constant pool or LABEL_REFs as sign extended if allow_rip.
10763	Change all +-1GB limits to +-16MB.
10764	(x86_64_general_operand, x86_64_szext_general_operand,
10765	x86_64_nonmemory_operand, x86_64_movabs_operand,
10766	x86_64_szext_nonmemory_operand, x86_64_immediate_operand,
10767	legitimate_address_p, ix86_expand_int_movcc): Update callers.
10768	(local_symbolic_operand): Don't allow offsets bigger than +-16MB
10769	in CM_SMALL_PIC model.
10770	(legitimate_pic_address_disp_p): Don't check offsets before
10771	calling local_symbolic_operand.
10772	(legitimize_pic_address): Force offsets bigger than +-16MB into
10773	register.
10774	* config/i386/i386.h (EXTRA_CONSTRAINT, CONST_COSTS): Likewise.
10775	* config/i386/i386-protos.h (x86_64_sign_extended_value): Update
10776	prototype.
10777
10778	* configure.in: Test for @GOTNTPOFF and @INDNTPOFF on IA-32 too.
10779	Add x86-64 test.  Set tls_first_minor to 14 on IA-32 and x86-64.
10780	* configure: Rebuilt.
10781	* config/i386/i386.c (x86_64_sign_extended_value): Don't allow TLS
10782	SYMBOL_REFs unless enclosed in UNSPEC.  Handle UNSPEC_DTPOFF,
10783	UNSPEC_GOTNTPOFF and UNSPEC_NTPOFF.
10784	(legitimate_address_p): Allow foo@dtpoff(base) even on TARGET_64BIT
10785	-fpic.
10786	(ix86_encode_section_info): Don't ever generate TLSGD or TLSLD for
10787	non-pic code if TARGET_64BIT.
10788	(legitimize_address): Generate 64-bit TLS sequences.
10789	(output_pic_addr_const): Support x86-64 TLS operators.
10790	(i386_output_dwarf_dtprel): Output 64-bit DTPOFF as .long f@DTPOFF, 0.
10791	(print_operand_address): Use %fs instead of %gs on TARGET_64BIT.
10792	Don't append (%rip) in 64-bit TLSGD and TLSLD sequences.
10793	(output_addr_const_extra): Support x86-64 TLS operators.
10794	(maybe_get_pool_constant): Handle TARGET_64BIT -fpic.
10795	(ix86_tls_get_addr): Use __tls_get_addr on TARGET_64BIT
10796	unconditionally.
10797	* config/i386/i386.md (*tls_global_dynamic_gnu): Renamed to...
10798	(*tls_global_dynamic_32_gnu): ..., add !TARGET_64BIT.
10799	(*tls_global_dynamic_sun): Renamed to...
10800	(*tls_global_dynamic_32_sun): ..., add !TARGET_64BIT.
10801	(tls_global_dynamic): Renamed to...
10802	(tls_global_dynamic_32): ... this.
10803	(tls_global_dynamic_64, *tls_global_dynamic_64): New.
10804	(*tls_local_dynamic_base_dynamic_gnu): Renamed to...
10805	(*tls_local_dynamic_base_dynamic_32_gnu): ..., add !TARGET_64BIT.
10806	(*tls_local_dynamic_base_dynamic_sun): Renamed to...
10807	(*tls_local_dynamic_base_dynamic_32_sun): ..., add !TARGET_64BIT.
10808	(tls_local_dynamic_base_dynamic): Renamed to...
10809	(tls_local_dynamic_base_dynamic_32): ... this.
10810	(tls_local_dynamic_base_dynamic_64,
10811	*tls_local_dynamic_base_dynamic_64): New.
10812	(*tls_local_dynamic_once): Renamed to...
10813	(*tls_local_dynamic_32_once): ... this.
10814
108152002-10-21  Ulrich Weigand  <uweigand@de.ibm.com>
10816
10817	* libgcc2.c: Inline __udiv_w_sdiv when compiling __udivdi3,
10818	__divdi3, __umoddi3, or __moddi3.
10819
108202002-10-21  Ulrich Weigand  <uweigand@de.ibm.com>
10821
10822	* c-opts.c (missing_arg): Use cl_options[opt_index].opt_code
10823	instead of just opt_index as switch expression.
10824
10825	* calls.c (store_one_arg): Change type of 'excess_align'
10826	to unsigned int.
10827
10828	* profile.c (output_gcov_string): Change type of 'temp'
10829	to size_t.
10830
108312002-10-21  Ulrich Weigand  <uweigand@de.ibm.com>
10832
10833	* config/s390/fixdfdi.h (__fixunsdfdi, __fixdfdi): Add prototypes.
10834	(__fixunssfdi, __fixsfdi): Likewise.
10835	* config/s390/s390.c (s390_single_hi): Initialize 'value'.
10836	(s390_single_qi): Likewise.
10837	(s390_emit_epilogue): Initialize 'offset'.  Remove signed vs.
10838	unsigned comparison warning.
10839	(s390_return_addr_rtx): New function.
10840	* config/s390/s390-protos.h (s390_return_addr_rtx): Declare it.
10841	* config/s390/s390.h (RETURN_ADDR_RTX): Use it.
10842	(HARD_REGNO_MODE_OK): Rewrite condition to silence warnings.
10843
108442002-10-21  Ulrich Weigand  <uweigand@de.ibm.com>
10845
10846	* config/s390/s390.c (s390_output_mi_vcall_thunk): New function.
10847	(TARGET_ASM_OUTPUT_MI_VCALL_THUNK): Define target hook.
10848	(s390_output_mi_thunk): Remove.
10849	(TARGET_ASM_OUTPUT_MI_THUNK): Remove.
10850
108512002-10-21  Kazu Hirata  <kazu@cs.umass.edu>
10852
10853	* config/h8300/h8300.h (N_REG_CLASSES): Parenthesize.
10854
108552002-10-20  Richard Henderson  <rth@redhat.com>
10856
10857	* target.h (struct gcc_target): Line wrap.
10858
10859	* config/alpha/alpha.c (alpha_output_mi_thunk_osf): Static.
10860	(TARGET_ASM_OUTPUT_MI_THUNK): Define here...
10861	* config/alpha/alpha.h: ... not here.
10862	* config/alpha/alpha-protos.h: Update.
10863
10864	* config/arm/arm.c, config/arm/arm.h, config/arm/arm-protos.h
10865	config/cris/cris-protos.h, config/cris/cris.c, config/cris/cris.h,
10866	config/frv/frv-protos.h, config/frv/frv.c, config/frv/frv.h,
10867	config/i386/i386-protos.h, config/i386/i386.c, config/i386/openbsd.h,
10868	config/i386/unix.h, config/i960/i960-protos.h, config/i960/i960.c,
10869	config/i960/i960.h, config/ia64/ia64-protos.h, config/ia64/ia64.c,
10870	config/ia64/ia64.h, config/m68k/linux.h, config/m68k/m68k-protos.h,
10871	config/m68k/m68k.c, config/m68k/netbsd-elf.h, config/m68k/openbsd.h,
10872	config/mmix/mmix-protos.h, config/mmix/mmix.c, config/mmix/mmix.h,
10873	config/pa/pa-protos.h, config/pa/pa.c, config/pa/pa.h,
10874	config/s390/s390-protos.h, config/s390/s390.c, config/s390/s390.h,
10875	config/sparc/openbsd.h, config/sparc/sparc-protos.h,
10876	config/sparc/sparc.c, config/sparc/sparc.h,
10877	config/stormy16/stormy16-protos.h, config/stormy16/stormy16.c,
10878	config/stormy16/stormy16.h: Similarly.
10879
10880	* config/m68k/m68k.c (m68k_output_mi_thunk): Replicate mnemonic
10881	selection logic from call patterns.
10882
108832002-10-20  Mark Mitchell  <mark@codesourcery.com>
10884
10885	* config/m68k/m68k.c (m68k_output_mi_thunk): Fix typo.
10886
108872002-10-20  Zdenek Dvorak  <rakdver@atrey.karlin.mff.cuni.cz>
10888
10889	PR other/8202
10890	* i386.c (ix86_init_mmx_sse_builtins, ix86_expand_builtin): Define and
10891	expand __builtin_ia32_pslldqi128 and __builtin_ia32_psrldqi128.
10892	* i386.h (IX86_BUILTIN_PSLLDQI128, IX86_BUILTIN_PSRLDQI128): New.
10893	* xmmintrin.h (_mm_srli_si128, _mm_slli_si128): New.
10894
108952002-10-20  Roger Sayle  <roger@eyesopen.com>
10896
10897	PR c/761
10898	* toplev.c (flag_unsafe_profile_arcs): Remove.
10899	(flag_bounded_pointers): Remove.
10900	(flag_bounds_check): Correct comments.
10901	(lang_independent_options): Remove -funsafe-profile-arcs and
10902	-fbounded-pointers.  Correct -fbounds-check comments.
10903
10904	* flags.h: Correct flag_schedule_interblock comments.
10905	(flag_bounded_pointers): Remove prototype.
10906	(flag_bounds_check): Correct comments.
10907
10908	* c-opts.c (c_common_init_options): No need to mark
10909	flag_bounds_check as unspecified.
10910	(c_common_post_options): And no need to set it from
10911	flag_bounded_pointers if its still unspecified.
10912
10913	* doc/invoke.texi: Fix some overfull hboxes in "make dvi".
10914	Document --version, -feliminate-dwarf-2-dups, -fno-sched-interblock,
10915	-fno-sched-spec, -fsched-spec-load, -fsched-spec-load-dangerous,
10916	-fsched-verbose=n, -fno-branch-count-reg and -fbounds-check.
10917
109182002-10-19  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
10919	    Mark Mitchell  <mark@codesourcery.com>
10920
10921	* alpha-protos.h (alpha_output_mi_thunk_osf): Update signature to
10922	match target.h.
10923	* arm-protos.h, arm.c (arm_output_mi_thunk): Likewise.
10924	* cris-protos.h, cris.c (cris_asm_output_mi_thunk): Likewise.
10925	* frv-protos.h, frv.c (frv_asm_output_mi_thunk): Likewise.
10926	* i386-protos.h, i386.c (x86_output_mi_vcall_thunk,
10927	x86_output_mi_thunk): Likewise.
10928	* i960-protos.h, i960.c (i960_output_mi_thunk): Likewise.
10929	* ia64-protos.h, ia64.c (ia64_output_mi_thunk): Likewise.
10930	* m68k-protos.h, m68k.c (m68k_output_mi_thunk): Likewise.
10931	* mmix-protos.h, mmix.c (mmix_asm_output_mi_thunk): Likewise.
10932	* rs6000-protos.h, rs6000.c (output_mi_thunk): Likewise.
10933	* s390-protos.h, s390.c (s390_output_mi_thunk): Likewise.
10934	* stormy16-protos.h, stormy16.c (xstormy16_asm_output_mi_thunk):
10935	Likewise.
10936	* vax-protos.h, vax.c (vax_output_mi_thunk): Likewise.
10937
10938	* target.h (gcc_target): Update output_mi_thunk and
10939	output_mi_vcall_thunk to take a HOST_WIDE_INT delta and
10940	vcall_index.
10941
10942	* config/alpha/alpha.c: Replace ASM_OUTPUT_MI_THUNK with
10943	TARGET_ASM_OUTPUT_MI_THUNK in comments.
10944	* config/alpha/vms.h (ASM_OUTPUT_MI_THUNK): Don't #undef it.
10945	(TARGET_ASM_OUTPUT_MI_THUNK): #undef it.
10946	* config/frv/frv.h (DEFAULT_VTABLE_THUNKS): Remove definition.
10947	* config/i386/i386-protos.h (x86_output_mi_vcall_thunk): Update
10948	signature.
10949	* config/i386/i386.c (x86_output_mi_vcall_thunk): Likewise.
10950	* config/i386/openbsd.h: Replace ASM_OUTPUT_MI_THUNK with
10951	TARGET_ASM_OUTPUT_MI_THUNK in comments.
10952	* config/i960/i960.h (ASM_OUTPUT_MI_THUNK): Don't define.
10953	(TARGET_ASM_OUTPUT_MI_THUNK): Do define.
10954	* config/m68k/openbsd.h: Replace ASM_OUTPUT_MI_THUNK with
10955	TARGET_ASM_OUTPUT_MI_THUNK in comments.
10956	* config/rs6000/rs6000.c (rs6000_ra_ever_killed): Remove #ifdef
10957	ASM_OUTPUT_MI_THUNK and replace with check of targetm.
10958
10959	* doc/tm.texi (TARGET_ASM_OUTPUT_MI_THUNK): Update signature.
10960	(TARGET_ASM_OUTPU_MI_VCALL_THUNK): Likewise.
10961
109622002-10-19  Brad Lucier  <lucier@math.purdue.edu>
10963
10964	* real.c (do_add): Fix 0+0 sign corner case.
10965	(do_divide): Fix Inf/0 corner case.
10966
109672002-10-20  Jan Hubicka  <jh@suse.cz>
10968
10969	* i386.c (classify_argument): Pass MMX arguments in memory
10970	(ix86_expand_builtin): Expand proper address mode for cflush.
10971	* i386.md (movdqa): Fix typo.
10972	(sse2_cflush): Accept DImode addresses.
10973
10974	* xmmintrin.h (_mm_sqrt_sd): Accept two arguments.
10975	(_mm_max_sd): Fix pasto.
10976	(_mm_storeh_pd, _mm_storel_pd): Fix.
10977
10978	* i386.c (bdesc_comi): Fix to match specification.
10979	(ix86_expand_sse_comi): Emit the comparison properly.
10980	* i386.md (sse_comi, sse2_comi, sse_ucomi, sse2_ucomi):
10981	Do not use comparison operator.
10982	(vnmaskcmp): Fix template.
10983
10984	* xmmintrin.h (_mm_cvtps_pi16): Fix.
10985
109862002-10-19  Sebastian Pop  <s.pop@laposte.net>
10987
10988	* dependence.c : Removed.
10989	* Makefile.in : Remove dependence.o.
10990
109912002-10-19  Jan Hubicka  <jh@suse.cz>
10992
10993	* mmintrin.h (__m64): typedef it to v2si.
10994	(_mm_cvtsi32_si64, _mm_cvtsi32_si64_mm_sll_pi16,
10995	_mm_sll_pi32, _mm_sll_pi64, _mm_slli_pi64, _mm_sra_pi16,
10996	_mm_sra_pi32, _mm_srl_pi16, _mm_srl_pi32, _mm_srl_pi64,
10997	_mm_srli_pi64, _mm_and_si64, _mm_andnot_si64,
10998	_mm_or_si64, _mm_xor_si64): Add neccesary casts.
10999	* xmmintrin.h (_mm_setzero_si64): Likewise.
11000
11001	* i386.h (ALIGN_MODE_128): Update comment; add missing modes
11002	(SSE_REG_MODE_P, MMX_REG_MODE_P): New macros.
11003
11004	PR target/7693
11005	Patch by Shawn Wagner
11006	* mmintrin.h: Replace pi64 by si64.
11007
110082002-10-18  David Edelsohn  <edelsohn@gnu.org>
11009
11010	* rs6000.md (movdf_hardfloat32): Order alternatives consistently.
11011	Use length of 4 not *.
11012	(movdf_hardfloat64): Same.  Support DFmode moves to/from CTR/LR.
11013	(movdf_softfloat64): Likewise.
11014	(movdi_internal32): Use length of 4 not *.
11015	(movti_power): Same.
11016	(ctrsi, ctrdi): Same.
11017
110182002-10-18  Zack Weinberg  <zack@codesourcery.com>
11019
11020	* c-decl.c (start_decl): Point users of the old initialized-
11021	typedef extension at __typeof__.
11022
110232002-10-18  Richard Henderson  <rth@redhat.com>
11024
11025	* real.c (cmp_significand_0, rtd_divmod, ten_to_mptwo): New.
11026	(real_to_decimal): Re-implement using the logic from the
11027	gcc 3.2 etoasc.  Comment heavily.
11028	(div_significands): Simplify loop startup and comparison logic.
11029
110302002-10-18  Mark Mitchell  <mark@codesourcery.com>
11031
11032	* target-def.h (TARGET_ASM_OUTPUT_MI_THUNK): Default to NULL.
11033	(TARGET_ASM_OUTPUT_MI_VCALL_THUNK): Likewise.
11034	(TARGET_ASM_OUT): Add them.
11035	* target.h (asm_out): Add output_mi_thunk and
11036	output_mi_vcall_thunk.
11037	* config/alpha/alpha.h (ASM_OUTPUT_MI_THUNK): Rename to ...
11038	(TARGET_ASM_OUTPUT_MI_THUNK): ... this.
11039	* config/arm/arm-protos.h (arm_output_mi_thunk): Declare.
11040	* config/arm/arm.c (arm_output_mi_thunk): Define.
11041	* config/arm/arm.h (ASM_OUTPUT_MI_THUNK): Rename to ...
11042	(TARGET_ASM_OUTPUT_MI_THUNK): ... this.
11043	* config/cris/cris.h (ASM_OUTPUT_MI_THUNK): Rename to ...
11044	(TARGET_ASM_OUTPUT_MI_THUNK): ... this.
11045	* config/frv/frv.h (ASM_OUTPUT_MI_THUNK): Rename to ...
11046	(TARGET_ASM_OUTPUT_MI_THUNK): ... this.
11047	* config/i386/i386-protos.h (x86_output_mi_thunk): Adjust
11048	prototype.
11049	(x86_output_mi_vcall_thunk): Declare.
11050	* config/i386/i386.c (override_options): Clear
11051	output_mi_vcall_thunk in 64-bit mode.
11052	(ix86_fntype_regparm): New function.
11053	(ix86_return_pops_args): Use it.
11054	(ia32_this_parameter): New function.
11055	(x86_output_mi_vcall_thunk): New function.
11056	(x86_output_mi_thunk): Use it
11057	* config/i386/unix.h (TARGET_ASM_OUTPUT_MI_THUNK): Adjust.
11058	(TARGET_ASM_OUTPUT_MI_VCALL_THUNK): Define.
11059	* config/i960/i960-protos.h (i960_output_mi_thunk): Declare.
11060	* config/i960/i960.c (i960_output_mi_thunk): New function.
11061	* config/i960/i960.h (ASM_OUTPUT_MI_THUNK): Adjust.
11062	* config/ia64/ia64-protos.h (ia64_output_mi_thunk): Declare.
11063	* config/ia64/ia64.c (ia64_output_mi_thunk): Define.
11064	* config/ia64/ia64.h (ASM_OUTPUT_MI_THUNK): Rename to ...
11065	(TARGET_ASM_OUTPUT_MI_THUNK): ... this.
11066	* config/m68k/m68k-protos.h (m68k_output_mi_thunk): New function.
11067	* config/m68k/linux.h (ASM_OUTPUT_MI_THUNK): Rename to ...
11068	(TARGET_ASM_OUTPUT_MI_THUNK): ... this.
11069	* config/m68k/netbsd-elf.h (ASM_OUTPUT_MI_THUNK): Rename to ...
11070	(TARGET_ASM_OUTPUT_MI_THUNK): ... this.
11071	* config/mmix/mmix.h (ASM_OUTPUT_MI_THUNK): Rename to ...
11072	(TARGET_ASM_OUTPUT_MI_THUNK): ... this.
11073	* config/pa/pa.h (ASM_OUTPUT_MI_THUNK): Rename to ...
11074	(TARGET_ASM_OUTPUT_MI_THUNK): ... this.
11075	* config/rs6000/sysv4.h (ASM_OUTPUT_MI_THUNK): Rename to ...
11076	(TARGET_ASM_OUTPUT_MI_THUNK): ... this.
11077	* config/s390/s390-protos.h (s390_output_mi_thunk): Declare.
11078	* config/s390/s390.c (s390_output_mi_thunk): Define.
11079	* config/s390/s390.h (ASM_OUTPUT_MI_THUNK): Rename to ...
11080	(TARGET_ASM_OUTPUT_MI_THUNK): ... this.
11081	* config/sparc/sparc.h (ASM_OUTPUT_MI_THUNK): Rename to ...
11082	(TARGET_ASM_OUTPUT_MI_THUNK): ... this.
11083	* config/stormy16/stormy16.h (ASM_OUTPUT_MI_THUNK): Rename to ...
11084	(TARGET_ASM_OUTPUT_MI_THUNK): ... this.
11085	* config/vax/vax-protos.h (vax_output_mi_thunk): Declare.
11086	* config/vax/vax.c (vax_output_mi_thunk): Define.
11087	* config/vax/vax.h (ASM_OUTPUT_MI_THUNK): Rename to ...
11088	(TARGET_ASM_OUTPUT_MI_THUNK): ... this.
11089	* doc/tm.texi: Adjust documentation.
11090
110912002-10-18  Jason Thorpe  <thorpej@wasabisystems.com>
11092
11093	* config/netbsd.h (NETBSD_ENABLE_EXECUTE_STACK): Define
11094	__enable_execute_stack function.
11095	* config/alpha/netbsd.h (TRANSFER_FROM_TRAMPOLINE): Define
11096	as NETBSD_ENABLE_EXECUTE_STACK.
11097	* config/i386/netbsd-elf.h (TRANSFER_FROM_TRAMPOLINE): Ditto.
11098	* config/i386/netbsd.h (TRANSFER_FROM_TRAMPOLINE): Ditto.
11099	* config/i386/netbsd64.h (TRANSFER_FROM_TRAMPOLINE): Ditto.
11100	* config/sparc/netbsd-elf.h (TRANSFER_FROM_TRAMPOLINE): Ditto.
11101	* config/sparc/netbsd.h (TRANSFER_FROM_TRAMPOLINE): Ditto.
11102
111032002-10-18  Jason Thorpe  <thorpej@wasabisystems.com>
11104
11105	* config/i386/i386.c (x86_initialize_trampoline): Emit a call
11106	to __enable_execute_stack with the address of the trampoline
11107	if TRANSFER_FROM_TRAMPOLINE is defined.
11108	* config/i386/i386.h (TARGET_64BIT): Expand to a compile-time
11109	constant if building libgcc2.
11110
111112002-10-17  Roger Sayle  <roger@eyesopen.com>
11112
11113	* doc/c-tree.texi: Update description of COND_EXPR tree nodes.
11114
111152002-10-17  Geoffrey Keating  <geoffk@apple.com>
11116
11117	* config/rs6000/rs6000.h (HARD_REGNO_MODE_OK): Allow arbitrary modes
11118	in CTR/LR/MQ.
11119	* config/rs6000/rs6000.md (movcc_internal1): Support CCmode moves
11120	to/from CTR/LR/MQ.
11121	(movsf_hardfloat): Support SFmode moves to/from CTR/LR/MQ.
11122	(movsf_softfloat): Likewise.
11123
111242002-10-17  Janis Johnson  <janis187@us.ibm.com>
11125
11126	* Makefile.in (site.exp): Add ALT_CXX_UNDER_TEST and COMPAT_OPTIONS.
11127
111282002-10-17  Jason Thorpe  <thorpej@wasabisystems.com>
11129
11130	* config/alpha/alpha.c (alpha_initialize_trampoline): Use
11131	tramp, not addr, to pass the trampoline address to
11132	__enable_execute_stack.
11133
111342002-10-17  Jan Hubicka  <jh@suse.cz>
11135
11136	* mmintrin.h: Guard by __MMX__
11137	* xmmintrin.h: Guard by __SSE__
11138
11139	PR other/8062
11140	* xmmintrin.h (_MM_SHUFFLE2): New macro.
11141	(_mm_load*_?d): New functions.
11142	(_mm_set*_?d): New functions.
11143	(_mm_store*_?d): New functions.
11144
111452002-10-16  Jan Hubicka  <jh@suse.cz>
11146
11147	Really commit patch announced at Oct 14
11148	PR c/7344
11149	* predict.c (can_predict_insn_p): New function.
11150	(estimate_probability): Avoid unnecesary work.
11151	(process_note_prediction): Likewise.
11152	* toplev.c (rest_of_compilation): Account early branch prediction pass
11153	as TV_BRANCH_PROB.
11154
11155	PR other/8048
11156	Found by Ian Ollmann
11157	* xmmintrin.h (_mm_shuffle_pd): Fix typo.
11158	(_mm_load?_pd): Likewise.
11159	(_mm_store?_pd): Likewise.
11160
11161	PR target/7386
11162	* i386.c (builtin_description):Drop cmpg[te]s[sd].
11163	* xmmintrin.h (__mm_cmpg[te]_s[sd]): Rewrite using
11164	swapped alternative.
11165
11166	PR opt/7630
11167	* reload1.c (reload_inner_reg_of_subreg): New argument output;
11168	(push_reload): Update call.
11169
111702002-10-17  Richard Sandiford  <rsandifo@redhat.com>
11171
11172	* config.gcc (mips*-*-*): Add OBJECT_FORMAT_ELF to $tm_defines
11173	if using mips/elf.h or mips/elf64.h.
11174	* config/mips/elf.h (OBJECT_FORMAT_ELF): Remove.
11175	* config/mips/elf64.h (OBJECT_FORMAT_ELF): Remove.
11176
111772002-10-16  Aldy Hernandez  <aldyh@redhat.com>
11178
11179	* config/rs6000/rs6000.c (function_arg): Set inner mode of V1DI to
11180	SI.
11181
111822002-10-16  Ulrich Weigand  <uweigand@de.ibm.com>
11183
11184	* config/s390/linux.h (ASM_DOUBLE, _ASM_OUTPUT_LONG): Remove.
11185	(LPREFIX): Likewise.
11186	(ASM_COMMENT_START, LOCAL_LABEL_PREFIX, ASM_FORMAT_PRIVATE_NAME,
11187	ASM_OUTPUT_ADDR_VEC_ELT, ASM_OUTPUT_ADDR_DIFF_ELT,
11188	ASM_OUTPUT_ALIGN, ASM_OUTPUT_SKIP, ASM_OUTPUT_ALIGNED_BSS,
11189	TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP, BSS_SECTION_ASM_OP,
11190	GLOBAL_ASM_OP, ASM_OUTPUT_MI_THUNK): Move to s390.h.
11191
11192	* config/s390/s390.h (ASM_COMMENT_START, LOCAL_LABEL_PREFIX,
11193	ASM_FORMAT_PRIVATE_NAME, ASM_OUTPUT_ALIGN, ASM_OUTPUT_SKIP,
11194	ASM_OUTPUT_ALIGNED_BSS, TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP,
11195	BSS_SECTION_ASM_OP): Move from linux.h.
11196	(ASM_OUTPUT_ADDR_VEC_ELT, ASM_OUTPUT_ADDR_DIFF_ELT): Likewise.
11197	Also, use ASM_GENERATE_INTERNAL_LABEL instead of LPREFIX.
11198
11199	* config/s390/s390.c (s390_function_profiler): Use
11200	ASM_GENERATE_INTERNAL_LABEL instead of LPREFIX.
11201
112022002-10-15  Richard Henderson  <rth@redhat.com>
11203
11204	* real.c (real_to_decimal): Accept BUF_SIZE and CROP_TRAILING_ZEROS
11205	as arguments.  Bound DIGITS by the available buffer size.
11206	(real_to_hexadecimal): Likewise.
11207	* real.h (real_to_decimal, real_to_hexadecimal): Update prototypes.
11208	(REAL_VALUE_TO_DECIMAL): Remove.
11209	* c-common.c, c-pretty-print.c, print-rtl.c, print-tree.c,
11210	sched-vis.c, config/arc/arc.c, config/c4x/c4x.c, config/fr30/fr30.c,
11211	config/i370/i370.h, config/i386/i386.c, config/i960/i960.c,
11212	config/ip2k/ip2k.c, config/m32r/m32r.c, config/m68hc11/m68hc11.c,
11213	config/m68k/hp320.h, config/m68k/m68k.h, config/m68k/sun2o4.h,
11214	config/m68k/sun3.h, config/mips/mips.c, config/ns32k/ns32k.c,
11215	config/pdp11/pdp11.h, config/vax/vax.h: Update all callers to
11216	use real_to_decimal directly, and with the proper arguments.
11217	* doc/tm.texi (REAL_VALUE_TO_DECIMAL): Remove.
11218
112192002-10-15  Jim Wilson  <wilson@redhat.com>
11220
11221	* reload1.c (merge_assigned_reloads): After converting overlapping
11222	reloads to RELOAD_OTHER, abort if there are now conflicting reloads.
11223
11224	* config/i386/i386.md (adddi3_1): Add call to ix86_binary_operator_ok.
11225
112262002-10-15  Jan Hubicka  <jh@suse.cz>
11227
11228	* expr.c (do_tablejump): Fix typo in my previous commit.
11229
112302002-10-15  Richard Sandiford  <rsandifo@redhat.com>
11231
11232	* config/mips/vr.h (DRIVER_SELF_SPECS): Change %<mgp32 to %{<mgp32}.
11233
112342002-10-15  Ulrich Weigand  <uweigand@de.ibm.com>
11235
11236	* config/s390/s390.c (s390_split_branches): Add return
11237	value.  Add parameters TEMP_REG and TEMP_USED.  Use unspec 104.
11238
11239	(find_base_register_in_addr): New function.
11240	(find_base_register_ref): New function.
11241	(replace_base_register_ref): New function.
11242
11243	(struct constant_pool): Add members pool_insn, insns, and anchor.
11244	Remove member last_insn.
11245	(s390_start_pool): Initialize them.
11246	(s390_end_pool): Emit pool placeholder insn.
11247	(s390_add_pool_insn): New function.
11248	(s390_find_pool): Use insns bitmap instead of addresses.
11249	(s390_dump_pool): Replace placeholder insn.  Emit anchor.
11250	Replace unspec 104 by local-pool-relative references.
11251	(s390_output_constant_pool): Output anchor label if required.
11252	(s390_output_symbolic_const): Handle unspec 104 and 105.
11253	(s390_add_pool): Remove, replace by ...
11254	(s390_add_constant, s390_find_constant): ... these new functions.
11255	(s390_add_anchor): New function.
11256
11257	(s390_chunkify_pool): Delete, replace by ...
11258	(s390_chunkify_start, s390_chunkify_finish,
11259	s390_chunkify_cancel): ... these new functions.
11260	(s390_optimize_prolog): Add parameter TEMP_REGNO.
11261	Recompute register live data for special registers.
11262	(s390_fixup_clobbered_return_reg): New function.
11263	(s390_machine_dependent_reorg): Rewrite to use new
11264	s390_chunkify_... routines.
11265
11266	config/s390/s390.md ("reload_base"): Rename to ...
11267	("reload_base_31"): ... this.
11268	("reload_base_64"): New insn.
11269	("reload_base2"): Remove.
11270	("reload_anchor"): New insn.
11271	("pool"): New insn.
11272
11273	s390.c (s390_pool_overflow): Remove.
11274	s390.h (s390_pool_overflow): Likewise.
11275	s390.md ("cjump", "icjump", "doloop_si"): Remove s390_pool_overflow.
11276
112772002-10-15  J"orn Rennecke <joern.rennecke@superh.com>
11278
11279	* sh.md (movv8qi_i+2): Don't split if source is -1.
11280
112812002-10-15  Janis Johnson  <janis187@us.ibm.com>
11282
11283	* doc/install.texi: Formatting changes for conformance to HTML 4.01.
11284
112852002-10-15  Ulrich Weigand  <uweigand@de.ibm.com>
11286
11287	PR opt/7409
11288	* loop.c (loop_regs_scan): Mark registers used for function
11289	argument passing as MAY_NOT_OPTIMIZE.
11290
112912002-10-14  Jan Hubicka  <jh@suse.cz>
11292
11293	* i386.md (movv2di_internal): New pattern.
11294	(movv2df_internal, movv8hi_internal, movv16qi_internal): Fix predicate.
11295	(movv2di): New expander.
11296	* i386.c (ix86_preferred_reload_class): Return NO_REGS for vector operands.
11297
11298	* i386.c (ix86_expand_timode_binop_builtin): Delete.
11299	(builtin_description): Add SSE1 logicals; rename SSE2 logicals.
11300	(ix86_init_mmx_sse_builtins): Kill SSE1 logicals.
11301	(ix86_expand_builtin): Likewise.
11302	* i386.h (sse_andti4_df_1, sse_andti3_df_2, sse_andti3_sf_1, sse_andti3_sf_2,
11303	sse_andti3,
11304	sse_andnti4_df_1, sse_andti3_df_2, sse_andti3_sf_1, sse_andti3_sf_2,
11305	sse_andnti3,
11306	sse_orti4_df_1, sse_orti3_df_2, sse_orti3_sf_1, sse_orti3_sf_2,
11307	sse_orti3,
11308	sse_xorti4_df_1, sse_xorti3_df_2, sse_xorti3_sf_1, sse_xorti3_sf_2,
11309	sse_xorti3): Kill.
11310	(sse_andv4sf3, sse_andnv4sf3, sse_orv2df3, sse_xorv2df3, sse_andv2df3,
11311	 sse_andnv2df3, sse_orv2df3, sse_xorv2df3): New expanders.
11312	(*sse_andv4sf3, *sse_andnv2df3, *sse_orv4sf3, *sse_xorv4sf3, *sse_andv2df3,
11313	 *sse_andnv2df3, *sse_orv2df3, *sse_xorv2df3): New patterns.
11314	(*sse_andsf3, *sse_andndf3, *sse_ordf3, *sse_xordf3, *sse_anddf3,
11315	 *sse_andndf3, *sse_orv2df3, *sse_xorv2df3): New patterns.
11316
11317	* xmmintrin.h (__m128i): Define as __v2di.
11318
11319	PR c++/6419
11320	(expand_expr): Use DECL_RTL_SET_P.
11321
113222002-10-14  Roger Sayle  <roger@eyesopen.com>
11323
11324	* combine.c (simplify_set):  Treat MODE_CC registers like cc0.
11325
113262002-10-14  Roger Sayle  <roger@eyesopen.com>
11327	    Zack Weinberg <zack@codesourcery.com>
11328
11329	* config/i386/i386.c (k6_cost): Correct typo.
11330
113312002-10-14  Mark Mitchell  <mark@codesourcery.com>
11332
11333	PR optimization/6631
11334	* alias.c (objects_must_conflict_p): Check honor_readonly when
11335	examining TYPE_READONLY.
11336	* function.c (assign_stack_temp_for_type): Likewise.
11337
113382002-10-14  Falk Hueffner  <falk.hueffner@student.uni-tuebingen.de>
11339
11340	* config/alpha/alpha.md (extendsidi2_nofix, extendsidi2_fix):
11341	Swap zero extension arguments.
11342	(umaxhi3): Fix instruction class.
11343	PR target/7211
11344	(prefetch): Fix prefetch instructions.
11345	PR target/7238
11346	(pkwb): Fix output constraint.
11347
113482002-10-14  Alexandre Oliva  <aoliva@redhat.com>
11349
11350	* config/mips/mips.c (print_operand): Increase buffer size for
11351	real numbers.
11352
113532002-10-14  Richard Henderson  <rth@redhat.com>
11354
11355	PR opt/8165
11356	* gcse.c (adjust_libcall_notes): Revert last change.
11357	* simplify-rtx.c (simplify_replace_rtx): Handle LO_SUM.
11358
113592002-10-14  Andrew Haley  <aph@redhat.com>
11360
11361	* tree-inline.c (remap_block): All local class initialization
11362	flags go in the outermost scope.
11363	(expand_call_inline): Call java_inlining_map_static_initializers.
11364	(expand_call_inline): Call java_inlining_merge_static_initializers.
11365	* java/lang.c (merge_init_test_initialization): New.
11366	(java_inlining_merge_static_initializers): New.
11367	(inline_init_test_initialization): New.
11368	(java_inlining_map_static_initializers): New.
11369
11370	* tree-inline.c (expand_call_inline): Convert retvar to expected
11371	type.
11372
113732002-10-14  Graham Stott  <graham.stott@btinternet.com>
11374
11375	* stmt.c (decl_conflicts_with_clobbers_p): Add REG_P check.
11376
113772002-10-14  Aldy Hernandez  <aldyh@redhat.com>
11378
11379	* stmt.c: Fix typo in comment.
11380
113812002-10-14  J"orn Rennecke <joern.rennecke@superh.com>
11382
11383	* c-common.c (c_common_type_for_mode): Add V2HImode case.
11384	* tree.c (build_common_tree_nodes_2): Initialize
11385	unsigned_V2HI_type_node and V2HI_type_node.
11386	* tree.h (enum tree_index): Add TI_UV2HI_TYPE and TI_V2HI_TYPE.
11387	(unsigned_V2HI_type_node, V2HI_type_node): Define.
11388
113892002-10-14  Jakub Jelinek  <jakub@redhat.com>
11390
11391	* config/i386/i386.h (ASM_OUTPUT_REG_PUSH, ASM_OUTPUT_REG_POP):
11392	Handle TARGET_64BIT.
11393
113942002-10-14  Richard Sandiford  <rsandifo@redhat.com>
11395
11396	* config/mips/vr.h (DRIVER_SELF_SPECS): Define.
11397	* config/mips/t-vr (MULTILIB_OPTIONS): Remove mlong32.
11398	(MULTILIB_DIRNAMES): Remove long32.
11399	(MULTILIB_EXCEPTIONS): Don't build -mabi=32 -mgp32 multilibs.
11400	(MULTILIB_REDUNDANT_DIRS): Remove.
11401
114022002-10-14  Richard Sandiford  <rsandifo@redhat.com>
11403
11404	* doc/tm.texi (DRIVER_SELF_SPECS): Document.
11405	* gcc.c (driver_self_specs): New variable.
11406	(do_self_spec): New function.
11407	(main): Use it to process driver_self_specs.
11408
114092002-10-13  Richard Henderson  <rth@redhat.com>
11410
11411	* rtl.c (shallow_copy_rtx): Use memcpy for the entire node.
11412
114132002-10-12  Neil Booth  <neil@daikokuya.co.uk>
11414
11415	PR preprocessor/7862
11416	PR preprocessor/8190
11417	* gcc.c (cpp_unique_options): Don't delete .d files.
11418	Remove stray whitespace.
11419
114202002-10-12  Naohiko Shimizu  <pshimizu@fa2.so-net.ne.jp>
11421
11422	* pdp11.h (ASM_OUTPUT_SKIP): Add preceding 0 for octal constant.
11423	(ASM_OUTPUT_COMMON, ASM_OUTPUT_LOCAL): Likewise.
11424	* pdp11.c (pdp11_output_function_prologue): 0%o -> %#o.
11425	(pdp11_output_function_epilogue, output_ascii): Likewise.
11426	(output_addr_const_pdp11): Likewise.
11427	* pdp11.md (movdi): Use offsetable memory for floating store.
11428	(lshrsi3, negsi2): Delete irrelevant comment.
11429
114302002-10-11  Geoffrey Keating  <geoffk@apple.com>
11431
11432	* cse.c (mention_regs): Set SUBREG_TICKED to the register number,
11433	not the address of the REG.
11434	(struct cse_reg_info): Make subreg_ticked unsigned.
11435
114362002-10-11  Janis Johnson  <janis187@us.ibm.com>
11437
11438	* doc/compat.texi: Add info about C++ libraries.
11439
114402002-10-11  Richard Henderson  <rth@redhat.com>
11441
11442	PR opt/8165
11443	* gcse.c (adjust_libcall_notes): Also adjust notes for INSN.
11444
114452002-10-11  John David Anglin  <dave@hiauly1.hia.nrc.ca>
11446
11447	* cfganal.c (dfs_enumerate_from): Use PARAMS.
11448	* genautomata.c (output_insn_code_cases): Likewise.
11449	* real.c (real_format): Likewise.
11450	* tree.c (tree_size): Revise expressions using TREE_CODE_LENGTH to
11451	ensure value is promoted before doing subtraction.
11452
114532002-10-11  Jan Hubicka  <jh@suse.cz>
11454
11455	* calls.c (expand_call): Simplify noreturn call.
11456
11457	PR c/7344
11458	* cfgbuild.c (make_edges): Create edge cache when we do have
11459	large jumptable.
11460	* expr.c (do_tablejump): Note size of maximal jumptable.
11461	* function.c (prepare_function_start): Zero out size.
11462	* function.h (function): Add max_jumptable_ents.
11463
11464	* cfgcleanup.c (insn_match_p): Verify sibcall flag for calls to.
11465
114662002-10-11  J"orn Rennecke <joern.rennecke@superh.com>
11467
11468	* sh.md (movv8qi_i+2): For V8QI destinations, generate V4HI
11469	register for mperm_w operation.
11470
114712002-10-11  J"orn Rennecke <joern.rennecke@superh.com>
11472
11473	* emit-rtl.c (gen_lowpart_common): When asked to make a vector from
11474	an integer, use simplify_gen_subreg.
11475
114762002-10-10  Aldy Hernandez  <aldyh@redhat.com>
11477
11478	* extend.texi (Vector Extensions): Remove comment about single
11479	element vectors.
11480
114812002-10-10  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
11482
11483	* fold-const.c (size_htab_hash): Use htab_hash_pointer.
11484	* function.c (insns_for_mem_hash): Likewise.
11485	* varasm.c (STRHASH): Likewise.
11486
114872002-10-10  Stuart Hastings  <stuart@apple.com>
11488
11489	* cse.c (struct cse_reg_info): Add subreg_ticked.
11490	(SUBREG_TICKED): New.
11491	(get_cse_reg_info): Initialize SUBREG_TICKED.
11492	(mention_regs): Use it.
11493	(invalidate): Set SUBREG_TICKED.
11494	(invalidate_for_call): Likewise.
11495	(addr_affects_sp_p): Likewise.
11496
114972002-10-10  Jakub Jelinek  <jakub@redhat.com>
11498
11499	* config/i386/i386.md (tls_local_dynamic_base): Put pic reg
11500	into proper operand.
11501
115022002-10-10  Denis Chertykov  <denisc@overta.ru>
11503
11504	* config/ip2k/ip2k.c (function_epilogue): Optimize stack
11505	deallocation.
11506	* config/ip2k/libgcc.S: Combine routines used by function
11507	epilogue.
11508
115092002-10-10  Jim Wilson  <wilson@redhat.com>
11510
11511	* cse.c (fold_rtx): Don't perform associative optimization for DIV and
11512	UDIV.
11513
115142002-10-10  David Edelsohn  <edelsohn@gnu.org>
11515
11516	* config/rs6000/aix52.h: New file.
11517	* config/rs6000/t-aix52: New File.
11518	* config.gcc (rs6000-ibm-aix5.1.*): New entry.
11519	(rs6000-ibm-aix[56789].*): Default to AIX 5.2.
11520
115212002-10-10  Jan Hubicka  <jh@suse.cz>
11522
11523	PR target/5610
11524	* invoke.texi (-msse-math): Kill
11525	(-msse): Add note to mfpmath=sse.
11526
115272002-10-10  Jan Hubicka  <jh@suse.cz>
11528
11529	PR target/7723
11530	* i386.c (ix86_expand_vector_move): Do not generate const0->mem moves.
11531
115322002-10-10  Neil Booth  <neil@daikokuya.co.uk>
11533
11534	PR preprocessor/8179
11535	* gcc.c (cpp_options): Add {ansi}, move %{m*} to same location
11536	as cc1_options.
11537	(default_compilers): Pass debug options when preprocessing
11538	stdin.
11539
115402002-10-06  Richard Henderson  <rth@redhat.com>
11541
11542	* toplev.c (rest_of_compilation): Revert opt/2960 change.
11543
115442002-10-09  Zack Weinberg  <zack@codesourcery.com>
11545
11546	PR c/7353
11547	* c-decl.c (start_decl): Unconditionally issue error for
11548	'typedef foo = bar'.
11549	(finish_decl): Remove special case for TYPE_DECL with initializer.
11550
11551	* doc/extend.texi: Delete "Naming Types" section.  Change all
11552	cross-references to that section to refer to "Typeof" instead.
11553	Add the useful safe-max()-macro example from "Naming Types" to
11554	"Typeof", rewritten using that extension.  Add some compatibility
11555	notes to "Typeof."
11556
115572002-10-09  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
11558
11559	* loop.c: Revert 2002-08-15 change.
11560	(LOOP_REGNO_NREGS): Ensure type is int.
11561
115622002-10-09  David Edelsohn  <edelsohn@gnu.org>
11563
11564	* config/rs6000/rs6000.md (extenddftf2): Change to define_insn
11565	which copies first FPR and clears second.
11566	(extendsftf2): Same.
11567	(floatditf2): Fix typo.
11568	(floatsitf2): Same.
11569	(fix_trunctfdi2): Same.
11570	(fix_trunctfsi2): Same.
11571
115722002-10-09  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
11573
11574	* conflict.c (arc_hash): Change return type to hashval_t.
11575	* cselib.c (get_value_hash): Likewise.
11576	* genautomata.c (automaton_decl_hash, insn_decl_hash, decl_hash,
11577	state_hash, automata_list_hash): Likewise.
11578	* read-rtl.c (def_hash): Likewise.
11579	* tree.c (type_hash_hash): Likewise.
11580
115812002-10-08  Aldy Hernandez  <aldyh@redhat.com>
11582
11583	* config/rs6000/rs6000.c (rs6000_ra_ever_killed): Call
11584	prologue_epilogue_contains instead of using REG_MAYBE_DEAD notes.
11585
115862002-10-09  J"orn Rennecke <joern.rennecke@superh.com>
11587
11588	* sh.md (ffssi2): Fix emitted code.
11589
115902002-10-09  Ulrich Weigand  <uweigand@de.ibm.com>
11591
11592	* cse.c (insn_live_p): Pass insn pattern, not full insn
11593	to may_trap_p.
11594
115952002-10-09  Neil Booth  <neil@daikokuya.co.uk>
11596
11597	* cppmacro.c (paste_tokens): Only allow / to paste with =.
11598
115992002-10-09  David Edelsohn  <edelsohn@gnu.org>
11600
11601	* config/rs6000/rs6000.md (movdf splitter): Use gen_int_mode on
11602	64-bit hosts.
11603	(movtf_internal): Reference correct displacement for second value
11604	in memory.
11605	(movtf splitter): Correct generation of constants in 64-bit mode.
11606
116072002-10-09  Alan Modra  <amodra@bigpond.net.au>
11608
11609	* libgcc2.c (__floatdisf): Properly cure double rounding.
11610
116112002-10-09  Gabriel Dos Reis  <gdr@integrable-solutions.net>
11612
11613	* c-common.c (cb_register_builtins): Define __WCHAR_MAX__.
11614	* doc/cpp.texi (Common Predefined Macros): Document.
11615
116162002-10-09  Gabriel Dos Reis  <gdr@integrable-solutions.net>
11617
11618	PR doc/7484
11619	* doc/invoke.texi (Option Summary): List
11620	-Wmissing-declarations as a C only option.
11621
116222002-10-08  Jakub Jelinek  <jakub@redhat.com>
11623
11624	* config/sparc/t-linux64 (MULTILIB_OPTIONS): Remove
11625	mno-app-regs|mcmodel=medany.
11626	(MULTILIB_DIRNAMES, MULTILIB_OSDIRNAMES): Remove alt.
11627	(MULTILIB_EXCEPTIONS, MULTILIB_EXCLUSIONS, MULTILIB_MATCHES): Remove.
11628	(CRTSTUFF_T_CFLAGS): Define.
11629
116302002-10-08  Roger Sayle  <roger@eyesopen.com>
11631
11632	PR target/8087
11633	* simplify-rtx.c (avoid_constant_pool_reference):  Allow constant
11634	pool references that are constructed using LO_SUM.
11635
116362002-10-08  Nathan Sidwell  <nathan@codesourcery.com>
11637
11638	* c-opts.c (c_common_decode_option): Add warn_strict_aliasing to
11639	-Wall.
11640	* c-typeck.c (build_c_cast): Use warn_strict_aliasing, tweak
11641	message.
11642	* flags.h (warn_strict_aliasing): Declare.
11643	* toplev.c (warn_strict_aliasing): Define.
11644	(lang_independent_options): Add it.
11645	* doc/invoke.texi (-Wstrict-aliasing): Document it.
11646
116472002-10-08  Zack Weinberg  <zack@codesourcery.com>
11648
11649	* system.h (GCCBUGURL): Delete.
11650	* version.c (bug_report_url): New.  Add commentary about
11651	modifying both these strings in modified distributions.
11652	* version.h: Declare bug_report_url.
11653
11654	* diagnostic.c, gcc.c, gcov.c: Globally replace GCCBUGURL with
11655	bug_report_url.
11656
116572002-10-08  Nick Clifton  <nickc@redhat.com>
11658
11659	* config/rs6000/spe.h (__ev_set_acc_u64): Use __ev_create_u64 to
11660	convert uint64_t into __ev64_opaque__.
11661	(__ev_set_acc_s64): Likewise, but using signed types.
11662
116632002-10-08  Ulrich Weigand  <uweigand@de.ibm.com>
11664
11665	* config/s390/s390.md ("*doloop_si_long"): Add missing operand.
11666	("*doloop_di_long"): Likewise.
11667
116682002-10-08  Jan Hubicka  <jh@suse.cz>
11669
11670	* print-rtl.c (print_rtx): Increase buffer size for real numbers.
11671
116722002-10-08  Richard Sandiford  <rsandifo@redhat.com>
11673
11674	* config/mips/mips.md (define_attr cpu): Add r4111.
11675
116762002-10-08  Anthony Green  <green@redhat.com>
11677
11678	* bitmap.c (bitmap_equal_p): Clear all bitmap_head fields.
11679
116802002-10-08  Michael Hayes  <m.hayes@elec.canterbury.ac.nz>
11681
11682	* config/c4x/c4x.c (c4x_print_operand): Enlarge buffer
11683	for REAL_VALUE_TO_DECIMAL output.
11684
116852002-10-07  David Edelsohn  <edelsohn@gnu.org>
11686
11687	* config/rs6000/rs6000.c (rs6000_override_options): Set
11688	real_format_for_mode for IBM extended format, if enabled.
11689	(easy_fp_constant): Add TFmode.
11690	(rs6000_legitimize_address): Add TFmode.
11691	(rs6000_legitimate_address): Same.
11692	(function_arg_advance): TFmode uses two FPRs.
11693	(rs6000_emit_prologue): Fix warning.
11694	(rs6000_output_function_epilogue): Add TFmode.
11695	(output_toc): Add TFmode.
11696	* rs6000.h (SLOW_UNALIGNED_ACCESS): Add TFmode.
11697	(LEGITIMATE_OFFSET_ADDRESS_P): Add TFmode.
11698	* rs6000.md (movtf splitter): Load TFmode constant.
11699
117002002-10-07  Dale Johannesen  <dalej@apple.com>
11701
11702	* rtl.h:  Add NOTE_PRECONDITIONED.
11703	* unroll.c:  Set it.
11704	* loop.c:  Set loop_info->preconditioned from it.
11705	* doloop.c:  Permit doloop treatment when loop_info->preconditoned.
11706
117072002-10-07  Richard Henderson  <rth@redhat.com>
11708
11709	* config/i960/i960.c (i960_setup_incoming_varargs): Create a
11710	new rtx for comparing the argument pointer against zero.
11711	(i960_va_start): Similarly.
11712
117132002-10-07  Richard Henderson  <rth@redhat.com>
11714
11715	* config/i960/i960.md (*): Use TFmode, not XFmode.
11716	* config/i960/i960.c (*): Likewise.
11717	(i960_arg_size_and_align): Remove XFmode alignment hack.
11718	(i960_round_align): Merge code from ROUND_TYPE_ALIGN.
11719	* config/i960/i960.h (LONG_DOUBLE_TYPE_SIZE): Use 128, not 96.
11720	(MAX_LONG_DOUBLE_TYPE_SIZE): Likewise.
11721	(DATA_ALIGNMENT, ROUND_TYPE_SIZE): Remove.
11722
117232002-10-07  Richard Henderson  <rth@redhat.com>
11724
11725	* config/fp-bit.c (EXTENDED_FLOAT_STUBS): Flush out all XF/TFmode
11726	entry points; use void return value and argument list.
11727
117282002-10-05  Naohiko Shimizu <nshimizu@keyaki.cc.u-tokai.ac.jp>
11729
11730	* t-pdp11: Add MULTILIB support for msoft-float.
11731	* pdp11.h (LEGITIMATE_CONSTANT_P): Fix soft-float case.
11732
11733	* t-pdp11: Add LIB2FUNCS_EXTRA.
11734	* pdp11.c (pdp11_output_function_prologue): Restrict offset to 16bit,
11735	add preceding 0 to the octal constant, rename 'fp' to 'r5', rename
11736	'fldd' to 'ldd', rename 'fstd' to 'std'.
11737	(pdp11_output_function_epilogue): Likewise.
11738	(output_move_quad): Make the comment gas compatible.
11739	(output_ascii): Add preceding 0 to the octal constant.
11740	(print_operand_address): Add pre_modify, post_modify.
11741	(output_addr_const_pdp11): Add preceding 0 to the octal constant.
11742	* pdp11.h (GO_IF_LEGITIMATE_ADDRESS) : Add 'movb' pre_modify case
11743	with the indication of Paul Koning.
11744	(PRINT_OPERAND): Fix floating constant.
11745	* pdp11.md (movdi): Restrict matching pattern.
11746	(movqi): Generalize the matching pattern.
11747	(movdf): Restrict matching pattern.
11748	(zero_extendqihi2): Change constant representation.
11749	(floatsidf2): Fix wrong operands.
11750	(addqi3): Fix wrong instruction name.
11751	(subqi3): Fix wrong instruction name.
11752	(andsi3, andhi3, andqi3): Simplify and fix to use 'bic'.
11753	(xorsi3): Fix wrong insn.
11754	(one_cmplqi2): Add two operand pattern.
11755	(lsrsi3): New.
11756	(negsi2): New.
11757	(call): Add register indirect case.
11758	(mod): Fix wrong subreg.
11759
117602002-10-06  Eric Botcazou  <ebotcazou@libertysurf.fr>
11761	    Volker Reichelt <reichelt@igpm.rwth-aachen.de>
11762
11763	PR c/7411
11764	* expr.c (expand_expr) [PLUS]: Simplify after the operands
11765	have been expanded in EXPAND_NORMAL mode.
11766
117672002-10-06  Richard Henderson  <rth@redhat.com>
11768
11769	* config/rs6000/rs6000.md (load_toc_v4_PIC_2): Fix base constraint.
11770
117712002-10-06  Richard Henderson  <rth@redhat.com>
11772
11773	PR optimization/2960
11774	* toplev.c (rest_of_compilation): Don't copy_loop_headers if
11775	optimize_size.
11776
117772002-10-06  Alexandre Oliva  <aoliva@redhat.com>
11778
11779	* config/mips/mips.h (SIZE_TYPE, PTRDIFF_TYPE): Override
11780	previously definitions.
11781
117822002-10-06  Frank Ch. Eigler  <fche@redhat.com>
11783
11784	* cppinit.c (init_standard_includes, parse_option): Use strncmp.
11785	* c-opts.c (find_opt): Similarly.
11786
117872002-10-05  Jakub Jelinek  <jakub@redhat.com>
11788
11789	* gcc.c (set_multilib_dir): Don't access *end.
11790	Use memcpy instead of strncpy.  Don't write beyond malloced buffer.
11791	(print_multilib_info): Don't show paths starting with ".:".
11792	* genmultilib: Add new option, "yes" if multilibs are enabled.
11793	Update comments.  If multilibs not enabled, print .:${osdirout}
11794	for each directory.  If multilibs are enabled, always print
11795	${dirout}:${osdirout}, even if the two are the same.
11796	* Makefile.in (s-mlib): Pass @enable_multilib@ to genmultilib.
11797	Pass all MULTILIB_* variables to genmultilib even if
11798	--disable-multilib but MULTILIB_OSDIRNAMES is not empty.
11799
118002002-10-04  Bruce Korb  <bkorb@gnu.org>
11801
11802	* fixinc/inclhack.def(hpux11_abs):  use format fix
11803	* fixinc/fixincl.x: regenerate
11804	* fixinc/tests/base/stdlib.h: accommodate new fix test
11805
118062002-10-05  Jan Hubicka  <jh@suse.cz>
11807
11808	* c-common.c (cb_register_builtins):  Use really_no_inline.
11809
118102002-10-04  David Edelsohn  <edelsohn@gnu.org>
11811
11812	* unroll.c (copy_loop_body): Remove REG_EQUAL note attached to
11813	copied instruction if the note is not loop invariant.
11814
118152002-10-04  Loren J. Rittle  <ljrittle@acm.org>
11816
11817	* gcc/ginclude/stddef.h: Support the FreeBSD 5 typedef system.
11818
118192002-10-04  Steve Ellcey  <sje@cup.hp.com>
11820
11821	* doc/invoke.texi (HPPA):  Add -mlinker-opt, -mgnu-ld,
11822	and -mhp-ld options to list of options.  Add -mgnu-ld
11823	and -mhp-ld option descriptions.
11824
118252002-10-04  Steve Ellcey  <sje@cup.hp.com>
11826
11827	* fixinc/inclhack.def (hpux11_abs):  New.
11828	(stdio_va_list): change __va_list__ to __gnuc_va_list.
11829	* fixinc/fixincl.x: Rebuild.
11830
118312002-10-04  Roger Sayle  <roger@eyesopen.com>
11832
11833	* config/i386/i386.h (processor_costs): Add new fields fadd,
11834	fmul, fdiv, fabs, fchs and fsqrt to costs structure.
11835	(RTX_COSTS): Use these fields to determine the RTX costs
11836	of floating point addition/subtraction, multiplication,
11837	division, fabs, negation and square root respectively.
11838	* config/i386/i386.c (size_cost): Provide instruction sizes
11839	for these new fields.
11840	(i386_cost, i486_cost, pentium_cost, pentiumpro_cost,
11841	k6_cost, athlon_cost, pentium4_cost): Provide typical cycle
11842	counts for these new fields for all x86 processor variants.
11843
118442002-10-04  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
11845
11846	* mips.c (mips_const_double_ok): Delete unused variable.
11847
11848	* gengtype.c (rtx_next): Change type to int.
11849
118502002-10-04  Andreas Jaeger  <aj@suse.de>
11851
11852	* config/i386/t-linux64 (MULTILIB_OSDIRNAMES): Fix value.
11853
118542002-10-04  Richard Henderson  <rth@redhat.com>
11855
11856	* real.h (SIGNIFICAND_BITS): Add one more word.
11857	(CONST_DOUBLE_FORMAT): Accomodate 6 words.
11858	* real.c (times_pten): New.
11859	(real_to_decimal, real_from_string): Use it.
11860	(sticky_rshift_significand): Use & to find modulus.
11861	(rshift_significand, lshift_significand): Likewise.
11862	(do_divide): Apply sticky bit after normalization.
11863	(real_to_decimal, real_to_hexadecimal): Fix sign of Inf and NaN.
11864
118652002-10-03  Andreas Jaeger  <aj@suse.de>
11866
11867	* gengtype.c (adjust_field_rtx_def): Cast variables of type size_t
11868	to unsigned long, adjust printf format string.
11869	(output_mangled_typename): Likewise.
11870
118712002-10-03  Jason Thorpe  <thorpej@wasabisystems.com>
11872
11873	* config/vax/vax.c (vax_output_function_prologue): Use asm_fprintf.
11874	* config/vax/vax.h (VAX_FUNCTION_PROFILER_NAME): New.
11875	(FUNCTION_PROFILER): Rewrite to use ASM_GENERATE_INTERNAL_LABEL,
11876	assemble_name, asm_fprintf, and VAX_FUNCTION_PROFILER_NAME.
11877	(ASM_OUTPUT_MI_THUNK): Use asm_fprintf instead of REGISTER_PREFIX.
11878	(PRINT_OPERAND_PUNCT_VALID_P): Fix comment.
11879	* config/vax/elf.h (FUNCTION_PROFILER): Remove.
11880	(VAX_FUNCTION_PROFILER_NAME): Redefine as "__mcount".
11881
118822002-10-03  Mark Mitchell  <mark@codesourcery.com>
11883
11884	* doc/invoke.texi (-Wabi): Document mangling bug.
11885
118862002-10-04  Alan Modra  <amodra@bigpond.net.au>
11887
11888	* config/rs6000/rs6000.c (rs6000_output_function_epilogue): Use a
11889	name for the tbtab label that depends on the function asm name.
11890	Don't output tbtab label unless optional_tbtab.
11891	(output_mi_thunk): Formatting.
11892
118932002-10-03  Richard Henderson  <rth@redhat.com>
11894
11895	* config/m68k/m68k.h (OVERRIDE_OPTIONS): Move additional code ...
11896	* config/m68k/m68k.c (override_options): ... here.
11897	* config/m68k/m68kelf.h (OVERRIDE_OPTIONS): Remove.
11898	* config/m68k/m68kv4.h (OVERRIDE_OPTIONS): Remove.
11899	* config/m68k/linux.h (SUBTARGET_OVERRIDE_OPTIONS): Remove.
11900	* config/m68k/netbsd-elf.h (SUBTARGET_OVERRIDE_OPTIONS): Remove.
11901
119022002-10-03  Richard Henderson  <rth@redhat.com>
11903
11904	* real.h (struct real_value): Use ENUM_BITFIELD.
11905
119062002-10-03  Richard Henderson  <rth@redhat.com>
11907
11908	* config/i960/i960.md (call, call_value): Use emit_call_insn.
11909
119102002-10-03  Steve Ellcey  <sje@cup.hp.com>
11911
11912	* config/pa/pa64-hpux.h (INIT_ENVIRONMENT): New.
11913
119142002-10-03  Steve Ellcey  <sje@cup.hp.com>
11915
11916	* config.gcc (hppa*64*-*-hpux11*): Check gnu_ld.
11917	* config/pa/pa.h (MASK_GNU_LD): New.
11918	(TARGET_GNU_LD): New.
11919	* config/pa/pa64-hpux.h (LINK_SPEC): Set based
11920	on gnu-ld and MASK_GNU_LD.
11921	(SUBTARGET_SWITCHES): New gnu-ld & hp-ld flags.
11922
119232002-10-03  Jan Hubicka  <jh@suse.cz>
11924
11925	* i386.c (athlon_cost): Fix the move costs.
11926
119272002-10-03  Jan Hubicka  <jh@suse.cz>
11928
11929	* final.c (final): Use symbol name as function name for profiling.
11930	* profile.c (get_exec_counts): Likewise.
11931	(branch_prob): Likewise.
11932
119332002-10-03  Jakub Jelinek  <jakub@redhat.com>
11934
11935	* longlong.h (__udiv_qrnnd): Remove PARAMS from prototype.
11936
119372002-10-03  Jakub Jelinek  <jakub@redhat.com>
11938
11939	* gcc.c (print_multi_os_directory): New variable.
11940	(option_map): Support --print-multi-os-directory.
11941	(struct prefix_list): Add os_multilib field.
11942	(multilib_os_dir): New variable.
11943	(static_specs): Add multilib_options.
11944	(find_a_file): Add multilib argument.  Search in GCC or OS multilib
11945	subdirs if non-zero.
11946	(read_specs, execute): Update callers.
11947	(find_file): Likewise.  Don't prefix name with multilib_dir, instead
11948	pass 1 as multilib option.
11949	(display_help): Include --print-multi-os-directory.
11950	(add_prefix): Add os_multilib argument.  Initialize pl->os_multilib.
11951	(process_command): Update callers.  Handle --print-multi-os-directory.
11952	(do_spec_1) ['D']: Use multilib_os_directory if pl->os_multilib is
11953	set.
11954	(main): Update find_a_file and add_prefix callers.
11955	Handle print_multi_os_directory.
11956	(struct mdswitchstr): New.
11957	(mdswitches, n_mdswitches): New variables.
11958	(used_arg): Add MULTILIB_DEFAULT switches too if they are not
11959	present on the command line nor their mutually incompatible
11960	switches.
11961	(default_arg): Optimize.
11962	(set_multilib_dir): Compute multilib_os_dir.  Initialize mdswitches
11963	array.
11964	(print_multilib_info): Only print GCC multilib dir name, not OS
11965	multilib dirname.
11966	* genmultilib: Add osdirnames parameter.  Output multilib_options
11967	variable.  If osdirnames is specified, output dirnames as
11968	dirname:osdirname.
11969	* mklibgcc.in: Use MULTILIB_OSDIRNAMES, --print-multi-directory
11970	and --print-multi-os-directory instead of SHLIB_SLIBDIR_SUFFIXES
11971	to compute libgcc_s soname and install path.
11972	* Makefile.in (libgcc.mk): Pass MULTILIB_OSDIRNAMES instead of
11973	SHLIB_SLIBDIR_SUFFIXES to mklibgcc.
11974	(s_mlib): Pass MULTILIB_OSDIRNAMES or nothing as last genmultilib
11975	argument.
11976
11977	* config/sparc/t-linux64 (MULTILIB_OSDIRNAMES): Set.
11978	(SHLIB_SLIBDIR_SUFFIXES): Remove.
11979	* config/sparc/linux64.h (STARTFILE_SPEC32, STARTFILE_SPEC64,
11980	ENDFILE_SPEC32, ENDFILE_SPEC64, ENDFILE_COMMON): Remove.
11981	(STARTFILE_SPEC, ENDFILE_SPEC): Don't distinguish between -m32
11982	and -m64.
11983	* config/sparc/t-sol2-64 (MULTILIB_OSDIRNAMES): Set.
11984	(SHLIB_SLIBDIR_SUFFIXES): Remove.
11985	* config/sparc/sol2-bi.h (STARTFILE_ARCH64_SPEC): Remove.
11986	(STARTFILE_ARCH_SPEC): Remove.
11987	* config/i386/t-linux64 (MULTILIB_OSDIRNAMES): Set.
11988	(SHLIB_SLIBDIR_SUFFIXES): Remove.
11989	* config/i386/linux64.h (STARTFILE_PREFIX_SPEC): Remove.
11990	* config/mips/t-iris6 (MULTILIB_OSDIRNAMES): Set.
11991	(SHLIB_SLIBDIR_SUFFIXES): Remove.
11992
119932002-10-03  Jan Hubicka  <jh@suse.cz>
11994
11995	* predict.c (choose_function_section): Avoid choice for linkonce functions.
11996
119972002-10-03  Jan Hubicka  <jh@suse.cz>
11998
11999	* i386.md (lea to mul peep2): Fix condition.
12000
120012002-10-02  John David Anglin  <dave@hiauly1.hia.nrc.ca>
12002
12003	* pa-linux.h (FUNCTION_OK_FOR_SIBCALL): Delete macro.
12004	* pa32-linux.h (FUNCTION_OK_FOR_SIBCALL): Define.
12005
120062002-10-02  Richard Henderson  <rth@redhat.com>
12007
12008	PR opt/7124
12009	* config/i386/i386.c (ix86_register_move_cost): Increase cost
12010	for secondary_memory_needed pairs.
12011
120122002-10-02  Nathanael Nerode  <neroden@gcc.gnu.org>
12013
12014	* doc/vms.texi: Blow away false include file section.
12015
120162002-10-02  Roger Sayle  <roger@eyesopen.com>
12017
12018	PR optimization/6627
12019	* toplev.c (force_align_functions_log): New global variable.
12020	* flags.h (force_align_functions_log): Add extern prototype.
12021	* varasm.c (assemble_start_function): Use it to force minimum
12022	function alignment.
12023	* config/i386/i386.h (FUNCTION_BOUNDARY): Set the correct
12024	minimum function alignment to one byte.
12025	(TARGET_PTRMEMFUNC_VBIT_LOCATION): Store the virtual bit in
12026	the least significant bit of vtable member function pointers.
12027	* tree.h (enum ptrmemfunc_vbit_where_t): Move definition to
12028	here from cp/cp-tree.h.
12029
120302002-10-02  Jan Hubicka  <jh@suse.cz>
12031
12032	* i386.c (print_operand_address): Use RIP addressing for offsetted
12033	label refs too.
12034
120352002-09-30  David S. Miller  <davem@redhat.com>
12036
12037	PR middle-end/7151
12038	* config/sparc/sparc.md (movdi_insn_sp32_v9): Accept 'e' regs.
12039	(movdi reg/reg split): Match only on sparc32, and v9 when int regs.
12040
120412002-10-01  Roger Sayle  <roger@eyesopen.com>
12042
12043	* unroll.c (loop_iterations): Revert 2002-09-08 change.
12044
120452002-10-01  Richard Henderson  <rth@redhat.com>
12046
12047	* real.c (real_to_decimal): Crop trailing zeros for DIGITS < 0.
12048	(real_to_hexadecimal): Likewise.
12049	* print-rtl.c (print_rtx): If we are linked with real.c, don't
12050	dump the XWINT fields of a floating point CONST_DOUBLE.
12051
120522002-10-01  Jason Thorpe  <thorpej@wasabisystems.com>
12053
12054	* config/vax/elf.h (FUNCTION_PROFILER): Fix __mcount call.
12055
120562002-10-01  Richard Henderson  <rth@redhat.com>
12057
12058	* calls.c (precompute_register_parameters): Force non-legitimate
12059	constants into pseudos.
12060
120612002-10-01  Nick Clifton  <nickc@redhat.com>
12062
12063	* config/rs6000/spe.md (spe_evrlwi): Add missing third operand
12064	to assembler template.
12065
120662002-10-01  Richard Henderson  <rth@redhat.com>
12067
12068	* dwarf2out.c (loc_descriptor_from_tree): Relax requirement
12069	for TLS debug info to !DECL_EXTERNAL.
12070
120712002-10-01  Matt Thomas  <matt@3am-software.com>
12072	    Jason Thorpe  <thorpej@wasabisystems.com>
12073
12074	* config.gcc (vax-*-netbsdelf*): Enable configuration.
12075	* config/elfos.h (PCC_BITFIELD_TYPE_MATTERS): Define only
12076	if not already defined.
12077	* config/vax/elf.h: New file.
12078	* config/vax/netbsd-elf.h: New file.
12079	* config/vax/vax.c: Include "debug.h".
12080	(vax_output_function_prologue): Add dwarf2 support.  Use
12081	MAIN_NAME_P when checking for VMS_TARGET stack adjust.
12082	* config/vax/vax.h (CONST_OK_FOR_LETTER_P): Add cases for
12083	'J' [0..63], 'K' [-128..127], 'L' [-32768..32767],
12084	'M' [0..255], 'N' [0..65535], and, 'O' [-63..-1].
12085	(VAX_ISTREAM_SYNC): Remove.
12086	(INITIALIZE_TRAMPOLINE): Use gen_sync_istream.
12087	(JUMP_TABLES_IN_TEXT_SECTION): Define.
12088	(ASM_OUTPUT_REG_POP): Use reg_names for the stack pointer.
12089	(ASM_OUTPUT_ADDR_VEC_ELT): Use ASM_GENERATE_INTERNAL_LABEL
12090	and assemble_name.
12091	(ASM_OUTPUT_ADDR_DIFF_ELT): Likewise.
12092	(PRINT_OPERAND_PUNCT_VALID_P): Accept '|'.
12093	(PRINT_OPERAND): Output REGISTER_PREFIX for '|'.
12094	(INCOMING_RETURN_ADDR_RTX): Define.
12095	* config/vax/vax.md (VUNSPEC_BLOCKAGE)
12096	(VUNSPEC_SYNC_ISTREAM): Define.
12097	(blockage): Use VUNSPEC_BLOCKAGE.
12098	(sync_istream): New insn.
12099
121002002-10-01  Richard Henderson  <rth@redhat.com>
12101
12102	* config/vax/vax.md (call_pop, *call_pop, call_value_pop)
12103	(*call_value_pop, call, call_value): Add dwarf2 EH support.
12104	(*call): New insn.
12105
121062002-10-01  Nathan Sidwell  <nathan@codesourcery.com>
12107
12108	PR c/8083
12109	* c-typeck.c (build_c_cast): Warn about type punning which breaks
12110	type based aliasing.
12111
121122002-10-01  Mark Mitchell  <mark@codesourcery.com>
12113
12114	* stor-layout.c (update_alignment_for_field): New function.
12115	(place_union_field): Use it.
12116	(place_field): Likewise.
12117
121182002-10-01  Nathan Sidwell  <nathan@codesourcery.com>
12119
12120	PR other/8077
12121	* gcc.c (cc1_options): Add space on -auxbase-strip.
12122
121232002-10-01  Jim Wilson  <wilson@redhat.com>
12124
12125	* config/v850/v850.h (EPILOGUE_USES): Define.
12126
121272002-09-30  Andrew Haley  <aph@redhat.com>
12128
12129	* flow.c (insn_dead_p): When using non-call-exceptions, don't
12130	eliminate insns that may trap.
12131	* cse.c (insn_live_p): Likewise.
12132
121332002-10-01  Richard Sandiford  <rsandifo@redhat.com>
12134
12135	* config/mips/mips.h (PROCESSOR_R4121): Rename to PROCESSOR_R4120.
12136	(TARGET_MIPS4121): Rename to TARGET_MIPS4120.
12137	* config/mips/mips.c (mips_cpu_info): Rename vr4121 to vr4120.
12138	* config/mips/mips.md: Apply same renaming here.
12139
121402002-10-01  Richard Sandiford  <rsandifo@redhat.com>
12141
12142	* config/mips/mips.c (PROCESSOR_R4320, TARGET_MIPS4320): Remove.
12143	(GENERATE_MULT3_SI): Remove use of TARGET_MIPS4320.
12144	* config/mips/mips.c (mips_cpu_info): Remove vr4320 entry.
12145	* config/mips/mips.md (define_attr cpu): Remove r4320.
12146	Remove vr4320 scheduler and uses of TARGET_MIPS4320.
12147
121482002-10-01  Richard Sandiford  <rsandifo@redhat.com>
12149
12150	* config/mips/mips.c (mips16_strings): New variable.
12151	(mips_output_function_epilogue): Clear the SYMBOL_REF_FLAG of every
12152	symbol in mips16_strings.  Free the list.
12153	(mips_encode_section_info): Keep track of local strings.
12154
121552002-10-01  Richard Sandiford  <rsandifo@redhat.com>
12156
12157	* config/mips/mips.md (bunge, bltgt, bungt): New define_expands.
12158	(sordered_df, sordered_sf): Remove.
12159	* config/mips/mips.c (get_float_compare_codes): New fn.
12160	(gen_int_relational, gen_conditional_move): Use it.
12161
121622002-10-01  Richard Sandiford  <rsandifo@redhat.com>
12163
12164	* config/mips/mips-protos.h (mips_emit_fcc_reload): Declare.
12165	* config/mips/mips.h (PREDICATE_CODES): Add fcc_register_operand.
12166	* config/mips/mips.c (fcc_register_operand): New function.
12167	(mips_emit_fcc_reload): New function, extracted from reload_incc.
12168	(override_options): Allow TFmode values in float registers
12169	if ISA_HAS_8CC.
12170	* cnfig/mips/mips.md (reload_incc): Change destination prediate
12171	to fcc_register_operand.  Remove misleading source constraint.
12172	Use mips_emit_fcc_reload.
12173	(reload_outcc): Duplicate reload_incc.
12174
121752002-09-30  Ulrich Weigand  <uweigand@de.ibm.com>
12176
12177	* longlong.h: Partially synchronize with GMP-4.1 version:
12178	Use i370 definitions also for s390.
12179	Add generic definition of umul_ppmm in terms of smul_ppmm.
12180	[s390] (umul_ppmm): Remove.
12181	[s390] (smul_ppmm): Fix incorrect assembler constraints.
12182	[s390] (smul_ppmm, sdiv_qrnnd): Rename __xx to __x.
12183
121842002-09-30  Bob Wilson  <bob.wilson@acm.org>
12185
12186	* config/xtensa/xtensa.h (REG_CLASS_NAMES, REG_CLASS_CONTENTS):
12187	Add new RL_REGS register class.
12188	(PREFERRED_RELOAD_CLASS, PREFERRED_OUTPUT_RELOAD_CLASS):
12189	Call xtensa_preferred_reload_class for both input and output reloads.
12190	* config/xtensa/xtensa.c (xtensa_regno_to_class): Use new RL_REGS class.
12191	(xtensa_preferred_reload_class): Handle output reloads; use RL_REGS
12192	instead of either AR_REGS or GR_REGS classes.
12193	(xtensa_secondary_reload_class): Use new RL_REGS class.
12194	* config/xtensa/xtensa-protos.h (xtensa_preferred_reload_class): Update.
12195
121962002-09-30  John David Anglin  <dave@hiauly1.hia.nrc.ca>
12197
12198	* pa.c (hppa_encode_label): Don't drop '*' from function labels.
12199	(pa_strip_name_encoding): Strip '@' and '*', in that order.
12200	* pa.h (ASM_OUTPUT_LABELREF): Output user_label_prefix except when
12201	there is a '*' prefix in NAME.
12202
122032002-09-30  Jan Hubicka  <jh@suse.cz>
12204
12205	* reload.c (push_reload): Handle subregs and secondary memory.
12206	* reload1.c (gen_reload): Likewise.
12207
12208	* jump.c (reg_or_subregno): New function.
12209	* rtl.h (reg_or_subregno): Declare
12210	* unroll.c (find_splittable_givs): Handle subregs.
12211
122122002-09-30  Mark Mitchell  <mark@codesourcery.com>
12213
12214	* store-layout.c (finish_record_layout): Add free_p parameter.
12215	(layout_type): Pass it.
12216	* tree.h (finish_record_layout): Update prototype.
12217
122182002-09-30  Jan Hubicka  <jh@suse.cz>
12219
12220	* i386.h (TARGET_CPP_CPU_BUILTINS): Define __SSE_MATH__.
12221
12222	* gcse.c (cprop_jump): Check that the register has not
12223	been modified
12224	(cprop_jump): Likewise.
12225
122262002-09-30  Richard Earnshaw  <rearnsha@arm.com>
12227
12228	* arm.h (BASE_REG_CLASS): Always return LO_REGS for Thumb.
12229	(MODE_BASE_REG_CLASS, case Thumb): Only return BASE_REGS if we know
12230	that we have a SImode access, and only then if reload hasn't completed;
12231	for all other cases, use LO_REGS.
12232
122332002-09-29  Richard Henderson  <rth@redhat.com>
12234
12235	* real.c (real_from_string): Apply sign last.  Tidy exponent handling.
12236
122372002-09-29  Richard Henderson  <rth@redhat.com>
12238
12239	PR c/8002
12240	* combine.c (force_to_mode): Handle FLOAT_MODE destinations
12241	for CONST_INT.
12242
122432002-09-29  David Edelsohn  <edelsohn@gnu.org>
12244
12245	* real.h (ibm_extended_format): Declare.
12246	* real.c (encode_ibm_extended, decode_ibm_extended): New
12247	functions.
12248
122492002-09-29  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
12250
12251	* darwin-protos.h (darwin_asm_output_dwarf_delta): Prototype.
12252
12253	* ia64.c (ia64_hpux_asm_file_end): Const-ify.
12254
122552002-09-29  John David Anglin  <dave@hiauly1.hia.nrc.ca>
12256
12257	* expmed.c (extract_bit_field): Fix bit-field extraction from SUBREGs.
12258
122592002-09-29  Kazu Hirata  <kazu@cs.umass.edu>
12260
12261	* builtins.def: Fix comment formatting.
12262	* c-common.def: Likewise.
12263	* cfgcleanup.c: Likewise.
12264	* combine.c: Likewise.
12265	* gengtype.c: Likewise.
12266	* params.def: Likewise.
12267	* predict.def: Likewise.
12268	* rtl.def: Likewise.
12269	* stab.def: Likewise.
12270	* stor-layout.c: Likewise.
12271	* tree.def: Likewise.
12272	* config/darwin.c: Likewise.
12273	* config/darwin.h: Likewise.
12274	* config/dbxcoff.h: Likewise.
12275	* config/elfos.h: Likewise.
12276	* config/fp-bit.c: Likewise.
12277	* config/freebsd-spec.h: Likewise.
12278	* config/interix.h: Likewise.
12279	* config/libgloss.h: Likewise.
12280	* config/linux-aout.h: Likewise.
12281	* config/linux.h: Likewise.
12282	* config/lynx-ng.h: Likewise.
12283	* config/lynx.h: Likewise.
12284	* config/netbsd-aout.h: Likewise.
12285	* config/netbsd.h: Likewise.
12286	* config/netware.h: Likewise.
12287	* config/psos.h: Likewise.
12288	* config/ptx4.h: Likewise.
12289
122902002-09-28  Kazu Hirata  <kazu@cs.umass.edu>
12291
12292	* ChangeLog.4: Fix typos.
12293	* ChangeLog.6: Likewise.
12294	* FSFChangeLog.10: Likewise.
12295	* genattrtab.c: Fix comment typos.
12296	* haifa-sched.c: Likewise.
12297	* real.c: Likewise.
12298	* tree.h: Likewise.
12299	* config/arm/arm.c: Likewise.
12300	* config/arm/crti.asm: Likewise.
12301	* config/arm/crtn.asm: Likewise.
12302	* config/frv/frv.c: Likewise.
12303	* config/frv/frv.md: Likewise.
12304	* config/h8300/h8300.md: Likewise.
12305	* config/i386/rtemself.h: Likewise.
12306	* config/ia64/unwind-ia64.c: Likewise.
12307	* config/ip2k/ip2k.h: Likewise.
12308	* config/m88k/m88k.c: Likewise.
12309	* config/m88k/m88k.md: Likewise.
12310	* config/mips/sr71k.md: Likewise.
12311	* config/mmix/mmix.c: Likewise.
12312	* config/rs6000/rs6000.c: Likewise.
12313	* config/sh/sh.md: Likewise.
12314
123152002-09-26  Theodore A. Roth  <troth@verinet.com>
12316
12317	* config/avr/avr.c: Eliminate use of _PC_ in pc relative insns.
12318	* config/avr/avr.md: Ditto.
12319
123202002-09-27  Alexander N. Kabaev <ak03@gte.com>
12321
12322	PR preprocessor/8055
12323	* cppmacro.c (stringify_arg): Do not overflow the buffer
12324	with the terminating NUL when the argument to be stringified
12325	has no tokens.
12326
123272002-09-27  Richard Henderson  <rth@redhat.com>
12328
12329	* unroll.c (simplify_cmp_and_jump_insns): New.
12330	(unroll_loop): Use it.  Use simplify_gen_foo+force_operand
12331	instead of expand_simple_foo.
12332
123332002-09-27  Richard Henderson  <rth@redhat.com>
12334
12335	PR optimization/7520
12336	* cfganal.c (flow_active_insn_p): New.
12337	(forwarder_block_p): Use it.
12338
123392002-09-27  Richard Henderson  <rth@redhat.com>
12340
12341	* emit-rtl.c (active_insn_p): Revert last change.
12342
123432002-09-27  Jakub Jelinek  <jakub@redhat.com>
12344
12345	* doc/extend.texi (tls_model): Document.
12346	* varasm.c (decl_tls_model): New.
12347	* c-common.c (handle_tls_model_attribute): New.
12348	(c_common_attribute_table): Add tls_model.
12349	* config/alpha/alpha.c (alpha_encode_section_info): Use
12350	decl_tls_model.
12351	* flags.h (enum tls_model, flag_tls_default): Move...
12352	* tree.h (enum tls_model, flag_tls_default): ...here.
12353	(decl_tls_model): New prototype.
12354	* config/ia64/ia64.c (ia64_encode_section_info): Likewise.
12355	* config/i386/i386.c (ix86_encode_section_info): Likewise.
12356	* config/i386/i386.md (tls_global_dynamic, tls_local_dynamic_base):
12357	Allow !flag_pic.
12358
123592002-09-27  Kazu Hirata  <kazu@cs.umass.edu>
12360
12361	* LANGUAGES: Follow spelling conventions.
12362	* rtl.def: Likewise.
12363	* sbitmap.c: Likewise.
12364	* sched-int.h: Likewise.
12365	* sched-rgn.c: Likewise.
12366	* sibcall.c: Likewise.
12367	* simplify-rtx.c: Likewise.
12368	* ssa.c: Likewise.
12369	* stab.def: Likewise.
12370	* stmt.c: Likewise.
12371	* stor-layout.c: Likewise.
12372	* target.h: Likewise.
12373	* timevar.c: Likewise.
12374	* toplev.c: Likewise.
12375	* tree-dump.c: Likewise.
12376	* tree-inline.c: Likewise.
12377	* tree.c: Likewise.
12378	* tree.def: Likewise.
12379	* tree.h: Likewise.
12380	* unroll.c: Likewise.
12381	* varasm.c: Likewise.
12382	* vmsdbgout.c: Likewise.
12383	* treelang/treelang.texi: Likewise.
12384	* treelang/treetree.c: Likewise.
12385
123862002-09-27  Kazu Hirata  <kazu@cs.umass.edu>
12387
12388	* config/h8300/h8300.c (compute_saved_regs): Use a macro
12389	instead of a hard register number.
12390	(get_shift_alg): Use an enumerated type instead of numbers.
12391	(h8300_shift_needs_scratch_p): Likewise.
12392
123932002-09-26  David S. Miller  <davem@redhat.com>
12394
12395	PR optimization/7335
12396	* calls.c (emit_library_call_value_1): Passing args by reference
12397	converts a CONST function into a PURE one.
12398
123992002-09-26  David Edelsohn  <edelsohn@gnu.org>
12400
12401	* dbxout.c (FORCE_TEXT): Switch to current_function_decl, not
12402	text_section.
12403	* xcoffout.h (DBX_STATIC_BLOCK_START): Remove explicit change to
12404	text section.
12405	* config/rs6000/rs6000.c (rs6000_override_options): Allow
12406	function-sections and data-sections functionality on AIX.
12407
124082002-09-26  David Edelsohn  <edelsohn@gnu.org>
12409	    Dale Johannesen  <dalej@apple.com>
12410
12411	* config/rs6000/rs6000.c (rs6000_emit_move): Insert zero-extend
12412	in RTL for sub-word loads from memory.
12413
124142002-09-26  Richard Henderson  <rth@redhat.com>
12415
12416	PR c/7160
12417	* sched-deps.c (sched_analyze_insn): Make clobber insns depend
12418	on call insns.
12419
124202002-09-26  Richard Henderson  <rth@redhat.com>
12421
12422	* emit-rtl.c (const_double_htab_eq): Remove unused variable.
12423
124242002-09-26  Chris Lattner  <sabre@nondot.org>
12425
12426	* ssa.c (rename_insn_1): Handle RENAME_NO_RTX correctly when
12427	handling undefined values.
12428
124292002-09-26  Richard Henderson  <rth@redhat.com>
12430
12431	PR opt/7520
12432	* emit-rtl.c (active_insn_p): Consider a clobber of the
12433	function return value to be active even after reload.
12434
124352002-09-27  Alan Modra  <amodra@bigpond.net.au>
12436
12437	* doloop.c (doloop_modify_runtime <biv skips initial incr>): Adjust
12438	by absolute loop increment, not loop increment.
12439
124402002-09-26  Kazu Hirata  <kazu@cs.umass.edu>
12441
12442	* c-common.h: Follow spelling conventions.
12443	* cpplex.c: Likewise.
12444	* cpplib.h: Likewise.
12445	* gthr-dce.h: Likewise.
12446	* gthr-posix.h: Likewise.
12447	* optabs.c: Likewise.
12448	* output.h: Likewise.
12449	* profile.c: Likewise.
12450	* protoize.c: Likewise.
12451	* ra-rewrite.c: Likewise.
12452	* real.c: Likewise.
12453	* recog.c: Likewise.
12454	* reg-stack.c: Likewise.
12455	* regclass.c: Likewise.
12456	* regmove.c: Likewise.
12457	* reload.c: Likewise.
12458	* reload.h: Likewise.
12459	* reload1.c: Likewise.
12460	* reorg.c: Likewise.
12461	* resource.c: Likewise.
12462	* rtl.h: Likewise.
12463	* rtlanal.c: Likewise.
12464
124652002-09-26  Steve Ellcey  <sje@cup.hp.com>
12466
12467	* config/ia64/ia64.c (ia64_expand_load_address): Ensure correct mode
12468	for symbol address.
12469
124702002-09-24  Eric Christopher  <echristo@redhat.com>
12471
12472	* config/mips/elf.h: Add HANDLE_SYSV_PRAGMA.
12473	* config/mips/elf64.h: Ditto.
12474
124752002-09-24  Eric Christopher  <echristo@redhat.com>
12476
12477	* except.c (expand_builtin_extract_return_address): Handle case
12478	where Pmode != ptr_mode.
12479
124802002-09-26  Steve Ellcey  <sje@cup.hp.com>
12481
12482	* config/ia64/hpux.h (ASM_OUTPUT_EXTERNAL_LIBCALL): New
12483
124842002-09-26  Steve Ellcey  <sje@cup.hp.com>
12485
12486	* config/ia64/hpux.h (TARGET_DEFAULT): Include TARGET_ILP32.
12487
124882002-09-26  Igor Shevlyakov <igor@microunity.com>
12489
12490	* combine.c (simplify_set): Don't call to force_to_mode if size
12491	of integer type is larger than HOST_BITS_PER_WIDE_INT.
12492
124932002-09-26  Janis Johnson  <janis187@us.ibm.com>
12494
12495	* Makefile.in (qmtest-g++): Fix file path.
12496
124972002-09-26  Ulrich Weigand  <uweigand@de.ibm.com>
12498
12499	* expr.c (expand_expr) [MINUS_EXPR]: Convert A - const to
12500	A + (-const) on RTX level, even for unsigned types.
12501
125022002-09-26  Ulrich Weigand  <uweigand@de.ibm.com>
12503
12504	* reload.c (dup_replacements): New function.
12505	(find_reloads): Use it to duplicate replacements at the top level
12506	of match_dup operands.
12507
125082002-09-26  Miles Bader  <miles@gnu.org>
12509
12510	* v850.md ("length"): Change default value to 4.
12511
125122002-09-26  Kazu Hirata  <kazu@cs.umass.edu>
12513
12514	* ChangeLog.1: Follow spelling conventions.
12515	* ChangeLog.4: Likewise.
12516	* ChangeLog.6: Likewise.
12517	* FSFChangeLog.11: Likewise.
12518	* doc/cpp.texi: Likewise.
12519	* doc/invoke.texi: Likewise.
12520	* doc/tm.texi: Likewise.
12521
125222002-09-26  Nick Clifton  <nickc@redhat.com>
12523
12524	* config.gcc: Add x prefix to v850e case for handling
12525	--with-cpu=v850e.
12526
125272002-09-25  David S. Miller  <davem@redhat.com>
12528
12529	PR target/7842
12530	* config/sparc/sparc.c (set_extends): SImode ASHIFT does not
12531	extend.
12532
125332002-09-25  Richard Henderson  <rth@redhat.com>
12534
12535	* emit-rtl.c (const_double_htab_eq): Distinguish integer and
12536	fp CONST_DOUBLE; use real_identical.
12537
125382002-09-25  Mark Mitchell  <mark@codesourcery.com>
12539
12540	* doc/invoke.texi: Add more -Wabi examples.
12541
125422002-09-25  Richard Sandiford  <rsandifo@redhat.com>
12543
12544	* config/mips/mips.h (TARGET_MIPS4100): Add missing bracket.
12545
125462002-09-24  Denis Chertykov  <denisc@overta.ru>
12547
12548	* config/ip2k/ip2k.c (function_epilogue): Fix wrong numbers in
12549	cases of optimizing "add sp,w" to "inc sp".
12550
125512002-09-24  Adam Nemet  <anemet@lnxw.com>
12552
12553	* config/arm/arm.c (thumb_unexpanded_epilogue): Don't generate
12554	epilogue for naked functions.
12555
125562002-09-24  Adam Nemet  <anemet@lnxw.com>
12557	    Nick Clifton  <nickc@redhat.com>
12558
12559	* config/arm/arm.h (THUMB_FUNCTION_PROFILER): Remove.
12560	(FUNCTION_PROFILER): Only invoke THUMB_FUNCTION_PROFILER if it
12561	is defined.
12562
125632002-09-24  Ulrich Weigand  <uweigand@de.ibm.com>
12564
12565	* config/s390/s390.c (preferred_la_operand_p): New function.
12566	* config/s390/s390-protos.h (preferred_la_operand_p): Declare it.
12567	* config/s390/s390.md ("addaddr_esame", "*la_ccclobber"): Replace by ...
12568	("*la_64_cc", "*la_31_cc", splitters): ... these.
12569	("*la_31"): Deactivate for TARGET_64BIT.
12570	("*la_31_and", "*la_31_and_cc"): New.
12571
125722002-09-24  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
12573
12574	* real.h (real_value): Make `exp' explicitly signed.
12575
125762002-09-24  Kazu Hirata  <kazu@cs.umass.edu>
12577
12578	* config/elfos.h: Follow spelling conventions.
12579	* config/alpha/alpha.h: Likewise.
12580	* config/arc/arc.h: Likewise.
12581	* config/arm/arm.md: Likewise.
12582	* config/avr/avr.h: Likewise.
12583	* config/cris/cris.md: Likewise.
12584	* config/d30v/d30v.h: Likewise.
12585	* config/frv/frv.c: Likewise.
12586	* config/frv/frv.h: Likewise.
12587	* config/h8300/h8300.c: Likewise.
12588	* config/h8300/h8300.h: Likewise.
12589	* config/h8300/h8300.md: Likewise.
12590	* config/i386/cygwin.h: Likewise.
12591	* config/i386/i386.h: Likewise.
12592	* config/i386/sysv3.h: Likewise.
12593	* config/i960/i960.h: Likewise.
12594	* config/ia64/ia64.h: Likewise.
12595	* config/ia64/ia64.md: Likewise.
12596	* config/ip2k/ip2k.h: Likewise.
12597	* config/m32r/m32r.h: Likewise.
12598	* config/m68k/m68k.h: Likewise.
12599	* config/m88k/m88k.h: Likewise.
12600	* config/mcore/mcore.c: Likewise.
12601	* config/mcore/mcore.h: Likewise.
12602	* config/mcore/mcore.md: Likewise.
12603	* config/mips/mips.h: Likewise.
12604	* config/mmix/mmix.h: Likewise.
12605	* config/mmix/mmix.md: Likewise.
12606	* config/ns32k/netbsd.h: Likewise.
12607	* config/ns32k/ns32k.h: Likewise.
12608	* config/ns32k/ns32k.md: Likewise.
12609	* config/pa/pa.h: Likewise.
12610	* config/romp/romp.h: Likewise.
12611	* config/rs6000/rs6000.h: Likewise.
12612	* config/rs6000/rs6000.md: Likewise.
12613	* config/sparc/sparc.h: Likewise.
12614	* config/stormy16/stormy-abi: Likewise.
12615	* config/stormy16/stormy16.h: Likewise.
12616	* config/vax/vax.h: Likewise.
12617
126182002-09-23  Zack Weinberg  <zack@codesourcery.com>
12619
12620	* version.c (version_string): Now const char[].
12621	* version.h: Update to match.
12622
126232002-09-23  Richard Henderson  <rth@redhat.com>
12624
12625	* config/i386/i386.h (MASK_ACCUMULATE_OUTGOING_ARGS_SET, MASK_MMX_SET,
12626	MASK_SSE_SET, MASK_SSE2_SET, MASK_3DNOW_SET, MASK_3DNOW_A_SET): Kill.
12627	(TARGET_SWITCHES): Don't reference them.
12628	* config/i386/i386.c (override_options): Use target_flags_explicit
12629	to examine bits set by the user.
12630
126312002-09-23  Dale Johannesen  <dalej@apple.com>
12632
12633	* dbxout.c (dbxout_parms):  Set current_sym_code for params
12634	passed on stack by invisible reference.
12635
126362002-09-23  Richard Earnshaw  <rearnsha@arm.com>
12637
12638	* arm/unknown-elf.h (ASM_OUTPUT_ALIGNED_DECL_LOCAL): Always allocate
12639	at least one byte of space.
12640
126412002-09-23  Mark Mitchell  <mark@codesourcery.com>
12642
12643	* c-common.h (flag_abi_version): Fix typo in comment.
12644	* doc/invoke.texi (flag_abi_version): Document default value.
12645
126462002-09-23  Hans-Peter Nilsson  <hp@axis.com>
12647
12648	* doc/extend.texi (Extended Asm): Clarify that overlap between
12649	asm-declared register variables used in an asm and the asm clobber
12650	list is not allowed.
12651	* stmt.c (decl_conflicts_with_clobbers_p): New function.
12652	(expand_asm_operands): Keep track of clobbered registers.  Call
12653	decl_conflicts_with_clobbers_p for each input and output operand.
12654	If no conflicts found before, also do conflict sanity check when
12655	emitting clobbers.
12656
126572002-09-23  Richard Henderson  <rth@redhat.com>
12658
12659	* c-common.c (cpp_define_data_format): Remove.
12660	(cb_register_builtins): Don't define __WCHAR_BIT__, __SHRT_BIT__,
12661	__INT_BIT__, __LONG_BIT__, __LONG_LONG_BIT__, __FLOAT_BIT__,
12662	__DOUBLE_BIT__, __LONG_DOUBLE_BIT__.
12663	* doc/cpp.texi: Don't document them either.
12664	(__SCHAR_MAX__, __SHRT_MAX__, __INT_MAX__, __LONG_MAX__,
12665	__LONG_LONG_MAX__): Document.
12666	(__TARGET_FLOAT_FORMAT__): Remove.
12667
126682002-09-23  Richard Henderson  <rth@redhat.com>
12669
12670	* real.c (do_multiply): Normalize U before addition.
12671
126722002-09-23  Mark Mitchell  <mark@codesourcery.com>
12673
12674	* c-common.c (flag_abi_version): New variable.
12675	* c-common.h (flag_abi_version): Declare it.
12676	* c-opts.c (missing_arg): Add -fabi-version.
12677	(c_common_decode_option): Process -fabi-version.
12678	* doc/invoke.texi (-fabi-version): Document it.
12679	(-Wabi): Add information about bit-fields in unions.
12680
126812002-09-22  Jason Thorpe  <thorpej@wasabisystems.com>
12682
12683	* config/mips/netbsd.h (SUBTARGET_ASM_SPEC): Always pass -KPIC
12684	unless -fno-pic or -fno-PIC is specified.
12685
126862002-09-22  John David Anglin  <dave@hiauly1.hia.nrc.ca>
12687
12688	* c-common.c (preprocessing_trad_p): Define.
12689	* pa-hiux.h, pa-hpux.h, pa-hpux7.h (CPP_PREDEFINES): Delete.
12690	(TARGET_OS_CPP_BUILTINS, SUBTARGET_SWITCHES): Define.
12691	* pa-hpux10.h (TARGET_OS_CPP_BUILTINS, CPP_SPEC): Define.
12692	* pa-hpux11.h (TARGET_OS_CPP_BUILTINS): Define.
12693	* pa-linux.h (CPP_PREDEFINES): Delete.
12694	(TARGET_OS_CPP_BUILTINS, CPP_SPEC): Define.
12695	* pa32-linux.h, pa64-linux.h (CPP_SPEC): Delete.
12696	* pa-osf.h, pa-pro-end.h, rtems.h (CPP_PREDEFINES): Delete.
12697	(TARGET_OS_CPP_BUILTINS): Define.
12698	* pa.h (MASK_SIO, TARGET_SIO, TARGET_PA_10): Define.
12699	(TARGET_SWITCHES): Reformat.  Use N_() macro.  Add SUBTARGET_SWITCHES.
12700	(SUBTARGET_SWITCHES): Provide default definition.
12701	(TARGET_OPTIONS): Reformat.  Use N_() macro.
12702	(CPP_PA10_SPEC, CPP_PA11_SPEC, CPP_PA20_SPEC, CPP_64BIT_SPEC,
12703	CPP_CPU_DEFAULT_SPEC, CPP_64BIT_DEFAULT_SPEC, SUBTARGET_EXTRA_SPECS,
12704	EXTRA_SPECS, CPP_SPEC, CPLUSPLUS_CPP_SPEC, CPP_PREDEFINES): Delete.
12705	(TARGET_CPU_CPP_BUILTINS): Define.
12706	(TARGET_OS_CPP_BUILTINS): Define for BSD-like systems.
12707	* doc/invoke.texi (msio, mwsio): Document new hppa options.
12708	* doc/tm.texi (TARGET_CPU_CPP_BUILTINS): Document macro
12709	preprocessing_trad_p().
12710
127112002-09-22  Jason Thorpe  <thorpej@wasabisystems.com>
12712
12713	* doc/install.texi: Document behavior of --with-headers and
12714	--with-libs when arguments are omitted.
12715
127162002-09-22  Kazu Hirata  <kazu@cs.umass.edu>
12717
12718	* dbxout.c: Follow spelling conventions.
12719	* defaults.h: Likewise.
12720	* df.c: Likewise.
12721	* diagnostic.h: Likewise.
12722	* doloop.c: Likewise.
12723	* dwarf2out.c: Likewise.
12724	* dwarfout.c: Likewise.
12725	* emit-rtl.c: Likewise.
12726	* except.c: Likewise.
12727	* explow.c: Likewise.
12728	* expmed.c: Likewise.
12729	* expr.c: Likewise.
12730	* expr.h: Likewise.
12731	* flags.h: Likewise.
12732	* flow.c: Likewise.
12733	* fold-const.c: Likewise.
12734	* function.c: Likewise.
12735	* function.h: Likewise.
12736	* gcc.c: Likewise.
12737	* gcov-io.h: Likewise.
12738	* gcov.c: Likewise.
12739	* gcse.c: Likewise.
12740	* genattrtab.c: Likewise.
12741	* genconfig.c: Likewise.
12742	* genrecog.c: Likewise.
12743	* ggc-page.c: Likewise.
12744	* ggc.h: Likewise.
12745	* global.c: Likewise.
12746	* gthr-win32.h: Likewise.
12747	* integrate.c: Likewise.
12748	* jump.c: Likewise.
12749	* langhooks.c: Likewise.
12750	* langhooks.h: Likewise.
12751	* line-map.h: Likewise.
12752	* local-alloc.c: Likewise.
12753	* longlong.h: Likewise.
12754	* loop.c: Likewise.
12755	* loop.h: Likewise.
12756
127572002-08-27  Jan Hubicka  <jh@suse.cz>
12758
12759	* i386.h (BIGGEST_FIELD_ALIGNMENT): Set proper default for x86_64.
12760
127612002-08-27  Jan Hubicka  <jh@suse.cz>
12762
12763	* i386.c (overwrite_options): Set -mpreferred-stack-boundary to 128
12764	for -Os/TARGET_64BIT too.
12765
127662002-09-21  Kazu Hirata  <kazu@cs.umass.edu>
12767
12768	* ChangeLog: Follow spelling conventions.
12769	* ChangeLog.0: Likewise.
12770	* ChangeLog.1: Likewise.
12771	* ChangeLog.2: Likewise.
12772	* ChangeLog.3: Likewise.
12773	* ChangeLog.4: Likewise.
12774	* ChangeLog.5: Likewise.
12775	* ChangeLog.6: Likewise.
12776	* FSFChangeLog.10: Likewise.
12777	* FSFChangeLog.11: Likewise.
12778	* alias.c: Likewise.
12779	* basic-block.h: Likewise.
12780	* c-aux-info.c: Likewise.
12781	* c-common.c: Likewise.
12782	* c-common.h: Likewise.
12783	* c-decl.c: Likewise.
12784	* c-format.c: Likewise.
12785	* c-semantics.c: Likewise.
12786	* c-typeck.c: Likewise.
12787	* calls.c: Likewise.
12788	* cfganal.c: Likewise.
12789	* cfgloop.c: Likewise.
12790	* collect2.c: Likewise.
12791	* combine.c: Likewise.
12792	* conflict.c: Likewise.
12793	* cppexp.c: Likewise.
12794	* cppfiles.c: Likewise.
12795	* cpphash.h: Likewise.
12796	* cppinit.c: Likewise.
12797	* cpplex.c: Likewise.
12798	* cpplib.c: Likewise.
12799	* cpplib.h: Likewise.
12800	* cppmacro.c: Likewise.
12801	* cse.c: Likewise.
12802
128032002-09-21  Richard Earnshaw  <rearnsha@arm.com>
12804
12805	* netbsd-aout.h (NETBSD_LINK_SPEC_AOUT): New, takes old definition of
12806	LINK_SPEC.
12807	(LINK_SPEC): Define to NETBSD_LINK_SPEC_AOUT.
12808	* arm/netbsd.h (SUBTARGET_EXTRA_SEPCS): Add NETBSD_LINK_SPEC_AOUT.
12809	(LINK_SPEC): Rework to use NETBSD_LINK_SPEC_AOUT).
12810
128112002-09-21  Richard Earnshaw  <rearnsha@arm.com>
12812
12813	PR opt/7930
12814	* cse.c (fold_rtx): Calculate old_cost before we fold each
12815	operand.
12816
128172002-09-21  Richard Henderson  <rth@redhat.com>
12818
12819	* c-common.c (cpp_define_data_format): Remove __GCC_LITTLE_ENDIAN__,
12820	__GCC_BIG_ENDIAN__, __TARGET_BITS_ORDER__, __TARGET_BYTES_ORDER__,
12821	__TARGET_INT_WORDS_ORDER__, __TARGET_FLOAT_WORDS_ORDER__,
12822	__TARGET_USES_VAX_F_FLOAT__, __TARGET_USES_VAX_D_FLOAT__,
12823	__TARGET_USES_VAX_G_FLOAT__, __TARGET_USES_VAX_H_FLOAT__.
12824	* doc/cpp.texi: Don't document them.
12825
128262002-09-21  Richard Henderson  <rth@redhat.com>
12827
12828	* c-common.c (builtin_define_float_constants): Use real_format
12829	to get the floating-point parameters.
12830
128312002-09-21  Richard Henderson  <rth@redhat.com>
12832
12833	* real.c (struct real_format): Move to real.h.
12834	(real_format_for_mode): Rename from fmt_for_mode; update all users;
12835	initialize with ieee defaults.
12836	(real_to_target_fmt, real_from_target_fmt): New.
12837	(ieee_single_format, ieee_double_format, ieee_extended_motorola_format,
12838	ieee_extended_intel_96_format, ieee_extended_intel_128_format,
12839	ieee_quad_format, i370_single_format, i370_double_format,
12840	c4x_single_format, c4x_extended_format): Rename from s/_format//.
12841	(ieee_quad_format): Fix emin.
12842	(format_for_size, init_real_once): Remove.
12843	* real.h (struct real_format): Move from real.c.
12844	(real_format_for_mode): Declare.
12845	(real_to_target_fmt, real_from_target_fmt): Declare.
12846	(ieee_single_format, ieee_double_format, ieee_extended_motorola_format,
12847	ieee_extended_intel_96_format, ieee_extended_intel_128_format,
12848	ieee_quad_format, vax_f_format, vax_d_format, vax_g_format,
12849	i370_single_format, i370_double_format, c4x_single_format,
12850	c4x_extended_format): Declare.
12851	* toplev.c (do_compile): Don't call init_real_once.
12852
12853	* defaults.h (INTEL_EXTENDED_IEEE_FORMAT): Remove.
12854	* doc/tm.texi (INTEL_EXTENDED_IEEE_FORMAT): Remove.
12855
12856	* config/alpha/alpha.h (TARGET_FLOAT_FORMAT): Define.
12857	* config/alpha/osf5.h (LONG_DOUBLE_TYPE_SIZE): 64, if vax mode.
12858	* config/alpha/alpha.c (override_options): Set real_format_for_mode
12859	for VAX, if enabled.
12860
12861	* config/c4x/c4x.c (c4x_override_options): Set real_format_for_mode
12862	for C4X.
12863
12864	* config/i370/i370.h (OVERRIDE_OPTIONS): New.
12865	* config/i370/i370.c (override_options): New.
12866	* config/i370/i370-protos.h: Update.
12867
12868	* config/i386/i386.c (override_options): Set real_format_for_mode
12869	for Intel 80-bit extended.
12870	* config/i386/i386.h (INTEL_EXTENDED_IEEE_FORMAT): Remove.
12871
12872	* config/i960/i960.h (LONG_DOUBLE_TYPE_SIZE): Mind -mlong-double-64.
12873	(OVERRIDE_OPTIONS): Move code...
12874	* config/i960/i960.c (i960_initialize): ... here.  Set
12875	real_format_for_mode for Intel 80-bit extended.
12876
12877	* config/ia64/ia64.c (ia64_override_options): Set real_format_for_mode
12878	for Intel 80-bit extended, if enabled.
12879
12880	* config/m68k/m68k.c (override_options): Set real_format_for_mode
12881	for Motorola 96-bit extended.
12882
12883	* config/vax/vax.h (OVERRIDE_OPTIONS): New.
12884	* config/vax/vax.c (override_options): New.
12885	* config/vax/vax-protos.h: Update.
12886
128872002-09-21  Alan Modra  <amodra@bigpond.net.au>
12888
12889	* config/rs6000/rs6000.md (builtin_setjmp_receiver): Add
12890	#if TARGET_MACHO.
12891
12892	* config/rs6000/rs6000.md (floatdisf2_internal2): Combine
12893	insns.  Supply missing clobber of scratch reg.
12894
128952002-09-20  Kazu Hirata  <kazu@cs.umass.edu>
12896
12897	* config/m32r/m32r.c: Follow spelling conventions.
12898	* config/m32r/m32r.h: Likewise.
12899	* config/m32r/m32r.md: Likewise.
12900	* config/m68k/m68k.c: Likewise.
12901	* config/m88k/m88k.c: Likewise.
12902	* config/mcore/mcore.c: Likewise.
12903	* config/mips/mips.c: Likewise.
12904	* config/mips/mips.h: Likewise.
12905	* config/mmix/mmix.c: Likewise.
12906	* config/mn10200/mn10200.c: Likewise.
12907	* config/ns32k/ns32k.h: Likewise.
12908	* config/pa/pa.c: Likewise.
12909	* config/pa/pa64-linux.h: Likewise.
12910	* config/pdp11/pdp11.h: Likewise.
12911	* config/romp/romp.c: Likewise.
12912	* config/romp/romp.h: Likewise.
12913	* config/rs6000/eabi.asm: Likewise.
12914	* config/rs6000/linux64.h: Likewise.
12915	* config/rs6000/rs6000.c: Likewise.
12916	* config/rs6000/rs6000.h: Likewise.
12917	* config/rs6000/rs6000.md: Likewise.
12918	* config/rs6000/sysv4.h: Likewise.
12919	* config/rs6000/xcoff.h: Likewise.
12920
129212002-09-20  Jim Wilson  <wilson@redhat.com>
12922
12923	* config/v850/v850/lib1funcs.asm (__muldi3): Change r5 to r28.
12924
129252002-09-20  Jakub Jelinek  <jakub@redhat.com>
12926
12927	* config/i386/i386.md (UNSPEC_GOTNTPOFF, UNSPEC_INDNTPOFF): New.
12928	* config/i386/i386.c (legitimate_pic_address_disp_p): Handle
12929	UNSPEC_GOTNTPOFF and UNSPEC_INDNTPOFF like UNSPEC_GOTTPOFF.
12930	(legitimate_address_p): Likewise.
12931	(legitimize_address): Use @gotntpoff and @indntpoff.
12932	(output_pic_addr_const): Handle UNSPEC_GOTNTPOFF and UNSPEC_INDNTPOFF.
12933	(output_addr_const_extra): Likewise.
12934
129352002-09-20  Jim Wilson  <wilson@redhat.com>
12936
12937	* combine.c (try_combine): When split an instruction pair, where the
12938	first has a sign_extend src, verify that the src and dest modes match.
12939
129402002-09-20  Richard Henderson  <rth@redhat.com>
12941
12942	* config/mips/mips.c (dfhigh, dflow, sfhigh, sflow): Remove.
12943	(override_options): Do not initialize them.
12944	(mips_const_double_ok): Allow no fp constants except zero,
12945	and not even that for mips16.
12946	(const_float_1_operand): Use dconst1.
12947	* config/mips/mips.md (movsf, movsf_internal1, movsf_internal2,
12948	movdf, movdf_internal1, movdf_internal1a, movdf_internal2):
12949	Don't allow arbitrary constants; fix predicates and C constraint.
12950
129512002-09-20  Neil Booth  <neil@daikokuya.co.uk>
12952
12953	* cppmacro.c: Don't warn about function-like macros without
12954	'(' during pre-expansion.
12955
129562002-09-20  Jim Wilson  <wilson@redhat.com>
12957
12958	* config/v850/v850.c (current_function_anonymous_args): Delete.
12959	(expand_prologue): Use current_function_args_info.anonymous_args.
12960	(expand_epilogue): Delete use of current_function_anonymous_args.
12961	* config/v850/v850.h (struct cum_arg): Add anonymous_args field.
12962	(INIT_CUMULATIVE_ARGS): Clear anonymous_args field.
12963	(current_function_anonymous_args): Delete extern declaration.
12964	(SETUP_INCOMING_VARARGS): Set anonymous_args field.
12965
129662002-09-20  Geoffrey Keating  <geoffk@apple.com>
12967
12968	* config/rs6000/rs6000.c (rs6000_emit_prologue): Update for change
12969	to load_macho_picbase.
12970	* config/rs6000/rs6000.md: Document Darwin-specific unspec IDs.
12971	(load_macho_picbase): Take the symbol to use as a parameter.
12972	(macho_correct_pic): New insn.
12973	(builtin_setjmp_reciever): On Darwin, restore the PIC register.
12974
12975	* config/rs6000/rs6000.h (ELIMINABLE_REGS): Use
12976	RS6000_PIC_OFFSET_TABLE_REGNUM rather than hardcoding 30.
12977	(CAN_ELIMINATE): Likewise.
12978	(INITIAL_ELIMINATION_OFFSET): Likewise.
12979	(TOC_REGISTER): Likewise.
12980
129812002-09-20  Richard Henderson  <rth@redhat.com>
12982
12983	* real.c (real_hash): New.
12984	* real.h: Declare it.
12985	* cse.c (canon_hash): Use it.
12986	* cselib.c (hash_rtx): Likewise.
12987	* emit-rtl.c (const_double_htab_hash): Likewise.
12988	* rtl.h (CONST_DOUBLE_REAL_VALUE): New.
12989	* varasm.c (struct rtx_const): Reduce vector size; separate
12990	integer and fp vectors.
12991	(HASHBITS): Remove.
12992	(const_hash_1): Rename from const_hash.  Use real_hash.  Do not
12993	take modulus MAX_HASH_TABLE.
12994	(const_hash): New.  Do take modulus MAX_HASH_TABLE.
12995	(output_constant_def): Do not take modulus MAX_HASH_TABLE.
12996	(SYMHASH): Don't use HASHBITS.
12997	(decode_rtx_const): Copy only active bits from REAL_VALUE_TYPE.
12998	Fix CONST_VECTOR thinko wrt fp vectors.  Fix kind comparison.
12999	(simplify_subtraction): Fix kind comparison.
13000	(const_hash_rtx): Return unsigned int.  Don't use HASHBITS.
13001	Use a union to pun integer array.
13002	* config/rs6000/rs6000.c (rs6000_hash_constant): Use real_hash;
13003	only hash two words of integral CONST_DOUBLE.
13004
130052002-09-20  Steve Ellcey  <sje@cup.hp.com>
13006
13007	* config/ia64/hpux.h (STARTFILE_SPEC): Modify.
13008	(STARTFILE_PREFIX_SPEC): New.
13009	(LINK_SPEC): Modify.
13010	(LIB_SPEC): Modify.
13011	(LIBGCC_SPEC): New.
13012
130132002-09-20  Jakub Jelinek  <jakub@redhat.com>
13014
13015	* config/i386/i386.c (legitimate_pic_address_disp_p): Allow
13016	UNSPEC_NTPOFF and UNSPEC_DTPOFF to be offsetted by constant.
13017
130182002-09-20  Jeroen Dobbelaere  <jeroen.dobbelaere@acunia.com>
13019
13020	* config/arm/arm.md (sign_extract_onebit, not_signextract_onebit):
13021	Add clobber of the condition code register.
13022
130232002-09-20  Richard Henderson  <rth@redhat.com>
13024
13025	* real.c (do_fix_trunc): Static.
13026	(encode_ieee_single, encode_ieee_double, encode_ieee_extended,
13027	encode_ieee_quad, encode_vax_f, encode_vax_d, encode_vax_g,
13028	encode_i370_single, encode_i370_double, encode_c4x_single,
13029	encode_c4x_extended): Add default abort case.
13030
130312002-09-20  Richard Henderson  <rth@redhat.com>
13032
13033	* real.h (enum real_value_class, SIGNIFICAND_BITS, EXP_BITS,
13034	MAX_EXP, SIGSZ, SIG_MSB, struct real_value): Move from real.c.
13035	(struct realvaluetype): Remove.
13036	(REAL_VALUE_TYPE): Use struct real_value.
13037	(REAL_VALUE_TYPE_SIZE): Use SIGNIFICAND_BITS.
13038	(test_real_width): New.
13039	* real.c: Global replace struct real_value with REAL_VALUE_TYPE.
13040	(real_arithmetic): Avoid hoops for REAL_VALUE_TYPE parameters.
13041	(real_compare, real_exponent, real_ldexp, real_isinf, real_isnan,
13042	real_isneg, real_isnegzero, real_identical, exact_real_inverse,
13043	real_to_integer, real_to_integer2, real_to_decimal,
13044	real_to_hexadecimal, real_from_string, real_from_integer,
13045	real_inf, real_nan, real_2expN, real_convert, real_to_target,
13046	real_from_target): Likewise.
13047	* tree.h (struct tree_real_cst): Use real_value not realvaluetype.
13048	* gengtype-yacc.y (bitfieldopt): Accept an ID as well.
13049
130502002-09-20  Richard Henderson  <rth@redhat.com>
13051
13052	* real.h (UNKNOWN_FLOAT_FORMAT, IEEE_FLOAT_FORMAT, VAX_FLOAT_FORMAT,
13053	IBM_FLOAT_FORMAT, C4X_FLOAT_FORMAT, TARGET_FLOAT_FORMAT): Move ...
13054	* defaults.h: ... here.
13055	* config/arm/arm.h, config/avr/avr.h, config/d30v/d30v.h,
13056	config/fr30/fr30.h, config/frv/frv.h, config/ia64/ia64.h,
13057	config/ip2k/ip2k.h, config/mips/mips.h, config/stormy16/stormy16.h,
13058	config/xtensa/xtensa.h (TARGET_FLOAT_FORMAT): Remove.
13059
130602002-09-20  Hans-Peter Nilsson  <hp@bitrange.com>
13061
13062	* config/mmix/mmix.md ("negdf2"): Rewrite.
13063	("*expanded_negdf2"): New.
13064
130652002-09-19  Jim Wilson  <wilson@redhat.com>
13066
13067	* combine.c (simplify_set): When optimizing a subreg src with a
13068	cc0 dest, use GET_MODE (src) for mask instead of inner_mode.
13069
130702002-09-19  Dale Johannesen <dalej@apple.com>
13071	* combine.c (make_extraction): Don't create
13072	invalid subreg.
13073
130742002-09-19  Ulrich Weigand  <uweigand@de.ibm.com>
13075
13076	* config/s390/s390.c (addr_generation_dependency_p): Handle SUBREG
13077	and STRICT_LOW_PART within SET_DEST.
13078	* config/s390/s390.md ("*extractqi", "*extracthi"): New insns with
13079	splitters, replacing pre-reload splitters.
13080	("*zero_extendhisi2_31", "*zero_extendqisi2_31",
13081	"*zero_extendqihi2_31"): New insns.
13082	("*zero_extendqihi2_64"): Do not clobber CC.
13083
130842002-09-19  Steve Ellcey  <sje@cup.hp.com>
13085
13086	* config/ia64/hpux.h (CTORS_SECTION_ASM_OP): New.
13087	(DTORS_SECTION_ASM_OP): Ditto.
13088	(READONLY_DATA_SECTION_ASM_OP): Moved.
13089	(DATA_SECTION_ASM_OP): New.
13090	(SDATA_SECTION_ASM_OP): New.
13091	(BSS_SECTION_ASM_OP): New.
13092	(SBSS_SECTION_ASM_OP): New.
13093	(TEXT_SECTION_ASM_OP): New.
13094
130952002-09-19  Kazu Hirata  <kazu@cs.umass.edu>
13096
13097	* config/fp-bit.c: Follow spelling conventions.
13098	* config/d30v/d30v.c: Likewise.
13099	* config/d30v/d30v.h: Likewise.
13100	* config/fr30/fr30.c: Likewise.
13101	* config/fr30/fr30.h: Likewise.
13102	* config/fr30/fr30.md: Likewise.
13103	* config/frv/frv.c: Likewise.
13104	* config/frv/frv.h: Likewise.
13105	* config/h8300/h8300.c: Likewise.
13106	* config/h8300/lib1funcs.asm: Likewise.
13107	* config/i370/i370.c: Likewise.
13108	* config/i386/i386.h: Likewise.
13109	* config/i386/i386.md: Likewise.
13110	* config/i386/pentium.md: Likewise.
13111	* config/i386/winnt.c: Likewise.
13112	* config/i960/i960.c: Likewise.
13113	* config/ia64/ia64.h: Likewise.
13114	* config/ip2k/ip2k.c: Likewise.
13115	* config/ip2k/ip2k.h: Likewise.
13116	* config/ip2k/ip2k.md: Likewise.
13117	* config/ip2k/libgcc.S: Likewise.
13118
131192002-09-19  Stephen Clarke <stephen.clarke@superh.com>
13120
13121	* config/sh/sh.h (UNSPEC_GOTOFF_P): Define.
13122	(GOTOFF_P): Extend to allow gotoff plus constant.
13123
131242002-09-18  Richard Henderson  <rth@redhat.com>
13125
13126	* ifcvt.c (noce_process_if_block): Correctly detect X modified
13127	with INSN_B before COND_EARLIEST.  Don't check A and B for
13128	modification in condition range.  Reorder INSN_B for A==B properly.
13129	(if_convert): Iterate until no matches for a block.
13130
131312002-09-18  Richard Henderson  <rth@redhat.com>
13132
13133	* calls.c (store_one_arg): Rename default_align to parm_align;
13134	always adjust parm_align for downward padding.
13135
131362002-09-18  Richard Henderson  <rth@redhat.com>
13137
13138	* toplev.c (backend_init): Move init_real_once invocation ...
13139	(do_compile): ... here.
13140
131412002-09-18  Richard Henderson  <rth@redhat.com>
13142
13143	* sibcall.c (optimize_sibling_and_tail_recursive_call): Also remove
13144	RTX_UNCHANGING_P markers for successful tail-recursive replacement.
13145
131462002-09-18  Richard Henderson  <rth@redhat.com>
13147
13148	* real.c (round_for_format): Collect sticky as unsigned long, not bool.
13149
131502002-09-19  Alan Modra  <amodra@bigpond.net.au>
13151
13152	* config/rs6000/rs6000.md: (floatdisf2): Rename to
13153	floatdisf2_internal1.
13154	(floatdisf2): New define_expand.
13155	(floatdisf2_internal2): Likewise.
13156
131572002-09-18  Richard Henderson  <rth@redhat.com>
13158
13159	* real.c (sticky_rshift_significand): Collect sticky as
13160	unsigned long, not bool.
13161
131622002-09-18  Ulrich Weigand  <uweigand@de.ibm.com>
13163
13164	* config/s390/s390.c (s390_address_cost): New function.
13165	config/s390/s390-protos.h (s390_address_cost): Add prototype.
13166	config/s390/s390.h (ADDRESS_COST): Call s390_address_cost.
13167	(RTX_COST): Use COSTS_N_INSNS.
13168
131692002-09-18  Douglas Rupp  <rupp@gnat.com>
13170	    Donn Terry  <donnte@microsoft.com>
13171
13172	* stor-layout.c (place_field): Handle alignment of whole
13173	structures when MSVC compatible bitfields are involved.
13174	Change method of computing location of MS bitfields to
13175	be compatible with #pragma pack(n).
13176
13177	* tree.h (record_layout_info): Add new field
13178	remaining_in_alignment.
13179
13180	* doc/tm.texi: (TARGET_MS_BITFIELD_LAYOUT_P): Update.
13181	(pragma pack): Add paragraph on MSVC bit-field packing.
13182
131832002-09-18  Richard Earnshaw  (reanrsha@arm.com)
13184
13185	PR optimization/7967
13186	* arm.md (ne_zeroextractsi): Add clobber of the condition code
13187	register.
13188
131892002-09-18  Kazu Hirata  <kazu@cs.umass.edu>
13190
13191	* config/s390/s390.c: Follow spelling conventions.
13192	* config/sh/lib1funcs.asm: Likewise.
13193	* config/sh/sh.c: Likewise.
13194	* config/sh/sh.h: Likewise.
13195	* config/sparc/sparc.c: Likewise.
13196	* config/sparc/sparc.h: Likewise.
13197	* config/sparc/sparc.md: Likewise.
13198	* config/stormy16/stormy16.c: Likewise.
13199	* config/stormy16/stormy16.h: Likewise.
13200	* config/v850/v850.c: Likewise.
13201	* config/v850/v850.h: Likewise.
13202	* config/vax/vax.c: Likewise.
13203	* config/vax/vax.h: Likewise.
13204
132052002-09-18  Nick Clifton  <nickc@redhat.com>
13206
13207	* config/rs60000/rs6000.c (rs6000_emit_move): Handle V1DImode moves.
13208	* config/rs60000/rs6000.c (SPE_VECTOR_MODE): Include V1DImode.
13209	* config/rs6000/spe.md (movv1di, movv1di_internal): New patterns.
13210
132112002-09-17  Zack Weinberg  <zack@codesourcery.com>
13212
13213	* ABOUT-GCC-NLS: Remove reference to enquire, and out-of-date
13214	statement that the only translation is to en_UK.
13215
132162002-09-17  Kazu Hirata  <kazu@cs.umass.edu>
13217
13218	* config/alpha/alpha.c: Follow spelling conventions.
13219	* config/alpha/alpha.h: Likewise.
13220	* config/alpha/alpha.md: Likewise.
13221	* config/arc/arc.h: Likewise.
13222	* config/arm/arm.c: Likewise.
13223	* config/arm/arm.h: Likewise.
13224	* config/arm/arm.md: Likewise.
13225	* config/arm/pe.c: Likewise.
13226	* config/arm/unknown-elf.h: Likewise.
13227	* config/avr/avr.c: Likewise.
13228	* config/avr/avr.h: Likewise.
13229	* config/c4x/c4x.c: Likewise.
13230	* config/cris/cris.c: Likewise.
13231	* config/cris/cris.h: Likewise.
13232
132332002-09-17  Samuel Figueroa  <figueroa@apple.com>
13234
13235	* final.c (final_scan_insn): Use new macro ASM_OUTPUT_ALIGN_WITH_NOP.
13236	* config/sparc/sparc.h (ASM_OUTPUT_ALIGN_WITH_NOP) New macro.
13237	* doc/tm.texi (ASM_OUTPUT_ALIGN_WITH_NOP) New description.
13238
132392002-09-17  Dale Johannesen  <dalej@apple.com>
13240
13241	* cfgcleanup.c (try_forward_edges):  Do not forward a
13242	branch to just after a loop exit before loop optimization;
13243	this interfered with doloop detection.
13244
132452002-09-17  Nick Clifton  <nickc@redhat.com>
13246
13247	* config/arm/arm.c (output_return_instruction): Do not
13248	writeback the stack pointer when it is being loaded.
13249	(arm_output_epilogue): Likewise.
13250
132512002-09-17  Kazu Hirata  <kazu@cs.umass.edu>
13252
13253	* optabs.c (prepare_cmp_insn): Let emit_library_call_value
13254	generate a pseudo reg that receives the result of a libcall.
13255	(prepare_float_lib_cmp): Likewise.
13256
132572002-09-17  Steve Ellcey  <sje@cup.hp.com>
13258
13259	* config/ia64/elf.h: Remove CPP_PREDEFINES.
13260
132612002-09-17  Nicola Pero  <n.pero@mi.flashnet.it>
13262
13263	Fix PR/7014 and related objc bugs:
13264	* c-typeck.c (comp_target_types): Added a reflexive argument.
13265	Pass it to ObjC when/if calling objc_comptypes().  Updated all
13266	callers to provide the appropriate reflexive argument.
13267	* objc/objc-act.c (objc_comptypes): Carefully checked and fixed
13268	typechecking for all cases of comparisons and assignments,
13269	particularly the obscure and less common ones involving protocols.
13270
132712002-09-17  Nick Clifton  <nickc@redhat.com>
13272
13273	* machmode.def (V1DImode): New mode.  A single element vector.
13274	* tree.h (TI_UV1DI_TYPE, TI_V1DI_TYPE): New tree_index enums.
13275	(unsigned_V1DI_type_node, V1D1_type_node): New type nodes.
13276	* tree.c (build_common_tree_nodes_2): Build
13277	unsigned_V1DI_type_node and V1D1_type_node.
13278	* c-common.c (c_common_type_for_mode): Return
13279	unsigned_V1DI_type_node or V1D1_type_node for V1DImode.
13280	* rtl.c (class_narrowest_): Start integer vector nodes with V1DImode.
13281
132822002-09-17  Nicola Pero  <n.pero@mi.flashnet.it>
13283
13284	* doc/objc.texi (Constant string objects): Extended documentation
13285	to make clear that the constant string class ivar layout is
13286	completely fixed.
13287
132882002-09-17  Roger Sayle  <roger@eyesopen.com>
13289
13290	* cfgrtl.c (flow_delete_block_noexpunge): Delete orphaned
13291	NOTE_INSN_LOOP_CONT notes when deleting basic blocks.
13292
132932002-09-16  Richard Henderson  <rth@redhat.com>
13294
13295	* expr.c (emit_block_move): Set memory block size as appropriate
13296	for the copy.
13297
132982002-09-16  Richard Henderson  <rth@redhat.com>
13299
13300	PR fortran/3924
13301	* sdbout.c (sdbout_symbol): Don't handle offsets from a symbol.
13302
133032002-09-16  Richard Henderson  <rth@redhat.com>
13304
13305	* emit-rtl.c (set_mem_attributes_minus_bitpos): Adjust SIZE
13306	as well as OFFSET for BITPOS.
13307
133082002-09-16  Jeff Garzik  <jgarzik@mandrakesoft.com>
13309
13310	* config.gcc: Treat winchip_c6-*|winchip2-*|c3-* as pentium-mmx.
13311	* config/i386/i386.c (processor_alias_table): Add winchip-c6,
13312	winchip2 and c3.
13313	* doc/invoke.texi: Mention new aliases.
13314
133152002-09-16  John David Anglin  <dave@hiauly1.hia.nrc.ca>
13316
13317	* calls.c (store_one_arg): Set default alignment for BLKmode arguments
13318	to BITS_PER_UNIT when ARGS_GROW_DOWNWARD and the padding direction is
13319	downward.
13320	* function.c (pad_below):  Always compile.
13321	(locate_and_pad_parm): If defined ARGS_GROW_DOWNWARD, pad argument to
13322	alignment when it is not in a register or REG_PARM_STACK_SPACE is true.
13323	Pad below when the argument is not in a register and the padding
13324	direction is downward.
13325
13326	* pa-64.h (MUST_PASS_IN_STACK): Move define to pa.h.
13327	(PAD_VARARGS_DOWN): Define.
13328	* pa.c (function_arg_padding): Revise padding directions to make them
13329	compatible with the 32 and 64-bit runtime architecture documentation.
13330	(hppa_va_arg):  Add code to handle variable and size zero arguments
13331	passed by reference on TARGET_64BIT.  Reformat.
13332	(function_arg): Use a PARALLEL for BLKmode and aggregates args on
13333	TARGET_64BIT.  Use a DImode PARALLEL for BLKmode args 5 to 8 bytes
13334	wide when !TARGET_64BIT.  Move forward check for mode==VOIDmode.
13335	Add comments.
13336	* pa.h (MAX_PARM_BOUNDARY): Correct define for TARGET_64BIT.
13337	(RETURN_IN_MEMORY): Return size zero types in memory.
13338	(FUNCTION_VALUE): Return TFmode in general registers.
13339	(MUST_PASS_IN_STACK): Define.
13340	(FUNCTION_ARG_BOUNDARY): Simplify.
13341	(FUNCTION_ARG_PASS_BY_REFERENCE): Pass variable and zero sized types
13342	by reference.
13343	(FUNCTION_ARG_CALLEE_COPIES): Define to FUNCTION_ARG_PASS_BY_REFERENCE.
13344
133452002-09-16  Richard Henderson  <rth@redhat.com>
13346
13347	* real.c (do_fix_trunc): New.
13348	(real_arithmetic): Call it.
13349	* simplify-rtx.c (simplify_unary_operation): Handle FIX
13350	with a floating-point result mode.
13351
133522002-09-16  Richard Henderson  <rth@redhat.com>
13353
13354	* builtin-types.def (BT_FN_FLOAT_CONST_STRING): New.
13355	(BT_FN_DOUBLE_CONST_STRING, BT_FN_LONG_DOUBLE_CONST_STRING): New.
13356	* builtins.def (__builtin_nan, __builtin_nanf, __builtin_nanl): New.
13357	(__builtin_nans, __builtin_nansf, __builtin_nansl): New.
13358	* builtins.c (fold_builtin_nan): New.
13359	(fold_builtin): Call it.
13360	* real.c (real_nan): Parse a non-empty string.
13361	(round_for_format): Fix NaN significand truncation.
13362	* real.h (real_nan): Return bool.
13363	* doc/extend.texi: Document new builtins.
13364
133652002-09-16  Jason Merrill  <jason@redhat.com>
13366	    Danny Smith  <dannysmith@users.sourceforge.net>
13367
13368	* config/i386/winnt.c (ix86_handle_dll_attribute): Set
13369	DECL_EXTERN and TREE_PUBLIC for dllimported variables here...
13370	(i386_pe_mark_dllimport): Not here.
13371
133722002-09-16  Nathan Sidwell  <nathan@codesourcery.com>
13373
13374	* c-semantics.c (genrtl_do_stmt): Cope with NULL cond.
13375
133762002-09-16  Geoffrey Keating  <geoffk@redhat.com>
13377
13378	* config/rs6000/rs6000.c (build_mask64_2_operands): Suppress
13379	warnings about unused operands when HOST_BITS_PER_WIDE_INT is
13380	< 64.
13381	(rs6000_emit_cmove): Use real_isinf not target_isinf.
13382
133832002-09-16  Kazu Hirata  <kazu@cs.umass.edu>
13384
13385	* calls.c (emit_library_call_value_1): Don't refer to
13386	hard_libcall_value.
13387	* optabs.c (prepare_float_lib_cmp): Likewise.
13388
133892002-09-16  Geoffrey Keating  <geoffk@apple.com>
13390
13391	* ggc-common.c (ggc_mark_rtx_children_1): Update for changed name
13392	mangling.
13393
13394	The following changes are merged from pch-branch:
13395
13396	* doc/gty.texi (GTY Options): Document %a.
13397	* gengtype.c (do_scalar_typedef): New function.
13398	(process_gc_options): Handle `length' option.
13399	(set_gc_used_type): A pointer to an array of structures doesn't
13400	qualify as a pointer to a structure.
13401	(output_escaped_param): Add `%a' escape.
13402	(write_gc_structure_fields): Allow 'desc' on array of unions.
13403	(main): Define `uint8', `jword' and `JCF_u2' as scalars; use
13404	do_scalar_typedef.
13405
13406	* gengtype.c (enum rtx_code): Make global.
13407	(rtx_format): Make global.
13408	(rtx_next): New.
13409	(gen_rtx_next): New.
13410	(write_rtx_next): New.
13411	(adjust_field_rtx_def): Skip fields marked by chain_next.
13412	(open_base_files): Delete redundant prototype.
13413	(write_enum_defn): New.
13414	(output_mangled_typename): Correct abort call.
13415	(write_gc_marker_routine_for_structure): Handle chain_next and
13416	chain_prev options.
13417	(finish_root_table): Don't output redundant \n.
13418	(main): Call gen_rtx_next, write_rtx_next, write_enum_defn.
13419	* c-tree.h (union lang_tree_node): Add chain_next option.
13420
13421	* gengtype.h (NUM_PARAM): New definition.
13422	(struct type): For TYPE_PARAM_STRUCT, allow multiple parameters.
13423	* gengtype.c (find_param_structure): New.
13424	(adjust_field_type): Handle param<n>_is option.
13425	(process_gc_options): Detect use_params option.  Update callers.
13426	(set_gc_used_type): Add 'param' parameter, update callers.  Handle
13427	'use_params' option.
13428	(open_base_files): Add splay-tree.h to list of files included.
13429	(output_mangled_typename): New.
13430	(write_gc_structure_fields): Update 'param' parameter to support
13431	multiple parameters.  Change name mangling.  Allow parameterized
13432	fields to have an apparent scalar type.  Handle param<n>_is options,
13433	use_param option.
13434	(write_gc_marker_routine_for_structure): Update for change to name
13435	mangling.  Better guess the output file for parameterized types.
13436	(write_gc_types): Update for change to name mangling.
13437	(write_gc_root): Update for change to name mangling.  Handle (ignore)
13438	param<n>_is options.
13439	* doc/gty.texi (GTY Options): Add description of param<n>_is
13440	options, use_params option.
13441	* ggc.h (ggc_mark_rtx): Update for changed name mangling.
13442	* gengtype-lex.l: Produce token for param<n>_is.
13443	* gengtype-yacc.y: Parse param<n>_is.
13444
13445	* gengtype.c (adjust_field_tree_exp): Don't name a variable 'rindex'.
13446
13447	* rtl.c: Update comment describing rtx_format.
13448	* rtl.h (union rtunion): Separate definition and typedef.
13449	(struct rtx_def): Use gengtype to mark.
13450	* Makefile.in (gengtype.o): Also depend on rtl.def.
13451	* ggc.h (ggc_mark_rtx_children): Delete prototype.
13452	(ggc_mark_rtx): Change to alias of gengtype-generated routine.
13453	* ggc-common.c (ggc_mark_rtx_children): Delete.
13454	(ggc_mark_rtx_children_1): Delete.
13455	(gt_ggc_m_rtx_def): Delete.
13456	* gengtype.c (adjust_field_rtx_def): New.
13457	(adjust_field_type): Call adjust_field_rtx_def.
13458	(write_gc_structure_fields): Add 'default' case to switch if none
13459	is specified; remove unused code.
13460
13461	* tree.h (struct tree_exp): Update for change to meaning
13462	of special.
13463	* gengtype.c (adjust_field_tree_exp): New function.
13464	(adjust_field_type): Handle `tree_exp' special here.
13465	(write_gc_structure_fields): Don't handle `tree_exp' special here.
13466	Handle new `dot' option.
13467
13468	* gengtype.h: Make `info' a pointer-to-const.
13469	* gengtype-yacc.y (yacc_ids): Use xasprintf.
13470
13471	* gengtype.c (write_gc_structure_fields): Remove implementation
13472	of `always' option, add `default' option.
13473	* doc/gty.texi (GTY Options): Remove documentation of `always',
13474	add `default'.
13475
134762002-09-16  Hans-Peter Nilsson  <hp@bitrange.com>
13477
13478	* output.h: Remove #ifdef RTX_CODE and #ifdef TREE_CODE.
13479
134802002-09-16  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
13481
13482	* m68hc11.md (addhi_sp): Fix uninitialized variable bug.
13483
13484	* c4x-c.c, c4x.c, darwin.c, i370-c.c, m32r.c: Include tm_p.h
13485	instead of the *-protos.h file directly.
13486	* t-c4x, t-i370, t-v850: Depend on $(TM_P_H).
13487	* darwin.c (machopic_output_stub): Move prototype ...
13488	* darwin-protos.h (machopic_output_stub): ... here.
13489	* rs6000-protos.h (machopic_output_stub): Don't declare.
13490
134912002-09-16  Richard Henderson  <rth@redhat.com>
13492
13493	* c-common.c (builtin_define_float_constants): Emit __FOO_DENORM_MIN__.
13494
134952002-09-16  Richard Henderson  <rth@redhat.com>
13496
13497	* real.c, real.h: Rewrite from scratch.
13498
13499	* Makefile.in (simplify-rtx.o): Depend on TREE_H.
13500	(paranoia): New target.
13501	* builtins.c (fold_builtin_inf): Use new real.h interface.
13502	* c-common.c (builtin_define_with_hex_fp_value): Likewise.
13503	* c-lex.c (interpret_float): Likewise.
13504	* emit-rtl.c (gen_lowpart_common): Likewise.
13505	* optabs.c (expand_float): Use real_2expN.
13506	* config/ia64/ia64.md (divsi3, udivsi3): Likewise.
13507	* defaults.h (INTEL_EXTENDED_IEEE_FORMAT): New.
13508	(FLOAT_WORDS_BIG_ENDIAN): New.
13509	* cse.c (find_comparison_args): Don't pass FLOAT_STORE_FLAG_VALUE
13510	directly to REAL_VALUE_NEGATIVE.
13511	* loop.c (canonicalize_condition): Likewise.
13512	* simplify-rtx.c: Include tree.h.
13513	(simplify_unary_operation): Don't handle FIX and UNSIGNED_FIX
13514	with floating-point result modes.
13515	* toplev.c (backend_init): Call init_real_once.
13516
13517	* fold-const.c (force_fit_type): Don't call CHECK_FLOAT_VALUE.
13518	* tree.c (build_real): Likewise.
13519	* config/alpha/alpha.c, config/vax/vax.c (float_strings,
13520	float_values, inited_float_values, check_float_value): Remove.
13521	* config/alpha/alpha.h, config/m68hc11/m68hc11.h,
13522	config/m88k/m88k.h, config/vax/vax.h (CHECK_FLOAT_VALUE): Remove.
13523	* doc/tm.texi (CHECK_FLOAT_VALUE): Remove.
13524	(VAX_HALFWORD_ORDER): Remove.
13525
135262002-09-16  Ulrich Weigand  <uweigand@de.ibm.com>
13527
13528	* config/s390/s390.c: (legitimize_la_operand): Remove, replace by ...
13529	(s390_load_address): ... this new function.
13530	(s390_decompose_address): Allow the argument pointer and all
13531	virtual registers as 'pointer' registers.
13532	(s390_expand_plus_operand): Use s390_load_address.
13533	config/s390/s390.md (movti, movdi, movdf splitters): Likewise.
13534	("force_la_31"): New insn pattern.
13535	config/s390/s390-protos.h (legitimize_la_operand): Remove.
13536	(s390_load_address): Add prototype.
13537
13538	* config/s390/s390.c: Include "optabs.h".
13539	(s390_expand_movstr, s390_expand_clrstr, s390_expand_cmpstr): New.
13540	config/s390/s390-protos.h (s390_expand_movstr, s390_expand_clrstr,
13541	s390_expand_cmpstr): Add prototypes.
13542	config/s390/s390.md ("movstrdi", "movstrsi"): Call s390_expand_movstr.
13543	("movstrdi_short"): Rename to "movstr_short_64".  Change predicates
13544	for operands 0 and 1 to "memory_operand".  Add type attribute.
13545	("movstrsi_short"): Rename to "movstr_short_31".  Change predicates
13546	for operands 0 and 1 to "memory_operand".  Add type attribute.
13547	("movstrdi_long", "movstrsi_long"): Remove.
13548	("movstrdi_64"): Rename to "movstr_long_64". Add type attribute.
13549	("movstrsi_31"): Rename to "movstr_long_31". Add type attribute.
13550	("clrstrdi", "clrstrsi"): Call s390_expand_clrstr.
13551	("clrstrsico"): Remove, replace by ...
13552	("clrstr_short_64", "clrstr_short_31"): ... these new patterns.
13553	("clrstrsi_64"): Rename to "clrstr_long_64".
13554	("clrstrsi_31"): Rename to "clrstr_long_31".
13555	("cmpstrdi", "cmpstrsi"): Call s390_expand_cmpstr.
13556	("cmpstr_const"): Remove, replace by ...
13557	("cmpstr_short_64", "cmpstr_short_31"): ... these new patterns.
13558	("cmpstr_64"): Rename to "cmpstr_long_64".
13559	("cmpstr_31"): Rename to "cmpstr_long_31".
13560
135612002-09-16  Kazu Hirata  <kazu@cs.umass.edu>
13562
13563	* ABOUT-NLS: Follow spelling conventions.
13564	* ChangeLog: Likewise.
13565	* ChangeLog.1: Likewise.
13566	* ChangeLog.2: Likewise.
13567	* ChangeLog.3: Likewise.
13568	* ChangeLog.4: Likewise.
13569	* ChangeLog.5: Likewise.
13570	* ChangeLog.6: Likewise.
13571	* FSFChangeLog.10: Likewise.
13572	* FSFChangeLog.11: Likewise.
13573	* c-common.c: Likewise.
13574	* c-lex.c: Likewise.
13575	* c-objc-common.c: Likewise.
13576	* cppexp.c: Likewise.
13577	* cppinit.c: Likewise.
13578	* cpplex.c: Likewise.
13579	* doloop.c: Likewise.
13580	* flow.c: Likewise.
13581	* function.c: Likewise.
13582	* integrate.c: Likewise.
13583	* loop.c: Likewise.
13584	* reg-stack.c: Likewise.
13585	* reload.h: Likewise.
13586	* ssa.c: Likewise.
13587
135882002-09-15  Kazu Hirata  <kazu@cs.umass.edu>
13589
13590	* ChangeLog: Follow spelling conventions.
13591	* ChangeLog.0: Likewise.
13592	* ChangeLog.1: Likewise.
13593	* ChangeLog.2: Likewise.
13594	* ChangeLog.4: Likewise.
13595	* ChangeLog.6: Likewise.
13596	* config.gcc: Likewise.
13597	* dwarfout.c: Likewise.
13598	* reload1.c: Likewise.
13599	* simplify-rtx.c: Likewise.
13600	* unwind-sjlj.c: Likewise.
13601	* config/avr/avr.h: Likewise.
13602	* config/d30v/d30v.h: Likewise.
13603	* config/frv/frv.c: Likewise.
13604	* config/frv/frv.h: Likewise.
13605	* config/ip2k/ip2k.h: Likewise.
13606	* config/m88k/m88k-move.sh: Likewise.
13607	* config/stormy16/stormy16.c: Likewise.
13608	* config/stormy16/stormy16.h: Likewise.
13609	* doc/extend.texi: Likewise.
13610	* doc/interface.texi: Likewise.
13611	* doc/invoke.texi: Likewise.
13612	* doc/md.texi: Likewise.
13613	* doc/rtl.texi: Likewise.
13614	* doc/tm.texi: Likewise.
13615	* doc/trouble.texi: Likewise.
13616	* ginclude/float.h: Likewise.
13617	* treelang/treelang.texi: Likewise.
13618
136192002-09-15  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
13620
13621	* i386-protos.h (i386_pe_dllexport_name_p,
13622	i386_pe_dllimport_name_p, i386_pe_unique_section,
13623	i386_pe_declare_function_type, i386_pe_record_external_function,
13624	i386_pe_record_exported_symbol, i386_pe_asm_file_end): Add
13625	prototype.
13626	* i386/t-cygwin (winnt.o): Depend on $(TM_P_H).
13627	* i386/t-interix (winnt.o): Likewise.
13628
13629	* v850-protos.h (v850_output_addr_const_extra): Prototype.
13630
136312002-09-15  Jason Thorpe  <thorpej@wasabisystems.com>
13632
13633	* config/mips/netbsd.h (TARGET_OS_CPP_BUILTINS): Add
13634	MIPS ABI CPP macros.
13635	(TARGET_CPU_CPP_BUILTINS): Redefine.
13636	(SUBTARGET_EXTRA_SPECS): Remove subtarget_endian_default.
13637	(SUBTARGET_ENDIAN_DEFAULT_SPEC): Remove.
13638
136392002-09-15  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
13640
13641	* ia64/aix.h (TARGET_OS_CPP_BUILTINS): Fix typo.
13642
136432002-09-15  Kazu Hirata  <kazu@cs.umass.edu>
13644
13645	* ChangeLog: Follow spelling conventions.
13646	* ChangeLog.0: Likewise.
13647	* ChangeLog.1: Likewise.
13648	* ChangeLog.2: Likewise.
13649	* ChangeLog.3: Likewise.
13650	* ChangeLog.4: Likewise.
13651	* ChangeLog.5: Likewise.
13652	* ChangeLog.6: Likewise.
13653	* FSFChangeLog.10: Likewise.
13654	* FSFChangeLog.11: Likewise.
13655	* c-common.c: Likewise.
13656	* c-common.h: Likewise.
13657	* c-format.c: Likewise.
13658	* c-opts.c: Likewise.
13659	* cpplib.c: Likewise.
13660	* langhooks.h: Likewise.
13661	* real.c: Likewise.
13662	* reg-stack.c: Likewise.
13663	* toplev.c: Likewise.
13664	* config/arm/arm.c: Likewise.
13665	* config/arm/arm.md: Likewise.
13666	* config/arm/linux-gas.h: Likewise.
13667	* config/arm/netbsd.h: Likewise.
13668	* config/c4x/c4x.c: Likewise.
13669	* config/c4x/c4x.h: Likewise.
13670	* config/c4x/c4x.md: Likewise.
13671	* config/c4x/libgcc.S: Likewise.
13672	* config/fr30/fr30.md: Likewise.
13673	* config/frv/frv.md: Likewise.
13674	* config/ia64/ia64.md: Likewise.
13675	* config/mips/mips.h: Likewise.
13676	* config/mn10300/mn10300.c: Likewise.
13677	* config/stormy16/stormy16.c: Likewise.
13678	* config/v850/v850.md: Likewise.
13679	* doc/extend.texi: Likewise.
13680	* doc/invoke.texi: Likewise.
13681	* doc/md.texi: Likewise.
13682
136832002-09-15  Jason Thorpe  <thorpej@wasabisystems.com>
13684
13685	* config/netbsd.h (LIB_SPEC): Include the appropriate pthread
13686	library if -pthread is specified.
13687
136882002-09-15  Jason Thorpe  <thorpej@wasabisystems.com>
13689
13690	* config.gcc (*-*-netbsd*): Set thread_file to 'posix'
13691	for --enable-threads=yes and --enable-threads=posix.
13692
136932002-09-15  Kazu Hirata  <kazu@cs.umass.edu>
13694
13695	* config/sparc/cypress.md: Replace Sparc with SPARC.
13696	* config/sparc/freebsd.h: Likewise.
13697	* config/sparc/gmon-sol2.c: Likewise.
13698	* config/sparc/hypersparc.md: Likewise.
13699	* config/sparc/lb1spc.asm: Likewise.
13700	* config/sparc/lb1spl.asm: Likewise.
13701	* config/sparc/linux.h: Likewise.
13702	* config/sparc/linux64.h: Likewise.
13703	* config/sparc/lynx.h: Likewise.
13704	* config/sparc/sol2.h: Likewise.
13705	* config/sparc/sparc-modes.def: Likewise.
13706	* config/sparc/sparc.c: Likewise.
13707	* config/sparc/sparc.h: Likewise.
13708	* config/sparc/sparc.md: Likewise.
13709	* config/sparc/sparclet.md: Likewise.
13710	* config/sparc/supersparc.md: Likewise.
13711	* config/sparc/sysv4.h: Likewise.
13712	* config/sparc/vxsim.h: Likewise.
13713	* config/sparc/vxsparc64.h: Likewise.
13714
137152002-09-14  Marek Michalkiewicz  <marekm@amelek.gda.pl>
13716
13717	* config/avr/avr.c (output.h): Move after inclusion of tree.h.
13718
137192002-09-14  Kazu Hirata  <kazu@cs.umass.edu>
13720
13721	* ChangeLog: Follow spelling conventions.
13722	* ChangeLog.0: Likewise.
13723	* ChangeLog.2: Likewise.
13724	* ChangeLog.3: Likewise.
13725	* ChangeLog.4: Likewise.
13726	* ChangeLog.5: Likewise.
13727	* ChangeLog.6: Likewise.
13728	* cppfiles.c: Likewise.
13729	* cppinit.c: Likewise.
13730	* cpplib.h: Likewise.
13731	* cse.c: Likewise.
13732	* debug.h: Likewise.
13733	* df.c: Likewise.
13734	* dominance.c: Likewise.
13735	* hashtable.c: Likewise.
13736	* hashtable.h: Likewise.
13737	* loop.c: Likewise.
13738	* config/arm/README-interworking: Likewise.
13739	* config/arm/arm.c: Likewise.
13740	* config/arm/arm.h: Likewise.
13741	* config/arm/arm.md: Likewise.
13742	* config/dsp16xx/dsp16xx.h: Likewise.
13743	* config/frv/frv.c: Likewise.
13744	* config/frv/frv.h: Likewise.
13745	* config/ip2k/ip2k.h: Likewise.
13746	* config/rs6000/rs6000.c: Likewise.
13747	* config/stormy16/stormy-abi: Likewise.
13748	* config/stormy16/stormy16.h: Likewise.
13749	* config/v850/v850.c: Likewise.
13750
137512002-09-14  Kazu Hirata  <kazu@cs.umass.edu>
13752
13753	* loop.c: Fix a comment typo.
13754
137552002-09-14  Kazu Hirata  <kazu@cs.umass.edu>
13756
13757	* config/fr30/fr30.h: Fix comment typos.
13758	* config/frv/frv.c: Likewise.
13759	* config/i386/xmmintrin.h: Likewise.
13760	* config/mips/mips.c: Likewise.
13761	* config/sh/sh.c: Likewise.
13762
137632002-09-14  Kazu Hirata  <kazu@cs.umass.edu>
13764
13765	* haifa-sched.c: Follow spelling conventions.
13766	* regclass.c: Likewise.
13767	* regrename.c: Likewise.
13768	* config/fp-bit.c: Likewise.
13769	* config/frv/frv.h: Likewise.
13770	* config/m88k/m88k.c: Likewise.
13771	* config/mcore/mcore.c: Likewise.
13772	* config/rs6000/darwin.h: Likewise.
13773	* config/rs6000/gnu.h: Likewise.
13774	* config/rs6000/linux.h: Likewise.
13775	* config/rs6000/linux64.h: Likewise.
13776	* config/rs6000/rs6000.c: Likewise.
13777	* config/rs6000/rs6000.h: Likewise.
13778	* config/sh/sh.c: Likewise.
13779	* config/sparc/sparc.c: Likewise.
13780	* config/sparc/ultra1_2.md: Likewise.
13781
137822002-09-14  Stephane Carrez  <stcarrez@nerim.fr>
13783
13784	* config/m68hc11/m68hc11.md ("movdi_internal"): Allow any offsetable
13785	memory operand when source is 0 (K constraint).
13786	("movsi_internal"): Likewise.
13787	("movdf_internal"): Likewise.
13788	("movsf_internal"): Likewise.
13789
137902002-09-14  Alan Modra  <amodra@bigpond.net.au>
13791
13792	* config/rs6000/rs6000.c (rs6000_elf_encode_section_info): Use
13793	targetm.binds_local_p to set SYMBOL_REF_FLAG.
13794	(rs6000_xcoff_encode_section_info): Likewise.
13795	* config/rs6000/xcoff.h (ASM_DECLARE_FUNCTION_NAME): Likewise.
13796
137972002-09-10  Theodore A. Roth  <troth@verinet.com>
13798
13799	* gcc/config/avr/avr.h: Set default options for C++ for avr.
13800
138012002-09-13  Richard Henderson  <rth@redhat.com>
13802
13803	* Makefile.in (toplev.o): Depend on real.h.
13804	(print-rtl.o, varasm.o, ifcvt.o): Likewise.
13805
138062002-09-14  Alan Modra  <amodra@bigpond.net.au>
13807
13808	* doc/tm.texi (DBX_OUTPUT_NFUN): Describe.
13809	* dbxout.c (dbxout_function_end): Use DBX_OUTPUT_NFUN.
13810	* config/rs6000/linux64.h (DBX_OUTPUT_NFUN): Define.
13811
138122002-09-13  Nathan Sidwell  <nathan@codesourcery.com>
13813
13814	* ggc-common.c (ggc_mark_roots): Don't iterate NULL hash tables.
13815
138162002-09-13  Steve Ellcey  <sje@cup.hp.com>
13817
13818	* config.gcc (ia64*-*-aix*, ia64*-*-elf*, ia64*-*-freebsd*,
13819	ia64*-*-linux*): Set extra_parts.
13820	* config/ia64/t-aix (EXTRA_PARTS): Remove.
13821	* config/ia64/t-ia64 (EXTRA_PARTS): Remove.
13822
138232002-09-13  Kazu Hirata  <kazu@cs.umass.edu>
13824
13825	* config/h8300/fixunssfsi.c: Replace H8/S with H8S.
13826	* config/h8300/h8300.c: Likewise.
13827	* config/h8300/h8300.h: Likewise.
13828	* config/h8300/h8300.md: Likewise.
13829	* doc/invoke.texi: Likewise.
13830
138312002-09-13  Kazu Hirata  <kazu@cs.umass.edu>
13832
13833	* config/h8300/h8300.c (h8300_init_once): Fix formatting.
13834
138352002-09-13  Richard Henderson  <rth@redhat.com>
13836
13837	* config/alpha/alpha.md (attr type): Add callpal.
13838	(imb, trap, load_tp, set_tp): Use it.
13839	* config/alpha/ev4.md (ev4_callpal): New.
13840	* config/alpha/ev5.md (ev5_callpal): New.
13841	* config/alpha/ev6.md (ev6_ibr): Handle callpal.
13842	* config/alpha/alpha.c (alphaev4_insn_pipe): Handle TYPE_CALLPAL.
13843	(alphaev5_insn_pipe): Likewise.
13844
138452002-09-13  Andreas Jaeger  <aj@suse.de>
13846
13847	* Makefile.in (print-rtl.o): Depend on CONFIG_H.
13848
138492002-09-13  Steve Ellcey  <sje@cup.hp.com>
13850
13851	* config/ia64/t-hpux (LIBGCC1_TEST, STMP_FIXPROTO,
13852	LIB2ADDEH): New, set to NULL.
13853	(SHLIB_EXT, SHLIB_LINK, SHLIB_INSTALL, SHLIB_MKMAP): New.
13854
138552002-09-13  Steve Ellcey  <sje@cup.hp.com>
13856
13857	* config/ia64/quadlib.c (_U_Qfcmp): Make extern.
13858	(_U_Qfcnvfxt_quad_to_sgl): Remove declaration.
13859	(_U_Qfeq, _U_Qfne, _U_Qfgt, _U_Qfge, U_Qflt, U_Qfle, _U_Qfcomp):
13860	Add declarations.
13861	(_U_Qfneg): Remove.
13862
138632002-09-13 Dhananjay Deshpande  <dhananjayd@kpit.com>
13864
13865	* config/h8300/h8300.h (EIGHTBIT_CONSTANT_ADDRESS_P): Add support
13866	for H8/300, H8S aa:8 mode.
13867	(TINY_CONSTANT_ADDRESS_P): Add support for H8S aa:16 mode.
13868	* config/h8300/h8300.c (h8300_adjust_insn_length): Adjust length
13869	for H8/300 aa:8 mode.
13870
138712002-09-13  Hartmut Penner  <hpenner@de.ibm.com>
13872
13873	* config/s390/s390.md ("trap", "conditional_trap", "*trap"): New
13874	insns.
13875
138762002-09-12  Richard Henderson  <rth@redhat.com>
13877
13878	* Makefile.in (HOST_PRINT): Use print-rtl1.o
13879	(print-rtl.o): Don't define GENERATOR_FILE.
13880	(print-rtl1.o): Rename from $(BUILD_PREFIX_1)print-rtl.o.
13881	* print-rtl.c (print_rtx): Include CONST_DOUBLE fp decimal output
13882	unless GENERATOR_FILE.
13883
138842002-09-12  Stan Shebs  <shebs@apple.com>
13885
13886	* config/darwin.h (USER_LABEL_PREFIX): Define here...
13887	* config/i386/darwin.h: ... instead of here.
13888
13889	* target.h (struct gcc_target): New field
13890	terminate_dw2_eh_frame_info.
13891	* target-def.h (TARGET_TERMINATE_DW2_EH_FRAME_INFO): Define.
13892	(TARGET_INITIALIZER): Add it.
13893	* dwarf2out.c (output_call_frame_info): Use target hook.
13894	* dwarf2asm.c (dw2_asm_output_delta): Use macro
13895	ASM_OUTPUT_DWARF_DELTA if defined.
13896	* doc/tm.texi (TARGET_TERMINATE_DW2_EH_FRAME_INFO): Document.
13897	(ASM_OUTPUT_DWARF_DELTA): Ditto.
13898	(ASM_OUTPUT_DWARF_OFFSET): Ditto.
13899	(ASM_OUTPUT_DWARF_PCREL): Ditto.
13900	* config.gcc (i[34567]86-*-darwin*): Define extra_parts.
13901	(powerpc-*-darwin*): Ditto.
13902	* crtstuff.c [OBJECT_FORMAT_MACHO]: Update the Mach-O bits
13903	to work correctly for Darwin.
13904	* config/darwin.h (OBJECT_FORMAT_MACHO): Define.
13905	(STARTFILE_SPEC): Add crtbegin.o.
13906	(ENDFILE_SPEC): Define.
13907	(EXTRA_SECTION_FUNCTIONS): Put gcc_except_tab in data segment.
13908	(ASM_PREFERRED_EH_DATA_FORMAT): Handle more cases.
13909	(ASM_OUTPUT_DWARF_DELTA): Define.
13910	(TARGET_TERMINATE_DW2_EH_FRAME_INFO): Define.
13911	* config/darwin.c (darwin_asm_output_dwarf_delta): New function.
13912
139132002-09-13  Alan Modra  <amodra@bigpond.net.au>
13914
13915	* config/rs6000/rs6000.c (rs6000_emit_load_toc_table): Remove "if"
13916	nesting.  Correct test for non-PowerPC64 ELF ABI_AIX.
13917	* config/rs6000/rs6000.md (load_toc_v4_PIC*): Disable when ABI_AIX.
13918
139192002-09-12  Zack Weinberg  <zack@codesourcery.com>
13920
13921	* toplev.c: Move default definition of USER_LABEL_PREFIX...
13922	* defaults.h: ... here.
13923
139242002-09-12  Richard Henderson  <rth@redhat.com>
13925
13926	* vax.c: Include tree.h earlier.
13927
139282002-09-12  Stan Shebs  <shebs@apple.com>
13929
13930	* config/darwin.c (machopic_finish): Remove #if 0 chunks.
13931	(machopic_operand_p): Ditto.
13932
139332002-09-12  Kazu Hirata  <kazu@cs.umass.edu>
13934
13935	* config/arm/arm.c (arm_compute_initial_elimination_offset):
13936	Fix a comment typo.
13937
139382002-09-12  Kazu Hirata  <kazu@cs.umass.edu>
13939
13940	* toplev.c (do_abort): Fix a comment typo.
13941
139422002-09-12  Kazu Hirata  <kazu@cs.umass.edu>
13943
13944	* cselib.c: Fix comment formatting.
13945	* gengtype.c: Likewise.
13946
139472002-09-12  Kazu Hirata  <kazu@cs.umass.edu>
13948
13949	* config/h8300/h8300.md (udivmodqi4): Do not use an expander.
13950	(udivmodhi4): Likewise.
13951
139522002-09-12  Graham Stott  <graham.stott@btinternet.com>
13953	    Roger Sayle  <roger@eyesopen.com>
13954
13955	* i386.c (any_fp_register_operand, fp_register_operand,
13956	register_and_not_any_fp_reg_operand, register_and_not_fp_reg_operand):
13957	New predicate functions.
13958	* i386-protos.h:  Add their prototypes.
13959	* i386.h: Add them to PREDICATE_CODES.
13960	* i386.md ("*pushsf_rex64"+2, "*pushsf_rex64"+3, "*pushdf_integer"+1,
13961	"*pushdf_integer"+2, "*pushtf_integer"+1, "*pushtf_integer"+2,
13962	"*pushtf_integer"+3, "*pushtf_integer"+4, "*dummy_extendsfdf2"+1,
13963	"*dummy_extendsfdf2"+2, "*dummy_extendsfxf2"+1,
13964	"*dummy_extendsftf2"+1, "*dummy_extendsftf2"+2,
13965	"*dummy_extenddfxf2"+1, "*dummy_extenddftf2"+1,
13966	"*dummy_extenddftf2"+2, "*negsf2_if"+1, "*negsf2_if"+2,
13967	"*negdf2_if_rex64"+1, "*negdf2_if_rex64"+2, "*negxf2_if"+1,
13968	"*negxf2_if"+2, "*negtf2_if"+1, "*negtf2_if"+2, "*abssf2_if"+1,
13969	"*abssf2_if"+2, "*absdf2_if_rex64"+1, "*absdf2_if_rex64"+2,
13970	"*absxf2_if"+1, "*absxf2_if"+2, "*abstf2_if"+1, "*abstf2_if"+2):
13971	Use these new predicates to simplify and correct the use of
13972	FP_REG_P, ANY_FP_REG_P, FP_REGNO_P and any ANY_FP_REGNO_P.
13973
139742002-09-12  Jason Merrill  <jason@redhat.com>
13975
13976	* diagnostic.c (output_add_identifier): New fn.
13977	* diagnostic.h: Declare it.
13978
13979	* calls.c (store_one_arg): Use size_in_bytes to determine the
13980	amount of space to push.
13981
139822002-09-12  Jakub Jelinek  <jakub@redhat.com>
13983
13984	* config/sparc/linux64.h (STARTFILE_SPEC32): Fix a typo.
13985
139862002-09-12  Ulrich Weigand  <uweigand@de.ibm.com>
13987
13988	* config/s390/s390-modes.def (CCAPmode, CCANmode): New CC modes.
13989	* config/s390/s390.c (s390_match_ccmode_set): Support new CC modes.
13990	(s390_select_ccmode): Likewise.
13991	(s390_branch_condition_mask): Likewise.
13992	(optimization_options): Do not set flag_branch_on_count.
13993	(s390_split_branches): Handle doloop branches.
13994	(s390_chunkify_pool): Likewise.
13995	* config/s390/s390.md ("*adddi3_imm_cc", "*addsi3_imm_cc"): New insns.
13996	("doloop_end"): New expander.
13997	("doolop_si", "*doloop_si_long", "doloop_di", "*doloop_di_long",
13998	associated splitters): New.
13999
140002002-09-11  Hartmut Penner  <hpenner@de.ibm.com>
14001
14002	* fold-const.c (make_range): Only narrow to signed range if
14003	the signed range is smaller than the unsigned range.
14004
140052002-09-12  Alan Modra  <amodra@bigpond.net.au>
14006
14007	* emit-rtl.c (set_mem_size): New function.
14008	* expr.h (set_mem_size): Declare.
14009	* config/rs6000/rs6000.c (expand_block_move_mem): Exterminate.
14010	(expand_block_move): Instead, use adjust_address and
14011	replace_equiv_address to generate proper aliasing info.
14012	Move common code out of conditionals.  Localize vars.
14013
140142002-09-11  Eric Botcazou  <ebotcazou@libertysurf.fr>
14015
14016	* optabs.c (expand_binop): Minor cleanup.
14017	(expand_twoval_binop): Convert CONST_INTs like in expand_binop.
14018
140192002-09-11  Dan Nicolaescu  <dann@ics.uci.edu>
14020
14021	* print-tree.c (print_node): Print the restrict qualifier.
14022
140232002-09-11  Janis Johnson  <janis187@us.ibm.com>
14024
14025	* doc/install.texi: Fix typos.
14026
140272002-09-11  Zack Weinberg  <zack@codesourcery.com>
14028
14029	* Makefile.in: Remove all references to s-under and underscore.c.
14030	* collect2.c, tlink.c: Change all uses of prepends_underscore
14031	to look directly at USER_LABEL_PREFIX.
14032
140332002-09-11  David Edelsohn  <edelsohn@gnu.org>
14034
14035	* config/rs6000/rs6000.c (rs6000_xcoff_asm_named_section): Append
14036	alignment to csect.
14037	(rs6000_xcoff_unique_section): Only set section name for public
14038	data.
14039	(rs6000_xcoff_section_type_flags): Store log2 alignment in flags.
14040	* config/rs6000/xcoff.h (TARGET_ASM_SELECT_SECTION): Remove
14041	duplicate definition.
14042
140432002-09-10  John David Anglin  <dave@hiauly1.hia.nrc.ca>
14044
14045	* pa.md (extzv): Check predicates before emitting extzv_32.
14046	(insv): Likewise.
14047
140482002-09-10  Ulrich Weigand  <uweigand@de.ibm.com>
14049
14050	* config/s390/s390.h (MOVE_MAX): Define to correct value.
14051	(MAX_MOVE_MAX): Define.
14052	(MOVE_BY_PIECES_P): Define.
14053	(CLEAR_BY_PIECES_P): Define.
14054
140552002-09-10  Denis Chertykov  <denisc@overta.ru>
14056
14057	* config/avr/avr.md (movstrhi): Use right operands for conversion.
14058
140592002-09-10  Richard Earnshaw  <rearnsha@arm.com>
14060
14061	PR c/7873
14062	* arm.md (insv): Use reg_or_int_operand for operand[3].
14063
140642002-09-10  David Edelsohn  <edelsohn@gnu.org>
14065
14066	* rs6000.c (rs6000_assemble_visibility): Protect declaration
14067	inside macro.  Correct function definition typo.
14068	(rs6000_xcoff_section_type_flags): New function.
14069	(TARGET_SECTION_TYPE_FLAGS): Remove definition.
14070	(rs6000_elf_section_type_flags): Call default_section_type_flags_1
14071	with appropriate PIC test.
14072	(rs6000_xcoff_select_section): Use decl_readonly_section_1 to
14073	determine readonly.
14074	(rs6000_binds_local_p): Combine PIC flags.
14075	* sysv4.h (TARGET_SECTION_TYPE_FLAGS): Define.
14076	* xcoff.h (TARGET_SECTION_TYPE_FLAGS): Define.
14077
140782002-09-09  Per Bothner  <per@bothner.com>
14079
14080	* print-tree.c (print_node):  In a STRING_CST, escape non-ascii
14081	characters, and only print TREE_STRING_LENGTH chars.
14082
140832002-09-09  Steve Ellcey  <sje@cup.hp.com>
14084
14085	* config/ia64/hpux.h (TARGET_HPUX_LD): New, define true.
14086	(ASM_FILE_END) New.
14087	* config/ia64/ia64.h (TARGET_HPUX_LD): New, define false.
14088	* config/ia64/ia64-protos.h (ia64_hpux_asm_file_end): New.
14089	* config/ia64/ia64.c (ia64_asm_output_external): Create list
14090	of external functions if TARGET_HPUX_LD is true.
14091	(ia64_hpux_add_extern_decl): New, routine to put names on
14092	list of external functions.
14093	(ia64_hpux_asm_file_end): Put out declarations for external
14094	functions if and only if they are used.
14095
140962002-09-09  John David Anglin  <dave@hiauly1.hia.nrc.ca>
14097
14098	* pa.md (exception_receiver, builtin_setjmp_receiver): Add blockage
14099	on TARGET_64BIT before pic register restore.
14100
141012002-09-09  David Edelsohn  <edelsohn@gnu.org>
14102
14103	* doc/tm.texi (TARGET_HAVE_SRODATA_SECTION): New description.
14104	(TARGET_HAVE_TLS): New description.
14105
141062002-09-09  Janis Johnson  <janis187@us.ibm.com>
14107
14108	* doc/extend.texi (Statement Exprs): Fix broken link.
14109
141102002-09-09  Denis Chertykov  <denisc@overta.ru>
14111
14112	* config/avr/avr.md (movstrhi, clrstrhi): Use gen_int_mode for
14113	right conversion of operands[1].
14114
141152002-09-09  Ulrich Weigand  <uweigand@de.ibm.com>
14116
14117	* config/s390/s390.md ("*tmdi_reg", "*tmsi_reg"): Do not mark as
14118	commutative.  Use "nonimmediate_operand" instead of "register_operand"
14119	as predicate for operand 0.  Move to after the "*tmXX_mem" insns.
14120
14121	("*tmdi_mem", "*tmsi_mem", "*tmhi_mem", "*tmqi_mem"): Do not mark
14122	as commutative.
14123
14124	("*anddi3_ni", "*andsi3_ni", "*iordi3_ni", "*iorsi3_ni"): Do not
14125	mark as commutative.  Use "nonimmediate_operand" instead of
14126	"register_operand" as predicate for operand 1.
14127
14128	("movstrictsi"): Fix typo in insn name.
14129
141302002-09-09  Jan Hubicka  <jh@suse.cz>
14131
14132	* i386.c (index_register_operand): New.
14133	* i386.h (predicate_codes): Add new predicate.
14134	* i386.md (lea_general_*): Use index_register_operand
14135	(ashift to lea splitter): Do not produce invalid leas
14136	(ashift to mov+ashift split): New.
14137
141382002-09-09  Nick Clifton  <nickc@redhat.com>
14139
14140	* config/fr30/fr30.c (output.h): Move after inclusion of tree.h.
14141	Fix folding marks.
14142
141432002-09-09  Toshiyasu Morita  <toshiyasu.morita@hsa.hitachi.com>
14144	    J"orn Rennecke <joern.rennecke@superh.com>
14145
14146	* sh/sh.h (OVERRIDE_OPTIONS): align_functions is in bytes, not bits.
14147
141482002-09-09  Alan Modra  <amodra@bigpond.net.au>
14149
14150	* config/rs6000/rs6000.c (rs6000_binds_local_p): Return bool.
14151	(function_ok_for_sibcall): Use binds_local_p.  Respect longcall
14152	attributes.
14153
141542002-09-08  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
14155
14156	* fr30.c (fr30_print_operand): Fix bug in output of CONST_DOUBLE.
14157
141582002-09-08  Richard Henderson  <rth@redhat.com>
14159
14160	* dwarf2.h (DW_OP_call_ref): Rename from DW_OP_calli.
14161	(DW_OP_GNU_push_tls_address): New.
14162	(DW_OP_lo_user): Fix.
14163	* dwarf2out.c (INTERNAL_DW_OP_tls_addr): New.
14164	(dwarf_stack_op_name): Handle it, plus other dwarf3 opcodes.
14165	(size_of_loc_descr): Likewise.
14166	(output_loc_operands): Handle INTERNAL_DW_OP_tls_addr.
14167	(add_AT_location_description): Take a dw_loc_descr_ref not an rtx.
14168	(loc_descriptor_from_tree): Handle TLS variables.
14169	(rtl_for_decl_location): Do avoid_constant_pool_reference here ...
14170	(add_location_or_const_value_attribute): ... not here.  Defer
14171	to loc_descriptor_from_tree for TLS variables.
14172
14173	* config/i386/i386.h (ASM_OUTPUT_DWARF_DTPREL): New.
14174	* config/i386/i386.c (i386_output_dwarf_dtprel): New.
14175	* config/i386/i386-protos.h: Update.
14176
141772002-09-08  Roger Sayle  <roger@eyesopen.com>
14178
14179	PR optimization/6405
14180	* unroll.c (loop_iterations): last_loop_insn should be the previous
14181	non-note instruction before loop->end.
14182	* loop.c (strength_reduce): The conditional jump is the last
14183	non-note instruction before loop->end (as above).
14184
141852002-09-08  Roger Sayle  <roger@eyesopen.com>
14186
14187	* combine.c (try_combine): Handle the case that undobuf.other_insn
14188	has been turned into a return or unconditional jump, by inserting
14189	a BARRIER if necessary.
14190	(simplify_set):  Test if a condition code setter has a constant
14191	comparison at compile time, if so convert this insn to a no-op move
14192	and update/simplify the condition code user (undobuf.other_insn).
14193
141942002-09-08  Krister Walfridsson  <cato@df.lth.se>
14195
14196	* config/arm/netbsd.h (INITIALIZE_TRAMPOLINE): Redefine.
14197	(CLEAR_INSN_CACHE): Define.
14198
141992002-09-08  Kazu Hirata  <kazu@cs.umass.edu>
14200
14201	* basic-block.h: Fix comment formatting.
14202	* c-common.c: Likewise.
14203	* c-common.h: Likewise.
14204	* c-lex.c: Likewise.
14205	* c-pretty-print.c: Likewise.
14206	* cfglayout.c: Likewise.
14207	* cfgloop.c: Likewise.
14208	* defaults.h: Likewise.
14209	* et-forest.c: Likewise.
14210	* explow.c: Likewise.
14211	* function.h: Likewise.
14212	* gcov.c: Likewise.
14213	* genattrtab.c: Likewise.
14214	* gengtype.c: Likewise.
14215	* ifcvt.c: Likewise.
14216	* libgcc2.c: Likewise.
14217	* loop.c: Likewise.
14218	* profile.c: Likewise.
14219	* ra-build.c: Likewise.
14220	* real.c: Likewise.
14221	* rtl.h: Likewise.
14222	* tracer.c: Likewise.
14223	* tree-inline.c: Likewise.
14224	* varasm.c: Likewise.
14225
142262002-09-08  Jan Hubicka  <jh@suse.cz>
14227
14228	* emit-rtl.c (set_mem_attributes_minus_bitpos): Fix array_ref
14229	handling.
14230
14231	* loop.c (loop_givs_reduce):  Emit addition after.
14232
142332002-09-08  Alan Modra  <amodra@bigpond.net.au>
14234
14235	* varasm.c (default_assemble_visibility): Rename from
14236	assemble_visibility.
14237	* output.h: Here too.
14238	* target-def.h (TARGET_ASM_ASSEMBLE_VISIBILITY): And here.
14239	* config/rs6000/rs6000.c (rs6000_assemble_visibility): And here.
14240
142412002-09-08  Alan Modra  <amodra@bigpond.net.au>
14242
14243	* reload.c (find_reloads <p constraint>): Pass operand_mode to
14244	find_reloads_address.
14245
142462002-09-08  Kazu Hirata  <kazu@cs.umass.edu>
14247
14248	* config/h8300/h8300.md (udivmodqi4): Enable on H8/300.
14249	(anonymous pattern): Likewise.
14250
142512002-09-07  Scott Snyder  <snyder@fnal.gov>
14252
14253	PR target/7374
14254	* config/alpha/alpha.md (abstf2): Fix typo: 'neg' for 'abs'.
14255
142562002-09-07  Roger Sayle  <roger@eyesopen.com>
14257
14258	* basic-block.h (struct loop): Remove unused cont_dominator field.
14259
142602002-09-07  Igor Shevlyakov <igor@microunity.com>
14261
14262	* varasm.c (decode_rtx_const): Don't check undefined field for
14263	CONST_VECTOR.
14264
142652002-09-07  Glen Nakamura  <glen@imodulo.com>
14266
14267	PR opt/7814
14268	* sched-deps.c (sched_analyze_insn): Make sure to add insn
14269	to reg_last->sets after flushing the dependency lists to guarantee
14270	that subsequent clobbers will be dependent on it.
14271
142722002-09-07  Igor Shevlyakov <igor@microunity.com>
14273
14274	* combine.c (simplify_shift_const): Calculate rotate count
14275	correctly for vector operands.
14276
142772002-09-07  Ansgar Esztermann  <ansgar@thphy.uni-duesseldorf.de>
14278
14279	* c-typeck.c (c_tree_expr_nonnegative_p): New function.
14280	(build_binary_op): Call c_tree_expr_nonnegative_p rather than
14281	tree_expr_nonnegative_p.
14282	(build_conditional_expr): Likewise.
14283	* c-tree.h (c_tree_expr_nonnegative_p): Declare.
14284
142852002-09-07  Richard Henderson  <rth@redhat.com>
14286
14287	* builtins.def (inf, inff, infl): Mark const.
14288	(huge_val, huge_valf, huge_vall): Likewise.
14289	(BUILT_IN_GETEXP, BUILT_IN_GETMAN): Remove.
14290
14291	* real.c (ereal_inf): Clear E before use.
14292
142932002-09-07  Kazu Hirata  <kazu@cs.umass.edu>
14294
14295	* config/h8300/h8300.md (udivmodqi4): Split the pattern into
14296	an expander and an anonymous pattern.  Zero out the upper half
14297	of the dividend in the expander.
14298	(udivmodqi4): Likewise.
14299
143002002-09-07  Kazu Hirata  <kazu@cs.umass.edu>
14301
14302	* config/h8300/h8300.c: Fix formatting.
14303	* config/h8300/h8300.h: Likewise.
14304	* config/h8300/h8300.md: Likewise.
14305
143062002-09-07  Zdenek Dvorak  <rakdver@atrey.karlin.mff.cuni.cz>
14307
14308	* cfgcleanup.c (try_crossjump_to_edge): Fix updating of liveness
14309	information.
14310
143112002-09-07  Graham Stott  <graham.stott@btinternet.com>
14312
14313       * rtlanal.c (dead_or_set_regno_p): Fix typo.
14314
143152002-09-07  Alan Modra  <amodra@bigpond.net.au>
14316
14317	* config/rs6000/linux64.h (ASM_PREFERRED_EH_DATA_FORMAT): Define.
14318
14319	* doc/tm.texi (TARGET_ASM_ASSEMBLE_VISIBILITY): Describe.
14320	* target-def.h (TARGET_ASM_ASSEMBLE_VISIBILITY): Define.
14321	(TARGET_ASM_OUT): Add the above here.
14322	* target.h (struct gcc_target): Add "visibility" field.
14323	* varasm.c (maybe_assemble_visibility): Call targetm visibility func.
14324	* config/rs6000/rs6000.c (rs6000_assemble_visibility): New function.
14325	(TARGET_ASM_ASSEMBLE_VISIBILITY): Define.
14326	(rs6000_legitimize_reload_address, first_reg_to_save): Formatting.
14327
143282002-09-06  Ziemowit Laski <zlaski@apple.com>
14329
14330	* c-lang.c (objc_is_id): New stub.
14331	* c-tree.h (objc_is_id): New forward declaration.
14332	* c-typeck.c (build_c_cast): Do not strip protocol
14333	qualifiers from 'id' type.
14334	* objc/objc-act.c (objc_comptypes): Correct handling
14335	of protocol qualifiers.
14336	(objc_is_id): New.
14337
143382002-09-06  Jeffrey A Law  (law@redhat.com)
14339
14340	* pentium.md (pentium-firstvboth): Fix typo.
14341
143422002-09-06	Dhananjay Deshpande <dhananjayd@kpit.com>
14343
14344	* h8300.c (enum shift_alg): Move to earlier in h8300.c.
14345	(enum shift_type, enum h8_cpu): Likewise.
14346	(INL, ROT, LOP, SPC macros): Likewise.
14347	(shift_alg_qi, shift_alg_hi, shift_alg_si): Likewise.  Lose
14348	const designator.
14349	(h8300_init_once): Update shift_alg_{qi,hi,si} to use more
14350	space efficient algorithms when optimize for codesize.
14351
143522002-09-06  Nicola Pero  <n.pero@mi.flashnet.it>
14353
14354	Fix PR/1727 and long-standing failing testcase
14355	objc/formal-protocol-6.m.
14356	* objc-act.c (build_protocol_expr): If compiling for the GNU
14357	runtime, create a list of Protocol statically allocated instances
14358	if it doesn't exist, then add the Protocol object to this same
14359	list.
14360	(get_objc_string_decl): Fixed typo/bug - TREE_VALUE had been used
14361	instead of TREE_CHAIN.
14362
143632002-09-06  Nicola Pero  <n.pero@mi.flashnet.it>
14364
14365	* objc/objc-act.c (dump_interface): Enlarged the char * buffer to
14366	10k.  Fixed category dumping - print out category names with the
14367	proper syntax.  Print '@end\n' and not '\n@end' at the end of the
14368	interface.
14369	(finish_objc): Fixed the -gen-decls option.  It was printing out
14370	only the last class.  Dump an interface declaration of all classes
14371	being compiled instead.
14372
143732002-09-06  Jason Thorpe  <thorpej@wasabisystems.com>
14374
14375	* config/arm/arm-protos.h (arm_gen_return_addr_mask): New
14376	prototype.
14377	* config/arm/arm.c (arm_gen_return_addr_mask): New function.
14378	* config/arm/arm.h (MASK_RETURN_ADDR): Use arm_gen_return_addr_mask
14379	if not APCS26 and not Thumb or ARMv4-or-higher.  Use gen_int_mode
14380	rather than GEN_INT.
14381	* config/arm/arm.md (UNSPEC_CHECK_ARCH): Define.
14382	(return_addr_mask, *check_arch2): New.
14383
143842002-09-06  Ulrich Weigand  <uweigand@de.ibm.com>
14385
14386	* config/s390/s390.md ("*adddi3_cc", "*adddi3_cconly",
14387	"*adddi3_cconly2", "*adddi3_64", "*adddi3_31", "adddi3",
14388	"*addsi3_carry1_cc", "*addsi3_carry1_cconly",
14389	"*addsi3_carry2_cc", "*addsi3_carry2_cconly",
14390	"*addsi3_cc", "*addsi3_cconly", "*addsi3_cconly2", "addsi3",
14391	"adddf3", "*adddf3", "*adddf3_ibm",
14392	"addsf3", "*addsf3", "*addsf3_ibm",
14393	"muldi3", "mulsi3", "mulsidi3",
14394	"muldf3", "*muldf3", "*muldf3_ibm",
14395	"mulsf3", "*mulsf3", "*mulsf3_ibm",
14396	"*anddi3_cc", "*anddi3_cconly", "anddi3",
14397	"*andsi3_cc", "*andsi3_cconly", "andsi3",
14398	"*iordi3_cc", "*iordi3_cconly", "iordi3",
14399	"*iorsi3_cc", "*iorsi3_cconly", "iorsi3",
14400	"*xordi3_cc", "*xordi3_cconly", "xordi3",
14401	"*xorsi3_cc", "*xorsi3_cconly", "xorsi3"): Use "nonimmediate_operand"
14402	instead of "register_operand" as predicate for "%0" operand.
14403
144042002-09-06  Jakub Jelinek  <jakub@redhat.com>
14405
14406	* configure.in (HAVE_AS_OFFSETABLE_LO10): Use -xarch=v9
14407	unconditionally when gcc_cv_as_flags64 checks are gone.
14408	* configure: Rebuilt.
14409
144102002-09-06  Alan Modra  <amodra@bigpond.net.au>
14411
14412	* config/rs6000/rs6000.md (extzvsi_internal2): Revert most of
14413	2002-07-26 change.  Comment.
14414
144152002-09-05  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
14416
14417	* frv.c (frv_unique_section, frv_select_section,
14418	frv_select_rtx_section): Delete.
14419	(frv_in_small_data_p): New.
14420	(TARGET_ASM_UNIQUE_SECTION, TARGET_ASM_SELECT_SECTION,
14421	TARGET_ASM_SELECT_RTX_SECTION): Delete.
14422	(TARGET_IN_SMALL_DATA_P): Define.
14423
144242002-09-05  Dale Johannesen  <dalej@apple.com>
14425
14426	* reload1.c (reload):  Retain only those memory clobbers
14427	added for variable-array handling.
14428
144292002-09-05  Jason Thorpe  <thorpej@wasabisystems.com>
14430
14431	* config/arm/arm.c (arm_return_in_memory): Implement ATPCS
14432	return-in-memory rules.
14433	* config/arm/arm.h (ARM_FLAG_ATPCS, TARGET_ATPCS): Define.
14434
144352002-09-05  David Edelsohn  <edelsohn@gnu.org>
14436
14437	* config/rs6000/xcoff.h (HOT_TEXT_SECTION_NAME): Delete.
14438	(UNLIKELY_EXECUTED_TEXT_SECTION_NAME): Delete.
14439
144402002-09-05  Jason Thorpe  <thorpej@wasabisystems.com>
14441
14442	* real.c: Avoid parse error if FLOAT_WORDS_BIG_ENDIAN is
14443	not a compile-time constant for the non-IBM case.
14444	* config/arm/arm-protos.h (arm_float_words_big_endian): New
14445	prototype.
14446	* config/arm/arm.c (arm_float_words_big_endian): New function.
14447	* config/arm/arm.h (TARGET_CPU_CPP_BUILTINS): Define __VFP_FP__
14448	if TARGET_VFP  and not TARGET_HARD_FLOAT.
14449	(ARM_FLAG_VFP, TARGET_VFP): Define.
14450	(FLOAT_WORDS_BIG_ENDIAN): Use arm_float_words_big_endian.
14451
144522002-09-05  David Edelsohn  <edelsohn@gnu.org>
14453
14454	* doc/install.texi: Correct text of s390-*-linux* and s390x-*-linux*
14455	URLs.  Fix AIX wording.
14456
144572002-09-05  Stan Shebs  <shebs@apple.com>
14458
14459	* config/rs6000/rs6000.c (rs6000_override_options): Make -fpic and
14460	-fPIC equivalent on Darwin.
14461
144622002-09-05  J"orn Rennecke <joern.rennecke@superh.com>
14463
14464	* sh.c (sh_expand_builtin): Return early if encountering an
14465	error_mark for a type.
14466
144672002-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
14468
14469	* config/s390/s390.c (s390_expand_plus_operand): Do not require
14470	double-word scratch register.
14471	config/s390/s390.md ("reload_indi", "reload_insi"): Adapt.
14472
14473	("*tmqi_ext", "*tmdi_mem", "*tmsi_mem", "*tmhi_mem", "*tmqi_mem",
14474	"*cli"): Replace s_operand by memory_operand.
14475	("cmpstrdi", "cmpstrsi"): Replace s_operand by general_operand.
14476
144772002-09-05  Kazu Hirata  <kazu@cs.umass.edu>
14478
14479	* config/h8300/h8300.c (asm_file_start): Add a missing
14480	semicolon.
14481
144822002-09-04  Krister Walfridsson  <cato@df.lth.se>
14483
14484	* config/i386/i386.h (GOT_SYMBOL_NAME): Define.
14485	* config/i386/i386.c (output_set_got): Use GOT_SYMBOL_NAME.
14486	(ix86_output_addr_diff_elt) Likewise.
14487	(x86_output_mi_thunk) Likewise.
14488	* config/i386/netbsd.h (GOT_SYMBOL_NAME): Redefine.
14489
144902002-09-04  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
14491
14492	* frv.c (frv_encode_section_info): Fix error in last change.
14493
144942002-09-04  David Edelsohn  <edelsohn@gnu.org>
14495
14496	* config/rs6000/rs6000.c (rs6000_flag_pic): New variable.
14497	(rs6000_elf_encode_section_info): ATTRIBUTE_UNUSED.
14498	(TARGET_BINDS_LOCAL_P): Define.
14499	(rs6000_override_options): Save original flag_pic value.
14500	(rs6000_elf_select_section): Call default_elf_select_section_1.
14501	(rs6000_elf_unique_section): Call default_unique_section_1.
14502	(rs6000_elf_in_small_data_p): New function.
14503	(rs6000_xcoff_asm_named_section): Determine storage mapping class.
14504	(rs6000_xcoff_select_section): Update based on defaults.
14505	(rs6000_xcoff_unique_section): Set to basic name if not common.
14506	(rs6000_binds_local_p): New function.
14507	* config/rs6000/sysv4.h (SUBTARGET_OVERRIDE_OPTIONS): Set
14508	targetm.have_srodata_section if SDATA_EABI.
14509	(TARGET_IN_SMALL_DATA_P): Define.
14510
145112002-09-04  Dale Johannesen  <dalej@apple.com>
14512
14513	* varasm.c (struct rtx_const, decode_rtx_const):
14514	Make veclo and vechi fields not share storage.
14515
145162002-09-05  J"orn Rennecke <joern.rennecke@superh.com>
14517
14518	* loop.c (scan_loop): Don't mark separate insns out of a libcall
14519	for moving.
14520	(move_movables): Abort if we see the first insn of a libcall.
14521
145222002-09-04  Richard Henderson  <rth@redhat.com>
14523
14524	* builtin-types.def (BT_FN_FLOAT): New.
14525	(BT_FN_DOUBLE, BT_FN_LONG_DOUBLE): New.
14526	* builtins.def (BUILT_IN_INF, BUILT_IN_INFF, BUILT_IN_INFL,
14527	BUILT_IN_HUGE_VAL, BUILT_IN_HUGE_VALF, BUILT_IN_HUGE_VALL): New.
14528	* builtins.c (fold_builtin_inf): New.
14529	(fold_builtin): Call it.
14530	* real.c (ereal_inf): New.
14531	* real.h: Declare it.
14532	* doc/extend.texi: Document new builtins.
14533
145342002-09-04  Richard Henderson  <rth@redhat.com>
14535
14536	* cse.c (cse_insn): Avoid subreg games if the equivalence
14537	is already in the proper mode.
14538
145392002-09-04  Eric Botcazou  <ebotcazou@multimania.com>
14540
14541	PR c/7102
14542	* optabs.c (expand_binop): Convert CONST_INTs in all cases.
14543
145442002-09-04  John David Anglin  <dave@hiauly1.hia.nrc.ca>
14545
14546	* pa.md (setccfp0, setccfp1): New patterns.
14547
145482002-09-04  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
14549
14550	* frv-protos.h (frv_init_builtins, frv_expand_builtin,
14551	frv_select_section, frv_select_rtx_section,
14552	frv_encode_section_info, frv_unique_section): Delete.
14553	* frv.c: Update for target hooks.
14554	* frv.h (STRIP_NAME_ENCODING, SLOW_ZERO_EXTEND, SELECT_SECTION,
14555	SELECT_RTX_SECTION, ENCODE_SECTION_INFO, UNIQUE_SECTION,
14556	EASY_DIV_EXPR, MD_INIT_BUILTINS, MD_EXPAND_BUILTIN): Delete.
14557
145582002-09-04  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
14559
14560	* ip2k-protos.h (function_prologue, function_epilogue,
14561	encode_section_info): Update to match target hook specification.
14562	* ip2k.c: Wrap `MDR' code in IP2K_MD_REORG_PASS.
14563	(function_prologue, function_epilogue, encode_section_info):
14564	Update to match target hook specification.
14565	* ip2k.h (SELECT_SECTION, SELECT_RTX_SECTION, ASM_OPEN_PAREN,
14566	ASM_CLOSE_PAREN, EASY_DIV_EXPR): Delete.
14567	(NOTICE_UPDATE_CC): Cast to void.
14568	* ip2k.md: Add defaults in switch statements.
14569
145702002-09-04  Janis Johnson  <janis187@us.ibm.com>
14571
14572	* doc/trouble.texi (Interoperation): Update information about C++ ABI
14573	issues.
14574
145752002-09-04  Jason Thorpe  <thorpej@wasabisystems.com>
14576
14577	* config/sparc/t-netbsd64: Disable multilib for now.
14578
145792002-09-04  David Edelsohn  <edelsohn@gnu.org>
14580
14581	* target-def.h (TARGET_HAVE_SRODATA_SECTION): New macro.
14582	* target.h (gcc_target): Add have_srodata_section member.
14583	* varasm.c (section_category): Add SECCAT_SRODATA.
14584	(categorize_decl_for_section): Return SECCAT_SRODATA for sdata if
14585	READONLY_SDATA_SECTION defined.
14586	(decl_readonly_section_1): True for SECCAT_SRODATA also.
14587	(default_elf_select_section_1): Map SECCAT_SRODATA to .sdata2.
14588	(default_unique_section_1): Likewise.
14589
145902002-09-04  John David Anglin  <dave@hiauly1.hia.nrc.ca>
14591
14592	* expr.c (emit_group_load): Revise to allow splitting TCmode source
14593	into DImode pieces.
14594
14595	* pa-64.h (LONG_DOUBLE_TYPE_SIZE): Define to 128.
14596	* pa64-regs.h (CLASS_CANNOT_CHANGE_MODE_P): Inhibit changes from SImode
14597	for floating-point register class.
14598	* pa.c (function_arg): Fix handling of modes wider than one word for
14599	TARGET_64BIT.
14600
146012002-09-04  J"orn Rennecke <joern.rennecke@superh.com>
14602
14603	* combine.c (make_compound_operation): Don't generate zero / sign
14604	extensions in floating point modes.
14605
146062002-09-04  Janis Johnson  <janis187@us.ibm.com>
14607
14608	* doc/c-tree.texi: Fix overfull hboxes.
14609	* doc/cppopts.texi: Ditto.
14610	* doc/extend.texi: Ditto.
14611	* doc/gty.texi: Ditto.
14612	* doc/invoke.texi: Ditto.
14613	* doc/makefile.texi: Ditto.
14614	* doc/rtl.texi: Ditto.
14615	* doc/standards.texi: Ditto.
14616	* doc/tm.texi: Ditto.
14617
146182002-09-04  Richard Henderson  <rth@redhat.com>
14619
14620	* c-common.c (builtin_define_with_hex_fp_value): New.
14621	(builtin_define_float_constants): Use it.  Fix H_FLOAT mant_dig.
14622
146232002-09-04  Janis Johnson  <janis187@us.ibm.com>
14624
14625	* doc/invoke.texi (-fshort-wchar): Move to Code Generation Options.
14626	(-fpcc-struct-return, -freg-struct-return, -fshort-enums,
14627	-fshort-double, -fshort-wchar, -fpack-struct, -fleading-underscore):
14628	Warn that these options can break ABI compatibility.
14629
146302002-09-04  Richard Henderson  <rth@redhat.com>
14631
14632	* real.c (ereal_to_decimal): Add digits parameter.
14633	* real.h (REAL_VALUE_TO_DECIMAL): Remove format; add digits parameter.
14634	* c-pretty-print.c (pp_c_real_literal): Update call.
14635	* print-rtl.c (print_rtx): Likewise.
14636	* print-tree.c (print_node_brief, print_node): Likewise.
14637	* sched-vis.c (print_value): Likewise.
14638	* config/arc/arc.c (arc_print_operand): Likewise.
14639	* config/c4x/c4x.c (c4x_print_operand): Likewise.
14640	* config/i370/i370.h (PRINT_OPERAND): Likewise.
14641	* config/i386/i386.c (print_operand): Likewise.
14642	* config/i960/i960.c (i960_print_operand): Likewise.
14643	* config/ip2k/ip2k.c (asm_output_float): Likewise.
14644	* config/m32r/m32r.c (m32r_print_operand): Likewise.
14645	* config/m68hc11/m68hc11.c (print_operand): Likewise.
14646	* config/m68k/hp320.h (PRINT_OPERAND, ASM_OUTPUT_FLOAT_OPERAND,
14647	ASM_OUTPUT_DOUBLE_OPERAND, ASM_OUTPUT_LONG_DOUBLE_OPERAND): Likewise.
14648	* config/m68k/m68k.h (ASM_OUTPUT_FLOAT_OPERAND,
14649	ASM_OUTPUT_DOUBLE_OPERAND, ASM_OUTPUT_LONG_DOUBLE_OPERAND): Likewise.
14650	* config/m68k/sun2o4.h (ASM_OUTPUT_FLOAT_OPERAND,
14651	ASM_OUTPUT_DOUBLE_OPERAND): Likewise.
14652	* config/m68k/sun3.h (ASM_OUTPUT_FLOAT_OPERAND,
14653	ASM_OUTPUT_DOUBLE_OPERAND): Likewise.
14654	* config/mips/mips.c (print_operand): Likewise.
14655	* config/ns32k/ns32k.c (print_operand): Likewise.
14656	* config/pdp11/pdp11.h (PRINT_OPERAND): Likewise.
14657	* config/vax/vax.h (PRINT_OPERAND): Likewise.
14658	* doc/tm.texi (REAL_VALUE_TO_DECIMAL): Update docs.
14659
146602002-09-04  Bob Wilson  <bob.wilson@acm.org>
14661
14662	* config/xtensa/elf.h (TARGET_SECTION_TYPE_FLAGS): Define to
14663	xtensa_multibss_section_type_flags.
14664	* config/xtensa/xtensa.c (xtensa_multibss_section_type_flags): Define.
14665
146662002-09-04  Richard Henderson  <rth@redhat.com>
14667
14668	* doc/install-old.texi: Don't mention enquire.
14669	* doc/sourcebuild.texi: Update float.h description.
14670
146712002-09-04  J"orn Rennecke <joern.rennecke@superh.com>
14672
14673	* sh.md (mperm_w_little, mperm_w_big): Supply mode for zero_extract.
14674
146752002-09-03  David Edelsohn  <edelsohn@gnu.org>
14676
14677	* varasm.c (default_section_type_flags): Append _1 to name with
14678	shlib parameter.  Use original name to call new function with
14679	implicit flag_pic.
14680	(decl_readonly_section): Likewise.
14681	(default_elf_select_section): Likewise.
14682	(default_unique_section): Likewise.
14683	(default_bind_local_p): Likewise.
14684	(categorize_decl_for_section): Add shlib parameter to use in place
14685	of implicit flag_pic.
14686	* output.h: Declare new functions with _1 and shlib argument.
14687
146882002-09-03  Janis Johnson  <janis187@us.ibm.com>
14689
14690	* doc/install.texi: Fix typos, formatting problems, and obvious
14691	overfull/underfull boxes.
14692
14693	* Makefile.in (TEXI_GCC_FILES): Add compat.texi.
14694	* doc/gcc.texi (Top): Add new chapter, Binary Compatibility, and
14695	include its file, compat.texi.
14696	* doc/compat.texi: New file with new chapter, Binary Compatibility.
14697
146982002-09-03  Neil Booth  <neil@daikokuya.co.uk>
14699
14700	Debian BTS Bug #157416
14701	* cpphash.h (FIRST, LAST, CUR, RLIMIT): Fix definitions.
14702	* cpplib.c (destringize_and_run): Kludge around getting
14703	tokens from in-progress macros.
14704	(_cpp_do__Pragma): Simplify.
14705
147062002-09-03  Steve Ellcey  <sje@cup.hp.com>
14707
14708	* config/ia64/ia64.h (EXTRA_SPECS): Remove cpp_cpu.
14709	(CPP_CPU_SPEC): Remove.
14710	(TARGET_CPU_CPP_BUILTINS): New.
14711	* config/ia64/hpux.h (CPP_PREDEFINES): Remove.
14712	(CPP_SPEC): Remove.
14713	(TARGET_OS_CPP_BUILTINS): New.
14714	* config/ia64/linux.h (CPP_PREDEFINES): Remove.
14715	(TARGET_OS_CPP_BUILTINS): New.
14716	* config/ia64/aix.h (CPP_SPEC): Move some stuff to
14717	TARGET_OS_CPP_BUILTINS.
14718	(CPP_PREDEFINES): Remove.
14719	(CPLUSPLUS_CPP_SPEC): Remove.
14720	(TARGET_OS_CPP_BUILTINS): New.
14721
147222002-09-03  Richard Henderson  <rth@redhat.com>
14723
14724	* Makefile.in (USER_H): Add ginclude/float.h.
14725	(FLOAT_H): Remove.
14726	(stmp-int-hdrs, install-mkheaders): Don't handle FLOAT_H.
14727	(mostlyclean): Don't remove float.h intermediate files.
14728	(distclean): Don't remove float.h.
14729	* config.gcc: Remove all float_format references.
14730	* configure.in (float_format, float_h_file): Remove.
14731
14732	* c-common.c: Include tree-inline.h.
14733	(builtin_define_with_int_value): New.
14734	(builtin_define_type_precision): Use it.
14735	(builtin_define_float_constants): New.
14736	(cb_register_builtins): Use it.  Define __FLT_RADIX__ and
14737	__FLT_EVAL_METHOD__.
14738	* defaults.h (TARGET_FLT_EVAL_METHOD): New.
14739	* config/i386/i386.h (TARGET_FLT_EVAL_METHOD): New.
14740	* config/m68k/m68k.h (TARGET_FLT_EVAL_METHOD): New.
14741	* doc/tm.texi (INTEL_EXTENDED_IEEE_FORMAT): Mention moto 96-bit format.
14742	(TARGET_FLT_EVAL_METHOD): New.
14743
14744	* config/float-c4x.h, config/float-i128.h, config/float-i32.h,
14745	config/float-i386.h, config/float-i64.h, config/float-m68k.h,
14746	config/float-sh.h, config/float-sparc.h, config/float-vax.h: Remove.
14747	* ginclude/float.h: New.
14748
147492002-09-03  Stan Shebs  <shebs@apple.com>
14750
14751	* config/darwin.h (WARN_FOUR_CHAR_CONSTANTS): Remove, never used.
14752	(DWARF2_DEBUGGING_INFO): Remove until assembler accepts Dwarf-2.
14753	(PREFERRED_DEBUGGING_TYPE): Ditto.
14754	(ASM_OUTPUT_IDENT): Remove empty definition.
14755
147562002-09-03  Steve Ellcey  <sje@cup.hp.com>
14757
14758	* config.gcc (ia64*-*-hpux*): Add ia64-c.o to c_target and
14759	cxx_target.
14760	* config/ia64/hpux.h (REGISTER_TARGET_PRAGMAS): Register pragma
14761	handling routine for builtin pragma.
14762	* config/ia64/ia64-protos.h (ia64_hpux_handle_builtin_pragma):
14763	Registered pragma handling routine.
14764	* ia64-c.c (ia64_hpux_handle_builtin_pragma): Ditto.
14765	(ia64_hpux_add_pragma_builtin) New subroutine used by above.
14766	If builtin pragma seen for math routine and C89 conformance is
14767	requested use different math function in order to set errno.
14768	* t-ia64 (ia64-c.o): Add new rule for new file.
14769
147702002-09-03  Ulrich Weigand  <uweigand@de.ibm.com>
14771
14772	* config/s390/s390.md ("movti"): Add Q->Q alternative.
14773	("*movdi_64", "*movdi_31", "*movsi", "movhi", "movqi_64",
14774	"movqi", "*movdf_64", "*movdf_31", "*movsf"): Likewise.
14775
14776	("*movti_ss", "*movdi_ss", "*movsi_ss", "*movdf_ss",
14777	"*movsf_ss"): Remove.
14778
147792002-09-03  John David Anglin  <dave@hiauly1.hia.nrc.ca>
14780
14781	* pa32-regs.h (CLASS_CANNOT_CHANGE_MODE, CLASS_CANNOT_CHANGE_MODE_P):
14782	Delete macros.
14783
147842002-09-03   Arati Dikey  <aratid@kpit.com>
14785
14786	* h8300.c (asm_file_start): Corrected optimization comment.
14787
147882002-09-03  Stan Shebs  <shebs@apple.com>
14789
14790	* c-lang.c (recognize_objc_keyword): Remove, no longer used.
14791	* c-tree.h (recognize_objc_keyword): Remove decl.
14792	* c-typeck.c (comp_target_types): Update a comment.
14793
147942002-09-03  Ulrich Weigand  <uweigand@de.ibm.com>
14795
14796	* config/s390/s390.c (s390_decompose_address): Remove STRICT parameter
14797	and register validity checks.
14798	(general_s_operand): Adapt to s390_decompose_address interface change.
14799	(q_constraint): Likewise.
14800	(s390_expand_plus_operand): Likewise.
14801	(legitimiate_address_p): Likewise.
14802	(legitimate_la_operand_p): Likewise.
14803	(legitimize_la_operand): Likewise.
14804	(print_operand_address): Likewise.
14805	(print_operand): Likewise.
14806
148072002-09-03  Nicola Pero  <n.pero@mi.flashnet.it>
14808
14809	PR objc/5956:
14810	* objc/objc-act.c (build_typed_selector_reference): Fix typo which
14811	was causing the new selector never to match the existing ones
14812	(Patch by Alexander Malmberg <alexander@malmberg.org>).
14813
148142002-09-03  Graham Stott  <graham.stott@btinternet.com>
14815
14816	* config/i386/i386.md ("femms"): Add "memory" attr "none".
14817
148182002-09-03  Graham Stott  <graham.stott@btinternet.com>
14819
14820	* expr.c (expand_expr): Remove extraneous comment and code.
14821
148222002-08-31  Richard Henderson  <rth@redhat.com>
14823
14824	* expr.c (block_move_libcall_safe_for_call_parm): Fix thinko.
14825
148262002-08-31  John David Anglin  <dave@hiauly1.hia.nrc.ca>
14827
14828	* pa.c (pa_globalize_label): Add ATTRIBUTE_UNUSED to prototype.
14829
148302002-08-30  Richard Henderson  <rth@redhat.com>
14831
14832	PR opt/7515
14833	* c-objc-common.c: Include target.h.
14834	(c_cannot_inline_tree_fn): Don't auto-inline functions that
14835	don't bind locally.  Factor setting DECL_UNINLINABLE.
14836	* Makefile.in (c-objc-common.o): Update.
14837
148382002-08-30  Janis Johnson  <janis187@us.ibm.com>
14839
14840	* doc/install.texi (Configuration, Building): Fix a typo and
14841	some formatting directives.
14842
148432002-08-30  Paul Koning <pkoning@equallogic.com>
14844
14845	* doc/c-tree.texi (RDIV_EXPR): Fix typo.
14846	* doc/rtl.texi (post_modify): Remove misplaced text, remove "not
14847	implemented" note.
14848	* doc/md.texi (IP2K): Move machine-specific constraints before MIPS
14849	for alphabetic order.
14850	* doc/tm.texi (TARGET_FLOAT_FORMAT): Update description for
14851	VAX_FLOAT_FORMAT.  Remove reference to HOST_FLOAT_FORMAT.
14852	(VAX_HALFWORD_ORDER): Document.
14853	(LARGEST_EXPONENT_IS_NORMAL): Remove note about being only for
14854	IEEE float format.
14855	(TARGET_SCHED_ISSUE_RATE): Reword reference to MAX_DFA_ISSUE_RATE.
14856	(ASM_OUTPUT_LABEL_REF): Fix font.
14857	(CASE_VECTOR_SHORTEN_MODE): Ditto.
14858
148592002-08-30  Denis Chertykov  <denisc@overta.ru>
14860
14861	* config/ip2k/ip2k.c (ip2k_set_compare): Remove all const_double
14862	stuff.
14863	(ip2k_gen_unsigned_comp_branch): Handle CONST_INT and
14864	CONST_DOUBLE constants.
14865
148662002-08-30  Jason Thorpe  <thorpej@wasabisystems.com>
14867
14868	* config/alpha/alpha.h (TARGET_CPU_CPP_BUILTINS): Move language-
14869	related defines to...
14870	(SUBTARGET_LANGUAGE_CPP_BUILTINS): ...here.
14871	* config/alpha/netbsd.h (SUBTARGET_LANGUAGE_CPP_BUILTINS): Redefine
14872	as a no-op.
14873
148742002-08-30  Krister Walfridsson  <cato@df.lth.se>
14875
14876	* config/arm/arm.c (arm_asm_output_labelref): New function.
14877	* config/arm/arm.h (ASM_OUTPUT_LABELREF): Call arm_asm_output_labelref.
14878	* config/arm/arm-protos.h: Add prototype for arm_asm_output_labelref.
14879
148802002-08-29  Rodney Brown  <rbrown64@csc.com.au>
14881
14882	* doc/install.texi (Specific, alpha*-dec-osf*): Add "virtual
14883	memory exhausted" workarounds.
14884
148852002-08-30  Gabriel Dos Reis  <gdr@integrable-solutions.net>
14886
14887	* diagnostic.c (fancy_abort): Don't repeat "internal error".
14888	* toplev.c (crash_signal): Likewise.
14889
148902002-08-30  Nicola Pero  <n.pero@mi.flashnet.it>
14891
14892	* doc/cpp.texi (__NEXT_RUNTIME__): Extended documentation.
14893	* doc/invoke.texi (-fnext-runtime, -Wno-protocol, -Wselector):
14894	Extended, updated documentation.
14895	(-Wundeclared-selector): Documented.
14896
148972002-08-29  Jason Thorpe  <thorpej@wasabisystems.com>
14898
14899	* config/chorus.h: Consistently define *_DEBUGGING_INFO with
14900	the value 1.  Do not undef before defining.
14901	* config/darwin.h: Likewise.
14902	* config/dbx.h: Likewise.
14903	* config/dbxcoff.h: Likewise.
14904	* config/dbxelf.h: Likewise.
14905	* config/elfos.h: Likewise.
14906	* config/interix.h: Likewise.
14907	* config/lynx-ng.h: Likewise.
14908	* config/lynx.h: Likewise.
14909	* config/netware.h: Likewise.
14910	* config/psos.h: Likewise.
14911	* config/svr3.h: Likewise.
14912	* config/alpha/alpha.h: Likewise.
14913	* config/alpha/elf.h: Likewise.
14914	* config/alpha/vms.h: Likewise.
14915	* config/arc/arc.h: Likewise.
14916	* config/arm/aout.h: Likewise.
14917	* config/arm/coff.h: Likewise.
14918	* config/c4x/c4x.h: Likewise.
14919	* config/h8300/h8300.h: Likewise.
14920	* config/i386/cygwin.h: Likewise.
14921	* config/i386/djgpp.h: Likewise.
14922	* config/i386/gas.h: Likewise.
14923	* config/i386/gstabs.h: Likewise.
14924	* config/i386/i386-coff.h: Likewise.
14925	* config/i386/i386-interix.h: Likewise.
14926	* config/i386/sco5.h: Likewise.
14927	* config/i386/svr3dbx.h: Likewise.
14928	* config/i386/sysv3.h: Likewise.
14929	* config/i386/win32.h: Likewise.
14930	* config/i386/x86-64.h: Likewise.
14931	* config/i960/i960.h: Likewise.
14932	* config/ia64/ia64.h: Likewise.
14933	* config/ip2k/ip2k.h: Likewise.
14934	* config/m32r/m32r.h: Likewise.
14935	* config/m68k/3b1.h: Likewise.
14936	* config/m68k/3b1g.h: Likewise.
14937	* config/m68k/ccur-GAS.h: Likewise.
14938	* config/m68k/coff.h: Likewise.
14939	* config/m68k/hp2bsd.h: Likewise.
14940	* config/m68k/hp310g.h: Likewise.
14941	* config/m68k/hp320g.h: Likewise.
14942	* config/m68k/hp3bsd.h: Likewise.
14943	* config/m68k/hp3bsd44.h: Likewise.
14944	* config/m68k/linux-aout.h: Likewise.
14945	* config/m68k/m68k-aout.h: Likewise.
14946	* config/m68k/mot3300.h: Likewise.
14947	* config/m68k/netbsd.h: Likewise.
14948	* config/m68k/openbsd.h: Likewise.
14949	* config/m68k/pbb.h: Likewise.
14950	* config/m68k/plexus.h: Likewise.
14951	* config/m68k/sun2.h: Likewise.
14952	* config/m68k/sun3.h: Likewise.
14953	* config/m68k/tower-as.h: Likewise.
14954	* config/m68k/vxm68k.h: Likewise.
14955	* config/m88k/aout-dbx.h: Likewise.
14956	* config/m88k/m88k-aout.h: Likewise.
14957	* config/mcore/mcore-elf.h: Likewise.
14958	* config/mcore/mcore-pe.h: Likewise.
14959	* config/mips/elf.h: Likewise.
14960	* config/mips/elf64.h: Likewise.
14961	* config/mips/iris5gas.h: Likewise.
14962	* config/mips/iris6.h: Likewise.
14963	* config/mips/mips.h: Likewise.
14964	* config/mips/sni-gas.h: Likewise.
14965	* config/mmix/mmix.h: Likewise.
14966	* config/ns32k/netbsd.h: Likewise.
14967	* config/pa/pa64-hpux.h: Likewise.
14968	* config/romp/romp.h: Likewise.
14969	* config/rs6000/sysv4.h: Likewise.
14970	* config/rs6000/xcoff.h: Likewise.
14971	* config/sh/coff.h: Likewise.
14972	* config/sh/elf.h: Likewise.
14973	* config/sparc/linux64.h: Likewise.
14974	* config/sparc/liteelf.h: Likewise.
14975	* config/sparc/netbsd.h: Likewise.
14976	* config/sparc/openbsd.h: Likewise.
14977	* config/sparc/pbd.h: Likewise.
14978	* config/sparc/sp64-elf.h: Likewise.
14979	* config/sparc/sp86x-elf.h: Likewise.
14980	* config/sparc/sparc.h: Likewise.
14981	* config/vax/vax.h: Likewise.
14982	* config/vax/vaxv.h: Likewise.
14983
149842002-08-29  "Dhananjay R. Deshpande" <dhananjayd@kpit.com>
14985
14986	* h8300.c (shift_alg_hi): Various tweaks to improve performance
14987	of HImode shifts.
14988	(get_shift_alg): Corresponding changes.
14989
149902002-08-29  John David Anglin  <dave@hiauly1.hia.nrc.ca>
14991
14992	* som.h (ALWAYS_STRIP_DOTDOT): Define to 1.
14993
149942002-08-29  Richard Henderson  <rth@redhat.com>
14995
14996	* expr.h (enum block_op_methods): New.
14997	(emit_block_move): Update prototype.
14998	* expr.c (block_move_libcall_safe_for_call_parm): New.
14999	(emit_block_move_via_loop): New.
15000	(emit_block_move): Use them.  New argument METHOD.
15001	(emit_push_insn): Always respect the given alignment.
15002	(expand_assignment): Update call to emit_block_move.
15003	(store_expr, store_field, expand_expr): Likewise.
15004	* builtins.c (expand_builtin_apply): Likewise.
15005	(expand_builtin_memcpy, expand_builtin_va_copy): Likewise.
15006	* function.c (expand_function_end): Likewise.
15007	* config/sh/sh.c (sh_initialize_trampoline): Likewise.
15008	* config/sparc/sparc.c (sparc_va_arg): Likewise.
15009	* calls.c (expand_call, emit_library_call_value_1): Likewise.
15010	(save_fixed_argument_area): Use emit_block_move with
15011	BLOCK_OP_CALL_PARM instead of move_by_pieces.
15012	(restore_fixed_argument_area): Likewise.
15013	(store_one_arg): Fix alignment parameter to emit_push_insn.
15014
150152002-08-29  John David Anglin  <dave@hiauly1.hia.nrc.ca>
15016
15017	* install.texi (hppa64-hp-hpux11*): Document installation procedure.
15018
150192002-08-29  Catherine Moore  <clm@redhat.com>
15020
15021	* config/v850/v850.h (MULDI3_LIBCALL, UCMPDI2_LIBCALL, CMPDI2_LIBCALL,
15022	NEGDI2_LIBCALL, INIT_TARGET_OPTABS, MASK_STRICT_ALIGN): Define.
15023	(PREDICATE_CODES): Include new predicates.
15024	(RTX_COSTS): Handle UMOD and UDIV.  Tune MULT for v850e.
15025	(TARGET_SWITCHES):  Add strict-align.
15026	(TARGET_STRICT_ALIGN): New.
15027	(MASK_DEFAULT, STRICT_ALIGNMENT):  Redefine.
15028	* config/v850/t-v850 (MULTILIB_OPTIONS, MULTILIB_DIRNAMES):
15029	Define.
15030	(LIB1ASMFUNCS): Add v850_negdi2, v850_cmpdi2, v850_ucmpdi2,
15031	v850_muldi3.
15032	* config/v850/lib1funcs.asm (L_callt_save_r2_r29, L_return_r2_r29,
15033	L_callt_save_r2_r31, L_return_r2_r31,
15034	L_save_all_interrupt): Change addi to add.
15035	(L_save_interrupt, L_return_interrupt): Rework.
15036	(__return_r31):  Correct .size directive.
15037	(mulsi3, divsi3, udivsi3, umodsi3, modsi3): Tune for v850e.
15038	(v850_negdi2, v850_cmpdi2, v850_ucmpdi2, v850_muldi3):
15039	New routines.
15040	* config/v850/v850.c (expand_prologue): Call
15041	gen_callt_save_interrupt, gen_callt_restore_all_interrupt,
15042	gen_callt_return_interrupt and gen_callt_save_all_interrupt.
15043	(reg_or_int9_operand): New predicate.
15044	(reg_or_const_operand): New routine.
15045	* config/v850/v850.md (return_interrupt): Changed from
15046	restore_interrupt.
15047	(callt_save_all_interrupt): Changed from save_all_interrupt_v850e.
15048	(callt_save_interrupt): Change save sequence.
15049	(callt_return_interrupt): New.
15050	(save_interrupt): Don't use runtime function for LONG_CALLS
15051	and TARGET_PROLOG_FUNCTION.
15052	(save_all_interrupt): Likewise.
15053	(mulsi3): Use new predicate.
15054	(moviscc): Disallow some combination of constants.
15055	Fix define_split for sasf insns, so that it will not generate bad
15056	code if operand0 and operand5 are the same.
15057	* config/v850/v850-protos.h: Prototype new predicates.
15058
150592002-08-28  Gabriel Dos Reis  <gdr@integrable-solutions.net>
15060
15061	* c-common.c (builtin_define_type_precision): New function.
15062	(cb_register_builtins): Use it.  Define __WCHAR_UNSIGNED__ is
15063	wchar_t is unsigned in C++.
15064	* doc/cpp.texi (Common Predefined Macros): Document
15065	__WCHAR_UNSIGNED__, __CHAR_BIT__, __WCHAR_BIT__, __SHRT_BIT__,
15066	__INT_BIT__, __LONG_BIT__, __LONG_LONG_BIT__, __FLOAT_BIT__,
15067	__DOUBLE_BIT__, __LONG_DOUBLE_BIT__.
15068
150692002-08-28  Sylvain Pion <pion@cs.nyu.edu>
15070
15071	* doc/invoke.texi (-Wreorder): Remove remaining pieces from the generic
15072	section.  Mention that it is enabled by -Wall.
15073	(-Wall): Mention that there can be language-specific warnings as well.
15074	(-Wctor-dtor-privacy): Mention that it is enabled by default.
15075	(-Wnon-virtual-dtor): Mention that it is enabled by -Wall.
15076
150772002-08-28  J"orn Rennecke <joern.rennecke@superh.com>
15078
15079	* sh.c (calc_live_regs): Save FPSCR_REG in an interrupt handler
15080	if it is ever live.
15081
15082	* sh.c (sh_handle_interrupt_handler_attribute): Reject interrupt_handler
15083	attribute for SHCOMPACT.
15084
15085	* sh.h (OVERRIDE_OPTIONS): If align_function isn't set, set it
15086	appropriately.
15087	(FUNCTION_BOUNDARY): Specify only the minimum alignment required
15088	by the ABI.
15089
15090	* sh.h (SH5_WOULD_BE_PARTIAL_NREGS): Also handle TImode case.
15091
150922002-08-28  Jason Thorpe  <thorpej@wasabisystems.com>
15093
15094	* config.gcc (mips*-*-netbsd*): Set target_cpu_default to
15095	"MASK_GAS|MASK_ABICALLS".
15096	* config/mips/netbsd.h (TARGET_ENDIAN_DEFAULT)
15097	(TARGET_DEFAULT): Remove.
15098	(MACHINE_TYPE): Undefine before defining.
15099	(DBX_DEBUGGING_INFO, PREFERRED_DEBUGGING_TYPE): Remove.
15100
151012002-08-27  Mark Mitchell  <mark@codesourcery.com>
15102
15103	* c-common.c (warn_abi): New variable.
15104	* c-common.h (warn_abi): Likewise.
15105	* c-opts.c (COMMAND_LINE_OPTIONS): Add -Wabi.
15106	(c_common_decode_option): Handle it.
15107	* doc/invoke.texi: Document -Wabi.
15108
151092002-08-27  Nicola Pero  <n.pero@mi.flashnet.it>
15110
15111	* c-common.c (warn_undeclared_selector): New variable.
15112	* c-common.h (warn_undeclared_selector): Idem.
15113	* c-opts.c (c_common_decode_option): Set warn_undeclared_selector
15114	to on when -Wundeclared-selector is found.
15115	(COMMAND_LINE_OPTIONS): Added -Wundeclared-selector.
15116	* objc/objc-act.c (build_selector_expr): If
15117	warn_undeclared_selector is set, check that the selector has
15118	already been defined, and emit a warning if not.
15119
151202002-08-27  Nick Clifton  <nickc@redhat.com>
15121	    Catherine Moore  <clm@redhat.com>
15122	    Jim Wilson  <wilson@cygnus.com>
15123
15124	* config.gcc: Add v850e-*-* target.
15125	Add --with-cpu= support for v850.
15126	* config/v850/lib1funcs.asm: Add v850e callt functions.
15127	* config/v850/v850.h: Add support for v850e target.
15128	* config/v850/v850.c: Add functions to support v850e target.
15129	* config/v850/v850-protos.h: Add prototypes for new functions in v850.c.
15130	* config/v850/v850.md: Add patterns for v850e instructions.
15131	* doc/invoke.texi: Document new v850e command line switches.
15132
151332002-08-27  J"orn Rennecke <joern.rennecke@superh.com>
15134			  Aldy Hernandez <aldyh at redhat dot com>
15135
15136	* doc/tm.texi: Applied numerous fixes to the automaton based
15137	scheduler descrition.
15138
151392002-08-27  Jan Hubicka  <jh@suse.cz>
15140
15141	* i386.c (classify_argument): Handle variable sized objects.
15142
151432002-08-27  Jan Hubicka  <jh@suse.cz>
15144
15145	* i386.c (ix86_expand_int_movcc): Fix RTL sharing problem
15146
151472002-08-27  Jan Hubicka  <jh@suse.cz>
15148
15149	* libgcc2.c (__bb_exit_func): Properly write the summarized statistics.
15150
151512002-08-27  Jan Hubicka  <jh@suse.cz>
15152
15153	* i386.c (classify_argument): Properly compute word size of the analyzed object.
15154
151552002-08-27  J"orn Rennecke <joern.rennecke@superh.com>
15156
15157	* sh.md (attribute type): Add types mt_group, fload, pcfload, fpul_gp,
15158	mac_gp ftrc_s and cwb.  Add / Adjust definitions in individual insn
15159	accordingly.
15160	(attribute insn_class): Provide default definitions based on type.
15161	Remove all insn-specific settings.
15162	(various function units): Remove old SH4 scheduling.
15163	(branch_zero, dfp_comp, late_fp_use, any_fp_comp, any_int_load):
15164	New attributes.  Set them where appropriate.
15165	(cpu unit FS): Don't define / use.
15166	(F3, load_store): New cpu units.
15167	(F01): New reservation.
15168	(all insn_reservations): Make dependent on sh4 pipeline model.
15169	Fix latencies.
15170	(nil, reg_mov, freg_mov, sh4_fpul_gp, sh4_call): New insn_reservations.
15171	(sh4_mac_gp, fp_arith_ftrc, arith3, arith3b): Likewise.
15172	(mt insn_reservation): Use type mt_group.
15173	(insn_reservation load_store): Split into sh4_load, sh4_load_si,
15174	sh4_fload and sh4_store.
15175	(insn_reservation branch_zero and branch): Replace with sh4_branch.
15176	(insn_reservation branch_far): Replace with sh4_return.
15177	(insn_reservation return_from_exp): Rename to:
15178	(sh4_return_from_exp).  Change to be just d_lock*5.
15179	(insn_reservation lds_to_pr): Rename to:
15180	(sh4_lds_to_pr).  Change to be just d_lock*2.
15181	(insn_reservation ldsmem_to_pr, sts_from_pr): Change to be just
15182	d_lock*2.
15183	(insn_reservation prload_mem): Rename to:
15184	(sh4_prstore_mem).  Change to d_lock*2,nothing,memory.
15185	(insn_reservation fpscr_store): Rename to:
15186	(fpscr_load).  Change to d_lock,nothing,F1*3.
15187	(insn_reservation fpscr_store_mem): Rename to:
15188	(fpscr_load_mem).  Change to d_lock,nothing,(F1+memory),F1*2.
15189	(insn_reservation multi): Change to
15190	d_lock,(d_lock+f1_1),(f1_1|f1_2)*3,F2.
15191	(insn_reservation fp_arith): Change to issue,F01,F2.
15192	(insn_reservation fp_div: Change to issue,F01+F3,F2+F3,F3*7,F1+F3,F2.
15193	(insn_reservation dp_float): Change to issue,F01,F1+F2,F2.
15194	(insn_reservation fp_double_arith): Change to issue,F01,F1+F2,fpu*4,F2.
15195	(insn_reservation fp_double_cmp): Change to
15196	d_lock,(d_lock+F01),F1+F2,F2.
15197	(insn_reservation dp_div): Change to
15198	issue,F01+F3,F1+F2+F3,F2+F3,F3*16,F1+F3,(fpu+F3)*2,F2.
15199	* sh.c (flow_dependent_p, flow_dependent_p_1): New functions.
15200	(sh_adjust_cost, SHcompact): Differentiate between different
15201	kinds of dependencies.  Drop factor of ten for superscalar.
15202	Use new instruction types.  Add new exception rules.
15203
15204	* sh.md (mulhisi3, umulhisi3: Add a REG_EQUAL note.
15205
15206	* sh.md (mperm_w): Add DONE.
15207
152082002-08-27  David Edelsohn  <edelsohn@gnu.org>
15209
15210	* longlong.h: Import current PowerPC defintion from GMP-4.1.
15211
15212	* config/rs6000/rs6000.h (MIN_UNITS_PER_WORD): Add IN_LIBGCC2 case.
15213
15214	* config/rs6000/linux64.h (ADJUST_FIELD_ALIGN): Undef before define.
15215
152162002-08-27  J"orn Rennecke <joern.rennecke@superh.com>
15217
15218	* sh.h (MAX_FIXED_MODE_SIZE): Define.
15219
152202002-08-27  Gabriel Dos Reis  <gdr@soliton.integrable-solutions.net>
15221
15222	* doc/cpp.texi (Common Predefined Macros): Don't mess with table
15223	delimiter.
15224
152252002-08-27  Gabriel Dos Reis  <gdr@integrable-solutions.net>
15226
15227	* c-common.c (cpp_define_data_format): New function.
15228	(cb_register_builtins): Call it.
15229
15230	* doc/cpp.texi (Common Predefined Macros): Document
15231	__TARGET_BITS_ORDER__, __TARGET_BYTES_ORDER__,
15232	__TARGET_INT_WORDS_ORDER__, __TARGET_FLOAT_WORDS_ORDER__,
15233	__TARGET_FLOAT_FORMAT__, __TARGET_USES_VAX_F_FLOAT__,
15234	__TARGET_USES_VAX_D_FLOAT__, __TARGET_USES_VAX_G_FLOAT__,
15235	__TARGET_USES_VAX_H_FLOAT__.
15236
152372002-08-26  Ziemowit Laski <zlaski@apple.com>
15238
15239	* objc/objc-act.c (get_super_receiver): If inside a class method
15240	of a category, cast the receiver to 'id' before accessing the 'isa'
15241	field so that <objc/objc-class.h> is not needed.  For NeXT runtime.
15242
152432002-08-26  Ulrich Weigand  <uweigand@de.ibm.com>
15244
15245	* config/s390/s390-protos.h (s390_function_prologue,
15246	s390_function_epilogue): Remove.
15247	config/s390/s390.c (s390_function_prologue, s390_function_epilogue,
15248	TARGET_ASM_FUNCTION_PROLOGUE, TARGET_ASM_FUNCTION_EPILOGUE): Remove.
15249
15250	config/s390/s390.c (s390_machine_dependent_recorg): New function.
15251	config/s390/s390-protos.h (s390_machine_dependent_reorg): Declare it.
15252	config/s390/s390.h (MACHINE_DEPENDENT_REORG): Call it.
15253	config/s390/s390.c (s390_split_branches, s390_chunkify_pool): Adapt
15254	to being called from MACHINE_DEPENDENT_REORG.  Update regs_ever_live.
15255
15256	config/s390/s390.c (s390_frame_info): Inline save_fprs_p.  Always
15257	assume BASE_REGISTER and RETURN_REGNUM need to be saved.
15258	(s390_emit_prologue): Assume RETURN_REGNUM to be saved iff
15259	function is not a leaf function.  Use save_gprs and restore_gprs.
15260	(s390_emit_epilogue): Likewise.
15261	(save_gprs, restore_gprs): New functions.
15262	(struct s390_frame): Remove return_reg_saved_p member.
15263	(save_fprs_p): Remove.
15264	(s390_optimize_prolog): New function.
15265	(s390_legitimate_reload_constant): Remove now unnecessary check.
15266
15267	(s390_function_count): Remove.
15268	(s390_output_symbolic_const): Replace s390_function_count by
15269	current_function_funcdef_no.
15270	(s390_output_constant_pool): Likewise.
15271
15272	(legitimize_pic_address): Use regs_ever_live to track PIC register
15273	instead of current_function_uses_pic_offset_table.
15274	(s390_emit_prologue): Likewise.
15275	config/s390/s390.md ("call", "call_value"): Likewise.
15276
152772002-08-26  Neil Booth  <neil@daikokuya.co.uk>
15278
15279	* c-opts.c (find_opt): Don't complain about wrong languages
15280	here.  Return exact matches even for wrong language.
15281	(c_common_decode_option): Complain about wrong languages
15282	here.
15283
152842002-08-24  Stuart Hastings  <stuart@apple.com>
15285
15286	* function.h (struct function): Add flag
15287	all_throwers_are_sibcalls.
15288	* except.c (set_nothrow_function_flags): Replaces
15289	nothrow_function_p. Set new flag.
15290	* except.h (set_nothrow_function_flags): Replaces
15291	nothrow_function_p.
15292	* dwarf2out.c (struct dw_fde_struct): Add flag
15293	all_throwers_are_sibcalls.
15294	(output_call_frame_info): Test it.
15295	(dwarf2out_begin_prologue) Propagate it from cfun to
15296	dw_fde_struct.
15297	* toplev.c (rest_of_compilation): Update calls to
15298	nothrow_function_p.
15299
153002002-08-23  Zack Weinberg  <zack@codesourcery.com>
15301
15302	* ggc-page.c (compute_inverse): Short circuit calculation for
15303	object sizes larger than half a page.
15304
153052002-08-23  David Edelsohn  <edelsohn@gnu.org>
15306
15307	* config/rs6000/rs6000.c (rs6000_elf_select_section): Treat
15308	DEFAULT_ABI == ABI_AIX like PIC.  Test PIC & reloc for readonly
15309	default.
15310	(rs6000_elf_unique_section): Likewise.
15311
153122002-08-23  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
15313
15314	* ns32k.c (ns32k_globalize_label): Delete.
15315	* ns32k.h (ASM_OUTPUT_LABEL, TARGET_ASM_GLOBALIZE_LABEL): Delete.
15316
153172002-08-23  Alan Modra  <amodra@bigpond.net.au>
15318
15319	* config/rs6000/rs6000.c (output_mi_thunk): Don't determine insns
15320	for loading delta with num_insns_constant_wide.  Calculate
15321	delta_low, delta_high without using a conditional.
15322
153232002-08-22  Jason Merrill  <jason@redhat.com>
15324
15325	* c-common.h (RETURN_STMT_EXPR): Rename from RETURN_EXPR.
15326	* c-common.def: Adjust.
15327	* c-dump.c (c_dump_tree): Adjust.
15328	* c-semantics.c (genrtl_return_stmt): Adjust.
15329	* c-pretty-print.c (pp_c_statement): Adjust.
15330	* tree-inline.c (copy_body_r): Adjust.
15331
153322002-08-22  Zack Weinberg  <zack@codesourcery.com>
15333
15334	* ggc-page.c: Avoid division in ggc_set_mark.
15335	(DIV_MULT, DIV_SHIFT, OFFSET_TO_BIT, inverse_table,
15336	compute_inverse): New.
15337	(ggc_set_mark, ggc_marked_p): Use OFFSET_TO_BIT.
15338	(init_ggc): Initialize inverse_table.
15339
153402002-08-22  Tom Tromey  <tromey@redhat.com>
15341
15342	* doc/install.texi (Configuration): Document --datadir.
15343
153442002-08-22  Alexandre Oliva  <aoliva@redhat.com>
15345
15346	* Makefile.in ($(BUILD_PREFIX_1)varray.o): Depend on $(GGC_H).
15347
153482002-08-22  Hans-Peter Nilsson  <hp@bitrange.com>
15349
15350	* gengtype-lex.l (ID): Allow underscore as first character.
15351
153522002-08-21  David Edelsohn  <edelsohn@gnu.org>
15353
15354	* config/rs6000/rs6000.c (rs6000_xcoff_asm_globalize_label): New
15355	function.
15356	(rs6000_xcoff_asm_named_section): Rename.
15357	* config/rs6000/xcoff.h (TARGET_ASM_GLOBALIZE_LABEL): Define.
15358
153592002-08-21  Tom Tromey  <tromey@redhat.com>
15360
15361	For PR java/6005 and PR java/7611:
15362	* fold-const.c (fold_truthop): Use can_use_bit_fields_p.
15363	(fold): Likewise.
15364	* langhooks.c (lhd_can_use_bit_fields_p): New function.
15365	* langhooks-def.h (lhd_can_use_bit_fields_p): Declare.
15366	(LANG_HOOKS_CAN_USE_BIT_FIELDS_P): New define.
15367	(LANG_HOOKS_INITIALIZER): Use it.
15368	* langhooks.h (struct lang_hooks) [can_use_bit_fields_p]: New
15369	field.
15370
153712002-08-21  Stan Shebs  <shebs@apple.com>
15372
15373	* tree.c (finish_vector_type): Fix a typo in a comment.
15374	* Makefile.in: Fix "the the" stutters in comments.
15375	* genautomata.c: Ditto.
15376	* ifcvt.c: Ditto.
15377	* regrename.c: Ditto.
15378	* config/alpha/alpha.c: Ditto.
15379	* config/alpha/vms-crt0-64.c: Ditto.
15380	* config/alpha/vms-crt0.c: Ditto.
15381	* config/alpha/vms-psxcrt0-64.c: Ditto.
15382	* config/alpha/vms-psxcrt0.c: Ditto.
15383	* config/d30v/d30v.h: Ditto.
15384	* config/fr30/fr30.h: Ditto.
15385	* config/rs6000/rs6000.c: Ditto.
15386	* config/stormy16/stormy16.h: Ditto.
15387	* doc/md.texi: Ditto.
15388
153892002-08-21  John David Anglin  <dave@hiauly1.hia.nrc.ca>
15390
15391	* cppinit.c (remove_dup_nonsys_dirs): Fix warning and return value.
15392
153932002-08-21  Joseph S. Myers  <jsm@polyomino.org.uk>
15394
15395	* c-decl.c (grokdeclarator): Make invalid combinations with long,
15396	short, signed or unsigned into hard errors.  Fixes PR c/4319.
15397	Also make duplicate modifiers such as "short short" into hard
15398	errors.
15399
154002002-08-21  Andrew Pinski <pinskia@physics.uc.edu>
15401	    Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
15402
15403	* doc/tm.texi (TARGET_ASM_GLOBALIZE_LABEL): Move '@end deftypefn'
15404	to the actual end.  Add '@end table' and '@table @code'.
15405
154062002-08-20  Geoffrey Keating  <geoffk@redhat.com>
15407
15408	* doc/tm.texi (Label Output): Add missing '@end deftypefn'.
15409
15410	* unroll.c (biv_total_increment): Don't try to compute the total
15411	increment for FP BIVs.
15412
154132002-08-20  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
15414
15415	* alpha.c (TARGET_ASM_GLOBALIZE_LABEL): Define for unicosmk.
15416	* alpha/elf.h (ASM_OUTPUT_EXTERNAL_LIBCALL,
15417	ASM_OUTPUT_ALIGNED_BSS): Use target hook.
15418	* alpha/osf.h (ASM_OUTPUT_WEAK_ALIAS): Likewise.
15419	* alpha/unicosmk.h (ASM_GLOBALIZE_LABEL): Delete.
15420	* arm/aof.h (ASM_GLOBALIZE_LABEL): Likewise.
15421	(GLOBAL_ASM_OP): Define.
15422	* arm.c (aof_globalize_label): New function.
15423	(TARGET_ASM_GLOBALIZE_LABEL): Define for AOF.
15424	* arm/unknown-elf.h (ASM_OUTPUT_ALIGNED_BSS): Use target hook.
15425	* c4x.c (c4x_globalize_label): New function.
15426	(TARGET_ASM_GLOBALIZE_LABEL): Define for c4x.
15427	* c4x.h (ASM_GLOBALIZE_LABEL): Delete.
15428	(GLOBAL_ASM_OP): Define.
15429	* cris/aout.h (ASM_OUTPUT_EXTERNAL_LIBCALL): Use target hook.
15430	* darwin-protos.h (darwin_globalize_label): Declare.
15431	* darwin.c (darwin_globalize_label): New function.
15432	* darwin.h (ASM_DECLARE_CLASS_REFERENCE): Use target hook.
15433	(ASM_GLOBALIZE_LABEL): Delete.
15434	(GLOBAL_ASM_OP, TARGET_ASM_GLOBALIZE_LABEL): Define.
15435	* dsp16xx.c (asm_output_common): Use target hook.
15436	* elfos.h (ASM_OUTPUT_EXTERNAL_LIBCALL): Likewise.
15437	* frv.h (ASM_GLOBALIZE_LABEL): Delete.
15438	(GLOBAL_ASM_OP): Define.
15439	* i370.c (i370_globalize_label): New function.
15440	(TARGET_ASM_GLOBALIZE_LABEL): Define for i370.
15441	* i370.h (ASM_GLOBALIZE_LABEL): Delete.
15442	* i386.c (ix86_asm_file_end): Use target hook.
15443	* i386/sco5.h (ASM_GLOBALIZE_LABEL): Don't undef.
15444	(ASM_OUTPUT_EXTERNAL_LIBCALL): Use target hook.
15445	* ia64.c (ia64_asm_output_external): Likewise.
15446	* ia64/sysv4.h: Update comment.
15447	* m32r.h (ASM_OUTPUT_ALIGNED_BSS): Use target hook.
15448	* mips/elf.h (ASM_OUTPUT_ALIGNED_BSS): Likewise.
15449	* mips/iris5.h (ASM_OUTPUT_WEAK_ALIAS): Use target hook.
15450	* mips/linux.h (ASM_OUTPUT_ALIGNED_BSS): Likewise.
15451	* mips.h (ASM_OUTPUT_ALIGNED_DECL_COMMON): Use target hook.
15452	* mmix-protos.h (mmix_asm_globalize_label): Delete.
15453	* mmix.c (mmix_asm_globalize_label): Likewise.
15454	* mmix.h (ASM_GLOBALIZE_LABEL): Likewise.
15455	(GLOBAL_ASM_OP): Define.
15456	* ns32k.c (ns32k_globalize_label): New function.
15457	* ns32k.h (TARGET_ASM_GLOBALIZE_LABEL): Define for ns32k.
15458	(ASM_GLOBALIZE_LABEL): Delete.
15459	* pa/pa-linux.h (ASM_GLOBALIZE_LABEL): Don't undef.
15460	(TARGET_ASM_GLOBALIZE_LABEL): Undefine.
15461	* pa.c (pa_globalize_label): New function.
15462	* pa.h (ASM_GLOBALIZE_LABEL): Delete.
15463	(TARGET_ASM_GLOBALIZE_LABEL): Define for pa.
15464	* rs6000/darwin.h (ASM_GLOBALIZE_LABEL): Delete.
15465	(GLOBAL_ASM_OP): Define.
15466	(TARGET_ASM_GLOBALIZE_LABEL): Undef.
15467	* rs6000/sysv4.h (ASM_OUTPUT_ALIGNED_BSS): Use target hook.
15468	* rs6000/xcoff.h (ASM_GLOBALIZE_LABEL): Delete.
15469	(GLOBAL_ASM_OP): Define.
15470	* v850.c (v850_output_aligned_bss): Use target hook.
15471	* vax.c (vms_globalize_label): New function.
15472	(TARGET_ASM_GLOBALIZE_LABEL): Define for vms.
15473	* vax/vms.h (ASM_GLOBALIZE_LABEL): Delete.
15474	(GLOBAL_ASM_OP): Define.
15475	* defaults.h (ASM_GLOBALIZE_LABEL): Delete.
15476	* doc/tm.texi: Update docs.
15477	* dwarf2out.c (default_eh_frame_section, output_die_symbol): Use
15478	target hook.
15479	* final.c (output_alternate_entry_point): Likewise.
15480	* hooks.c (hook_FILEptr_constcharptr_void): New function.
15481	* hooks.h (hook_FILEptr_constcharptr_void): Declare.
15482	* output.h (assemble_global): Delete.
15483	(default_globalize_label): Declare.
15484	* system.h (ASM_GLOBALIZE_LABEL): Poison.
15485	* target-def.h (TARGET_ASM_GLOBALIZE_LABEL): Define.
15486	(TARGET_ASM_OUT): Add TARGET_ASM_GLOBALIZE_LABEL.
15487	* target.h (gcc_target): Add globalize_label member.
15488	* varasm.c (asm_output_bss, asm_output_aligned_bss,
15489	globalize_decl): Use target hook.
15490	(assemble_global): Delete.
15491	(default_globalize_label): New function.
15492
154932002-08-20  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
15494
15495	* dsp16xx.h (dsp16xx_umulhi3_libcall): Delete.
15496
154972002-08-20  Devang Patel  <dpatel@apple.com>
15498	* tree.c (get_qualified_type): Add TYPE_CONTEXT check.
15499
155002002-08-20  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
15501
15502	* arc.c (output_shift): Use stdio instead of asm_fprintf.
15503	* arm.c (thumb_output_function_prologue): Likewise.
15504	* avr.c (print_operand): Likewise.
15505	* c4x.c (c4x_print_operand): Likewise.
15506	* c4x.h (ASM_OUTPUT_INTERNAL_LABEL, TRAMPOLINE_TEMPLATE,
15507	ASM_OUTPUT_REG_PUSH, ASM_OUTPUT_REG_POP): Likewise.
15508	* cris.c (cris_target_asm_function_prologue,
15509	cris_asm_output_mi_thunk): Likewise.
15510	* h8300.c (print_operand): Likewise.
15511	* h8300.h (ASM_OUTPUT_ADDR_VEC_ELT): Likewise.
15512	* ip2k.c (print_operand): Likewise.  Fix format specifier.
15513	* m68hc11.c (asm_print_register, print_operand,
15514	print_operand_address): Use stdio instead of asm_fprintf.
15515	(print_operand_address): Fix format specifier.
15516	* m68hc11.h (FUNCTION_PROFILER, ASM_OUTPUT_ADDR_DIFF_ELT,
15517	ASM_OUTPUT_ADDR_VEC_ELT, ASM_OUTPUT_ALIGN): Use stdio instead of
15518	asm_fprintf.
15519	* m68k/amix.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
15520	* m68k/atari.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
15521	* m68k.c (m68k_output_function_prologue,
15522	m68k_output_function_epilogue, print_operand): Likewise.
15523	* mmix.c (mmix_asm_output_mi_thunk, mmix_asm_weaken_label):
15524	Likewise.  Fix format specifier.
15525	* mn10200.h (ASM_OUTPUT_ADDR_VEC_ELT): Likewise.
15526	* mn10300.h (ASM_OUTPUT_ADDR_VEC_ELT): Likewise.
15527	* v850.h (ASM_OUTPUT_ADDR_VEC_ELT): Likewise.
15528
155292002-08-15  Eric Christopher  <echristo@redhat.com>
15530	    Jeff Knaggs  <jknaggs@redhat.com>
15531
15532	* config.gcc (mipsisa64sr71k-elf): New target.
15533	* config/mips/sr71k.md: New file.
15534	* config/mips/mips.md: Use it.
15535	(rot*): Add sr71k specifics.
15536	* config/mips/t-sr71k: New file.
15537	* config/mips/mips.h (sr71k): New cpu.
15538	(TARGET_SR71K): Use it.
15539	(TUNE_SR71K): Ditto.
15540	(GENERATE_BRANCHLIKELY): Ditto.
15541	(ISA_HAS_MULHI, ISA_HAS_MULS, ISA_HAS_MSAC, ISA_HAS_MACC,
15542	ISA_HAS_ROTR_SIISA_HAS_ROTR_DI): Ditto.
15543	* config/mips/mips.c (sr71k): New cpu.
15544	(mips_use_dfa_pipeline_interface): Use.
15545
155462002-08-15  Eric Christopher  <echristo@redhat.com>
15547	    Richard Sandiford <rsandifo@redhat.com>
15548	    Aldy Hernandez  <aldyh@redhat.com>
15549	    Graham Stott    <grahams@redhat.com>
15550	    Michael Meissner  <meissner@redhat.com>
15551	    Gavin Romig-Koch  <gavin@redhat.com>
15552	    Ken Raeburn  <raeburn@cygnus.com>
15553	    Alexandre Oliva <aoliva@redhat.com>
15554
15555	* config.gcc (mips64vr-elf): New target.
15556	* config/mips/5400.md: New file.
15557	* config/mips/5500.md: Ditto.
15558	* config/mips/mips.md: Use them.
15559	(frsqrt): New.
15560	* config/mips/mips.c (vr4111, vr4121, vr4320, vr5400, vr5500): New
15561	cpus.
15562	(mips_issue_rate): Use them.
15563	(mips_use_dfa_pipeline_interface): New function. Use for 5400 and 5500.
15564	(TARGET_SCHEDUSE_DFA_PIPELINE_INTERFACE): Define. Use above.
15565	* config/mips/mips.h (vr4111, vr4121, vr4320, vr5400, vr5500): New
15566	cpus.
15567	(TARGET_MIPSx): Use them.
15568	(TUNE_MIPSx): Ditto.
15569	(GETNATE_MULT3_SI): Ditto.
15570	(ISA_HAS_BRANCHLIKELY): Ditto.
15571	(ISA_HAS_CONDMOVE): Ditto.
15572	(ISA_HAS_NMADD_NMSUB): Ditto.
15573	(ISA_HAS_MULHI): New. Ditto.
15574	(ISA_HAS_MULS): Ditto.
15575	(ISA_HAS_MSAC): Ditto.
15576	(ISA_HAS_MACC): Ditto.
15577	(ISA_HAS_ROTR_SI): Ditto.
15578	(ISA_HAS_ROTR_DI): Ditto.
15579	(RTX_COSTS): Use.
15580
155812002-08-20  John David Anglin  <dave@hiauly1.hia.nrc.ca>
15582
15583	* cppinit.c (remove_dup_dir): Add head_ptr argument to handle removal
15584	at head.
15585	(remove_dup_nonsys_dirs): New function.
15586	(remove_dup_dirs): Change argument head to head_ptr.  Remove warnings.
15587	(merge_include_chains): Remove non-system include directories from
15588	quote and bracket include chains when they duplicate equivalent system
15589	directories.
15590	* doc/cpp.texi (-I): Update.
15591	* doc/cppopts.texi (-I): Update.
15592	* doc/install.texi (--with-local-prefix): Further document usage of
15593	this option.
15594	* doc/invoke.texi (-I): Update.
15595
155962002-08-20  Richard Henderson  <rth@redhat.com>
15597
15598	* expr.c (TARGET_MEM_FUNCTIONS): Transform to boolean.
15599	(emit_block_move): Split out subroutines.
15600	(emit_block_move_via_movstr): New.
15601	(emit_block_move_via_libcall): New.  Emit bcopy via normal call also.
15602	(emit_block_move_libcall_fn): New.  Construct function prototype for
15603	bcopy as well.
15604	(clear_storage): Split out subroutines.
15605	(clear_storage_via_clrstr): New.
15606	(clear_storage_via_libcall): New. Emit bzero as a normal call also.
15607	(clear_storage_libcall_fn): New.  Construct function prototype for
15608	bzero as well.
15609	(emit_push_insn): Use emit_block_move.
15610	(expand_assignment): Booleanize TARGET_MEM_FUNCTIONS.
15611	(store_constructor): Likewise.
15612
156132002-08-19  Ziemowit Laski  <zlaski@apple.com>
15614
15615	* objc/objc-act.c (building_objc_message_expr): Rename to
15616	current_objc_message_selector.
15617
156182002-08-19  Ziemowit Laski  <zlaski@apple.com>
15619
15620	* objc/objc-act.c (build_ivar_chain): Remove.
15621	(objc_copy_list): Likewise.
15622	(get_class_ivars): Inline call to removed build_ivar_chain
15623	function.  Save off a clean copy of ivars in the CLASS_OWN_IVARS
15624	slot; use that slot (rather than CLASS_IVARS) when accessing
15625	ivars for base classes.  Call copy_list and chainon instead of
15626	objc_copy_list.
15627	(build_private_template): Call get_class_ivars instead of
15628	build_ivar_chain.
15629	(start_class): Allocate room for the CLASS_OWN_IVARS slot.
15630	(continue_class): Call get_class_ivars instead of
15631	build_ivar_chain.
15632	(encode_field_decl): Check for DECL_BIT_FIELD_TYPE instead
15633	of DECL_BIT_FIELD (which may have been cleared).
15634	* objc/objc-act.h (CLASS_OWN_IVARS): New accessor macro.
15635
156362002-08-19  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
15637
15638	* genautomata.c (output_translate_vect, output_state_ainsn_table,
15639	output_min_issue_delay_table): Mark variable with ATTRIBUTE_UNUSED
15640	in output file.
15641	(output_internal_min_issue_delay_func): Initialize variable in
15642	output file.
15643
156442002-08-19  Alexandre Oliva  <aoliva@redhat.com>
15645
15646	* Makefile.in (GCC_FOR_TARGET): Prepend STAGE_CC_WRAPPER.
15647	(stage2_build, stage3_build, stage4_build): Likewise, to CC.
15648
156492002-08-19  Geoffrey Keating  <geoffk@redhat.com>
15650	    Steve Ellcey  <sje@cup.hp.com>
15651
15652	* machmode.h (SCALAR_INT_MODE_P): New macro to test for
15653	scaler integer mode (MODE_INT or MODE_PARTIAL_INT).
15654	* explow.c (trunc_int_for_mode): Abort when the mode is not
15655	a scaler integer mode.
15656	* combine.c (expand_compound_operation): Don't expand Vector
15657	or Complex modes into shifts.
15658	(expand_field_assignment): Don't do bitwise arithmatic and
15659	shifts on Vector or Complex modes.
15660	(simplify_comparison): Don't call trunc_int_for_mode
15661	for VOIDmode.
15662	* recog.c (general_operand): Likewise.
15663	(immediate_operand): Likewise.
15664	(nonmemory_operand): Likewise.
15665
156662002-08-19  David Edelsohn  <edelsohn@gnu.org>
15667
15668	* config/rs6000/rs6000.c (rs6000_emit_set_const): Inline
15669	multi-instruction SImode constant.  Add REG_EQUAL note.
15670	* config/rs6000/rs6000.md (movsi splitter): Use
15671	rs6000_emit_set_const.
15672
156732002-08-19  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
15674
15675	* tree-inline.c (initialize_inlined_parameters): Wrap variable in
15676	the macro test controlling its use.
15677
156782002-08-18  H.J. Lu  (hjl@gnu.org)
15679
15680	* config.gcc (*-*-linux*): Set extra_parts="crtbegin.o
15681	crtbeginS.o crtbeginT.o crtend.o crtendS.o", gas=yes and
15682	gnu_ld=yes.
15683	(alpha*-*-linux*, cris-*-linux*, i370-*-linux*,
15684	i[34567]86-*-linux*, x86_64-*-linux*, mips*-*-linux*,
15685	s390-*-linux*, s390x-*-linux*, sparc-*-linux*, sparc64-*-linux*,
15686	xtensa-*-linux*): Remove setting extra_parts, gas, and gnu_ld
15687	here.
15688	(cris-*-linux*): Remove setting thread_file here.
15689
156902002-08-18  Neil Booth  <neil@daikokuya.co.uk>
15691
15692	PR preprocessor/7602
15693	* cppinit.c (path_include): Treat the system environment
15694	variables as being cxx_aware.
15695
156962002-08-17  Joseph S. Myers  <jsm@polyomino.org.uk>
15697
15698	* c-decl.c (flexible_array_type_p): New function.
15699	(grokdeclarator, finish_struct): Use it.
15700	* doc/extend.texi: Document constraints on use of structures with
15701	flexible array members.
15702
157032002-08-17  Richard Sandiford  <rsandifo@redhat.com>
15704
15705	* config/mips/t-coff, config/mips/t-elf, config/mips/t-isa3264,
15706	config/mips/t-r3900 (MULTILIB_MATCHES): Define.
15707	* config/mips/mips.h (ASM_SPEC): Use %(endian_spec).
15708
157092002-08-16  Stan Shebs  <shebs@apple.com>
15710
15711	* c-common.c (cb_register_builds): Define __NEXT_RUNTIME__
15712	for ObjC with -fnext-runtime.
15713	* doc/cpp.texi: Document it.
15714
157152002-08-16  Janis Johnson  <janis187@us.ibm.com>
15716
15717	* doc/install.texi (Final installation): Replace links to individual
15718	build status pages with a link to a common page that lists them all.
15719
157202002-08-16  Sylvain Pion <pion@cs.nyu.edu>
15721
15722	* doc/invoke.texi: Fix typo.
15723
157242002-08-16  David Edelsohn  <edelsohn@gnu.org>
15725
15726	* doc/install.texi (*-ibm-aix*): Explain AIX shared object versioning.
15727
157282002-08-16  Andrew Haley  <aph@redhat.com>
15729
15730	* tree-inline.c: Add includes for Java inliner.
15731	(remap_decl): Don't handle anonymous types for Java.
15732	(remap_block): Add handling for Java trees.
15733	(copy_scope_stmt): Conditionalize for non-Java use only.
15734	(copy_body_r): Handle Java trees.  Add handling for
15735	LABELED_BLOCK_EXPR, EXIT_BLOCK_EXPR, Java blocks.
15736	(initialize_inlined_parameters):  Handle Java trees.
15737	(declare_return_variable): Likewise.
15738	(expand_call_inline): Handle Java trees.
15739	(walk_tree): Likewise.
15740	(copy_tree_r): Don't handle SCOPE_STMTs for Java.
15741	(add_stmt_to_compound): New function.
15742
157432002-08-15  Richard Henderson  <rth@redhat.com>
15744
15745	* Makefile.in (LOOSE_WARN): Remove -fno-common.
15746	(NOCOMMON_FLAG): New substitution point.
15747	(GCC_WARN_CFLAGS): Include it.
15748	* configure.in (ac_checking): Set nocommon_flag.
15749	(nocommon_flag): New substitution point.
15750
157512002-08-15  Alexandre Oliva  <aoliva@redhat.com>
15752
15753	* c-tree.h (skip_evaluation): Move declaration...
15754	* c-common.h: ... here.
15755	* c-typeck.c (build_external_ref): Don't assemble_external nor
15756	mark a tree as used if skip_evaluation is set.
15757	* c-parse.in (typeof): New non-terminal to set skip_evaluation
15758	around TYPEOF.
15759	(typespec_nonreserved_nonattr): Use it.
15760
157612002-08-15  Douglas B Rupp  <rupp@gnat.com>
15762
15763	* dbxout.c (dbx_debug_hooks): Update end_prologue, end_epilogue.
15764	(xcoff_debug_hooks): Update end_prologue.
15765	* debug.c (do_nothing_debug_hooks): Update end_prologue, end_epilogue.
15766	* debug.h (end_prologue): Add file arg.
15767	(end_epilogue): Add line and file args.
15768	(dwarf2out_end_epilogue): Add line and file args.
15769	(vmsdbgout_after_prologue): Remove.
15770	* dwarf2out.c (dwarf2out_end_epilogue): Add line and file args.
15771	(dwarf2_debug_hooks): Update end_prologue.
15772	* dwarfout.c (dwarfout_end_epilogue): Add line and file args.
15773	(dwarfout_end_prologue): Add file arg.
15774	* final.c (vmsdbgout_after_prologue): Remove
15775	(final_end_function): Update end_epilogue call.
15776	(final_scan_insn): Update end_prologue call.
15777	* sdbout.c (sdbout_end_epilogue): Add line and file args.
15778	(sdbout_end_prologue): Add file arg.
15779	(sdb_debug_hooks): Update end_prologue.
15780	(sdb_begin_prologue): Update sdbout_end_prologue call.
15781	* vmsdbgout.c (vmsdbg_debug_hooks): Add vmsdbgout_end_prologue,
15782	vmsdbgout_end_function.
15783	(vmsdbgout_end_prologue): New function renamed from
15784	vmsdbgout_after_prologue. Call vmsdbgout_source_line.
15785	(vmsdbgout_end_function): New function.
15786	(vmsdbgout_end_epilogue): Add line and file args. Call
15787	vmsdbgout_source_line.
15788	(write_pclines): Write only valid line numbers.
15789	(write_srccorr): Don't write source correlation records if 0 lines.
15790	* xcoffout.c (xcoffout_end_epilogue): Add line and file args.
15791
157922002-08-15  Steve Ellcey  <sje@cup.hp.com>
15793
15794	* gcc/unwind.h (_Unwind_Ptr): Make 64 bits on IA64 HP-UX.
15795	(_Unwind_Internal_Ptr): 32 bit version for use in
15796	read_encoded_value_with_base.
15797	* gcc/unwind-pe.h (read_encoded_value_with_base): Use
15798	_Unwind_Internal_Ptr instead of _Unwind_Ptr in order to get the
15799	right size.
15800
158012002-08-15  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
15802
15803	* loop.c (scan_loop, move_movables, count_one_set): Cast to avoid
15804	signed/unsigned warnings.
15805
15806	* regclass.c (init_reg_sets_1, choose_hard_reg_mode,
15807	record_reg_classes): Likewise.
15808
15809	* reload.c (reload_inner_reg_of_subreg, push_reload,
15810	find_reloads_address_1): Likewise.
15811
158122002-08-15  David Edelsohn  <edelsohn@gnu.org>
15813
15814	* rs6000.c (output_mi_thunk): Return to function section on
15815	TARGET_ELF.
15816
15817	* rs6000-c.c (rs6000_cpu_cpp_builtins): Define __PPC405__ if PPC405.
15818
158192002-08-15  Ulrich Weigand  <uweigand@de.ibm.com>
15820
15821	* config/s390/s390.c (legitimize_address): Optimize loading
15822	of large displacements.
15823
158242002-08-14  Douglas B Rupp  <rupp@gnat.com>
15825
15826	* config/alpha/alpha-protos.h: Update.
15827
15828	* config/alpha/alpha.c: (LINKAGE_SYMBOL_REF_P): New macro.
15829	(alpha_legitimate_address_p): Test LINKAGE_SYMBOL_REF_P.
15830	(alpha_linkage_symbol_p): New static function.
15831	(print_operand_address): Print linkage operand.
15832
15833	(alpha_funcs_num, alpha_funcs_tree, alpha_links_tree): New static
15834	variables.
15835	(reloc_kind): New enum.
15836	(struct alpha_funcs): New struct.
15837	(struct alpha_links): Add reloc_kind field. Rename links_kind field.
15838
15839	(alpha_need_linkage): Rewrite.
15840	(alpha_use_linkage): New global function.
15841	(alpha_write_linkage): Rewrite and make static.
15842	(alpha_write_one_linkage): Rewrite
15843
15844	(alpha_start_function): Remove procedure descriptor output.
15845	(alpha_end_function): Write linkages at end of each function.
15846
15847	* config/alpha/alpha.md (call_vms, call_value_vms): Rewrite.
15848	(call_vms_1, call_value_vms_1): Rewrite.
15849
15850	* config/alpha/vms.h (ASM_FILE_END): Remove.
15851
158522002-08-14  Richard Henderson  <rth@redhat.com>
15853
15854	* ggc-page.c (RTL_SIZE): New.
15855	(extra_order_size_table): Add specializations for 2 and 10 rtl slots.
15856	* rtl.def (BARRIER, NOTE): Pad to 9 slots.
15857
158582002-08-14  Richard Henderson  <rth@redhat.com>
15859
15860	* calls.c: Include target.h.
15861	* Makefile.in (calls.o): Update.
15862
15863	* config/alpha/alpha.c (alpha_end_function): Use targetm.binds_local_p.
15864	* config/alpha/alpha.h (FUNCTION_OK_FOR_SIBCALL): Likewise.
15865
158662002-08-14  Richard Henderson  <rth@redhat.com>
15867
15868	* Makefile.in (LOOSE_WARN): Add -fno-common.
15869	* c-common.h (constant_string_class_name): Add missing extern.
15870
158712002-08-15  Neil Booth  <neil@daikokuya.co.uk>
15872
15873	PR preprocessor/7358
15874	* c-opts.c (check_deps_environment_vars): Ignore main file
15875	for SUNPRO_DEPENDENCIES.
15876	* cppfiles.c (stack_include_file): Ignore main file if
15877	appropriate.
15878	* cpplib.h (struct cpp_options): New member in deps.
15879	* doc/cppenv.texi: Update.
15880
158812002-08-14  Neil Booth  <neil@daikokuya.co.uk>
15882
15883	PR preprocessor/7526
15884	* cpplib.c (run_directive): Kludge so _Pragma dependency works.
15885
158862002-08-14  Nathan Sidwell  <nathan@codesourcery.com>
15887
15888	* doc/invoke.texi (-a): Remove documentation.
15889	(-fprofile-arcs): Remove reference to -a, -ax options.
15890	* doc/gcov.texi (Gcov Data Files): Data might be merged.
15891
158922002-08-14  Gabriel Dos Reis  <gdr@nerim.net>
15893
15894	Fix PR/7566
15895	* c-semantics.c (genrtl_case_label): Don't (mis)use
15896	warning_with_decl.
15897
158982002-08-14  Dale Johannesen  <dalej@apple.com>
15899
15900	* explow.c (emit_stack_restore):  Emit memory clobbers
15901	preceding the stack pop, to prevent the scheduler from
15902	moving refs to variable arrays below this pop.
15903	* reload1.c (reload):  Preserve these clobbers for sched2.
15904	* doc/rtl.texi:  Document clobber (mem:BLK (scratch)).
15905
159062002-08-14  Neil Booth  <neil@daikokuya.co.uk>
15907
15908	* c-opts.c (c_common_post_options): Correct test.
15909
159102002-08-14  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
15911
15912	* m88k.h (ASM_OUTPUT_SOURCE_FILENAME): Fix incorrect argument
15913	order in call to fprintf.
15914
159152002-08-14  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
15916
15917	* config/sparc/sol2.h (SUBTARGET_EXTRA_SPECS): Define.
15918
159192002-08-14  Ulrich Weigand  <uweigand@de.ibm.com>
15920
15921	* reload.c (find_reloads): Handle constraint letters marked by
15922	EXTRA_ADDRESS_CONSTRAINT and EXTRA_MEMORY_CONSTRAINT.
15923	(alternative_allows_memconst): Likewise.
15924	* reload1.c (maybe_fix_stack_asms): Likewise.
15925	* recog.c (asm_operand_ok, preprocess_constraints,
15926	constrain_operands): Likewise.
15927	* regclass.c (record_operand_costs, record_reg_classes): Likewise.
15928	* local-alloc.c (block_alloc, requires_inout): Likewise.
15929	* stmt.c (parse_output_constraint, parse_input_constraint): Likewise.
15930
15931	* defaults.h (EXTRA_MEMORY_CONSTRAINT): Provide a default.
15932	(EXTRA_ADDRESS_CONSTRAINT): Likewise.
15933	* doc/tm.texi: Document these two new target macros.
15934
15935	* config/s390/s390.c (s390_expand_plus_operand): Accept already
15936	valid operands.
15937	(q_constraint): New function.
15938	config/s390/s390-protos.h (q_constraint): Declare it.
15939	config/s390/s390.h (EXTRA_CONSTRAINT): Use it.
15940	(EXTRA_MEMORY_CONSTRAINT): New macro.
15941
15942	* config/s390/s390.md: Throughout the machine description,
15943	replace all instances of the constraint combinations 'Qo'
15944	or 'oQ' with simply 'Q'.
15945
159462002-08-14  Stephane Carrez  <stcarrez@nerim.fr>
15947
15948	* config/m68hc11/m68hc11.h (LINK_SPEC): Support -mrelax.
15949	* config/m68hc11/t-m68hc11-gas (LIBGCC2_DEBUG_CFLAGS): Can use -g now.
15950	(LIBGCC2_CFLAGS): Compile with -mrelax.
15951
159522002-08-14  Stephane Carrez  <stcarrez@nerim.fr>
15953
15954	* doc/invoke.texi: Document -minmax for 68HC12.
15955
15956	* config/m68hc11/m68hc11.md ("umaxqi3"): Use TARGET_MIN_MAX.
15957	("uminqi3"): Likewise.
15958	("uminhi3", "umaxhi3"): Likewise.
15959
15960	* config/m68hc11/m68hc11.h (MASK_MIN_MAX): Define.
15961	(TARGET_MIN_MAX): Define.
15962	(TARGET_SWITCHES): New option -minmax/-mnominmax.
15963
159642002-08-14  Stephane Carrez  <stcarrez@nerim.fr>
15965
15966	* config/m68hc11/t-m68hc11-gas (LIB1ASMFUNCS): Build __far_trampoline.
15967	(MULTILIB_OPTIONS): Must also generate for -mlong-calls.
15968
15969	* config/m68hc11/larith.asm: Put a mode for ELF ABI flags.
15970	(ret, declare, farsym): New gas macros.
15971	(__premain, exit, abort, _cleanup, memcpy, memset, ___adddi3,
15972	___subdi3, ___notdi2, __mulhi32, __mulsi3): Use them to use 'rtc'
15973	and declare the symbol far when compiled with -mlong-calls.
15974	(__far_trampoline): New for 68HC12 trampoline code to invoke a
15975	far handler using jsr/bsr.
15976
15977	* config/m68hc11/m68hc11-crt0.S: Put a mode for ELF ABI flags.
15978	(jsr): New macro to transform a 'jsr' into a 'call'.
15979
159802002-08-14  Stephane Carrez  <stcarrez@nerim.fr>
15981
15982	* doc/invoke.texi: Document -mlong-calls for 68HC12.
15983
15984	* config/m68hc11/m68hc11.h (CPP_SPEC): Pass -D__USE_RTC__ when
15985	-mlong-calls is specified.
15986	(ASM_DECLARE_FUNCTION_NAME): Define to generate .far and .interrupt
15987	assembler directives.
15988	(TARGET_LONG_CALL, MASK_LONG_CALL): Declare.
15989	(TARGET_SWITCHES): Add -mlong-calls options.
15990	(current_function_far): Declare.
15991
15992	* config/m68hc11/m68hc11.c (m68hc11_initial_elimination_offset): Take
15993	into account the page register saved on the stack.
15994	(m68hc11_override_options): Take into account -mlong-calls option.
15995	(m68hc11_asm_file_start): Put a mode for the ELF flags ABI.
15996
15997	* config/m68hc11/m68hc11.md ("*return_32bit"): Return rtc
15998	if the function is going to be in 68HC12 banked memory (-mlong-calls).
15999	("*return_16bit"): Likewise.
16000	("*return_void"): Likewise.
16001	("call", "call_value"): Use call for a far function call.
16002
160032002-08-14  Neil Booth  <neil@daikokuya.co.uk>
16004
16005	* toplev.c (parse_options_and_default_flags): Don't call
16006	post_options here.
16007	(general_init): Initialize GC, pools and tree hash here,
16008	instead of lang_independent_init.
16009	(lang_independent_init): Rename backend_init.
16010	(do_compile): Call post_options hook; exit early if there
16011	have been errors after switch processing.
16012	(toplev_main): Update.
16013
160142002-08-14  Gabriel Dos Reis  <gdr@nerim.net>
16015
16016	* c-pretty-print.h: Guard against multiple inclusion.
16017	Robustify macros.
16018	(pp_c_attributes): Declare.
16019	* c-pretty-print.c (pp_c_attributes): New function.
16020
160212002-08-13  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
16022
16023	* m68k.c (m68k_output_function_prologue,
16024	m68k_output_function_epilogue): Delete versions for DPX2/MOTOROLA
16025	and NEWS/MOTOROLA.
16026	* genattrtab.c: Remove dpx2 comment.
16027	* libgcc2.c (__enable_execute_stack): Delete versions for
16028	NeXT/__MACH__, __convex__, __sysV88__, __pyr__ and
16029	sony_news/SYSTYPE_BSD.
16030	* longlong.h: Delete code for __a29k__, _AM29K, __clipper__,
16031	__gmicro__, __i860__, __NeXT__ and __pyr__.
16032	* rtl.h: Remove convex comment.
16033	* varasm.c: Likewise.
16034
160352002-08-13  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
16036
16037	* c-opts.c (lang_flags): Const-ify.
16038	* ra-build.c (undef_table): Likewise.
16039	* ra.c (eliminables): Likewise.
16040
160412002-08-14  Gabriel Dos Reis  <gdr@nerim.net>
16042
16043	* tree.h: Guard against multiple inclusion.
16044
160452002-08-14  Hans-Peter Nilsson  <hp@bitrange.com>
16046
16047	* reload1.c (reload_cse_simplify): Before checking
16048	REG_FUNCTION_VALUE_P, check REG_P.
16049
160502002-08-13  Geoffrey Keating  <geoffk@redhat.com>
16051
16052	* Makefile.in (attribs.o): Remove $(OBSTACK_H) dependency.
16053
160542002-08-13  Neil Booth  <neil@daikokuya.co.uk>
16055
16056	* c-opts.c (c_common_init_options): Extra braces needed.
16057
160582002-08-13  J"orn Rennecke <joern.rennecke@superh.com>
16059
16060	* sh.c (sh_init_builtins): Add PARAMS to declaration.
16061	(sh_media_init_builtins, sh_expand_builtin): Likewise.
16062	(sh_expand_unop_v2sf): Use PARAMS for variable declaration.
16063	(sh_expand_binop_v2sf): Likewise.
16064	* sh-protos.h (sh_expand_unop_v2sf): Add PARAMS to declaration.
16065	(sh_expand_binop_v2sf, sh_cfun_interrupt_handler_p): Likewise.
16066	(sh_initialize_trampoline): Likewise.
16067
160682002-08-13  Ulrich Weigand  <uweigand@de.ibm.com>
16069
16070	* s390-modes.def [CCL1, CCL2, CCT1, CCT2, CCT3, CCUR, CCSR]: Declare
16071	new condition code modes.
16072	s390.c (s390_match_ccmode_set): Handle those new CC modes.
16073	(s390_select_ccmode): Likewise.
16074	(s390_branch_condition_mask): Likewise.
16075
16076	* s390-protos.h (s390_tm_ccmode): Declare.
16077	s390.c (s390_tm_ccmode): New function.
16078	(s390_match_ccmode): Allow VOIDmode as REQ_MODE.
16079
16080	* s390.md ("*cmpdi_tm2"): Rename to "*tmdi_ext".
16081	("*cmpsi_tm2"): Rename to "*tmsi_ext".
16082	("*cmpqi_tm2"): Rename to "*tmqi_ext".
16083
16084	("*cmpdi_tm_reg", "*cmpdi_tm_mem", "*cmpsi_tm_reg", "*cmpsi_tm_mem",
16085	"*cmphi_tm_sub","*cmphi_cct_0",  "*cmpqi_tm", "*cmpqi_tm_sub",
16086	"*cmpqi_cct_0", "*tm_0"): Remove, replace by ...
16087	("*tmdi_reg", "*tmsi_reg", "*tmdi_mem", "*tmsi_mem", "*tmhi_mem",
16088	"*tmqi_mem", "*tmhi_full", "*tmqi_full"): ... these new patterns.
16089
16090	("*ltgr", "*cmpdi_ccs_0_64", "*cmpdi_ccs_0_31", "*ltr", "*icm15",
16091	"*icm15_cconly", "*cmpsi_ccs_0", "*icm3", "*cmphi_ccs_0", "*icm1",
16092	"*cmpqi_ccs_0"): Remove, replace by ...
16093	("*tstdi_sign", "*tstdi", "*tstdi_cconly", "*tstdi_cconly_31",
16094	"*tstsi", "*tstsi_cconly", "*tstsi_cconly2", "*tsthi", "*tsthi_cconly",
16095	"*tstqi", "*tstqi_cconly"): ... these new patterns.
16096
16097	("*cmpsidi_ccs"): Remove, replace by ...
16098	("*cmpsi_ccs_sign"): ... this new pattern.
16099	("*cmpdi_ccs_sign", "*cmpdi_ccu_zero"): New patterns.
16100
16101	("*cmpqi_ccu_0", "*cmpqi_ccu_immed"): Remove, replace by ...
16102	("*cli"): ... this new pattern.
16103
16104	("*adddi3_sign", "*adddi3_zero_cc", "*adddi3_zero_cconly",
16105	"*adddi3_zero", "*adddi3_cc", "*adddi3_cconly", "*adddi3_cconly2"):
16106	New patterns.
16107	("adddi3_64"): Rename to "*adddi3_64".
16108	("adddi3_31"): Replace by insn and splitter "*adddi3_31".
16109	("adddi3"): Adapt expander.
16110
16111	("*addsi3_cc"): Allow "general_operand" for operand 2.
16112	("*addsi3_carry1_cc", "*addsi3_carry1_cconly",
16113	"*addsi3_carry2_cc", "*addsi3_carry2_cconly"): New patterns.
16114
16115	("addhi3", "addqi3"): Remove, replace by ...
16116	("*addsi3_sign", "*addsi3_sub"): ... these new patterns.
16117
16118	("*subdi3_sign", "*subdi3_zero_cc", "*subdi3_zero_cconly",
16119	"*subdi3_zero", "*subdi3_cc", "*subdi3_cconly"): New patterns.
16120	("subdi3"): Replace by insn and splitter "*subdi3_31".
16121	("subdi3"): New expander.
16122
16123	("*subsi3_borrow_cc", "*subsi3_borrow_cconly"): New patterns.
16124
16125	("subhi3", "subqi3"): Remove, replace by ...
16126	("*subsi3_sign", "*subsi3_sub"): ... these new patterns.
16127
16128	("*muldi3_sign"): New pattern.
16129	("muldi3"): Do not clobber CC.
16130	("mulsi3"): Likewise.
16131	("mulsi_6432"): Likewise.
16132
161332002-08-13  Denis Chertykov  <denisc@overta.ru>
16134
16135	* config/avr/avr.md: Call CC_STATUS_INIT in all peepnoles
16136	which can change CC0.
16137
161382002-08-13  J"orn Rennecke <joern.rennecke@superh.com>
16139
16140	* gcse.c (adjust_libcall_notes): New function.
16141	(do_local_cprop): Use it.  Add fourth parameter.  Changed caller.
16142
161432002-08-13  Nathan Sidwell  <nathan@codesourcery.com>
16144
16145	* libgcc2.c (L_bb): Remove unneeded #includes.
16146	(__global_counters, __gthreads_active): Remove unused globals.
16147	(__bb_exit_func): Merge counts into files rather than appending.
16148	* Makefile.in (INTERNAL_CFLAGS): Move COVERAGE_FLAGS from here ...
16149	(ALL_CFLAGS): ... to here.
16150
161512002-08-13  Denis Chertykov  <denisc@overta.ru>
16152
16153	* config/ip2k/ip2k.c (commands_in_file): Variable removed.
16154	(function_epilogue): Don't calculate function size.
16155	(ip2k_set_compare): Don't use lookup_const_double.
16156	(asm_file_start): Initialization of commands_in_file removed.
16157	(asm_file_end): Output of commands_in_file removed.
16158
16159	* config/ip2k/ip2k.c (CPP_PREDEFINES): Remove definition of
16160	__INT_MAX__.
16161
161622002-08-13  Neil Booth  <neil@daikokuya.co.uk>
16163
16164	* c-opts.c (c_common_init_options): Check option array is
16165	sorted if checking enabled.
16166
161672002-08-13  Gabriel Dos Reis  <gdr@nerim.net>
16168
16169	* c-pretty-print.c: #include "c-tree.h".
16170	(pp_c_simple_type_specifier): Tweak.
16171	(pp_c_storage_class_specifier): New.
16172	(pp_c_function_specifier): Likewise.
16173	(pp_c_declaration_specifiers): Likewise.
16174	(pp_c_init_declarator): Likewise.
16175	(pp_c_declaration): Likewise.
16176	(pp_c_direct_declarator): Stub.
16177	(pp_c_declarator): Likewise.
16178	(pp_c_parameter_declaration): Likewise.
16179
161802002-08-13  Neil Booth  <neil@daikokuya.co.uk>
16181
16182	* c-opts.c (deps_seen, deps_file, deferred_count, deferred_size,
16183	handle_deferred_opts, sanitize_cpp_opts, defer_opt,
16184	struct deferred_opt): New.
16185	(COMMAND_LINE_OPTIONS): Add -M*.
16186	(missing_arg): Update.
16187	(c_common_decode_option): Handle -M*.
16188	(c_common_post_options): Handle -M*.  Use sanitize_cpp_opts;
16189	don't call cpp_post_options.
16190	(c_common_finish, check_deps_environment_vars): Update.
16191	* cppfiles.c (stack_include_file, handle_missing_header): Update.
16192	* cpphash.h (CPP_PRINT_DEPS): Remove.
16193	* cppinit.c: Don't include version.h.
16194	(cpp_create_reader): Don't call deps_init.  Initialize
16195	warn_long_long.
16196	(cpp_read_main_file): Init deps if necessary.
16197	(cpp_destroy): Conditionally free deps.
16198	(cpp_finish): Update.
16199	(no_tgt): Remove.
16200	(COMMAND_LINE_OPTIONS, cpp_handle_option): Remove -M*.
16201	(cpp_post_options): Rename post_options.
16202	* cpplib.h (struct cpp_options): Remove some dependency options;
16203	move others to a new structure.
16204	(cpp_post_options): Remove.
16205	(cpp_finish): Comment.
16206	* fix-header.c (read_scan_file): Don't call cpp_post_options.
16207
162082002-08-12  Hans-Peter Nilsson  <hp@bitrange.com>
16209
16210	* config/mmix/mmix.md (define_constants): Add MMIX_rR_REGNUM.
16211	("divdi3", "*divdi3_nonknuth", "moddi3", "*moddi3_nonknuth"): Mark
16212	MMIX_rR_REGNUM as clobbered.
16213	* config/mmix/mmix.h (MMIX_REMAINDER_REGNUM): Use MMIX_rR_REGNUM.
16214
162152002-08-12  Gabriel Dos Reis  <gdr@nerim.net>
16216
16217	* diagnostic.h (output_formatted_scalar): Rename from
16218	output_formatted_integer.
16219	* diagnostic.def: Add DK_DEBUG.
16220	* diagnostic.c (output_decimal): Adjust.
16221	(output_long_decimal): Likewise.
16222	(output_unsigned_decimal): Likewise.
16223	(output_octal): Likewise.
16224	(output_long_octal): Likewise.
16225	(output_hexadecimal): Likewise.
16226	(output_long_hexadecimal): Likewise.
16227	* c-pretty-print.c (pp_c_type_specifier): New function.
16228	(pp_c_specifier_qualifier_list): Likewise.
16229	(pp_c_abstract_declarator): Likewise.
16230	(pp_c_char): Replace pp_format_integer with pp_format_scalar.
16231
162322002-08-12  David Edelsohn  <edelsohn@gnu.org>
16233
16234	* doc/trouble.texi (Disappointments): Add static constructor and
16235	destructor dependency information for AIX.
16236
162372002-08-12  Neil Booth  <neil@daikokuya.co.uk>
16238
16239	* cpphash.h (struct printer): New from cppmain.c.
16240	(cpp_reader): New member.
16241	* cppmain.c (struct printer): Move to cpphash.h.
16242	(options, print): Remove.
16243	(account_for_newlines, print_line, maybe_print_line,
16244	cpp_preprocess_file, setup_callbacks, scan_translation_unit,
16245	scan_translation_unit_trad, cb_line_change, cb_ident,
16246	cb_define, cb_undef, cb_include, cb_file_change, dump_macro,
16247	cb_def_pragma): Make reentrant.
16248
162492002-08-12  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
16250
16251	* real.c (ieee_64): Always define.
16252	(ieee_113): Guard with INTEL_EXTENDED_IEEE_FORMAT == 0.
16253	(dec_h): Not used yet, hide it.
16254	(emdnorm): Mark parameter in ATTRIBUTE_UNUSED.  Guard label with
16255	macro controlling use.
16256	(TFbignan, TFlittlenan): Guard with INTEL_EXTENDED_IEEE_FORMAT == 0.
16257
162582002-08-12  Jan Hubicka  <jh@suse.cz>
16259
16260	* i386.md (tablejump): Sign extend the operand.
16261	* i386.c (classify_argument): Fix missed case from previous patch.
16262
162632002-08-12  Neil Booth  <neil@daikokuya.co.uk>
16264
16265	* c-common.c (STDC_0_IN_SYSTEM_HEADERS, c_common_init): Move
16266	to c-copts.c.
16267	(warn_multichar): Die.
16268	(cb_register_builtins): Export.
16269	* c-common.h (warn_multichar, preprocess_file): Remove.
16270	(cb_register_builtins): New.
16271	* c-lang.c (c_init): Remove.
16272	(LANG_HOOKS_INIT): Use c_objc_common_init.
16273	* c-lex.c (init_c_lex): Don't canonicalize filename.
16274	* c-opts.c (in_fname, STDC_0_IN_SYSTEM_HEADERS): New.
16275	(preprocess_file): Make static.  Update for cpplib.
16276	(c_common_decode_option): Remove warn_multichar.  Use in_fname.
16277	(c_common_post_options): Set some cpp options here.
16278	(c_common_init): Move from c-common.c.
16279	* cppinit.c (cpp_post_options): Don't canonicalize in_fname.
16280	* cpplib.h (struct cpp_options): Remove in_fname.
16281	(cpp_preprocess_file): Update.
16282	* cppmain.c (cpp_preprocess_file): Update for new prototypes.
16283
162842002-08-11  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
16285
16286	* config.gcc (mips*-*-netbsd*): Include ${tm_file}.
16287
162882002-08-11  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
16289
16290	* i370.h (TARGET_CPU_CPP_BUILTINS): Remove spurious trailing
16291	backslash in comment preceeding macro definition.
16292	* i370/linux.h (TARGET_OS_CPP_BUILTINS): Likewise.
16293	* i370/mvs.h (TARGET_OS_CPP_BUILTINS): Likewise.
16294	* i370/oe.h (TARGET_OS_CPP_BUILTINS): Likewise.
16295
162962002-08-12  Hans-Peter Nilsson  <hp@bitrange.com>
16297
16298	* expr.c (store_expr): In condition for checking if value is
16299	generated in TARGET, move call to expr_size last.
16300
163012002-08-11  Neil Booth  <neil@daikokuya.co.uk>
16302
16303	* c-common.c (c_common_init): Call preprocess_file instead.
16304	(c_common_finish): Move to c-opts.c.
16305	* c-common.h (preprocess_file): new.
16306	* c-opts.c (out_fname, out_stream, deps_append, preprocess_file,
16307	check_deps_environment_vars, c_common_finish): New.
16308	(c_common_decode_option): Update for out_fname and dependencies.
16309	* cppinit.c (init_dependency_output, output_deps): Remove.
16310	(cpp_destroy): Update prototype.
16311	(cpp_add_dependency_target): New.
16312	(cpp_read_main_file): Don't overlay a buffer.
16313	(cpp_finish): Take a deps output stream and write deps to it.
16314	Return the error count.
16315	(cpp_post_options): Don't canonicalize out_fname, or do anything
16316	with dependencies.
16317	* cpplib.h (struct cpp_options): Remove out_fname and
16318	preprocess_only.
16319	(cpp_add_dependency_target): New.
16320	(cpp_destroy, cpp_finish, cpp_preprocess_file): Update.
16321	* cppmain.c (cpp_preprocess_file): Update prototype.  Don't
16322	set preprocess_only.  Don't handle the output stream directly.
16323
163242002-08-11  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
16325
16326	* dsp16xx.c (print_operand): Fix format specifier.
16327	* dsp16xx.md: Avoid automatic aggregate initialization.
16328	* frv.h (REG_CLASS_FROM_LETTER): Avoid char as array index.
16329	* h8300.c (emit_a_rotate, h8300_adjust_insn_length): Avoid U
16330	integer constant modifier.
16331	* ip2k.c (ip2k_set_compare): Avoid signed/unsigned warning.
16332	* mmix-protos.h (mmix_use_simple_return): Move outside TREE_CODE
16333	guards.
16334	* sh/netbsd-elf.h (FUNCTION_PROFILER): Fix format specifier.
16335	* v850.c (v850_select_section): Mark parameter with
16336	ATTRIBUTE_UNUSED.
16337	* global.c (global_alloc): Const-ify.
16338	* ra-colorize.c (hardregset_to_string): Fix format specifier.
16339
163402002-08-11  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
16341
16342	* darwin-c.c (darwin_pragma_options): Const-ify.
16343	* darwin.c (machopic_non_lazy_ptr_name,
16344	machopic_validate_stub_or_non_lazy_ptr): Likewise.
16345	(machopic_indirect_data_reference): Wrap variables in macros
16346	controlling their use.
16347	(machopic_finish, update_non_lazy_ptrs, update_stubs): Const-ify.
16348	(machopic_select_section): Use parentheses around && within ||.
16349	* i386/darwin.h (ASM_OUTPUT_ALIGN): Avoid ambiguous-else.
16350
163512002-08-11  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
16352
16353	* ip2k.c (mdr_resequence_xy_yx, mdr_propagate_reg_equivs,
16354	mdr_try_move_dp_reload, ip2k_check_can_adjust_stack_ref,
16355	ip2k_adjust_stack_ref, mdr_try_move_pushes, mdr_try_propagate_clr,
16356	ip2k_xexp_not_uses_reg_for_mem, mdr_try_propagate_move,
16357	mdr_try_remove_redundant_insns, track_w_reload,
16358	mdr_try_wreg_elim): Make function static to match prototype.
16359	* mmix.c (mmix_target_asm_function_epilogue): Likewise.  Mark
16360	parameter with ATTRIBUTE_UNUSED.
16361
163622002-08-11  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
16363
16364	* arc.c (arc_init): Don't use ISO C style function definitions.
16365	* arm.c (count_insns_for_constant, thumb_far_jump_used_p,
16366	arm_get_strip_length, arm_strip_name_encoding): Likewise.
16367	* avr.h (progmem_section): Likewise.
16368	* h8300.c h8300_asm_insn_count): Likewise.
16369	* m32r.c (init_idents): Likewise.
16370	* s390.c (s390_split_branches, s390_chunkify_pool): Likewise.
16371	* sh.c (sh_cfun_interrupt_handler_p): Likewise.
16372	* xtensa.c (xtensa_build_va_list): Likewise.
16373
163742002-08-11  Neil Booth  <neil@daikokuya.co.uk>
16375
16376	* c-common.h (enum c_language_kind): Emphasize that clk_c is 0.
16377	* c-opts.c (parse_option): Rename find_opt.
16378	(set_std_c99): New function.
16379	(COMMAND_LINE_OPTIONS): Handle -remap and -o.  Remove OPT_std_bad.
16380	(missing_arg): Remove OPT_std_bad.  Handle -o.
16381	(c_common_decode_option): Handle input and output file names,
16382	-o and -remap.	Clean up -std= handling.
16383	* cppinit.c (COMMAND_LINE_OPTIONS): Remove OPT_o and OPT_remap.
16384	(cpp_handle_option): Similarly.  Don't handle filenames.
16385
163862002-08-11  Jan Hubicka  <jh@suse.cz>
16387
16388	* i386.c (classify_argument): Fix computing of field's offsets.
16389
163902002-08-11  Andreas Jaeger  <aj@suse.de>
16391
16392	PR target/7531:
16393	* doc/invoke.texi (i386 and x86-64 Options): Document -mcmodel.
16394
163952002-08-10  Ziemowit Laski  <zlaski@apple.com>
16396
16397	* config/alpha/alpha.h (TARGET_CPU_CPP_BUILTINS): Replace
16398	reference to clk_objective_c with flag_objc.
16399	* config/i386/i386-interix.h (TARGET_OS_CPP_BUILTINS):
16400	Likewise.
16401	* config/mips/mips.h (TARGET_CPU_CPP_BUILTINS): Likewise.
16402
164032002-08-10  Neil Booth  <neil@daikokuya.co.uk>
16404
16405	* c-opts.c (set_std_cxx98, set_std_c89): New.
16406	(COMMAND_LINE_OPTIONS): Move more from cppinit.c.
16407	(c_common_decode_option): Handle new switches from cppinit.c.
16408	Add -std=gnu++98.
16409	* cppinit.c (set_lang): Rename cpp_set_lang.  Export.
16410	(no_arg, no_num): Remove.
16411	(COMMAND_LINE_OPTIONS): Move more to c-opts.c.  Drop all lang-
16412	switches apart from -lang-objc and lang-asm.
16413	(cpp_handle_option): Similarly.
16414	* cpplib.h (cpp_set_lang): New.
16415	* doc/cppopts.texi, doc/invoke.texi: Document -std=c++98,
16416	-std=gnu++98.
16417	* objc/lang-specs.h: Remove -ansi.
16418
164192002-08-10  Jan Hubicka  <jh@suse.cz>
16420			       Graham Stott
16421
16422	* cfg.c (redirect_edge_succ_nodup): Avoid overflows due to roundoff
16423	errors.
16424
164252002-08-10  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
16426
16427	* emit-rtl.c (emit_jump_insn_before, emit_call_insn_before,
16428	emit_jump_insn): Fix uninitialized variable.
16429	* gcov.c (init_line_info): Likewise.
16430	* genautomata.c (transform_3): Add braces around ambiguous
16431	else.
16432	* ifcvt.c (cond_exec_process_insns): Mark parameter with
16433	ATTRIBUTE_UNUSED.
16434	* ra-build.c (parts_to_webs_1): Fix uninitialized variable.
16435	* regrename.c (copyprop_hardreg_forward): Fix uninitialized
16436	variable.
16437
16438	* gengtype.c (write_gc_structure_fields): Avoid signed/unsigned
16439	warnings in output files.
16440
164412002-08-09  Ziemowit Laski  <zlaski@apple.com>
16442
16443	* c-common.c (flag_objc): New.
16444	* c-common.h (c_language_kind): Get rid of clk_objective_c
16445	enum value.
16446	(flag_objc): New extern declaration.
16447	* c-decl.c (implicitly_declare): Call objc_check_decl
16448	instead of maybe_objc_check_decl.
16449	(finish_decl): Likewise.
16450	(grokfield): Likewise.
16451	(finish_struct): Likewise.
16452	* c-lang.c (maybe_objc_check_decl): Rename to objc_check_decl.
16453	(maybe_objc_comptypes): Rename to objc_comptypes.
16454	(maybe_building_objc_message_expr): Rename to
16455	objc_message_selector.
16456	* c-lex.c (lex_charconst): Remove uses of clk_objective_c,
16457	replace with flag_objc as needed.
16458	* c-opts.c (c_common_init_options): Likewise.
16459	(c_common_decode_option): Likewise.
16460	* c-parse.in (init_reswords): Likewise.
16461	* c-tree.h (maybe_objc_check_decl): Rename to objc_check_decl.
16462	(maybe_objc_comptypes): Rename to objc_comptypes.
16463	(maybe_building_objc_message_expr): Rename to
16464	objc_message_selector.
16465	* c-typeck.c (comptypes): Call objc_comptypes instead of
16466	maybe_objc_comptypes, and/or objc_message_selector instead of
16467	maybe_building_objc_message_expr.
16468	(comp_target_types): Likewise.
16469	(convert_for_assignment): Likewise.
16470	(warn_for_assignment): Likewise.
16471	* cppinit.c (init_builtins): Set __OBJC__ manifest constant
16472	independently of those for other languages.
16473	* objc/objc-act.c (maybe_objc_comptypes): Delete.
16474	(maybe_objc_check_decl): Delete.
16475	(maybe_building_objc_message_expr): Rename to
16476	objc_message_selector.
16477	* objc/objc-lang.c (objc_init_options): Use clk_c instead of
16478	clk_objective_c; set flag_objc flag.
16479
164802002-08-09  Toshiyasu Morita  <toshiyasu.morita@hsa.hitachi.com>
16481
16482	* ifcvt.c (find_if_case_2): Test correct basic block for size.
16483
164842002-08-09  Dale Johannesen  <dalej@apple.com>
16485
16486	* config/rs6000/rs6000.md: Add sibcall patterns.
16487	* config/rs6000/rs6000.h (FUNCTION_OK_FOR_SIBCALL):  Define.
16488	* config/rs6000/rs6000.c (rs6000_ra_ever_killed):
16489	Rewritten to handle sibcalls.
16490	* config/rs6000/rs6000.c (function_ok_for_sibcall):  New.
16491	* config/rs6000/rs6000-protos.h (function_ok_for_sibcall):  New.
16492
164932002-08-08  Nathan Sidwell  <nathan@codesourcery.com>
16494
16495	* profile.c (da_file_name): New static var.
16496	(init_branch_prob): Initialize it.
16497	(end_branch_prob): Remove da file.
16498
16499	* Makefile.in (stage1_build): Pass empty COVERAGE_FLAGS.
16500	* configure.in (coverage_flags): Default to nothing.
16501	* configure: Rebuilt.
16502
165032002-08-09  Neil Booth  <neil@daikokuya.co.uk>
16504
16505	* Makefile.in (c-opts.o): Update
16506	* c-opts.c: Include intl.h.
16507	(print_help): Move from cppinit.c.  Remove unused options.
16508	(COMMAND_LINE_OPTIONS): Move more from cppinit.c.
16509	(missing_arg): Complain for switches without an argument.
16510	(c_common_decode_option): Reject missing joined arguments.
16511	Handle new switches from cppinit.c.
16512	* cppinit.c (COMMAND_LINE_OPTIONS): Move some switches to c-opts.c.
16513	(cpp_handle_option): Similarly.
16514	(print_help): Moved to c-opts.c.
16515	* cpplib.h (struct cpp_options): Remove help_only.
16516	* gcc.c (cpp_unique_options): Remove -$.
16517	* doc/cppopts.texi: Undocument -h.
16518
165192002-08-08  Jakub Jelinek  <jakub@redhat.com>
16520
16521	* config/i386/i386.c (legitimate_constant_p): UNSPEC_TP is not
16522	legitimate constant.
16523	(legitimate_pic_operand_p): Neither pic operand.
16524	(legitimate_address_p): But legitimate address.
16525	(get_thread_pointer): Generate MEM/u instead of CONST around
16526	UNSPEC_TP.
16527	(print_operand): Remove printing of UNSPEC_TP.
16528	(print_operand_address): And print it here.
16529
165302002-08-08  Devang Patel  <dpatel@apple.com>
16531
16532	* objc/objc-act.c (build_selector_translation_table): Issue warning,
16533	when  -Wselector is used,if method for which selector is being
16534	created does not exist.
16535
165362002-08-08  Stephen Clarke <stephen.clarke@superh.com>
16537
16538	* config/sh/sh.c (prepare_move_operands): Only call
16539	target_reg_operand if TARGET_SHMEDIA.
16540
165412002-08-08  Jakub Jelinek  <jakub@redhat.com>
16542
16543	* config/rs6000/rs6000.h, config/rs6000/aix.h,
16544	config/rs6000/darwin.h, config/rs6000/linux64.h: Revert last
16545	two patches.
16546	* config/rs6000/sysv4.h: Likewise, remove #undef ADJUST_FIELD_ALIGN.
16547
165482002-08-08  Lars Brinkhoff  <lars@nocrew.org>
16549	    Richard Henderson  <rth@redhat.com>
16550
16551	* emit-rtl.c (gen_rtx_REG): After reload, only return
16552	frame_pointer_rtx or hard_frame_pointer_rtx if frame_pointer_needed.
16553
165542002-08-08  Jakub Jelinek  <jakub@redhat.com>
16555
16556	* config/rs6000/rs6000-protos.h (rs6000_field_alignment): Remove.
16557	* config/rs6000/rs6000.c (rs6000_field_alignment): Move...
16558	* config/rs6000/rs6000.h (ADJUST_FIELD_ALIGN): ...inline into the
16559	macro.
16560
165612002-08-08  Adam Nemet  <anemet@lnxw.com>
16562
16563	* config/arm/arm.c (thumb_unexpanded_epilogue): Stack the PIC
16564	register.
16565	(thumb_expand_prologue): Likewise.
16566	(thumb_output_function_prologue): Likewise.
16567	* config/arm/arm.h (THUMB_INITIAL_ELIMINATION_OFFSET): Account for
16568	the additional push of the PIC register.
16569
165702002-08-08  Nathan Sidwell  <nathan@codesourcery.com>
16571
16572	* configure.in (enable_coverage): New enable switch.
16573	* configure: Rebuilt.
16574	* Makefile.in (COVERAGE_FLAGS, coverageexts): New variables.
16575	(INTERNAL_CFLAGS): Append COVERAGE_FLAGS.
16576	(ALL_FLAGS): Reorder so INTERNAL_CFLAGS comes after CFLAGS.
16577	(mostlyclean): Remove coverage files.
16578	* doc/install.texi: Document enable_coverage.
16579
16580	* cp/Make-lang.in (c++.mostlyclean): Remove coverage files.
16581	* ada/Make-lang.in (ada.mostlyclean): Remove coverage files.
16582	* f/Make-lang.in (f.mostlyclean): Remove coverage files.
16583	* java/Make-lang.in (java.mostlyclean): Remove coverage files.
16584	* objc/Make-lang.in (objc.mostlyclean): Remove coverage files.
16585	* treelang/Make-lang.in (treelang.mostlyclean): Remove coverage
16586	files.
16587
165882002-08-08  Neil Booth  <neil@daikokuya.co.uk>
16589
16590	* c-opts.c (cpp_opts): New.
16591	(COMMAND_LINE_OPTIONS): Add switches from cppinit.c.
16592	(c_common_decode_options): Handle cpplib switches.
16593	(c_common_init_options): Set cpp_opts.
16594	* cppinit.c (COMMAND_LINE_OPTIONS): Move some switches to c-opts.c.
16595	(cpp_handle_option): Similarly.
16596
165972002-08-08  David Edelsohn  <edelsohn@gnu.org>
16598
16599	* config/rs6000/aix.h (TARGET_ALTIVEC): Define to 0.
16600	(TARGET_ALTIVEC_ABI): Same.
16601	(TARGET_ALTIVEC_VRSAVE): Same.
16602
16603	* config/rs6000/rs6000.c (rs6000_expand_ternop_builtin): Check
16604	icode not CODE_FOR_nothing.  Change switch to if.
16605
166062002-08-08  Alan Modra  <amodra@bigpond.net.au>
16607
16608	* config/rs6000/rs6000.h (ASM_CPU_SPEC): Pass -mpower4 when cpu=power4.
16609
166102002-08-08  Jakub Jelinek  <jakub@redhat.com>
16611
16612	* stor-layout.c (place_union_field): For bitfields if
16613	PCC_BITFIELD_TYPE_MATTERS and TYPE_USER_ALIGN, set record's
16614	TYPE_USER_ALIGN.
16615
166162002-08-07  John David Anglin  <dave@hiauly1.hia.nrc.ca>
16617
16618	* pa.c (struct deferred_plabel): Constify name field.
16619
166202002-08-07  Neil Booth  <neil@daikokuya.co.uk>
16621
16622	* cppmacro.c (_cpp_builtin_macro_text): Remove unused variable.
16623
166242002-08-07  John David Anglin  <dave@hiauly1.hia.nrc.ca>
16625
16626	* configure.in (PREFIX_INCLUDE_DIR): Don't define if prefix and
16627	local_prefix are the same.
16628	* configure: Rebuilt.
16629
166302002-08-07  Jakub Jelinek  <jakub@redhat.com>
16631	    Richard Henderson  <rth@redhat.com>
16632
16633	* stor-layout.c (place_union_field): Apply ADJUST_FIELD_ALIGN
16634	to type_align when PCC_BITFIELD_TYPE_MATTERS.  Only apply
16635	ADJUST_FIELD_ALIGN if not DECL_USER_ALIGN resp. TYPE_USER_ALIGN.
16636	(place_field): Likewise.
16637	* config/i386/i386.c (x86_field_alignment): Don't check
16638	DECL_USER_ALIGN here.
16639	* config/rs6000/rs6000.c (rs6000_field_alignment): New.
16640	* config/rs6000/rs6000-protos.h (rs6000_field_alignment): New
16641	prototype.
16642	* config/rs6000/rs6000.h (ADJUST_FIELD_ALIGN): Define.
16643	* config/rs6000/aix.h (ADJUST_FIELD_ALIGN): Remove.
16644	* config/rs6000/darwin.h (ADJUST_FIELD_ALIGN): Remove.
16645	* config/rs6000/linux64.h (ADJUST_FIELD_ALIGN): Remove.
16646	* config/rs6000/sysv4.h (ADJUST_FIELD_ALIGN): Remove.
16647	* doc/tm.texi (ADJUST_FIELD_ALIGN): Update description.
16648
166492002-08-07  Neil Booth  <neil@daikokuya.co.uk>
16650
16651	* Makefile.in (c-opts.o, c-common.o, C_AND_OBJC_OBJS): Update.
16652	* c-common.c: Don't include tree-inline.h.
16653	(c_common_init_options, c_common_post_options): Move to c-opts.c.
16654	* c-common.h (c_common_decode_option): New.
16655	* c-decl.c (c_decode_option): Remove.
16656	* c-lang.c (LANG_HOOKS_DECODE_OPTION): Use c_common_decode_option.
16657	* c-opts.c: New file.
16658	* c-tree.h (c_decode_option): Remove.
16659	* doc/passes.texi: Update.
16660	* objc/objc-act.c (objc_decode_option): Remove.
16661	* objc/objc-act.h (objc_decode_option): Remove.
16662	* objc/ojbc-lang.c (LANG_HOOKS_DECODE_OPTION): Use
16663	c_common_decode_option.
16664
166652002-08-07  Chris Demetriou  <cgd@broadcom.com>
16666
16667	* config/mips/mips.md (sunlt_sf, suneq_sf, sunle_sf): Remove
16668	dependency on TARGET_DOUBLE_FLOAT.
16669
166702002-08-07  Stephen Clarke <stephen.clarke@superh.com>
16671
16672	* config/sh/lib1funcs.asm (GCC_shcompact_incoming_args): Don't
16673	overwrite callee-save registers.  Fix comment.
16674
166752002-08-06  Chris Demetriou  <cgd@broadcom.com>
16676
16677	* config/mips/mips.c (override_options): Set MASK_BRANCHLIKELY
16678	in target_flags based on ISA, if it was not set on the command
16679	line.  Warn if MASK_BRANCHLIKLEY is set but the ISA does not
16680	support Branch Likely instructions.
16681	* config/mips/mips.h (MASK_BRANCHLIKLEY): New macro.
16682	(TARGET_BRANCHLIKELY): Likewise.
16683	(TARGET_SWITCHES): Add -mbranch-likely and -mno-branch-likely.
16684	(GENERATE_BRANCHLIKELY): Use TARGET_BRANCHLIKELY rather than
16685	ISA_HAS_BRANCHLIKELY.
16686	(ISA_HAS_BRANCHLIKELY): Do not include MIPS16 check.
16687	* doc/invoke.texi: Document new MIPS -mbranch-likely and
16688	-mno-branch-likely options.
16689
166902002-08-06  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
16691
16692	* ip2k.c (ip2k_set_compare): Add missing iteration variable.
16693
16694	* Makefile.in (dummy-conditions.o): Depend on $(HCONFIG_H) not
16695	$(GCONFIG_H).
16696
166972002-08-06  Aldy Hernandez  <aldyh@redhat.com>
16698
16699	* c-decl.c (duplicate_decls): Error out for incompatible TLS
16700	declarations.
16701
16702	* testsuite/gcc.dg/tls/diag-3.c: New.
16703
167042002-08-06  Dale Johannesen  <dalej@apple.com>
16705
16706	* c-common.c (fname_decl): Use line number 0 for
16707	__func__, to avoid confusing debuggers.
16708
167092002-08-06  Nathan Sidwell  <nathan@codesourcery.com>
16710
16711	* gcov.c: Tidy.
16712	(struct line_info, struct coverage): New structures.
16713	(gcov_file_name, gcov_file): Remove globals.
16714	(output_data): Take source file parameter. Fix memory leak. Break
16715	up into ...
16716	(init_line_info, output_line_info, make_gcov_file_name,
16717	accumulate_branch_counts): ... here.
16718	(calculate_branch_probs, function_summary): Adjust.
16719	(main): Adjust.
16720	(function_*): Remove global variables.
16721
167222002-08-06  Neil Booth  <neil@daikokuya.co.uk>
16723
16724	* dwarf2out.c: Remove unused macros.
16725
167262002-08-06  Neil Booth  <neil@daikokuya.co.uk>
16727
16728	* function.c (TRAMPOLINE_ALIGNMENT): Always defined.
16729
167302002-08-06  Neil Booth  <neil@daikokuya.co.uk>
16731
16732	* cppinit.c (struct lang_flags): Rename trigraphs std.
16733	(set_lang): Update.
16734	* cpplib.h (struct cpp_options): New member std.
16735	* cppmacro.c (_cpp_builtin_macro_text): Use std.
16736	(collect_args): Flag whether to swallow a possible future
16737	comma pasted with varargs.
16738	(replace_args): Use this flag.
16739	* doc/cpp.texi: Update varargs extension documentation.
16740
167412002-08-06  Jakub Jelinek  <jakub@redhat.com>
16742
16743	* config/i386/mmintrin.h (__m64): Make the type 64-bit aligned.
16744
167452002-08-06  Jakub Jelinek  <jakub@redhat.com>
16746
16747	* config/i386/i386.c (x86_field_alignment): Apply min for all MODE_INT
16748	and MODE_CLASS_INT modes.
16749
167502002-08-06  Jakub Jelinek  <jakub@redhat.com>
16751
16752	* config.gcc (*-*-linux*): Default to --enable-threads=posix if no
16753	--{enable,disable}-threads is given to configure.
16754	(alpha*-*-linux*, hppa*-*-linux*, i[34567]86-*-linux*,
16755	x86_64-*-linux*, ia64*-*-linux*, m68k-*-linux*, mips*-*-linux*,
16756	powerpc-*-linux-gnualtivec*, powerpc-*-linux*, s390-*-linux*,
16757	s390x-*-linux*, sh-*-linux*, sparc-*-linux*, sparc64-*-linux*):
16758	Remove thread_file setting here.
16759
167602002-08-06  David Edelsohn  <edelsohn@gnu.org>
16761
16762	* doc/install.texi (Binaries): Update Bull Freeware URL.
16763
167642002-08-06  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
16765
16766	* doc/gcc.texi (Top): Rename Index to Keyword Index.
16767
167682002-08-05  Nathan Sidwell  <nathan@codesourcery.com>
16769
16770	* gcov.c (output_data): Round to % to nearest, tweak formatting.
16771
167722002-08-05  Jakub Jelinek  <jakub@redhat.com>
16773
16774	* fold-const.c (associate_trees): Only optimize NEGATE_EXPR in one
16775	of the operands into MINUS_EXPR if code is PLUS_EXPR.
16776
167772002-08-05  Douglas B Rupp  <rupp@gnat.com>
16778
16779	* config.gcc (i[34567]86-*-interix*): Replace interix.o with winnt.o
16780	* config/i386/i386-interix.h (TARGET_NOP_FUN_DLLIMPORT,
16781	drectve_section): Define.
16782	* config/i386/t-interix: Replace interix.o rule with winnt.o.
16783	* config/i386/interix.c: Remove.
16784
167852002-08-05  Geoffrey Keating  <geoffk@redhat.com>
16786
16787	* attribs.c: Don't include obstack.h.
16788	* builtins.c: Likewise.
16789	* cfganal.c: Likewise.
16790	* cfgbuild.c: Likewise.
16791	* cfgcleanup.c: Likewise.
16792	* emit-rtl.c: Likewise.
16793	* loop.c: Likewise.
16794	* stmt.c: Likewise.
16795
16796	* Makefile.in (s-gtype): Re-add dependency on $(GTFILES).
16797
167982002-08-05  Gabriel Dos Reis  <gdr@nerim.net>
16799
16800	* doc/c-tree.texi (Expression trees): Document VA_ARG_EXPR
16801
168022002-08-04  Chris Demetriou  <cgd@broadcom.com>
16803
16804	* doc/invoke.texi: Remove duplicated paragraph describing
16805	TARGET_SWITCHES.
16806
168072002-08-04  Geoffrey Keating  <geoffk@redhat.com>
16808
16809	* Makefile.in (sdbout.o): Doesn't need $(OBSTACK_H).
16810	* collect2.h (permanent_obstack): Delete declaration.
16811	* collect2.c (permanent_obstack): Delete definition.
16812	(main): Don't initialize permanent_obstack.  Use xstrdup instead.
16813	* expr.c: Don't include obstack.h.
16814	(permanent_obstack): Delete declaration.
16815	* function.c: Don't include obstack.h.
16816	(permanent_obstack): Delete declaration.
16817	* integrate.c: Don't include obstack.h.
16818	(function_maybepermanent_obstack): Delete declaration.
16819	* print-tree.c (debug_tree): Use x*alloc not permalloc.
16820	* sdbout.c (gen_fake_label): Use x*alloc not permalloc.
16821	* tlink.c (pfgets): Use xstrdup not permanent_obstack.
16822	* toplev.c (lang_independent_init): Rename init_obstacks to init_ttree.
16823	* tree.h: Rename init_obstacks to init_ttree.  Remove declarations
16824	of permalloc, expralloc, perm_calloc.
16825	* tree.c (permanent_obstack): Delete definition.
16826	(init_ttree): Rename from init_obstacks.
16827	(permalloc): Delete.
16828	(perm_calloc): Delete.
16829	(dump_tree_statistics): Don't print information about
16830	permanent_obstack.
16831	* varasm.c (assemble_start_function): Use xstrdup instead of
16832	permalloc/strcpy.
16833	(assemble_variable): Likewise.
16834	* config/alpha/alpha.c (unicosmk_need_dex): Use xmalloc instead of
16835	permalloc.
16836	(unicosmk_add_extern): Likewise.
16837	* config/c4x/c4x.c (c4x_external_ref): Likewise.
16838	(c4x_global_label): Likewise.
16839	* config/frv/frv.c (frv_encode_section_info): Likewise.
16840	* config/i386/winnt.c (i386_pe_record_external_function): Likewise.
16841	(i386_pe_record_exported_symbol): Likewise.
16842	* config/mips/mips.c (mips_output_external): Likewise.
16843	(mips_output_external_libcall): Likewise.
16844	* config/pa/pa.c: (permanent_obstack): Delete declaration.
16845	(output_call): Use ggc_strdup instead of allocating on
16846	permanent_obstack.
16847	* config/romp/romp.c: Include ggc.h.
16848	(get_symref): Don't declare permanent_obstack, use ggc_strdup
16849	intead of permanent_obstack.
16850	* config/rs6000/aix31.h (ASM_OUTPUT_EXTERNAL): Use concat
16851	instead of permalloc.
16852	* config/rs6000/rs6000.c (rs6000_gen_section_name): Use xmalloc
16853	instead of permalloc
16854	* config/rs6000/xcoff.h (ASM_OUTPUT_EXTERNAL): Use concat
16855	instead of permalloc.
16856	* config/vax/vax.c (vms_check_external): Use xmalloc instead of
16857	permalloc.
16858
168592002-08-04  Bernd Schmidt  <bernds@redhat.com>
16860
16861	Contribute a port developed primarily by Michael Meissner,
16862	Catherine Moore, and Richard Sandiford <rsandifo@redhat.com>.
16863	* config.gcc: Add frv-elf target.
16864	* config/frv/cmovd.c: New file.
16865	* config/frv/cmovh.c: New file.
16866	* config/frv/cmovw.c: New file.
16867	* config/frv/frv-abi.h: New file.
16868	* config/frv/frv-asm.h: New file.
16869	* config/frv/frv-modes.def: New file.
16870	* config/frv/frv-protos.h: New file.
16871	* config/frv/frv.c: New file.
16872	* config/frv/frv.h: New file.
16873	* config/frv/frv.md: New file.
16874	* config/frv/frvbegin.c: New file.
16875	* config/frv/frvend.c: New file.
16876	* config/frv/lib1funcs.asm: New file.
16877	* config/frv/media.h: New file.
16878	* config/frv/modi.c: New file.
16879	* config/frv/t-frv: New file.
16880	* config/frv/uitod.c: New file.
16881	* config/frv/uitof.c: New file.
16882	* config/frv/ulltod.c: New file.
16883	* config/frv/ulltof.c: New file.
16884	* config/frv/umodi.c: New file.
16885	* config/frv/xm-frv.h: New file.
16886
16887	* config/frv/media.h: Removed again.
16888
168892002-08-04  Nathan Sidwell  <nathan@codesourcery.com>
16890
16891	* gcov.c (bb_file_time): New static variable.
16892	(object_directory): May also be object file.
16893	(preserve_paths): New static variable.
16894	(print_usage): Adjust.
16895	(options): Adjust.
16896	(process_args): Adjust.
16897	(open_files): Simplify. Cope when OBJECT_DIRECTORY is an object
16898	file. Find modification date on bb file.
16899	(read_profile): Don't rewind a NULL file.
16900	(format_hwint): New static function.
16901	(function_summary): Use format_hwint.
16902	(output_data): SOURCE_FILE_NAME is never relative to
16903	OBJECT_DIRECTORY. Use format_hwint. Adjust gcov file name
16904	mangling. Adjust output format to make it more machine readable.
16905	* doc/gcov.texi: Document & clarify semantics.
16906
169072002-08-04  Joseph S. Myers  <jsm@polyomino.org.uk>
16908
16909	* doc/include/gcc-common.texi (version-GCC): Increase to 3.3.
16910
169112002-08-04  Nathan Sidwell  <nathan@codesourcery.com>
16912
16913	* gcc.c (cc1_options): Pass output file as auxbase when
16914	appropriate.
16915	* profile.c (init_branch_prob): FILENAME has already had ending
16916	stripped.
16917	* final.c (end_final): Likewise.
16918	* toplev.c (aux_base_name): New global.
16919	(compile_file): Pass aux_base_name to init init_branch_prob and
16920	end_final.
16921	(independent_decode_option, case 'a'): New auxinfo options.
16922	(case 'd'): Protect against mising basename.
16923	(do_compile): Initialize aux_base_name.
16924	* toplev.h (aux_base_name): New global.
16925	* doc/invoke.texi: Adjust documentation.
16926
169272002-08-04  Nathan Sidwell  <nathan@codesourcery.com>
16928
16929	* config/i386/i386.c (x86_field_alignment): Remove duplicate test
16930	of TARGET_ALIGN_DOUBLE.
16931
169322002-08-04  Gabriel Dos Reis  <gdr@nerim.net>
16933
16934	* diagnostic.c (inform): New function.
16935	* diagnostic.h (inform): Declare.
16936
169372002-08-03  David Edelsohn  <edelsohn@gnu.org>
16938
16939	* config/rs6000/rs6000.md (movsi_internal1): Add nop mnemonic.
16940	(movhi_internal): Same.
16941	(movqi_internal): Same.
16942	(movdi_internal64): Same.
16943
16944	* config/rs6000/t-ppccomm (MULTILIB_MATCHES_FLOAT): Add mcpu=405.
16945
16946	* config/rs6000/xcoff.h (SKIP_ASM_OP): Define.
16947	(ASM_OUTPUT_SKIP): Use it.  SIZE unsigned.
16948	(COMMON_ASM_OP): Define.
16949	(ASM_OUTPUT_ALIGNED_COMMON): Use it.  SIZE unsigned.
16950	Use ALIGN parameter.
16951	(LOCAL_COMMON_ASM_OP): Define.
16952	(ASM_OUTPUT_LOCAL): Use it.  SIZE unsigned.
16953
169542002-08-03  Roger Sayle  <roger@eyesopen.com>
16955
16956	* builtins.def: Define new builtin functions exp, expf, expl,
16957	log, logf and logl (and their __builtin_* variants).
16958	* optabs.h (enum optab_index): Add new OTI_exp and OTI_log.
16959	Define exp_optab and log_optab.
16960	* optabs.c (init_optans): Initialize exp_optab and log_optab.
16961	* genopinit.c (optabs): Implement exp_optab and log_optab
16962	using exp?f2 and log?f2 patterns.
16963	* builtins.c (expand_builtin_mathfn): Handle BUILT_IN_EXP*
16964	and BUILT_IN_LOG* using exp_optab and log_optab respectively.
16965	(expand_builtin): Ignore the new builtins (and all cos and
16966	sin variants) when not optimizing.  Expand new builtins via
16967	expand_builtin_mathfn when flag_unsafe_math_optimizations.
16968
16969	* doc/extend.texi: Document new exp and log builtins.
16970	* doc/md.texi: Document new exp?f2 and log?f2 patterns
16971	(and previously undocumented cos?f2 and sin?f2 patterns).
16972
169732002-08-03  Jason Merrill  <jason@redhat.com>
16974
16975	* explow.c (int_expr_size): New fn.
16976	* expr.c (expand_expr) [CONSTRUCTOR]: Use it.
16977	* expr.h: Declare it.
16978
169792002-08-02  Krister Walfridsson  <cato@df.lth.se>
16980
16981	* Makefile.in (gengtype-lex.o, gengtype-yacc.o): Add path to
16982	gengtype-* dependencies.
16983
169842002-08-02  Eric Christopher  <echristo@redhat.com>
16985
16986	* config.gcc (mips*-*-linux*): Fix ordering of tm_file.
16987	* config/mips/mips.h (READONLY_DATA_SECTION_ASM_OP): Change
16988	#ifndef to #undef.
16989	(TARGET_MEM_FUNCTIONS): Define instead of define to 1.
16990
169912002-08-02  David Edelsohn  <edelsohn@gnu.org>
16992
16993	PR optimize/7067
16994	* config/rs6000/rs6000.h (RTX_COSTS): Artificially make MULT
16995	small if optimizing for size.
16996
169972002-08-02  Daniel Jacobowitz  <drow@mvista.com>
16998
16999	* configure.in (FORBUILD): Use $build_alias.
17000	* configure: Regenerated.
17001
170022002-08-02  Richard Sandiford  <rsandifo@redhat.com>
17003
17004	* config.gcc: Don't include mips/abi64.h in $tm_file.
17005	* hard-reg-set.h (call_really_used_regs): Declare.
17006	* config/mips/abi64.h: Remove file.
17007	* config/mips/linux.h,
17008	* config/mips/iris6.h: Don't include it.
17009	* config/mips/mips-protos.h (mips_conditional_register_usage): Declare.
17010	* config/mips/mips.h (CONDITIONAL_REGISTER_USAGE): Use it.
17011	(REG_PARM_STACK_SPACE, STACK_BOUNDARY, STRICT_ARGUMENT_NAMING,
17012	FUNCTION_ARG_PASS_BY_REFERENCE, FUNCTION_ARG_PADDING,
17013	FUNCTION_ARG_CALLEE_COPIES, MUST_PASS_IN_STACK, MIPS_STACK_ALIGN):
17014	Bring across definitions from abi64.h.
17015	(GP_ARG_LAST, FP_ARG_LAST): Use MAX_ARGS_IN_REGISTERS.
17016	(BIGGEST_MAX_ARGS_IN_REGISTERS): New.
17017	(struct mips_args): Use it.
17018	* config/mips/mips.c (mips_conditional_register_usage): Define.
17019
170202002-08-02  Jason Merrill  <jason@redhat.com>
17021
17022	* langhooks-def.h (LANG_HOOKS_EXPR_SIZE): New macro.
17023	* langhooks.c (lhd_expr_size): Define default.
17024	* langhooks.h (struct lang_hooks): Add expr_size.
17025	* explow.c (expr_size): Call it.
17026	* expr.c (store_expr): Don't copy an expression of size zero.
17027	(expand_expr) [CONSTRUCTOR]: Use expr_size to calculate how much
17028	to store.
17029	* Makefile.in (builtins.o): Depend on langhooks.h.
17030
170312002-08-02  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
17032
17033	* Makefile.in (ra-debug.o): Depend on $(TM_P_H).
17034	* ra-debug.c: Include "tm_p.h".
17035	* ra-rewrite.c (is_partly_live_1): Change return type to bool.
17036
170372002-08-02  Toon Moene  <toon@moene.indiv.nluug.nl>
17038
17039	* simplify-rtx.c (simplify_binary_operation): x * 1 is allowed
17040	when not honoring signalling NaNs.
17041	(simplify_ternary_operation): a == b has a definite value
17042	when not honoring NaNs.
17043
170442002-08-02  Jason Merrill  <jason@redhat.com>
17045
17046	* gdbinit.in (pct): New macro.
17047
170482002-08-01  Stan Shebs  <shebs@apple.com>
17049	    Andreas Tobler  <toa@pop.agri.ch>
17050
17051	* ginclude/stddef.h (_BSD_SIZE_T_DEFINED_): Define if not defined,
17052	plays nice with Darwin headers.
17053	(_BSD_RUNE_T_DEFINED_): Likewise.
17054
170552002-08-01  Zack Weinberg  <zack@codesourcery.com>
17056
17057	* c-common.c (c_common_init): -Wtraditional also implies -Wlong-long.
17058	* cppinit.c (cpp_post_options): Likewise.
17059
17060	* cppexp.c (cpp_classify_number): Suppress -Wtraditional
17061	warning about 'LL' suffix (but not 'ULL' etc) when
17062	-Wno-long-long is in effect.
17063
17064	* cppmacro.c (_cpp_builtin_macro_text) [BT_TIME, BT_DATE]:
17065	Check for failing time()/localtime(), issue a warning, and
17066	make __TIME__ and __DATE__ expand to fallback strings.
17067
17068	* doc/cpp.texi, doc/extend.texi: Document behavior of __DATE__
17069	and __TIME__ when the date and time cannot be determined.
17070
170712002-08-02  Alan Modra  <amodra@bigpond.net.au>
17072
17073	* config/rs6000/rs6000.c (output_cbranch): Hint differently for power4.
17074
170752002-08-01  Daniel Jacobowitz  <drow@mvista.com>
17076
17077	* Makefile.in ($(BUILD_PREFIX_1)ggc-none.o): Use $(GGC_H).
17078
170792002-08-01  Chris Demetriou  <cgd@broadcom.com>
17080
17081	* config.gcc (mipsisa64sb1-*-elf*): New configuration.
17082	(mipsisa64sb1el-*-elf*): Likewise.
17083	* config/mips/mips.c (mips_cpu_info_table): Add sb1.
17084	* config/mips/mips.h (processor_type): Add PROCESSOR_SB1.
17085	(TARGET_SB1, TUNE_SB1): New macros.
17086	* doc/invoke.texi: Add sb1 to documentation for MIPS -march and
17087	-mtune flags.
17088
170892002-08-01  David Edelsohn  <edelsohn@gnu.org>
17090
17091	* varasm.c (asm_emit_uninitialized): Return false if global BSS
17092	and ASM_EMIT_BSS not supported by target.
17093	(assemble_variable): Do not duplicate uninitialized logic.
17094	Fall through if asm_emit_uninitialized failed.
17095
170962002-08-01  Chris Demetriou  <cgd@broadcom.com>
17097
17098	* config/mips/mips.h (BRANCH_LIKELY_P): Remove unused macro.
17099
171002002-08-02  Alan Modra  <amodra@bigpond.net.au>
17101
17102	* config/rs6000/linux64.h (DBX_OUTPUT_BRAC): Define.
17103	(DBX_OUTPUT_LBRAC, DBX_OUTPUT_RBRAC): Define.
17104
17105	* config/rs6000/rs6000.c (output_toc): Don't use lshift_double when
17106	HOST_BITS_PER_WIDE_INT == 64.
17107
171082002-08-01  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
17109
17110	* df.c (df_insn_table_realloc): Change parameter to unsigned.
17111	* optabs.c (expand_binop): Make variable unsigned.
17112	* simplify-rtx.c (simplify_subreg): Likewise.
17113	* unroll.c (unroll_loop): Cast to avoid signed/unsigned warnings.
17114
171152002-08-01  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
17116
17117	* c-common.c (cb_register_builtins): Always define __GXX_ABI_VERSION.
17118
171192002-08-01  Richard Henderson  <rth@redhat.com>
17120
17121	* toplev.c (parse_options_and_default_flags): Don't set
17122	flag_reorder_blocks for -Os.
17123
17124	* config/avr/avr.c (avr_optimization_options): Remove.
17125	* config/avr/avr.h (OPTIMIZATION_OPTIONS): Remove.
17126	* config/m68hc11/m68hc11.c (m68hc11_optimization_options): Remove.
17127	* config/m68hc11/m68hc11.h (OPTIMIZATION_OPTIONS): Remove.
17128
171292002-08-01  H.J. Lu <hjl@gnu.org>
17130	    Richard Henderson  <rth@redhat.com>
17131
17132	* output.h (DECL_READONLY_SECTION): Remove.
17133	(decl_readonly_section): Declare.
17134	* varasm.c (decl_readonly_section): New.
17135	(default_section_type_flags, default_select_section): Use it.
17136	* config/arm/pe.c (arm_pe_unique_section): Likewise.
17137	* config/i386/interix.c (i386_pe_unique_section): Likewise.
17138	* config/i386/winnt.c (i386_pe_unique_section): Likewise.
17139	* config/mcore/mcore.c (mcore_unique_section): Likewise.
17140	* config/mips/mips.c (mips_unique_section): Likewise.
17141
171422002-08-01  Richard Henderson  <rth@redhat.com>
17143
17144	* integrate.c (copy_rtx_and_substitute): Squash MEM_EXPR when it
17145	refers to a subroutine parameter.
17146
171472002-08-01  Jakub Jelinek  <jakub@redhat.com>
17148
17149	* varasm.c (assemble_visibility): Strip name encoding.
17150
171512002-08-01  Ian Dall  <ian@sibyl.beware.dropbear.id.au>
17152
17153	* config/ns32k/ns32k.h (TARGET_IEEE_COMPARE): Correct earlier patch.
17154	(RETURN_ADDR_RTX): Cannot determine return address for FRAME > 0
17155	when there is no frame pointer.
17156	(INITIAL_FRAME_POINTER_OFFSET): Count stack space for saved fp
17157	registers properly.
17158	* config/ns32k/__unorddf2.c: New file.
17159	* config/ns32k/__unordsf2.c: New file.
17160	* config/ns32k/t-ns32k: New file.
17161	* config.gcc (ns32k-*-netbsd*): Use it.
17162
171632002-08-01  Aldy Hernandez  <aldyh@redhat.com>
17164
17165	* config/rs6000/rs6000.h (SPU_CONST_OFFSET_OK): Change to 0xff.
17166
171672002-08-01  Neil Booth  <neil@daikokuya.co.uk>
17168
17169	* c-common.c (__GXX_ABI_VERSION): Correct spelling.
17170
171712002-08-01  Benjamin Kosnik  <bkoz@redhat.com>
17172
17173	* c-common.c (cb_register_builtins): Set __GXX_ABI_VERSION__ to 102.
17174
171752002-08-01  Richard Sandiford  <rsandifo@redhat.com>
17176
17177	* config/mips/mips.md: Add [!]TARGET_MIPS16 to sgtu conditions.
17178
171792002-08-01  Zdenek Dvorak  <rakdver@atrey.karlin.mff.cuni.cz>
17180
17181	* gcse.c (expr_hash_table_size, n_exprs, set_hash_table_size,
17182	n_sets): Removed.
17183	(expr_hash_table, set_hash_table): Type changed to ...
17184	(struct hash_table): New type.
17185	(hash_scan_insn, hash_scan_set, hash_scan_clobber, hash_scan_call,
17186	insert_expr_in_table, insert_set_in_table, compute_hash_table,
17187	dump_hash_table, lookup_expr, lookup_set, compute_local_properties,
17188	compute_ae_gen, compute_ae_kill): Modified to pass the table explicitly.
17189	(alloc_set_hash_table, alloc_expr_hash_table): Merged to ...
17190	(alloc_hash_table): New.
17191	(free_set_hash_table, free_expr_hash_table): Merged to ...
17192	(free_hash_table): New.
17193	(compute_set_hash_table, compute_expr_hash_table): Merged to ...
17194	(compute_hash_table_work): New.
17195	(classic_gcse, one_classic_gcse_pass, compute_cprop_data,
17196	find_avail_set, one_cprop_pass, find_bypass_set, compute_pre_data,
17197	pre_edge_insert, pre_insert_copies, pre_delete, pre_gcse,
17198	one_pre_gcse_pass, compute_transpout, compute_code_hoist_vbeinout,
17199	hoist_code, one_code_hoisting_pass,
17200	trim_ld_motion_mems): Altered due to changed type of hash tables.
17201
172022002-08-01  Zack Weinberg  <zack@codesourcery.com>
17203
17204	* final.c (output_alternate_entry_point):
17205	If ASM_OUTPUT_TYPE_DIRECTIVE is defined, use it.
17206
172072002-08-01  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
17208
17209	* objc/objc-act.c (encode_complete_bitfield): Add prototype and
17210	avoid ISO C style function definition.
17211
17212	* expr.c (expand_assignment): Delete unused variable.
17213
172142002-08-01  Toon Moene  <toon@moene.indiv.nluug.nl>
17215
17216	* c-common.c (cb_register_builtins): Set
17217	__FINITE_MATH_ONLY__ to 1 if -ffinite-math-only
17218	is given, and to 0 otherwise.
17219	* combine.c (simplify_if_then_else): HONOR_NANS
17220	implies FLOAT_MODE_P.
17221
172222002-08-01  Neil Booth  <neil@daikokuya.co.uk>
17223
17224	* cppinit.c (COMMAND_LINE_OPTIONS): Remove OPT_dollar.
17225	(cpp_handle_option): Don't handle it.
17226	(print_help): Update.
17227	* doc/cppopts.texi: Update.
17228
172292002-08-01  Neil Booth  <neil@daikokuya.co.uk>
17230
17231	* c-common.c (cb_register_builtins): If C++, define
17232	__EXCEPTIONS, __DEPRECATED and __GXX_ABI_VERSION as appropriate.
17233	* gcc.c (cpp_unique_options): Remove __GXX_ABI_VERSION.
17234cp:
17235	* lang-specs.h: Simplify in accordance with new code in
17236	c-common.c.
17237
172382002-08-01  Neil Booth  <neil@daikokuya.co.uk>
17239
17240	* c-common.c: Define all C/ObjC/C++ warning and flag variables.
17241	* c-common.h: Declare all C/ObjC/C++ warning and flag variables.
17242	* c-decl.c: Move all warning and flag variables to c-common.c.
17243	* c-format.c: Move all warning variables to c-common.c.
17244	* c-tree.h: Move all warning and flag declarations to c-common.h.
17245	* objc/objc-act.c: Move all warning variables to c-common.c.
17246	(flag_warn_protocol): Rename warn_protocol.
17247
172482002-07-31  John David Anglin  <dave@hiauly1.hia.nrc.ca>
17249
17250	* pa-linux.h (GLOBAL_ASM_OP): Fix typo.
17251
172522002-07-31  Graham Stott  <graham.stott@btinternet.com>
17253
17254	* config/stormy16/stormy16.h (BSS_SECTION_ASM_OP): Add missing
17255	.section prefix.
17256
172572002-07-31  Stan Shebs  <shebs@apple.com>
17258
17259	* config.gcc (i[34567]86-*-darwin*): New configuration.
17260	* config/darwin.h (TARGET_ENCODE_SECTION_INFO): Undefine before
17261	defining.
17262	(TARGET_ENCODE_SECTION_INFO): Ditto.
17263	(ASM_PREFERRED_EH_DATA_FORMAT): Ditto.
17264	* config/darwin.c (machopic_indirect_data_reference): Remove
17265	setting of RTX_UNCHANGING_P.
17266	(machopic_legitimize_pic_address): Move RTX_UNCHANGING_P up so as
17267	not to be applied to sums.
17268	* config/i386/t-darwin: New file.
17269	* config/i386/darwin.h: New file.
17270	* config/i386/i386.h (TARGET_MACHO): Add default definition.
17271	* config/i386/i386.md (tablejump): Add TARGET_MACHO case.
17272	* config/i386/i386.c (output_set_got): For Mach-O, output Mach-O
17273	label and not the GOT add.
17274	(constant_address_p): For Mach-O, seeing a CONST is enough.
17275	(legitimate_pic_address_disp_p): Add a Mach-O case.
17276	(legitimate_address_p): Also test machopic_operand_p if Mach-O.
17277	(legitimize_pic_address): Use generic Mach-O code to legitimize.
17278	(output_pic_addr_const): Suppress @PLT if Mach-O, and parens
17279	if outputting a difference.
17280	(ix86_output_addr_diff_elt): Add Mach-O case.
17281	(ix86_expand_move): Similarly.
17282	(ix86_expand_call): Similarly.
17283	(current_machopic_label_num): New global.
17284	(machopic_output_stub): New function.
17285	(ix86_value_regno): New function.
17286	(ix86_function_value): Use it instead of VALUE_REGNO.
17287	(ix86_libcall_value): Ditto.
17288	* config/i386/unix.h (VALUE_REGNO): Remove.
17289
172902002-07-31  Graham Stott  <grahas@btinternet.com>
17291
17292	* config/rs6000/rs6000.c(rs6000_hash_constant): Fix
17293	hash for LABEL_REF's.
17294
172952002-07-31  Graham Stott  <grahams@btinternet.com>
17296
17297	* config/rs6000/rs6000.c (spe_init_builtins,
17298	altivec_init_builtins, rs6000_common_init_builtins):
17299	Replace ANSI with K&R function def.
17300
173012002-07-31  David Edelsohn  <edelsohn@gnu.org>
17302
17303	* rs6000.c (validate_condition_mode): Test flag_finite_math_only
17304	for CCFPmode.
17305
173062002-07-31  Richard Sandiford  <rsandifo@redhat.com>
17307
17308	* config/mips/crtn.asm: Don't use __mips16 to determine the
17309	return-address offset.  Define RA to a suitable temporary
17310	register for the return address.
17311
173122002-07-31  Richard Sandiford  <rsandifo@redhat.com>
17313
17314	* config/mips/mips.md (eh_set_lr_si, eh_set_lr_di): Change
17315	constraints to 'd'.
17316
173172002-07-30  Chris Demetriou  <cgd@broadcom.com>
17318
17319	* config/mips/elf.h (STARTFILE_SPEC): Define differently if
17320	default ABI is MEABI.  (Undoes incorrect change in Eric Christopher's
17321	patch on 2002-07-29.)
17322	* config/mips/elf64.h (STARTFILE_SPEC): Likewise.
17323
173242002-07-30  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
17325
17326	* alpha.h, arc.h, arm/aout.h, avr.h, cris.h, d30v.h, dsp16xx.h,
17327	fr30.h, h8300.h, i370.h, i386/sco5.h, i386/unix.h, i960.h, ia64.h,
17328	ip2k.h, m32r.h, mcore.h, mips.h, mn10200.h, mn10300.h, ns32k.h,
17329	openbsd.h, pa/pa-linux.h, pdp11.h, romp.h, rs6000/sysv4.h,
17330	s390/linux.h, sh.h, sparc.h, stormy16.h, v850.h, vax.h, xtensa.h:
17331	(ASM_GLOBALIZE_LABEL): Delete.
17332	(GLOBAL_ASM_OP): Define.
17333
17334	* m68hc11.h, m68k.h, m88k.h (ASM_GLOBALIZE_LABEL): Delete.
17335
17336	* defaults.h (ASM_GLOBALIZE_LABEL): Provide a default.
17337	* doc/tm.texi (ASM_GLOBALIZE_LABEL): Update docs.
17338
173392002-07-30  Geoffrey Keating  <geoffk@redhat.com>
17340
17341	* doc/extend.texi (Hints implementation): Document that GCC
17342	mostly ignores `register'.
17343
173442002-07-30  Toon Moene  <toon@moene.indiv.nluug.nl>
17345
17346	* flags.h: Declare flag_finite_math_only.
17347	Use it in definition of HONOR_NANS and
17348	HONOR_INFINITIES.
17349	* c-common.c (cb_register_builtins): Emit
17350	__FINITE_MATH_ONLY__ when flag_finite_math_only
17351	is set.
17352	* combine.c (simplify_if_then_else): If
17353	flag_finite_math_only is set, a == b has a
17354	definite value.
17355	* toplev.c: Initialize flag_finite_math_only.
17356	(set_flags_fast_math): Set it on -ffast-math.
17357	(flag_fast_math_set_p): Test it.
17358	* doc/invoke.texi: Document -ffinite-math-only.
17359
173602002-07-30  Richard Henderson  <rth@redhat.com>
17361
17362	* ifcvt.c (noce_get_alt_condition): Use reg_overlap_mentioned_p.
17363	(noce_process_if_block): Likewise.
17364
173652002-07-30  Bernd Schmidt  <bernds@redhat.com>
17366
17367	* ifcvt.c (cond_exec_process_if_block): Fix a merging error.
17368	Bail out early if false_expr is NULL and we'd crash due to this.
17369	* genemit.c (gen_expand): Recognize return insns even if the return
17370	appears in a parallel.
17371	* libgcc2.c: Expand macro DECLARE_LIBRARY_RENAMES if it is defined.
17372	* config/fp-bit.c: Likewise.
17373	* doc/tm.texi: Document it.
17374
173752002-07-30  David Edelsohn  <edelsohn@gnu.org>
17376	    Zack Weinberg  <zack@codesourcery.com>
17377
17378	* rs6000.c (rs6000_expand_unop_builtin): Check icode not
17379	CODE_FOR_nothing.  Change switch to if.
17380	(rs6000_expand_binop_builtin): Same.
17381	(rs6000_expand_builtin): Expand builtin if target support enabled.
17382	(rs6000_init_builtins): Init builtin if target support enabled.
17383	(rs6000_common_init_builtins): Check icode not CODE_FOR_nothing.
17384
173852002-07-30  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
17386
17387	* gcc.c (cpp_unique_options): Define __GXX_ABI_VERSION, bump it to 101.
17388
173892002-07-30  Richard Sandiford  <rsandifo@redhat.com>
17390
17391	* config/mips/mips.h (SUBTARGET_ASM_DEBUGGING_SPEC): Fix typo.
17392
173932002-07-30  J"orn Rennecke <joern.rennecke@superh.com>
17394
17395	* sh.md (cond_delay_slot): New attribute.
17396	(cbranch delay): Use it for anulled-true case.
17397	(stuff_delay_slot): New pattern.
17398	* sh.c (print_operand, case '.'): Don't print .s / /s fore zero-length
17399	delay slot insn.
17400	(gen_far_branch): Emit stuff_delay_slot pattern.
17401
174022002-07-30  J"orn Rennecke <joern.rennecke@superh.com>
17403
17404	* unroll.c (copy_loop_body): Don't copy NOTE_INSN_LOOP_CONT.
17405
174062002-07-30  Kazu Hirata  <kazu@cs.umass.edu>
17407
17408	* fold-const.c: Fix comment typos.
17409	* gcse.c: Likewise.
17410	* reload1.c: Likewise.
17411
174122002-07-29  Aldy Hernandez  <aldyh@redhat.com>
17413
17414	* config/rs6000/rs6000.md: Disallow CCEQ compare with crnor/crnot
17415	for TARGET_SPE.
17416
174172002-07-30  Gabriel Dos Reis  <gdr@nerim.net>
17418
17419	* c-pretty-print.h (pp_c_statement): Declare.
17420	* c-pretty-print.c (pp_c_postfix_expression): #if 0 support for SRCLOC.
17421	(pp_c_statement): Define.
17422
174232002-07-30  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
17424
17425	* alpha.h, arc.h, arm/aout.h, avr.h, c4x.h, cris.h, d30v.h,
17426	darwin.h, dsp16xx.h, fr30.h, h8300.h, i370.h, i386.h, i960.h,
17427	ip2k.h, m32r.h, m68hc11.h, m68k.h, m88k.h, mcore.h, mips.h,
17428	mn10200.h, mn10300.h, ns32k.h, pa/pa-linux.h, pdp11.h, romp.h,
17429	rs6000/sysv4.h, s390/linux.h, sh.h, sparc.h, stormy16.h,
17430	v850.h, vax.h, xtensa.h (ASM_OUTPUT_LABEL): Delete definition.
17431
17432	* defaults.h (ASM_OUTPUT_LABEL): Provide a default.
17433	* doc/tm.texi (ASM_OUTPUT_LABEL): Update docs.
17434
174352002-07-30  Gabriel Dos Reis  <gdr@nerim.net>
17436
17437	* c-pretty-print.c (pp_c_primary_expression): Handle STMT_EXPR.
17438	(pp_c_postfix_expression): Handle ARROW_EXPR, FFS_EXPR,
17439	COMPOUND_LITERAL_EXPR, VA_ARG_EXPR.
17440	(pp_c_expression): Update.
17441
174422002-07-29  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
17443
17444	* alpha/vms-cc.c (preprocess_args, main): Use xstrdup and/or
17445	concat in lieu of xmalloc/strcpy/memcpy/sprintf.
17446	* alpha/vms-ld.c (main): Likewise.
17447	* dsp16xx.c (double_reg_to_memory): Likewise.
17448	* mcore.c (mcore_expand_prolog): Likewise.
17449	* cppfiles.c (read_name_map): Likewise.
17450	* gensupport.c (process_rtx, identify_predicable_attribute,
17451	alter_test_for_insn): Likewise.
17452	* vmsdbgout.c (write_rtnbeg, vmsdbgout_init): Likewise.
17453
174542002-07-29  Roger Sayle  <roger@eyesopen.com>
17455
17456	* builtins.c (expand_builtin):  Change the default behavior to
17457	only issue an error if the builtin function doesn't have a
17458	fallback library call.  Remove several cases handled by the
17459	new default.
17460
174612002-07-29  John David Anglin  <dave@hiauly1.hia.nrc>
17462
17463	* real.c (ieee_24, ieee_53, ieee_64, ieee_113): Define only if the
17464	floating point format of the target is IEEE.
17465	* (dec_f, dec_d, dec_g, dec_h): Define only if the floating point
17466	format of the target is DEC.
17467
174682002-07-29  Richard Henderson  <rth@redhat.com>
17469
17470	* unroll.c (verify_addresses): Remove.
17471	(find_splittable_givs): Never split DEST_ADDR givs.
17472
174732002-07-29  Geoffrey Keating  <geoffk@redhat.com>
17474
17475	* doc/gty.texi (GGC Roots): Clarify that the list of syntaxes
17476	is exhaustive.
17477	(Files): Improve documentation on generated source files.
17478
17479	* doc/extend.texi (Translation implementation): Document what
17480	diagnostics look like.
17481	(Identifiers implementation): Document that there's normally no
17482	limit on identifier names.
17483	(Integers implementation): Document two's complement.
17484	(Hints implementation): Document that GCC honors 'inline', mostly.
17485	(Preprocessing directives implementation): Document that GCC
17486	requires the current time.
17487
174882002-07-30  Gabriel Dos Reis  <gdr@nerim.net>
17489
17490	* c-pretty-print.h (struct c_pretty_print_info): Add new member.
17491	(pp_initializer): New macro.
17492	(pp_c_initializer): Declare.
17493	* c-pretty-print.c (pp_c_primary_expression): HAndle TARGET_EXPR.
17494	(pp_c_initializer): Define.
17495	(pp_c_initializer_list): New function.
17496	(pp_c_postfix_expression): Handle ABS_EXPR, COMPLEX_CST,
17497	VECTOR_CST, CONSTRUCTOR.
17498	(pp_c_unary_expression): Handle CONJ_EXPR, REALPART_EXPR,
17499	IMAGPART_EXPR.
17500	(pp_c_cast_expression): Handle FLOAT_EXPR.
17501	(pp_c_assignment_expression): Handle INIT_EXPR.
17502	(pp_c_expression): Update.
17503
175042002-07-30  Neil Booth  <neil@daikokuya.co.uk>
17505
17506	* objc/objc-act.c (objc_init): Return immediately if filename
17507	is NULL.
17508
175092002-07-29  Eric Christopher  <echristo@redhat.com>
17510
17511	* config/mips/elf.h: Remove ecoff.h and gofast includes.
17512	(DWARF2_DEBUGGING_INFO, DBX_DEBUGGING_INFO): Define unconditionally.
17513	(SDB_DEBUGGING_INFO): Undefine.
17514	(PREFERRED_DEBUGGING_TYPE): Set to DWARF2_DEBUG.
17515	(PUT_SDB_SIZE): Remove.
17516	(SUBTARGET_ASM_DEBUGGING_SPEC): Redefine.
17517	(STARTFILE_SPEC): Add isa3264 define.
17518	* config/mips/elf64.h: Ditto.  Move TARGET_MEM_FUNCTIONS from here...
17519	* config/mips/ecoff.h: Remove. and here...
17520	* config/mips/iris3.h: and here...
17521	* config/mips/sni-svr4.h: and here...
17522	* config/mips/mips.h: To here. Remove OBJECT_FORMAT_ROSE ifdefs.
17523	Add assembler -mmdebug options for non-dwarf debugging.
17524	* config/mips/r3900.h: Remove debug info defines.
17525	* config/mips/isa32-linux.h: Remove, move functionality to config.gcc.
17526	* config/mips/isa3264.h: Ditto.
17527	* config/mips/t-isa3264: Fix up for file removal and gofast configure
17528	change.
17529	* config/mips/t-elf: Ditto.
17530	* config/mips/t-ecoff: Ditto.
17531	* config/mips/t-r3900: Ditto.
17532	* config/mips/t-iris5-6: Ditto.
17533	* config/mips/t-isa3264: Ditto.
17534	* config/mips/t-linux: Remove.
17535	* config/mips/t-netbsd: Remove.
17536	* config/mips/t-mips: New file.
17537	* config/mips/t-gofast: Ditto.
17538	* config/mips/netbsd.h: Remove unnecessary undefines.
17539	* config/mips/linux.h: Remove #include of mips.h.
17540	* config.gcc: Add mips.h include for elf targets. Remove tm_file
17541	for ecoff. Add gofast configure option for mips.
17542
175432002-07-29  Chris Demetriou  <cgd@broadcom.com>
17544
17545	* configure.in (mips*-*-*): Add a test to see if MIPS libgloss
17546	linker scripts use STARTUP directives consistently.
17547	* configure: Regenerate.
17548	* config.in: Regenerate.
17549	* config/mips/elf.h (STARTFILE_SPEC): Define conditionally, based
17550	on whether HAVE_MIPS_LIBGLOSS_STARTUP_DIRECTIVES is defined.
17551	* config/mips/elf64.h (STARTFILE_SPEC): Likewise.
17552	* config/mips/isa3264.h (STARTFILE_SPEC): Do not redefine if
17553	HAVE_MIPS_LIBGLOSS_STARTUP_DIRECTIVES is set; the result
17554	will be the same.
17555
175562002-07-29  Aldy Hernandez  <aldyh@redhat.com>
17557
17558	* config/rs6000/rs6000.md ("cpu"): Add ppc8540 to attribute.
17559
175602002-07-29  Aldy Hernandez  <aldyh@redhat.com>
17561
17562	* config/rs6000/rs6000.h (RTX_COSTS): Add MULT case for 8540.
17563
175642002-07-29  Aldy Hernandez  <aldy@quesejoda.com>
17565
17566	* config/rs6000/rs6000.md: Move altivec patterns from here...
17567
17568	* config/rs6000/altivec.md: ...to here.
17569
175702002-07-29  Aldy Hernandez  <aldyh@redhat.com>
17571
17572	* config/rs6000/spe.md ("spe_evmra"): Change to unspec.
17573
175742002-07-29  Richard Henderson  <rth@redhat.com>
17575
17576	* emit-rtl.c (set_mem_attributes_minus_bitpos): Rename from
17577	set_mem_attributes and add BITPOS argument.  Subtract it from
17578	OFFSET when same is adjusted.
17579	(set_mem_attributes): New wrapper function.
17580	* expr.c (expand_assignment): Use set_mem_attributes_minus_bitpos;
17581	remove offset adjustment hack.
17582	* expr.h (set_mem_attributes_minus_bitpos): Declare.
17583
175842002-07-29  Gabriel Dos Reis  <gdr@nerim.net>
17585
17586	* Makefile.in (C_OBJS): Include c-pretty-print.o
17587	(c-pretty-print.o): Add depency rule.
17588	* pretty-print.h: Add more macros.
17589	* c-pretty-print.c: New file.
17590	* c-pretty-print.h: Likewise.
17591
175922002-07-29  Aldy Hernandez  <aldyh@redhat.com>
17593
17594	* config/rs6000/spe.h (__internal_ev_mwhgumian): Cast vector
17595	constants to __ev64_s32__.
17596	(__internal_ev_mwhgsmian): Same.
17597	(__internal_ev_mwhgsmfan): Same.
17598	(__internal_ev_mwhgssfan): Same.
17599	(__internal_ev_mwhgumiaa): Same.
17600	(__internal_ev_mwhgsmiaa): Same.
17601	(__internal_ev_mwhgsmfaa): Same.
17602	(__internal_ev_mwhgssfaa): Same.
17603
176042002-07-29  David Edelsohn  <edelsohn@gnu.org>
17605
17606	* varasm.c (assemble_variable): Narrow test for uninitialized
17607	without BSS target support.
17608
176092002-07-29  Nathan Sidwell  <nathan@codesourcery.com>
17610
17611	* profile.c: Add file comment describing the overall algorithm and
17612	structures.
17613	(struct edge_info): Add comments.
17614	(struct bb_info): Add comments.
17615	* basic-block.h (EDGE_*): Add comments.
17616	* doc/gcov.texi (Gcov Data Files): Document bit flags.
17617
176182002-07-29  Bob Wilson  <bob.wilson@acm.org>
17619
17620	* config/xtensa/elf.h, config/xtensa/linux.h
17621	(TARGET_OS_CPP_BUILTINS): Define.
17622	(CPP_PREDEFINES): Remove.
17623	* config/xtensa/xtensa.h (TARGET_CPU_CPP_BUILTINS): Define.
17624	(CPP_SPEC): Remove.
17625
176262002-07-29  Zack Weinberg  <zack@codesourcery.com>
17627
17628	* gensupport.c: Include hashtab.h.
17629	(insn_elision, condition_table, hash_c_test, cmp_c_test,
17630	maybe_eval_c_test): New routines and data structures to
17631	support insn elision.
17632	(init_md_reader): Read and initialize the condition_table.
17633	(read_md_rtx): Discard insn patterns whose C test is provably
17634	always false.
17635	* gensupport.h: Declare new functions and data structures.
17636
17637	* genconditions.c, dummy-conditions.c: New files.
17638	* Makefile.in: Build genconditions; run it to construct
17639	insn-conditions.c; build that and link it into most gen*
17640	programs.
17641	(HOST_SUPPORT, HOST_EARLY_SUPPORT): New variables.
17642	(GEN): Delete, unused.
17643	(STAGESTUFF): Update.
17644
17645	* gencodes.c: (gen_insn): #define CODE_FOR_xxx equal to
17646	CODE_FOR_nothing for all elided patterns.
17647	(main): Tweaked to support this.
17648	* genflags.c (gen_proto): Emit a static inline generator
17649	function here for all elided patterns, which simply returns
17650	NULL_RTX.
17651	(gen_insn): Do not define HAVE_xxx for elided patterns.
17652	(main): Tweaked to support this.  No need to forward-declare
17653	struct rtx_def.
17654	* genrecog.c: Do not bother emitting the C test if it's known
17655	to be true at compile time.
17656
176572002-07-29  Mike Stump  <mrs@apple.com>
17658
17659	* config.gcc (target_gtfiles): Initialize, as otherwise cross
17660	compilers hosted on powerpc-apple-darwin6.0 won't even build.
17661
176622002-07-29  Richard Earnshaw  <rearnsha@arm.com>
17663
17664	* arm.md (sibcall, sibcall_value): Add RETURN as part of the pattern,
17665	remove clobber of LR.
17666	(sibcall_insn, sibcall_value_insn): Update accordingly.
17667	(sibcall_epilogue): Remove debugging comment from assembler stream.
17668
176692002-07-29  Gabriel Dos Reis  <gdr@nerim.net>
17670
17671	* pretty-print.h: Define more macros.
17672	* diagnostic.h (output_formatted_integer): Moved from...
17673	* diagnostic.c: ... here.
17674
176752002-07-28  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
17676
17677	* stormy16.h (ASM_OUTPUT_SYMBOL_REF): Use ASM_OUTPUT_LABEL_REF.
17678
176792002-07-28  Zack Weinberg  <zack@codesourcery.com>
17680
17681	* defaults.h (ASM_OUTPUT_MEASURED_SIZE): Take only two
17682	arguments.  Always use ".-symbol" as expression argument.
17683	* doc/tm.texi: Update to match.  Document requirement for
17684	".size symbol, .-symbol" to be acceptable to assembler.
17685
17686	* config/elfos.h, config/netbsd-aout.h, config/openbsd.h,
17687	config/arm/elf.h, config/avr/avr.h, config/cris/aout.h,
17688	config/i386/freebsd-aout.h, config/i386/sco5.h,
17689	config/ip2k/ip2k.h, config/m88k/m88k.h, config/xtensa/elf.h,
17690	config/xtensa/linux.h:  Update uses of ASM_OUTPUT_MEASURED_SIZE.
17691
176922002-07-28  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
17693
17694	* Makefile.in (gengtype-lex.c): Fix error in last change.
17695
17696	* alpha/freebsd.h (TARGET_OS_CPP_BUILTINS): Add missing
17697	backslash.
17698
17699	* Makefile.in (vmsdbgout.o): Depend on function.h.
17700
17701	* vmsdbgout.c: Include function.h.
17702
177032002-07-28  Alan Modra  <amodra@bigpond.net.au>
17704
17705	* prefix.c (update_path): Don't strip single `.' path components
17706	unless stripping a later `..' component.  Exit loop as soon as
17707	a valid path is found.
17708
177092002-07-27  Roger Sayle  <roger@eyesopen.com>
17710
17711	* builtins.def [DEF_GCC_BUILTIN]: Require an explicit ATTRS
17712	argument.  Mark BUILT_IN_RETURN, BUILT_IN_EH_RETURN,
17713	BUILT_IN_LONGJMP and BUILT_IN_TRAP as noreturn, the ISO C99
17714	floating point unordered comparisons (e.g. __builtin_isgreater)
17715	as const, and leave the remaining GCC_BUILTINs unchanged.
17716
17717	* c-decl.c (builtin_function): No need to explicitly mark
17718	BUILT_IN_RETURN and BUILT_IN_EH_RETURN as noreturn.
17719
177202002-07-27  Roger Sayle  <roger@eyesopen.com>
17721
17722	* Makefile.in: rtlanal.o now depends upon real.h.
17723
17724	* flags.h [flag_signaling_nans]: New flag.
17725	[HONOR_SNANS]: New macro.
17726
17727	* toplev.c [flag_signaling_nans]: Initialize to false.
17728	(f_options): Add processing for "-fsignaling-nans".
17729	(set_fast_math_flags): Clear flag_signaling_nans with -ffast-math.
17730	(process_options): flag_signaling_nans implies flag_trapping_math.
17731
17732	* c-common.c (cb_register_builtins): Define __SUPPORT_SNAN__
17733	when -fsignaling-nans.  First step to implementing WG14's N965.
17734
17735	* fold-const.c (fold) [MULT_EXPR]: Conditionalize transforming
17736	1.0 * x into x, and -1.0 * x into -x on !HONOR_SNANS.
17737	[RDIV_EXPR]: Conditionalize x/1.0 into x on !HONOR_SNANS.
17738
17739	* simplify-rtx.c (simplify_relational_operation): Conditionalize
17740	transforming abs(x) < 0.0 into false on !HONOR_SNANS.
17741
17742	* rtlanal.c: #include real.c for TARGET_FLOAT_FORMAT definitions
17743	required by HONOR_SNANS.  (may_trap_p): Floating point DIV, MOD,
17744	UDIV, UMOD, GE, GT, LE, LT and COMPARE may always trap with
17745	-fsignaling_nans.  EQ and NE only trap for flag_signaling_nans
17746	not flag_trapping_math (i.e. HONOR_SNANS but not HONOR_NANS).
17747
17748	* doc/invoke.texi: Document new -fsignaling-nans compiler option.
17749
177502002-07-27  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
17751
17752	* Makefile.in (gengtype-lex.c): Work around a bug in flex.
17753	* gengtype-lex.l (YY_USE_PROTOS): Undef.
17754	(YY_DECL): Define.
17755
177562002-07-27  Roger Sayle  <roger@eyesopen.com>
17757
17758	* doc/invoke.texi: Document that both -fno-builtin-foo and
17759	-fno-builtin are supported by the g++ front-end.
17760
177612002-07-27  Stan Shebs  <shebs@apple.com>
17762
17763	* configure.in: Rename config_gtfiles to target_gtfiles.
17764	* configure: Regenerate.
17765	* doc/gty.texi: Update reference.
17766	* config.gcc (powerpc-*-darwin*): Set target_gtfiles
17767	instead of appending to it.
17768
177692002-07-25  Aldy Hernandez  <aldyh@redhat.com>
17770
17771	* config/rs6000/rs6000.c (function_arg_advance): SPE vararg
17772	vectors are split into two registers.
17773	(function_arg): Same.
17774
177752002-07-26  J"orn Rennecke <joern.rennecke@superh.com>
17776
17777	* pa.md (extv): Check predicates before emitting extv_32.
17778
177792002-07-27  Alan Modra  <amodra@bigpond.net.au>
17780
17781	* config/rs6000/rs6000.c (rs6000_traceback_name): New var.
17782	(rs6000_traceback): New var.
17783	(rs6000_override_options): Set rs6000_traceback.
17784	(rs6000_output_function_epilogue): Implement traceback options.
17785	* config/rs6000/rs6000.h (TARGET_OPTIONS): Add "traceback=".
17786	(rs6000_traceback_name): Declare.
17787
17788	* config/rs6000/rs6000.c (output_profile_hook): Don't generate profile
17789	label reference when NO_PROFILE_COUNTERS.
17790
177912002-07-26  Jason Merrill  <jason@redhat.com>
17792
17793	* function.c (assign_parms): Handle frontend-directed pass by
17794	invisible reference.
17795
177962002-07-26  Neil Booth  <neil@daikokuya.co.uk>
17797
17798	* doc/cppopts.texi: Update.
17799
178002002-07-26  Neil Booth  <neil@daikokuya.co.uk>
17801
17802	* cppmacro.c (_cpp_create_definition): Don't attempt redefinition
17803	warnings on assertions.
17804
178052002-07-26  Neil Booth  <neil@daikokuya.co.uk>
17806
17807	* c-common.h (RID_AND, RID_AND_EQ, RID_NOT, RID_NOT_EQ,
17808	RID_OR, RID_OR_EQ, RID_XOR, RID_XOR_EQ, RID_BITAND, RID_BITOR,
17809	RID_COMPL): Remove.
17810	* c-parse.in (rid_to_yy): Similarly.
17811
178122002-07-26  Jason Merrill  <jason@redhat.com>
17813
17814	* c-dump.c: Resurrect.
17815	* tree-dump.c: Move C-specific stuff to c-dump.c.
17816	* c-common.h: Declare c_dump_tree.
17817	* c-lang.c (LANG_HOOKS_TREE_DUMP_DUMP_TREE_FN): Define.
17818	* Makefile.in (C_AND_OBJC_OBJS): Add c-dump.o.
17819	(c-dump.o): New rule.
17820
178212002-07-26  Alan Modra  <amodra@bigpond.net.au>
17822
17823	* config/rs6000/rs6000.md: Enable patterns using rlwinm for
17824	PowerPC64.  Replace "T" and "S" constraints with "n" when the
17825	predicate will do.  Formatting fixes.
17826	(extzvsi_internal2): Use "andi.", "andis." and attr type of "compare"
17827	as for extzvsi_internal1.
17828
178292002-07-25  Neil Booth  <neil@daikokuya.co.uk>
17830
17831	* dwarfout.c (VERSION_ASM_OP, DERIV_BEGIN_LABEL_FMT,
17832	DERIV_END_LABEL_FMT): Remove.
17833	(SL_BEGIN_LABEL_FMT, SL_END_LABEL_FMT): Move.
17834
178352002-07-25  Neil Booth  <neil@daikokuya.co.uk>
17836
17837	* objc/objc-act.c (UTAG_STATICS, UTAG_PROTOCOL_LIST, USERTYPE):
17838	Remove.
17839
178402002-07-25  Stan Shebs  <shebs@apple.com>
17841
17842	* config/rs6000/rs6000.c (rs6000_emit_prologue): Remove unused
17843	local var dwarfp.
17844	(output_compiler_stub): Remove unused locals.
17845	(output_call): Always initialize line number.
17846
178472002-07-25  J"orn Rennecke <joern.rennecke@superh.com>
17848
17849	* sh.h (LOAD_EXTEND_OP): QImode zero-extends on SHmedia.
17850	* sh.md (truncdiqi2, movqi_media): Likewise.
17851
178522002-07-25  Neil Booth  <neil@daikokuya.co.uk>
17853
17854	* gcse.c (obstack_chunk_alloc): Remove.
17855	(gcse_alloc): Fix to count allocated bytes.
17856	* collect2.c (SYMBOL__MAIN): Remove.
17857
178582002-07-25  Neil Booth  <neil@daikokuya.co.uk>
17859
17860	* gcc.c (TARGET_EXECUTABLE_SUFFIX): Only used if
17861	HAVE_TARGET_EXECUTABLE_SUFFIX.
17862
178632002-07-25  J"orn Rennecke <joern.rennecke@superh.com>
17864
17865	* rtl.h (mem_attrs): Spell out more clearly the roles of ALIGN,
17866	SIZE, EXPR and OFFSET.
17867
178682002-07-25  Richard Henderson  <rth@redhat.com>
17869
17870	* emit-rtl.c (set_mem_attributes): Fix size and alignment thinkos
17871	in ARRAY_REF of DECL_P case.
17872
178732002-07-25  Richard Sandiford  <rsandifo@redhat.com>
17874
17875	* doc/invoke.texi: Document -mabi=meabi, and expand on the EABI
17876	description.  Document -mips32, -mips64, and the associated -march
17877	values.  Describe the "mipsN" arguments to -march.  Say that the
17878	-mipsN options are equivalent to -march.  Reword the description
17879	of default type sizes.
17880	* toplev.h (target_flags_explicit): Declare.
17881	* toplev.c (target_flags_explicit): New var.
17882	(set_target_switch): Update target_flags_explicit.
17883	* config/mips/abi64.h (SUBTARGET_TARGET_OPTIONS): Undefine.
17884	* config/mips/elf64.h (MIPS_ISA_DEFAULT): Undefine.
17885	* config/mips/iris6.h (SUBTARGET_ASM_SPEC): -mabi=64 implies -mips3.
17886	* config/mips/isa3264.h (MIPS_ENABLE_EMBEDDED_O32): Undefine.
17887	* config/mips/mips.h (mips_cpu_info): New struct.
17888	(mips_cpu_string, mips_explicit_type_size_string): Remove.
17889	(mips_cpu_info_table, mips_arch_info, mips_tune_info): Declare.
17890	(MIPS_CPP_SET_PROCESSOR): New macro.
17891	(TARGET_CPP_BUILTINS): Declare a macro for each supported processor.
17892	Define _MIPS_ARCH and _MIPS_TUNE.
17893	(MIPS_ISA_DEFAULT): Don't provide a default value.  Instead...
17894	(MIPS_CPU_STRING_DEFAULT): Set to "from-abi" if neither it nor
17895	MIPS_ISA_DEFAULT were already defined.
17896	(MULTILIB_DEFAULTS): Add MULTILIB_ABI_DEFAULT.
17897	(TARGET_OPTIONS): Remove -mcpu and -mexplicit-type-size.
17898	(ABI_NEEDS_32BIT_REGS, ABI_NEEDS_64BIT_REGS): New.
17899	(GAS_ASM_SPEC): Remove -march, -mcpu, -mgp* and -mabi rules.
17900	(ABI_GAS_ASM_SPEC): Remove.
17901	(MULTILIB_ABI_DEFAULT, ASM_ABI_DEFAULT_SPEC): New macros.
17902	(ASM_SPEC): Add -mgp32, -mgp64, -march, -mabi=eabi and -mabi=o64.
17903	Invoke %(asm_abi_default_spec) if no ABI was specified.
17904	(CC1_SPEC): Remove ISA -> register-size rules.
17905	(EXTRA_SPECS): Remove abi_gas_asm_spec.  Add asm_abi_default_spec.
17906	* config/mips/mips.c (mips_arch_info, mips_tune_info): New vars.
17907	(mips_cpu_string, mips_explicit_type_size_string): Remove.
17908	(mips_cpu_info_table): New array.
17909	(mips_set_architecture, mips_set_tune): New fns.
17910	(override_options): Rework to make -mipsN equivalent to -march.
17911	Detect more erroneous cases, including those removed from CC1_SPEC.
17912	Don't change the ABI based on architecture, or vice versa.
17913	Unify logic with GAS.
17914	(mips_asm_file_start): Get architecture name from mips_arch_info.
17915	(mips_strict_matching_cpu_name_p, mips_matching_cpu_name_p): New fns.
17916	(mips_parse_cpu): Take the name of the option as argument.  Handle
17917	'from-abi'.  Raise an error if the option is wrong.
17918	(mips_cpu_info_from_isa): New fn.
17919
179202002-07-25  Richard Sandiford  <rsandifo@redhat.com>
17921
17922	* config/mips/mips.md (tablejump_mips161): Use gen_rtx_LABEL_REF.
17923	(tablejump_mips162): Likewise.
17924
179252002-07-25  J"orn Rennecke <joern.rennecke@superh.com>
17926
17927	* simpify-rtx.c (simplify_subreg): Don't pass MODE_CC mode to
17928	int_mode_for_mode.
17929
179302002-07-25  Gabriel Dos Reis  <gdr@nerim.net>
17931
17932	* c-common.c (c_sizeof_or_alignof_type): Take a third argument for
17933	complaining.
17934	* c-common.h (c_sizeof): Adjust definition.
17935	(c_alignof): Likewise.
17936	* c-tree.h (c_sizeof_nowarn): Now macro.
17937	* c-typeck.c (c_sizeof_nowarn): Remove definition.
17938
179392002-07-25  Neil Booth  <neil@daikokuya.co.uk>
17940
17941	* c-decl.c (c_decode_option): No need to handle switches
17942	cpplib handles.
17943
179442002-07-24  Zack Weinberg  <zack@codesourcery.com>
17945
17946	* defaults.h (ASM_OUTPUT_TYPE_DIRECTIVE, ASM_OUTPUT_SIZE_DIRECTIVE,
17947	ASM_OUTPUT_MEASURED_SIZE): New default definitions of new macros.
17948	* doc/tm.texi: Document them.  Also document SIZE_ASM_OP,
17949	TYPE_ASM_OP, and TYPE_OPERAND_FMT.
17950
17951	* config/elfos.h, config/netbsd-aout.h, config/openbsd.h,
17952	config/alpha/elf.h, config/arm/elf.h, config/avr/avr.h,
17953	config/cris/aout.h, config/i386/freebsd-aout.h,
17954	config/i386/sco5.h, config/ia64/ia64.c, config/ip2k/ip2k.h,
17955	config/m68k/m68kelf.h, config/m68k/m68kv4.h, config/m88k/m88k.h,
17956	config/mcore/mcore-elf.h, config/mips/elf.h, config/mips/elf64.h,
17957	config/mips/iris6.h, config/mips/linux.h, config/pa/pa-linux.h,
17958	config/pa/pa64-hpux.h, config/rs6000/sysv4.h,
17959	config/xtensa/elf.h, config/xtensa/linux.h:
17960	Use the new macros.
17961	Where possible, remove redundant definitions of SIZE_ASM_OP,
17962	TYPE_ASM_OP, and TYPE_OPERAND_FMT.
17963
179642002-07-24  Aldy Hernandez  <aldyh@redhat.com>
17965
17966	* config/rs6000/eabi.h: Define TARGET_SPE_ABI, TARGET_SPE,
17967	TARGET_ISEL, and TARGET_FPRS.
17968
17969	* doc/invoke.texi (RS/6000 and PowerPC Options): Document
17970	-mabi=spe, -mabi=no-spe, and -misel=.
17971
17972	* config/rs6000/rs6000-protos.h: Add output_isel.
17973	Move vrsave_operation prototype here.
17974
17975	* config/rs6000/rs6000.md (sminsi3): Allow pattern for TARGET_ISEL.
17976	(smaxsi3): Same.
17977	(uminsi3): Same.
17978	(umaxsi3): Same.
17979	(abssi2_nopower): Disallow when TARGET_ISEL.
17980	(*ne0): Same.
17981	(negsf2): Change to expand and rename old pattern to *negsf2.
17982	(abssf2): Change to expand and rename old pattern to *abssf2.
17983
17984	New expanders: fix_truncsfsi2, floatunssisf2, floatsisf2,
17985	fixunssfsi2.
17986
17987	Change patterns that check for TARGET_HARD_FLOAT or
17988	TARGET_SOFT_FLOAT to also check TARGET_FPRS.
17989
17990	* config/rs6000/rs6000.c: New globals: rs6000_spe_abi,
17991	rs6000_isel, rs6000_fprs, rs6000_isel_string.
17992	(rs6000_override_options): Add 8540 case to
17993	processor_target_table.
17994	Set rs6000_isel for the 8540.
17995	Call rs6000_parse_isel_option.
17996	(enable_mask_for_builtins): New.
17997	(rs6000_parse_isel_option): New.
17998	(rs6000_parse_abi_options): Add spe and no-spe.
17999	(easy_fp_constant): Treat !TARGET_FPRS as soft-float.
18000	(rs6000_legitimize_address): Check for TARGET_FPRS when checking
18001	for TARGET_HARD_FLOAT.
18002	Add case for SPE_VECTOR_MODE.
18003	(rs6000_legitimize_reload_address): Handle SPE vector modes.
18004	(rs6000_legitimate_address): Disallow PRE_INC/PRE_DEC for SPE
18005	vector modes.
18006	Check for TARGET_FPRS when checking for TARGET_HARD_FLOAT.
18007	(rs6000_emit_move): Check for TARGET_FPRS.
18008	Add cases for SPE vector modes.
18009	(function_arg_boundary): Return 64 for SPE vector modes.
18010	(function_arg_advance): Check for TARGET_FPRS and
18011	Handle SPE vectors.
18012	(function_arg): Same.
18013	(setup_incoming_varargs): Check for TARGET_FPRS.
18014	(rs6000_va_arg): Same.
18015	(struct builtin_description): Un-constify mask field.  Move up in
18016	file.
18017	(bdesc_2arg): Un-constify and add SPE builtins.
18018	(bdesc_1arg): Same.
18019	(bdesc_spe_predicates): New.
18020	(bdesc_spe_evsel): New.
18021	(rs6000_expand_unop_builtin): Add SPE 5-bit literal builtins.
18022	(rs6000_expand_binop_builtin): Same.
18023	(bdesc_2arg_spe): New.
18024	(spe_expand_builtin): New.
18025	(spe_expand_predicate_builtin): New.
18026	(spe_expand_evsel_builtin): New.
18027	(rs6000_expand_builtin): Call spe_expand_builtin for SPE.
18028	(rs6000_init_builtins): Initialize SPE builtins.  Call
18029	rs6000_common_init_builtins.
18030	(altivec_init_builtins): Move all non-altivec builtin code to...
18031	(rs6000_common_init_builtins): ...here.  New function.
18032	(branch_positive_comparison_operator): Allow NE code for SPE.
18033	(ccr_bit): Return correct ccr bit for SPE fp.
18034	(print_operand): Emit crnor in 'D' case for SPE.
18035	New case 't'.
18036	Add SPE code for 'y' case.
18037	(rs6000_generate_compare): Generate rtl for SPE fp.
18038	(output_cbranch): Handle SPE hard floats.
18039	(rs6000_emit_cmove): Handle isel.
18040	(rs6000_emit_int_cmove): New.
18041	(output_isel): New.
18042	(rs6000_stack_info): Adjust stack frame so GPRs are saved in
18043	64-bits for SPE.
18044	(debug_stack_info): Add SPE info.
18045	(gen_frame_mem_offset): New.
18046	(rs6000_emit_prologue): Save GPRs in 64-bits for SPE abi.
18047	Change mode of frame pointer, when saving it, to Pmode.
18048	(rs6000_emit_epilogue): Restore GPRs in 64-bits for SPE abi.
18049	Misc cleanups and use gen_frame_mem_offset when appropriate.
18050
18051	* config/rs6000/rs6000.h (processor_type): Add PROCESSOR_PPC8540.
18052	(TARGET_SPE_ABI): New.
18053	(TARGET_SPE): New.
18054	(TARGET_ISEL): New.
18055	(TARGET_FPRS): New.
18056	(FIXED_SCRATCH): New.
18057	(RTX_COSTS): Add PROCESSOR_PPC8540.
18058	(ASM_CPU_SPEC): Add case for 8540.
18059	(TARGET_OPTIONS): Add isel= case.
18060	(rs6000_spe_abi): New.
18061	(rs6000_isel): New.
18062	(rs6000_fprs): New.
18063	(rs6000_isel_string): New.
18064	(UNITS_PER_SPE_WORD): New.
18065	(LOCAL_ALIGNMENT): Adjust for SPE.
18066	(HARD_REGNO_MODE_OK): Same.
18067	(DATA_ALIGNMENT): Same.
18068	(MEMBER_TYPE_FORCES_BLK): New.
18069	(FIRST_PSEUDO_REGISTER): Set to 113.
18070	(FIXED_REGISTERS): Add SPE registers.
18071	(reg_class): Same.
18072	(REG_CLASS_NAMES): Same.
18073	(REG_CLASS_CONTENTS): Same.
18074	(REGNO_REG_CLASS): Same.
18075	(REGISTER_NAMES): Same.
18076	(DEBUG_REGISTER_NAMES): Same.
18077	(ADDITIONAL_REGISTER_NAMES): Same.
18078	(CALL_USED_REGISTERS): Same.
18079	(CALL_REALLY_USED_REGISTERS): Same.
18080	(SPE_ACC_REGNO): New.
18081	(SPEFSCR_REGNO): New.
18082	(SPE_SIMD_REGNO_P): New.
18083	(HARD_REGNO_NREGS): Adjust for SPE.
18084	(VECTOR_MODE_SUPPORTED_P): Same.
18085	(REGNO_REG_CLASS): Same.
18086	(FUNCTION_VALUE): Same.
18087	(LIBCALL_VALUE): Same.
18088	(LEGITIMATE_OFFSET_ADDRESS_P): Same.
18089	(SPE_VECTOR_MODE): New.
18090	(CONDITIONAL_REGISTER_USAGE): Disable FPRs when target does FP on
18091	the GPRs.  Set FIXED_SCRATCH fixed in SPE case.
18092	(rs6000_stack): Add spe_gp_size, spe_padding_size,
18093	spe_gp_save_offset.
18094	(USE_FP_FOR_ARG_P): Check for TARGET_FPRS.
18095	(LEGITIMATE_LO_SUM_ADDRESS_P): Same.
18096	(SPE_CONST_OFFSET_OK): New.
18097	(rs6000_builtins): Add SPE builtins.
18098
18099	* testsuite/gcc.dg/ppc-spe.c: New.
18100
18101	* config/rs6000/eabispe.h: New.
18102
18103	* config/rs6000/spe.h: New.
18104
18105	* config/rs600/spe.md: New.
18106
18107	* config/rs6000/rs6000-c.c (rs6000_cpu_cpp_builtins): Define
18108	__SIMD__ for TARGET_SPE.
18109
18110	* config.gcc: Add powerpc-*-eabispe* case.
18111	Add spe.h to user headers for powerpc.
18112
181132002-07-24  Chris Demetriou  <cgd@broadcom.com>
18114
18115	* config/mips/elf.h (STARTFILE_SPEC): Undo previous change.
18116	* config/mips/elf64.h (STARTFILE_SPEC): Likewise.
18117	* config/mips/isa3264.h (STARTFILE_SPEC): Likewise.
18118
181192002-07-24  Richard Henderson  <rth@redhat.com>
18120
18121	* expr.c (expand_expr) [TRY_FINALLY_EXPR]: Use GOTO_SUBROUTINE_EXPR
18122	form when not optimizing.
18123
181242002-07-24  David Mosberger  <davidm@hpl.hp.com>
18125
18126	* config/ia64/ia64.c (gen_thread_pointer): Fix typo in marking
18127	thread_pointer_rtx as unchanging.
18128
181292002-07-24  Michael Matz  <matz@suse.de>
18130
18131	* ra-colorize.c (INV_REG_ALLOC_ORDER): New macro.
18132	(free_reg): Use it.
18133
181342002-07-24  Richard Earnshaw  <rearnsha@arm.com>
18135
18136	* arm.md (arm_buneq, arm_bltgt): put '\' before ';' in output
18137	pattern.
18138	(arm_buneq_reversed, arm_bltgt_reversed): Likewise.
18139	(movsicc, movsfcc, movdfcc): FAIL if UNEQ or LTGT.
18140
181412002-07-24  Chris Demetriou  <cgd@broadcom.com>
18142
18143	* config/mips/elf.h (STARTFILE_SPEC): Never include crt0.o.
18144	* config/mips/elf64.h (STARTFILE_SPEC): Likewise.
18145	* config/mips/isa3264.h (STARTFILE_SPEC): Do not redefine.
18146
181472002-07-24  Jan Hubicka  <jh@suse.cz>
18148
18149	* toplev.c (rest_of_compilation): Dump loops before clobbering
18150	the structure.
18151
181522002-07-24  Jan Hubicka  <jh@suse.cz>
18153
18154	* rtlanal.c (keep_with_call_p): Avoid overflow in fixed_regs.
18155
181562002-07-24  Frank van der Linden  <fvdl@wasabisystems.com>
18157
18158	PR optimization/7291
18159	* config/i386/i386.c (ix86_expand_clrstr): Fix bzero alignment
18160	problem on x86_64.
18161
181622002-07-24  Gabriel Dos Reis  <gdr@nerim.net>
18163
18164	* pretty-print.h: Add macros from cp/error.c
18165
181662002-07-24  Alan Modra  <amodra@bigpond.net.au>
18167
18168	* config/rs6000/rs6000-protos.h (mask_operand_wrap): Declare.
18169	(mask64_2_operand): Declare.
18170	(build_mask64_2_operands): Declare.
18171	(and64_2_operand): Declare.
18172	(extract_MB): Declare.
18173	(extract_ME): Declare.
18174	* config/rs6000/rs6000.c (mask64_operand): Allow all ones.  Remove
18175	CONST_DOUBLE code.
18176	(mask_operand_wrap): New insn predicate.
18177	(mask64_2_operand): Likewise.
18178	(and64_2_operand): Likewise.
18179	(build_mask64_2_operands): New function.
18180	(extract_MB): New function.
18181	(extract_ME): New function.
18182	(print_operand <case m,M>): Use extract_MB and extract_ME.
18183	(print_operand <case S>): Allow all ones.  Remove CONST_DOUBLE support.
18184	* config/rs6000/rs6000.h (EXTRA_CONSTRAINT): Add 't'.
18185	(PREDICATE_CODES): Add and64_2_operand, mask_operand_wrap and
18186	mask64_2_operand.  Remove CONST_DOUBLE from mask64_operand.
18187	* config/rs6000/rs6000.md (andsi3_internal3): New
18188	(andsi3_internal3+1): Enable split for powerpc64.
18189	(andsi3_internal3+2): New split.
18190	(andsi3_internal4): Renamed old andsi3_internal3.
18191	(andsi3_internal5): New.
18192	(andsi3_internal5+1): Enable split for powerpc64.
18193	(andsi3_internal5+2): New split.
18194	(andsi3_internal6, andsi3_internal7, andsi3_internal8): New.
18195	(anddi3): Handle 't' constraint.
18196	(anddi3+1): New split.
18197	(anddi3_internal2): Handle 't' constraint.
18198	(anddi3_internal2+1): New split.
18199	(anddi3_internal3): Handle 't' constraint.
18200	(anddi3_internal3+1): New split.
18201
182022002-07-24  Alan Modra  <amodra@bigpond.net.au>
18203
18204	* config/rs6000/rs6000.md: Remove scratch reg on insns using
18205	addze and similar (plus (comparison r1 r2) r3) insns.  Add
18206	missing scratch reg in one case.  Formatting fixes.
18207
182082002-07-24  Neil Booth  <neil@daikokuya.co.uk>
18209
18210	* cppexp.c (parse_defined): Mark macro used.
18211	* cpphash.h (struct cpp_macro): New member "used".
18212	(_cpp_mark_macro_used, _cpp_warn_if_unused_macro): New.
18213	(struct cpp_reader): New member.
18214	* cppinit.c (cpp_finish_options): Set first_unused_line.
18215	(cpp_finish): Warn of unused macros if requested.
18216	(OPT_TABLE): New switches.
18217	(cpp_handle_option): Handle them.
18218	* cpplib.c (do_undef): Warn if macro unused.
18219	(do_ifdef, do_ifndef): Mark macro used.
18220	* cpplib.h (struct cpp_options): New member.
18221	* cppmacro.c (_cpp_warn_if_unused_macro): New.
18222	(enter_macro_context): Mark macro used.
18223	(_cpp_create_definition): Mark macro unused; warn if unused
18224	when redefined.
18225	* cpptrad.c (scan_out_logcial_line, push_replacement_text):
18226	Mark macros used.
18227	* doc/cppopts.texi: Update.
18228
182292002-07-23  Neil Booth  <neil@daikokuya.co.uk>
18230
18231	* dwarf2out.c (SECTION_ASM_OP,
18232	ASM_OUTPUT_DEFINE_LABEL_DIFFERENCE_SYMBOL): Remove.
18233	* system.h (SECTION_ASM_OP): Poison.
18234	* tree.c (FILE_FUNCTION_PREFIX_LEN): Remove.
18235	* config/alpha/alpha-interix.h, config/mips/linux.h
18236	(ASM_OUTPUT_DEFINE_LABEL_DIFFERENCE_SYMBOL): Remove.
18237	* config/mmix/mmix-protos.h, config/mmix/mmix.c
18238	(mmix_asm_output_define_label_difference_symbol): Remove.
18239	* config/mmix/mmix.h
18240	(ASM_OUTPUT_DEFINE_LABEL_DIFFERENCE_SYMBOL): Remove.
18241	* doc/tm.texi: Remove documentation.
18242
182432002-07-23  J"orn Rennecke <joern.rennecke@superh.com>
18244
18245	* recog.c (asm_operand_ok): Allow float CONST_VECTORs for 'F'.
18246	(constrain_operands): Likewise.
18247	* regclass.c (record_reg_classes): Likewise.
18248	* reload.c (find_reloads): Likewise.
18249	* doc/md.texi: Likewise.
18250
18251	* reload.c (find_reloads_toplev): Use simplify_gen_subreg.
18252	* simplify-rtx.c (simplify_subreg): When converting to a non-int
18253	mode, try to convert to an integer mode of matching size first.
18254
18255	* simplify-rtx.x (simplify_subreg): When constructing a CONST_VECTOR
18256	from individual subregs, check that each subreg has been generated
18257	sucessfully.
18258
182592002-07-23  Neil Booth  <neil@daikokuya.co.uk>
18260
18261	* genautomata.c (VLA_HWINT_SHORTEN, VLA_HWINT_LAST): Remove.
18262	* df.c (HANDLE_SUBREG, FOR_EACH_BB_IN_BITMAP_REV,
18263	FOR_EACH_BB_IN_SBITMAP): Remove.
18264	* gcse.c (NEVER_SET, FOLLOW_BACK_EDGES): Remove.
18265	* haifa-sched.c (DONE_PRIORITY, MAX_PRIORITY, TAIL_PRIORITY,
18266	LAUNCH_PRIORITY, DONE_PRIORITY_P, LOW_PRIORITY_P): Remove.
18267	* loop.c (PREFETCH_BLOACK_IN_LOOP_MIN,
18268	PREFETCH_LIMIT_TO_SIMULTANEOUS): Remove.
18269	* regrename.c (REGNO_MODE_OK_FOR_BASE_P): Remove.
18270
182712002-07-23  Gabriel Dos Reis  <gdr@nerim.net>
18272
18273	* pretty-print.h: New file.
18274
182752002-07-23	Paul Koning	<pkoning@equallogic.com>
18276
18277	* real.c (REAL_WORDS_BIG_ENDIAN): Make 1 for DEC.
18278	(LARGEST_EXPONENT_IS_NORMAL): Ditto.
18279	(VAX_HALFWORD_ORDER): Define (1 for DEC VAX, 0 otherwise).
18280	(TARGET_G_FLOAT): Default to 0 if not defined.
18281	(ieeetoe): New, common routine to convert target format floats
18282	to internal form.
18283	(e24toe, e53toe): Change to use ieeetoe, distinguish DEC
18284	vs. others.
18285	(e113toe): Change to use ieeetoe.
18286
182872002-07-23  Roman Lechtchinsky  <rl@cs.tu-berlin.de>
18288
18289	* real.c (REAL_WORDS_BIG_ENDIAN): Make sure it is 0 for DEC and 1 for
18290	IBM.
18291	(e53toe): Assume IEEE if non of DEC, IBM and C4X is defined.
18292	(e64toe): Remove special cases for DEC and IBM. Remove support for
18293	ARM_EXTENDED_IEEE_FORMAT.
18294	(e24toe): Remove special cases for DEC.
18295	(significand_size): Simplify. Indent.
18296	(ieee_format, ieee_24, ieee_53, ieee_64, ieee_113): New.
18297	(etoieee, toieee): New.
18298	(etoe113, toe113, etoe64, toe64, etoe53, toe53, etoe24, toe24): Use
18299	etoieee and toieee for IEEE arithmetic.
18300
183012002-07-23  Gabriel Dos Reis  <gdr@nerim.net>
18302
18303	* doc/extend.texi: Say ISO C90, not ISO C89.
18304	* doc/invoke.texi: Likewise.
18305	* doc/standards.texi: Likewise.
18306
183072002-07-23  Steve Ellcey  <sje@cup.hp.com>
18308
18309	* gcc/explow.c (convert_memory_address): Fix conversion of CONSTs.
18310	Fix permutation of conversion and plus/mult.
18311	* gcc/builtins.c (expand_builtin_memcpy) Ensure return pointer is
18312	ptr_mode and not Pmode when POINTERS_EXTEND_UNSIGNED is defined.
18313	(expand_builtin_strncpy) Ditto.
18314	(expand_builtin_memset) Ditto.
18315
183162002-07-23  Gabriel Dos Reis  <gdr@nerim.net>
18317
18318	Fix PR/7363:
18319	* c-common.c (c_sizeof_or_alignof_type): New function.
18320	(c_alignof): Remove definition.
18321	* c-common.h (c_sizeof, c_alignof): Define as macros.
18322	(c_sizeof_or_alignof_type): Declare.
18323	(my_friendly_assert): Moved from cp/cp-tree.h
18324	* c-typeck.c (c_sizeof): Remove definition.
18325
183262002-07-23  Jan Hubicka  <jh@suse.cz>
18327
18328	* gcse.c (try_replace_reg): Use num_changes_pending.
18329	* recog.c (num_changes_pending): New function.
18330	(validate_replace_src): Use validate_repalce_src_group.
18331	(validate_replace_src_group): New.
18332	* recog.h (validate_repalce_src_group): New.
18333	(num_changes_pending): Likewise.
18334
183352002-07-23  J"orn Rennecke <joern.rennecke@superh.com>
18336
18337	* calls.c (emit_library_call_value_1): If
18338	FUNCTION_ARG_PASS_BY_REFERENCE is true, pretend this is neither
18339	libcall, const call nor pure call.
18340
183412002-07-23  Neil Booth  <neil@daikokuya.co.uk>
18342
18343	* config/m88k/m88k.h (SECTION_ASM_OP): Remove.
18344
183452002-07-23  Neil Booth  <neil@daikokuya.co.uk>
18346
18347	* vmsdbgout.c (SECTION_ASM_OP): Remove.
18348
183492002-07-23  Neil Booth  <neil@daikokuya.co.uk>
18350
18351	* config/i386/i386.c (AT_BP): Remove.
18352
183532002-07-23  Neil Booth  <neil@daikokuya.co.uk>
18354
18355	* defaults.h (obstack_chunk_alloc, obstack_chunk_free):
18356	Default definition.
18357	* gcse.c: Don't define obstack_chunk_free.
18358	* collect2.c, conflict.c, df.c, diagnostic.c, fix-header.c,
18359	flow.c, gcc.c, genattrtab.c, genautomata.c, genflags.c, gensupport.c,
18360	integrate.c, loop.c, ra.c, read-rtl.c, regrename.c, reload1.c,
18361	reorg.c, tlink.c, tree.c, config/arm/arm.c, objc/objc-act.c:
18362	Don't define obstack macros.
18363
183642002-07-22  Stephane Carrez  <stcarrez@nerim.fr>
18365
18366	PR target/6744
18367	* config/m68hc11/m68hc11.c (m68hc11_z_replacement): Also replace
18368	ASM_OPERANDS instructions.
18369
183702002-07-22  Stephane Carrez  <stcarrez@nerim.fr>
18371
18372	PR target/7361
18373	* config/m68hc11/m68hc11.c (go_if_legitimate_address_internal): Accept
18374	constant addresses only on 68HC12.
18375
183762002-07-22  Neil Booth  <neil@daikokuya.co.uk>
18377
18378	* cppfiles.c (stack_include_file): Correct test of whether
18379	a dependency should be output.
18380
183812002-07-22  David Edelsohn  <edelsohn@gnu.org>
18382
18383	* collect2.c (is_ctor_dtor): Add other possible JOINER values.
18384
183852002-07-22  Richard Earnshaw  <rearnsha@arm.com>
18386
18387	* arm.md (movqi): If optimizing and we can create pseudos, use
18388	a ZERO_EXTEND to load from memory, then copy the result into the
18389	target.
18390	(movhi): Likewise, but only for ARMv4.
18391
183922002-07-22  Neil Booth  <neil@daikokuya.co.uk>
18393
18394	* ssa-ccp.c (PHI_PARMS): Remove.
18395
183962002-07-22  Richard Sandiford  <rsandifo@redhat.com>
18397
18398	* config/mips/mips.h (CLASS_CANNOT_CHANGE_MODE): Include FP_REGS
18399	on big-endian targets.
18400
184012002-07-22  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
18402
18403	* hwint.h (HOST_WIDE_INT_PRINT_DEC_SPACE,
18404	HOST_WIDE_INT_PRINT_UNSIGNED_SPACE,
18405	HOST_WIDEST_INT_PRINT_DEC_SPACE, HOST_WIDEST_INT_PRINT_DEC_SPACE):
18406	New formatting macros.
18407
18408	* ra-debug.c (dump_static_insn_cost): Avoid string concatenation.
18409
184102002-07-22  J"orn Rennecke <joern.rennecke@superh.com>
18411
18412	* rtlanal.c (subreg_regno_offset): Return correct offset for
18413	big endian paradoxical subregs.
18414
18415	* optabs.c (expand_vector_unop): Don't expand using sub_optab
18416	if we got the wrong mode.
18417
18418	* hwint.c (define HOST_WIDE_INT_PRINT_DEC_C): New define.
18419	* genrecog.c (write_switch, write_cond): Use it.
18420	* genemit.c (gen_exp): Likewise.
18421
184222002-07-22  Jakub Jelinek  <jakub@redhat.com>
18423
18424	* c-decl.c (build_compound_literal): Set decl TREE_READONLY from TYPE.
18425
184262002-07-22  Jakub Jelinek  <jakub@redhat.com>
18427
18428	* c-decl.c (build_compound_literal): Defer compound literal decls
18429	until until file end to emit them only if they are actually used.
18430
184312002-07-21  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
18432
18433	* ra-build.c (check_conflict_numbers): Hide unused function.
18434	(livethrough_conflicts_bb): Avoid automatic aggregate
18435	initialization.
18436	(parts_to_webs_1): Avoid `U' integer constant modifier.
18437	(conflicts_between_webs): Wrap a variable in the macro controlling
18438	its usage.
18439	* ra-debug.c (ra_debug_msg): Use VA_OPEN/VA_CLOSE.
18440	(dump_igraph, dump_graph_cost): Avoid string concatenation
18441	(dump_static_insn_cost): Avoid automatic aggregate
18442	initialization.
18443	* ra-rewrite.c (insert_stores): Avoid automatic aggregate
18444	initialization.
18445	(dump_cost): Avoid string concatenation
18446
184472002-07-21  Richard Henderson  <rth@redhat.com>
18448
18449	* expr.c (expand_expr) [TRY_FINALLY_EXPR]: Don't use
18450	GOTO_SUBROUTINE_EXPR when finally_block can be re-expanded.
18451
184522002-07-21  Richard Henderson  <rth@redhat.com>
18453
18454	* unroll.c (find_splittable_givs): Do not split DEST_ADDR givs
18455	that are not unrolled completely.
18456
184572002-07-21  Richard Henderson  <rth@redhat.com>
18458
18459	* loop.h (LOOP_AUTO_UNROLL): Rename from LOOP_FIRST_PASS.
18460	* loop.c (strength_reduce): Update.
18461	* toplev.c (rest_of_compilation): Do unrolling in the first
18462	loop pass, not the second.
18463
184642002-07-21  Richard Henderson  <rth@redhat.com>
18465
18466	* emit-rtl.c (set_mem_attributes): Preserve indirection of PARM_DECL
18467	when flag_argument_noalias == 2.
18468	* alias.c (nonoverlapping_memrefs_p): Handle that.
18469	* print-rtl.c (print_mem_expr): Likewise.
18470
184712002-07-21  Hartmut Schirmer  <hartmut.schirmer@arcor.de>
18472
18473	* libgcc2.c (__divdi3, __moddi3): Use unary minus operator
18474	instead of __negdi2 directly.
18475
184762002-07-21  Neil Booth  <neil@daikokuya.co.uk>
18477
18478	* gengenrtl.c (gencode): Don't define obstack_alloc_rtx.
18479	* function.c (SYMBOL__MAIN): Remove definition.
18480	* global.c (SET_CONFLICT, REGBITP, ALLOCNO_LIVE_P): Remove.
18481	* predict.c (PROB_NEVER, PROB_LIKELY, PROB_UNLIKELY): Remove.
18482	* profile.c (GCOV_INDEX_TO_BB): Remove.
18483	* sched-rgn.c (ABS_VALUE, MIN_DIFF_PRIORITY, MIN_PROB_DIFF): Remove.
18484	* simplify-rtx.c (FIXED_BASE_PLUS_P): Remove.
18485
184862002-07-21  Neil Booth  <neil@daikokuya.co.uk>
18487
18488	* c-lex.c (GET_ENVIRONMENT): Remove.
18489	* collect2.c (GET_ENV_PATH_LIST): Remove.
18490	(prefix_from_env): Use GET_ENVIRONMENT.
18491	* cppinit.c (GET_ENV_PATH_LIST): Remove.
18492	(init_standard_includes): Use GET_ENVIRONMENT.
18493	* defaults.h (GET_ENVIRONMENT): Define here if not already.
18494	* gcc.c (GET_ENV_PATH_LIST): Remove.
18495	(make_relative_prefix, process_command): Update.
18496	* protoize.c (GET_ENV_PATH_LIST): Remove.
18497	(do_processing): Update.
18498
184992002-07-21  Gabriel Dos Reis  <gdr@nerim.net>
18500
18501	* c-decl.c (build_array_declarator): Say 'ISO C90', not 'ISO C89'.
18502	(grokdeclarator): Likewise.
18503	* c-format.c (C_STD_NAME): Likewise.
18504	* c-lex.c (interpret_integer): Likewise.
18505	* c-typeck.c (build_array_ref): Likewise.
18506	* cpplex.c (_cpp_lex_direct): Likewise.
18507	* toplev.c (documented_lang_options): Likewise.
18508
185092002-07-21  Neil Booth  <neil@daikokuya.co.uk>
18510
18511	* c-format.c (T99_I, T99_UI): Remove.
18512
185132002-07-21  Neil Booth  <neil@daikokuya.co.uk>
18514
18515	* c-typeck.c (SAVE_SPELLING_DEPTH): Remove.
18516
185172002-07-21  Jan Hubicka  <jh@suse.cz>
18518
18519	* gcse.c (do_local_cprop): Do not extend lifetimes of registers set by
18520	do_local_cprop.
18521
185222002-07-21  Andreas Jaeger  <aj@suse.de>
18523
18524	* reload1.c (fixup_abnormal_edges): Remove unused variable.
18525
185262002-07-21  Bernd Schmidt  <bernds@redhat.com>
18527
18528	Improvements for the ifcvt pass from Michael Meissner, with patches
18529	by Richard Sandiford <rsandifo@redhat.com>
18530	* basic-block.h (struct ce_if_block, ce_if_block_t): New types.
18531	* ifcvt.c (cond_exec_changed_p): New static variable.
18532	(last_active_insn): New function, renamed from last_active_insn_p
18533	and changed to return the last active insn in a basic block. All
18534	callers updated.
18535	(block_fallthru): New function.
18536	(cond_exec_process_insns): New argument CE_INFO.  Pass it to
18537	IFCVT_MODIFY_INSN.  All callers updated.
18538	Return false if START or END are NULL.
18539	Handle case where we're processing an insn that is already
18540	conditional.
18541
18542	(noce_process_if_block): CE_INFO argument rather than
18543	multiple args containing the involved basic blocks.  All callers
18544	changed.
18545	(process_if_block, merge_if_block, find_if_block,
18546	cond_exec_process_if_block): Likewise.
18547
18548	(cond_exec_process_if_block): New arg DO_MULTIPLE_P.  All callers
18549	changed.
18550	Use new function last_active_insn to simplify some code.
18551	New code to handle multiple tests.
18552	Call IFCVT_MODIFY_CANCEL in all failure cases, otherwise set
18553	cond_exec_changed_p to TRUE.
18554
18555	(process_if_block): New code to handle multiple tests.
18556	(merge_if_block): Likewise.
18557	(find_if_header): New arg PASS.  Changed to return the currently
18558	processed basic block or NULL instead of true/false. All callers
18559	changed.
18560	Call IFCVT_INIT_EXTRA_FIELDS.
18561	(block_jumps_and_fallthru_p): New function.
18562	(find_if_block): Discover opportunities to convert multiple tests.
18563	Add additional debugging output.
18564	Update the ce_info structure before returning.
18565
18566	(if_convert): Run multiple passes of if-conversion.
18567	* doc/tm.texi (IFCVT_MODIFY_TESTS, IFCVT_MODIFY_INSN,
18568	IFCVT_MODIFY_FINAL, IFCVT_MODIFY_CANCEL, IFCVT_MODIFY_MULTIPLE_TESTS,
18569	IFCVT_INIT_EXTRA_FIELDS, IFCVT_EXTRA_FIELDS): Update documentation for
18570	these macros.
18571
185722002-07-21  Jan Hubicka  <jh@suse.cz>
18573
18574	* gcse.c: Include cselib.h
18575	(constptop_register): Break out from ...
18576	(cprop_insn): ... here; kill basic_block argument.
18577	(do_local_cprop, local_cprop_pass): New functions.
18578	(one_cprop_pass): Call local_cprop_pass.
18579
185802002-07-20  Roger Sayle  <roger@eyesopen.com>
18581
18582	* simplify-rtx.c (simplify_relational_operation): Optimize
18583	abs(x) < 0.0 (and abs(x) >= 0.0 when using -ffast-math).
18584
185852002-07-20  Michae Matz  <matz@suse.de>
18586
18587	* ra-build.c: (remember_web_was_spilled): Use GENERAL_REGS.
18588
185892002-07-20  Neil Booth  <neil@daikokuya.co.uk>
18590
18591	* cppexp.c (struct op): Add token pointer.
18592	(check_promotion, CHECK_PROMOTION): New.
18593	(optab): Update.
18594	(_cpp_parse_expr): Update, use token pointer of struct op.
18595	(reduce): Warn about change of sign owing to promotion.
18596	* cppinit.c (cpp_handle_option): New warning if -Wall.
18597	* cpplib.h (struct cpp_options): New member.
18598
185992002-07-19  David Edelsohn  <edelsohn@gnu.org>
18600
18601	* config/rs6000/rs6000.md: Remove ppc630 fpcompare from single
18602	fpu list.  Separate Power4 compare and delayed_compare.  Correct
18603	Power4 fpcompare.
18604	(fix_truncdfsi2_internal): Restore FPR preference.
18605	* config/rs6000/t-aix43 (MULTILIB_MATCHES): Add mcpu?power3,
18606	mcpu?power4, mcpu?604e.  Remove mpower, mpower2, mpowerpc.
18607
186082002-07-19  Momchil Velikov <velco@fadata.bg>
18609
18610	* reload1.c (reload_as_needed): Duplicate oldpat.
18611
186122002-07-20  Alan Modra  <amodra@bigpond.net.au>
18613
18614	PR optimization/7130
18615	* loop.h (struct loop_info): Add "preconditioned".
18616	* unroll.c (unroll_loop): Set it.
18617	* doloop.c (doloop_modify_runtime): Correct count for unrolled loops.
18618
186192002-07-19  Zack Weinberg  <zack@codesourcery.com>
18620
18621	* rtl.def (CODE_LABEL): Remove slot 8.
18622	* rtl.h (struct rtx_def): Document new uses of jump and call fields.
18623	(LABEL_ALTERNATE_NAME): Delete.
18624	(LABEL_KIND, SET_LABEL_KIND, LABEL_ALT_ENTRY_P): New.
18625	* defaults.h: Remove default for ASM_OUTPUT_ALTERNATE_LABEL_NAME.
18626
18627	* final.c (output_alternate_entry_point): New.
18628	(final_scan_insn): Use it instead of
18629	ASM_OUTPUT_ALTERNATE_LABEL_NAME.  Do not consider possibility
18630	of a case label being an alternate entry point.
18631
18632	* cfgbuild.c (make_edges, find_bb_boundaries): Use LABEL_ALT_ENTRY_P.
18633	* emit-rtl.c (gen_label_rtx): Adjust call to gen_rtx_CODE_LABEL.
18634	Do not clear LABEL_NUSES (unnecessary) or LABEL_ALTERNATE_NAME
18635	(field deleted).
18636	* print-rtl.c, ra-debug.c: Update code to output CODE_LABELs.
18637
18638	* doc/rtl.texi: Document LABEL_KIND, SET_LABEL_KIND, and
18639	LABEL_ALT_ENTRY_P; not LABEL_ALTERNATE_NAME.
18640	* doc/tm.texi: Delete documentation of
18641	ASM_OUTPUT_ALTERNATE_LABEL_NAME.
18642
186432002-07-19  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
18644
18645	* config/mips/iris5gas.h (DWARF2_DEBUGGING_INFO): Define.
18646	(PREFERRED_DEBUGGING_TYPE): Use DWARF2_DEBUG.
18647	(LINK_SPEC): Define.
18648	(STARTFILE_SPEC): Define.
18649	(ENDFILE_SPEC): Define.
18650
18651	* config/mips/iris6-o32.h (LINK_SPEC): Move ...
18652	* config/mips/iris6-o32-as.h (LINK_SPEC): ... here.
18653
18654	* config/mips/iris6-o32-gas.h: New file.
18655	* config.gcc (mips-sgi-irix6*o32): Use it.
18656
18657	* config/mips/t-iris5-gas: New file.
18658	* config.gcc (mips-sgi-irix6*o32, mips-sgi-irix5*): Use it.
18659
186602002-07-19  Neil Booth  <neil@daikokuya.co.uk>
18661
18662	* cppexp.c (ALWAYS_EVAL): Remove.
18663	(optab, reduce): Always evaluate.
18664	(num_unary_op, num_binary_op, num_div_op): Issue diagnostics
18665	only if not skipping evaluation.
18666
186672002-07-19  Marek Michalkiewicz  <marekm@amelek.gda.pl>
18668
18669	* config/avr/avr.c (debug_hard_reg_set): Remove.
18670
186712002-07-19  Chris Demetriou  <cgd@broadcom.com>
18672
18673	* gcc.c (cpp_options): Include "%1" (cc1_spec).
18674
186752002-07-19  Richard Henderson  <rth@redhat.com>
18676
18677	* loop.c (loop_givs_rescan): Delete the REG_EQUAL note, not the insn.
18678
186792002-07-19  Alan Modra  <amodra@bigpond.net.au>
18680
18681	* prefix.c (update_path): Don't zap single `.' path components
18682	unless followed by another `.' and fix typo last patch.
18683
186842002-07-18  Neil Booth  <neil@daikokuya.co.uk>
18685
18686	* cppexp.c (cpp_num_mul): Remove unused parameter.
18687	(UNARY, BINARY, OTHER, binary_handler): Remove.
18688	(ALWAYS_EVAL): New.
18689	(optab): Update.
18690	(reduce): Refactor to a large switch, don't use a function
18691	pointer.
18692
186932002-07-18  Bo Thorsen  <bo@berlioz.suse.de>
18694
18695	* config/i386/linux64.h (STARTFILE_PREFIX_SPEC): Define this always.
18696
186972002-07-18  J"orn Rennecke <joern.rennecke@superh.com>
18698
18699	* sh-protos.h (sh_expand_unop_v2sf): Move inside #ifdef RTX_CODE guard.
18700	(sh_expand_binop_v2sf): Likewise.
18701	* sh.c (machine_dependent_reorg): Add move for UNSPEC_MOVA.
18702	(int_gpr_dest, trunc_hi_operand): New functions.
18703	* sh.h (PREDICATE_CODES): Add any_register_operand, int_gpr_dest and
18704	trunc_hi_operand.
18705	(SPECIAL_MODE_PREDICATES, any_register_operand): Define.
18706	* sh.md (cmpeqdi_t+1): Remove comments that genrecog warns about.
18707	(adddi3_compact+1, subdi3_compact+1, ashlsi3_n+1, ashlhi3+1): Likewise.
18708	(ashrsi2_16+1, ashrsi2_31+1, lshrsi3_n+1, ashrdi3+[12]): Likewise.
18709	(and_shl_scratch+[12], zero_extendhidi2+1): Likewise.
18710	(zero_extendhisi2_media+1, extendhidi2+1, extendqidi2+1): Likewise.
18711	(extendhisi2_media+1, extendqisi2_media+1): Likewise.
18712	(movsi_media_nofpu+[12], movhi_media+1, movdi_media_nofpu+1): Likewise.
18713	(movdi_const_16bit+[12], movdf_i4+[123], reload_outdf+[2-5]): Likewise.
18714	(movsf_ie+1): Likewise.
18715	(loaddi_trunc): Use int_gpr_dest predicate.
18716	(use_sfunc_addr, indirect_jump_scratch, sibcall_compact): Add mode(s).
18717	(mova, mova_const, GOTaddr2picreg, ptrel, casesi_worker_0): Likewise.
18718	(casesi_worker_0+[12], casesi_worker): Likewise.
18719	(shcompact_preserve_incoming_args): Likewise.
18720	(mov_nop): Use any_register_operand predicate.
18721	(mperm_w0): Use trunc_hi_operand predicate.
18722
187232002-07-18  John David Anglin  <dave@hiauly1.hia.nrc.ca>
18724
18725	* pa-linux.h (DWARF2_UNWIND_INFO): Delete define.
18726	* pa.h (EH_RETURN_DATA_REGNO): Revise TARGET_64BIT and correct
18727	numbering.
18728
187292002-07-18  John David Anglin  <dave@hiauly1.hia.nrc.ca>
18730
18731	* pa.c (output_deferred_plabels): Remove unused millicode enum mulU.
18732
187332002-07-18  Richard Henderson  <rth@redhat.com>
18734
18735	PR optimization/7147
18736	* ifcvt.c (noce_get_condition): Make certain that the condition
18737	is valid at JUMP.
18738
187392002-07-18  J"orn Rennecke <joern.rennecke@superh.com>
18740
18741	* sh.c (barrier_align, push): Shut up compiler warnings.
18742	(initial_elimination_offset,sh_media_init_builtins): Likewise.
18743	(reg_no_subreg_operand): Delete.
18744
187452002-07-17  Bo Thorsen  <bo@suse.de>
18746
18747	* config/i386/linux64.h (LINK_SPEC): Remove bogus -Y option.
18748	(STARTFILE_PREFIX_SPEC): Define for NATIVE_CROSS compilations.
18749	(STARTFILE_SPEC): Remove hardcoded library paths.
18750	(ENDFILE_SPEC): Likewise.
18751
187522002-07-18  Jan Hubicka  <jh@suse.cz>
18753
18754	* gcse.c (hoist_expr_reaches_here_p):  Stop once expr_bb is reached.
18755
18756	* gcse.c (try_replace_reg): Do not return false positives.
18757
187582002-07-18  Alan Modra  <amodra@bigpond.net.au>
18759
18760	* prefix.c: (update_path): Strip ".." components when prior dir
18761	doesn't exist.  Pass correct var to UPDATE_PATH_HOST_CANONICALIZE.
18762
18763	* config/rs6000/sysv4.h (ASM_OUTPUT_REG_PUSH): Remove 64-bit support.
18764	(ASM_OUTPUT_REG_POP): Likewise.
18765
187662002-07-18  Alan Modra  <amodra@bigpond.net.au>
18767
18768	* config/rs6000/rs6000.c (first_reg_to_save): Remove bogus
18769	adjustments to first_reg for profiling case.
18770	(output_function_profiler): Correct lr save slot for ABI_AIX_NODESC.
18771	Disable profiling for 64 bit code on both ABI_V4 and ABI_AIX_NODESC.
18772	Save static chain reg to sp + 12 on ABI_AIX_NODESC.
18773	* config/rs6000/sysv4.h (ASM_OUTPUT_REG_PUSH): Define.
18774	(ASM_OUTPUT_REG_POP): Define.
18775	* config/rs6000/linux64.h (ASM_OUTPUT_REG_PUSH): Undef.
18776	(ASM_OUTPUT_REG_POP): Undef.
18777
187782002-07-17  Neil Booth  <neil@daikokuya.co.uk>
18779
18780	* cpplib.c (do_sccs): Handle #sccs on all systems.
18781	* system.h (SCCS_DIRECTIVE): Poison.
18782	* config/darwin.h, config/freebsd.h, config/netbsd.h,
18783	config/ptx4.h, config/svr3.h, config/svr4.h, config/alpha/elf.h,
18784	config/arm/linux-elf.h, config/c4x/c4x.h, config/d30v/d30v.h,
18785	config/i370/i370.h, config/i386/gas.h, config/i386/sco5.h,
18786	config/i960/i960.h, config/m68hc11/m68hc11.h, config/m68k/3b1.h,
18787	config/m68k/3b1g.h, config/m68k/crds.h, config/m68k/mot3300.h,
18788	config/m68k/pbb.h, config/m88k/m88k.h, config/mips/mips.h,
18789	config/sparc/pbd.h, config/stormy16/stormy16.h, config/vax/vaxv.h:
18790	Remove all references to SCCS_DIRECTIVE.
18791	* doc/cpp.texi, doc/tm.texi: Update.
18792
187932002-07-17  J"orn Rennecke <joern.rennecke@superh.com>
18794
18795	* regrename.c (maybe_mode_change): New function.
18796	(find_oldest_value_reg, copyprop_hardreg_forward_1): Use it.
18797
187982002-07-17  Rodney Brown  <rbrown64@csc.com.au>
18799
18800	* config/i386/i386.c (ix86_expand_int_movcc): In the general case
18801	suppress addition when either ct or cf are zero.
18802
188032002-07-17  Eric Botcazou <ebotcazou@multimania.com>
18804	    Glen Nakamura <glen@imodulo.com>
18805
18806	PR optimization/6713
18807	* loop.c (loop_givs_rescan): Explicitly delete the insn that
18808	sets a non-replaceable giv after issuing the new one.
18809
188102002-07-17  Neil Booth  <neil@daikokuya.co.uk>
18811
18812	* cppexp.c (cpp_interpret_integer, append_digit, parse_defined,
18813	eval_token): Clarify and correct use of "bool" variables.
18814	* cpplib.h (struct cpp_options): Similarly.
18815	* cppmacro.c (parse_params, _cpp_save_parameter): Ditto.
18816	* cpptrad.c (recursive_macro): Similarly.
18817
188182002-07-17  J"orn Rennecke <joern.rennecke@superh.com>
18819
18820	* config/sh/lib1funcs.asm (udivsi3_i4): Implement SHcompact version in
18821	SHmedia code.
18822
18823	* sh.md (cmpgtudi_media): Remove spurious @.
18824
18825	* config/sh/lib1funcs.asm (FMOVD_WORKS): Don't define for little endian.
18826	* sh.h (OVERRIDE_OPTIONS): Don't set FMOVD_BIT for little endian.
18827
18828	* config/sh/lib1funcs.asm (init_trampoline): New entry point.
18829	* sh-protos.h (sh_initialize_trampoline): Declare.
18830	* sh.c (sh_initialize_trampoline): New function.
18831	* sh.h (TRAMPOLINE_SIZE): Only 24 for TARGET_SHMEDIA32.
18832	(TRAMPOLINE_ALIGNMENT): Need cache-line alignment for TARGET_SHMEDIA.
18833	(INITIALIZE_TRAMPOLINE): Call sh_initialize_trampoline.
18834	(TRAMPOLINE_ADJUST_ADDRESS): Not needed for SHcompact.
18835	* sh.md (initialize_trampoline, double_shori): New patterns.
18836	(initialize_trampoline_compact): Likewise.
18837	(shmedia32_initialize_trampoline_big): Remove.
18838	(shmedia32_initialize_trampoline_little): Likewise.
18839
18840	* sh-protos.h (binary_float_operator): Remove declaration.
18841	(sh_expand_unop_v2sf, sh_expand_binop_v2sf): Declare.
18842	* sh.c (print_operand, case 'N'): Check against CONST0_RTX.
18843	(unary_float_operator, sh_expand_unop_v2sf): New functions.
18844	(sh_expand_binop_v2sf): Likewise.
18845	(zero_vec_operand): Delete.
18846	(SH_BLTIN_UDI): New builtin shared signature define.  Renumbered
18847	all non-shared ones.
18848	(bdesc): Change all the mextr builtins to use SH_BLTIN_UDI.
18849	Enable nsb and byterev.
18850	* sh.h (CONDITIONAL_REGISTER_USAGE): Initialize DF_HI_REGS.
18851	(HARD_REGNO_MODE_OK): Allow TImode in fp regs.  Allow V2SFmode
18852	in general regs.
18853	(enum reg_class, REG_CLASS_NAMES, REG_CLASS_CONTENTS): Add DF_HI_REGS.
18854	(SECONDARY_OUTPUT_RELOAD_CLASS): Likewise.  Remove clause for
18855	immediate operands.
18856	(SECONDARY_INPUT_RELOAD_CLASS): Add clause for immediate operands.
18857	Add DF_HI_REGS.
18858	(CLASS_CANNOT_CHANGE_MODE, CLASS_CANNOT_CHANGE_MODE_P): Allow
18859	lowpart fp regs - only for big endian for now.
18860	(LEGITIMATE_CONSTANT_P): Don't allow nonzero float vectors
18861	when FPU is in use.
18862	(EXTRA_CONTRAINT_U): Check against CONST0_RTX.
18863	(LOAD_EXTEND_OP): NIL for SImode.
18864	(REGISTER_MOVE_COST): Add DF_HI_REGS.  Const for moves between
18865	general and fp registers is 4.
18866	PREDICATE_CODES: Amend binary_float_operator entry.
18867	Remove zero_vec_operand.  Add unary_float_operator.
18868	* sh.md (udivsi3_i4_media): Use truncate instead of paradoxical
18869	subreg SET_DEST.
18870	(truncdisi2, truncdihi2, movv2sf): Allow memory destinations.
18871	(truncdiqi2): Do sign extension.
18872	(movsi_media, movdi_media): Allow to use r63 to an fp register.
18873	(movdf_media, movsf_media): Likewise.
18874	(movv2sf_i, movv2sf_i+1): Don't use f{ld,st}.p or SUBREGS.
18875	Collapse to one define_insn_and_split.  Allow immediate sources.
18876	(addv2sf3, subv2sf3, mulv2sf3, divv2sf3): New patterns.
18877	(movv4sf_i): Allow immediate sources.  Use simplify_gen_subreg.
18878	(movv4sf): Allow immediate sources.
18879	(movsf_media_nofpu+1): Don't split moves to FP registers.
18880	(unary_sf_op, binary_sf_op, mshflo_w_x, concat_v2sf): New patterns.
18881	(movv8qi_i+3): Check against CONST0_RTX.
18882	(mextr1, mextr2. mextr3. mextr4, mextr5, mextr6, mextr7): Use DImode
18883	for input and output operands.  Fix argument 3 to gen_mextr_rl.
18884	(mmul23_wl, mmul01_wl, mmulsum_wq_i): s/const_vector/parallel/
18885	(msad_ubq_i, mshf4_b, mshf0_b, mshf4_l, mshf0_l, mshf4_w): Likewise.
18886	(mshf0_w, fipr, ftrv): Likewise.
18887	(mshfhi_l_di): Now insn_and_split.  Can handle FP regs.
18888
188892002-07-17  Jeroen Dobbelaere  <jeroen.dobbelaere@acunia.com>
18890
18891	* arm.h (ARM_NUM_INTS, ARM_NUM_REGS, ARM_NUM_REGS2): Renamed from
18892	NUM_INTS, NUM_REGS and ARM_NUM_REGS2 respectively.  All uses changed.
18893	* arm.c: Similarly.
18894
188952002-07-17  Richard Sandiford  <rsandifo@redhat.com>
18896
18897	* config/mips/mips-protos.h (mips_sign_extend): Declare.
18898	* config/mips/mips.h (MASK_DEBUG_H, TARGET_DEBUG_H_MODE): Remove.
18899	(TARGET_SWITCHES): Remove debugh.
18900	(ISA_HAS_TRUNC_W): New macro.
18901	(CLASS_CANNOT_CHANGE_MODE): Include FP_REGS if TARGET_FLOAT64.
18902	(PREDICATE_CODES): Remove se_nonimmediate_operand.
18903	* config/mips/mips.c (movdi_operand): Allow sign-extensions of
18904	any SImode move_operand.
18905	(se_nonimmediate_operand): Remove.
18906	(mips_sign_extend): New.
18907	(mips_move_2words): Use it for sign-extended source operands.
18908	(override_options): Allow integers to be put into single FPRs.
18909	(mips_secondary_reload_class): Handle integers in float registers.
18910	* config/mips/mips.md (extendsidi2): Turn into a define_expand.
18911	(fix_truncsfsi2, fix_truncdfsi2): Likewise.
18912	(fix_truncdfsi2_insn, fix_truncdfsi2_macro): New.
18913	(fix_truncsfsi2_insn, fix_truncsfsi2_macro): New.
18914	(fix_truncdfdi2): Provide only a single alternative, in which the
18915	integer is in a float register.  Depend on TARGET_FLOAT64 rather
18916	than TARGET_64BIT.
18917	(fix_truncsfdi2, floatdidf2, floatdisf2): Likewise.
18918	(floatsidf2, floatsisf2): Likewise, but no TARGET_FLOAT64 dependency.
18919	(movdi_internal2): Don't allow the source operand to be sign-extended.
18920	Add alternatives for float registers.
18921	(*movdi_internal2_extend): New.  Version of movdi_internal2 that
18922	allows sign-extension.
18923	(*movdi_internal2_mips16): Name the existing mips16 movdi pattern.
18924	(movsi_internal2): Rename to movsi_internal.  Add alternatives for
18925	float registers.  Remove TARGET_DEBUG_H_MODE test.
18926	(movhi_internal1): Rename to movhi_internal.  Don't check
18927	TARGET_DEBUG_H_MODE.  Fix transposed *d and *f source constraints.
18928	(movqi_internal1): Rename to movqi_internal and remove
18929	TARGET_DEBUG_H_MODE dependency.
18930	(movsi_internal1, movhi_internal2, movqi_internal2): Remove.
18931
189322002-07-16  Jim Wilson  <wilson@redhat.com>
18933
18934	* toplev.c (lang_dependent_init): Create function context for
18935	init_expr_once.
18936
189372002-07-16  Hans-Peter Nilsson  <hp@axis.com>
18938
18939	* config/cris/linux.h (CRIS_LINK_SUBTARGET_SPEC): Don't
18940	--gc-sections if -r.
18941	* config/cris/cris.h: Ditto.
18942
189432002-07-16  Rodney Brown  <rbrown64@csc.com.au>
18944
18945	* config/i386/i386.c (ix86_expand_int_movcc): In the case where
18946	the comparison directly gives a mask suppress addition when cf is
18947	zero by complementing the mask.
18948
189492002-07-16  Nathanael Nerode  <neroden@gcc.gnu.org>
18950
18951	* Makefile.in: Delete references to enquire.
18952	* enquire.c: Move to contrib.
18953
189542002-07-16  Stan Shebs  <shebs@apple.com>
18955
18956	* config/darwin.h (ASM_OUTPUT_LABEL): Move to here from
18957	config/rs6000/darwin.h.
18958	(ASM_OUTPUT_SKIP): Ditto.
18959	(TEXT_SECTION_ASM_OP): Ditto.
18960	(DATA_SECTION_ASM_OP): Ditto.
18961	(ASM_APP_ON): Define.
18962	(ASM_APP_OFF): Define.
18963	* config/rs6000/darwin.h (ASM_OUTPUT_LABEL, ASM_OUTPUT_SKIP,
18964	TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP): Remove.
18965
18966	* config/darwin.c (func_name_maybe_scoped): Remove unused decl.
18967	(machopic_function_base_name): Declare result to be const.
18968	(machopic_non_lazy_ptr_name): Ditto.
18969	(machopic_stub_name): Ditto.
18970	* config/darwin-protos.h: Ditto for the prototypes.
18971
189722002-07-17  Jan Hubicka  <jh@suse.cz>
18973
18974	* m68hc11.c (m68hc11_reorg): Do not rebuild CFG.
18975
189762002-07-17  Jan Hubicka  <jh@suse.cz>
18977
18978	* i386.md (prefetch): Fix for 64bit mode.
18979	(prefetch_sse_rex, prefetch_3dnow_rex): New patterns.
18980
189812002-07-17  Jan Hubicka  <jh@suse.cz>
18982
18983	* i386.h (MACHINE_DEPENDENT_REORG): New macro.
18984	* i386.c (x86_machine_dependent_reorg): New function.
18985	* i386-protos.h (x86_machine_dependent_reorg): Declare.
18986
189872002-07-16  Zack Weinberg  <zack@codesourcery.com>
18988
18989	* builtins.c (std_expand_builtin_va_start): Remove unused
18990	first argument.
18991	(expand_builtin_va_start): Call EXPAND_BUILTIN_VA_START and
18992	std_expand_builtin_va_start with just two arguments.
18993	* expr.h: Update prototypes.
18994
18995	* alpha-protos.h, alpha.h, alpha.c, arc-protos.h, arc.h,
18996	arc.c, d30v-protos.h, d30v.h, d30v.c, i386-protos.h, i386.h,
18997	i386.c, i960-protos.h, i960.h, i960.c, m88k-protos.h, m88k.h,
18998	m88k.c, mips-protos.h, mips.h, mips.c, mn10300-protos.h,
18999	mn10300.h, mn10300.c, pa-protos.h, pa.h, pa.c,
19000	rs6000-protos.h, rs6000.h, rs6000.c, s390-protos.h, s390.h,
19001	s390.c, sh-protos.h, sh.h, sh.c, sparc-protos.h, sparc.h,
19002	sparc.c, stormy16-protos.h, stormy16.h, stormy16.c,
19003	xtensa-protos.h, xtensa.h, xtensa.c:  Remove unused first
19004	argument from all implementations of EXPAND_BUILTIN_VA_START
19005	and all uses of std_expand_builtin_va_start.
19006
190072002-07-16  J"orn Rennecke <joern.rennecke@superh.com>
19008
19009	* regrename.c (copy_value): Don't record high part copies.
19010
190112002-07-16  Steve Ellcey  <sje@cup.hp.com>
19012
19013	* gcc/config/pa/long_double.h (FIXUNS_TRUNCTFDI2_LIBCALL): New define.
19014	(fixunstfdi_libfunc): Change to use FIXUNS_TRUNCTFDI2_LIBCALL.
19015	* gcc/config/pa/quadlib.c (_U_Qfcnvfxt_quad_to_udbl): New function.
19016
190172002-07-16  Ian Dall  <ian@sibyl.beware.dropbear.id.au>
19018
19019	* doc/invoke.texi (NS32K Options): Document -mieee-compare option
19020
19021	* config/ns32k/ns32k.md (addsi3, *frame_addr, *stack_addr): merge
19022	into addsi3 using register class "x" and "y".
19023
19024	* config/ns32k/ns32k.md (*madddf, *maddsf, *msubdf, *msubsf):
19025	"earlyclobber" constraint modifier for some alternative.
19026
19027	* config/ns32k/ns32k.md (tstdf, tstsf, cmpdf, cmpsf, blt, ble)
19028	(*ble, *blt): Flag to indicate bCOND and sCOND should check for
19029	unordered.
19030	config/ns32k/ns32k.h (CC_UNORD): define corresponding mask.
19031
19032	* config/ns32k/ns32k.h (TARGET_IEEE_COMPARE, MASK_IEEE_COMPARE)
19033	(TARGET_SWITCHES): Add -mieee-compare option.
19034	(OVERRIDE_OPTIONS): 32332 is a subset of
19035	32532. Don't use IEEE_COMPARE -funsafe-math-optimizations.
19036	(TARGET_SWITCHES): Fix description of bit-field option.
19037	* config/ns32k/netbsd.h (TARGET_DEFAULT): Add
19038	-mieee-compare option. Remove 32332 flag.
19039
190402002-07-16  Steve Ellcey  <sje@cup.hp.com>
19041
19042	* explow.c (convert_memory_address): Remove special handling
19043	when POINTERS_EXTEND_UNSIGNED < 0.
19044	* config/ia64.md (movsi_symbolic): New instruction for ILP32 mode.
19045	(movedi_symbolic): Fix typo.
19046	(load_fptr): Remove mode restriction so it works for SI and DI.
19047	(load_fptr_internal1): Ditto.
19048	(load_gprel): Ditto.
19049	(load_symptr_internal1): Ditto.
19050	(call_pic): Ditto.
19051	* config/ia64.c (call_operand): Modify mode check.
19052	(ia64_expand_load_address): Handle DI and SI addresses and symbols.
19053	(ia64_expand_move): Ditto.
19054	(ia64_assemble_integer): Handle SImode function pointers.
19055	(ia64_expand_fetch_and_op): Handle SImode mem addresses.
19056	(ia64_expand_op_and_fetch): Ditto.
19057	(ia64_expand_compare_and_swap): Ditto.
19058	(ia64_expand_lock_test_and_set): Ditto.
19059	(ia64_expand_lock_release): Ditto.
19060
190612002-07-16  Jeroen Dobbelaere <jeroen.dobbelaere@acunia.com>
19062
19063	* arm.c (emit_sfm): Don't set RTX_FRAME_RELATED_P on DWARF.
19064
190652002-07-16  Jeroen Dobbelaere <jeroen.dobbelaere@acunia.com>
19066	    Richard Earnshaw  <rearnsha@arm.com>
19067
19068	* arm.h (LEGITIMATE_PIC_OPERAND_P): Only test
19069	CONSTANT_POOL_ADDRESS_P if a SYMBOL_REF.  Simplify logic.
19070
190712002-07-16  Richard Earnshaw  <rearnsha@arm.com>
19072
19073	* arm.md (stack_tie): New insn.  Use an idiom that the alias code
19074	understands to be a memory clobber.
19075	* arm.c (arm_expand_prologue): Use it.
19076
190772002-07-16  Daniel Berlin  <dberlin@dberlin.org>
19078
19079	* ra-rewrite.c: #include reload.h, insn-config.h
19080	* ra-build.c: #include reload.h
19081	* Makefile.in: Update ra-rewrite.o, ra-build.o dependencies to
19082	depend on reload.h, insn-config.h.
19083
190842002-07-16  J"orn Rennecke <joern.rennecke@superh.com>
19085
19086	* expr.c (emit_move_insn_1): Handle arbitrary moves that are
19087	the same size as a word.
19088
19089	* regrename.c (find_oldest_value_reg): Take WORDS_BIG_ENDIAN /
19090	BYTES_BIG_ENDIAN into account.
19091
190922002-07-16  Jan Hubicka  <jh@suse.cz>
19093
19094	* i386.md (prefetch): Fix for 64bit mode.
19095	(prefetch_sse_rex, prefetch_3dnow_rex): New patterns.
19096
19097	* i386.md (movss, movsd): Use xorps/xorpd for Athlon.
19098
190992002-07-16  Marek Michalkiewicz  <marekm@amelek.gda.pl>
19100
19101	* hard-reg-set.h (TEST_HARD_REG_BIT): Return 1 if the bit is set.
19102
191032002-07-15  Zack Weinberg  <zack@codesourcery.com>
19104
19105	* ginclude/varargs.h: Replace with stub which issues #error.
19106	* ginclude/stdarg.h: __builtin_stdarg_start is renamed
19107	__builtin_va_start.
19108
19109	* builtins.def (BUILT_IN_VARARGS_START): Delete.
19110	(BUILT_IN_VA_START): New.
19111	* builtins.c (expand_builtin_va_start): Eliminate first
19112	argument and code to implement pre-ISO varargs.
19113	(std_expand_builtin_va_start): Ignore first argument; it is
19114	always 1.
19115	(expand_builtin): Handle BUILT_IN_VA_START and
19116	BUILT_IN_STDARG_START identically.  Delete
19117	BUILT_IN_VARARGS_START case.
19118
19119	* function.c (assign_parms): Delete hide_last_arg and all
19120	its uses.
19121	(mark_varargs): Delete function.
19122	* function.h (struct function): Delete 'varargs' bit.
19123	(current_function_varargs): Delete macro.
19124	* tree.h: Don't declare mark_varargs.
19125
19126	* c-decl.c (c_function_varargs, c_mark_varargs): Delete.
19127	(c_expand_body): Don't call mark_varargs.
19128	* c-objc-common.c: Handle BUILT_IN_VA_START and
19129	BUILT_IN_STDARG_START identically.  Delete
19130	BUILT_IN_VARARGS_START case.
19131	* c-tree.h: Don't declare c_mark_varargs.
19132	* c-parse.in: Remove grammar rules for '&...' (which has been
19133	commented out since before 2.7.2) and for '...' in K+R
19134	argument declarations.
19135
19136	* builtins.c, function.c, integrate.c, sibcall.c,
19137	config/alpha/unicosmk.h, config/arc/arc.c, config/arc/arc.h,
19138	config/avr/avr.c, config/cris/cris.c, config/fr30/fr30.c,
19139	config/i960/i960.c, config/i960/i960.md, config/m32r/m32r.c,
19140	config/m32r/m32r.h, config/m88k/m88k.c, config/m88k/m88k.h,
19141	config/mips/mips.c, config/mmix/mmix.c, config/mmix/mmix.h,
19142	config/mn10300/mn10300.c, config/pa/som.h, config/s390/s390.c,
19143	config/sh/sh.c, config/sh/sh.h, config/sparc/sparc.h,
19144	config/stormy16/stormy16.c: Delete all references to
19145	current_function_varargs, and code predicated on that flag.
19146
19147	* config/alpha/alpha.c (alpha_va_start),
19148	config/arc/arc.c (arc_va_start),
19149	config/i386/i386.c (ix86_va_start),
19150	config/mips/mips.c (mips_va_start),
19151	config/mn10300/mn10300.c (mn10300_va_start),
19152	config/rs6000/rs6000.c (rs6000_va_start),
19153	config/s390/s390.c (s390_va_start),
19154	config/sh/sh.c (sh_va_start),
19155	Ignore first argument; it is always 1.
19156
19157	* config/c4x/c4x-protos.h, config/c4x/c4x.c: Delete c4x_va_start.
19158	* config/ia64/ia64-protos.h, config/ia64/ia64.c: Delete ia64_va_start.
19159	* config/m68hc11/m68hc11-protos.h, config/m68hc11/m68hc11.c:
19160	Delete m68hc11_va_start.
19161	* config/c4x/c4x.h, config/ia64/ia64.h, config/m68hc11/m68hc11.h:
19162	No need to define EXPAND_BUILTIN_VA_START.
19163
19164	* doc/invoke.texi, doc/sourcebuild.texi, doc/tm.texi,
19165	doc/trouble.texi: Remove references to GCC-provided <varargs.h>.
19166
191672002-07-15  Eric Botcazou  <ebotcazou@multimania.com>
19168
19169	PR optimization/7153
19170	* regmove.c (optimize_reg_copy_3): Don't optimize if the register
19171	dies in more than one insn.
19172
191732002-07-15  Jason Thorpe  <thorpej@wasabisystems.com>
19174
19175	* config/sparc/netbsd-elf.h (TRANSFER_FROM_TRAMPOLINE): Remove.
19176
191772002-07-15  Michael Matz  <matz@suse.de>,
19178	    Daniel Berlin  <dberlin@dberlin.org>,
19179	    Denis Chertykov  <denisc@overta.ru>
19180
19181	Add a new register allocator.
19182
19183	* ra.c: New file.
19184	* ra.h: New file.
19185	* ra-build.c: New file.
19186	* ra-colorize.c: New file.
19187	* ra-debug.c: New file.
19188	* ra-rewrite.c: New file.
19189
19190	* Makefile.in (ra.o, ra-build.o, ra-colorize.o, ra-debug.o,
19191	(ra-rewrite.o): New .o files for libbackend.a.
19192	(GTFILES): Add basic-block.h.
19193
19194	* toplev.c (flag_new_regalloc): New.
19195	(f_options): New option "new-ra".
19196	(rest_of_compilation): Call initialize_uninitialized_subregs()
19197	only for the old allocator.  If flag_new_regalloc is set, call
19198	new allocator, instead of local_alloc(), global_alloc() and
19199	friends.
19200
19201	* doc/invoke.texi: Document -fnew-ra.
19202	* basic-block.h (FOR_ALL_BB): New.
19203	* config/rs6000/rs6000.c (print_operand): Write small constants
19204	as @l+80.
19205
19206	* df.c (read_modify_subreg_p): Narrow down cases for a rmw subreg.
19207	(df_reg_table_realloc): Make size at least as large as max_reg_num().
19208	(df_insn_table_realloc): Size argument now is absolute, not relative.
19209	Changed all callers.
19210
19211	* gengtype.c (main): Add the pseudo-type "HARD_REG_SET".
19212	* regclass.c (reg_scan_mark_refs): Ignore NULL rtx's.
19213
19214	2002-06-20  Michael Matz  <matz@suse.de>
19215
19216	* df.h (struct ref.id): Make unsigned.
19217	* df.c (df_bb_reg_def_chain_create): Remove unsigned cast.
19218
19219	2002-06-13  Michael Matz  <matz@suse.de>
19220
19221	* df.h (DF_REF_MODE_CHANGE): New flag.
19222	* df.c (df_def_record_1, df_uses_record): Set this flag for refs
19223	involving subregs with invalid mode changes, when
19224	CLASS_CANNOT_CHANGE_MODE is defined.
19225
19226	2002-05-07  Michael Matz  <matz@suse.de>
19227
19228	* reload1.c (fixup_abnormal_edges): Don't insert on NULL edge.
19229
19230	2002-05-03  Michael Matz  <matz@suse.de>
19231
19232	* sbitmap.c (sbitmap_difference): Accept sbitmaps of different size.
19233
19234	Sat Feb  2 18:58:07 2002  Denis Chertykov  <denisc@overta.ru>
19235
19236	* regclass.c (regclass): Work with all regs which have sets or
19237	refs.
19238	(reg_scan_mark_refs): Count regs inside (clobber ...).
19239
19240	2002-01-04  Michael Matz  <matzmich@cs.tu-berlin.de>
19241
19242	* df.c (df_ref_record): Correctly calculate SUBREGs of hardregs.
19243	(df_bb_reg_def_chain_create, df_bb_reg_use_chain_create): Only
19244	add new refs.
19245	(df_bb_refs_update): Don't clear insns_modified here, ...
19246	(df_analyse): ... but here.
19247
19248	* sbitmap.c (dump_sbitmap_file): New.
19249	(debug_sbitmap): Use it.
19250
19251	* sbitmap.h (dump_sbitmap_file): Add prototype.
19252
19253	2001-08-07  Daniel Berlin  <dan@cgsoftware.com>
19254
19255	* df.c (df_insn_modify): Grow the UID table if necessary, rather
19256	than assume all emits go through df_insns_modify.
19257
19258	2001-07-26  Daniel Berlin  <dan@cgsoftware.com>
19259
19260	* regclass.c (reg_scan_mark_refs): When we increase REG_N_SETS,
19261	increase REG_N_REFS (like flow does), so that regclass doesn't
19262	think a reg is useless, and thus, not calculate a class, when it
19263	really should have.
19264
19265	2001-01-28  Daniel Berlin  <dberlin@redhat.com>
19266
19267	* sbitmap.h (EXECUTE_IF_SET_IN_SBITMAP_REV): New macro, needed for
19268	dataflow analysis.
19269
192702002-07-15  Jakub Jelinek  <jakub@redhat.com>
19271
19272	PR middle-end/7245
19273	* config/i386/i386.c (const_int_1_31_operand): New.
19274	* config/i386/i386.h (PREDICATE_CODES): Add it.
19275	* config/i386/i386.md (ashlsi3_cmp, ashlsi3_cmp_zext, ashlhi3_cmp,
19276	ashlqi3_cmp, ashrsi3_cmp, ashrsi3_cmp_zext, ashrhi3_cmp, ashrqi3_cmp,
19277	lshrsi3_cmp, lshrsi3_cmp_zext, lshrhi3_cmp, lshrqi3_cmp): Use it.
19278
192792002-07-14  Alan Modra  <amodra@bigpond.net.au>
19280
19281	PR target/7282
19282	* config/rs6000/rs6000.md (floatsidf2): Enable for POWERPC64.
19283	(floatunssidf2): Likewise.
19284	(floatsidf_ppc64): New insn_and_split.
19285	(floatunssidf_ppc64): Likewise.
19286
192872002-07-14  Andreas Jaeger  <aj@suse.de>
19288
19289	* config.gcc (sh64): Remove unused
19290	target_requires_64bit_host_wide_int.
19291
192922002-07-12  Roger Sayle  <roger@eyesopen.com>
19293
19294	* expr.c [CLEAR_RATIO]: New macro defining the maximum number
19295	of move instructions to use when clearing memory, c.f. MOVE_RATIO.
19296	[CLEAR_BY_PIECES]: New macro, using CLEAR_RATIO, to determine
19297	whether clear_by_pieces should be used to clear storage.
19298	(clear_storage): Use CLEAR_BY_PIECES instead of MOVE_BY_PIECES.
19299
19300	* doc/tm.texi: Document these two new target macros.
19301
193022002-07-12  Stephane Carrez  <stcarrez@nerim.fr>
19303
19304	* config/m68hc11/m68hc11.md ("zero_extendsidi2"): Use D_REG only for
19305	the scratch register.
19306	("*movhi2_push"): Accept Z_REG because a split pattern can make use
19307	of it, forbid reload to use it.
19308
193092002-07-12  Marek Michalkiewicz  <marekm@amelek.gda.pl>
19310
19311	* config/avr/avr.c (test_hard_reg_class): Fix TEST_HARD_REG_BIT
19312	usage on 64-bit hosts, return value was truncated to 32 bits.
19313
193142002-07-12  J"orn Rennecke <joern.rennecke@superh.com>
19315
19316	* simplify-rtx.c (simplify_subreg): Handle floating point
19317	CONST_DOUBLEs.  When an integer subreg of a smaller mode than
19318	the element mode is requested, compute a subreg with an
19319	integer mode of the same size as the element mode first.
19320
193212002-07-11  J"orn Rennecke <joern.rennecke@superh.com>
19322
19323	* combine.c (try_combine): When converting a paradoxical subreg
19324	to an extension, take LOAD_EXTEND_OP into account.
19325
193262002-07-11  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
19327
19328	* config.gcc (mips-sgi-irix6*o32): New configuration.
19329
19330	* configure.in (libgcc_visibility): Disable for mips-sgi-irix6*o32
19331	configurations.
19332	* configure: Regenerate.
19333
19334	* config/mips/iris6-o32-as.h: New file.
19335	* config/mips/iris6-o32.h: New file.
19336
19337	* config/mips/iris5gas.h (TARGET_ASM_NAMED_SECTION): Define.
19338	(NM_FLAGS): Define.
19339	(HAVE_AS_SHF_MERGE): Undefine.
19340
19341	* config/mips/t-iris5-as: New file.
19342	* config.gcc (mips-sgi-irix6*o32, mips-sgi-irix5*): Use it.
19343
19344	* config/mips/t-iris6 (SHLIB_EXT, SHLIB_SOLINK, SHLIB_SONAME,
19345	SHLIB_NAME, SHLIB_MAP, SHLIB_OBJS, SHLIB_SLIBDIR_QUAL, SHLIB_LINK,
19346	SHLIB_INSTALL, SHLIB_MKMAP, SHLIB_MAPFILES, FPBIT, DPBIT,
19347	dp-bit.c, fp-bit.c): Move ...
19348	* config/mips/t-iris5-6: ... here.
19349	New file, shared by IRIX 5 and IRIX 6.
19350	* config.gcc (mips-sgi-irix6*o32, mips-sgi-irix6*,
19351	mips-sgi-irix5*): Use it.
19352
19353	* config/mips/iris6.h: Remove duplicate comment.
19354
19355	* config/mips/mips.c (TARGET_ASM_UNALIGNED_DI_OP) [TARGET_IRIX5 &&
19356	!TARGET_IRIX6]: Define.
19357	(mips_asm_file_start): Don't emit mdebug.<ABI> sections on IRIX 5/6.
19358
19359	* config/mips/mips.h (ASM_DECLARE_FUNCTION_NAME): Fix comment.
19360
193612002-07-11  John David Anglin  <dave@hiauly1.hia.nrc.ca>
19362
19363	* pa.md (adddi3): Change predicate of operand 2 to adddi3_operand
19364	and delete code to force constant to register.
19365	* pa-protos.h (adddi3_operand): Add prototype.
19366	* pa.c (adddi3_operand): New function.
19367
193682002-07-11  Roger Sayle  <roger@eyesopen.com>
19369
19370	* c-decl.c (duplicate_decls): Preserve the noreturn attribute on
19371	non-ANSI builtin functions.
19372
193732002-07-11  J"orn Rennecke <joern.rennecke@superh.com>
19374
19375	* rtl.h (gen_rtx_CONST_VECTOR): Declare.
19376	* gengenrtl.c (special_rtx): Check for CONST_VECTOR.
19377	* emit-rtl.c (gen_rtx_CONST_VECTOR): New function.
19378	(gen_const_vector_0): Use it.
19379
193802002-07-11  John David Anglin  <dave@hiauly1.hia.nrc.ca>
19381
19382	* pa.md (adddi3): For 32-bit targets, force constants to a register
19383	if they don't fit in an 11-bit immediate.  Change insn predicate to
19384	arith11_operand.  Remove comment.
19385	* pa.c (cint_ok_for_move): Fix comment.
19386	(emit_move_sequence):  Don't directly split DImode constants on 32-bit
19387	targets.
19388
193892002-07-11  Tim Josling  <tej@melbpc.org.au>
19390
19391	Remove front end hard coding from gengtype.c.
19392
19393	* Makefile.in
19394	(STAGESTUFF): add gtyp-gen.h
19395	(GTFILES): Remove front end specific files.
19396	(GTFILES_FILES_LANGS): New, from configure..
19397	(GTFILES_FILES_FILES): Likewise.
19398	(GTFILES_LANG_DIR_NAMES): Likewise.
19399	(GTFILES_SRCDIR): Likewise.
19400	(gtyp-gen.h): Build from configure information.
19401	(s-gtype): Remove command line parameters from gengtype.
19402	(gengtype.o): Remove dependency on GTFILES. Depend on gtyp-gen.h.
19403	(mostlyclean): Delete files generated by and for gengtype.
19404
19405	* c-config-lang.in: New file.
19406
19407	* configure.in (all_gtfiles_files_langs): New. Accumulate files
19408	for each language.
19409	(all_gtfiles_files_files): New. Accumulate language for each file
19410	accumulated.
19411	(gtfiles): Pick up value for C.
19412	(srcdir): AC-SUBST this variable.
19413	(all_gtfiles_files_langs): AC-SUBST this variable.
19414	(all_gtfiles_files_files): AC-SUBST this variable.
19415
19416	* configure: Regenerate.
19417
19418	* gengtype-lex.l (parse_file): Make parameter const.
19419
19420	* gengtype.c (toplevel): include gtyp-gen.h.
19421	(BASE_FILE_<language> unnamed enum): Delete.
19422	(lang_names): Delete (replaced by gtyp-gen.h)
19423	(lang_dir_names): From gtyp-gen.h, replaces lang_names; changed
19424	all references.
19425	(NUM_GT_FILES): New.
19426	(NUM_LANG_FILES): New.
19427	(srcdir_len): New.
19428	(NUM_BASE_FILES): Change calculation.
19429	(open_base_files): Change prototype to avoid warning.
19430	(startswith): Delete.
19431	(get_file_basename): Iterate through generated language list not
19432	hard coded list.
19433	(get_base_file_bitmap): Use generated list of files and languages.
19434	(close_output_files): Add prototype to rmove warning.
19435	(main): Iterate through list of generated files from gtyp-gen.h
19436	rather than command line paramaters.  Ignore duplicated file
19437	names.
19438
19439	* gengtype.h (parse_file): Amend prototype for const parameter.
19440
19441	* doc/sourcebuild.texi: Document gtfiles variable.
19442
19443	* doc/gty.texi: Document changes to gtfiles variable for front
19444	ends.
19445
19446	* objc/config-lang.in (gtfiles): Add files needed for objc front
19447	end.
19448
194492002-07-10  Roger Sayle  <roger@eyesopen.com>
19450
19451	PR c/2454
19452	* combine.c (nonzero_bits): LOAD_EXTEND_OP should only apply
19453	to SUBREGs of MEMs.  (num_sign_bit_copies): Likewise.
19454
194552002-07-10  Roger Sayle  <roger@eyesopen.com>
19456	    Zack Weinberg <zack@codesourcery.com>
19457
19458	* builtins.def: Make the argument types of abort and exit
19459	independent of the front-end.
19460
194612002-07-11  Alan Modra  <amodra@bigpond.net.au>
19462
19463	* config/rs6000/linux64.h (ASM_SPEC): Define.
19464
194652002-07-10  Aldy Hernandez  <aldyh@redhat.com>
19466
19467	* config/rs6000/rs6000.c (emit_frame_save): New.
19468	(rs6000_frame_related): Replace reg2 before reg.
19469	(rs6000_emit_prologue): Use emit_frame_save for saving gprs, fprs,
19470	and eh_return registers.
19471
194722002-07-10  Toon Moene  <toon@moene.indiv.nluug.nl>
19473
19474	Revert all patches for optimization of Complex .op. Real.
19475	* complex_part_zero_p: Remove
19476	* expand_cmplxdiv_straight: Replace complex_part_zero_p(x)
19477	with x.
19478	* expand_cmplxdiv_wide: Ditto.
19479	* expand_binop: Ditto.
19480
194812002-07-10  Marek Michalkiewicz  <marekm@amelek.gda.pl>
19482
19483	* config/avr/avr.md: Fix two 0x80000000 constants to make them
19484	negative also on 64-bit hosts.
19485
19486	Default to -fno-reorder-blocks when optimizing for size.
19487	* config/avr/avr-protos.h (avr_optimization_options): Declare.
19488	* config/avr/avr.c (avr_optimization_options): New function.
19489	* config/avr/avr.h (OPTIMIZATION_OPTIONS): New.
19490
19491	Optimize returning from simple functions.
19492	* config/avr/avr-protos.h (avr_simple_epilogue): Declare.
19493	* config/avr/avr.c (avr_simple_epilogue): New function.
19494	* config/avr/avr.md (return): New insn.
19495
194962002-07-10  Douglas B Rupp  <rupp@gnat.com>
19497
19498	* config/i386/i386.c  (ix86_svr3_asm_out_constructor): Add
19499	HAS_INIT_SECTION to protection.
19500
195012002-07-10  Mark Mitchell  <mark@codesourcery.com>
19502
19503	* doc/invoke.texi (Debugging Options): Mention that -gdwarf is
19504	deprecated.
19505
195062002-07-10  J"orn Rennecke <joern.rennecke@superh.com>
19507
19508	* combine.c (gen_lowpart_for_combine): Handle vector modes.
19509	Supply non-VOID mode to simplify_gen_subreg.
19510
195112002-07-10  Jan Hubicka  <jh@suse.cz>
19512
19513	* i386.c (ix86_init_mmx_sse_builtins): Fix thinko.
19514
195152002-07-10  Jeffrey A Law  <law@redhat.com>
19516
19517	* mn10200.c (expand_prologue): Create REG_MAYBE_DEAD notes
19518	as appropriate.
19519
19520	* mn10200.c (expand_epilogue): Fix test to determine which scratch
19521	register to use.
19522
195232002-07-10  J"orn Rennecke <joern.rennecke@superh.com>
19524
19525	* cse.c (cse_insn): Supply proper SUBREG_BYTE to simplify_gen_subreg.
19526	Get mode from dest.
19527	If simplify_gen_subreg fails, try next equivalent.
19528
195292002-07-09  Gabriel Dos Reis  <gdr@codesourcery.com>
19530
19531	* diagnostic.h: #include location.h
19532	(location_t): Move definition to..
19533	* location.h: ... here.  New file.
19534	* tree.h: #include location.h
19535	(DECL_SOURCE_LOCATION): New macro.
19536	(DECL_SOURCE_FILE): Use.
19537	(DECL_SOURCE_LINE): Likewise.
19538	(struct tree_decl): REplace filename and linenum with locus.
19539	* Makefile.in (TREE_H): add location.h
19540	(diagnostic.o): Depends on gt-location.h
19541	(gt-location.h): Depends on s-gtype
19542
195432002-07-09  Matt Kraai  <kraai@alumni.cmu.edu>
19544
19545	* config/rs6000/aix.h: Convert CPP_PREDEFINES to
19546	TARGET_OS_CPP_BUILTINS.
19547	* config/rs6000/aix31.h: Likewise.
19548	* config/rs6000/aix41.h: Likewise.
19549	* config/rs6000/aix43.h: Likewise.
19550	* config/rs6000/aix51.h: Likewise.
19551	* config/rs6000/beos.h: Likewise.
19552	* config/rs6000/darwin.h: Likewise.
19553	* config/rs6000/eabi.h: Likewise.
19554	* config/rs6000/eabisim.h: Likewise.
19555	* config/rs6000/linux.h: Likewise.
19556	* config/rs6000/linux64.h: Likewise.
19557	* config/rs6000/lynx.h: Likewise.
19558	* config/rs6000/mach.h: Likewise.
19559	* config/rs6000/rtems.h: Likewise.
19560	* config/rs6000/sysv4.h: Likewise.
19561	* config/rs6000/vxppc.h: Likewise.
19562
195632002-07-09 Devang Patel <dpatel@apple.com>
19564	* objc/objc-act.c (adjust_type_for_id_default): Fix my previous patch.
19565	Do not allow ObjC objects as a parameter type for Objective-C methods.
19566	My previous patch restricted  'struct' also.
19567
195682002-07-09  Neil Booth  <neil@daikokuya.co.uk>
19569
19570	* cpperror.c (cpp_error): Default to directive_line within
19571	directives here.
19572	* cppexp.c (cpp_interpret_integer): Only use traditional
19573	number semantics in directives.
19574	* cpplib.c (prepare_directive_trad): Don't reset pfile->line.
19575	(do_include_common): Similarly.
19576	* cpptrad.c (scan_out_logical_line): Implement accurate
19577	quoting of <> in #include.
19578	* doc/cpp.texi: Update.
19579
195802002-07-09  Stephen Clarke <stephen.clarke@superh.com>
19581			  J"orn Rennecke <joern.rennecke@superh.com>
19582
19583	* sh.c (sh_adjust_cost): Special handling of SHMEDIA code.
19584	* sh.md (attribute issues): Replace with:
19585	(attribute pipe_model).  All users changed.
19586	(attribute type): Change pt / ptabs to pt_media / ptabs_media.
19587	All users changed.
19588	(function units sh5issue, sh5fds): New.
19589	(attribute is_mac_media): New.
19590	(adddi3_media, subdi3_media, divsi3_i1_media, anddi3): Add type.
19591	(andcdi3, iordi3, xordi3, ashldi3_media, lshrdi3_media): Likewise.
19592	(ashrdi3_media, negdi_media, extendsidi2, movqi_media): Likewise.
19593	(movhi_media, shori_media, movv2sf_i, jump_media): Likewise.
19594	(call_media, call_value_media, sibcall_media): Likewise.
19595	(casesi_jump_media, casesi_shift_media, casesi_load_media): Likewise.
19596	(return_media_i, addsf3_media, subsf3_media, mulsf3_media): Likewise.
19597	(mac_media, divsf3_media, floatdisf2, floatsisf2_media): Likewise.
19598	(fix_truncsfdi2, fix_truncsfsi2_media, cmpeqsf_media): Likewise.
19599	(cmpgtsf_media, cmpgesf_media, cmpunsf_media, negsf2_media): Likewise.
19600	(sqrtsf2_media, abssf2_media, adddf3_media, subdf3_media): Likewise.
19601	(muldf3_media, divdf3_media, floatdidf2, floatsidf2_media): Likewise.
19602	(fix_truncdfdi2, fix_truncdfsi2_media, cmpeqdf_media): Likewise.
19603	(cmpgtdf_media, cmpgedf_media,cmpundf_media, negdf2_media): Likewise.
19604	(sqrtdf2_media, absdf2_media, extendsfdf2_media): Likewise.
19605	(truncdfsf2_media): Likewise.
19606	(movsi_media, movsi_media_nofpu, movdi_media): Use new types.
19607	(movdi_media_nofpui, movdf_media, movdf_media_nofpu): Likewise.
19608
196092002-07-09  J"orn Rennecke <joern.rennecke@superh.com>
19610
19611	* sh.h (PREDICATE_CODES): Add general_extend_operand and inqhi_operand.
19612	* sh.c (general_extend_operand, inqhi_operand): New functions.
19613	* sh.md (cmpeqdi_media, cmpgtdi_media, cmpgtudi_media): Collapse
19614	alternatives using 'N' modifier.  Add type.
19615	(adddi3z_media): Likewise.  Enable generator function generation.
19616	(movdicc_false, movdicc_true, addsi3_media, subsi3_media): Use more
19617	exact predicates / constraints.  Add type.
19618	(subsi3): Allow 0 for SHMEDIA.
19619	(udivsi3_i4_media): Use match_operand for input values
19620	rather than hard registers.
19621	(udivsi3 - TARGET_SHMEDIA_FPU case): Don't ferry values
19622	unnecessarily through hard registers.  Keep copies of pseudo
19623	registers outside of the libcall sequence.
19624	(mulsidi3_media, umulsidi3_media): Use more exact predicates.  Add type.
19625	(ashlsi3_media, ashrsi3_media, lshrsi3_media): Likewise.
19626	(zero_extendsidi2, zero_extendhidi2, zero_extendqidi2): Likewise.
19627	(extendhidi2, extendqidi2): Likewise.
19628	(andsi3_compact): Name.
19629	(andcdi3): Enable generator function generation.
19630	(zero_extendhisi2, zero_extendqisi2): Rename to
19631	(zero_extendhisi2_compact, zero_extendqisi2_compact).
19632	(extendhisi2, extendqisi2): Rename to
19633	(extendhisi2_compact, extendqisi2_compact).
19634	(rotldi3, rotldi3_mextr, rotrdi3, rotrdi3_mextr): New patterns.
19635	(loaddi_trunc, zero_extendhisi2, zero_extendhisi2_media): Likewise.
19636	(zero_extendhisi2_media+1, zero_extendqisi2): Likewise.
19637	(zero_extendqisi2_media, extendhisi2, extendhisi2_media): Likewise.
19638	(extendhisi2_media, extendhisi2_media+1, extendqisi2): Likewise.
19639	(extendqisi2_media, extendqisi2_media+1, truncdisi2): Likewise.
19640	(truncdihi2, truncdiqi2, reload_inqi, reload_inhi): Likewise.
19641	(shmedia32_initialize_trampoline_big): Likewise.
19642	(shmedia32_initialize_trampoline_little): Likewise.
19643	(nsb, nsbsi, nsbdi, ffsdi2, ffssi2, byterev): Likewise.
19644	(negdi2): Remove spurious T clobber.
19645	(zero_extendhidi2+1, extendhidi2+1, extendqidi2+1): Handle TRUNCATE.
19646	(movsi_media, movsi_media_nofpu): Remove spurious *k after b.
19647	(movdi_media, movdi_media_nofpu, pt, ptb): Likewise.
19648	(movsi_media_nofpu+2, movhi_media+1): Only do split after reload.
19649	(ic_invalidate_line_media): Write back data cache before invalidating
19650	instruction cache.  Add type.
19651	(movsf_media): Sign-extend when the destination is a general
19652	purpose register.  Add type.
19653	(bgt_media, bge_media, bgtu_media, bgeu_media, blt_media_i): Allow 0.
19654	(casesi_worker_0+1): Only increment ref count for proper label.
19655	(casesi_worker_0+2): Likewise.
19656
196572002-07-09  Mark Mitchell  <mark@codesourcery.com>
19658
19659	* dwarfout.c (dwarfout_init): Warn that DWARF1 is deprecated.
19660
196612002-07-09  Steve Ellcey  <sje@cup.hp.com>
19662
19663	* gcc/except.c (expand_eh_region_end_cleanup): Change exception pointer
19664	from Pmode to ptr_mode.
19665	(get_exception_pointer): Ditto.
19666	(connect_post_landing_pads): Ditto.
19667	(dw2_build_landing_pads): Ditto.
19668
196692002-07-08  Steve Ellcey  <sje@cup.hp.com>
19670	* gcc/c-pragma.h (add_to_renaming_pragma_list): New function.
19671	* gcc/c-pragma.c (add_to_renaming_pragma_list): New function.
19672	(handle_pragma_redefine_extname): Change to use new function.
19673
196742002-07-08  Roger Sayle  <roger@eyesopen.com>
19675
19676	* combine.c (combine_simplify_rtx): Add an explicit cast
19677	to avoid signed/unsigned comparison warning.
19678	(simplify_if_then_else): Likewise.
19679	(extended_count): Likewise.
19680	(simplify_shift_const): Likewise.
19681	(simplify_comparison): Likewise.
19682
196832002-07-08  Richard Sandiford  <rsandifo@redhat.com>
19684
19685	* config/mips/mips.md: Add imadd type.  Update scheduler description
19686	to use imadd as well as imul.
19687	(*mul_acc_si, *madsi): Change imul alternatives to imadd.
19688	(*mul_acc_di, *mul_acc_64bit_di): Likewise.
19689	(*mul_sub_si): Likewise for first alternative.  Change second
19690	alternative from imul to multi.
19691
196922002-07-07  Neil Booth  <neil@daikokuya.co.uk>
19693
19694	* c-common.c (c_common_post_options): Update prototype;
19695	don't init backends if preprocessing only.
19696	* langhooks-def.h (LANG_HOOKS_POST_OPTIONS): Update.
19697	* langhooks.h (struct lang_hooks): Update post_options to
19698	return a boolean.
19699	* toplev.c (parse_options_and_default_flags, do_compile,
19700	lang_independent_init): Update prototypes.  Allow the
19701	front end to specify that there is no need to initialize
19702	the back end.
19703	(general_init): Move call to hex_init here...
19704	(toplev_main): ...from here.  Pass flag for back end init
19705	suppression.
19706
197072002-07-07  J"orn Rennecke <joern.rennecke@superh.com>
19708
19709	* sh.h (PRINT_OPERAND_PUNCT_VALID_P): Allow '\''.
19710	(PREDICATE_CODES): Add entries for equality_comparison_operator,
19711	greater_comparison_operator and less_comparison_operator.
19712	* sh.c (print_operand): Add '\'' code.  Make 'o' handle
19713	more operators.
19714	(equality_comparison_operator): New function.
19715	(greater_comparison_operator, less_comparison_operator): Likewise.
19716	* sh.md (beq_media_i): Disable generator function generation.
19717	Use match_operator to handle a whole class of comparisons.  Add
19718	modifier in output template to provide branch prediction.  Add type.
19719	(bgt_media_i, ble_media_i): Likewise.  Allow zero operands.
19720	(bne_media_i, bge_media_i, bgtu_media_i, bgeu_media_i): Delete.
19721	(blt_media_i, bleu_media_i, bltu_media_i): Likewise.
19722	(bgt, blt, ble, bge, bgtu, bltu, bgeu, bleu): Allow zero operands.
19723
197242002-07-07  Hans-Peter Nilsson  <hp@bitrange.com>
19725
19726	Emit MMIX function prologue and epilogue as rtl.
19727	* config/mmix/mmix.md ("call"): Use mmix_get_hard_reg_initial_val,
19728	not unprototyped get_hard_reg_initial_val.
19729	("call_value", "nonlocal_goto_receiver"): Ditto.
19730	("return"): Make define_expand.  Move real insn to...
19731	("*expanded_return"): New pattern.
19732	("prologue", "epilogue"): New define_expands.
19733	* config/mmix/mmix.h (MMIX_rO_REGNUM): New macro.
19734	(struct machine_function): New member in_prologue.
19735	(FIRST_PSEUDO_REGISTER): Adjust for including rO as register.
19736	(FIXED_REGISTERS, CALL_USED_REGISTERS): Ditto.
19737	(MMIX_MMIXWARE_ABI_REG_ALLOC_ORDER): Ditto.
19738	(MMIX_GNU_ABI_REG_ALLOC_ORDER, REG_CLASS_CONTENTS): Ditto.
19739	(REGISTER_NAMES, ADDITIONAL_REGISTER_NAMES): Ditto.
19740	(LOCAL_REGNO): Define.  Adjust comment.
19741	* config/mmix/mmix.c (MMIX_CFUN_NEEDS_SAVED_EH_RETURN_ADDRESS):
19742	Consider regs_ever_live[MMIX_rJ_REGNUM], not just
19743	leaf_function_p.
19744	(MMIX_OUTPUT_REGNO): Don't translate registers while outputting
19745	the prologue.
19746	(mmix_target_asm_function_prologue): Make static.  Just mark that
19747	the prologue is being emitted.  Move guts to...
19748	(mmix_expand_prologue): New function.  Adjust for emitting
19749	prologue as rtl.  For sizes, use HOST_WIDE_INT only.
19750	(mmix_target_asm_function_epilogue): Make static.  Simply emit a
19751	\n.  Move guts to...
19752	(mmix_expand_epilogue): New function.  Adjust for emitting
19753	epilogue as rtl.  For sizes, use HOST_WIDE_INT only.
19754	(mmix_target_asm_function_end_prologue): Mark that the prologue
19755	has ended.
19756	(TARGET_ASM_FUNCTION_END_PROLOGUE): Define.
19757	(mmix_conditional_register_usage): Improve comments.
19758	(mmix_local_regno): New function.
19759	(mmix_emit_sp_add, mmix_get_hard_reg_initial_val): Ditto.
19760	* config/mmix/mmix-protos.h (mmix_local_regno): Prototype.
19761	(mmix_expand_prologue, mmix_expand_epilogue): Ditto.
19762	(mmix_get_hard_reg_initial_val): Ditto.
19763
197642002-07-06  Andreas Jaeger  <aj@suse.de>
19765
19766	* toplev.c (set_fast_math_flags): Don't use ISO C style function
19767	definitions.
19768	* gengtype.c (open_base_files): Likewise.
19769	(close_output_files): Likewise.
19770	* tracer.c (find_best_predecessor): Likewise.
19771	(find_best_successor): Likewise.
19772	(ignore_bb_p): Likewise.
19773
197742002-07-05  Roger Sayle  <roger@eyesopen.com>
19775
19776	PR c++/7099
19777	* builtin-attrs.def: Define new attribute lists for use in
19778	builtins.def.
19779	* builtins.def [DEF_BUILTIN]: Modify to take an additional
19780	ATTRS argument, an enumerated value defined in builtin-attrs.def
19781	that represents the attribute list for the builtins.  Modify
19782	all builtin functions to pass an appropriate attribute list.
19783	Specify "abort", "exit", "_exit" and "_Exit" builtins here with
19784	their required noreturn attributes.
19785	* tree.h (enum_builtin_function): Ignore the additional parameter
19786	to DEF_BUILTIN.
19787	* builtins.c (built_in_names): Likewise.
19788	* c-common.c: (builtin_function_2): Replace the "int noreturn_p"
19789	argument with a tree representing the functions attribute list.
19790	Pass this "attrs" argument to builtin_function.  No longer handle
19791	the noreturn_p processing manually.
19792	(built_in_attributes): Move the definitions from builtin-attrs.def
19793	before c_common_nodes_and_builtins.
19794	(c_common_nodes_and_builtins): Handle the new ATTRS parameter in
19795	DEF_BUILTIN, passing it to both builtin_function and the changed
19796	builtin_function_2.
19797
19798	* doc/extend.texi: Document __builtin_abort, __builtin_exit,
19799	__builtin__exit and __builtin__Exit.
19800
198012002-07-05  Stephane Carrez  <stcarrez@nerim.fr>
19802
19803	* config/m68hc11/m68hc11.md ("*movqi_68hc12"): Avoid allocating
19804	QI mode registers in soft registers.
19805	("zero_extendqihi2"): Do not take into account soft registers
19806	for register allocation (use '*' constraint).
19807
198082002-07-05  Stephane Carrez  <stcarrez@nerim.fr>
19809
19810	* config/m68hc11/m68hc11.md ("*ashlsi3"): Avoid saving y if we know
19811	it is dead.
19812	("*ashrsi3"): Likewise.
19813	("*lshrsi3"): Likewise.
19814
198152002-07-05  Vladimir Makarov  <vmakarov@redhat.com>
19816
19817	* genautomata.c (output_max_insn_queue_index_def): Take latencies
19818	into account.
19819
198202002-07-05  Stephane Carrez  <stcarrez@nerim.fr>
19821
19822	* config/m68hc11/m68hc11.md (peephole2): New peephole2 to optimize
19823	address computation and memory moves.
19824
198252002-07-03  Mark Mitchell  <mark@codesourcery.com>
19826
19827	PR c++/6706
19828	* dwarfout.c (output_reg_number): Fix warning message.
19829	(output_bound_representation): Check SAVE_EXPR_RTL is not NULL
19830	before using it.
19831
198322002-07-05  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
19833
19834	* gcc/gcc.c (asm_debug): Move initialization ...
19835	(init_spec): ... here.
19836
198372002-07-05  Nathan Sidwell  <nathan@codesourcery.com>
19838
19839	* c-parse.in (extdef): Append ';'.
19840	(old_style_parm_decls): Append ';'.
19841
198422002-07-04  Daniel Jacobowitz  <drow@mvista.com>
19843
19844	* configure.in: Correct typos: gcc_cv_as_gdwarf2_debug_flag to
19845	gcc_cv_as_gdwarf2_flag and gcc_cv_as_gstabs_debug_flag
19846	to gcc_cv_as_gstabs_flag.
19847	* configure: Rebuilt.
19848
198492002-07-04  Geoffrey Keating  <geoffk@redhat.com>
19850
19851	* ggc.h (ggc_add_root): Document as obsolete.
19852
198532002-07-04  J"orn Rennecke <joern.rennecke@superh.com>
19854
19855	* sh.md (mshfhi_b, mshflo_b, mshfhi_l, mshflo_l, mshfhi_w): Add DONE.
19856	(mshflo_w): Likewise.
19857
198582002-07-04  J"orn Rennecke <joern.rennecke@superh.com>
19859
19860	* simplify-rtx.c (simplify_subreg): Reduce problem of finding
19861	vector mode subregs of constants to finding integer mode
19862	subregs of constants.
19863	* cse.c (cse_insn): Use simplify_gen_subreg.
19864	* convert.c (convert_to_integer): Don't strip a NOP_EXPR
19865	From a vector mode expression of different size than the
19866	target mode.
19867
198682002-07-03  Eric Christopher  <echristo@redhat.com>
19869
19870	* config/mips/linux.h: Add #undef for SUBTARGET_CPP_SPEC.
19871	* config/mips/mips.h: Remove deprecated -m<processor> options
19872	and cc1_cpu_spec associated.
19873	(CONSTANT_ADDRESS_P): Fix last patch.
19874	(ASM_DECLARE_FUNCTION_NAME): Declare. Fix comment.
19875	* config/mips/mips.md (bungt, bunge, sungt_df, sungt_sf, sunge_df,
19876	sunge_sf): Remove.
19877
198782002-07-03  Stan Shebs  <shebs@apple.com>
19879
19880	* config/darwin.h (APPLE_CC): Remove, not meaningful in FSF GCC.
19881	(STRINGIFY_THIS, REALLY_STRINGIFY): Remove.
19882	(CPP_SPEC): Remove insertion of APPLE_CC definition.
19883
198842002-07-03  Roger Sayle  <roger@eyesopen.com>
19885
19886	* combine.c (struct_undo): Change types of recorded substitutions
19887	to be either "int" or "rtx", instead of "unsigned int" and "rtx".
19888	(do_SUBST_INT): Change types of the substitution from unsigned int
19889	to int, to avoid compilation warning from SUBST_INT's only caller.
19890
19891	(make_extraction): Add cast to avoid compilation warning.
19892	(force_to_mode): Remove cast to avoid compilation warning.
19893
198942002-07-03  Eric Botcazou  <ebotcazou@multimania.com>
19895	    Jeff Law  <law@redhat.com>
19896
19897	* i386.md (length_immediate attribute): Fix typo.
19898	(length_address attribute): Likewise.
19899	(modrm attribute): Set it to 0 for immediate call instructions.
19900	(jcc_1 pattern): Set modrm attribute to 0.
19901	(jcc_2 pattern ): Likewise.
19902	(jump pattern): Likewise.
19903	(doloop_end_internal pattern): Explicitly set length.
19904	(leave pattern): Fix typo.
19905	(leave_rex64 pattern): Likewise.
19906
199072002-07-03  David Edelsohn  <edelsohn@gnu.org>
19908
19909	* config/rs6000/rs6000.md (fix_truncdfsi2_internal): Ignore DImode
19910	in FPR as preference.
19911	(fctiwz): Same.
19912	(floatdidf2, fix_truncdfdi2): Same.
19913	(floatdisf2, floatditf2, fix_trunctfdi2): Same.
19914	(floatditf2): Same.
19915	(floatsitf2, fix_trunctfsi2): SImode in GPR.
19916	(ctrdi): Remove FPR alternative and splitter.
19917
199182002-07-03  Will Cohen  <wcohen@redhat.com>
19919
19920	* config/i386/i386.c (x86_integer_DFmode_moves): Disable for PPro.
19921
199222002-07-03  J"orn Rennecke <joern.rennecke@superh.com>
19923
19924	* optabs.c (expand_vector_binop): Don't store using a SUBREG smaller
19925	than UNITS_PER_WORD, unless this is little endian and the first unit
19926	in this word.  Let extract_bit_field decide how to load an element.
19927	Force arguments to matching mode.
19928	(expand_vector_unop): Likewise.
19929
19930	* simplify-rtx.c (simplify_subreg): Don't assume that all vectors
19931	consist of word_mode elements.
19932	* c-typeck.c (build_binary_op): Allow vector types for BIT_AND_EXPR,
19933	BIT_ANDTC_EXPR, BIT_IOR_EXPR and BIT_XOR_EXPR.
19934	(build_unary_op): Allow vector types for BIT_NOT_EPR.
19935	* emit-rtl.c (gen_lowpart_common): Use simplify_gen_subreg for
19936	CONST_VECTOR.
19937	* optabs.c (expand_vector_binop): Try to perform operation in
19938	smaller vector modes with same inner size.  Add handling of AND, IOR
19939	and XOR.  Reject expansion to inner-mode sized scalars when using
19940	OPTAB_DIRECT.  Use simplify_gen_subreg on constants.
19941	(expand_vector_unop): Try to perform operation in smaller vector
19942	modes with same inner size.  Add handling of one's complement.
19943	When there is no vector negate operation, try a vector subtract
19944	operation.  Use simplify_gen_subreg on constants.
19945	* simplify-rtx.c (simplify_subreg): Add capability to convert vector
19946	constants into smaller vectors with same inner mode, and to
19947	integer CONST_DOUBLEs.
19948
199492002-07-02  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
19950
19951	* c-parse.in (parsing_iso_function_signature): New variable.
19952	(extdef_1): New, copied from...
19953	(extdef): ... here.  Reset parsing_iso_function_signature.
19954	(old_style_parm_decls):  Reset parsing_iso_function_signature.
19955	(old_style_parm_decls_1): New, copied from old_style_parm_decls.
19956	Warn about ISO C style function definitions.
19957	(nested_function, notype_nested_function): Reset
19958	parsing_iso_function_signature.
19959	(parmlist_2): Set parsing_iso_function_signature.
19960
19961	* doc/invoke.texi (-Wtraditional): Document new behavior.
19962
199632002-07-02  Chris Demetriou  <cgd@broadcom.com>
19964
19965	* config.gcc (mips*el-*-*): Use tm_defines to set
19966	TARGET_ENDIAN_DEFAULT, rather than including mips/little.h.
19967	* config/mips/little.h: Remove.
19968
199692002-07-02 Devang Patel <dpatel@apple.com>
19970
19971	* objc/objc-act.c (adjust_type_for_id_default): Do not allow an
19972	object as parameter. Prevent something like 'NSObject' to be
19973	used as the type for a method argument.
19974
199752002-07-03  Neil Booth  <neil@daikokuya.co.uk>
19976
19977	* cpptrad.c: Update comment.
19978
199792002-07-02  Neil Booth  <neil@daikokuya.co.uk>
19980
19981	* doc/cpp.texi: Update for traditional preprocessing changes.
19982	* goc/cppopts.texi: Similarly.
19983
199842002-07-02  Ziemowit Laski  <zlaski@apple.com>
19985
19986	* c-parse.in (designator): Enable designated initializers if ObjC.
19987	(objcmessageexpr): Remove references to objc_receiver_context.
19988	* objc/objc-act.h (objc_receiver_context): Remove decl.
19989	* objc/objc-act.c (objc_receiver_context): Remove.
19990	(lookup_objc_ivar): Test objc_method_context instead of
19991	objc_receiver_context.
19992
199932002-07-02  J"orn Rennecke <joern.rennecke@superh.com>
19994
19995	* sh.c (print_operand, case 'N'): Allow zero vector.
19996	(arith_reg_or_0_operand): Likewise.
19997	(zero_vec_operand): Check for CONST_VECTOR, not PARALLEL.
19998	* sh.h (CONST_COSTS): 0 has 0 cost.  Check OUTER_CODE for
19999	IOR, XOR, PLUS and SET and take their respective constant
20000	ranges into account.
20001	(PREDICATE_CODES, arith_reg_or_0_operand): Can be CONST_VECTOR.
20002	* sh.md (subdi3, subdi3_media): Allow zero operand.
20003	(movv8qi_i+3): Only vector that is not split is the zero vector.
20004	Fix operand 3 to simplify_subreg.
20005	(movv2si_i): Split alternative 1.
20006	(mshfhi_l_di_rev+1): New splitter.
20007
200082002-07-02  Neil Booth  <neil@daikokuya.co.uk>
20009
20010	PR preprocessor/7029
20011	* cppinit.c (cpp_handle_option):  Suppress warnings with an
20012	implicit "-w" for "-M" and "-MM".
20013	* doc/cppopts.texi: Update.
20014
200152002-07-01  Roger Sayle  <roger@eyesopen.com>
20016
20017	* config/sh/sh.c (sh_media_init_builtins): Change use of poisoned
20018	identifier "bzero" to "memset".  Pass extra NULL_TREE argument to
20019	builtin_function.
20020
200212002-07-02  Alan Modra  <amodra@bigpond.net.au>
20022
20023	* README.Portability: Fix typos.
20024
200252002-07-01  Hans-Peter Nilsson  <hp@axis.com>
20026
20027	PR target/7177
20028	* config/cris/cris.h (LEGITIMIZE_RELOAD_ADDRESS): Correct number
20029	of indirections for register inside sign-extended mem part.
20030
200312002-07-01  Roger Sayle  <roger@eyesopen.com>
20032
20033	* tree.h:  Modify builtin_function interface to take an extra
20034	argument ATTRS, which is a tree representing an attribute list.
20035
20036	* c-decl.c (builtin_function): Accept additional parameter.
20037	* objc/objc-act.c (builtin_function): Likewise.
20038	* f/com.c (builtin_function): Likewise.
20039	* java/decl.c (builtin_function): Likewise.
20040	* ada/utils.c (builtin_function): Likewise.
20041	* cp/decl.c (builtin_function): Likewise.
20042	(builtin_function_1): Likewise.
20043
20044	* c-common.c (c_common_nodes_and_builtins): Pass an additional
20045	NULL_TREE argument to builtin_function.  (builtin_function_2):
20046	Likewise.
20047	* cp/call.c (build_java_interface_fn_ref): Likewise.
20048	* objc/objc-act.c (synth_module_prologue): Likewise.
20049	* java/decl.c (java_init_decl_processing): Likewise.
20050	* f/com.c (ffe_com_init_0): Likewise.
20051
20052	* config/alpha/alpha.c (alpha_init_builtins): Pass an additional
20053	NULL_TREE argument to builtin_function.
20054	* config/arm/arm.c (def_builtin): Likewise.
20055	* config/c4x/c4x.c (c4x_init_builtins): Likewise.
20056	* config/i386/i386.c (def_builtin): Likewise.
20057	* config/ia64/ia64.c (def_builtin): Likewise.
20058	* config/rs6000/rs6000.c (def_builtin): Likewise.
20059
200602002-07-01  Zack Weinberg  <zack@codesourcery.com>
20061
20062	* config/ip2k/t-ip2k: Remove LIBGCC1, CROSS_LIBGCC1, and LIBGCC1_TEST.
20063	* config/mips/t-isa3264: Likewise.
20064	* config/mmix/t-mmix: Likewise.
20065
200662002-07-01  John David Anglin  <dave@hiauly1.hia.nrc.ca>
20067
20068	* emit-rtl.c (init_emit_once): Add missing cast to HOST_WIDE_INT.
20069
200702002-07-01  Roger Sayle  <roger@eyesopen.com>
20071
20072	PR opt/4046
20073	* fold-const.c (fold) [COND_EXPR]: Simplify A ? 0 : 1 to !A,
20074	A ? B : 0 to A && B and A ? B : 1 into !A || B if both A and
20075	B are truth values.
20076
200772002-07-01  Nathanael Nerode  <neroden@gcc.gnu.org>
20078
20079	* config/mmix/t-mmix: Eliminate last reference to LIBGCC1_TEST.
20080
200812002-07-01  Matt Kraai  <kraai@alumni.cmu.edu>
20082
20083	* README.Portability (Function prototypes): Give an example of
20084	declaring and defining a function with no arguments.
20085
20086	* README.Portability (Function prototypes): Document new
20087	variable-argument function macros.
20088
200892002-07-01  J"orn Rennecke <joern.rennecke@superh.com>
20090
20091	* sh.c (langhooks.h): Include.
20092	(sh_init_builtins, sh_media_init_builtins): New functions.
20093	(sh_expand_builtin, arith_reg_dest,and_operand): Likewise.
20094	(mextr_bit_offset, extend_reg_operand, zero_vec_operand): Likewise.
20095	(sh_rep_vec, sh_1el_vec, sh_const_vec): Likewise.
20096	(builtin_description): New struct tag.
20097	(signature_args, bdesc): New arrays.
20098	(TARGET_INIT_BUILTINS, TARGET_EXPAND_BUILTIN): Undef / define.
20099	(print_operand): Add 'N' modifier.
20100	* sh.h (VECTOR_MODE_SUPPORTED_P): Add SHmedia vector modes.
20101	(EXTRA_CONSTRAINT_U, EXTRA_CONSTRAINT_W): New macros.
20102	(EXTRA_CONSTRAINT): Add 'U' and 'W' cases.
20103	(CONST_COSTS): Add special case for SHmedia AND.
20104	(PREDICATE_CODES): Add and_operand, arith_reg_dest,
20105	extend_reg_operand, extend_reg_or_0_operand, mextr_bit_offset,
20106	sh_const_vec, sh_1el_vec, sh_rep_vec, zero_vec_operand.
20107	target_operand can also be const or unspec.
20108	* sh.md (UNSPEC_INIT_TRAMP, UNSPEC_FCOSA UNSPEC_FSRRA): New constants.
20109	(UNSPEC_FSINA, UNSPEC_NSB, UNSPEC_ALLOCO): Likewise.
20110	(attribute type): Add new types.
20111	(anddi3): Add splitter.
20112	(movdi_const_16bit+1): Add code to handle vector constants and
20113	bitmasks efficiently.
20114	(shori_media): Have generator function made.
20115	(movv8qi, movv8qi_i, movv8qi_i+1, movv8qi_i+2): New patterns.
20116	(movv8qi_i+3, movv2hi, movv2hi_i, movv4hi, movv4hi_i): Likewise.
20117	(movv2si, movv2si_i, absv2si2, absv4hi2, addv2si3, addv4hi3): Likewise.
20118	(ssaddv2si3, usaddv8qi3, ssaddv4hi3, negcmpeqv8qi): Likewise.
20119	(negcmpeqv2si, negcmpeqv4hi, negcmpgtuv8qi, negcmpgtv2si): Likewise.
20120	(negcmpgtv4hi, mcmv, mcnvs_lw, mcnvs_wb, mcnvs_wub): Likewise.
20121	(mextr_rl, mextr_lr, mextr1, mextr2, mextr3, mextr4, mextr5): Likewise.
20122	(mextr6, mextr7, mmacfx_wl, mmacfx_wl_i, mmacnfx_wl): Likewise.
20123	(mmacnfx_wl_i, mulv2si3, mulv4hi3, mmulfx_l, mmulfx_w): Likewise.
20124	(mmulfxrp_w, mmulhi_wl, mmullo_wl, mmul23_wl, mmul01_wl): Likewise.
20125	(mmulsum_wq, mmulsum_wq_i, mperm_w, mperm_w_little): LIkewise.
20126	(mperm_w_big, mperm_w0, msad_ubq, msad_ubq_i, mshalds_l): Likewise.
20127	(mshalds_w, ashrv2si3, ashrv4hi3, mshards_q, mshfhi_b): Likewise.
20128	(mshflo_b,  mshf4_b, mshf0_b, mshfhi_l, mshflo_l, mshf4_l): Likewsie.
20129	(mshf0_l, mshfhi_w, mshflo_w, mshf4_w, mshf0_w, mshfhi_l_di): Likewise.
20130	(mshfhi_l_di_rev, mshflo_l_di, mshflo_l_di_rev): Likewise.
20131	(mshflo_l_di_x, mshflo_l_di_x_rev, ashlv2si3, ashlv4hi3): Likewise.
20132	(lshrv2si3, lshrv4hi3, subv2si3, subv4hi3, sssubv2si3): Likewise.
20133	(ussubv8qi3, sssubv4hi3, fcosa_s, fsina_s, fipr, fsrra_s): Likewise.
20134	(ftrv): Likewise.
20135
20136	(fpu_switch+1, fpu_switch+2): Remove constraint.
20137
201382002-07-01  Aldy Hernandez  <aldyh@redhat.com>
20139
20140	* tree.c (build_function_type_list): Update function comment.
20141	Rename first argument to return_type.
20142
201432002-07-01  Neil Booth  <neil@daikokuya.co.uk>
20144
20145	* Makefile.in: Remove all trace of tradcpp.c, tradcpp.h,
20146	tradcif.y and related files.
20147
201482002-07-01  Neil Booth  <neil@daikokuya.co.uk>
20149
20150	* cpptrad.c (skip_whitespace): Pass pointer to prior char.
20151
201522002-07-01  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
20153
20154	* mips.h (FUNCTION_ARG_REGNO_P): Fix parentheses.
20155
20156See ChangeLog.7 for earlier changes.
20157
20158