OSDN Git Service

* dependence.c : Removed.
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
1 2002-10-19  Sebastian Pop  <s.pop@laposte.net>
2
3         * dependence.c : Removed.
4         * Makefile.in : Remove dependence.o.
5
6 Sat Oct 19 10:46:52 CEST 2002  Jan Hubicka  <jh@suse.cz>
7
8         * mmintrin.h (__m64): typedef it to v2si.
9         (_mm_cvtsi32_si64, _mm_cvtsi32_si64_mm_sll_pi16,
10         _mm_sll_pi32, _mm_sll_pi64, _mm_slli_pi64, _mm_sra_pi16,
11         _mm_sra_pi32, _mm_srl_pi16, _mm_srl_pi32, _mm_srl_pi64,
12         _mm_srli_pi64, _mm_and_si64, _mm_andnot_si64,
13         _mm_or_si64, _mm_xor_si64): Add neccesary casts.
14         * xmmintrin.h (_mm_setzero_si64): Likewise.
15
16         * i386.h (ALIGN_MODE_128): Update comment; add missing modes
17         (SSE_REG_MODE_P, MMX_REG_MODE_P): New macros.
18
19         PR target/7693
20         Patch by Shawn Wagner
21         * mmintrin.h: Replace pi64 by si64.
22
23 2002-10-18  David Edelsohn  <edelsohn@gnu.org>
24
25         * rs6000.md (movdf_hardfloat32): Order alternatives consistently.
26         Use length of 4 not *.
27         (movdf_hardfloat64): Same.  Support DFmode moves to/from CTR/LR.
28         (movdf_softfloat64): Likewise.
29         (movdi_internal32): Use length of 4 not *.
30         (movti_power): Same.
31         (ctrsi, ctrdi): Same.
32
33 2002-10-18  Zack Weinberg  <zack@codesourcery.com>
34
35         * c-decl.c (start_decl): Point users of the old initialized-
36         typedef extension at __typeof__.
37
38 2002-10-18  Richard Henderson  <rth@redhat.com>
39
40         * real.c (cmp_significand_0, rtd_divmod, ten_to_mptwo): New.
41         (real_to_decimal): Re-implement using the logic from the
42         gcc 3.2 etoasc.  Comment heavily.
43         (div_significands): Simplify loop startup and comparison logic.
44
45 2002-10-18  Mark Mitchell  <mark@codesourcery.com>
46
47         * target-def.h (TARGET_ASM_OUTPUT_MI_THUNK): Default to NULL.
48         (TARGET_ASM_OUTPUT_MI_VCALL_THUNK): Likewise.
49         (TARGET_ASM_OUT): Add them.
50         * target.h (asm_out): Add output_mi_thunk and
51         output_mi_vcall_thunk.
52         * config/alpha/alpha.h (ASM_OUTPUT_MI_THUNK): Rename to ...
53         (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
54         * config/arm/arm-protos.h (arm_output_mi_thunk): Declare.
55         * config/arm/arm.c (arm_output_mi_thunk): Define.
56         * config/arm/arm.h (ASM_OUTPUT_MI_THUNK): Rename to ...
57         (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
58         * config/cris/cris.h (ASM_OUTPUT_MI_THUNK): Rename to ...
59         (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
60         * config/frv/frv.h (ASM_OUTPUT_MI_THUNK): Rename to ...
61         (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
62         * config/i386/i386-protos.h (x86_output_mi_thunk): Adjust
63         prototype.
64         (x86_output_mi_vcall_thunk): Declare.
65         * config/i386/i386.c (override_options): Clear
66         output_mi_vcall_thunk in 64-bit mode.
67         (ix86_fntype_regparm): New function.
68         (ix86_return_pops_args): Use it.
69         (ia32_this_parameter): New function.
70         (x86_output_mi_vcall_thunk): New function.
71         (x86_output_mi_thunk): Use it
72         * config/i386/unix.h (TARGET_ASM_OUTPUT_MI_THUNK): Adjust.
73         (TARGET_ASM_OUTPUT_MI_VCALL_THUNK): Define.
74         * config/i960/i960-protos.h (i960_output_mi_thunk): Declare.
75         * config/i960/i960.c (i960_output_mi_thunk): New function.
76         * config/i960/i960.h (ASM_OUTPUT_MI_THUNK): Adjust.
77         * config/ia64/ia64-protos.h (ia64_output_mi_thunk): Declare.
78         * config/ia64/ia64.c (ia64_output_mi_thunk): Define.
79         * config/ia64/ia64.h (ASM_OUTPUT_MI_THUNK): Rename to ...
80         (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
81         * config/m68k/m68k-protos.h (m68k_output_mi_thunk): New function.
82         * config/m68k/linux.h (ASM_OUTPUT_MI_THUNK): Rename to ...
83         (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
84         * config/m68k/netbsd-elf.h (ASM_OUTPUT_MI_THUNK): Rename to ...
85         (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
86         * config/mmix/mmix.h (ASM_OUTPUT_MI_THUNK): Rename to ...
87         (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
88         * config/pa/pa.h (ASM_OUTPUT_MI_THUNK): Rename to ...
89         (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
90         * config/rs6000/sysv4.h (ASM_OUTPUT_MI_THUNK): Rename to ...
91         (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
92         * config/s390/s390-protos.h (s390_output_mi_thunk): Declare.
93         * config/s390/s390.c (s390_output_mi_thunk): Define.
94         * config/s390/s390.h (ASM_OUTPUT_MI_THUNK): Rename to ...
95         (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
96         * config/sparc/sparc.h (ASM_OUTPUT_MI_THUNK): Rename to ...
97         (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
98         * config/stormy16/stormy16.h (ASM_OUTPUT_MI_THUNK): Rename to ...
99         (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
100         * config/vax/vax-protos.h (vax_output_mi_thunk): Declare.
101         * config/vax/vax.c (vax_output_mi_thunk): Define.
102         * config/vax/vax.h (ASM_OUTPUT_MI_THUNK): Rename to ...
103         (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
104         * doc/tm.texi: Adjust documentation.
105
106 2002-10-18  Jason Thorpe  <thorpej@wasabisystems.com>
107
108         * config/netbsd.h (NETBSD_ENABLE_EXECUTE_STACK): Define
109         __enable_execute_stack function.
110         * config/alpha/netbsd.h (TRANSFER_FROM_TRAMPOLINE): Define
111         as NETBSD_ENABLE_EXECUTE_STACK.
112         * config/i386/netbsd-elf.h (TRANSFER_FROM_TRAMPOLINE): Ditto.
113         * config/i386/netbsd.h (TRANSFER_FROM_TRAMPOLINE): Ditto.
114         * config/i386/netbsd64.h (TRANSFER_FROM_TRAMPOLINE): Ditto.
115         * config/sparc/netbsd-elf.h (TRANSFER_FROM_TRAMPOLINE): Ditto.
116         * config/sparc/netbsd.h (TRANSFER_FROM_TRAMPOLINE): Ditto.
117
118 2002-10-18  Jason Thorpe  <thorpej@wasabisystems.com>
119
120         * config/i386/i386.c (x86_initialize_trampoline): Emit a call
121         to __enable_execute_stack with the address of the trampoline
122         if TRANSFER_FROM_TRAMPOLINE is defined.
123         * config/i386/i386.h (TARGET_64BIT): Expand to a compile-time
124         constant if building libgcc2.
125
126 2002-10-17  Roger Sayle  <roger@eyesopen.com>
127
128         * doc/c-tree.texi: Update description of COND_EXPR tree nodes.
129
130 2002-10-17  Geoffrey Keating  <geoffk@apple.com>
131
132         * config/rs6000/rs6000.h (HARD_REGNO_MODE_OK): Allow arbitrary modes
133         in CTR/LR/MQ.
134         * config/rs6000/rs6000.md (movcc_internal1): Support CCmode moves
135         to/from CTR/LR/MQ.
136         (movsf_hardfloat): Support SFmode moves to/from CTR/LR/MQ.
137         (movsf_softfloat): Likewise.
138
139 2002-10-17  Janis Johnson  <janis187@us.ibm.com>
140
141         * Makefile.in (site.exp): Add ALT_CXX_UNDER_TEST and COMPAT_OPTIONS.
142
143 2002-10-17  Jason Thorpe  <thorpej@wasabisystems.com>
144
145         * config/alpha/alpha.c (alpha_initialize_trampoline): Use
146         tramp, not addr, to pass the trampoline address to
147         __enable_execute_stack.
148
149 Thu Oct 17 18:40:47 CEST 2002  Jan Hubicka  <jh@suse.cz>
150
151         * mmintrin.h: Guard by __MMX__
152         * xmmintrin.h: Guard by __SSE__
153
154         PR other/8062
155         * xmmintrin.h (_MM_SHUFFLE2): New macro.
156         (_mm_load*_?d): New functions.
157         (_mm_set*_?d): New functions.
158         (_mm_store*_?d): New functions.
159
160 Wed Oct 16 15:01:29 CEST 2002  Jan Hubicka  <jh@suse.cz>
161
162         Really commit patch announced at Oct 14
163         PR c/7344
164         * predict.c (can_predict_insn_p): New function.
165         (estimate_probability): Avoid unnecesary work.
166         (process_note_prediction): Likewise.
167         * toplev.c (rest_of_compilation): Account early branch prediction pass
168         as TV_BRANCH_PROB.
169
170         PR other/8048
171         Found by Ian Ollmann
172         * xmmintrin.h (_mm_shuffle_pd): Fix typo.
173         (_mm_load?_pd): Likewise.
174         (_mm_store?_pd): Likewise.
175
176         PR target/7386
177         * i386.c (builtin_description):Drop cmpg[te]s[sd].
178         * xmmintrin.h (__mm_cmpg[te]_s[sd]): Rewrite using
179         swapped alternative.
180
181         PR opt/7630
182         * reload1.c (reload_inner_reg_of_subreg): New argument output;
183         (push_reload): Update call.
184
185 2002-10-17  Richard Sandiford  <rsandifo@redhat.com>
186
187         * config.gcc (mips*-*-*): Add OBJECT_FORMAT_ELF to $tm_defines
188         if using mips/elf.h or mips/elf64.h.
189         * config/mips/elf.h (OBJECT_FORMAT_ELF): Remove.
190         * config/mips/elf64.h (OBJECT_FORMAT_ELF): Remove.
191
192 2002-10-16  Aldy Hernandez  <aldyh@redhat.com>
193
194         * config/rs6000/rs6000.c (function_arg): Set inner mode of V1DI to
195         SI.
196
197 2002-10-16  Ulrich Weigand  <uweigand@de.ibm.com>
198
199         * config/s390/linux.h (ASM_DOUBLE, _ASM_OUTPUT_LONG): Remove.
200         (LPREFIX): Likewise.
201         (ASM_COMMENT_START, LOCAL_LABEL_PREFIX, ASM_FORMAT_PRIVATE_NAME,
202         ASM_OUTPUT_ADDR_VEC_ELT, ASM_OUTPUT_ADDR_DIFF_ELT,
203         ASM_OUTPUT_ALIGN, ASM_OUTPUT_SKIP, ASM_OUTPUT_ALIGNED_BSS,
204         TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP, BSS_SECTION_ASM_OP,
205         GLOBAL_ASM_OP, ASM_OUTPUT_MI_THUNK): Move to s390.h.
206
207         * config/s390/s390.h (ASM_COMMENT_START, LOCAL_LABEL_PREFIX,
208         ASM_FORMAT_PRIVATE_NAME, ASM_OUTPUT_ALIGN, ASM_OUTPUT_SKIP,
209         ASM_OUTPUT_ALIGNED_BSS, TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP,
210         BSS_SECTION_ASM_OP): Move from linux.h.
211         (ASM_OUTPUT_ADDR_VEC_ELT, ASM_OUTPUT_ADDR_DIFF_ELT): Likewise.
212         Also, use ASM_GENERATE_INTERNAL_LABEL instead of LPREFIX.
213
214         * config/s390/s390.c (s390_function_profiler): Use
215         ASM_GENERATE_INTERNAL_LABEL instead of LPREFIX.
216
217 2002-10-15  Richard Henderson  <rth@redhat.com>
218
219         * real.c (real_to_decimal): Accept BUF_SIZE and CROP_TRAILING_ZEROS
220         as arguments.  Bound DIGITS by the available buffer size.
221         (real_to_hexadecimal): Likewise.
222         * real.h (real_to_decimal, real_to_hexadecimal): Update prototypes.
223         (REAL_VALUE_TO_DECIMAL): Remove.
224         * c-common.c, c-pretty-print.c, print-rtl.c, print-tree.c,
225         sched-vis.c, config/arc/arc.c, config/c4x/c4x.c, config/fr30/fr30.c,
226         config/i370/i370.h, config/i386/i386.c, config/i960/i960.c,
227         config/ip2k/ip2k.c, config/m32r/m32r.c, config/m68hc11/m68hc11.c,
228         config/m68k/hp320.h, config/m68k/m68k.h, config/m68k/sun2o4.h,
229         config/m68k/sun3.h, config/mips/mips.c, config/ns32k/ns32k.c,
230         config/pdp11/pdp11.h, config/vax/vax.h: Update all callers to
231         use real_to_decimal directly, and with the proper arguments.
232         * doc/tm.texi (REAL_VALUE_TO_DECIMAL): Remove.
233
234 2002-10-15  Jim Wilson  <wilson@redhat.com>
235
236         * reload1.c (merge_assigned_reloads): After converting overlapping
237         reloads to RELOAD_OTHER, abort if there are now conflicting reloads.
238
239         * config/i386/i386.md (adddi3_1): Add call to ix86_binary_operator_ok.
240
241 Tue Oct 15 22:08:35 CEST 2002  Jan Hubicka  <jh@suse.cz>
242
243         * expr.c (do_tablejump): Fix typo in my previous commit.
244
245 2002-10-15  Richard Sandiford  <rsandifo@redhat.com>
246
247         * config/mips/vr.h (DRIVER_SELF_SPECS): Change %<mgp32 to %{<mgp32}.
248
249 2002-10-15  Ulrich Weigand  <uweigand@de.ibm.com>
250
251         * config/s390/s390.c (s390_split_branches): Add return
252         value.  Add parameters TEMP_REG and TEMP_USED.  Use unspec 104.
253
254         (find_base_register_in_addr): New function.
255         (find_base_register_ref): New function.
256         (replace_base_register_ref): New function.
257
258         (struct constant_pool): Add members pool_insn, insns, and anchor.
259         Remove member last_insn.
260         (s390_start_pool): Initialize them.
261         (s390_end_pool): Emit pool placeholder insn.
262         (s390_add_pool_insn): New function.
263         (s390_find_pool): Use insns bitmap instead of addresses.
264         (s390_dump_pool): Replace placeholder insn.  Emit anchor.
265         Replace unspec 104 by local-pool-relative references.
266         (s390_output_constant_pool): Output anchor label if required.
267         (s390_output_symbolic_const): Handle unspec 104 and 105.
268         (s390_add_pool): Remove, replace by ...
269         (s390_add_constant, s390_find_constant): ... these new functions.
270         (s390_add_anchor): New function.
271
272         (s390_chunkify_pool): Delete, replace by ...
273         (s390_chunkify_start, s390_chunkify_finish,
274         s390_chunkify_cancel): ... these new functions.
275         (s390_optimize_prolog): Add parameter TEMP_REGNO.
276         Recompute register live data for special registers.
277         (s390_fixup_clobbered_return_reg): New function.
278         (s390_machine_dependent_reorg): Rewrite to use new
279         s390_chunkify_... routines.
280
281         config/s390/s390.md ("reload_base"): Rename to ...
282         ("reload_base_31"): ... this.
283         ("reload_base_64"): New insn.
284         ("reload_base2"): Remove.
285         ("reload_anchor"): New insn.
286         ("pool"): New insn.
287
288         s390.c (s390_pool_overflow): Remove.
289         s390.h (s390_pool_overflow): Likewise.
290         s390.md ("cjump", "icjump", "doloop_si"): Remove s390_pool_overflow.
291
292 Tue Oct 15 16:51:04 2002  J"orn Rennecke <joern.rennecke@superh.com>
293
294         * sh.md (movv8qi_i+2): Don't split if source is -1.
295
296 2002-10-15  Janis Johnson  <janis187@us.ibm.com>
297
298         * doc/install.texi: Formatting changes for conformance to HTML 4.01.
299
300 2002-10-15  Ulrich Weigand  <uweigand@de.ibm.com>
301
302         PR opt/7409
303         * loop.c (loop_regs_scan): Mark registers used for function
304         argument passing as MAY_NOT_OPTIMIZE.
305
306 Mon Oct 14 20:33:12 CEST 2002  Jan Hubicka  <jh@suse.cz>
307
308         * i386.md (movv2di_internal): New pattern.
309         (movv2df_internal, movv8hi_internal, movv16qi_internal): Fix predicate.
310         (movv2di): New expander.
311         * i386.c (ix86_preferred_reload_class): Return NO_REGS for vector operands.
312
313         * i386.c (ix86_expand_timode_binop_builtin): Delete.
314         (builtin_description): Add SSE1 logicals; rename SSE2 logicals.
315         (ix86_init_mmx_sse_builtins): Kill SSE1 logicals.
316         (ix86_expand_builtin): Likewise.
317         * i386.h (sse_andti4_df_1, sse_andti3_df_2, sse_andti3_sf_1, sse_andti3_sf_2,
318         sse_andti3,
319         sse_andnti4_df_1, sse_andti3_df_2, sse_andti3_sf_1, sse_andti3_sf_2,
320         sse_andnti3,
321         sse_orti4_df_1, sse_orti3_df_2, sse_orti3_sf_1, sse_orti3_sf_2,
322         sse_orti3,
323         sse_xorti4_df_1, sse_xorti3_df_2, sse_xorti3_sf_1, sse_xorti3_sf_2,
324         sse_xorti3): Kill.
325         (sse_andv4sf3, sse_andnv4sf3, sse_orv2df3, sse_xorv2df3, sse_andv2df3,
326          sse_andnv2df3, sse_orv2df3, sse_xorv2df3): New expanders.
327         (*sse_andv4sf3, *sse_andnv2df3, *sse_orv4sf3, *sse_xorv4sf3, *sse_andv2df3,
328          *sse_andnv2df3, *sse_orv2df3, *sse_xorv2df3): New patterns.
329         (*sse_andsf3, *sse_andndf3, *sse_ordf3, *sse_xordf3, *sse_anddf3,
330          *sse_andndf3, *sse_orv2df3, *sse_xorv2df3): New patterns.
331
332         * xmmintrin.h (__m128i): Define as __v2di.
333
334         PR c++/6419
335         (expand_expr): Use DECL_RTL_SET_P.
336
337 2002-10-14  Roger Sayle  <roger@eyesopen.com>
338
339         * combine.c (simplify_set):  Treat MODE_CC registers like cc0.
340
341 2002-10-14  Roger Sayle  <roger@eyesopen.com>
342             Zack Weinberg <zack@codesourcery.com>
343
344         * config/i386/i386.c (k6_cost): Correct typo.
345
346 2002-10-14  Mark Mitchell  <mark@codesourcery.com>
347
348         PR optimization/6631
349         * alias.c (objects_must_conflict_p): Check honor_readonly when
350         examining TYPE_READONLY.
351         * function.c (assign_stack_temp_for_type): Likewise.
352
353 2002-10-14  Falk Hueffner  <falk.hueffner@student.uni-tuebingen.de>
354
355         * config/alpha/alpha.md (extendsidi2_nofix, extendsidi2_fix):
356         Swap zero extension arguments.
357         (umaxhi3): Fix instruction class.
358         PR target/7211
359         (prefetch): Fix prefetch instructions.
360         PR target/7238
361         (pkwb): Fix output constraint.
362
363 2002-10-14  Alexandre Oliva  <aoliva@redhat.com>
364
365         * config/mips/mips.c (print_operand): Increase buffer size for
366         real numbers.
367
368 2002-10-14  Richard Henderson  <rth@redhat.com>
369
370         PR opt/8165
371         * gcse.c (adjust_libcall_notes): Revert last change.
372         * simplify-rtx.c (simplify_replace_rtx): Handle LO_SUM.
373
374 2002-10-14  Andrew Haley  <aph@redhat.com>
375
376         * tree-inline.c (remap_block): All local class initialization
377         flags go in the outermost scope.
378         (expand_call_inline): Call java_inlining_map_static_initializers.
379         (expand_call_inline): Call java_inlining_merge_static_initializers.
380         * java/lang.c (merge_init_test_initialization): New.
381         (java_inlining_merge_static_initializers): New.
382         (inline_init_test_initialization): New.
383         (java_inlining_map_static_initializers): New.
384
385         * tree-inline.c (expand_call_inline): Convert retvar to expected
386         type.
387
388 2002-10-14  Graham Stott  <graham.stott@btinternet.com>
389
390         * stmt.c (decl_conflicts_with_clobbers_p): Add REG_P check.
391
392 2002-10-14  Aldy Hernandez  <aldyh@redhat.com>
393
394         * stmt.c: Fix typo in comment.
395
396 Mon Oct 14 11:35:49 2002  J"orn Rennecke <joern.rennecke@superh.com>
397
398         * c-common.c (c_common_type_for_mode): Add V2HImode case.
399         * tree.c (build_common_tree_nodes_2): Initialize
400         unsigned_V2HI_type_node and V2HI_type_node.
401         * tree.h (enum tree_index): Add TI_UV2HI_TYPE and TI_V2HI_TYPE.
402         (unsigned_V2HI_type_node, V2HI_type_node): Define.
403
404 2002-10-14  Jakub Jelinek  <jakub@redhat.com>
405
406         * config/i386/i386.h (ASM_OUTPUT_REG_PUSH, ASM_OUTPUT_REG_POP):
407         Handle TARGET_64BIT.
408
409 2002-10-14  Richard Sandiford  <rsandifo@redhat.com>
410
411         * config/mips/vr.h (DRIVER_SELF_SPECS): Define.
412         * config/mips/t-vr (MULTILIB_OPTIONS): Remove mlong32.
413         (MULTILIB_DIRNAMES): Remove long32.
414         (MULTILIB_EXCEPTIONS): Don't build -mabi=32 -mgp32 multilibs.
415         (MULTILIB_REDUNDANT_DIRS): Remove.
416
417 2002-10-14  Richard Sandiford  <rsandifo@redhat.com>
418
419         * doc/tm.texi (DRIVER_SELF_SPECS): Document.
420         * gcc.c (driver_self_specs): New variable.
421         (do_self_spec): New function.
422         (main): Use it to process driver_self_specs.
423
424 2002-10-13  Richard Henderson  <rth@redhat.com>
425
426         * rtl.c (shallow_copy_rtx): Use memcpy for the entire node.
427
428 2002-10-12  Neil Booth  <neil@daikokuya.co.uk>
429
430         PR preprocessor/7862
431         PR preprocessor/8190
432         * gcc.c (cpp_unique_options): Don't delete .d files.
433         Remove stray whitespace.
434
435 2002-10-12  Naohiko Shimizu  <pshimizu@fa2.so-net.ne.jp>
436
437         * pdp11.h (ASM_OUTPUT_SKIP): Add preceding 0 for octal constant.
438         (ASM_OUTPUT_COMMON, ASM_OUTPUT_LOCAL): Likewise.
439         * pdp11.c (pdp11_output_function_prologue): 0%o -> %#o.
440         (pdp11_output_function_epilogue, output_ascii): Likewise.
441         (output_addr_const_pdp11): Likewise.
442         * pdp11.md (movdi): Use offsetable memory for floating store.
443         (lshrsi3, negsi2): Delete irrelevant comment.
444
445 2002-10-11  Geoffrey Keating  <geoffk@apple.com>
446
447         * cse.c (mention_regs): Set SUBREG_TICKED to the register number,
448         not the address of the REG.
449         (struct cse_reg_info): Make subreg_ticked unsigned.
450
451 2002-10-11  Janis Johnson  <janis187@us.ibm.com>
452
453         * doc/compat.texi: Add info about C++ libraries.
454
455 2002-10-11  Richard Henderson  <rth@redhat.com>
456
457         PR opt/8165
458         * gcse.c (adjust_libcall_notes): Also adjust notes for INSN.
459
460 2002-10-11  John David Anglin  <dave@hiauly1.hia.nrc.ca>
461
462         * cfganal.c (dfs_enumerate_from): Use PARAMS.
463         * genautomata.c (output_insn_code_cases): Likewise.
464         * real.c (real_format): Likewise.
465         * tree.c (tree_size): Revise expressions using TREE_CODE_LENGTH to
466         ensure value is promoted before doing subtraction.
467
468 Fri Oct 11 22:22:38 CEST 2002  Jan Hubicka  <jh@suse.cz>
469
470         * calls.c (expand_call): Simplify noreturn call.
471
472         PR c/7344
473         * cfgbuild.c (make_edges): Create edge cache when we do have
474         large jumptable.
475         * expr.c (do_tablejump): Note size of maximal jumptable.
476         * function.c (prepare_function_start): Zero out size.
477         * function.h (function): Add max_jumptable_ents.
478
479         * cfgcleanup.c (insn_match_p): Verify sibcall flag for calls to.
480
481 Fri Oct 11 12:34:33 2002  J"orn Rennecke <joern.rennecke@superh.com>
482
483         * sh.md (movv8qi_i+2): For V8QI destinations, generate V4HI
484         register for mperm_w operation.
485
486 Fri Oct 11 10:56:17 2002  J"orn Rennecke <joern.rennecke@superh.com>
487
488         * emit-rtl.c (gen_lowpart_common): When asked to make a vector from
489         an integer, use simplify_gen_subreg.
490
491 2002-10-10  Aldy Hernandez  <aldyh@redhat.com>
492
493         * extend.texi (Vector Extensions): Remove comment about single
494         element vectors.
495
496 2002-10-10  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
497
498         * fold-const.c (size_htab_hash): Use htab_hash_pointer.
499         * function.c (insns_for_mem_hash): Likewise.
500         * varasm.c (STRHASH): Likewise.
501
502 2002-10-10  Stuart Hastings  <stuart@apple.com>
503
504         * cse.c (struct cse_reg_info): Add subreg_ticked.
505         (SUBREG_TICKED): New.
506         (get_cse_reg_info): Initialize SUBREG_TICKED.
507         (mention_regs): Use it.
508         (invalidate): Set SUBREG_TICKED.
509         (invalidate_for_call): Likewise.
510         (addr_affects_sp_p): Likewise.
511
512 2002-10-10  Jakub Jelinek  <jakub@redhat.com>
513
514         * config/i386/i386.md (tls_local_dynamic_base): Put pic reg
515         into proper operand.
516
517 2002-10-10  Denis Chertykov  <denisc@overta.ru>
518
519         * config/ip2k/ip2k.c (function_epilogue): Optimize stack
520         deallocation.
521         * config/ip2k/libgcc.S: Combine routines used by function
522         epilogue.
523
524 2002-10-10  Jim Wilson  <wilson@redhat.com>
525
526         * cse.c (fold_rtx): Don't perform associative optimization for DIV and
527         UDIV.
528
529 2002-10-10  David Edelsohn  <edelsohn@gnu.org>
530
531         * config/rs6000/aix52.h: New file.
532         * config/rs6000/t-aix52: New File.
533         * config.gcc (rs6000-ibm-aix5.1.*): New entry.
534         (rs6000-ibm-aix[56789].*): Default to AIX 5.2.
535
536 Thu Oct 10 19:37:54 CEST 2002  Jan Hubicka  <jh@suse.cz>
537
538         PR target/5610
539         * invoke.texi (-msse-math): Kill
540         (-msse): Add note to mfpmath=sse.
541
542 Thu Oct 10 17:08:30 CEST 2002  Jan Hubicka  <jh@suse.cz>
543
544         PR target/7723
545         * i386.c (ix86_expand_vector_move): Do not generate const0->mem moves.
546
547 2002-10-10  Neil Booth  <neil@daikokuya.co.uk>
548
549         PR preprocessor/8179
550         * gcc.c (cpp_options): Add {ansi}, move %{m*} to same location
551         as cc1_options.
552         (default_compilers): Pass debug options when preprocessing
553         stdin.
554
555 2002-10-06  Richard Henderson  <rth@redhat.com>
556
557         * toplev.c (rest_of_compilation): Revert opt/2960 change.
558
559 2002-10-09  Zack Weinberg  <zack@codesourcery.com>
560
561         PR c/7353
562         * c-decl.c (start_decl): Unconditionally issue error for
563         'typedef foo = bar'.
564         (finish_decl): Remove special case for TYPE_DECL with initializer.
565
566         * doc/extend.texi: Delete "Naming Types" section.  Change all
567         cross-references to that section to refer to "Typeof" instead.
568         Add the useful safe-max()-macro example from "Naming Types" to
569         "Typeof", rewritten using that extension.  Add some compatibility
570         notes to "Typeof."
571
572 2002-10-09  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
573
574         * loop.c: Revert 2002-08-15 change.
575         (LOOP_REGNO_NREGS): Ensure type is int.
576
577 2002-10-09  David Edelsohn  <edelsohn@gnu.org>
578
579         * config/rs6000/rs6000.md (extenddftf2): Change to define_insn
580         which copies first FPR and clears second.
581         (extendsftf2): Same.
582         (floatditf2): Fix typo.
583         (floatsitf2): Same.
584         (fix_trunctfdi2): Same.
585         (fix_trunctfsi2): Same.
586
587 2002-10-09  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
588
589         * conflict.c (arc_hash): Change return type to hashval_t.
590         * cselib.c (get_value_hash): Likewise.
591         * genautomata.c (automaton_decl_hash, insn_decl_hash, decl_hash,
592         state_hash, automata_list_hash): Likewise.
593         * read-rtl.c (def_hash): Likewise.
594         * tree.c (type_hash_hash): Likewise.
595
596 2002-10-08  Aldy Hernandez  <aldyh@redhat.com>
597
598         * config/rs6000/rs6000.c (rs6000_ra_ever_killed): Call
599         prologue_epilogue_contains instead of using REG_MAYBE_DEAD notes.
600
601 Wed Oct  9 15:54:49 2002  J"orn Rennecke <joern.rennecke@superh.com>
602
603         * sh.md (ffssi2): Fix emitted code.
604
605 2002-10-09  Ulrich Weigand  <uweigand@de.ibm.com>
606
607         * cse.c (insn_live_p): Pass insn pattern, not full insn
608         to may_trap_p.
609
610 2002-10-09  Neil Booth  <neil@daikokuya.co.uk>
611
612         * cppmacro.c (paste_tokens): Only allow / to paste with =.
613
614 2002-10-09  David Edelsohn  <edelsohn@gnu.org>
615
616         * config/rs6000/rs6000.md (movdf splitter): Use gen_int_mode on
617         64-bit hosts.
618         (movtf_internal): Reference correct displacement for second value
619         in memory.
620         (movtf splitter): Correct generation of constants in 64-bit mode.
621
622 2002-10-09  Alan Modra  <amodra@bigpond.net.au>
623
624         * libgcc2.c (__floatdisf): Properly cure double rounding.
625
626 2002-10-09  Gabriel Dos Reis  <gdr@integrable-solutions.net>
627
628         * c-common.c (cb_register_builtins): Define __WCHAR_MAX__.
629         * doc/cpp.texi (Common Predefined Macros): Document.
630
631 2002-10-09  Gabriel Dos Reis  <gdr@integrable-solutions.net>
632
633         PR doc/7484
634         * doc/invoke.texi (Option Summary): List
635         -Wmissing-declarations as a C only option.
636
637 2002-10-08  Jakub Jelinek  <jakub@redhat.com>
638
639         * config/sparc/t-linux64 (MULTILIB_OPTIONS): Remove
640         mno-app-regs|mcmodel=medany.
641         (MULTILIB_DIRNAMES, MULTILIB_OSDIRNAMES): Remove alt.
642         (MULTILIB_EXCEPTIONS, MULTILIB_EXCLUSIONS, MULTILIB_MATCHES): Remove.
643         (CRTSTUFF_T_CFLAGS): Define.
644
645 2002-10-08  Roger Sayle  <roger@eyesopen.com>
646
647         PR target/8087
648         * simplify-rtx.c (avoid_constant_pool_reference):  Allow constant
649         pool references that are constructed using LO_SUM.
650
651 2002-10-08  Nathan Sidwell  <nathan@codesourcery.com>
652
653         * c-opts.c (c_common_decode_option): Add warn_strict_aliasing to
654         -Wall.
655         * c-typeck.c (build_c_cast): Use warn_strict_aliasing, tweak
656         message.
657         * flags.h (warn_strict_aliasing): Declare.
658         * toplev.c (warn_strict_aliasing): Define.
659         (lang_independent_options): Add it.
660         * doc/invoke.texi (-Wstrict-aliasing): Document it.
661
662 2002-10-08  Zack Weinberg  <zack@codesourcery.com>
663
664         * system.h (GCCBUGURL): Delete.
665         * version.c (bug_report_url): New.  Add commentary about
666         modifying both these strings in modified distributions.
667         * version.h: Declare bug_report_url.
668
669         * diagnostic.c, gcc.c, gcov.c: Globally replace GCCBUGURL with
670         bug_report_url.
671
672 2002-10-08  Nick Clifton  <nickc@redhat.com>
673
674         * config/rs6000/spe.h (__ev_set_acc_u64): Use __ev_create_u64 to
675         convert uint64_t into __ev64_opaque__.
676         (__ev_set_acc_s64): Likewise, but using signed types.
677
678 2002-10-08  Ulrich Weigand  <uweigand@de.ibm.com>
679
680         * config/s390/s390.md ("*doloop_si_long"): Add missing operand.
681         ("*doloop_di_long"): Likewise.
682
683 Tue Oct  8 16:50:10 CEST 2002  Jan Hubicka  <jh@suse.cz>
684
685         * print-rtl.c (print_rtx): Increase buffer size for real numbers.
686
687 2002-10-08  Richard Sandiford  <rsandifo@redhat.com>
688
689         * config/mips/mips.md (define_attr cpu): Add r4111.
690
691 2002-10-08  Anthony Green  <green@redhat.com>
692
693         * bitmap.c (bitmap_equal_p): Clear all bitmap_head fields.
694
695 2002-10-08  Michael Hayes  <m.hayes@elec.canterbury.ac.nz>
696
697         * config/c4x/c4x.c (c4x_print_operand): Enlarge buffer
698         for REAL_VALUE_TO_DECIMAL output.
699
700 2002-10-07  David Edelsohn  <edelsohn@gnu.org>
701
702         * config/rs6000/rs6000.c (rs6000_override_options): Set
703         real_format_for_mode for IBM extended format, if enabled.
704         (easy_fp_constant): Add TFmode.
705         (rs6000_legitimize_address): Add TFmode.
706         (rs6000_legitimate_address): Same.
707         (function_arg_advance): TFmode uses two FPRs.
708         (rs6000_emit_prologue): Fix warning.
709         (rs6000_output_function_epilogue): Add TFmode.
710         (output_toc): Add TFmode.
711         * rs6000.h (SLOW_UNALIGNED_ACCESS): Add TFmode.
712         (LEGITIMATE_OFFSET_ADDRESS_P): Add TFmode.
713         * rs6000.md (movtf splitter): Load TFmode constant.
714
715 2002-10-07  Dale Johannesen  <dalej@apple.com>
716
717         * rtl.h:  Add NOTE_PRECONDITIONED.
718         * unroll.c:  Set it.
719         * loop.c:  Set loop_info->preconditioned from it.
720         * doloop.c:  Permit doloop treatment when loop_info->preconditoned.
721
722 2002-10-07  Richard Henderson  <rth@redhat.com>
723
724         * config/i960/i960.c (i960_setup_incoming_varargs): Create a
725         new rtx for comparing the argument pointer against zero.
726         (i960_va_start): Similarly.
727
728 2002-10-07  Richard Henderson  <rth@redhat.com>
729
730         * config/i960/i960.md (*): Use TFmode, not XFmode.
731         * config/i960/i960.c (*): Likewise.
732         (i960_arg_size_and_align): Remove XFmode alignment hack.
733         (i960_round_align): Merge code from ROUND_TYPE_ALIGN.
734         * config/i960/i960.h (LONG_DOUBLE_TYPE_SIZE): Use 128, not 96.
735         (MAX_LONG_DOUBLE_TYPE_SIZE): Likewise.
736         (DATA_ALIGNMENT, ROUND_TYPE_SIZE): Remove.
737
738 2002-10-07  Richard Henderson  <rth@redhat.com>
739
740         * config/fp-bit.c (EXTENDED_FLOAT_STUBS): Flush out all XF/TFmode
741         entry points; use void return value and argument list.
742
743 2002-10-05  Naohiko Shimizu <nshimizu@keyaki.cc.u-tokai.ac.jp>
744
745         * t-pdp11: Add MULTILIB support for msoft-float.
746         * pdp11.h (LEGITIMATE_CONSTANT_P): Fix soft-float case.
747
748         * t-pdp11: Add LIB2FUNCS_EXTRA.
749         * pdp11.c (pdp11_output_function_prologue): Restrict offset to 16bit,
750         add preceding 0 to the octal constant, rename 'fp' to 'r5', rename
751         'fldd' to 'ldd', rename 'fstd' to 'std'.
752         (pdp11_output_function_epilogue): Likewise.
753         (output_move_quad): Make the comment gas compatible.
754         (output_ascii): Add preceding 0 to the octal constant.
755         (print_operand_address): Add pre_modify, post_modify.
756         (output_addr_const_pdp11): Add preceding 0 to the octal constant.
757         * pdp11.h (GO_IF_LEGITIMATE_ADDRESS) : Add 'movb' pre_modify case
758         with the indication of Paul Koning.
759         (PRINT_OPERAND): Fix floating constant.
760         * pdp11.md (movdi): Restrict matching pattern.
761         (movqi): Generalize the matching pattern.
762         (movdf): Restrict matching pattern.
763         (zero_extendqihi2): Change constant representation.
764         (floatsidf2): Fix wrong operands.
765         (addqi3): Fix wrong instruction name.
766         (subqi3): Fix wrong instruction name.
767         (andsi3, andhi3, andqi3): Simplify and fix to use 'bic'.
768         (xorsi3): Fix wrong insn.
769         (one_cmplqi2): Add two operand pattern.
770         (lsrsi3): New.
771         (negsi2): New.
772         (call): Add register indirect case.
773         (mod): Fix wrong subreg.
774
775 2002-09-25  Eric Botcazou  <ebotcazou@libertysurf.fr>
776             Volker Reichelt <reichelt@igpm.rwth-aachen.de>
777
778         PR c/7411
779         * expr.c (expand_expr) [PLUS]: Simplify after the operands
780         have been expanded in EXPAND_NORMAL mode.
781
782 2002-10-06  Richard Henderson  <rth@redhat.com>
783
784         * config/rs6000/rs6000.md (load_toc_v4_PIC_2): Fix base constraint.
785
786 2002-10-06  Richard Henderson  <rth@redhat.com>
787
788         PR optimization/2960
789         * toplev.c (rest_of_compilation): Don't copy_loop_headers if
790         optimize_size.
791
792 2002-10-06  Alexandre Oliva  <aoliva@redhat.com>
793
794         * config/mips/mips.h (SIZE_TYPE, PTRDIFF_TYPE): Override
795         previously definitions.
796
797 2002-10-06  Frank Ch. Eigler  <fche@redhat.com>
798
799         * cppinit.c (init_standard_includes, parse_option): Use strncmp.
800         * c-opts.c (find_opt): Similarly.
801
802 2002-10-05  Jakub Jelinek  <jakub@redhat.com>
803
804         * gcc.c (set_multilib_dir): Don't access *end.
805         Use memcpy instead of strncpy.  Don't write beyond malloced buffer.
806         (print_multilib_info): Don't show paths starting with ".:".
807         * genmultilib: Add new option, "yes" if multilibs are enabled.
808         Update comments.  If multilibs not enabled, print .:${osdirout}
809         for each directory.  If multilibs are enabled, always print
810         ${dirout}:${osdirout}, even if the two are the same.
811         * Makefile.in (s-mlib): Pass @enable_multilib@ to genmultilib.
812         Pass all MULTILIB_* variables to genmultilib even if
813         --disable-multilib but MULTILIB_OSDIRNAMES is not empty.
814
815 2002-10-04  Bruce Korb  <bkorb@gnu.org>
816
817         * fixinc/inclhack.def(hpux11_abs):  use format fix
818         * fixinc/fixincl.x: regenerate
819         * fixinc/tests/base/stdlib.h: accommodate new fix test
820
821 Sat Oct  5 19:42:45 CEST 2002  Jan Hubicka  <jh@suse.cz>
822
823         * c-common.c (cb_register_builtins):  Use really_no_inline.
824
825 2002-10-04  David Edelsohn  <edelsohn@gnu.org>
826
827         * unroll.c (copy_loop_body): Remove REG_EQUAL note attached to
828         copied instruction if the note is not loop invariant.
829
830 2002-10-04  Loren J. Rittle  <ljrittle@acm.org>
831
832         * gcc/ginclude/stddef.h: Support the FreeBSD 5 typedef system.
833
834 2002-10-04  Steve Ellcey  <sje@cup.hp.com>
835
836         * doc/invoke.texi (HPPA):  Add -mlinker-opt, -mgnu-ld,
837         and -mhp-ld options to list of options.  Add -mgnu-ld
838         and -mhp-ld option descriptions.
839
840 2002-10-04  Steve Ellcey  <sje@cup.hp.com>
841
842         * fixinc/inclhack.def (hpux11_abs):  New.
843         (stdio_va_list): change __va_list__ to __gnuc_va_list.
844         * fixinc/fixincl.x: Rebuild.
845
846 2002-10-04  Roger Sayle  <roger@eyesopen.com>
847
848         * config/i386/i386.h (processor_costs): Add new fields fadd,
849         fmul, fdiv, fabs, fchs and fsqrt to costs structure.
850         (RTX_COSTS): Use these fields to determine the RTX costs
851         of floating point addition/subtraction, multiplication,
852         division, fabs, negation and square root respectively.
853         * config/i386/i386.c (size_cost): Provide instruction sizes
854         for these new fields.
855         (i386_cost, i486_cost, pentium_cost, pentiumpro_cost,
856         k6_cost, athlon_cost, pentium4_cost): Provide typical cycle
857         counts for these new fields for all x86 processor variants.
858
859 2002-10-04  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
860
861         * mips.c (mips_const_double_ok): Delete unused variable.
862
863         * gengtype.c (rtx_next): Change type to int.
864
865 2002-10-04  Andreas Jaeger  <aj@suse.de>
866
867         * config/i386/t-linux64 (MULTILIB_OSDIRNAMES): Fix value.
868
869 2002-10-04  Richard Henderson  <rth@redhat.com>
870
871         * real.h (SIGNIFICAND_BITS): Add one more word.
872         (CONST_DOUBLE_FORMAT): Accomodate 6 words.
873         * real.c (times_pten): New.
874         (real_to_decimal, real_from_string): Use it.
875         (sticky_rshift_significand): Use & to find modulus.
876         (rshift_significand, lshift_significand): Likewise.
877         (do_divide): Apply sticky bit after normalization.
878         (real_to_decimal, real_to_hexadecimal): Fix sign of Inf and NaN.
879
880 2002-10-03  Andreas Jaeger  <aj@suse.de>
881
882         * gengtype.c (adjust_field_rtx_def): Cast variables of type size_t
883         to unsigned long, adjust printf format string.
884         (output_mangled_typename): Likewise.
885
886 2002-10-03  Jason Thorpe  <thorpej@wasabisystems.com>
887
888         * config/vax/vax.c (vax_output_function_prologue): Use asm_fprintf.
889         * config/vax/vax.h (VAX_FUNCTION_PROFILER_NAME): New.
890         (FUNCTION_PROFILER): Rewrite to use ASM_GENERATE_INTERNAL_LABEL,
891         assemble_name, asm_fprintf, and VAX_FUNCTION_PROFILER_NAME.
892         (ASM_OUTPUT_MI_THUNK): Use asm_fprintf instead of REGISTER_PREFIX.
893         (PRINT_OPERAND_PUNCT_VALID_P): Fix comment.
894         * config/vax/elf.h (FUNCTION_PROFILER): Remove.
895         (VAX_FUNCTION_PROFILER_NAME): Redefine as "__mcount".
896
897 2002-10-03  Mark Mitchell  <mark@codesourcery.com>
898
899         * doc/invoke.texi (-Wabi): Document mangling bug.
900
901 2002-10-04  Alan Modra  <amodra@bigpond.net.au>
902
903         * config/rs6000/rs6000.c (rs6000_output_function_epilogue): Use a
904         name for the tbtab label that depends on the function asm name.
905         Don't output tbtab label unless optional_tbtab.
906         (output_mi_thunk): Formatting.
907
908 2002-10-03  Richard Henderson  <rth@redhat.com>
909
910         * config/m68k/m68k.h (OVERRIDE_OPTIONS): Move additional code ...
911         * config/m68k/m68k.c (override_options): ... here.
912         * config/m68k/m68kelf.h (OVERRIDE_OPTIONS): Remove.
913         * config/m68k/m68kv4.h (OVERRIDE_OPTIONS): Remove.
914         * config/m68k/linux.h (SUBTARGET_OVERRIDE_OPTIONS): Remove.
915         * config/m68k/netbsd-elf.h (SUBTARGET_OVERRIDE_OPTIONS): Remove.
916
917 2002-10-03  Richard Henderson  <rth@redhat.com>
918
919         * real.h (struct real_value): Use ENUM_BITFIELD.
920
921 2002-10-03  Richard Henderson  <rth@redhat.com>
922
923         * config/i960/i960.md (call, call_value): Use emit_call_insn.
924
925 2002-10-03  Steve Ellcey  <sje@cup.hp.com>
926
927         * config/pa/pa64-hpux.h (INIT_ENVIRONMENT): New.
928
929 2002-10-03  Steve Ellcey  <sje@cup.hp.com>
930
931         * config.gcc (hppa*64*-*-hpux11*): Check gnu_ld.
932         * config/pa/pa.h (MASK_GNU_LD): New.
933         (TARGET_GNU_LD): New.
934         * config/pa/pa64-hpux.h (LINK_SPEC): Set based
935         on gnu-ld and MASK_GNU_LD.
936         (SUBTARGET_SWITCHES): New gnu-ld & hp-ld flags.
937
938 Thu Oct  3 23:35:51 CEST 2002  Jan Hubicka  <jh@suse.cz>
939
940         * i386.c (athlon_cost): Fix the move costs.
941
942 Thu Oct  3 23:20:58 CEST 2002  Jan Hubicka  <jh@suse.cz>
943
944         * final.c (final): Use symbol name as function name for profiling.
945         * profile.c (get_exec_counts): Likewise.
946         (branch_prob): Likewise.
947
948 2002-10-03  Jakub Jelinek  <jakub@redhat.com>
949
950         * longlong.h (__udiv_qrnnd): Remove PARAMS from prototype.
951
952 2002-10-03  Jakub Jelinek  <jakub@redhat.com>
953
954         * gcc.c (print_multi_os_directory): New variable.
955         (option_map): Support --print-multi-os-directory.
956         (struct prefix_list): Add os_multilib field.
957         (multilib_os_dir): New variable.
958         (static_specs): Add multilib_options.
959         (find_a_file): Add multilib argument.  Search in GCC or OS multilib
960         subdirs if non-zero.
961         (read_specs, execute): Update callers.
962         (find_file): Likewise.  Don't prefix name with multilib_dir, instead
963         pass 1 as multilib option.
964         (display_help): Include --print-multi-os-directory.
965         (add_prefix): Add os_multilib argument.  Initialize pl->os_multilib.
966         (process_command): Update callers.  Handle --print-multi-os-directory.
967         (do_spec_1) ['D']: Use multilib_os_directory if pl->os_multilib is
968         set.
969         (main): Update find_a_file and add_prefix callers.
970         Handle print_multi_os_directory.
971         (struct mdswitchstr): New.
972         (mdswitches, n_mdswitches): New variables.
973         (used_arg): Add MULTILIB_DEFAULT switches too if they are not
974         present on the command line nor their mutually incompatible
975         switches.
976         (default_arg): Optimize.
977         (set_multilib_dir): Compute multilib_os_dir.  Initialize mdswitches
978         array.
979         (print_multilib_info): Only print GCC multilib dir name, not OS
980         multilib dirname.
981         * genmultilib: Add osdirnames parameter.  Output multilib_options
982         variable.  If osdirnames is specified, output dirnames as
983         dirname:osdirname.
984         * mklibgcc.in: Use MULTILIB_OSDIRNAMES, --print-multi-directory
985         and --print-multi-os-directory instead of SHLIB_SLIBDIR_SUFFIXES
986         to compute libgcc_s soname and install path.
987         * Makefile.in (libgcc.mk): Pass MULTILIB_OSDIRNAMES instead of
988         SHLIB_SLIBDIR_SUFFIXES to mklibgcc.
989         (s_mlib): Pass MULTILIB_OSDIRNAMES or nothing as last genmultilib
990         argument.
991
992         * config/sparc/t-linux64 (MULTILIB_OSDIRNAMES): Set.
993         (SHLIB_SLIBDIR_SUFFIXES): Remove.
994         * config/sparc/linux64.h (STARTFILE_SPEC32, STARTFILE_SPEC64,
995         ENDFILE_SPEC32, ENDFILE_SPEC64, ENDFILE_COMMON): Remove.
996         (STARTFILE_SPEC, ENDFILE_SPEC): Don't distinguish between -m32
997         and -m64.
998         * config/sparc/t-sol2-64 (MULTILIB_OSDIRNAMES): Set.
999         (SHLIB_SLIBDIR_SUFFIXES): Remove.
1000         * config/sparc/sol2-bi.h (STARTFILE_ARCH64_SPEC): Remove.
1001         (STARTFILE_ARCH_SPEC): Remove.
1002         * config/i386/t-linux64 (MULTILIB_OSDIRNAMES): Set.
1003         (SHLIB_SLIBDIR_SUFFIXES): Remove.
1004         * config/i386/linux64.h (STARTFILE_PREFIX_SPEC): Remove.
1005         * config/mips/t-iris6 (MULTILIB_OSDIRNAMES): Set.
1006         (SHLIB_SLIBDIR_SUFFIXES): Remove.
1007
1008 Thu Oct  3 21:42:20 CEST 2002  Jan Hubicka  <jh@suse.cz>
1009
1010         * predict.c (choose_function_section): Avoid choice for linkonce functions.
1011
1012 Thu Oct  3 15:15:00 CEST 2002  Jan Hubicka  <jh@suse.cz>
1013
1014         * i386.md (lea to mul peep2): Fix condition.
1015
1016 2002-10-02  John David Anglin  <dave@hiauly1.hia.nrc.ca>
1017
1018         * pa-linux.h (FUNCTION_OK_FOR_SIBCALL): Delete macro.
1019         * pa32-linux.h (FUNCTION_OK_FOR_SIBCALL): Define.
1020
1021 2002-10-02  Richard Henderson  <rth@redhat.com>
1022
1023         PR opt/7124
1024         * config/i386/i386.c (ix86_register_move_cost): Increase cost
1025         for secondary_memory_needed pairs.
1026
1027 2002-10-02  Nathanael Nerode  <neroden@gcc.gnu.org>
1028
1029         * doc/vms.texi: Blow away false include file section.
1030
1031 2002-10-02  Roger Sayle  <roger@eyesopen.com>
1032
1033         PR optimization/6627
1034         * toplev.c (force_align_functions_log): New global variable.
1035         * flags.h (force_align_functions_log): Add extern prototype.
1036         * varasm.c (assemble_start_function): Use it to force minimum
1037         function alignment.
1038         * config/i386/i386.h (FUNCTION_BOUNDARY): Set the correct
1039         minimum function alignment to one byte.
1040         (TARGET_PTRMEMFUNC_VBIT_LOCATION): Store the virtual bit in
1041         the least significant bit of vtable member function pointers.
1042         * tree.h (enum ptrmemfunc_vbit_where_t): Move definition to
1043         here from cp/cp-tree.h.
1044
1045 Wed Oct  2 17:01:36 CEST 2002  Jan Hubicka  <jh@suse.cz>
1046
1047         * i386.c (print_operand_address): Use RIP addressing for offsetted
1048         label refs too.
1049
1050 2002-09-30  David S. Miller  <davem@redhat.com>
1051
1052         PR middle-end/7151
1053         * config/sparc/sparc.md (movdi_insn_sp32_v9): Accept 'e' regs.
1054         (movdi reg/reg split): Match only on sparc32, and v9 when int regs.
1055
1056 2002-10-01  Roger Sayle  <roger@eyesopen.com>
1057
1058         * unroll.c (loop_iterations): Revert 2002-09-08 change.
1059
1060 2002-10-01  Richard Henderson  <rth@redhat.com>
1061
1062         * real.c (real_to_decimal): Crop trailing zeros for DIGITS < 0.
1063         (real_to_hexadecimal): Likewise.
1064         * print-rtl.c (print_rtx): If we are linked with real.c, don't
1065         dump the XWINT fields of a floating point CONST_DOUBLE.
1066
1067 2002-10-01  Jason Thorpe  <thorpej@wasabisystems.com>
1068
1069         * config/vax/elf.h (FUNCTION_PROFILER): Fix __mcount call.
1070
1071 2002-10-01  Richard Henderson  <rth@redhat.com>
1072
1073         * calls.c (precompute_register_parameters): Force non-legitimate
1074         constants into pseudos.
1075
1076 2002-10-01  Nick Clifton  <nickc@redhat.com>
1077
1078         * config/rs6000/spe.md (spe_evrlwi): Add missing third operand
1079         to assembler template.
1080
1081 2002-10-01  Richard Henderson  <rth@redhat.com>
1082
1083         * dwarf2out.c (loc_descriptor_from_tree): Relax requirement
1084         for TLS debug info to !DECL_EXTERNAL.
1085
1086 2002-10-01  Matt Thomas  <matt@3am-software.com>
1087             Jason Thorpe  <thorpej@wasabisystems.com>
1088
1089         * config.gcc (vax-*-netbsdelf*): Enable configuration.
1090         * config/elfos.h (PCC_BITFIELD_TYPE_MATTERS): Define only
1091         if not already defined.
1092         * config/vax/elf.h: New file.
1093         * config/vax/netbsd-elf.h: New file.
1094         * config/vax/vax.c: Include "debug.h".
1095         (vax_output_function_prologue): Add dwarf2 support.  Use
1096         MAIN_NAME_P when checking for VMS_TARGET stack adjust.
1097         * config/vax/vax.h (CONST_OK_FOR_LETTER_P): Add cases for
1098         'J' [0..63], 'K' [-128..127], 'L' [-32768..32767],
1099         'M' [0..255], 'N' [0..65535], and, 'O' [-63..-1].
1100         (VAX_ISTREAM_SYNC): Remove.
1101         (INITIALIZE_TRAMPOLINE): Use gen_sync_istream.
1102         (JUMP_TABLES_IN_TEXT_SECTION): Define.
1103         (ASM_OUTPUT_REG_POP): Use reg_names for the stack pointer.
1104         (ASM_OUTPUT_ADDR_VEC_ELT): Use ASM_GENERATE_INTERNAL_LABEL
1105         and assemble_name.
1106         (ASM_OUTPUT_ADDR_DIFF_ELT): Likewise.
1107         (PRINT_OPERAND_PUNCT_VALID_P): Accept '|'.
1108         (PRINT_OPERAND): Output REGISTER_PREFIX for '|'.
1109         (INCOMING_RETURN_ADDR_RTX): Define.
1110         * config/vax/vax.md (VUNSPEC_BLOCKAGE)
1111         (VUNSPEC_SYNC_ISTREAM): Define.
1112         (blockage): Use VUNSPEC_BLOCKAGE.
1113         (sync_istream): New insn.
1114
1115 2002-10-01  Richard Henderson  <rth@redhat.com>
1116
1117         * config/vax/vax.md (call_pop, *call_pop, call_value_pop)
1118         (*call_value_pop, call, call_value): Add dwarf2 EH support.
1119         (*call): New insn.
1120
1121 2002-10-01  Nathan Sidwell  <nathan@codesourcery.com>
1122
1123         PR c/8083
1124         * c-typeck.c (build_c_cast): Warn about type punning which breaks
1125         type based aliasing.
1126
1127 2002-10-01  Mark Mitchell  <mark@codesourcery.com>
1128
1129         * stor-layout.c (update_alignment_for_field): New function.
1130         (place_union_field): Use it.
1131         (place_field): Likewise.
1132
1133 2002-10-01  Nathan Sidwell  <nathan@codesourcery.com>
1134
1135         PR other/8077
1136         * gcc.c (cc1_options): Add space on -auxbase-strip.
1137
1138 2002-10-01  Jim Wilson  <wilson@redhat.com>
1139
1140         * config/v850/v850.h (EPILOGUE_USES): Define.
1141
1142 2002-09-30  Andrew Haley  <aph@redhat.com>
1143
1144         * flow.c (insn_dead_p): When using non-call-exceptions, don't
1145         eliminate insns that may trap.
1146         * cse.c (insn_live_p): Likewise.
1147
1148 2002-10-01  Richard Sandiford  <rsandifo@redhat.com>
1149
1150         * config/mips/mips.h (PROCESSOR_R4121): Rename to PROCESSOR_R4120.
1151         (TARGET_MIPS4121): Rename to TARGET_MIPS4120.
1152         * config/mips/mips.c (mips_cpu_info): Rename vr4121 to vr4120.
1153         * config/mips/mips.md: Apply same renaming here.
1154
1155 2002-10-01  Richard Sandiford  <rsandifo@redhat.com>
1156
1157         * config/mips/mips.c (PROCESSOR_R4320, TARGET_MIPS4320): Remove.
1158         (GENERATE_MULT3_SI): Remove use of TARGET_MIPS4320.
1159         * config/mips/mips.c (mips_cpu_info): Remove vr4320 entry.
1160         * config/mips/mips.md (define_attr cpu): Remove r4320.
1161         Remove vr4320 scheduler and uses of TARGET_MIPS4320.
1162
1163 2002-10-01  Richard Sandiford  <rsandifo@redhat.com>
1164
1165         * config/mips/mips.c (mips16_strings): New variable.
1166         (mips_output_function_epilogue): Clear the SYMBOL_REF_FLAG of every
1167         symbol in mips16_strings.  Free the list.
1168         (mips_encode_section_info): Keep track of local strings.
1169
1170 2002-10-01  Richard Sandiford  <rsandifo@redhat.com>
1171
1172         * config/mips/mips.md (bunge, bltgt, bungt): New define_expands.
1173         (sordered_df, sordered_sf): Remove.
1174         * config/mips/mips.c (get_float_compare_codes): New fn.
1175         (gen_int_relational, gen_conditional_move): Use it.
1176
1177 2002-10-01  Richard Sandiford  <rsandifo@redhat.com>
1178
1179         * config/mips/mips-protos.h (mips_emit_fcc_reload): Declare.
1180         * config/mips/mips.h (PREDICATE_CODES): Add fcc_register_operand.
1181         * config/mips/mips.c (fcc_register_operand): New function.
1182         (mips_emit_fcc_reload): New function, extracted from reload_incc.
1183         (override_options): Allow TFmode values in float registers
1184         if ISA_HAS_8CC.
1185         * cnfig/mips/mips.md (reload_incc): Change destination prediate
1186         to fcc_register_operand.  Remove misleading source constraint.
1187         Use mips_emit_fcc_reload.
1188         (reload_outcc): Duplicate reload_incc.
1189
1190 2002-09-30  Ulrich Weigand  <uweigand@de.ibm.com>
1191
1192         * longlong.h: Partially synchronize with GMP-4.1 version:
1193         Use i370 definitions also for s390.
1194         Add generic definition of umul_ppmm in terms of smul_ppmm.
1195         [s390] (umul_ppmm): Remove.
1196         [s390] (smul_ppmm): Fix incorrect assembler constraints.
1197         [s390] (smul_ppmm, sdiv_qrnnd): Rename __xx to __x.
1198
1199 2002-09-30  Bob Wilson  <bob.wilson@acm.org>
1200
1201         * config/xtensa/xtensa.h (REG_CLASS_NAMES, REG_CLASS_CONTENTS):
1202         Add new RL_REGS register class.
1203         (PREFERRED_RELOAD_CLASS, PREFERRED_OUTPUT_RELOAD_CLASS):
1204         Call xtensa_preferred_reload_class for both input and output reloads.
1205         * config/xtensa/xtensa.c (xtensa_regno_to_class): Use new RL_REGS class.
1206         (xtensa_preferred_reload_class): Handle output reloads; use RL_REGS
1207         instead of either AR_REGS or GR_REGS classes.
1208         (xtensa_secondary_reload_class): Use new RL_REGS class.
1209         * config/xtensa/xtensa-protos.h (xtensa_preferred_reload_class): Update.
1210
1211 2002-09-30  John David Anglin  <dave@hiauly1.hia.nrc.ca>
1212
1213         * pa.c (hppa_encode_label): Don't drop '*' from function labels.
1214         (pa_strip_name_encoding): Strip '@' and '*', in that order.
1215         * pa.h (ASM_OUTPUT_LABELREF): Output user_label_prefix except when
1216         there is a '*' prefix in NAME.
1217
1218 Mon Sep 30 21:33:23 CEST 2002  Jan Hubicka  <jh@suse.cz>
1219
1220         * reload.c (push_reload): Handle subregs and secondary memory.
1221         * reload1.c (gen_reload): Likewise.
1222
1223         * jump.c (reg_or_subregno): New function.
1224         * rtl.h (reg_or_subregno): Declare
1225         * unroll.c (find_splittable_givs): Handle subregs.
1226
1227 2002-09-30  Mark Mitchell  <mark@codesourcery.com>
1228
1229         * store-layout.c (finish_record_layout): Add free_p parameter.
1230         (layout_type): Pass it.
1231         * tree.h (finish_record_layout): Update prototype.
1232
1233 Mon Sep 30 14:57:18 CEST 2002  Jan Hubicka  <jh@suse.cz>
1234
1235         * i386.h (TARGET_CPP_CPU_BUILTINS): Define __SSE_MATH__.
1236
1237         * gcse.c (cprop_jump): Check that the register has not
1238         been modified
1239         (cprop_jump): Likewise.
1240
1241 2002-09-30  Richard Earnshaw  <rearnsha@arm.com>
1242
1243         * arm.h (BASE_REG_CLASS): Always return LO_REGS for Thumb.
1244         (MODE_BASE_REG_CLASS, case Thumb): Only return BASE_REGS if we know
1245         that we have a SImode access, and only then if reload hasn't completed;
1246         for all other cases, use LO_REGS.
1247
1248 2002-09-29  Richard Henderson  <rth@redhat.com>
1249
1250         * real.c (real_from_string): Apply sign last.  Tidy exponent handling.
1251
1252 2002-09-29  Richard Henderson  <rth@redhat.com>
1253
1254         PR c/8002
1255         * combine.c (force_to_mode): Handle FLOAT_MODE destinations
1256         for CONST_INT.
1257
1258 2002-09-29  David Edelsohn  <edelsohn@gnu.org>
1259
1260         * real.h (ibm_extended_format): Declare.
1261         * real.c (encode_ibm_extended, decode_ibm_extended): New
1262         functions.
1263
1264 2002-09-29  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
1265
1266         * darwin-protos.h (darwin_asm_output_dwarf_delta): Prototype.
1267
1268         * ia64.c (ia64_hpux_asm_file_end): Const-ify.
1269
1270 2002-09-29  John David Anglin  <dave@hiauly1.hia.nrc.ca>
1271
1272         * expmed.c (extract_bit_field): Fix bit-field extraction from SUBREGs.
1273
1274 2002-09-29  Kazu Hirata  <kazu@cs.umass.edu>
1275
1276         * builtins.def: Fix comment formatting.
1277         * c-common.def: Likewise.
1278         * cfgcleanup.c: Likewise.
1279         * combine.c: Likewise.
1280         * gengtype.c: Likewise.
1281         * params.def: Likewise.
1282         * predict.def: Likewise.
1283         * rtl.def: Likewise.
1284         * stab.def: Likewise.
1285         * stor-layout.c: Likewise.
1286         * tree.def: Likewise.
1287         * config/darwin.c: Likewise.
1288         * config/darwin.h: Likewise.
1289         * config/dbxcoff.h: Likewise.
1290         * config/elfos.h: Likewise.
1291         * config/fp-bit.c: Likewise.
1292         * config/freebsd-spec.h: Likewise.
1293         * config/interix.h: Likewise.
1294         * config/libgloss.h: Likewise.
1295         * config/linux-aout.h: Likewise.
1296         * config/linux.h: Likewise.
1297         * config/lynx-ng.h: Likewise.
1298         * config/lynx.h: Likewise.
1299         * config/netbsd-aout.h: Likewise.
1300         * config/netbsd.h: Likewise.
1301         * config/netware.h: Likewise.
1302         * config/psos.h: Likewise.
1303         * config/ptx4.h: Likewise.
1304
1305 2002-09-28  Kazu Hirata  <kazu@cs.umass.edu>
1306
1307         * ChangeLog.4: Fix typos.
1308         * ChangeLog.6: Likewise.
1309         * FSFChangeLog.10: Likewise.
1310         * genattrtab.c: Fix comment typos.
1311         * haifa-sched.c: Likewise.
1312         * real.c: Likewise.
1313         * tree.h: Likewise.
1314         * config/arm/arm.c: Likewise.
1315         * config/arm/crti.asm: Likewise.
1316         * config/arm/crtn.asm: Likewise.
1317         * config/frv/frv.c: Likewise.
1318         * config/frv/frv.md: Likewise.
1319         * config/h8300/h8300.md: Likewise.
1320         * config/i386/rtemself.h: Likewise.
1321         * config/ia64/unwind-ia64.c: Likewise.
1322         * config/ip2k/ip2k.h: Likewise.
1323         * config/m88k/m88k.c: Likewise.
1324         * config/m88k/m88k.md: Likewise.
1325         * config/mips/sr71k.md: Likewise.
1326         * config/mmix/mmix.c: Likewise.
1327         * config/rs6000/rs6000.c: Likewise.
1328         * config/sh/sh.md: Likewise.
1329
1330 2002-09-26  Theodore A. Roth  <troth@verinet.com>
1331
1332         * config/avr/avr.c: Eliminate use of _PC_ in pc relative insns.
1333         * config/avr/avr.md: Ditto.
1334
1335 2002-09-27  Alexander N. Kabaev <ak03@gte.com>
1336
1337         PR preprocessor/8055
1338         * cppmacro.c (stringify_arg): Do not overflow the buffer
1339         with the terminating NUL when the argument to be stringified
1340         has no tokens.
1341
1342 2002-09-27  Richard Henderson  <rth@redhat.com>
1343
1344         * unroll.c (simplify_cmp_and_jump_insns): New.
1345         (unroll_loop): Use it.  Use simplify_gen_foo+force_operand
1346         instead of expand_simple_foo.
1347
1348 2002-09-27  Richard Henderson  <rth@redhat.com>
1349
1350         PR optimization/7520
1351         * cfganal.c (flow_active_insn_p): New.
1352         (forwarder_block_p): Use it.
1353
1354 2002-09-27  Richard Henderson  <rth@redhat.com>
1355
1356         * emit-rtl.c (active_insn_p): Revert last change.
1357
1358 2002-09-27  Jakub Jelinek  <jakub@redhat.com>
1359
1360         * doc/extend.texi (tls_model): Document.
1361         * varasm.c (decl_tls_model): New.
1362         * c-common.c (handle_tls_model_attribute): New.
1363         (c_common_attribute_table): Add tls_model.
1364         * config/alpha/alpha.c (alpha_encode_section_info): Use
1365         decl_tls_model.
1366         * flags.h (enum tls_model, flag_tls_default): Move...
1367         * tree.h (enum tls_model, flag_tls_default): ...here.
1368         (decl_tls_model): New prototype.
1369         * config/ia64/ia64.c (ia64_encode_section_info): Likewise.
1370         * config/i386/i386.c (ix86_encode_section_info): Likewise.
1371         * config/i386/i386.md (tls_global_dynamic, tls_local_dynamic_base):
1372         Allow !flag_pic.
1373
1374 2002-09-27  Kazu Hirata  <kazu@cs.umass.edu>
1375
1376         * LANGUAGES: Follow spelling conventions.
1377         * rtl.def: Likewise.
1378         * sbitmap.c: Likewise.
1379         * sched-int.h: Likewise.
1380         * sched-rgn.c: Likewise.
1381         * sibcall.c: Likewise.
1382         * simplify-rtx.c: Likewise.
1383         * ssa.c: Likewise.
1384         * stab.def: Likewise.
1385         * stmt.c: Likewise.
1386         * stor-layout.c: Likewise.
1387         * target.h: Likewise.
1388         * timevar.c: Likewise.
1389         * toplev.c: Likewise.
1390         * tree-dump.c: Likewise.
1391         * tree-inline.c: Likewise.
1392         * tree.c: Likewise.
1393         * tree.def: Likewise.
1394         * tree.h: Likewise.
1395         * unroll.c: Likewise.
1396         * varasm.c: Likewise.
1397         * vmsdbgout.c: Likewise.
1398         * treelang/treelang.texi: Likewise.
1399         * treelang/treetree.c: Likewise.
1400
1401 2002-09-27  Kazu Hirata  <kazu@cs.umass.edu>
1402
1403         * config/h8300/h8300.c (compute_saved_regs): Use a macro
1404         instead of a hard register number.
1405         (get_shift_alg): Use an enumerated type instead of numbers.
1406         (h8300_shift_needs_scratch_p): Likewise.
1407
1408 2002-09-26  David S. Miller  <davem@redhat.com>
1409
1410         PR optimization/7335
1411         * calls.c (emit_library_call_value_1): Passing args by reference
1412         converts a CONST function into a PURE one.
1413
1414 2002-09-26  David Edelsohn  <edelsohn@gnu.org>
1415
1416         * dbxout.c (FORCE_TEXT): Switch to current_function_decl, not
1417         text_section.
1418         * xcoffout.h (DBX_STATIC_BLOCK_START): Remove explicit change to
1419         text section.
1420         * config/rs6000/rs6000.c (rs6000_override_options): Allow
1421         function-sections and data-sections functionality on AIX.
1422
1423 2002-09-26  David Edelsohn  <edelsohn@gnu.org>
1424             Dale Johannesen  <dalej@apple.com>
1425
1426         * config/rs6000/rs6000.c (rs6000_emit_move): Insert zero-extend
1427         in RTL for sub-word loads from memory.
1428
1429 2002-09-26  Richard Henderson  <rth@redhat.com>
1430
1431         PR c/7160
1432         * sched-deps.c (sched_analyze_insn): Make clobber insns depend
1433         on call insns.
1434
1435 2002-09-26  Richard Henderson  <rth@redhat.com>
1436
1437         * emit-rtl.c (const_double_htab_eq): Remove unused variable.
1438
1439 2002-09-26  Chris Lattner  <sabre@nondot.org>
1440
1441         * ssa.c (rename_insn_1): Handle RENAME_NO_RTX correctly when
1442         handling undefined values.
1443
1444 2002-09-26  Richard Henderson  <rth@redhat.com>
1445
1446         PR opt/7520
1447         * emit-rtl.c (active_insn_p): Consider a clobber of the
1448         function return value to be active even after reload.
1449
1450 2002-09-27  Alan Modra  <amodra@bigpond.net.au>
1451
1452         * doloop.c (doloop_modify_runtime <biv skips initial incr>): Adjust
1453         by absolute loop increment, not loop increment.
1454
1455 2002-09-26  Kazu Hirata  <kazu@cs.umass.edu>
1456
1457         * c-common.h: Follow spelling conventions.
1458         * cpplex.c: Likewise.
1459         * cpplib.h: Likewise.
1460         * gthr-dce.h: Likewise.
1461         * gthr-posix.h: Likewise.
1462         * optabs.c: Likewise.
1463         * output.h: Likewise.
1464         * profile.c: Likewise.
1465         * protoize.c: Likewise.
1466         * ra-rewrite.c: Likewise.
1467         * real.c: Likewise.
1468         * recog.c: Likewise.
1469         * reg-stack.c: Likewise.
1470         * regclass.c: Likewise.
1471         * regmove.c: Likewise.
1472         * reload.c: Likewise.
1473         * reload.h: Likewise.
1474         * reload1.c: Likewise.
1475         * reorg.c: Likewise.
1476         * resource.c: Likewise.
1477         * rtl.h: Likewise.
1478         * rtlanal.c: Likewise.
1479
1480 2002-09-26  Steve Ellcey  <sje@cup.hp.com>
1481
1482         * config/ia64/ia64.c (ia64_expand_load_address): Ensure correct mode
1483         for symbol address.
1484
1485 2002-09-24  Eric Christopher  <echristo@redhat.com>
1486
1487         * config/mips/elf.h: Add HANDLE_SYSV_PRAGMA.
1488         * config/mips/elf64.h: Ditto.
1489
1490 2002-09-24  Eric Christopher  <echristo@redhat.com>
1491
1492         * except.c (expand_builtin_extract_return_address): Handle case
1493         where Pmode != ptr_mode.
1494
1495 2002-09-26  Steve Ellcey  <sje@cup.hp.com>
1496
1497         * config/ia64/hpux.h (ASM_OUTPUT_EXTERNAL_LIBCALL): New
1498
1499 2002-09-26  Steve Ellcey  <sje@cup.hp.com>
1500
1501         * config/ia64/hpux.h (TARGET_DEFAULT): Include TARGET_ILP32.
1502
1503 2002-09-26  Igor Shevlyakov <igor@microunity.com>
1504
1505         * combine.c (simplify_set): Don't call to force_to_mode if size
1506         of integer type is larger than HOST_BITS_PER_WIDE_INT.
1507
1508 2002-09-26  Janis Johnson  <janis187@us.ibm.com>
1509
1510         * Makefile.in (qmtest-g++): Fix file path.
1511
1512 2002-09-26  Ulrich Weigand  <uweigand@de.ibm.com>
1513
1514         * expr.c (expand_expr) [MINUS_EXPR]: Convert A - const to
1515         A + (-const) on RTX level, even for unsigned types.
1516
1517 2002-09-26  Ulrich Weigand  <uweigand@de.ibm.com>
1518
1519         * reload.c (dup_replacements): New function.
1520         (find_reloads): Use it to duplicate replacements at the top level
1521         of match_dup operands.
1522
1523 2002-09-26  Miles Bader  <miles@gnu.org>
1524
1525         * v850.md ("length"): Change default value to 4.
1526
1527 2002-09-26  Kazu Hirata  <kazu@cs.umass.edu>
1528
1529         * ChangeLog.1: Follow spelling conventions.
1530         * ChangeLog.4: Likewise.
1531         * ChangeLog.6: Likewise.
1532         * FSFChangeLog.11: Likewise.
1533         * doc/cpp.texi: Likewise.
1534         * doc/invoke.texi: Likewise.
1535         * doc/tm.texi: Likewise.
1536
1537 2002-09-26  Nick Clifton  <nickc@redhat.com>
1538
1539         * config.gcc: Add x prefix to v850e case for handling
1540         --with-cpu=v850e.
1541
1542 2002-09-25  David S. Miller  <davem@redhat.com>
1543
1544         PR target/7842
1545         * config/sparc/sparc.c (set_extends): SImode ASHIFT does not
1546         extend.
1547
1548 2002-09-25  Richard Henderson  <rth@redhat.com>
1549
1550         * emit-rtl.c (const_double_htab_eq): Distinguish integer and
1551         fp CONST_DOUBLE; use real_identical.
1552
1553 2002-09-25  Mark Mitchell  <mark@codesourcery.com>
1554
1555         * doc/invoke.texi: Add more -Wabi examples.
1556
1557 2002-09-25  Richard Sandiford  <rsandifo@redhat.com>
1558
1559         * config/mips/mips.h (TARGET_MIPS4100): Add missing bracket.
1560
1561 2002-09-24  Denis Chertykov  <denisc@overta.ru>
1562
1563         * config/ip2k/ip2k.c (function_epilogue): Fix wrong numbers in
1564         cases of optimizing "add sp,w" to "inc sp".
1565
1566 2002-09-24  Adam Nemet  <anemet@lnxw.com>
1567
1568         * config/arm/arm.c (thumb_unexpanded_epilogue): Don't generate
1569         epilogue for naked functions.
1570
1571 2002-09-24  Adam Nemet  <anemet@lnxw.com>
1572             Nick Clifton  <nickc@redhat.com>
1573
1574         * config/arm/arm.h (THUMB_FUNCTION_PROFILER): Remove.
1575         (FUNCTION_PROFILER): Only invoke THUMB_FUNCTION_PROFILER if it
1576         is defined.
1577
1578 2002-09-24  Ulrich Weigand  <uweigand@de.ibm.com>
1579
1580         * config/s390/s390.c (preferred_la_operand_p): New function.
1581         * config/s390/s390-protos.h (preferred_la_operand_p): Declare it.
1582         * config/s390/s390.md ("addaddr_esame", "*la_ccclobber"): Replace by ...
1583         ("*la_64_cc", "*la_31_cc", splitters): ... these.
1584         ("*la_31"): Deactivate for TARGET_64BIT.
1585         ("*la_31_and", "*la_31_and_cc"): New.
1586
1587 2002-09-24  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
1588
1589         * real.h (real_value): Make `exp' explicitly signed.
1590
1591 2002-09-24  Kazu Hirata  <kazu@cs.umass.edu>
1592
1593         * config/elfos.h: Follow spelling conventions.
1594         * config/alpha/alpha.h: Likewise.
1595         * config/arc/arc.h: Likewise.
1596         * config/arm/arm.md: Likewise.
1597         * config/avr/avr.h: Likewise.
1598         * config/cris/cris.md: Likewise.
1599         * config/d30v/d30v.h: Likewise.
1600         * config/frv/frv.c: Likewise.
1601         * config/frv/frv.h: Likewise.
1602         * config/h8300/h8300.c: Likewise.
1603         * config/h8300/h8300.h: Likewise.
1604         * config/h8300/h8300.md: Likewise.
1605         * config/i386/cygwin.h: Likewise.
1606         * config/i386/i386.h: Likewise.
1607         * config/i386/sysv3.h: Likewise.
1608         * config/i960/i960.h: Likewise.
1609         * config/ia64/ia64.h: Likewise.
1610         * config/ia64/ia64.md: Likewise.
1611         * config/ip2k/ip2k.h: Likewise.
1612         * config/m32r/m32r.h: Likewise.
1613         * config/m68k/m68k.h: Likewise.
1614         * config/m88k/m88k.h: Likewise.
1615         * config/mcore/mcore.c: Likewise.
1616         * config/mcore/mcore.h: Likewise.
1617         * config/mcore/mcore.md: Likewise.
1618         * config/mips/mips.h: Likewise.
1619         * config/mmix/mmix.h: Likewise.
1620         * config/mmix/mmix.md: Likewise.
1621         * config/ns32k/netbsd.h: Likewise.
1622         * config/ns32k/ns32k.h: Likewise.
1623         * config/ns32k/ns32k.md: Likewise.
1624         * config/pa/pa.h: Likewise.
1625         * config/romp/romp.h: Likewise.
1626         * config/rs6000/rs6000.h: Likewise.
1627         * config/rs6000/rs6000.md: Likewise.
1628         * config/sparc/sparc.h: Likewise.
1629         * config/stormy16/stormy-abi: Likewise.
1630         * config/stormy16/stormy16.h: Likewise.
1631         * config/vax/vax.h: Likewise.
1632
1633 2002-09-23  Zack Weinberg  <zack@codesourcery.com>
1634
1635         * version.c (version_string): Now const char[].
1636         * version.h: Update to match.
1637
1638 2002-09-23  Richard Henderson  <rth@redhat.com>
1639
1640         * config/i386/i386.h (MASK_ACCUMULATE_OUTGOING_ARGS_SET, MASK_MMX_SET,
1641         MASK_SSE_SET, MASK_SSE2_SET, MASK_3DNOW_SET, MASK_3DNOW_A_SET): Kill.
1642         (TARGET_SWITCHES): Don't reference them.
1643         * config/i386/i386.c (override_options): Use target_flags_explicit
1644         to examine bits set by the user.
1645
1646 2002-09-23  Dale Johannesen  <dalej@apple.com>
1647
1648         * dbxout.c (dbxout_parms):  Set current_sym_code for params
1649         passed on stack by invisible reference.
1650
1651 2002-09-23  Richard Earnshaw  <rearnsha@arm.com>
1652
1653         * arm/unknown-elf.h (ASM_OUTPUT_ALIGNED_DECL_LOCAL): Always allocate
1654         at least one byte of space.
1655
1656 2002-09-23  Mark Mitchell  <mark@codesourcery.com>
1657
1658         * c-common.h (flag_abi_version): Fix typo in comment.
1659         * doc/invoke.texi (flag_abi_version): Document default value.
1660
1661 2002-09-23  Hans-Peter Nilsson  <hp@axis.com>
1662
1663         * doc/extend.texi (Extended Asm): Clarify that overlap between
1664         asm-declared register variables used in an asm and the asm clobber
1665         list is not allowed.
1666         * stmt.c (decl_conflicts_with_clobbers_p): New function.
1667         (expand_asm_operands): Keep track of clobbered registers.  Call
1668         decl_conflicts_with_clobbers_p for each input and output operand.
1669         If no conflicts found before, also do conflict sanity check when
1670         emitting clobbers.
1671
1672 2002-09-23  Richard Henderson  <rth@redhat.com>
1673
1674         * c-common.c (cpp_define_data_format): Remove.
1675         (cb_register_builtins): Don't define __WCHAR_BIT__, __SHRT_BIT__,
1676         __INT_BIT__, __LONG_BIT__, __LONG_LONG_BIT__, __FLOAT_BIT__,
1677         __DOUBLE_BIT__, __LONG_DOUBLE_BIT__.
1678         * doc/cpp.texi: Don't document them either.
1679         (__SCHAR_MAX__, __SHRT_MAX__, __INT_MAX__, __LONG_MAX__,
1680         __LONG_LONG_MAX__): Document.
1681         (__TARGET_FLOAT_FORMAT__): Remove.
1682
1683 2002-09-23  Richard Henderson  <rth@redhat.com>
1684
1685         * real.c (do_multiply): Normalize U before addition.
1686
1687 2002-09-23  Mark Mitchell  <mark@codesourcery.com>
1688
1689         * c-common.c (flag_abi_version): New variable.
1690         * c-common.h (flag_abi_version): Declare it.
1691         * c-opts.c (missing_arg): Add -fabi-version.
1692         (c_common_decode_option): Process -fabi-version.
1693         * doc/invoke.texi (-fabi-version): Document it.
1694         (-Wabi): Add information about bit-fields in unions.
1695
1696 2002-09-22  Jason Thorpe  <thorpej@wasabisystems.com>
1697
1698         * config/mips/netbsd.h (SUBTARGET_ASM_SPEC): Always pass -KPIC
1699         unless -fno-pic or -fno-PIC is specified.
1700
1701 2002-09-22  John David Anglin  <dave@hiauly1.hia.nrc.ca>
1702
1703         * c-common.c (preprocessing_trad_p): Define.
1704         * pa-hiux.h, pa-hpux.h, pa-hpux7.h (CPP_PREDEFINES): Delete.
1705         (TARGET_OS_CPP_BUILTINS, SUBTARGET_SWITCHES): Define.
1706         * pa-hpux10.h (TARGET_OS_CPP_BUILTINS, CPP_SPEC): Define.
1707         * pa-hpux11.h (TARGET_OS_CPP_BUILTINS): Define.
1708         * pa-linux.h (CPP_PREDEFINES): Delete.
1709         (TARGET_OS_CPP_BUILTINS, CPP_SPEC): Define.
1710         * pa32-linux.h, pa64-linux.h (CPP_SPEC): Delete.
1711         * pa-osf.h, pa-pro-end.h, rtems.h (CPP_PREDEFINES): Delete.
1712         (TARGET_OS_CPP_BUILTINS): Define.
1713         * pa.h (MASK_SIO, TARGET_SIO, TARGET_PA_10): Define.
1714         (TARGET_SWITCHES): Reformat.  Use N_() macro.  Add SUBTARGET_SWITCHES.
1715         (SUBTARGET_SWITCHES): Provide default definition.
1716         (TARGET_OPTIONS): Reformat.  Use N_() macro.
1717         (CPP_PA10_SPEC, CPP_PA11_SPEC, CPP_PA20_SPEC, CPP_64BIT_SPEC,
1718         CPP_CPU_DEFAULT_SPEC, CPP_64BIT_DEFAULT_SPEC, SUBTARGET_EXTRA_SPECS,
1719         EXTRA_SPECS, CPP_SPEC, CPLUSPLUS_CPP_SPEC, CPP_PREDEFINES): Delete.
1720         (TARGET_CPU_CPP_BUILTINS): Define.
1721         (TARGET_OS_CPP_BUILTINS): Define for BSD-like systems.
1722         * doc/invoke.texi (msio, mwsio): Document new hppa options.
1723         * doc/tm.texi (TARGET_CPU_CPP_BUILTINS): Document macro
1724         preprocessing_trad_p().
1725
1726 2002-09-22  Jason Thorpe  <thorpej@wasabisystems.com>
1727
1728         * doc/install.texi: Document behavior of --with-headers and
1729         --with-libs when arguments are omitted.
1730
1731 2002-09-22  Kazu Hirata  <kazu@cs.umass.edu>
1732
1733         * dbxout.c: Follow spelling conventions.
1734         * defaults.h: Likewise.
1735         * df.c: Likewise.
1736         * diagnostic.h: Likewise.
1737         * doloop.c: Likewise.
1738         * dwarf2out.c: Likewise.
1739         * dwarfout.c: Likewise.
1740         * emit-rtl.c: Likewise.
1741         * except.c: Likewise.
1742         * explow.c: Likewise.
1743         * expmed.c: Likewise.
1744         * expr.c: Likewise.
1745         * expr.h: Likewise.
1746         * flags.h: Likewise.
1747         * flow.c: Likewise.
1748         * fold-const.c: Likewise.
1749         * function.c: Likewise.
1750         * function.h: Likewise.
1751         * gcc.c: Likewise.
1752         * gcov-io.h: Likewise.
1753         * gcov.c: Likewise.
1754         * gcse.c: Likewise.
1755         * genattrtab.c: Likewise.
1756         * genconfig.c: Likewise.
1757         * genrecog.c: Likewise.
1758         * ggc-page.c: Likewise.
1759         * ggc.h: Likewise.
1760         * global.c: Likewise.
1761         * gthr-win32.h: Likewise.
1762         * integrate.c: Likewise.
1763         * jump.c: Likewise.
1764         * langhooks.c: Likewise.
1765         * langhooks.h: Likewise.
1766         * line-map.h: Likewise.
1767         * local-alloc.c: Likewise.
1768         * longlong.h: Likewise.
1769         * loop.c: Likewise.
1770         * loop.h: Likewise.
1771
1772 Tue Aug 27 22:26:35 CEST 2002  Jan Hubicka  <jh@suse.cz>
1773
1774         * i386.h (BIGGEST_FIELD_ALIGNMENT): Set proper default for x86_64.
1775
1776 Tue Aug 27 20:07:01 CEST 2002  Jan Hubicka  <jh@suse.cz>
1777
1778         * i386.c (overwrite_options): Set -mpreferred-stack-boundary to 128
1779         for -Os/TARGET_64BIT too.
1780
1781 2002-09-21  Kazu Hirata  <kazu@cs.umass.edu>
1782
1783         * ChangeLog: Follow spelling conventions.
1784         * ChangeLog.0: Likewise.
1785         * ChangeLog.1: Likewise.
1786         * ChangeLog.2: Likewise.
1787         * ChangeLog.3: Likewise.
1788         * ChangeLog.4: Likewise.
1789         * ChangeLog.5: Likewise.
1790         * ChangeLog.6: Likewise.
1791         * FSFChangeLog.10: Likewise.
1792         * FSFChangeLog.11: Likewise.
1793         * alias.c: Likewise.
1794         * basic-block.h: Likewise.
1795         * c-aux-info.c: Likewise.
1796         * c-common.c: Likewise.
1797         * c-common.h: Likewise.
1798         * c-decl.c: Likewise.
1799         * c-format.c: Likewise.
1800         * c-semantics.c: Likewise.
1801         * c-typeck.c: Likewise.
1802         * calls.c: Likewise.
1803         * cfganal.c: Likewise.
1804         * cfgloop.c: Likewise.
1805         * collect2.c: Likewise.
1806         * combine.c: Likewise.
1807         * conflict.c: Likewise.
1808         * cppexp.c: Likewise.
1809         * cppfiles.c: Likewise.
1810         * cpphash.h: Likewise.
1811         * cppinit.c: Likewise.
1812         * cpplex.c: Likewise.
1813         * cpplib.c: Likewise.
1814         * cpplib.h: Likewise.
1815         * cppmacro.c: Likewise.
1816         * cse.c: Likewise.
1817
1818 2002-09-21  Richard Earnshaw  <rearnsha@arm.com>
1819
1820         * netbsd-aout.h (NETBSD_LINK_SPEC_AOUT): New, takes old definition of
1821         LINK_SPEC.
1822         (LINK_SPEC): Define to NETBSD_LINK_SPEC_AOUT.
1823         * arm/netbsd.h (SUBTARGET_EXTRA_SEPCS): Add NETBSD_LINK_SPEC_AOUT.
1824         (LINK_SPEC): Rework to use NETBSD_LINK_SPEC_AOUT).
1825
1826 2002-09-21  Richard Earnshaw  <rearnsha@arm.com>
1827
1828         PR opt/7930
1829         * cse.c (fold_rtx): Calculate old_cost before we fold each
1830         operand.
1831
1832 2002-09-21  Richard Henderson  <rth@redhat.com>
1833
1834         * c-common.c (cpp_define_data_format): Remove __GCC_LITTLE_ENDIAN__,
1835         __GCC_BIG_ENDIAN__, __TARGET_BITS_ORDER__, __TARGET_BYTES_ORDER__,
1836         __TARGET_INT_WORDS_ORDER__, __TARGET_FLOAT_WORDS_ORDER__,
1837         __TARGET_USES_VAX_F_FLOAT__, __TARGET_USES_VAX_D_FLOAT__,
1838         __TARGET_USES_VAX_G_FLOAT__, __TARGET_USES_VAX_H_FLOAT__.
1839         * doc/cpp.texi: Don't document them.
1840
1841 2002-09-21  Richard Henderson  <rth@redhat.com>
1842
1843         * c-common.c (builtin_define_float_constants): Use real_format
1844         to get the floating-point parameters.
1845
1846 2002-09-21  Richard Henderson  <rth@redhat.com>
1847
1848         * real.c (struct real_format): Move to real.h.
1849         (real_format_for_mode): Rename from fmt_for_mode; update all users;
1850         initialize with ieee defaults.
1851         (real_to_target_fmt, real_from_target_fmt): New.
1852         (ieee_single_format, ieee_double_format, ieee_extended_motorola_format,
1853         ieee_extended_intel_96_format, ieee_extended_intel_128_format,
1854         ieee_quad_format, i370_single_format, i370_double_format,
1855         c4x_single_format, c4x_extended_format): Rename from s/_format//.
1856         (ieee_quad_format): Fix emin.
1857         (format_for_size, init_real_once): Remove.
1858         * real.h (struct real_format): Move from real.c.
1859         (real_format_for_mode): Declare.
1860         (real_to_target_fmt, real_from_target_fmt): Declare.
1861         (ieee_single_format, ieee_double_format, ieee_extended_motorola_format,
1862         ieee_extended_intel_96_format, ieee_extended_intel_128_format,
1863         ieee_quad_format, vax_f_format, vax_d_format, vax_g_format,
1864         i370_single_format, i370_double_format, c4x_single_format,
1865         c4x_extended_format): Declare.
1866         * toplev.c (do_compile): Don't call init_real_once.
1867
1868         * defaults.h (INTEL_EXTENDED_IEEE_FORMAT): Remove.
1869         * doc/tm.texi (INTEL_EXTENDED_IEEE_FORMAT): Remove.
1870
1871         * config/alpha/alpha.h (TARGET_FLOAT_FORMAT): Define.
1872         * config/alpha/osf5.h (LONG_DOUBLE_TYPE_SIZE): 64, if vax mode.
1873         * config/alpha/alpha.c (override_options): Set real_format_for_mode
1874         for VAX, if enabled.
1875
1876         * config/c4x/c4x.c (c4x_override_options): Set real_format_for_mode
1877         for C4X.
1878
1879         * config/i370/i370.h (OVERRIDE_OPTIONS): New.
1880         * config/i370/i370.c (override_options): New.
1881         * config/i370/i370-protos.h: Update.
1882
1883         * config/i386/i386.c (override_options): Set real_format_for_mode
1884         for Intel 80-bit extended.
1885         * config/i386/i386.h (INTEL_EXTENDED_IEEE_FORMAT): Remove.
1886
1887         * config/i960/i960.h (LONG_DOUBLE_TYPE_SIZE): Mind -mlong-double-64.
1888         (OVERRIDE_OPTIONS): Move code...
1889         * config/i960/i960.c (i960_initialize): ... here.  Set
1890         real_format_for_mode for Intel 80-bit extended.
1891
1892         * config/ia64/ia64.c (ia64_override_options): Set real_format_for_mode
1893         for Intel 80-bit extended, if enabled.
1894
1895         * config/m68k/m68k.c (override_options): Set real_format_for_mode
1896         for Motorola 96-bit extended.
1897
1898         * config/vax/vax.h (OVERRIDE_OPTIONS): New.
1899         * config/vax/vax.c (override_options): New.
1900         * config/vax/vax-protos.h: Update.
1901
1902 2002-09-21  Alan Modra  <amodra@bigpond.net.au>
1903
1904         * config/rs6000/rs6000.md (builtin_setjmp_receiver): Add
1905         #if TARGET_MACHO.
1906
1907         * config/rs6000/rs6000.md (floatdisf2_internal2): Combine
1908         insns.  Supply missing clobber of scratch reg.
1909
1910 2002-09-20  Kazu Hirata  <kazu@cs.umass.edu>
1911
1912         * config/m32r/m32r.c: Follow spelling conventions.
1913         * config/m32r/m32r.h: Likewise.
1914         * config/m32r/m32r.md: Likewise.
1915         * config/m68k/m68k.c: Likewise.
1916         * config/m88k/m88k.c: Likewise.
1917         * config/mcore/mcore.c: Likewise.
1918         * config/mips/mips.c: Likewise.
1919         * config/mips/mips.h: Likewise.
1920         * config/mmix/mmix.c: Likewise.
1921         * config/mn10200/mn10200.c: Likewise.
1922         * config/ns32k/ns32k.h: Likewise.
1923         * config/pa/pa.c: Likewise.
1924         * config/pa/pa64-linux.h: Likewise.
1925         * config/pdp11/pdp11.h: Likewise.
1926         * config/romp/romp.c: Likewise.
1927         * config/romp/romp.h: Likewise.
1928         * config/rs6000/eabi.asm: Likewise.
1929         * config/rs6000/linux64.h: Likewise.
1930         * config/rs6000/rs6000.c: Likewise.
1931         * config/rs6000/rs6000.h: Likewise.
1932         * config/rs6000/rs6000.md: Likewise.
1933         * config/rs6000/sysv4.h: Likewise.
1934         * config/rs6000/xcoff.h: Likewise.
1935
1936 2002-09-20  Jim Wilson  <wilson@redhat.com>
1937
1938         * config/v850/v850/lib1funcs.asm (__muldi3): Change r5 to r28.
1939
1940 2002-09-20  Jakub Jelinek  <jakub@redhat.com>
1941
1942         * config/i386/i386.md (UNSPEC_GOTNTPOFF, UNSPEC_INDNTPOFF): New.
1943         * config/i386/i386.c (legitimate_pic_address_disp_p): Handle
1944         UNSPEC_GOTNTPOFF and UNSPEC_INDNTPOFF like UNSPEC_GOTTPOFF.
1945         (legitimate_address_p): Likewise.
1946         (legitimize_address): Use @gotntpoff and @indntpoff.
1947         (output_pic_addr_const): Handle UNSPEC_GOTNTPOFF and UNSPEC_INDNTPOFF.
1948         (output_addr_const_extra): Likewise.
1949
1950 2002-09-20  Jim Wilson  <wilson@redhat.com>
1951
1952         * combine.c (try_combine): When split an instruction pair, where the
1953         first has a sign_extend src, verify that the src and dest modes match.
1954
1955 2002-09-20  Richard Henderson  <rth@redhat.com>
1956
1957         * config/mips/mips.c (dfhigh, dflow, sfhigh, sflow): Remove.
1958         (override_options): Do not initialize them.
1959         (mips_const_double_ok): Allow no fp constants except zero,
1960         and not even that for mips16.
1961         (const_float_1_operand): Use dconst1.
1962         * config/mips/mips.md (movsf, movsf_internal1, movsf_internal2,
1963         movdf, movdf_internal1, movdf_internal1a, movdf_internal2):
1964         Don't allow arbitrary constants; fix predicates and C constraint.
1965
1966 2002-09-20  Neil Booth  <neil@daikokuya.co.uk>
1967
1968         * cppmacro.c: Don't warn about function-like macros without
1969         '(' during pre-expansion.
1970
1971 2002-09-20  Jim Wilson  <wilson@redhat.com>
1972
1973         * config/v850/v850.c (current_function_anonymous_args): Delete.
1974         (expand_prologue): Use current_function_args_info.anonymous_args.
1975         (expand_epilogue): Delete use of current_function_anonymous_args.
1976         * config/v850/v850.h (struct cum_arg): Add anonymous_args field.
1977         (INIT_CUMULATIVE_ARGS): Clear anonymous_args field.
1978         (current_function_anonymous_args): Delete extern declaration.
1979         (SETUP_INCOMING_VARARGS): Set anonymous_args field.
1980
1981 2002-09-20  Geoffrey Keating  <geoffk@apple.com>
1982
1983         * config/rs6000/rs6000.c (rs6000_emit_prologue): Update for change
1984         to load_macho_picbase.
1985         * config/rs6000/rs6000.md: Document Darwin-specific unspec IDs.
1986         (load_macho_picbase): Take the symbol to use as a parameter.
1987         (macho_correct_pic): New insn.
1988         (builtin_setjmp_reciever): On Darwin, restore the PIC register.
1989
1990         * config/rs6000/rs6000.h (ELIMINABLE_REGS): Use
1991         RS6000_PIC_OFFSET_TABLE_REGNUM rather than hardcoding 30.
1992         (CAN_ELIMINATE): Likewise.
1993         (INITIAL_ELIMINATION_OFFSET): Likewise.
1994         (TOC_REGISTER): Likewise.
1995
1996 2002-09-20  Richard Henderson  <rth@redhat.com>
1997
1998         * real.c (real_hash): New.
1999         * real.h: Declare it.
2000         * cse.c (canon_hash): Use it.
2001         * cselib.c (hash_rtx): Likewise.
2002         * emit-rtl.c (const_double_htab_hash): Likewise.
2003         * rtl.h (CONST_DOUBLE_REAL_VALUE): New.
2004         * varasm.c (struct rtx_const): Reduce vector size; separate
2005         integer and fp vectors.
2006         (HASHBITS): Remove.
2007         (const_hash_1): Rename from const_hash.  Use real_hash.  Do not
2008         take modulus MAX_HASH_TABLE.
2009         (const_hash): New.  Do take modulus MAX_HASH_TABLE.
2010         (output_constant_def): Do not take modulus MAX_HASH_TABLE.
2011         (SYMHASH): Don't use HASHBITS.
2012         (decode_rtx_const): Copy only active bits from REAL_VALUE_TYPE.
2013         Fix CONST_VECTOR thinko wrt fp vectors.  Fix kind comparison.
2014         (simplify_subtraction): Fix kind comparison.
2015         (const_hash_rtx): Return unsigned int.  Don't use HASHBITS.
2016         Use a union to pun integer array.
2017         * config/rs6000/rs6000.c (rs6000_hash_constant): Use real_hash;
2018         only hash two words of integral CONST_DOUBLE.
2019
2020 2002-09-20  Steve Ellcey  <sje@cup.hp.com>
2021
2022         * config/ia64/hpux.h (STARTFILE_SPEC): Modify.
2023         (STARTFILE_PREFIX_SPEC): New.
2024         (LINK_SPEC): Modify.
2025         (LIB_SPEC): Modify.
2026         (LIBGCC_SPEC): New.
2027
2028 2002-09-20  Jakub Jelinek  <jakub@redhat.com>
2029
2030         * config/i386/i386.c (legitimate_pic_address_disp_p): Allow
2031         UNSPEC_NTPOFF and UNSPEC_DTPOFF to be offsetted by constant.
2032
2033 2002-09-20  Jeroen Dobbelaere  <jeroen.dobbelaere@acunia.com>
2034
2035         * config/arm/arm.md (sign_extract_onebit, not_signextract_onebit):
2036         Add clobber of the condition code register.
2037
2038 2002-09-20  Richard Henderson  <rth@redhat.com>
2039
2040         * real.c (do_fix_trunc): Static.
2041         (encode_ieee_single, encode_ieee_double, encode_ieee_extended,
2042         encode_ieee_quad, encode_vax_f, encode_vax_d, encode_vax_g,
2043         encode_i370_single, encode_i370_double, encode_c4x_single,
2044         encode_c4x_extended): Add default abort case.
2045
2046 2002-09-20  Richard Henderson  <rth@redhat.com>
2047
2048         * real.h (enum real_value_class, SIGNIFICAND_BITS, EXP_BITS,
2049         MAX_EXP, SIGSZ, SIG_MSB, struct real_value): Move from real.c.
2050         (struct realvaluetype): Remove.
2051         (REAL_VALUE_TYPE): Use struct real_value.
2052         (REAL_VALUE_TYPE_SIZE): Use SIGNIFICAND_BITS.
2053         (test_real_width): New.
2054         * real.c: Global replace struct real_value with REAL_VALUE_TYPE.
2055         (real_arithmetic): Avoid hoops for REAL_VALUE_TYPE parameters.
2056         (real_compare, real_exponent, real_ldexp, real_isinf, real_isnan,
2057         real_isneg, real_isnegzero, real_identical, exact_real_inverse,
2058         real_to_integer, real_to_integer2, real_to_decimal,
2059         real_to_hexadecimal, real_from_string, real_from_integer,
2060         real_inf, real_nan, real_2expN, real_convert, real_to_target,
2061         real_from_target): Likewise.
2062         * tree.h (struct tree_real_cst): Use real_value not realvaluetype.
2063         * gengtype-yacc.y (bitfieldopt): Accept an ID as well.
2064
2065 2002-09-20  Richard Henderson  <rth@redhat.com>
2066
2067         * real.h (UNKNOWN_FLOAT_FORMAT, IEEE_FLOAT_FORMAT, VAX_FLOAT_FORMAT,
2068         IBM_FLOAT_FORMAT, C4X_FLOAT_FORMAT, TARGET_FLOAT_FORMAT): Move ...
2069         * defaults.h: ... here.
2070         * config/arm/arm.h, config/avr/avr.h, config/d30v/d30v.h,
2071         config/fr30/fr30.h, config/frv/frv.h, config/ia64/ia64.h,
2072         config/ip2k/ip2k.h, config/mips/mips.h, config/stormy16/stormy16.h,
2073         config/xtensa/xtensa.h (TARGET_FLOAT_FORMAT): Remove.
2074
2075 2002-09-20  Hans-Peter Nilsson  <hp@bitrange.com>
2076
2077         * config/mmix/mmix.md ("negdf2"): Rewrite.
2078         ("*expanded_negdf2"): New.
2079
2080 2002-09-19  Jim Wilson  <wilson@redhat.com>
2081
2082         * combine.c (simplify_set): When optimizing a subreg src with a
2083         cc0 dest, use GET_MODE (src) for mask instead of inner_mode.
2084
2085 2002-09-19  Dale Johannesen <dalej@apple.com>
2086         * combine.c (make_extraction): Don't create
2087         invalid subreg.
2088
2089 2002-09-19  Ulrich Weigand  <uweigand@de.ibm.com>
2090
2091         * config/s390/s390.c (addr_generation_dependency_p): Handle SUBREG
2092         and STRICT_LOW_PART within SET_DEST.
2093         * config/s390/s390.md ("*extractqi", "*extracthi"): New insns with
2094         splitters, replacing pre-reload splitters.
2095         ("*zero_extendhisi2_31", "*zero_extendqisi2_31",
2096         "*zero_extendqihi2_31"): New insns.
2097         ("*zero_extendqihi2_64"): Do not clobber CC.
2098
2099 2002-09-19  Steve Ellcey  <sje@cup.hp.com>
2100
2101         * config/ia64/hpux.h (CTORS_SECTION_ASM_OP): New.
2102         (DTORS_SECTION_ASM_OP): Ditto.
2103         (READONLY_DATA_SECTION_ASM_OP): Moved.
2104         (DATA_SECTION_ASM_OP): New.
2105         (SDATA_SECTION_ASM_OP): New.
2106         (BSS_SECTION_ASM_OP): New.
2107         (SBSS_SECTION_ASM_OP): New.
2108         (TEXT_SECTION_ASM_OP): New.
2109
2110 2002-09-19  Kazu Hirata  <kazu@cs.umass.edu>
2111
2112         * config/fp-bit.c: Follow spelling conventions.
2113         * config/d30v/d30v.c: Likewise.
2114         * config/d30v/d30v.h: Likewise.
2115         * config/fr30/fr30.c: Likewise.
2116         * config/fr30/fr30.h: Likewise.
2117         * config/fr30/fr30.md: Likewise.
2118         * config/frv/frv.c: Likewise.
2119         * config/frv/frv.h: Likewise.
2120         * config/h8300/h8300.c: Likewise.
2121         * config/h8300/lib1funcs.asm: Likewise.
2122         * config/i370/i370.c: Likewise.
2123         * config/i386/i386.h: Likewise.
2124         * config/i386/i386.md: Likewise.
2125         * config/i386/pentium.md: Likewise.
2126         * config/i386/winnt.c: Likewise.
2127         * config/i960/i960.c: Likewise.
2128         * config/ia64/ia64.h: Likewise.
2129         * config/ip2k/ip2k.c: Likewise.
2130         * config/ip2k/ip2k.h: Likewise.
2131         * config/ip2k/ip2k.md: Likewise.
2132         * config/ip2k/libgcc.S: Likewise.
2133
2134 2002-09-19  Stephen Clarke <stephen.clarke@superh.com>
2135
2136         * config/sh/sh.h (UNSPEC_GOTOFF_P): Define.
2137         (GOTOFF_P): Extend to allow gotoff plus constant.
2138
2139 2002-09-18  Richard Henderson  <rth@redhat.com>
2140
2141         * ifcvt.c (noce_process_if_block): Correctly detect X modified
2142         with INSN_B before COND_EARLIEST.  Don't check A and B for
2143         modification in condition range.  Reorder INSN_B for A==B properly.
2144         (if_convert): Iterate until no matches for a block.
2145
2146 2002-09-18  Richard Henderson  <rth@redhat.com>
2147
2148         * calls.c (store_one_arg): Rename default_align to parm_align;
2149         always adjust parm_align for downward padding.
2150
2151 2002-09-18  Richard Henderson  <rth@redhat.com>
2152
2153         * toplev.c (backend_init): Move init_real_once invocation ...
2154         (do_compile): ... here.
2155
2156 2002-09-18  Richard Henderson  <rth@redhat.com>
2157
2158         * sibcall.c (optimize_sibling_and_tail_recursive_call): Also remove
2159         RTX_UNCHANGING_P markers for successful tail-recursive replacement.
2160
2161 2002-09-18  Richard Henderson  <rth@redhat.com>
2162
2163         * real.c (round_for_format): Collect sticky as unsigned long, not bool.
2164
2165 2002-09-19  Alan Modra  <amodra@bigpond.net.au>
2166
2167         * config/rs6000/rs6000.md: (floatdisf2): Rename to
2168         floatdisf2_internal1.
2169         (floatdisf2): New define_expand.
2170         (floatdisf2_internal2): Likewise.
2171
2172 2002-09-18  Richard Henderson  <rth@redhat.com>
2173
2174         * real.c (sticky_rshift_significand): Collect sticky as
2175         unsigned long, not bool.
2176
2177 2002-09-18  Ulrich Weigand  <uweigand@de.ibm.com>
2178
2179         * config/s390/s390.c (s390_address_cost): New function.
2180         config/s390/s390-protos.h (s390_address_cost): Add prototype.
2181         config/s390/s390.h (ADDRESS_COST): Call s390_address_cost.
2182         (RTX_COST): Use COSTS_N_INSNS.
2183
2184 2002-09-18  Douglas Rupp  <rupp@gnat.com>
2185             Donn Terry  <donnte@microsoft.com>
2186
2187         * stor-layout.c (place_field): Handle alignment of whole
2188         structures when MSVC compatible bitfields are involved.
2189         Change method of computing location of MS bitfields to
2190         be compatible with #pragma pack(n).
2191
2192         * tree.h (record_layout_info): Add new field
2193         remaining_in_alignment.
2194
2195         * doc/tm.texi: (TARGET_MS_BITFIELD_LAYOUT_P): Update.
2196         (pragma pack): Add paragraph on MSVC bit-field packing.
2197
2198 2002-09-18  Richard Earnshaw  (reanrsha@arm.com)
2199
2200         PR optimization/7967
2201         * arm.md (ne_zeroextractsi): Add clobber of the condition code
2202         register.
2203
2204 2002-09-18  Kazu Hirata  <kazu@cs.umass.edu>
2205
2206         * config/s390/s390.c: Follow spelling conventions.
2207         * config/sh/lib1funcs.asm: Likewise.
2208         * config/sh/sh.c: Likewise.
2209         * config/sh/sh.h: Likewise.
2210         * config/sparc/sparc.c: Likewise.
2211         * config/sparc/sparc.h: Likewise.
2212         * config/sparc/sparc.md: Likewise.
2213         * config/stormy16/stormy16.c: Likewise.
2214         * config/stormy16/stormy16.h: Likewise.
2215         * config/v850/v850.c: Likewise.
2216         * config/v850/v850.h: Likewise.
2217         * config/vax/vax.c: Likewise.
2218         * config/vax/vax.h: Likewise.
2219
2220 2002-09-18  Nick Clifton  <nickc@redhat.com>
2221
2222         * config/rs60000/rs6000.c (rs6000_emit_move): Handle V1DImode moves.
2223         * config/rs60000/rs6000.c (SPE_VECTOR_MODE): Include V1DImode.
2224         * config/rs6000/spe.md (movv1di, movv1di_internal): New patterns.
2225
2226 2002-09-17  Zack Weinberg  <zack@codesourcery.com>
2227
2228         * ABOUT-GCC-NLS: Remove reference to enquire, and out-of-date
2229         statement that the only translation is to en_UK.
2230
2231 2002-09-17  Kazu Hirata  <kazu@cs.umass.edu>
2232
2233         * config/alpha/alpha.c: Follow spelling conventions.
2234         * config/alpha/alpha.h: Likewise.
2235         * config/alpha/alpha.md: Likewise.
2236         * config/arc/arc.h: Likewise.
2237         * config/arm/arm.c: Likewise.
2238         * config/arm/arm.h: Likewise.
2239         * config/arm/arm.md: Likewise.
2240         * config/arm/pe.c: Likewise.
2241         * config/arm/unknown-elf.h: Likewise.
2242         * config/avr/avr.c: Likewise.
2243         * config/avr/avr.h: Likewise.
2244         * config/c4x/c4x.c: Likewise.
2245         * config/cris/cris.c: Likewise.
2246         * config/cris/cris.h: Likewise.
2247
2248 2002-09-17  Samuel Figueroa  <figueroa@apple.com>
2249
2250         * final.c (final_scan_insn): Use new macro ASM_OUTPUT_ALIGN_WITH_NOP.
2251         * config/sparc/sparc.h (ASM_OUTPUT_ALIGN_WITH_NOP) New macro.
2252         * doc/tm.texi (ASM_OUTPUT_ALIGN_WITH_NOP) New description.
2253
2254 2002-09-17  Dale Johannesen  <dalej@apple.com>
2255
2256         * cfgcleanup.c (try_forward_edges):  Do not forward a
2257         branch to just after a loop exit before loop optimization;
2258         this interfered with doloop detection.
2259
2260 2002-09-17  Nick Clifton  <nickc@redhat.com>
2261
2262         * config/arm/arm.c (output_return_instruction): Do not
2263         writeback the stack pointer when it is being loaded.
2264         (arm_output_epilogue): Likewise.
2265
2266 2002-09-17  Kazu Hirata  <kazu@cs.umass.edu>
2267
2268         * optabs.c (prepare_cmp_insn): Let emit_library_call_value
2269         generate a pseudo reg that receives the result of a libcall.
2270         (prepare_float_lib_cmp): Likewise.
2271
2272 2002-09-17  Steve Ellcey  <sje@cup.hp.com>
2273
2274         * config/ia64/elf.h: Remove CPP_PREDEFINES.
2275
2276 Tue Sep 17 13:58:04 2002  Nicola Pero  <n.pero@mi.flashnet.it>
2277
2278         Fix PR/7014 and related objc bugs:
2279         * c-typeck.c (comp_target_types): Added a reflexive argument.
2280         Pass it to ObjC when/if calling objc_comptypes().  Updated all
2281         callers to provide the appropriate reflexive argument.
2282         * objc/objc-act.c (objc_comptypes): Carefully checked and fixed
2283         typechecking for all cases of comparisons and assignments,
2284         particularly the obscure and less common ones involving protocols.
2285
2286 2002-09-17  Nick Clifton  <nickc@redhat.com>
2287
2288         * machmode.def (V1DImode): New mode.  A single element vector.
2289         * tree.h (TI_UV1DI_TYPE, TI_V1DI_TYPE): New tree_index enums.
2290         (unsigned_V1DI_type_node, V1D1_type_node): New type nodes.
2291         * tree.c (build_common_tree_nodes_2): Build
2292         unsigned_V1DI_type_node and V1D1_type_node.
2293         * c-common.c (c_common_type_for_mode): Return
2294         unsigned_V1DI_type_node or V1D1_type_node for V1DImode.
2295         * rtl.c (class_narrowest_): Start integer vector nodes with V1DImode.
2296
2297 Tue Sep 17 13:40:13 2002  Nicola Pero  <n.pero@mi.flashnet.it>
2298
2299         * doc/objc.texi (Constant string objects): Extended documentation
2300         to make clear that the constant string class ivar layout is
2301         completely fixed.
2302
2303 2002-09-17  Roger Sayle  <roger@eyesopen.com>
2304
2305         * cfgrtl.c (flow_delete_block_noexpunge): Delete orphaned
2306         NOTE_INSN_LOOP_CONT notes when deleting basic blocks.
2307
2308 2002-09-16  Richard Henderson  <rth@redhat.com>
2309
2310         * expr.c (emit_block_move): Set memory block size as appropriate
2311         for the copy.
2312
2313 2002-09-16  Richard Henderson  <rth@redhat.com>
2314
2315         PR fortran/3924
2316         * sdbout.c (sdbout_symbol): Don't handle offsets from a symbol.
2317
2318 2002-09-16  Richard Henderson  <rth@redhat.com>
2319
2320         * emit-rtl.c (set_mem_attributes_minus_bitpos): Adjust SIZE
2321         as well as OFFSET for BITPOS.
2322
2323 2002-09-16  Jeff Garzik  <jgarzik@mandrakesoft.com>
2324
2325         * config.gcc: Treat winchip_c6-*|winchip2-*|c3-* as pentium-mmx.
2326         * config/i386/i386.c (processor_alias_table): Add winchip-c6,
2327         winchip2 and c3.
2328         * doc/invoke.texi: Mention new aliases.
2329
2330 2002-09-16  John David Anglin  <dave@hiauly1.hia.nrc.ca>
2331
2332         * calls.c (store_one_arg): Set default alignment for BLKmode arguments
2333         to BITS_PER_UNIT when ARGS_GROW_DOWNWARD and the padding direction is
2334         downward.
2335         * function.c (pad_below):  Always compile.
2336         (locate_and_pad_parm): If defined ARGS_GROW_DOWNWARD, pad argument to
2337         alignment when it is not in a register or REG_PARM_STACK_SPACE is true.
2338         Pad below when the argument is not in a register and the padding
2339         direction is downward.
2340
2341         * pa-64.h (MUST_PASS_IN_STACK): Move define to pa.h.
2342         (PAD_VARARGS_DOWN): Define.
2343         * pa.c (function_arg_padding): Revise padding directions to make them
2344         compatible with the 32 and 64-bit runtime architecture documentation.
2345         (hppa_va_arg):  Add code to handle variable and size zero arguments
2346         passed by reference on TARGET_64BIT.  Reformat.
2347         (function_arg): Use a PARALLEL for BLKmode and aggregates args on
2348         TARGET_64BIT.  Use a DImode PARALLEL for BLKmode args 5 to 8 bytes
2349         wide when !TARGET_64BIT.  Move forward check for mode==VOIDmode.
2350         Add comments.
2351         * pa.h (MAX_PARM_BOUNDARY): Correct define for TARGET_64BIT.
2352         (RETURN_IN_MEMORY): Return size zero types in memory.
2353         (FUNCTION_VALUE): Return TFmode in general registers.
2354         (MUST_PASS_IN_STACK): Define.
2355         (FUNCTION_ARG_BOUNDARY): Simplify.
2356         (FUNCTION_ARG_PASS_BY_REFERENCE): Pass variable and zero sized types
2357         by reference.
2358         (FUNCTION_ARG_CALLEE_COPIES): Define to FUNCTION_ARG_PASS_BY_REFERENCE.
2359
2360 2002-09-16  Richard Henderson  <rth@redhat.com>
2361
2362         * real.c (do_fix_trunc): New.
2363         (real_arithmetic): Call it.
2364         * simplify-rtx.c (simplify_unary_operation): Handle FIX
2365         with a floating-point result mode.
2366
2367 2002-09-16  Richard Henderson  <rth@redhat.com>
2368
2369         * builtin-types.def (BT_FN_FLOAT_CONST_STRING): New.
2370         (BT_FN_DOUBLE_CONST_STRING, BT_FN_LONG_DOUBLE_CONST_STRING): New.
2371         * builtins.def (__builtin_nan, __builtin_nanf, __builtin_nanl): New.
2372         (__builtin_nans, __builtin_nansf, __builtin_nansl): New.
2373         * builtins.c (fold_builtin_nan): New.
2374         (fold_builtin): Call it.
2375         * real.c (real_nan): Parse a non-empty string.
2376         (round_for_format): Fix NaN significand truncation.
2377         * real.h (real_nan): Return bool.
2378         * doc/extend.texi: Document new builtins.
2379
2380 2002-09-16  Jason Merrill  <jason@redhat.com>
2381             Danny Smith  <dannysmith@users.sourceforge.net>
2382
2383         * config/i386/winnt.c (ix86_handle_dll_attribute): Set
2384         DECL_EXTERN and TREE_PUBLIC for dllimported variables here...
2385         (i386_pe_mark_dllimport): Not here.
2386
2387 2002-09-16  Nathan Sidwell  <nathan@codesourcery.com>
2388
2389         * c-semantics.c (genrtl_do_stmt): Cope with NULL cond.
2390
2391 2002-09-16  Geoffrey Keating  <geoffk@redhat.com>
2392
2393         * config/rs6000/rs6000.c (build_mask64_2_operands): Suppress
2394         warnings about unused operands when HOST_BITS_PER_WIDE_INT is
2395         < 64.
2396         (rs6000_emit_cmove): Use real_isinf not target_isinf.
2397
2398 2002-09-16  Kazu Hirata  <kazu@cs.umass.edu>
2399
2400         * calls.c (emit_library_call_value_1): Don't refer to
2401         hard_libcall_value.
2402         * optabs.c (prepare_float_lib_cmp): Likewise.
2403
2404 2002-09-16  Geoffrey Keating  <geoffk@apple.com>
2405
2406         * ggc-common.c (ggc_mark_rtx_children_1): Update for changed name
2407         mangling.
2408
2409         The following changes are merged from pch-branch:
2410
2411         * doc/gty.texi (GTY Options): Document %a.
2412         * gengtype.c (do_scalar_typedef): New function.
2413         (process_gc_options): Handle `length' option.
2414         (set_gc_used_type): A pointer to an array of structures doesn't
2415         qualify as a pointer to a structure.
2416         (output_escaped_param): Add `%a' escape.
2417         (write_gc_structure_fields): Allow 'desc' on array of unions.
2418         (main): Define `uint8', `jword' and `JCF_u2' as scalars; use
2419         do_scalar_typedef.
2420
2421         * gengtype.c (enum rtx_code): Make global.
2422         (rtx_format): Make global.
2423         (rtx_next): New.
2424         (gen_rtx_next): New.
2425         (write_rtx_next): New.
2426         (adjust_field_rtx_def): Skip fields marked by chain_next.
2427         (open_base_files): Delete redundant prototype.
2428         (write_enum_defn): New.
2429         (output_mangled_typename): Correct abort call.
2430         (write_gc_marker_routine_for_structure): Handle chain_next and
2431         chain_prev options.
2432         (finish_root_table): Don't output redundant \n.
2433         (main): Call gen_rtx_next, write_rtx_next, write_enum_defn.
2434         * c-tree.h (union lang_tree_node): Add chain_next option.
2435
2436         * gengtype.h (NUM_PARAM): New definition.
2437         (struct type): For TYPE_PARAM_STRUCT, allow multiple parameters.
2438         * gengtype.c (find_param_structure): New.
2439         (adjust_field_type): Handle param<n>_is option.
2440         (process_gc_options): Detect use_params option.  Update callers.
2441         (set_gc_used_type): Add 'param' parameter, update callers.  Handle
2442         'use_params' option.
2443         (open_base_files): Add splay-tree.h to list of files included.
2444         (output_mangled_typename): New.
2445         (write_gc_structure_fields): Update 'param' parameter to support
2446         multiple parameters.  Change name mangling.  Allow parameterized
2447         fields to have an apparent scalar type.  Handle param<n>_is options,
2448         use_param option.
2449         (write_gc_marker_routine_for_structure): Update for change to name
2450         mangling.  Better guess the output file for parameterized types.
2451         (write_gc_types): Update for change to name mangling.
2452         (write_gc_root): Update for change to name mangling.  Handle (ignore)
2453         param<n>_is options.
2454         * doc/gty.texi (GTY Options): Add description of param<n>_is
2455         options, use_params option.
2456         * ggc.h (ggc_mark_rtx): Update for changed name mangling.
2457         * gengtype-lex.l: Produce token for param<n>_is.
2458         * gengtype-yacc.y: Parse param<n>_is.
2459
2460         * gengtype.c (adjust_field_tree_exp): Don't name a variable 'rindex'.
2461
2462         * rtl.c: Update comment describing rtx_format.
2463         * rtl.h (union rtunion): Separate definition and typedef.
2464         (struct rtx_def): Use gengtype to mark.
2465         * Makefile.in (gengtype.o): Also depend on rtl.def.
2466         * ggc.h (ggc_mark_rtx_children): Delete prototype.
2467         (ggc_mark_rtx): Change to alias of gengtype-generated routine.
2468         * ggc-common.c (ggc_mark_rtx_children): Delete.
2469         (ggc_mark_rtx_children_1): Delete.
2470         (gt_ggc_m_rtx_def): Delete.
2471         * gengtype.c (adjust_field_rtx_def): New.
2472         (adjust_field_type): Call adjust_field_rtx_def.
2473         (write_gc_structure_fields): Add 'default' case to switch if none
2474         is specified; remove unused code.
2475
2476         * tree.h (struct tree_exp): Update for change to meaning
2477         of special.
2478         * gengtype.c (adjust_field_tree_exp): New function.
2479         (adjust_field_type): Handle `tree_exp' special here.
2480         (write_gc_structure_fields): Don't handle `tree_exp' special here.
2481         Handle new `dot' option.
2482
2483         * gengtype.h: Make `info' a pointer-to-const.
2484         * gengtype-yacc.y (yacc_ids): Use xasprintf.
2485
2486         * gengtype.c (write_gc_structure_fields): Remove implementation
2487         of `always' option, add `default' option.
2488         * doc/gty.texi (GTY Options): Remove documentation of `always',
2489         add `default'.
2490
2491 2002-09-16  Hans-Peter Nilsson  <hp@bitrange.com>
2492
2493         * output.h: Remove #ifdef RTX_CODE and #ifdef TREE_CODE.
2494
2495 2002-09-16  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
2496
2497         * m68hc11.md (addhi_sp): Fix uninitialized variable bug.
2498
2499         * c4x-c.c, c4x.c, darwin.c, i370-c.c, m32r.c: Include tm_p.h
2500         instead of the *-protos.h file directly.
2501         * t-c4x, t-i370, t-v850: Depend on $(TM_P_H).
2502         * darwin.c (machopic_output_stub): Move prototype ...
2503         * darwin-protos.h (machopic_output_stub): ... here.
2504         * rs6000-protos.h (machopic_output_stub): Don't declare.
2505
2506 2002-09-16  Richard Henderson  <rth@redhat.com>
2507
2508         * c-common.c (builtin_define_float_constants): Emit __FOO_DENORM_MIN__.
2509
2510 2002-09-16  Richard Henderson  <rth@redhat.com>
2511
2512         * real.c, real.h: Rewrite from scratch.
2513
2514         * Makefile.in (simplify-rtx.o): Depend on TREE_H.
2515         (paranoia): New target.
2516         * builtins.c (fold_builtin_inf): Use new real.h interface.
2517         * c-common.c (builtin_define_with_hex_fp_value): Likewise.
2518         * c-lex.c (interpret_float): Likewise.
2519         * emit-rtl.c (gen_lowpart_common): Likewise.
2520         * optabs.c (expand_float): Use real_2expN.
2521         * config/ia64/ia64.md (divsi3, udivsi3): Likewise.
2522         * defaults.h (INTEL_EXTENDED_IEEE_FORMAT): New.
2523         (FLOAT_WORDS_BIG_ENDIAN): New.
2524         * cse.c (find_comparison_args): Don't pass FLOAT_STORE_FLAG_VALUE
2525         directly to REAL_VALUE_NEGATIVE.
2526         * loop.c (canonicalize_condition): Likewise.
2527         * simplify-rtx.c: Include tree.h.
2528         (simplify_unary_operation): Don't handle FIX and UNSIGNED_FIX
2529         with floating-point result modes.
2530         * toplev.c (backend_init): Call init_real_once.
2531
2532         * fold-const.c (force_fit_type): Don't call CHECK_FLOAT_VALUE.
2533         * tree.c (build_real): Likewise.
2534         * config/alpha/alpha.c, config/vax/vax.c (float_strings,
2535         float_values, inited_float_values, check_float_value): Remove.
2536         * config/alpha/alpha.h, config/m68hc11/m68hc11.h,
2537         config/m88k/m88k.h, config/vax/vax.h (CHECK_FLOAT_VALUE): Remove.
2538         * doc/tm.texi (CHECK_FLOAT_VALUE): Remove.
2539         (VAX_HALFWORD_ORDER): Remove.
2540
2541 2002-09-16  Ulrich Weigand  <uweigand@de.ibm.com>
2542
2543         * config/s390/s390.c: (legitimize_la_operand): Remove, replace by ...
2544         (s390_load_address): ... this new function.
2545         (s390_decompose_address): Allow the argument pointer and all
2546         virtual registers as 'pointer' registers.
2547         (s390_expand_plus_operand): Use s390_load_address.
2548         config/s390/s390.md (movti, movdi, movdf splitters): Likewise.
2549         ("force_la_31"): New insn pattern.
2550         config/s390/s390-protos.h (legitimize_la_operand): Remove.
2551         (s390_load_address): Add prototype.
2552
2553         * config/s390/s390.c: Include "optabs.h".
2554         (s390_expand_movstr, s390_expand_clrstr, s390_expand_cmpstr): New.
2555         config/s390/s390-protos.h (s390_expand_movstr, s390_expand_clrstr,
2556         s390_expand_cmpstr): Add prototypes.
2557         config/s390/s390.md ("movstrdi", "movstrsi"): Call s390_expand_movstr.
2558         ("movstrdi_short"): Rename to "movstr_short_64".  Change predicates
2559         for operands 0 and 1 to "memory_operand".  Add type attribute.
2560         ("movstrsi_short"): Rename to "movstr_short_31".  Change predicates
2561         for operands 0 and 1 to "memory_operand".  Add type attribute.
2562         ("movstrdi_long", "movstrsi_long"): Remove.
2563         ("movstrdi_64"): Rename to "movstr_long_64". Add type attribute.
2564         ("movstrsi_31"): Rename to "movstr_long_31". Add type attribute.
2565         ("clrstrdi", "clrstrsi"): Call s390_expand_clrstr.
2566         ("clrstrsico"): Remove, replace by ...
2567         ("clrstr_short_64", "clrstr_short_31"): ... these new patterns.
2568         ("clrstrsi_64"): Rename to "clrstr_long_64".
2569         ("clrstrsi_31"): Rename to "clrstr_long_31".
2570         ("cmpstrdi", "cmpstrsi"): Call s390_expand_cmpstr.
2571         ("cmpstr_const"): Remove, replace by ...
2572         ("cmpstr_short_64", "cmpstr_short_31"): ... these new patterns.
2573         ("cmpstr_64"): Rename to "cmpstr_long_64".
2574         ("cmpstr_31"): Rename to "cmpstr_long_31".
2575
2576 2002-09-16  Kazu Hirata  <kazu@cs.umass.edu>
2577
2578         * ABOUT-NLS: Follow spelling conventions.
2579         * ChangeLog: Likewise.
2580         * ChangeLog.1: Likewise.
2581         * ChangeLog.2: Likewise.
2582         * ChangeLog.3: Likewise.
2583         * ChangeLog.4: Likewise.
2584         * ChangeLog.5: Likewise.
2585         * ChangeLog.6: Likewise.
2586         * FSFChangeLog.10: Likewise.
2587         * FSFChangeLog.11: Likewise.
2588         * c-common.c: Likewise.
2589         * c-lex.c: Likewise.
2590         * c-objc-common.c: Likewise.
2591         * cppexp.c: Likewise.
2592         * cppinit.c: Likewise.
2593         * cpplex.c: Likewise.
2594         * doloop.c: Likewise.
2595         * flow.c: Likewise.
2596         * function.c: Likewise.
2597         * integrate.c: Likewise.
2598         * loop.c: Likewise.
2599         * reg-stack.c: Likewise.
2600         * reload.h: Likewise.
2601         * ssa.c: Likewise.
2602
2603 2002-09-15  Kazu Hirata  <kazu@cs.umass.edu>
2604
2605         * ChangeLog: Follow spelling conventions.
2606         * ChangeLog.0: Likewise.
2607         * ChangeLog.1: Likewise.
2608         * ChangeLog.2: Likewise.
2609         * ChangeLog.4: Likewise.
2610         * ChangeLog.6: Likewise.
2611         * config.gcc: Likewise.
2612         * dwarfout.c: Likewise.
2613         * reload1.c: Likewise.
2614         * simplify-rtx.c: Likewise.
2615         * unwind-sjlj.c: Likewise.
2616         * config/avr/avr.h: Likewise.
2617         * config/d30v/d30v.h: Likewise.
2618         * config/frv/frv.c: Likewise.
2619         * config/frv/frv.h: Likewise.
2620         * config/ip2k/ip2k.h: Likewise.
2621         * config/m88k/m88k-move.sh: Likewise.
2622         * config/stormy16/stormy16.c: Likewise.
2623         * config/stormy16/stormy16.h: Likewise.
2624         * doc/extend.texi: Likewise.
2625         * doc/interface.texi: Likewise.
2626         * doc/invoke.texi: Likewise.
2627         * doc/md.texi: Likewise.
2628         * doc/rtl.texi: Likewise.
2629         * doc/tm.texi: Likewise.
2630         * doc/trouble.texi: Likewise.
2631         * ginclude/float.h: Likewise.
2632         * treelang/treelang.texi: Likewise.
2633
2634 2002-09-15  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
2635
2636         * i386-protos.h (i386_pe_dllexport_name_p,
2637         i386_pe_dllimport_name_p, i386_pe_unique_section,
2638         i386_pe_declare_function_type, i386_pe_record_external_function,
2639         i386_pe_record_exported_symbol, i386_pe_asm_file_end): Add
2640         prototype.
2641         * i386/t-cygwin (winnt.o): Depend on $(TM_P_H).
2642         * i386/t-interix (winnt.o): Likewise.
2643
2644         * v850-protos.h (v850_output_addr_const_extra): Prototype.
2645
2646 2002-09-15  Jason Thorpe  <thorpej@wasabisystems.com>
2647
2648         * config/mips/netbsd.h (TARGET_OS_CPP_BUILTINS): Add
2649         MIPS ABI CPP macros.
2650         (TARGET_CPU_CPP_BUILTINS): Redefine.
2651         (SUBTARGET_EXTRA_SPECS): Remove subtarget_endian_default.
2652         (SUBTARGET_ENDIAN_DEFAULT_SPEC): Remove.
2653
2654 2002-09-15  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
2655
2656         * ia64/aix.h (TARGET_OS_CPP_BUILTINS): Fix typo.
2657
2658 2002-09-15  Kazu Hirata  <kazu@cs.umass.edu>
2659
2660         * ChangeLog: Follow spelling conventions.
2661         * ChangeLog.0: Likewise.
2662         * ChangeLog.1: Likewise.
2663         * ChangeLog.2: Likewise.
2664         * ChangeLog.3: Likewise.
2665         * ChangeLog.4: Likewise.
2666         * ChangeLog.5: Likewise.
2667         * ChangeLog.6: Likewise.
2668         * FSFChangeLog.10: Likewise.
2669         * FSFChangeLog.11: Likewise.
2670         * c-common.c: Likewise.
2671         * c-common.h: Likewise.
2672         * c-format.c: Likewise.
2673         * c-opts.c: Likewise.
2674         * cpplib.c: Likewise.
2675         * langhooks.h: Likewise.
2676         * real.c: Likewise.
2677         * reg-stack.c: Likewise.
2678         * toplev.c: Likewise.
2679         * config/arm/arm.c: Likewise.
2680         * config/arm/arm.md: Likewise.
2681         * config/arm/linux-gas.h: Likewise.
2682         * config/arm/netbsd.h: Likewise.
2683         * config/c4x/c4x.c: Likewise.
2684         * config/c4x/c4x.h: Likewise.
2685         * config/c4x/c4x.md: Likewise.
2686         * config/c4x/libgcc.S: Likewise.
2687         * config/fr30/fr30.md: Likewise.
2688         * config/frv/frv.md: Likewise.
2689         * config/ia64/ia64.md: Likewise.
2690         * config/mips/mips.h: Likewise.
2691         * config/mn10300/mn10300.c: Likewise.
2692         * config/stormy16/stormy16.c: Likewise.
2693         * config/v850/v850.md: Likewise.
2694         * doc/extend.texi: Likewise.
2695         * doc/invoke.texi: Likewise.
2696         * doc/md.texi: Likewise.
2697
2698 2002-09-15  Jason Thorpe  <thorpej@wasabisystems.com>
2699
2700         * config/netbsd.h (LIB_SPEC): Include the appropriate pthread
2701         library if -pthread is specified.
2702
2703 2002-09-15  Jason Thorpe  <thorpej@wasabisystems.com>
2704
2705         * config.gcc (*-*-netbsd*): Set thread_file to 'posix'
2706         for --enable-threads=yes and --enable-threads=posix.
2707
2708 2002-09-15  Kazu Hirata  <kazu@cs.umass.edu>
2709
2710         * config/sparc/cypress.md: Replace Sparc with SPARC.
2711         * config/sparc/freebsd.h: Likewise.
2712         * config/sparc/gmon-sol2.c: Likewise.
2713         * config/sparc/hypersparc.md: Likewise.
2714         * config/sparc/lb1spc.asm: Likewise.
2715         * config/sparc/lb1spl.asm: Likewise.
2716         * config/sparc/linux.h: Likewise.
2717         * config/sparc/linux64.h: Likewise.
2718         * config/sparc/lynx.h: Likewise.
2719         * config/sparc/sol2.h: Likewise.
2720         * config/sparc/sparc-modes.def: Likewise.
2721         * config/sparc/sparc.c: Likewise.
2722         * config/sparc/sparc.h: Likewise.
2723         * config/sparc/sparc.md: Likewise.
2724         * config/sparc/sparclet.md: Likewise.
2725         * config/sparc/supersparc.md: Likewise.
2726         * config/sparc/sysv4.h: Likewise.
2727         * config/sparc/vxsim.h: Likewise.
2728         * config/sparc/vxsparc64.h: Likewise.
2729
2730 2002-09-14  Marek Michalkiewicz  <marekm@amelek.gda.pl>
2731
2732         * config/avr/avr.c (output.h): Move after inclusion of tree.h.
2733
2734 2002-09-14  Kazu Hirata  <kazu@cs.umass.edu>
2735
2736         * ChangeLog: Follow spelling conventions.
2737         * ChangeLog.0: Likewise.
2738         * ChangeLog.2: Likewise.
2739         * ChangeLog.3: Likewise.
2740         * ChangeLog.4: Likewise.
2741         * ChangeLog.5: Likewise.
2742         * ChangeLog.6: Likewise.
2743         * cppfiles.c: Likewise.
2744         * cppinit.c: Likewise.
2745         * cpplib.h: Likewise.
2746         * cse.c: Likewise.
2747         * debug.h: Likewise.
2748         * df.c: Likewise.
2749         * dominance.c: Likewise.
2750         * hashtable.c: Likewise.
2751         * hashtable.h: Likewise.
2752         * loop.c: Likewise.
2753         * config/arm/README-interworking: Likewise.
2754         * config/arm/arm.c: Likewise.
2755         * config/arm/arm.h: Likewise.
2756         * config/arm/arm.md: Likewise.
2757         * config/dsp16xx/dsp16xx.h: Likewise.
2758         * config/frv/frv.c: Likewise.
2759         * config/frv/frv.h: Likewise.
2760         * config/ip2k/ip2k.h: Likewise.
2761         * config/rs6000/rs6000.c: Likewise.
2762         * config/stormy16/stormy-abi: Likewise.
2763         * config/stormy16/stormy16.h: Likewise.
2764         * config/v850/v850.c: Likewise.
2765
2766 2002-09-14  Kazu Hirata  <kazu@cs.umass.edu>
2767
2768         * loop.c: Fix a comment typo.
2769
2770 2002-09-14  Kazu Hirata  <kazu@cs.umass.edu>
2771
2772         * config/fr30/fr30.h: Fix comment typos.
2773         * config/frv/frv.c: Likewise.
2774         * config/i386/xmmintrin.h: Likewise.
2775         * config/mips/mips.c: Likewise.
2776         * config/sh/sh.c: Likewise.
2777
2778 2002-09-14  Kazu Hirata  <kazu@cs.umass.edu>
2779
2780         * haifa-sched.c: Follow spelling conventions.
2781         * regclass.c: Likewise.
2782         * regrename.c: Likewise.
2783         * config/fp-bit.c: Likewise.
2784         * config/frv/frv.h: Likewise.
2785         * config/m88k/m88k.c: Likewise.
2786         * config/mcore/mcore.c: Likewise.
2787         * config/rs6000/darwin.h: Likewise.
2788         * config/rs6000/gnu.h: Likewise.
2789         * config/rs6000/linux.h: Likewise.
2790         * config/rs6000/linux64.h: Likewise.
2791         * config/rs6000/rs6000.c: Likewise.
2792         * config/rs6000/rs6000.h: Likewise.
2793         * config/sh/sh.c: Likewise.
2794         * config/sparc/sparc.c: Likewise.
2795         * config/sparc/ultra1_2.md: Likewise.
2796
2797 2002-09-14  Stephane Carrez  <stcarrez@nerim.fr>
2798
2799         * config/m68hc11/m68hc11.md ("movdi_internal"): Allow any offsetable
2800         memory operand when source is 0 (K constraint).
2801         ("movsi_internal"): Likewise.
2802         ("movdf_internal"): Likewise.
2803         ("movsf_internal"): Likewise.
2804
2805 2002-09-14  Alan Modra  <amodra@bigpond.net.au>
2806
2807         * config/rs6000/rs6000.c (rs6000_elf_encode_section_info): Use
2808         targetm.binds_local_p to set SYMBOL_REF_FLAG.
2809         (rs6000_xcoff_encode_section_info): Likewise.
2810         * config/rs6000/xcoff.h (ASM_DECLARE_FUNCTION_NAME): Likewise.
2811
2812 2002-09-10  Theodore A. Roth  <troth@verinet.com>
2813
2814         * gcc/config/avr/avr.h: Set default options for C++ for avr.
2815
2816 2002-09-13  Richard Henderson  <rth@redhat.com>
2817
2818         * Makefile.in (toplev.o): Depend on real.h.
2819         (print-rtl.o, varasm.o, ifcvt.o): Likewise.
2820
2821 2002-09-14  Alan Modra  <amodra@bigpond.net.au>
2822
2823         * doc/tm.texi (DBX_OUTPUT_NFUN): Describe.
2824         * dbxout.c (dbxout_function_end): Use DBX_OUTPUT_NFUN.
2825         * config/rs6000/linux64.h (DBX_OUTPUT_NFUN): Define.
2826
2827 2002-09-13  Nathan Sidwell  <nathan@codesourcery.com>
2828
2829         * ggc-common.c (ggc_mark_roots): Don't iterate NULL hash tables.
2830
2831 2002-09-13  Steve Ellcey  <sje@cup.hp.com>
2832
2833         * config.gcc (ia64*-*-aix*, ia64*-*-elf*, ia64*-*-freebsd*,
2834         ia64*-*-linux*): Set extra_parts.
2835         * config/ia64/t-aix (EXTRA_PARTS): Remove.
2836         * config/ia64/t-ia64 (EXTRA_PARTS): Remove.
2837
2838 2002-09-13  Kazu Hirata  <kazu@cs.umass.edu>
2839
2840         * config/h8300/fixunssfsi.c: Replace H8/S with H8S.
2841         * config/h8300/h8300.c: Likewise.
2842         * config/h8300/h8300.h: Likewise.
2843         * config/h8300/h8300.md: Likewise.
2844         * doc/invoke.texi: Likewise.
2845
2846 2002-09-13  Kazu Hirata  <kazu@cs.umass.edu>
2847
2848         * config/h8300/h8300.c (h8300_init_once): Fix formatting.
2849
2850 2002-09-13  Richard Henderson  <rth@redhat.com>
2851
2852         * config/alpha/alpha.md (attr type): Add callpal.
2853         (imb, trap, load_tp, set_tp): Use it.
2854         * config/alpha/ev4.md (ev4_callpal): New.
2855         * config/alpha/ev5.md (ev5_callpal): New.
2856         * config/alpha/ev6.md (ev6_ibr): Handle callpal.
2857         * config/alpha/alpha.c (alphaev4_insn_pipe): Handle TYPE_CALLPAL.
2858         (alphaev5_insn_pipe): Likewise.
2859
2860 2002-09-13  Andreas Jaeger  <aj@suse.de>
2861
2862         * Makefile.in (print-rtl.o): Depend on CONFIG_H.
2863
2864 2002-09-13  Steve Ellcey  <sje@cup.hp.com>
2865
2866         * config/ia64/t-hpux (LIBGCC1_TEST, STMP_FIXPROTO,
2867         LIB2ADDEH): New, set to NULL.
2868         (SHLIB_EXT, SHLIB_LINK, SHLIB_INSTALL, SHLIB_MKMAP): New.
2869
2870 2002-09-13  Steve Ellcey  <sje@cup.hp.com>
2871
2872         * config/ia64/quadlib.c (_U_Qfcmp): Make extern.
2873         (_U_Qfcnvfxt_quad_to_sgl): Remove declaration.
2874         (_U_Qfeq, _U_Qfne, _U_Qfgt, _U_Qfge, U_Qflt, U_Qfle, _U_Qfcomp):
2875         Add declarations.
2876         (_U_Qfneg): Remove.
2877
2878 2002-09-13 Dhananjay Deshpande  <dhananjayd@kpit.com>
2879
2880         * config/h8300/h8300.h (EIGHTBIT_CONSTANT_ADDRESS_P): Add support
2881         for H8/300, H8S aa:8 mode.
2882         (TINY_CONSTANT_ADDRESS_P): Add support for H8S aa:16 mode.
2883         * config/h8300/h8300.c (h8300_adjust_insn_length): Adjust length
2884         for H8/300 aa:8 mode.
2885
2886 2002-09-13  Hartmut Penner  <hpenner@de.ibm.com>
2887
2888         * config/s390/s390.md ("trap", "conditional_trap", "*trap"): New
2889         insns.
2890
2891 2002-09-12  Richard Henderson  <rth@redhat.com>
2892
2893         * Makefile.in (HOST_PRINT): Use print-rtl1.o
2894         (print-rtl.o): Don't define GENERATOR_FILE.
2895         (print-rtl1.o): Rename from $(BUILD_PREFIX_1)print-rtl.o.
2896         * print-rtl.c (print_rtx): Include CONST_DOUBLE fp decimal output
2897         unless GENERATOR_FILE.
2898
2899 2002-09-12  Stan Shebs  <shebs@apple.com>
2900
2901         * config/darwin.h (USER_LABEL_PREFIX): Define here...
2902         * config/i386/darwin.h: ... instead of here.
2903
2904         * target.h (struct gcc_target): New field
2905         terminate_dw2_eh_frame_info.
2906         * target-def.h (TARGET_TERMINATE_DW2_EH_FRAME_INFO): Define.
2907         (TARGET_INITIALIZER): Add it.
2908         * dwarf2out.c (output_call_frame_info): Use target hook.
2909         * dwarf2asm.c (dw2_asm_output_delta): Use macro
2910         ASM_OUTPUT_DWARF_DELTA if defined.
2911         * doc/tm.texi (TARGET_TERMINATE_DW2_EH_FRAME_INFO): Document.
2912         (ASM_OUTPUT_DWARF_DELTA): Ditto.
2913         (ASM_OUTPUT_DWARF_OFFSET): Ditto.
2914         (ASM_OUTPUT_DWARF_PCREL): Ditto.
2915         * config.gcc (i[34567]86-*-darwin*): Define extra_parts.
2916         (powerpc-*-darwin*): Ditto.
2917         * crtstuff.c [OBJECT_FORMAT_MACHO]: Update the Mach-O bits
2918         to work correctly for Darwin.
2919         * config/darwin.h (OBJECT_FORMAT_MACHO): Define.
2920         (STARTFILE_SPEC): Add crtbegin.o.
2921         (ENDFILE_SPEC): Define.
2922         (EXTRA_SECTION_FUNCTIONS): Put gcc_except_tab in data segment.
2923         (ASM_PREFERRED_EH_DATA_FORMAT): Handle more cases.
2924         (ASM_OUTPUT_DWARF_DELTA): Define.
2925         (TARGET_TERMINATE_DW2_EH_FRAME_INFO): Define.
2926         * config/darwin.c (darwin_asm_output_dwarf_delta): New function.
2927
2928 2002-09-13  Alan Modra  <amodra@bigpond.net.au>
2929
2930         * config/rs6000/rs6000.c (rs6000_emit_load_toc_table): Remove "if"
2931         nesting.  Correct test for non-PowerPC64 ELF ABI_AIX.
2932         * config/rs6000/rs6000.md (load_toc_v4_PIC*): Disable when ABI_AIX.
2933
2934 2002-09-12  Zack Weinberg  <zack@codesourcery.com>
2935
2936         * toplev.c: Move default definition of USER_LABEL_PREFIX...
2937         * defaults.h: ... here.
2938
2939 2002-09-12  Richard Henderson  <rth@redhat.com>
2940
2941         * vax.c: Include tree.h earlier.
2942
2943 2002-09-12  Stan Shebs  <shebs@apple.com>
2944
2945         * config/darwin.c (machopic_finish): Remove #if 0 chunks.
2946         (machopic_operand_p): Ditto.
2947
2948 2002-09-12  Kazu Hirata  <kazu@cs.umass.edu>
2949
2950         * config/arm/arm.c (arm_compute_initial_elimination_offset):
2951         Fix a comment typo.
2952
2953 2002-09-12  Kazu Hirata  <kazu@cs.umass.edu>
2954
2955         * toplev.c (do_abort): Fix a comment typo.
2956
2957 2002-09-12  Kazu Hirata  <kazu@cs.umass.edu>
2958
2959         * cselib.c: Fix comment formatting.
2960         * gengtype.c: Likewise.
2961
2962 2002-09-12  Kazu Hirata  <kazu@cs.umass.edu>
2963
2964         * config/h8300/h8300.md (udivmodqi4): Do not use an expander.
2965         (udivmodhi4): Likewise.
2966
2967 2002-09-12  Graham Stott  <graham.stott@btinternet.com>
2968             Roger Sayle  <roger@eyesopen.com>
2969
2970         * i386.c (any_fp_register_operand, fp_register_operand,
2971         register_and_not_any_fp_reg_operand, register_and_not_fp_reg_operand):
2972         New predicate functions.
2973         * i386-protos.h:  Add their prototypes.
2974         * i386.h: Add them to PREDICATE_CODES.
2975         * i386.md ("*pushsf_rex64"+2, "*pushsf_rex64"+3, "*pushdf_integer"+1,
2976         "*pushdf_integer"+2, "*pushtf_integer"+1, "*pushtf_integer"+2,
2977         "*pushtf_integer"+3, "*pushtf_integer"+4, "*dummy_extendsfdf2"+1,
2978         "*dummy_extendsfdf2"+2, "*dummy_extendsfxf2"+1,
2979         "*dummy_extendsftf2"+1, "*dummy_extendsftf2"+2,
2980         "*dummy_extenddfxf2"+1, "*dummy_extenddftf2"+1,
2981         "*dummy_extenddftf2"+2, "*negsf2_if"+1, "*negsf2_if"+2,
2982         "*negdf2_if_rex64"+1, "*negdf2_if_rex64"+2, "*negxf2_if"+1,
2983         "*negxf2_if"+2, "*negtf2_if"+1, "*negtf2_if"+2, "*abssf2_if"+1,
2984         "*abssf2_if"+2, "*absdf2_if_rex64"+1, "*absdf2_if_rex64"+2,
2985         "*absxf2_if"+1, "*absxf2_if"+2, "*abstf2_if"+1, "*abstf2_if"+2):
2986         Use these new predicates to simplify and correct the use of
2987         FP_REG_P, ANY_FP_REG_P, FP_REGNO_P and any ANY_FP_REGNO_P.
2988
2989 2002-09-12  Jason Merrill  <jason@redhat.com>
2990
2991         * diagnostic.c (output_add_identifier): New fn.
2992         * diagnostic.h: Declare it.
2993
2994         * calls.c (store_one_arg): Use size_in_bytes to determine the
2995         amount of space to push.
2996
2997 2002-09-12  Jakub Jelinek  <jakub@redhat.com>
2998
2999         * config/sparc/linux64.h (STARTFILE_SPEC32): Fix a typo.
3000
3001 2002-09-12  Ulrich Weigand  <uweigand@de.ibm.com>
3002
3003         * config/s390/s390-modes.def (CCAPmode, CCANmode): New CC modes.
3004         * config/s390/s390.c (s390_match_ccmode_set): Support new CC modes.
3005         (s390_select_ccmode): Likewise.
3006         (s390_branch_condition_mask): Likewise.
3007         (optimization_options): Do not set flag_branch_on_count.
3008         (s390_split_branches): Handle doloop branches.
3009         (s390_chunkify_pool): Likewise.
3010         * config/s390/s390.md ("*adddi3_imm_cc", "*addsi3_imm_cc"): New insns.
3011         ("doloop_end"): New expander.
3012         ("doolop_si", "*doloop_si_long", "doloop_di", "*doloop_di_long",
3013         associated splitters): New.
3014
3015 2002-09-11  Hartmut Penner  <hpenner@de.ibm.com>
3016
3017         * fold-const.c (make_range): Only narrow to signed range if
3018         the signed range is smaller than the unsigned range.
3019
3020 2002-09-12  Alan Modra  <amodra@bigpond.net.au>
3021
3022         * emit-rtl.c (set_mem_size): New function.
3023         * expr.h (set_mem_size): Declare.
3024         * config/rs6000/rs6000.c (expand_block_move_mem): Exterminate.
3025         (expand_block_move): Instead, use adjust_address and
3026         replace_equiv_address to generate proper aliasing info.
3027         Move common code out of conditionals.  Localize vars.
3028
3029 2002-09-09  Eric Botcazou  <ebotcazou@libertysurf.fr>
3030
3031         * optabs.c (expand_binop): Minor cleanup.
3032         (expand_twoval_binop): Convert CONST_INTs like in expand_binop.
3033
3034 2002-09-11  Dan Nicolaescu  <dann@ics.uci.edu>
3035
3036         * print-tree.c (print_node): Print the restrict qualifier.
3037
3038 2002-09-11  Janis Johnson  <janis187@us.ibm.com>
3039
3040         * doc/install.texi: Fix typos.
3041
3042 2002-09-11  Zack Weinberg  <zack@codesourcery.com>
3043
3044         * Makefile.in: Remove all references to s-under and underscore.c.
3045         * collect2.c, tlink.c: Change all uses of prepends_underscore
3046         to look directly at USER_LABEL_PREFIX.
3047
3048 2002-09-11  David Edelsohn  <edelsohn@gnu.org>
3049
3050         * config/rs6000/rs6000.c (rs6000_xcoff_asm_named_section): Append
3051         alignment to csect.
3052         (rs6000_xcoff_unique_section): Only set section name for public
3053         data.
3054         (rs6000_xcoff_section_type_flags): Store log2 alignment in flags.
3055         * config/rs6000/xcoff.h (TARGET_ASM_SELECT_SECTION): Remove
3056         duplicate definition.
3057
3058 2002-09-10  John David Anglin  <dave@hiauly1.hia.nrc.ca>
3059
3060         * pa.md (extzv): Check predicates before emitting extzv_32.
3061         (insv): Likewise.
3062
3063 2002-09-10  Ulrich Weigand  <uweigand@de.ibm.com>
3064
3065         * config/s390/s390.h (MOVE_MAX): Define to correct value.
3066         (MAX_MOVE_MAX): Define.
3067         (MOVE_BY_PIECES_P): Define.
3068         (CLEAR_BY_PIECES_P): Define.
3069
3070 2002-09-10  Denis Chertykov  <denisc@overta.ru>
3071
3072         * config/avr/avr.md (movstrhi): Use right operands for conversion.
3073
3074 2002-09-10  Richard Earnshaw  <rearnsha@arm.com>
3075
3076         PR c/7873
3077         * arm.md (insv): Use reg_or_int_operand for operand[3].
3078
3079 2002-09-10  David Edelsohn  <edelsohn@gnu.org>
3080
3081         * rs6000.c (rs6000_assemble_visibility): Protect declaration
3082         inside macro.  Correct function definition typo.
3083         (rs6000_xcoff_section_type_flags): New function.
3084         (TARGET_SECTION_TYPE_FLAGS): Remove definition.
3085         (rs6000_elf_section_type_flags): Call default_section_type_flags_1
3086         with appropriate PIC test.
3087         (rs6000_xcoff_select_section): Use decl_readonly_section_1 to
3088         determine readonly.
3089         (rs6000_binds_local_p): Combine PIC flags.
3090         * sysv4.h (TARGET_SECTION_TYPE_FLAGS): Define.
3091         * xcoff.h (TARGET_SECTION_TYPE_FLAGS): Define.
3092
3093 2002-09-09  Per Bothner  <per@bothner.com>
3094
3095         * print-tree.c (print_node):  In a STRING_CST, escape non-ascii
3096         characters, and only print TREE_STRING_LENGTH chars.
3097
3098 2002-09-09  Steve Ellcey  <sje@cup.hp.com>
3099
3100         * config/ia64/hpux.h (TARGET_HPUX_LD): New, define true.
3101         (ASM_FILE_END) New.
3102         * config/ia64/ia64.h (TARGET_HPUX_LD): New, define false.
3103         * config/ia64/ia64-protos.h (ia64_hpux_asm_file_end): New.
3104         * config/ia64/ia64.c (ia64_asm_output_external): Create list
3105         of external functions if TARGET_HPUX_LD is true.
3106         (ia64_hpux_add_extern_decl): New, routine to put names on
3107         list of external functions.
3108         (ia64_hpux_asm_file_end): Put out declarations for external
3109         functions if and only if they are used.
3110
3111 2002-09-09  John David Anglin  <dave@hiauly1.hia.nrc.ca>
3112
3113         * pa.md (exception_receiver, builtin_setjmp_receiver): Add blockage
3114         on TARGET_64BIT before pic register restore.
3115
3116 2002-09-09  David Edelsohn  <edelsohn@gnu.org>
3117
3118         * doc/tm.texi (TARGET_HAVE_SRODATA_SECTION): New description.
3119         (TARGET_HAVE_TLS): New description.
3120
3121 2002-09-09  Janis Johnson  <janis187@us.ibm.com>
3122
3123         * doc/extend.texi (Statement Exprs): Fix broken link.
3124
3125 2002-09-09  Denis Chertykov  <denisc@overta.ru>
3126
3127         * config/avr/avr.md (movstrhi, clrstrhi): Use gen_int_mode for
3128         right conversion of operands[1].
3129
3130 2002-09-09  Ulrich Weigand  <uweigand@de.ibm.com>
3131
3132         * config/s390/s390.md ("*tmdi_reg", "*tmsi_reg"): Do not mark as
3133         commutative.  Use "nonimmediate_operand" instead of "register_operand"
3134         as predicate for operand 0.  Move to after the "*tmXX_mem" insns.
3135
3136         ("*tmdi_mem", "*tmsi_mem", "*tmhi_mem", "*tmqi_mem"): Do not mark
3137         as commutative.
3138
3139         ("*anddi3_ni", "*andsi3_ni", "*iordi3_ni", "*iorsi3_ni"): Do not
3140         mark as commutative.  Use "nonimmediate_operand" instead of
3141         "register_operand" as predicate for operand 1.
3142
3143         ("movstrictsi"): Fix typo in insn name.
3144
3145 2002-09-09  Jan Hubicka  <jh@suse.cz>
3146
3147         * i386.c (index_register_operand): New.
3148         * i386.h (predicate_codes): Add new predicate.
3149         * i386.md (lea_general_*): Use index_regsiter_operand
3150         (ashift to lea splitter): Do not produce invalid leas
3151         (ashift to mov+ashift split): New.
3152
3153 2002-09-09  Nick Clifton  <nickc@redhat.com>
3154
3155         * config/fr30/fr30.c (output.h): Move after inclusion of tree.h.
3156         Fix folding marks.
3157
3158 2002-09-09  Toshiyasu Morita  <toshiyasu.morita@hsa.hitachi.com>
3159             J"orn Rennecke <joern.rennecke@superh.com>
3160
3161         * sh/sh.h (OVERRIDE_OPTIONS): align_functions is in bytes, not bits.
3162
3163 2002-09-09  Alan Modra  <amodra@bigpond.net.au>
3164
3165         * config/rs6000/rs6000.c (rs6000_binds_local_p): Return bool.
3166         (function_ok_for_sibcall): Use binds_local_p.  Respect longcall
3167         attributes.
3168
3169 2002-09-08  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
3170
3171         * fr30.c (fr30_print_operand): Fix bug in output of CONST_DOUBLE.
3172
3173 2002-09-08  Richard Henderson  <rth@redhat.com>
3174
3175         * dwarf2.h (DW_OP_call_ref): Rename from DW_OP_calli.
3176         (DW_OP_GNU_push_tls_address): New.
3177         (DW_OP_lo_user): Fix.
3178         * dwarf2out.c (INTERNAL_DW_OP_tls_addr): New.
3179         (dwarf_stack_op_name): Handle it, plus other dwarf3 opcodes.
3180         (size_of_loc_descr): Likewise.
3181         (output_loc_operands): Handle INTERNAL_DW_OP_tls_addr.
3182         (add_AT_location_description): Take a dw_loc_descr_ref not an rtx.
3183         (loc_descriptor_from_tree): Handle TLS variables.
3184         (rtl_for_decl_location): Do avoid_constant_pool_reference here ...
3185         (add_location_or_const_value_attribute): ... not here.  Defer
3186         to loc_descriptor_from_tree for TLS variables.
3187
3188         * config/i386/i386.h (ASM_OUTPUT_DWARF_DTPREL): New.
3189         * config/i386/i386.c (i386_output_dwarf_dtprel): New.
3190         * config/i386/i386-protos.h: Update.
3191
3192 2002-09-08  Roger Sayle  <roger@eyesopen.com>
3193
3194         PR optimization/6405
3195         * unroll.c (loop_iterations): last_loop_insn should be the previous
3196         non-note instruction before loop->end.
3197         * loop.c (strength_reduce): The conditional jump is the last
3198         non-note instruction before loop->end (as above).
3199
3200 2002-09-08  Roger Sayle  <roger@eyesopen.com>
3201
3202         * combine.c (try_combine): Handle the case that undobuf.other_insn
3203         has been turned into a return or unconditional jump, by inserting
3204         a BARRIER if necessary.
3205         (simplify_set):  Test if a condition code setter has a constant
3206         comparison at compile time, if so convert this insn to a no-op move
3207         and update/simplify the condition code user (undobuf.other_insn).
3208
3209 2002-09-08  Krister Walfridsson  <cato@df.lth.se>
3210
3211         * config/arm/netbsd.h (INITIALIZE_TRAMPOLINE): Redefine.
3212         (CLEAR_INSN_CACHE): Define.
3213
3214 2002-09-08  Kazu Hirata  <kazu@cs.umass.edu>
3215
3216         * basic-block.h: Fix comment formatting.
3217         * c-common.c: Likewise.
3218         * c-common.h: Likewise.
3219         * c-lex.c: Likewise.
3220         * c-pretty-print.c: Likewise.
3221         * cfglayout.c: Likewise.
3222         * cfgloop.c: Likewise.
3223         * defaults.h: Likewise.
3224         * et-forest.c: Likewise.
3225         * explow.c: Likewise.
3226         * function.h: Likewise.
3227         * gcov.c: Likewise.
3228         * genattrtab.c: Likewise.
3229         * gengtype.c: Likewise.
3230         * ifcvt.c: Likewise.
3231         * libgcc2.c: Likewise.
3232         * loop.c: Likewise.
3233         * profile.c: Likewise.
3234         * ra-build.c: Likewise.
3235         * real.c: Likewise.
3236         * rtl.h: Likewise.
3237         * tracer.c: Likewise.
3238         * tree-inline.c: Likewise.
3239         * varasm.c: Likewise.
3240
3241 2002-09-08  Jan Hubicka  <jh@suse.cz>
3242
3243         * emit-rtl.c (set_mem_attributes_minus_bitpos): Fix array_ref
3244         handling.
3245
3246         * loop.c (loop_gics_reduce):  Emit addition after.
3247
3248 2002-09-08  Alan Modra  <amodra@bigpond.net.au>
3249
3250         * varasm.c (default_assemble_visibility): Rename from
3251         assemble_visibility.
3252         * output.h: Here too.
3253         * target-def.h (TARGET_ASM_ASSEMBLE_VISIBILITY): And here.
3254         * config/rs6000/rs6000.c (rs6000_assemble_visibility): And here.
3255
3256 2002-09-08  Alan Modra  <amodra@bigpond.net.au>
3257
3258         * reload.c (find_reloads <p constraint>): Pass operand_mode to
3259         find_reloads_address.
3260
3261 2002-09-08  Kazu Hirata  <kazu@cs.umass.edu>
3262
3263         * config/h8300/h8300.md (udivmodqi4): Enable on H8/300.
3264         (anonymous pattern): Likewise.
3265
3266 2002-09-07  Scott Snyder  <snyder@fnal.gov>
3267
3268         PR target/7374
3269         * config/alpha/alpha.md (abstf2): Fix typo: 'neg' for 'abs'.
3270
3271 2002-09-07  Roger Sayle  <roger@eyesopen.com>
3272
3273         * basic-block.h (struct loop): Remove unused cont_dominator field.
3274
3275 2002-09-07  Igor Shevlyakov <igor@microunity.com>
3276
3277         * varasm.c (decode_rtx_const): Don't check undefined field for
3278         CONST_VECTOR.
3279
3280 2002-09-07  Glen Nakamura  <glen@imodulo.com>
3281
3282         PR opt/7814
3283         * sched-deps.c (sched_analyze_insn): Make sure to add insn
3284         to reg_last->sets after flushing the dependency lists to guarantee
3285         that subsequent clobbers will be dependent on it.
3286
3287 2002-09-07  Igor Shevlyakov <igor@microunity.com>
3288
3289         * combine.c (simplify_shift_const): Calculate rotate count
3290         correctly for vector operands.
3291
3292 2002-09-07  Ansgar Esztermann  <ansgar@thphy.uni-duesseldorf.de>
3293
3294         * c-typeck.c (c_tree_expr_nonnegative_p): New function.
3295         (build_binary_op): Call c_tree_expr_nonnegative_p rather than
3296         tree_expr_nonnegative_p.
3297         (build_conditional_expr): Likewise.
3298         * c-tree.h (c_tree_expr_nonnegative_p): Declare.
3299
3300 2002-09-07  Richard Henderson  <rth@redhat.com>
3301
3302         * builtins.def (inf, inff, infl): Mark const.
3303         (huge_val, huge_valf, huge_vall): Likewise.
3304         (BUILT_IN_GETEXP, BUILT_IN_GETMAN): Remove.
3305
3306         * real.c (ereal_inf): Clear E before use.
3307
3308 2002-09-07  Kazu Hirata  <kazu@cs.umass.edu>
3309
3310         * config/h8300/h8300.md (udivmodqi4): Split the pattern into
3311         an expander and an anonymous pattern.  Zero out the upper half
3312         of the dividend in the expander.
3313         (udivmodqi4): Likewise.
3314
3315 2002-09-07  Kazu Hirata  <kazu@cs.umass.edu>
3316
3317         * config/h8300/h8300.c: Fix formatting.
3318         * config/h8300/h8300.h: Likewise.
3319         * config/h8300/h8300.md: Likewise.
3320
3321 2002-09-07  Zdenek Dvorak  <rakdver@atrey.karlin.mff.cuni.cz>
3322
3323         * cfgcleanup.c (try_crossjump_to_edge): Fix updating of liveness
3324         information.
3325
3326 2002-09-07  Graham Stott  <graham.stott@btinternet.com>
3327
3328        * rtlanal.c (dead_or_set_regno_p): Fix typo.
3329
3330 2002-09-07  Alan Modra  <amodra@bigpond.net.au>
3331
3332         * config/rs6000/linux64.h (ASM_PREFERRED_EH_DATA_FORMAT): Define.
3333
3334         * doc/tm.texi (TARGET_ASM_ASSEMBLE_VISIBILITY): Describe.
3335         * target-def.h (TARGET_ASM_ASSEMBLE_VISIBILITY): Define.
3336         (TARGET_ASM_OUT): Add the above here.
3337         * target.h (struct gcc_target): Add "visibility" field.
3338         * varasm.c (maybe_assemble_visibility): Call targetm visibility func.
3339         * config/rs6000/rs6000.c (rs6000_assemble_visibility): New function.
3340         (TARGET_ASM_ASSEMBLE_VISIBILITY): Define.
3341         (rs6000_legitimize_reload_address, first_reg_to_save): Formatting.
3342
3343 2002-09-06  Ziemowit Laski <zlaski@apple.com>
3344
3345         * c-lang.c (objc_is_id): New stub.
3346         * c-tree.h (objc_is_id): New forward declaration.
3347         * c-typeck.c (build_c_cast): Do not strip protocol
3348         qualifiers from 'id' type.
3349         * objc/objc-act.c (objc_comptypes): Correct handling
3350         of protocol qualifiers.
3351         (objc_is_id): New.
3352
3353 Fri Sep  6 13:10:08 2002  Jeffrey A Law  (law@redhat.com)
3354
3355         * pentium.md (pentium-firstvboth): Fix typo.
3356
3357 2002-09-06      Dhananjay Deshpande <dhananjayd@kpit.com>
3358
3359         * h8300.c (enum shift_alg): Move to earlier in h8300.c.
3360         (enum shift_type, enum h8_cpu): Likewise.
3361         (INL, ROT, LOP, SPC macros): Likewise.
3362         (shift_alg_qi, shift_alg_hi, shift_alg_si): Likewise.  Lose
3363         const designator.
3364         (h8300_init_once): Update shift_alg_{qi,hi,si} to use more
3365         space efficient algorithms when optimize for codesize.
3366
3367 Fri Sep  6 16:35:32 2002  Nicola Pero  <n.pero@mi.flashnet.it>
3368
3369         Fix PR/1727 and long-standing failing testcase
3370         objc/formal-protocol-6.m.
3371         * objc-act.c (build_protocol_expr): If compiling for the GNU
3372         runtime, create a list of Protocol statically allocated instances
3373         if it doesn't exist, then add the Protocol object to this same
3374         list.
3375         (get_objc_string_decl): Fixed typo/bug - TREE_VALUE had been used
3376         instead of TREE_CHAIN.
3377
3378 Fri Sep  6 16:17:33 2002  Nicola Pero  <n.pero@mi.flashnet.it>
3379
3380         * objc/objc-act.c (dump_interface): Enlarged the char * buffer to
3381         10k.  Fixed category dumping - print out category names with the
3382         proper syntax.  Print '@end\n' and not '\n@end' at the end of the
3383         interface.
3384         (finish_objc): Fixed the -gen-decls option.  It was printing out
3385         only the last class.  Dump an interface declaration of all classes
3386         being compiled instead.
3387
3388 2002-09-06  Jason Thorpe  <thorpej@wasabisystems.com>
3389
3390         * config/arm/arm-protos.h (arm_gen_return_addr_mask): New
3391         prototype.
3392         * config/arm/arm.c (arm_gen_return_addr_mask): New function.
3393         * config/arm/arm.h (MASK_RETURN_ADDR): Use arm_gen_return_addr_mask
3394         if not APCS26 and not Thumb or ARMv4-or-higher.  Use gen_int_mode
3395         rather than GEN_INT.
3396         * config/arm/arm.md (UNSPEC_CHECK_ARCH): Define.
3397         (return_addr_mask, *check_arch2): New.
3398
3399 2002-09-06  Ulrich Weigand  <uweigand@de.ibm.com>
3400
3401         * config/s390/s390.md ("*adddi3_cc", "*adddi3_cconly",
3402         "*adddi3_cconly2", "*adddi3_64", "*adddi3_31", "adddi3",
3403         "*addsi3_carry1_cc", "*addsi3_carry1_cconly",
3404         "*addsi3_carry2_cc", "*addsi3_carry2_cconly",
3405         "*addsi3_cc", "*addsi3_cconly", "*addsi3_cconly2", "addsi3",
3406         "adddf3", "*adddf3", "*adddf3_ibm",
3407         "addsf3", "*addsf3", "*addsf3_ibm",
3408         "muldi3", "mulsi3", "mulsidi3",
3409         "muldf3", "*muldf3", "*muldf3_ibm",
3410         "mulsf3", "*mulsf3", "*mulsf3_ibm",
3411         "*anddi3_cc", "*anddi3_cconly", "anddi3",
3412         "*andsi3_cc", "*andsi3_cconly", "andsi3",
3413         "*iordi3_cc", "*iordi3_cconly", "iordi3",
3414         "*iorsi3_cc", "*iorsi3_cconly", "iorsi3",
3415         "*xordi3_cc", "*xordi3_cconly", "xordi3",
3416         "*xorsi3_cc", "*xorsi3_cconly", "xorsi3"): Use "nonimmediate_operand"
3417         instead of "register_operand" as predicate for "%0" operand.
3418
3419 2002-09-06  Jakub Jelinek  <jakub@redhat.com>
3420
3421         * configure.in (HAVE_AS_OFFSETABLE_LO10): Use -xarch=v9
3422         unconditionally when gcc_cv_as_flags64 checks are gone.
3423         * configure: Rebuilt.
3424
3425 2002-09-06  Alan Modra  <amodra@bigpond.net.au>
3426
3427         * config/rs6000/rs6000.md (extzvsi_internal2): Revert most of
3428         2002-07-26 change.  Comment.
3429
3430 2002-09-05  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
3431
3432         * frv.c (frv_unique_section, frv_select_section,
3433         frv_select_rtx_section): Delete.
3434         (frv_in_small_data_p): New.
3435         (TARGET_ASM_UNIQUE_SECTION, TARGET_ASM_SELECT_SECTION,
3436         TARGET_ASM_SELECT_RTX_SECTION): Delete.
3437         (TARGET_IN_SMALL_DATA_P): Define.
3438
3439 2002-09-05  Dale Johannesen  <dalej@apple.com>
3440
3441         * reload1.c (reload):  Retain only those memory clobbers
3442         added for variable-array handling.
3443
3444 2002-09-05  Jason Thorpe  <thorpej@wasabisystems.com>
3445
3446         * config/arm/arm.c (arm_return_in_memory): Implement ATPCS
3447         return-in-memory rules.
3448         * config/arm/arm.h (ARM_FLAG_ATPCS, TARGET_ATPCS): Define.
3449
3450 2002-09-05  David Edelsohn  <edelsohn@gnu.org>
3451
3452         * config/rs6000/xcoff.h (HOT_TEXT_SECTION_NAME): Delete.
3453         (UNLIKELY_EXECUTED_TEXT_SECTION_NAME): Delete.
3454
3455 2002-09-05  Jason Thorpe  <thorpej@wasabisystems.com>
3456
3457         * real.c: Avoid parse error if FLOAT_WORDS_BIG_ENDIAN is
3458         not a compile-time constant for the non-IBM case.
3459         * config/arm/arm-protos.h (arm_float_words_big_endian): New
3460         prototype.
3461         * config/arm/arm.c (arm_float_words_big_endian): New function.
3462         * config/arm/arm.h (TARGET_CPU_CPP_BUILTINS): Define __VFP_FP__
3463         if TARGET_VFP  and not TARGET_HARD_FLOAT.
3464         (ARM_FLAG_VFP, TARGET_VFP): Define.
3465         (FLOAT_WORDS_BIG_ENDIAN): Use arm_float_words_big_endian.
3466
3467 2002-09-05  David Edelsohn  <edelsohn@gnu.org>
3468
3469         * doc/install.texi: Correct text of s390-*-linux* and s390x-*-linux*
3470         URLs.  Fix AIX wording.
3471
3472 2002-09-05  Stan Shebs  <shebs@apple.com>
3473
3474         * config/rs6000/rs6000.c (rs6000_override_options): Make -fpic and
3475         -fPIC equivalent on Darwin.
3476
3477 Thu Sep  5 16:27:47 2002  J"orn Rennecke <joern.rennecke@superh.com>
3478
3479         * sh.c (sh_expand_builtin): Return early if encountering an
3480         error_mark for a type.
3481
3482 2002-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
3483
3484         * config/s390/s390.c (s390_expand_plus_operand): Do not require
3485         double-word scratch register.
3486         config/s390/s390.md ("reload_indi", "reload_insi"): Adapt.
3487
3488         ("*tmqi_ext", "*tmdi_mem", "*tmsi_mem", "*tmhi_mem", "*tmqi_mem",
3489         "*cli"): Replace s_operand by memory_operand.
3490         ("cmpstrdi", "cmpstrsi"): Replace s_operand by general_operand.
3491
3492 2002-09-05  Kazu Hirata  <kazu@cs.umass.edu>
3493
3494         * config/h8300/h8300.c (asm_file_start): Add a missing
3495         semicolon.