OSDN Git Service

add i370-*-openedition to bypass fixinc list
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
1 2002-11-25  Dave Pitts  <dpitts@cozx.com>
2
3         * gcc/fixinc/mkfixinc.sh: add i370-*-openedition to bypass fixinc list
4
5 2002-11-25  Kazu Hirata  <kazu@cs.umass.edu>
6
7         * config/h8300/h8300.md (an anonymous pattern): New.
8
9 2002-11-25  Richard Henderson  <rth@redhat.com>
10
11         * alias.c (find_base_value): Use new_reg_base_value if it's live.
12         (copying_arguments): Make boolean.
13
14 2002-11-25  Jason Thorpe  <thorpej@wasabisystems.com>
15
16         * gcc.c (static_spec_functions): Add if-exists-else spec
17         function.
18         (if_exists_else_spec_function): New function.
19         * doc/invoke.texi: Document the if-exists-else spec function.
20
21         * config/netbsd-elf.h (NETBSD_STARTFILE_SPEC): For -static, use
22         "%:if-exists-else(crtbeginT%O%s crtbegin%O%s)".
23
24 2002-11-25  Jason Thorpe  <thorpej@wasabisystems.com>
25
26         * config.gcc (powerpc-*-netbsd*): Replace "svr4.h" with
27         "netbsd.h netbsd-elf.h" in tm_file.  Set tmake_file to
28         "${tmake_file} rs6000/t-netbsd".
29         * config/rs6000/netbsd.h: Rewrite.
30         * config/rs6000/t-netbsd: New file.
31
32 2002-11-25  Kazu Hirata  <kazu@cs.umass.edu>
33
34         * config/h8300/h8300.md (an anonymous pattern): Relax the
35         condition for the pattern.
36
37 2002-11-25  Aldy Hernandez  <aldyh@redhat.com>
38
39         * config/rs6000/rs6000.h (enum rs6000_builtins): Remove evmwlssf,
40         evmwlsmf, evmwlssfa, evmwlsmfa, evmwlssfaaw, evmwlsmfaaw,
41         evmwlssfanw, evmwlsmfanw.
42
43         * config/rs6000/rs6000.c (bdesc_2arg): Same.
44
45         * config/rs6000/spe.md: Same for patterns.
46
47 2002-11-25  Christian Ehrhardt  <ehrhardt@mathematik.uni-ulm.de>
48
49         PR c/8639
50         * fold-const.c (extract_muldiv): Don't propagate division unless
51         both arguments are multiples of C.
52
53 2002-11-25  Andrew Haley  <aph@redhat.com>
54
55         * libgcc-std.ver (_Unwind_Find_Enclosing_Function): Add.
56         * config/ia64/unwind-ia64.c (_Unwind_Find_Enclosing_Function): New.
57         * unwind-sjlj.c (_Unwind_Find_Enclosing_Function): Likewise.
58         * unwind-dw2.c (_Unwind_Find_Enclosing_Function): Likewise.
59
60 2002-11-24  Kazu Hirata  <kazu@cs.umass.edu>
61
62         * config/h8300/h8300.c (h8300_init_once): Fix a typo in the
63         target help message.
64
65 2002-11-24  Jason Thorpe  <thorpej@wasabisystems.com>
66
67         * config.gcc (*-*-netbsd*1.[7-9]*, *-*-netbsd*[2-9]*): Set
68         extra_parts to "crtbegin.o crtend.o crtbeginS.o crtendS.o
69         crtbeginT.o".
70         (arm*-*-netbsd*, i[34567]86-*-netbsd*, m68k*-*-netbsd*)
71         (ns32k-*-netbsd*, sparc-*-netbsd*, vax-*-netbsd*): Set extra_parts
72         to "" for a.out configurations.
73         * config/t-netbsd (CRTSTUFF_T_CFLAGS): Set to "-fPIC".
74
75 2002-11-24  Jason Thorpe  <thorpej@wasabisystems.com>
76
77         * config/alpha/netbsd.h (CPP_SUBTARGET_SPEC): Just use
78         NETBSD_CPP_SPEC directly. 
79         (SUBTARGET_EXTRA_SPECS): Remove netbsd_cpp_spec.  Add
80         netbsd_endfile_spec.
81         (ENDFILE_SPEC): Use %(netbsd_endfile_spec).
82
83 2002-11-24  Jason Thorpe  <thorpej@wasabisystems.com>
84
85         * config/netbsd-elf.h (STARTFILE_SPEC): Rename to
86         NETBSD_STARTFILE_SPEC.
87         (STARTFILE_SPEC): Redefine in terms of NETBSD_STARTFILE_SPEC.
88         (ENDFILE_SPEC): Likewise.
89         * config/netbsd.h (LIB_SPEC, LIBGCC_SPEC): Likewise.
90
91 2002-11-24  Andreas Schwab  <schwab@suse.de>
92
93         * Makefile.in (install-driver): Remove versioned link before
94         trying to create it.
95
96         * config/m68k/m68k.c: Fix typo in last change defining
97         TARGET_ASM_CAN_OUTPUT_MI_THUNK.
98
99 2002-11-23  Kazu Hirata  <kazu@cs.umass.edu>
100
101         * config/h8300/h8300.c (print_operand): Update the use of
102         h8300_tiny_constant_address_p.
103         (h8300_adjust_insn_length): Likewise.
104         (h8300_tiny_constant_address_p): Check if the given rtx is a
105         variable declared with __attribute__ ((tiny_data)).
106
107 2002-11-22  Dale Johannesen  <dalej@apple.com>
108
109         * toplev.c (rest_of_compilation):  Fix comments.
110
111 2002-11-22  Geoffrey Keating  <geoffk@apple.com>
112
113         * aclocal.m4 (ac_cv_func_mmap_dev_zero): Darwin does not
114         allow mmap from /dev/zero.  Don't make decisions for the host
115         based on presence or absence of /dev/zero on the build machine.
116         (ac_cv_func_mmap_anon): Darwin does have working MMAP_ANON.
117         (AC_FUNC_MMAP_FILE): Darwin does have mmap of a file.
118         * configure: Regenerate.
119
120 2002-11-22  Daniel Jacobowitz  <drow@mvista.com>
121
122         * gcc.c (make_relative_prefix, split_directories)
123         (free_split_directories): Removed.
124
125 2002-11-22  Daniel Jacobowitz  <drow@mvista.com>
126
127         * configure.in: Set insn=nop for DWARF-2 tests on ARM.
128         * configure: Regenerated.
129
130 2002-11-22  Kazu Hirata  <kazu@cs.umass.edu>
131
132         * config/h8300/h8300.c (compute_a_shift_length): Fix the insn
133         length computation when xor.l is output.
134
135 2002-11-21  Jim Wilson  <wilson@redhat.com>
136
137         * config/rs6000/rs6000.c (function_arg): Set inner mode of SPE
138         vectors to SI.
139
140 2002-11-21  Bob Wilson  <bob.wilson@acm.org>
141
142         * config/xtensa/xtensa-protos.h (xtensa_copy_incoming_a7): Declare.
143         * config/xtensa/xtensa.c (struct machine_function): Add
144         incoming_a7_copied flag.
145         (xtensa_copy_incoming_a7): Define.
146         (xtensa_emit_move_sequence): Use xtensa_copy_incoming_a7.
147         * config/xtensa/xtensa.md (movdi, movsf, movdf): Ditto.
148
149 Thu Nov 21 23:52:04 CET 2002  Jan Hubicka  <jH@suse.cz>
150
151         * i386-protos.h (x86_64_sign_extended_value): Fix prototype.
152         * i386.c (x86_64_general_operand, x86_64_szext_general_operand,
153         x86_64_nonmemory_operand, x86_64_movabs_operand, 
154         x86_64_szext_nonmemory_operand, x86_64_immediate_operand,
155         ix86_expand_int_movcc): Update call of x86_64_sign_extended_value.
156         (local_symbolic_operand): Do not care the 64bit limits.
157         (x86_64_sign_extended_value): Remove allow_rip support.
158         (legitimate_pic_address_disp_p): Handle all cases allowed
159         with RIP addressing.
160         (legitimate_address_p): Use legitimate_pic_address_disp_p for PIC.
161         (legitimize_pic_address): Reorganize.
162         * i386.h (EXTRA_CONSTRAINT): Update call of x86_64_sign_extended_value.
163
164 2002-11-21  Jason Thorpe  <thorpej@wasabisystems.com>
165
166         * config.gcc (arm*-*-netbsdelf*): Enable configuration.
167         * config/arm/netbsd-elf.h: New file.
168
169 2002-11-21  Jason Thorpe  <thorpej@wasabisystems.com>
170
171         * config/arm/elf.h (SUBTARGET_EXTRA_SPECS): Add
172         subtarget_asm_float_spec.
173         (SUBTARGET_ASM_FLOAT_SPEC): Define, moving the
174         defaults from...
175         (ASM_SPEC): ...here.  Use subtarget_asm_float_spec.
176
177 2002-11-21  Nick Clifton  <nickc@redhat.com>
178
179         * config/fr30/fr30.md (movsf_constant_store): Move code to
180         detect 0.0 into fr30.c.
181         * config/fr30/fr30-protos.h (fr30_const_double_is_zero):
182         Prototype.
183         * config/fr30/fr30.c (fr30_const_double_is_zero): New
184         function.  Return true if the rtx is 0.0.
185
186 2002-11-21  Jason Thorpe  <thorpej@wasabisystems.com>
187
188         * config/arm/elf.h (ASM_SPEC, LINK_SPEC): Pass -EL
189         if -mlittle-endian is specified.
190
191 2002-11-21  Richard Earnshaw  <rearnsha@arm.com>
192
193         PR optimization/2903
194         * arm.md (anddi_notzesidi_di): Operand 2 is inverted not operand 1.
195         (anddi_notsesidi_di): Likewise.
196
197 2002-11-21  Kazu Hirata  <kazu@cs.umass.edu>
198
199         * config/h8300/h8300.c (print_operand): Use
200         h8300_eightbit_constant_address_p and
201         h8300_tiny_constant_address_p.
202         (h8300_adjust_insn_length): Likewise.
203         * config/h8300/h8300.h (EIGHTBIT_CONSTANT_ADDRESS_P): Remove.
204         (TINY_CONSTANT_ADDRESS_P): Likewise.
205         (OK_FOR_U): Use eightbit_constant_address_p.
206
207 2002-11-21  Ulrich Weigand  <uweigand@de.ibm.com>
208
209         * config/s390/libgcc-libc.ver: Add multilib support.
210         * config/s390/linux.h (MULTILIB_DEFAULT): Define.
211         * config/s390/t-linux64 (MULTILIB_OPTIONS, MULTILIB_DIRNAMES, 
212         MULTILIB_OSDIRNAMES, LIBGCC, INSTALL_LIBGCC, 
213         EXTRA_MULTILIB_PARTS): Define.
214
215 2002-11-21  Richard Earnshaw  <rearnsha@arm.com>
216
217         * arm.c (arm_get_frame_size): A leaf function does not need its
218         stack padding to an aligned boundary if it has no frame.
219         (thumb_get_frame_size): Likewise.
220
221 2002-11-20  Steve Ellcey  <sje@cup.hp.com>
222
223         * emit-rtl.c (gen_reg_rtx): Simplify mapping of Complex type
224         to component type using GET_MODE_INNER.
225         * expr.c (emit_move_insn_1): Ditto.
226         * optabs.c (expand_binop): Ditto.
227         (expand_unop): Ditto.
228         (expand_complex_abs): Ditto.
229
230 2002-11-20  Douglas B Rupp  <rupp@gnat.com>
231
232         * hwint.h (HAVE___INT64): Fix typo (was HAVE__INT64).
233
234 2002-11-20  DJ Delorie  <dj@redhat.com>
235
236         * config/stormy16/stormy16.c (s16builtins,
237         xstormy16_init_builtins, xstormy16_expand_builtin): New.
238         * config/stormy16/stormy16.md (divmodhi4, sdivlh, udivlh): New.
239
240 2002-11-20  Hans-Peter Nilsson  <hp@bitrange.com>
241
242         * Makefile.in (RUN_GEN, VALGRIND_DRIVER_DEFINES): New variables.
243         (DRIVER_DEFINES): Add $(VALGRIND_DRIVER_DEFINES).
244         (executing gencheck, genconfigs, genconditions, genflags,
245         gencodes, genconstants, genemit, genrecog, genopinit, genextract,
246         genpeep, genattr, genattrtab, genoutput, gengenrtl, genpreds,
247         gengtype, genprotos): Prepend $(RUN_GEN).
248         * configure.in: Move host compiler tests before --enable-checking
249         tests.
250         (--enable-checking=valgrind): New.
251         * config.in, configure: Regenerate.
252         * cppfiles.c [!ENABLE_VALGRIND_CHECKING] (VALGRIND_DISCARD):
253         Define as empty.
254         (read_include_file): When doing the mmap+1 trick,
255         valgrind-annotate the byte after the mmap:ed area as readable.
256         (purge_cache): Remove above annotation.
257         * gcc.c (execute) [ENABLE_VALGRIND_CHECKING]: Arrange to prepend
258         VALGRIND_PATH -q to each command.
259
260         * ggc-common.c [!ENABLE_VALGRIND_CHECKING] (VALGRIND_DISCARD):
261         Define as empty.
262         (ggc_realloc): Update valgrind annotations.
263         * ggc-page.c [!ENABLE_VALGRIND_CHECKING] (VALGRIND_DISCARD):
264         Define as empty.
265         (alloc_anon, free_page, ggc_alloc, poison_pages): Add machinery to
266         valgrind-annotate memory.
267
268 2002-11-20  Ulrich Weigand  <uweigand@de.ibm.com>
269
270         * recog.c (constrain_operands): Prefer exact match over reloadable
271         EXTRA_MEMORY_CONSTRAINT or EXTRA_ADDRESS_CONSTRAINT.
272
273         * reload.c (find_reloads): Always reload EXTRA_ADDRESS_CONSTRAINT
274         operands in Pmode.
275
276 2002-11-20 ¬†Eric Botcazou ¬†<ebotcazou@libertysurf.fr>
277
278         PR c/8518
279         * c-decl.c (duplicate_decls): Outline the second definition
280         of an extern inline function in all cases.
281
282 2002-11-20  Richard Sandiford  <rsandifo@redhat.com>
283
284         * stor-layout.c (place_field): Update rli->offset as well as
285         rli->bitpos.
286
287 2002-11-20  Richard Sandiford  <rsandifo@redhat.com>
288
289         * sched-deps.c (sched_analyze): Check HARD_REGNO_CALL_PART_CLOBBERED.
290
291 2002-11-20  Richard Sandiford  <rsandifo@redhat.com>
292
293         * config/sh/sh.md (udivsi3): Don't put udivsi3_i4_media instructions
294         into a libcall block.
295         (divsi3): Likewise divsi3_i4_media.
296
297 2002-11-20  Richard Sandiford  <rsandifo@redhat.com>
298
299         * global.c (find_reg): Check HARD_REGNO_NREGS before kicking
300         out another register.
301
302 2002-11-20  Jakub Jelinek  <jakub@redhat.com>
303
304         * combine.c (force_to_mode): Only replace with (not Y) if all bits in fuller_mask
305         (not just mask) are set in C.
306
307 2002-11-19  Andreas Jaeger  <aj@suse.de>
308
309         * loop.c (record_giv): Initialize not_replaceable.
310         (check_final_value): Likewise.
311
312 2002-11-19  Kazu Hirata  <kazu@cs.umass.edu>
313
314         * config/h8300/h8300.c (h8300_init_once): Replace 1 with
315         MASK_H8300S.
316
317 2002-11-19  Vijay L. Khuspe  <vijayk1@kpit.com>
318
319         * config/h8300/h8300.c (h8300_init_once): Allow -mn switch
320         only if -mh or -ms present.
321         (h8300_eightbit_constant_address_p): Support the normal mode.
322         (h8300_tiny_constant_address_p): Likewise.
323         * config/h8300/h8300.h (TARGET_NORMAL_MODE): New.
324         (POINTER_SIZE): Add 16 bit pointer for the normal mode.
325         (Pmode): Evaluate to HImode for the normal mode.
326         (SIZE_TYPE): Evaluate to unsigned int for normal mode.
327         (PTRDIFF_TYPE): Evaluate to int for the normal mode.
328         (ASM_WORD_OP): Evaluate to word for the normal mode.
329         * config/h8300/h8300.md (tablejump_normal_mode): New.
330         (indirect_jump_normal_mode): New.
331         * config/h8300/t-h8300 (MULTILIB_OPTIONS): Pass -mn option to
332         directory.
333         (MULTILIB_DIRNAMES): Create target dependent directory
334         'normal'.
335         (MULTILIB_EXCEPTIONS): Don't turn on -mn on H8/300.
336         * doc/invoke.texi (gccoptlist): Describe the new switch -mn.
337
338 Tue Nov 19 23:50:56 CET 2002  Jan Hubicka  <jh@suse.cz>
339
340         * i386.md (length_immediate): Do not refer to insn address.
341         (jcc*, jmp patterns):  Compute length explicitly.
342
343 2002-11-19 Eric Botcazou <ebotcazou@libertysurf.fr>
344
345         PR c/8588
346         * optabs.c (expand_binop): Convert CONST_INTs in shift
347         operations too.
348
349 2002-11-19  Roger Sayle  <roger@eyesopen.com>
350
351         * gcse.c (gcse_emit_move_after): Correct typo in REG_EQUAL note.
352
353 2002-11-19  Kazu Hirata  <kazu@cs.umass.edu>
354
355         * config/h8300/h8300.md (an anonymous pattern): Relax the
356         condition to accept the same operands and/or subregs.
357
358 2002-11-19  Daniel Jacobowitz  <drow@mvista.com>
359
360         * config/sh/sh.c (gen_shl_and): Revert previous patch.
361         * config/sh/sh.md (ashrdi3+1, ashrdi3+2): Predicate on
362         reload_completed.
363
364 2002-11-19  Kazu Hirata  <kazu@cs.umass.edu>
365
366         * config/h8300/h8300.c (print_operand): Update the use of
367         EIGHTBIT_CONSTANT_ADDRESS_P.
368         (h8300_adjust_insn_length): Likewise.
369         (h8300_eightbit_constant_address_p): Check if the given rtx is
370         a variable with __attribute__((eightbit_data)).
371         * config/h8300/h8300.h (OK_FOR_U): Update the use of
372         EIGHTBIT_CONSTANT_ADDRESS_P.
373
374 2002-11-19  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
375
376         * doc/contrib.texi (Contributors): Add self as second contact in
377         addition to Jeff Law.
378
379 2002-11-19  Andreas Jaeger  <aj@suse.de>
380
381         * tree-inline.c: Move prototpyes of find_alloca_call_1 and
382         find_alloca_call to right place.
383
384 2002-11-19  Kazu Hirata  <kazu@cs.umass.edu>
385
386         * cppfiles.c: Fix formatting.
387
388 2002-11-19  Jason Thorpe  <thorpej@wasabisystems.com>
389
390         * gcc.c (The Specs Language): Document spec functions.
391         (static_spec_functions, lookup_spec_function)
392         (eval_spec_function, handle_spec_function)
393         (if_exists_spec_function, alloc_args): New.
394         (execute): Abort if processing_spec_function is true.
395         (do_spec_1): Hand off spec to handle_spec_function if %:
396         is encountered.  If processing_spec_function is true,
397         end any pending argument when the end of the string is reached.
398         (main): Use alloc_args to allocate the initial argument vector.
399         * gcc.h (struct spec_function): New.
400         (lang_specific_spec_functions): New extern.
401
402         * config/netbsd-elf.h (STARTFILE_SPEC): Add if-exists(crti%O%s).
403         (ENDFILE_SPEC): Add if-exists(crtn%O%s).
404         * config/alpha/netbsd.h (ENDFILE_SPEC): Likewise.
405
406         * doc/invoke.texi: Document spec functions.
407
408         * cppspec.c (lang_specific_spec_functions): New.
409         * gccspec.c: Likewise.
410
411 2002-11-18  Steve Ellcey  <sje@cup.hp.com>
412
413         * config/ia64/hpux_longdouble.h (FIXUNS_TRUNCTFSI2_LIBCALL): New.
414         (FIXUNS_TRUNCTFDI2_LIBCALL): New.
415         (fixunstfsi_libfunc): Change.
416         (fixunstfdi_libfunc): Change.
417         (sdiv_optab): Don't zero out SImode handler.
418         (udiv_optab): Don't zero out SImode handler.
419         (smod_optab): Don't zero out SImode handler.
420         (umod_optab): Don't zero out SImode handler.
421
422 2002-11-18  Neil Booth  <neil@daikokuya.co.uk>
423
424         PR preprocessor/8524
425         * cpplib.c (run_directive): Remove previous kludge to _Pragma.
426         Add a new one in its place, which hopefully works.
427         (skip_rest_of_line): Change test for bottom-of-context-stack.
428
429 Mon Nov 18 21:29:03 CET 2002  Jan Hubicka  <jh@suse.cz>
430
431         * i386.md (addqi_1_slp): Fix output template.
432         (subqi_1_slp): Fix type.
433
434 Sun Nov 17 00:01:28 CET 2002  Jan Hubicka  <jh@suse.cz>
435
436         * calls.c (alloca_call_p): New global function.
437         * tree.h (alloca_call_p): New.
438         * tree-inline.c (inlinable_function_p):  Do not inline when
439         function calls alloca.
440         (find_alloca_call, find_alloca_call_1): New functions.
441
442 2002-11-18  Kazu Hirata  <kazu@cs.umass.edu>
443
444         * config/h8300/h8300.md (*andorqi3): Use bor between bld and
445         bst.  Update the insn length.
446         (*andorhi3): Likewise.
447         (*andorsi3): Likewise.
448
449 2002-11-18  Richard Sandiford  <rsandifo@redhat.com>
450
451         * config/sh/sh-protos.h (sh_mark_label): Declare.
452         * config/sh/sh.c (sh_mark_label): New function, taken from
453         movdi_const, but fixing the case when the address has an addend.
454         * config/sh/sh.md (movdi_const, movdi_const_32bit): Use it.
455
456 2002-11-18  Richard Sandiford  <rsandifo@redhat.com>
457
458         * config/sh/sh.c (pool_node): New field: part_of_sequence_p.
459         (add_constant): Set it.
460         (dump_table): Don't reorder a constant if part_of_sequence_p.
461         (machine_dependent_reorg): Assume that float constants will
462         stay in their original order if used as a sequence.
463
464 2002-11-18  Richard Sandiford  <rsandifo@redhat.com>
465
466         * config/sh/sh.c (calc_live_regs): Update check for PIC liveness
467         in compact code.
468
469 2002-11-18  Richard Sandiford  <rsandifo@redhat.com>
470
471         * config/sh/sh.md (initialize_trampoline): Do not force the
472         trampoline address into R0_REGS here.
473
474 2002-11-17  Kazu Hirata  <kazu@cs.umass.edu>
475
476         * df.c: Fix formatting.
477
478 2002-11-17  Kazu Hirata  <kazu@cs.umass.edu>
479
480         * config/h8300/h8300.md (two anonymous patterns): Fix insn
481         lengths.
482
483 2002-11-17  Daniel Jacobowitz  <drow@mvista.com>
484
485         * sh.c (gen_shl_and): Don't create a zero_extend if the operand
486         is not an arith_reg_operand.
487
488 2002-11-17  Graham Stott  <graham.stott@btinternet.com>
489
490         * real.c (real_to_decimal): Fix buffer overrun when buffer size
491         is smaller than representation.
492
493 2002-11-17  Kazu Hirata  <kazu@cs.umass.edu>
494
495         * builtins.c: Fix formatting.
496
497 2002-11-16  Kazu Hirata  <kazu@cs.umass.edu>
498
499         * config/h8300/h8300.md (two anonymous patterns): Fix typos.
500
501 2002-11-16  Kazu Hirata  <kazu@cs.umass.edu>
502
503         * config/h8300/h8300.md: Fix formatting.
504
505 2002-11-16  Kazu Hirata  <kazu@cs.umass.edu>
506
507         * config/h8300/h8300.md: Replace spaces with tabs.
508         * config/h8300/t-h8300: Remove a trailing empty line.
509
510 2002-11-16  Kazu Hirata  <kazu@cs.umass.edu>
511
512         * tlink.c: Fix formatting.
513
514 2002-11-16  David Edelsohn  <edelsohn@gnu.org>
515
516         PR 8362
517         * config/rs6000/rs6000.c (rs6000_outout_load_multiple): New function.
518         * config/rs6000/rs6000.md (movti_string): Remove output modifier
519         when scratch register never needed.
520         (ldmsi[3-8]): New patterns.
521
522 2002-11-16  Kazu Hirata  <kazu@cs.umass.edu>
523
524         * hard-reg-set.h: Follow spelling conventions.
525         * real.c: Likewise.
526         * target.h: Likewise.
527
528 2002-11-16  Jakub Jelinek  <jakub@redhat.com>
529
530         * config/i386/x86-64.h (MCOUNT_NAME): Change into string literal.
531
532 2002-11-16  Kazu Hirata  <kazu@cs.umass.edu>
533
534         * optabs.c: Fix formatting.
535
536 Sat Nov 16 02:06:02 CET 2002  Jan Hubicka  <jh@suse.cz>
537
538         * athlon.md, k6.md, pentium.md, ppro.md: Handle shift1, rotate1
539         * i386.md (attribute type): Add type shift1 and rotate1.
540         (*_slp): Rewrite to have just two operands to avoid reload problems.
541
542 2002-11-15  Kazu Hirata  <kazu@cs.umass.edu>
543
544         * config/h8300/h8300.md (4 anonymous patterns): New.
545
546 2002-11-15  Geoffrey Keating  <geoffk@apple.com>
547
548         * params.def (GGC_MIN_HEAPSIZE): Fix GGC_ALWAYS_COLLECT problem.
549         * doc/invoke.texi: Correct description of what needs to be done to
550         force collection at every ggc_collect call.
551
552 2002-11-15  Ulrich Weigand  <uweigand@de.ibm.com>
553
554         * config/s390/s390.c (optimization_options): Set
555         flag_asynchronous_unwind_tables to 1 by default.
556
557 2002-11-15  Ulrich Weigand  <uweigand@de.ibm.com>
558
559         * config/s390/s390.h (ASM_PREFERRED_EH_DATA_FORMAT): Define.
560
561 Fri Nov 15 14:54:19 CET 2002  Jan Hubicka  <jh@suse.cz>
562
563         * i386-protos.h (x86_function_profiler): New function
564         * i386.h (MCOUNT_NAME): New.
565         (PROFILE_COUNT_REGISTER): New.
566         (FUNCTION_PROFILER): Move offline to ...
567         * i386.c (x86_function_profiler) ... here; fix 64bit support
568         * beos-elf.h (FUNCTION_PROFILER): Kill.
569         (MCOUNT_NAME): New.
570         * freebsd-aout.h (FUNCTION_PROFILER): Kill.
571         (MCOUNT_NAME): New.
572         (PROFILE_COUNT_REGISTER): New.
573         * linux.h (FUNCTION_PROFILER): Kill.
574         (MCOUNT_NAME): New.
575         * x86-64.h (FUNCTION_PROFILER): Kill.
576         (MCOUNT_NAME): New.
577         * freebsd.h (FUNCTION_PROFILER): Kill.
578         (MCOUNT_NAME): New.
579
580 2002-11-14  Jeroen Dobbelaere  <jeroen.dobbelaere@acunia.com>
581
582         * config/arm/arm.h (EXPAND_BUILTIN_VA_ARG,
583         FUNCTION_ARG_PASS_BY_REFERENCE): Define.
584         * config/arm/arm.c (arm_va_arg,
585         arm_function_arg_pass_by_reference): New.
586         * config/arm/arm-protos.h: Add prototypes.
587
588 2002-11-14  Kazu Hirata  <kazu@cs.umass.edu>
589
590         * gthr-single.h: Fix formatting.
591
592 2002-11-14  Zack Weinberg  <zack@codesourcery.com>
593
594         * tree.c (tree_vec_elt_check_failed): New function.
595         * tree.h (TREE_VEC_ELT_CHECK): New checking macro.
596         (TREE_VEC_ELT): Use it.
597
598         * tree-inline.c (optimize_inline_calls): Don't copy a
599         zero-length vector.
600
601 2002-11-14  Gabriel Dos Reis  <gdr@integrable-solutions.net>
602
603         * diagnostic.c (sorry): Don't repeat "sorry, unimplemented" text.
604
605 2002-11-14  Jakub Jelinek  <jakub@redhat.com>
606
607         * varasm.c (output_addressed_constants) [MINUS_EXPR]: Clear reloc if
608         both operands contain local relocations.
609         (categorize_decl_for_section): Don't use mergeable sections if
610         initializer has any relocations.
611
612 2002-11-14  Kazu Hirata  <kazu@cs.umass.edu>
613
614         * gthr-vxworks.h: Fix formatting.
615
616 2002-11-13  Janis Johnson  <janis187@us.ibm.com>
617
618         * doc/install.texi (Testing): Document extra Java testing.
619         * doc/sourcebuild.texi (Test Suites): Document libgcj testing.
620
621 2002-11-13  John David Anglin  <dave@hiauly1.hia.nrc.ca>
622
623         * pa64-hpux.h (LINK_SPEC): Move "+Accept TypeMismatch" switch to the
624         beginning of the spec.
625         (LDD_SUFFIX, PARSE_LDD_OUTPUT): Delete.
626         (LD_INIT_SWITCH, LD_FINI_SWITCH): Define but don't enable.  Add comment
627         regarding problems with global constructors when using GNU ld.
628
629 2002-11-13  Kazu Hirata  <kazu@cs.umass.edu>
630
631         * gthr-solaris.h: Fix formatting.
632
633 2002-11-13  Kazu Hirata  <kazu@cs.umass.edu>
634
635         * gthr-posix.h: Fix formatting.
636
637 2002-11-12  Kazu Hirata  <kazu@cs.umass.edu>
638
639         * config/h8300/h8300.md (*andorsi3): New.
640
641 2002-11-12  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
642
643         * doc/install.texi (powerpc-*-linux-gnu*): Update binutils requirement.
644
645 2002-11-12  Kazu Hirata  <kazu@cs.umass.edu>
646
647         * config/h8300/h8300.c (tiny_constant_address_p): Parenthesize
648         expressions appropriately.
649
650 2002-11-12  Kazu Hirata  <kazu@cs.umass.edu>
651
652         * gthr-win32.h: Fix formatting.
653
654 2002-11-12  Kazu Hirata  <kazu@cs.umass.edu>
655
656         * config/h8300/h8300.c (single_one_operand): Correctly compute
657         mask when mode is SImode.
658         (single_zero_operand): Likewise.
659         * config/h8300/h8300.md (two new anonymous insns): New.
660
661 2002-11-12  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
662
663         * doc/contrib.texi (Contributors): Use GCJ instead of gcj to refer
664         to that entire project.
665
666 2002-11-12  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
667
668         * config/mips/t-iris6 (MULTILIB_OSDIRNAMES): Restore old
669         directories.
670
671 2002-11-11  Zack Weinberg  <zack@codesourcery.com>
672
673         * params.def (ggc-min-expand, ggc-min-heapsize): New parameters.
674         * doc/invoke.texi: Document them.
675
676         * ggc-page.c: Include params.h.  Remove definitions of
677         GGC_MIN_EXPAND_FOR_GC, GGC_MIN_LAST_ALLOCATED.  Replace
678         GGC_POISON with ENABLE_GC_CHECKING in ifdefs, delete #define.
679         (init_gcc): Don't set G.allocated_last_gc here.
680         (ggc_collect): Use PARAM_VALUE (GGC_MIN_HEAPSIZE) and
681         PARAM_VALUE (GGC_MIN_EXPAND) to decide whether or not to
682         perform collection.
683         * ggc-simple.c: Similarly.
684         * Makefile.in (ggc-common.o, ggc-simple.o): Add $(PARAMS_H) to
685         dependencies.
686
687 2002-11-11  Kazu Hirata  <kazu@cs.umass.edu>
688
689         * gthr-dce.h: Fix formatting.
690
691 2002-11-11  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
692
693         PR c/8467
694         * stmt.c (tail_recursion_args): Handle DECL_MODE differing from the
695         mode of DECL_RTL case.
696
697 2002-11-11  Janis Johnson  <janis187@us.ibm.com>
698
699         * doc/contrib.texi: Merge in the list from the libstdc++ web pages.
700
701 Mon Nov 11 12:06:08 CET 2002  Jan Hubicka  <jh@suse.cz>
702
703         * i386.c (construct_container): Fix handling of SSE_CLASS.
704
705 2002-11-10  Joel Sherrill <joel@gcc.gnu.org>
706
707         * config/m68k/t-crtstuff (crti.o): Use this...
708         ($(T)crti.o): ... instead.
709         (crtn.o): Use this...
710         ($(T)crtn.o): ... instead.
711
712 2002-11-09  Eric Botcazou  <ebotcazou@libertysurf.fr>
713
714         PR c/8439
715         * recog.c (validate_replace_rtx_1) [PLUS]: Simplify only
716         if there is something new to be simplified.
717
718 2002-11-10  H.J. Lu <hjl@gnu.org>
719
720         * calls.c (PUSH_ARGS_REVERSED): Define only if not defined.
721         * expr.c (PUSH_ARGS_REVERSED): Likewise.
722
723         * config/i386/i386.h (PUSH_ARGS_REVERSED): Set to 1.
724
725 2002-11-10  Zack Weinberg  <zack@codesourcery.com>
726
727         * config/rs6000/sysv4.h: Define NO_IMPLICIT_EXTERN_C here...
728         * config/rs6000/linux.h, config/rs6000/linux64.h,
729         config/rs6000/windiss.h: ... not here.
730
731 2002-11-10  Jason Thorpe  <thorpej@wasabisystems.com>
732
733         * config/mips/netbsd.h (TARGET_OS_CPP_BUILTINS): Define
734         __ABICALLS__ if TARGET_ABICALLS.
735
736 Sun Nov 10 18:49:21 CET 2002  Jan Hubicka  <jh@suse.cz>
737
738         * i386.h (MIN_UNITS_PER_WORD): Define to 8 for x86-64 libgcc.
739
740 2002-11-10  Joseph S. Myers  <jsm@polyomino.org.uk>
741
742         * c-decl.c (grokdeclarator): Make error for duplicate type
743         qualifiers into a pedwarn, disabled for C99.
744
745 2002-11-10  Hans-Peter Nilsson  <hp@bitrange.com>
746
747         * config/mmix/mmix.h (FUNCTION_ARG_CALLEE_COPIES): Define the same
748         as FUNCTION_ARG_PASS_BY_REFERENCE.
749
750 2002-11-09  John David Anglin  <dave@hiauly1.hia.nrc.ca>
751
752         * pa.h (STARTING_FRAME_OFFSET): Change offset for TARGET_64BIT to 16.
753
754         * config.gcc (hppa*64*-*-linux*): Shorten lines in tm_file define.
755         (hppa*64*-*-hpux11*): Likewise.  Use elfos.h with gas.
756         * pa.c (output_millicode_call): Use symbol difference rather than
757         $PIC_pcrel$0 when using HP assembler.
758         * pa64-hpux.h (TARGET_GAS): Define to 1 or 0 depending on whether or
759         not elfos.h (i.e., gas) is being used.
760         (ASM_FILE_START, STRING_ASM_OP, TEXT_SECTION_ASM_OP,
761         DATA_SECTION_ASM_OP, BSS_SECTION_ASM_OP, ASM_OUTPUT_ALIGNED_COMMON,
762         ASM_OUTPUT_ALIGNED_LOCAL, GLOBAL_ASM_OP, ASM_DECLARE_FUNCTION_NAME,
763         ASM_OUTPUT_EXTERNAL, ASM_OUTPUT_EXTERNAL_LIBCALL,
764         ASM_OUTPUT_INTERNAL_LABEL, ASM_GENERATE_INTERNAL_LABEL): Define when
765         using elfos.h.
766         (TARGET_ASM_GLOBALIZE_LABEL): Undefine when using elfos.h.
767         (DWARF2_ASM_LINE_DEBUG_INFO): Delete.
768         (ASM_FILE_START): Add standard .SPACE and .SUBSPA defines when not
769         using elfos.h.
770         (TEXT_SECTION_ASM_OP, READONLY_DATA_SECTION_ASM_OP, DATA_SECTION_ASM_OP,
771         BSS_SECTION_ASM_OP): New HP style defines when not using elfos.h.
772         (TARGET_ASM_NAMED_SECTION, MAKE_DECL_ONE_ONLY, ASM_WEAKEN_LABEL):
773         Don't define when not using elfos.h.
774         (ASM_DECLARE_RESULT): Don't define.
775         * doc/install.texi (hppa*-hp-hpux*): Remove statement that HP assembler
776         doesn't work on hppa64-hp-hpux11.
777         (hppa*-hp-hpux11): Update.
778
779 2002-11-09  Jason Thorpe  <thorpej@wasabisystems.com>
780
781         * config/mips/netbsd.h (SUBTARGET_ASM_SPEC): Don't pass -KPIC
782         to the assembler if -mno-abicalls was specified.
783
784 2002-11-09  John David Anglin  <dave@hiauly1.hia.nrc.ca>
785
786         * pa-linux.h (PREFERRED_DEBUGGING_TYPE, DWARF2_ASM_LINE_DEBUG_INFO,
787         ASM_OUTPUT_DEF): Delete.
788
789 2002-11-09  Neil Booth  <neil@daikokuya.co.uk>
790
791         * c-opts.c (COMMAND_LINE_OPTIONS): Fix -Wimplicit.
792
793 2002-11-08  Dale Johannesen  <dalej@apple.com>
794
795         * dbxout.c (dbxout_type):  Fix stabs info for vector types.
796
797 2002-11-08  Neil Booth  <neil@daikokuya.co.uk>
798
799         PR preprocessor/8497
800         PR preprocessor/8501
801         * cpptrad.c (scan_out_logical_line): A '#' from a macro doesn't
802         start a directive.  In assembler, #NUM is not a line directive.
803
804 2002-11-08  Neil Booth  <neil@daikokuya.co.uk>
805
806         * cppmain.c (cpp_preprocess_file): Loop to pop any -included
807         buffers.
808
809 2002-11-08  Kazu Hirata  <kazu@cs.umass.edu>
810
811         * config/h8300/h8300.md (two anonymous test insns): New.
812
813 Fri Nov  8 11:20:19 CET 2002  Jan Hubicka  <jh@suse.cz>
814
815         * jump.c (mark_jump_label): Handle subregs of label_refs.
816
817 2002-11-07  David Mosberger  <davidm@hpl.hp.com>
818
819         * config/ia64/crtend.asm: Include "auto-host.h".
820         [HAVE_INITFINI_ARRAY]: Invoke __do_global_ctors_aux via .init_array.
821         * config/ia64/crtbegin.asm: Similarly.
822         * config/ia64/t-ia64 (crtbegin.o): Include from current directory.
823         (crtend.o, crtbeginS.o, crtendS.o): Likewise.
824
825         * aclocal.m4 (gcc_AC_INITFINI_ARRAY): New.
826         * configure.in: Use it if --enable-initfini-array not specified.
827         * doc/install.texi (Configuration): Document --enable-initfini-array.
828         * configure, config.in: Rebuild.
829
830 2002-11-07  Jason Thorpe  <thorpej@wasabisystems.com>
831
832         * config/arm/arm-protos.h (arm_get_frame_size)
833         (thumb_get_frame_size): New prototypes.
834         * config/arm/arm.c (arm_get_frame_size)
835         (thumb_get_frame_size): New functions.
836         (use_return_insn, arm_output_epilogue, arm_output_function_epilogue)
837         (arm_compute_initial_elimination_offset, arm_expand_prologue): Use
838         arm_get_frame_size.
839         (thumb_expand_prologue, thumb_expand_epilogue): Use
840         thumb_get_frame_size.
841         * config/arm/arm.h (PREFERRED_STACK_BOUNDARY): Define.
842         (machine_function): Add frame_size member.
843         (THUMB_INITIAL_ELIMINATION_OFFSET): Use thumb_get_frame_size.
844
845 2002-11-07  Richard Earnshaw  <rearnsha@arm.com>
846
847         * arm.c (bit_count): Make argument unsigned long.  Return unsigned.
848         Adjust code to use portable unsigned bit manipulation.
849         (insn_flags, tune_flags): Change type to unsigned.
850         (struct processors): Make flags unsigned long.
851         (arm_override_options): Change type of count and current_bit_count
852         to unsigned.
853
854 2002-11-07  Richard Earnshaw  <rearnsha@arm.com>
855
856         * arm/elf.h (TYPE_OPERAND_FMT): Prefix type with %.
857
858 Thu Nov  7 15:50:18 2002  J"orn Rennecke <joern.rennecke@superh.com>
859
860         * sh.h (DWARF_FRAME_RETURN_COLUMN): Use DWARF_FRAME_REGNUM.
861
862 Thu Nov  7 11:18:01 CET 2002  Jan Hubicka  <jh@suse.cz>
863
864         * reg-stack.c (compensate_edge): Fix sanity check.
865
866 2002-11-05  Geoffrey Keating  <geoffk@apple.com>
867
868         * config.gcc: Don't create crtbegin, crtend on Darwin; do create
869         crt2.o.  Rearrange t-darwin makefiles.
870         * crtstuff.c [OBJECT_FORMAT_MACHO]: Delete.
871         * unwind-dw2-fde-darwin.c: New.
872         * unwind-dw2-fde-glibc.c: Correct comment.
873         * unwind-dw2-fde.c (__register_frame_info_bases)
874         [DWARF2_OBJECT_END_PTR_EXTENSION]: Clear fde_end.
875         (classify_object_over_fdes): Use last_fde.
876         (add_fdes): Likewise.
877         (linear_search_fdes): Likewise.
878         * unwind-dw2-fde.h (struct object)
879         [DWARF2_OBJECT_END_PTR_EXTENSION]: Add fde_end field.
880         (last_fde): New.
881         * config/darwin.h (STARTFILE_SPEC): Include crt2.o not crtbegin.o.
882         (ENDFILE_SPEC): No crtend.o.
883         * config/t-darwin: New.
884         * config/i386/t-darwin: Delete.
885         * config/darwin-crt2.c: New.
886         * config/rs6000/t-darwin: Delete contents duplicated in t-rs6000
887         or config/t-darwin.
888
889 2002-11-06  David Edelsohn  <edelsohn@gnu.org>
890
891         PR target/8480
892         * config/rs6000/rs6000.md (movdi_internal64): Discourage
893         FPR to FPR moves.
894
895 2002-11-06  Janis Johnson  <janis187@us.ibm.com>
896
897         * doc/contrib.texi: Merge in the list from the Java web pages.
898
899 2002-11-06  David O'Brien  <obrien@FreeBSD.org>
900
901         * config/sparc/freebsd: Fix typo.
902
903 2002-11-06  John David Anglin  <dave@hiauly1.hia.nrc.ca>
904
905         * pa64-hpux.h (LDD_SUFFIX, PARSE_LDD_OUTPUT): Define.
906
907 2002-11-06  Alexandre Oliva  <aoliva@redhat.com>
908
909         * config/mips/mips.md (call_value_multiple_internal2): Use dla for
910         non-SImode addresses.
911
912 2002-11-05  Bob Wilson  <bob.wilson@acm.org>
913
914         * config/xtensa/elf.h (LIB_SPEC): Add "-lhal".
915
916 2002-11-05  John David Anglin  <dave2hiauly1.hia.nrc.ca>
917
918         * pa64-hpux.h (LIB_SPEC): Fix p and pg options.
919         (STARTFILE_SPEC): Remove p and pg options.
920
921 2002-11-05  Andrew Haley  <aph@redhat.com>
922
923         * fold-const.c (fold): Don't transform (a0 op compound(a1,a2))
924         to (compound(a1,a0 op a2)) if a0 or a1 have side effects.
925
926 2002-11-05  Richard Sandiford  <rsandifo@redhat.com>
927
928         * config/mips/mips.h (CANNOT_CHANGE_MODE_CLASS): Move comment to...
929         * config/mips/mips.c (mips_cannot_change_mode_class): ...here.
930
931 2002-11-04  Dale Johannesen  <dalej@apple.com>
932
933         * doloop.c (doloop_modify_runtime):  Fix loop count computation
934         for unrolled loops.
935         * loop.c (loop_invariant_p):  Support calling from unroller.
936
937 2002-11-04  Ulrich Weigand  <uweigand@de.ibm.com>
938
939         * config/s390/s390.c (s390_decompose_address): Use arg_pointer_rtx
940         for comparison.
941
942 2002-11-04  Aldy Hernandez  <aldyh@redhat.com>
943
944         * hard-reg-set.h (REG_CANNOT_CHANGE_MODE_P): New.
945
946         * config/rs6000/rs6000.h (CLASS_CANNOT_CHANGE_MODE_P): Remove.
947         (CLASS_CANNOT_CHANGE_MODE): Remove.
948         (CANNOT_CHANGE_MODE_CLASS): New.
949
950         * config/alpha/alpha.h: Same.
951
952         * config/ia64/ia64.h: Same.
953
954         * config/mips/mips.h: Same.
955
956         * config/s390/s390.h: Same.
957
958         * config/sh/sh.h: Same.
959
960         * config/pa/pa64-regs.h: Same.
961
962         * config/sh/sh-protos.h (sh_cannot_change_mode_class): Add prototype.
963
964         * config/sh/sh.c (sh_cannot_change_mode_class): New.
965
966         * config/mips/mips-protos.h (mips_cannot_change_mode_class): Add
967         prototype.
968
969         * config/mips/mips.c (mips_cannot_change_mode_class): New.
970
971         * doc/tm.texi (Register Classes): Remove
972         CLASS_CANNOT_CHANGE_MODE and CLASS_CANNOT_CHANGE_MODE_P.
973         Document CANNOT_CHANGE_MODE_CLASS.
974
975         * reload.c (push_reload): Use CANNOT_CHANGE_MODE_CLASS.
976         (push_reload): Same.
977
978         * simplify-rtx.c (simplify_subreg): Same.
979
980         * reload1.c (choose_reload_regs): Same.
981
982         * recog.c (register_operand): Same.
983
984         * regrename.c (mode_change_ok): Change to use new
985         CANNOT_CHANGE_MODE_CLASS infrastructure.
986
987         * regclass.c (cannot_change_mode_set_regs): New.
988         Declare subregs_of_mode.
989         (regclass): Use subregs_of_mode.
990         Remove references to reg_changes_mode.
991         (init_reg_sets_1): Remove class_can_change_mode and
992         reg_changes_mode code.
993         (invalid_mode_change_p): New.
994         (dump_regclass): Use invalid_mode_change_p instead of
995         class_can_change_mode.
996         (regclass): Same.
997         (record_operand_costs): Do not set reg_changes_mode.
998
999         * local-alloc.c (struct qty): Remove changes_mode field.
1000         (alloc_qty): Remove changes_mode initialization.
1001         (update_qty_class): Remove set of changes_mode.
1002         (find_free_reg): Use subregs_of_mode.
1003
1004         * global.c (find_reg): Use subregs_of_mode info.
1005
1006         * rtl.h (cannot_change_mode_set_regs): New prototype.
1007         (invalid_mode_change_p): Same.
1008         (REG_CANNOT_CHANGE_MODE_P): New macro.
1009
1010         * flow.c (mark_used_regs): Calculate subregs_of_mode.  Remove
1011         REG_CHANGES_MODE.
1012         (life_analysis): Clear subregs_of_mode.
1013
1014         * combine.c (subst): Pass class to CLASS_CANNOT_CHANGE_MODE_P.
1015         Remove use of CLASS_CANNOT_CHANGE_MODE.
1016         (simplify_set): Same.
1017         (gen_lowpart_for_combine): Calculate subregs_of_mode.  Remove
1018         REG_CHANGES_MODE.
1019
1020         * regs.h: Add extern for subregs_of_mode;
1021         Include hard-reg-set and basic-block.
1022         (REG_CHANGES_MODE): Delete.
1023
1024 2002-11-03  John David Anglin  <dave@hiauly1.hia.nrc.ca>
1025
1026         * jump.c (never_reached_warning): Don't set contains_insn until the
1027         first line note is seen.
1028
1029 2002-11-03  David Edelsohn  <edelsohn@gnu.org>
1030
1031         * config/rs6000/rs6000.md (movti_string): Use string instructions.
1032
1033 2002-11-03  Roger Sayle  <roger@eyesopen.com>
1034
1035         PR c/7128
1036         * c-typeck.c (c_expand_asm_operands): Defend against
1037         error_mark_nodes in the output argument to avoid ICE.
1038
1039 2002-11-03  Eric Botcazou  <ebotcazou@libertysurf.fr>
1040
1041         PR middle-end/8408
1042         * genrecog.c (preds): Handle ADDRESSOF.
1043         (validate_pattern): Mark it as an lvalue.
1044
1045 2002-11-02  David Edelsohn  <edelsohn@gnu.org>
1046
1047         * config/rs6000/rs6000.c (rs6000_override_options): Use string
1048         instructions when optimizing for size.
1049
1050 2002-11-02  Kazu Hirata  <kazu@cs.umass.edu>
1051
1052         * config/h8300/h8300.h: Fix comment typos.
1053         * config/h8300/h8300.md: Likewise.
1054         * config/h8300/lib1funcs.asm: Likewise.
1055
1056 2002-11-02  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
1057
1058         Revert this change:
1059
1060         *doc/install.texi (Installing GCC: Configuration): Clarify
1061         the only supported ways to configure gcc.
1062
1063 2002-11-01  Kazu Hirata  <kazu@cs.umass.edu>
1064
1065         * config/h8300/h8300.md (anonymous and:QI pattern): Use 'n'
1066         instead of 'O' for the constraint for the second operand.
1067
1068 2002-11-01  Mark Mitchell  <mark@codesourcery.com>
1069
1070         PR c++/8391
1071         * toplev.c (rest_of_compilation): Do not refuse to output code for
1072         an inline function in a local class.
1073
1074 2002-11-01  David O'Brien  <obrien@FreeBSD.org>
1075
1076         * config/sparc/freebsd.h (CPP_CPU64_DEFAULT_SPEC): Define __arch64__.
1077         (TRANSFER_FROM_TRAMPOLINE): Reformat.
1078         Add comment.
1079
1080 2002-11-01  Kazu Hirata  <kazu@cs.umass.edu>
1081
1082         * config/h8300/h8300.h (CAN_ELIMINATE): Simplify.
1083
1084 2002-11-01  Toshiyasu Morita  <toshiyasu.morita@hsa.hitachi.com>
1085
1086         * config/h8300/h8300.h (OPTIMIZATION_OPTIONS): New.
1087
1088 2002-11-01  Steve Ellcey  <sje@cup.hp.com>
1089
1090         * config/ia64/ia64.h (MASK_INLINE_DIV_LAT): Remove.
1091         (MASK_INLINE_DIV_THR): Remove.
1092         (TARGET_INLINE_DIV_LAT): Remove.
1093         (TARGET_INLINE_DIV_THR): Remove.
1094         (TARGET_INLINE_DIV): Remove.
1095         (MASK_INLINE_FLOAT_DIV_LAT): New macro.
1096         (MASK_INLINE_FLOAT_DIV_THR): New macro.
1097         (MASK_INLINE_INT_DIV_LAT): New macro.
1098         (MASK_INLINE_INT_DIV_THR): New macro.
1099         (TARGET_INLINE_FLOAT_DIV_LAT): New macro.
1100         (TARGET_INLINE_FLOAT_DIV_THR): New macro.
1101         (TARGET_INLINE_INT_DIV_LAT): New macro.
1102         (TARGET_INLINE_INT_DIV_THR): New macro.
1103         (TARGET_INLINE_FLOAT_DIV): New macro.
1104         (TARGET_INLINE_INT_DIV): New macro.
1105         * config/ia64/ia64.md (divsi3): Change to use new macros.
1106         (modsi3): Ditto.
1107         (udivsi3): Ditto.
1108         (umodsi3): Ditto.
1109         (divsi3_internal): Ditto.
1110         (divdi3): Ditto.
1111         (moddi3): Ditto.
1112         (udivdi3): Ditto.
1113         (umoddi3): Ditto.
1114         (divdi3_internal_lat): Ditto.
1115         (divdi3_internal_thr): Ditto.
1116         (divsf3): Ditto.
1117         (divsf3_internal_lat): Ditto.
1118         (divsf3_internal_thr): Ditto.
1119         (divdf3): Ditto.
1120         (divdf3_internal_lat): Ditto.
1121         (divdf3_internal_thr): Ditto.
1122         (divtf3): Ditto.
1123         (divtf3_internal_lat): Ditto.
1124         (divtf3_internal_thr): Ditto.
1125         * config/ia64/ia64.c (ia64_override_options): Change
1126         to check new macros for conflicts in settings.
1127         * doc/invoke.texi (-minline-divide-min-latency): Remove.
1128         (-minline-divide-max-throughput): Remove.
1129         (-minline-float-divide-min-latency): New.
1130         (-minline-float-divide-max-throughput): New.
1131         (-minline-int-divide-min-latency): New.
1132         (-minline-int-divide-max-throughput): New.
1133
1134 2002-11-01  Richard Earnshaw  (rearnsha@arm.com)
1135
1136         PR target/7856
1137         * arm.c (use_return_insn): Don't use a return insn if there are
1138         saved integer regs, but LR is not one of them.
1139
1140 Fri Nov  1 10:33:15 CET 2002  Jan Hubicka  <jh@suse.cz>
1141
1142         * expr.c (emit_move_insn):  Use SCALAR_FLOAT_MODE_P
1143         * machmode.h (SCALAR_FLOAT_MODE_P): New macro.
1144
1145 2002-10-31  Nathanael Nerode  <neroden@gcc.gnu.org>
1146
1147         PR optimization/6162
1148         * doc/md.texi: Document restriction on commutative operand
1149         specification.
1150
1151 2002-10-31  Eric Christopher  <echristo@redhat.com>
1152
1153         * explow.c (convert_memory_address): Use shallow_copy_rtx.
1154
1155 2002-10-31  Steve Ellcey  <sje@cup.hp.com>
1156
1157         * expmed.c (store_bit_field): Check FUNCTION_ARG_REG_LITTLE_ENDIAN.
1158
1159 2002-10-31  Steve Ellcey  <sje@cup.hp.com>
1160
1161         * config/ia64/hpux.h (MEMBER_TYPE_FORCES_BLK): Set for non-floats.
1162
1163 Thu Oct 31  Dale Johannesen  <dalej@apple.com>
1164
1165         * config/rs6000/darwin.h:  Correct formatting in previous.
1166
1167 Thu Oct 31  Dale Johannesen  <dalej@apple.com>
1168
1169         * config/rs6000/darwin.h:  Enable -falign-xxx options.
1170
1171 Thu Oct 31 18:08:00 CET 2002  Jan Hubicka  <jh@suse.cz>
1172
1173         * i386.c (override_options): Set defaults for flag_omit_frame_pointer,
1174         flag_asynchronous_unwind_tables, flag_pcc_struct_return.
1175         * i386.c (optimization_options): Set flag_omit_frame_pointer,
1176         flag_asynchronous_unwind_tables, flag_pcc_struct_return to 2.
1177         Do not clear -momit-leaf-frame-pointer when profiling.
1178         (ix86_frame_pointer_required): Frame pointer is always required when
1179         profiling.
1180
1181 Thu Oct 31 16:09:44 CET 2002  Jan Hubicka  <jh@suse.cz>
1182
1183         * i386.md (negdf2_ifs_rex64): Don't allow GPR operand.
1184
1185 Thu Oct 31 12:45:55 2002  J"orn Rennecke <joern.rennecke@superh.com>
1186
1187         * sh.h (binary_logical_operator): Declare.
1188         * sh.c (binary_logical_operator): New function.
1189         * sh.md (xordi3+1): New combiner splitter pattern.
1190
1191 2002-10-31  David O'Brien  <obrien@FreeBSD.org>
1192
1193         * config/sparc/freebsd.h (TRANSFER_FROM_TRAMPOLINE): Define
1194         __enable_execute_stack function.
1195
1196 2002-10-30  Aldy Hernandez  <aldyh@redhat.com>
1197
1198         * c-common.c: Add GTY to vector_type_node_list.
1199
1200 2002-10-30  John David Anglin  <dave@hiauly.hia.nrc.ca>
1201
1202         * pa-linux.h (ASM_OUTPUT_EXTERNAL_LIBCALL): Define.
1203         * pa-protos.h (attr_length_millicode_call, attr_length_call,
1204         pa_init_machine_status): Declare new global functions.
1205         * pa.c (void copy_fp_args, length_fp_args, get_plabel): Declare and
1206         implement new functions.
1207         (attr_length_millicode_call, attr_length_call): Implement.
1208         (total_code_bytes): Change type to long.
1209         (pa_output_function_prologue): Compute total_code_bytes on TARGET_64BIT.
1210         Reset counter if flag_function_sections.
1211         (output_deferred_plabels): Set output alignment to 3 for TARGET_64BIT.
1212         (output_cbranch): Move call to gen_label_rtx.
1213         (output_millicode_call): Rewrite adding long TARGET_64BIT call, expose
1214         delay slot in all variants, shorten pc-relative calls.
1215         (output_call): Rewrite adding long TARGET_64BIT call, improved delay
1216         slot usage and exposure, various new call variants, and shortened
1217         sequences for some variants on TARGET_PA_20.
1218         Miscellaneous format changes.
1219         * pa.h (total_code_bytes): Change type to long.
1220         (MASK_LONG_CALLS, TARGET_LONG_CALLS, TARGET_LONG_ABS_CALL,
1221         TARGET_LONG_PIC_SDIFF_CALL, TARGET_LONG_PIC_PCREL_CALL): Define.
1222         (TARGET_SWITCHES): Add "-mlong-calls" and "-mno-long-calls" options.
1223         (EXTRA_CONSTRAINT, GO_IF_LEGITIMATE_ADDRESS,
1224         LEGITIMIZE_RELOAD_ADDRESS): Don't use long floating point loads and
1225         stores on TARGET_ELF32.
1226         *pa.md (define_delay): Allow insns in delay on TARGET_PORTABLE_RUNTIME.
1227         (unnamed patterns for mulsi3, divsi3, udivsi3, modsi3, umodsi3 and
1228         canonicalize_funcptr_for_compare expanders): Calculate attribute length
1229         attr_length_millicode_call().
1230         (call_internal_symref, call_value_internal_symref): Clobber register 1.
1231         Calculate attribute length using attr_length_call().
1232         (call_internal_reg_64bit, call_value_internal_reg_64bit): Move gp load
1233         to delay slot.
1234         (sibcall, sibcall_value): Rewrite.
1235         (sibcall_internal_symref, sibcall_value_internal_symref): Clobber
1236         register 1.  Use attr_length_call().
1237         (sibcall_internal_symref_64bit, sibcall_value_internal_symref_64bit):
1238         New patterns.
1239         (unamed pattern for canonicalize_funcptr_for_compare): Rewrite.
1240         * som.h (MEMBER_TYPE_FORCES_BLK): Define.
1241         * t-pa64 (TARGET_LIBGCC2_CFLAGS): Add "-mlong-calls".
1242         * doc/invoke.texi (mlong-calls): Document.
1243
1244 2002-10-30  Roger Sayle  <roger@eyesopen.com>
1245
1246         * fold-const.c (fold_binary_op_with_conditional_arg):  Improve
1247         handling of cases where one or both branches of the conditional
1248         have void type, i.e. throw an exception or don't return.
1249         (fold): Only apply (and undo) type conversion to the non-void
1250         branches of a COND_EXPR.
1251
1252 2002-10-30  Mark Mitchell  <mark@codesourcery.com>
1253
1254         PR c++/8333
1255         * varasm.c (asm_output_aligned_bss): Do not call
1256         ASM_GLOBALIZE_LABEL.
1257
1258 2002-10-30  David Edelsohn  <edelsohn@gnu.org>
1259             Torbjorn Granlund  <tege@swox.com>
1260
1261         * config/rs6000/rs6000.md (load_toc_v4_PIC_1): Use preferred form
1262         for addressibility.
1263         (load_toc_v4_PIC_1b): Same.
1264
1265 2002-10-30  Kazu Hirata  <kazu@cs.umass.edu>
1266
1267         * config/h8300/h8300.c (h8300_eightbit_constant_address_p):
1268         Truncate the addresses for H8/300 using HImode.
1269
1270 2002-10-29  Hans-Peter Nilsson  <hp@bitrange.com>
1271
1272         * toplev.c (rest_of_type_compilation): Return early in case of
1273         errors.
1274         (check_global_declarations): Don't call debug_hooks->global_decl
1275         in case of errors.
1276
1277 2002-10-28  Andreas Bauer  <baueran@in.tum.de>
1278
1279         * doc/c-tree.texi (Tree overview): Fix typos.
1280
1281 2002-10-29  Phil Edwards  <pme@gcc.gnu.org>
1282
1283         * Makefile.in (gnucompare*):  Only record bad comparisons
1284         if there really was a bad comparison.
1285
1286 Tue Oct 29 19:32:16 CET 2002  Jan Hubicka  <jh@suse.cz>
1287
1288         * i386.h (CONST_DOUBLE_OK_FOR_LETTER_P): Remove 'H'
1289         * i386.md (movsf*, movdf*): Use 'C' instead of 'H'
1290         * md.texi (machine dependent constraints): Document 'C'
1291
1292         * simplify-rtx.c (simplify_subreg): Fix const_int->vector subregging.
1293
1294         * i386.c (ix86_expand_vector_move): Fix.
1295
1296         * i386.c (ix86_expand_builtin): Use sse2_maskmovdqu_rex64.
1297         * i386.md (sse2_maskmovdqu_rex64): New pattern
1298
1299         PR target/8322
1300         * xmmintrin.h (_mm_stream_pi, _mm_stream_pd): Fix cast.
1301         (ix86_init_mmx_sse_builtins): Fix type.
1302
1303 2002-10-29  Jason Thorpe  <thorpej@wasabisystems.com>
1304
1305         * gthr-posix.h: Include <unistd.h> for feature tests.
1306         (sched_get_priority_max, sched_get_priority_min)
1307         (pthread_getschedparam, pthread_setschedparam): Only use
1308         if _POSIX_THREAD_PRIORITY_SCHEDULING is defined.
1309         (__gthread_objc_thread_set_priority): Don't treat all non-zero
1310         returns from sched_get_priority_max and sched_get_priority_min
1311         as an error.
1312
1313 2002-10-29  Kazu Hirata  <kazu@cs.umass.edu>
1314
1315         * config/h8300/h8300.h (TARGET_DEFAULT): Make it
1316         MASK_QUICKCALL.
1317
1318 2002-10-29  Kazu Hirata  <kazu@cs.umass.edu>
1319
1320         * config/h8300/h8300.c (h8300_eightbit_constant_address_p): New.
1321         (h8300_tiny_constant_address_p): Likewise.
1322         * config/h8300/h8300.h (EIGHTBIT_CONSTANT_ADDRESS_P): Use
1323         h8300_eightbit_constant_address_p.
1324         (TINY_CONSTANT_ADDRESS_P): Use h8300_tiny_constant_address_p.
1325         * config/h8300/h8300-protos.h: Add the prototypes for the two
1326         new functions.
1327
1328 2002-10-29  Kazu Hirata  <kazu@cs.umass.edu>
1329
1330         * reload1.c (update_eliminables): Unconditionally check if
1331         frame_pointer_needed has changed.
1332
1333 Tue Oct 29 15:37:39 CET 2002  Jan Hubicka  <jh@suse.cz>
1334
1335         * toplev.c (rest_of_compilation): Reorganize way reg_scan is called
1336         before final pass.
1337
1338 2002-10-29  Eric Botcazou  <ebotcazou@libertysurf.fr>
1339
1340         * expr.c (expand_expr) [PLUS]: Don't use simplify_binary_operation;
1341         check for zero operands explicitly.
1342
1343 2002-10-29  Richard Sandiford  <rsandifo@redhat.com>
1344
1345         * config/mips/mips.md (extv, extzv, insv): Set size of referenced
1346         memory after adjusting to BLKmode.
1347
1348 2002-10-29  Kazu Hirata  <kazu@cs.umass.edu>
1349
1350         * config/h8300/h8300.h (MASK_*): New.
1351         (TARGET_*): Use MASK_*.
1352
1353 2002-10-28  Jason Thorpe  <thorpej@wasabisystems.com>
1354
1355         * config.gcc (*-*-netbsd*): Add NETBSD_ENABLE_PTHREADS to
1356         tm_defines if pthreads are enabled.
1357         * config/netbsd.h (LIB_SPEC): Only support the -pthread option
1358         if NETBSD_ENABLE_PTHREADS is defined.
1359
1360 2002-10-28  Kazu Hirata  <kazu@cs.umass.edu>
1361
1362         * ChangeLog.1: Fix typos.
1363         * cse.c: Fix a comment typo.
1364         * reload1.c: Likewise.
1365
1366 2002-10-27  Hans-Peter Nilsson  <hp@bitrange.com>
1367
1368         * fixinc/inclhack.def (libc1_G_va_list): Correct test_text.
1369         * fixinc/tests/base/_G_config.h: New file.
1370
1371 2002-10-27  Kazu Hirata  <kazu@cs.umass.edu>
1372
1373         * combine.c: Fix comment formatting.
1374         * loop.c: Likewise.
1375         * real.c: Likewise.
1376         * regclass.c: Likewise.
1377         * regmove.c: Likewise.
1378         * regrename.c: Likewise.
1379         * reg-stack.c: Likewise.
1380         * reload1.c: Likewise.
1381         * reload.c: Likewise.
1382         * reload.h: Likewise.
1383         * unroll.c: Likewise.
1384
1385 2002-10-27  Kazu Hirata  <kazu@cs.umass.edu>
1386
1387         * reload1.c (reload): Fix a comment typo.
1388
1389 Sun Oct 27 10:15:24 CET 2002  Jan Hubicka  <jh@suse.cz>
1390
1391         * linux64.h (DEFAULT_PCC_STRUCT_RETURN):  Define.
1392
1393 2002-10-27  Zdenek Dvorak  <rakdver@atrey.karlin.mff.cuni.cz>
1394
1395         * Makefile.in (dwarf2out.o): Add dependendcy on hashtab.h.
1396         * dwarf2out.c: Include hashtab.h.
1397         (is_main_source): New static variable.
1398         (attr_checksum, die_checksum): Modified to handle die references.
1399         (same_loc_p, same_dw_val_p, same_attr_p, same_die_p, same_die_p_wrap,
1400         unmark_all_dies, htab_cu_hash, htab_cu_eq, htab_cu_del, check_duplicate_cu,
1401         record_comdat_symbol_number): New static functions.
1402         (output_comp_unit, compute_section_prefix, is_type_die, break_out_includes,
1403         mark_dies, unmark_dies, dwarf2out_start_source_file): Modified.
1404         * toplev.c (rest_of_decl_compilation): Call of dwarf2out_decl for type
1405         declarations added.
1406
1407 2002-10-26  Kazu Hirata  <kazu@cs.umass.edu>
1408
1409         * config/h8300/h8300.c (initial_offset): Change to
1410         h8300_initial_elimination_offset.
1411         * config/h8300/h8300.h (INITIAL_ELIMINATION_OFFSET): Use
1412         h8300_initial_elimination_offset.
1413         * config/h8300/h8300-protos.h: Update the prototype.
1414
1415 2002-10-26  Hans-Peter Nilsson  <hp@bitrange.com>
1416
1417         * config/mmix/mmix.h (LIBCALL_VALUE): Use
1418         MMIX_RETURN_VALUE_REGNUM, not MMIX_OUTGOING_RETURN_VALUE_REGNUM.
1419         (FUNCTION_VALUE_REGNO_P): Similar, but move code to...
1420         * config/mmix/mmix.c (mmix_function_value_regno_p): New.
1421         * config/mmix/mmix-protos.h: Remove needless ifdefs on TREE_CODE
1422         and RTX_CODE.
1423         (mmix_function_value_regno_p): Declare.
1424
1425         * config/mmix/mmix.md ("fixuns_truncdfdi2"): Replace unsigned_fix,
1426         invalid for floating point mode result, with fix.
1427
1428 2002-10-25  Mike Stump  <mrs@apple.com>
1429
1430         Fixes gcc.dg/warn-1.c.
1431         * c-typeck.c (warn_for_assignment): Don't print argument number, if zero.
1432
1433 Sat Oct 26 01:44:46 CEST 2002  Jan Hubicka  <jh@suse.cz>
1434
1435         * toplev.c (dump_file_index): Add DFI_ce3.
1436         (dump_file_info): Likewise.
1437         (rest_of_compilation): Run first ifcvt pass before tracer.
1438
1439 2002-10-25  Steve Ellcey  <sje@cup.hp.com>
1440
1441         * config/ia64/hpux.h (BITS_BIG_ENDIAN): Remove.
1442
1443 2002-10-25  Richard Henderson  <rth@redhat.com>
1444
1445         * real.c (real_to_decimal): If the >1 tens reduction loop results
1446         in a negative exponent, fall into the <1 pten computation.
1447
1448 2002-10-25  Zack Weinberg  <zack@codesourcery.com>
1449
1450         PR middle-end/6994
1451         * c-objc-common.c (inline_forbidden_p): Can not inline
1452         functions containing structures or unions containing VLAs.
1453         * tree-inline.c (walk_tree): For all class 't' nodes, walk
1454         TYPE_SIZE and TYPE_SIZE_UNIT.
1455         (copy_tree_r): Copy types if they are variably modified.
1456
1457 2002-10-25  Ulrich Weigand  <uweigand@de.ibm.com>
1458
1459         * config/s390/s390.md: Remove old-style peepholes.
1460
1461 2002-10-25  Ulrich Weigand  <uweigand@de.ibm.com>
1462
1463         * config/s390/s390.c (s390_decompose_address): Do not range check the
1464         displacement if base or index is the argument pointer register.
1465
1466 2002-10-24  Hans-Peter Nilsson  <hp@bitrange.com>
1467
1468         PR other/3337
1469         PR bootstrap/6763
1470         PR bootstrap/8122
1471         * fixinc/inclhack.def (libc1_G_va_list): New fix.
1472         * fixinc/fixincl.x: Regenerate.
1473         * config/i386/linux.h: Move MD_FALLBACK_FRAME_STATE_FOR inside
1474         ifndef IN_LIBGCC2.  Wrap it together with signal.h and
1475         sys/ucontext.h inclusion in ifndef USE_GNULIBC_1.
1476         * configure.in (gcc_AC_CHECK_DECLS): Check vasprintf too.
1477         * config.in, configure: Regenerate.
1478
1479 2002-10-24  Igor Shevlyakov <igor@microunity.com>
1480
1481         * varasm.c (struct rtx_const): Array size 16 for V16QImode.
1482
1483 2002-10-24  Richard Henderson  <rth@redhat.com>
1484
1485         * config/i386/i386.c (x86_output_mi_thunk): Fix x86_64 pic jump.
1486
1487 2002-10-24  Kazu Hirata  <kazu@cs.umass.edu>
1488
1489         * config/h8300/h8300.c (initial_offset): Simplify by using
1490         round_frame_size.
1491
1492 2002-10-24  Marek Michalkiewicz  <marekm@amelek.gda.pl>
1493
1494         * doc/install.texi (avr): Update required binutils version.
1495
1496 2002-10-24  Theodore A. Roth  <troth@openavr.org>
1497
1498         * doc/install.texi: Point avr users at more up-to-date information.
1499
1500 2002-10-24  Ulrich Weigand  <uweigand@de.ibm.com>
1501
1502         * config/s390/s390.md (movdi, movsi, movhi, movqi): Add peepholes2
1503         to pull operands out of the literal pool where possible.
1504
1505 2002-10-24  Denis Chertykov  <denisc@overta.ru>
1506
1507         * config/avr/avr.c (init_cumulative_args): Test fntype for zero.
1508
1509 2002-10-24  Steve Ellcey  <sje@cup.hp.com>
1510
1511         * expr.c (convert_move): If unsignedp is less then zero there
1512         is no equivalent code.
1513
1514 2002-10-24  Zack Weinberg  <zack@codesourcery.com>
1515
1516         * tree.def: Delete mention of nonexistent ARRAY_TYPE fields.
1517
1518 2002-10-24  Ulrich Weigand  <uweigand@de.ibm.com>
1519
1520         * config/s390/s390.h: Rework comments; re-sort target macro definitions
1521         according to the sequence they are defined in the manual.
1522         (POINTER_BOUNDARY): Remove.
1523
1524 2002-10-24  Kazu Hirata  <kazu@cs.umass.edu>
1525
1526         * config/h8300/h8300.c (round_frame_size): Replace 8 with
1527         BITS_PER_UNIT.
1528
1529 2002-10-24  Kazu Hirata  <kazu@cs.umass.edu>
1530
1531         * config/h8300/h8300.h (EIGHTBIT_CONSTANT_ADDRESS_P): Make it
1532         64-bit safe.
1533         (TINY_CONSTANT_ADDRESS_P): Likewise.
1534
1535 2002-10-24  Richard Henderson  <rth@redhat.com>
1536
1537         * config/ia64/ia64.c (TARGET_ASM_CAN_OUTPUT_MI_THUNK): True.
1538         (ia64_output_mi_thunk): Rewrite to use rtl, and to handle the
1539         vcall offset.
1540
1541 2002-10-24  Richard Henderson  <rth@redhat.com>
1542
1543         PR opt/7944
1544         * reload.c (find_reloads_toplev): Mode of X is not important
1545         when simplifying subregs of constants.
1546
1547 2002-10-24  Richard Sandiford  <rsandifo@redhat.com>
1548
1549         * config.gcc (mips64vr-*-elf*, mips64vrel-*-elf*): Add
1550         MIPS_MARCH_CONTROLS_SOFT_FLOAT=1 to $tm_defines.
1551         * config/mips/mips.c (MIPS_MARCH_CONTROLS_SOFT_FLOAT): Default to 0.
1552         (override_options): Base default setting of MASK_SOFT_FLOAT on -march
1553         if MIPS_MARCH_CONTROLS_SOFT_FLOAT.
1554
1555 2002-10-24  Richard Sandiford  <rsandifo@redhat.com>
1556
1557         * optabs.c (expand_binop): Don't reuse the shift target in the
1558         middle of shift sequences.
1559
1560 2002-10-23  Ziemowit Laski <zlaski@apple.com>
1561
1562         * objc/objc-act.c (get_static_reference): Remove unneeded
1563         TYPE_BINFO initialization.
1564         (get_object-reference): Likewise.
1565         (build_constructor): Tighten precondition check.
1566         (finish_message_expr): Likewise.
1567
1568 2002-10-23  Jakub Jelinek  <jakub@redhat.com>
1569
1570         * config/i386/i386.c (local_symbolic_operand): Move LABEL_REF test
1571         after CONST test.
1572
1573 2002-10-23  Steve Ellcey  <sje@cup.hp.com>
1574
1575         * config/ia64/ia64.c (hfa_element_mode): Don't allow 128 bit floats
1576         in HFAs.
1577
1578 2002-10-23  Richard Henderson  <rth@redhat.com>
1579
1580         * config/alpha/alpha.c (TARGET_ASM_CAN_OUTPUT_MI_THUNK): True.
1581         (alpha_output_mi_thunk_osf): Handle vcall_offset.
1582
1583 2002-10-23  Zack Weinberg  <zack@codesourcery.com>
1584
1585         * langhooks.h (struct lang_hooks_for_tree_inlining): Add
1586         var_mod_type_p.
1587         * langhooks-def.h: Default for tree_inlining.var_mod_type_p is
1588         hook_tree_bool_false.
1589
1590         * tree.c (variably_modified_type_p): Moved here from
1591         cp/tree.c.  Use lang_hooks.tree_inlining.var_mod_type_p for
1592         language-specific cases.  Due to this, must weaken some 'if
1593         and only if' checks to merely 'if'.
1594         * tree.h: Prototype variably_modified_type_p.
1595
1596         * tree-inline.c (walk_tree): #undef WALK_SUBTREE_TAIL at end.
1597
1598 2002-10-23  Ulrich Weigand  <uweigand@de.ibm.com>
1599
1600         * config/s390/linux.h (CC1_SPEC, CC1PLUS_SPEC): Remove.
1601         * config/s390/s390.c (optimization_options): Disable -fcaller-saves.
1602
1603         * config/s390/s390-protos.h (fp_operand): Remove.
1604         * config/s390/s390.c (fp_operand): Remove.
1605         * config/s390/s390.md ("movdi"): Replace fp_operand by FP_REG_P.
1606         ("*movdi_lhi", "*movdi_lli", "*movdi_larl"): Likewise.
1607         ("movsi", "*movsi_lhi", "*movsi_lli"): Likewise.
1608         (movdi_31, movdf_31 splitters): Likewise.
1609
1610         * config/s390/s390.h (IEEE_FLOAT): Remove.
1611         (TARGET_FLOAT_FORMAT): Define in terms of TARGET_IEEE_FLOAT.
1612         (INT_REGNO_P): Rename to ...
1613         (GENERAL_REGNO_P): ... this.
1614         (FLOAT_REGNO_P): Rename to ...
1615         (FP_REGNO_P): ... this.
1616         (ADDR_REGNO_P): New macro.
1617         (GENERAL_REG_P, ADDR_REG_P, FP_REG_P, CC_REG_P): New macros.
1618         (REGNO_OK_FOR_DATA_P, REGNO_OK_FOR_FP_P): Remove.
1619         (DATA_REG_P, FP_REG_P, ADDRESS_REG_P): Likewise.
1620         (HARD_REGNO_NREGS): Adapt to macro renaming.
1621         (HARD_REGNO_MODE_OK): Likewise.
1622
1623 2002-10-23  David Edelsohn  <edelsohn@gnu.org>
1624             Geoff Keating  <geoffk@apple.com>
1625
1626         * config/rs6000/rs6000.c (rs6000_register_move_cost): New function.
1627         (rs6000_memory_move_cost): New function.
1628         * config/rs6000/rs6000-protos.h: Declare them.
1629         * config/rs6000/rs6000.h: Use them.
1630
1631 2002-10-23  Ulrich Weigand  <uweigand@de.ibm.com>
1632
1633         * libgcc2.c (__udiv_w_sdiv): Use attribute ((always_inline)) when
1634         inlining it into other libgcc2 routines.
1635         (__udivmoddi4): Likewise.
1636
1637 2002-10-22  Nathanael Nerode  <neroden@gcc.gnu.org>
1638
1639         * doc/sourcebuild.texi (Test Suites): Improve.
1640
1641 2002-10-22  Stan Shebs  <shebs@apple.com>
1642
1643         * config/rs6000/rs6000.c (rs6000_output_mi_thunk): Add missing
1644         case for Darwin.
1645
1646 2002-10-22  Jim Wilson  <wilson@redhat.com>
1647
1648         * config/i386/i386.md (subdi3_1): Add call to ix86_binary_operator_ok.
1649
1650 Wed Oct 23 01:52:36 CEST 2002  Jan Hubicka  <jh@suse.cz>
1651
1652         PR other/8289
1653         * xmmintrin.h: Add const to the argument of loads.
1654
1655         * i386.md (pushv2di): New pattern.
1656         PR target/6890
1657         * xmmintrin.h (_MM_TRANSPOSE4_PS): New.
1658
1659 2002-10-22  Richard Henderson  <rth@redhat.com>
1660
1661         * target.h (gcc_target.asm_out): Merge output_mi_thunk and
1662         output_mi_vcall_thunk into a single hook.  Add can_output_mi_thunk.
1663         * target-def.h (TARGET_ASM_OUTPUT_MI_THUNK): Don't conditionalize.
1664         (TARGET_ASM_OUTPUT_MI_VCALL_THUNK): Remove.
1665         (TARGET_ASM_CAN_OUTPUT_MI_THUNK): New.
1666         (TARGET_ASM_OUT): Update.
1667         * hooks.c (hook_bool_tree_hwi_hwi_tree_false): New.
1668         (hook_bool_tree_hwi_hwi_tree_true): New.
1669         (default_can_output_mi_thunk_no_vcall): New.
1670         * hooks.h: Declare them.
1671         * system.h (ASM_OUTPUT_MI_THUNK): Poison.
1672
1673         * config/alpha/alpha.c (TARGET_ASM_CAN_OUTPUT_MI_THUNK): New.
1674         (alpha_output_mi_thunk_osf): Add VCALL_OFFSET parameter.
1675         * config/arm/arm.c, config/cris/cris.c, config/frv/frv.c,
1676         config/i960/i960.c, config/ia64/ia64.c, config/m68k/m68k.c,
1677         config/mmix/mmix.c, config/pa/pa.c, config/sparc/sparc.c,
1678         config/stormy16/stormy16.c: Similarly.
1679
1680         * config/i386/i386.c (x86_output_mi_thunk): Merge vcall_offset code.
1681         Handle 64-bit properly.  Streamline.
1682         (x86_output_mi_vcall_thunk): Remove.
1683         (x86_this_parameter): Rename from ia32_this_parameter; handle 64-bit.
1684         (x86_can_output_mi_thunk): New.
1685         (TARGET_ASM_OUTPUT_MI_VCALL_THUNK): Remove.
1686         (TARGET_ASM_CAN_OUTPUT_MI_THUNK): New.
1687         (override_options): Don't zap targetm.asm_out.output_mi_vcall_thunk.
1688
1689         * config/rs6000/rs6000.c (rs6000_output_mi_thunk): Rename from
1690         output_mi_thunk; make static; always use function_section.
1691         (TARGET_ASM_OUTPUT_MI_THUNK): New.
1692         (TARGET_ASM_CAN_OUTPUT_MI_THUNK): New.
1693         (rs6000_ra_ever_killed): Test no_new_pseudos not
1694         targetm.asm_out.output_mi_thunk in conjunction with thunks.
1695         * config/rs6000/rs6000-protos.h: Update.
1696         * config/rs6000/sysv4.h (TARGET_ASM_OUTPUT_MI_THUNK): Remove.
1697         * config/rs6000/xcoff.h (ASM_DECLARE_FUNCTION_NAME): Don't call
1698         xcoffout_declare_function when using rs6000_output_mi_thunk.
1699
1700         * config/s390/s390.c (s390_output_mi_thunk): Rename from
1701         s390_output_mi_vcall_thunk.
1702         (TARGET_ASM_OUTPUT_MI_THUNK): Remove.
1703         (TARGET_ASM_CAN_OUTPUT_MI_THUNK): New.
1704
1705         * config/vax/vax.c (vax_output_mi_thunk): Static; add vcall_offset.
1706         (TARGET_ASM_OUTPUT_MI_THUNK, TARGET_ASM_CAN_OUTPUT_MI_THUNK): New.
1707         * config/vax/vax-protos.h: Update.
1708         * config/vax/vax.h (ASM_OUTPUT_MI_THUNK): Remove.
1709
1710 Wed Oct 23 00:33:11 CEST 2002  Jan Hubicka  <jh@suse,cz>
1711
1712         * i386.c (standard_sse_constant_p): Accept vector and integer zeros too.
1713         * i386.h (EXTRA_CONSTRAINT): Recognize 'C'
1714         * i386.md (movti_internal): Use 'C'
1715
1716         * xmmintrin.h (_mm_cmplt_epi*): New.
1717
1718 2002-10-22  Ulrich Weigand  <uweigand@de.ibm.com>
1719
1720         * config/s390/s390.md ("*movdi_64"): Fix op_type attribute.
1721         ("*movdf_64"): Likewise.
1722         ("*lshrdi3_64"): Likewise.
1723         ("blockage"): Add length attribute.
1724         ("lit"): Likewise.
1725
1726 Tue Oct 22 23:51:34 CEST 2002  Jan Hubicka  <jh@suse.cz>
1727
1728         * i386.md: FIx typo.
1729         (sse2_cvtsi2sd, sse2_pslrdq): Fix template.
1730         (sse2_umulv2siv2di3): Fix predicate.
1731         (sse2_psadbw, ashrv8hi3, ashrv4si3, lshrv8hi3 lshrv4si3,
1732         lshrv2di3, ashlv8hi3, ashlv4si3, ashlv2di3): Likewise.
1733         * xmmintrin.h (_mm_mul_epu16): Rename to...
1734         (_mm_mul_epu32): This one.
1735         (_mm_cvtsi32_si128, _mm_cvtsi128_si32): New.
1736
1737         (contains_128bit_aligned_vector_p): Undo accidental checkin.
1738
1739 2002-10-22  Eric Christopher  <echristo@redhat.com>
1740
1741         * config/sparc/sparc.h: Add #error.
1742
1743 2002-10-22  Ulrich Weigand  <uweigand@de.ibm.com>
1744
1745         * config.gcc [s390-*-linux]: Remove s390/t-linux from tmake_file.
1746         [s390x-*-linux*]: Likewise.
1747         * config/s390/t-linux: Remove.
1748         * config/s390/s390.h: Include fixdfdi.h when building libgcc2.
1749
1750 Tue Oct 22 19:07:03 CEST 2002  Jan Hubicka  <jh@suse.cz>
1751
1752         * i386.c (builtin_description): Add IX86_BUILTIN_PUNPCKHQDQ128.
1753         (ix86_expand_builtin): Fix MASKMOVDQU expasion.
1754         * i386.h (ix86_builtins): Add IX86_BUILTIN_PUNPCKHQDQ128.
1755         * i386.md (mmx_punpck?dq): Simplify.
1756         (sse2_pubpcklqdq): Fix.
1757         (sse2_pubpckhqdq): New.
1758         * xmmintrin.h (_mm_unpackhi_epi32): New.
1759
1760         * xmmintrin.h (_mm_cvt*, _mm_stream_pd): Fix prototypes.
1761         (_mm_shufflehi_epi16, _mm_shufflelo_epi16): Fix typo.
1762
1763 2002-10-22  Nathan Sidwell  <nathan@codesourcery.com>
1764
1765         PR c++/7209
1766         * fold_const.c (fold_binary_op_with_conditional_arg): Always
1767         build compound_expr if we used save_expr.
1768
1769 2002-10-22  Alan Modra  <amodra@bigpond.net.au>
1770
1771         * output.h (SECTION_NOTYPE): Define.
1772         * varasm.c (default_section_type_flags_1): Set SECTION_NOTYPE for
1773         init array sections.
1774         (default_elf_asm_named_section): Mind SECTION_NOTYPE.
1775         * config/arm/arm.c (arm_elf_asm_named_section): Likewise.  Also
1776         merge TLS support.
1777
1778 2002-10-21  Richard Henderson  <rth@redhat.com>
1779
1780         * real.c (sticky_rshift_significand): Return inexact, don't
1781         or it in immediately.
1782         (sub_significands): Accept incomming carry.
1783         (div_significands, rtd_divmod): Update for sub_significands change.
1784         (round_for_format): Update for sticky_rshift_significand change.
1785         (do_add): Don't involve the inexact bit in addition, do give the
1786         inexact bit as the subtraction carry-in.
1787         (encode_internal, decode_internal, real_internal_format): New.
1788         * real.h (real_internal_format): Declare.
1789
1790 2002-10-21  Ulrich Weigand  <uweigand@de.ibm.com>
1791
1792         * libgcc2.c: Fix __udiv_w_sdiv breakage on platforms that
1793         don't define sdiv_qrnnd.
1794
1795 2002-10-21  Kazu Hirata  <kazu@cs.umass.edu>
1796
1797         * config/h8300/h8300.h (EIGHTBIT_CONSTANT_ADDRESS_P): Simplify
1798         using IN_RANGE.
1799         (TINY_CONSTANT_ADDRESS_P): Likewise.
1800
1801 Tue Oct 22 00:04:20 CEST 2002  Jan Hubicka  <jh@suse.cz>
1802
1803         * i386.c (builtin_description): Add punpcklqdq and movdq2q
1804         (ix86_init_mmx_sse_builtins): Add v2di_ftype_void, di_ftype_v2di,
1805         v16qi_ftype_pchar, void_ftype_pchar_v16qi, v4si_ftype_pchar,
1806         void_ftype_pchar_v4si; Initialize __builtin_ia32_movdq2q,
1807         __builtin_ia32_loaddqa, __builtin_ia32_loaddqu, __builtin_ia32_loadd
1808         __builtin_ia32_storedqa, __builtin_ia32_storedqu, __builtin_ia32_stored
1809         __builtin_ia32_setzero128.
1810         (ix86_expand_builtin): Handle IX86_BUILTIN_CLRTI, IX86_BUILTIN_LOADDQA,
1811         IX86_BUILTIN_LOADDQU, IX86_BUILTIN_LOADD, IX86_BUILTIN_STOREDQA,
1812         IX86_BUILTIN_STOREDQU, IX86_BUILTIN_STORED, Ix86_BUILTIN_MOVQ.
1813         * i386.h (ix86_builtins): Add IX86_BUILTIN_LOADDQA, IX86_BUILTIN_LOADDQU,
1814         IX86_BUILTIN_STOREDQA, IX86_BUILTIN_STOREDQU, IX86_BUILTIN_LOADD,
1815         IX86_BUILTIN_STORED, IX86_BUILTIN_CLRTI, IX86_BUILTIN_MOVDQ2Q,
1816         IX86_BUILTIN_PUNPCKLQDQ128, Ix86_BUILTIN_MOVQ.
1817         * i386.md (sse2_punpcklqdq, sse2_movqsse2_loadd, sse2_stored,
1818         sse2_movq): New patterns.
1819         (sse2_movdqa, sse2_movdqu, sse2_movdq2q): Fix.
1820         * xmmintrin.h (_mm_load_si128, _mm_loadu_si128, _mm_loadl_epi64,
1821         _mm_store_si128, _mm_storeu_si128, _mm_storel_epi64,
1822         _mm_setzero_si128, _mm_set_epi64, _mm_set_epi32, _mm_set_epi16,
1823         _mm_set_epi8, _mm_set1_epi64, _mm_set1_epi32, _mm_set1_epi16,
1824         _mm_set1_epi8, _mm_setr_epi64, _mm_setr_epi32, _mm_setr_epi16,
1825         _mm_setr_epi8, _mm_unpacklo_epi64,_mm_set_moveq): New functions.
1826         (_mm_insert_epi16): Fix.
1827
1828 2002-10-21  Dale Johannesen  <dalej@apple.com>
1829
1830         * config/rs6000/rs6000.c (rs6000_reverse_condition): Handle
1831             unsafe math reversals correctly for RTL generation.
1832           (output_cbranch):  Replace rs6000_reverse_condition call
1833             by its former definition.
1834
1835 2002-10-21  Jakub Jelinek  <jakub@redhat.com>
1836
1837         * config/i386/i386.c (x86_64_sign_extended_value): Add allow_rip
1838         argument.  In CM_SMALL_PIC model consider SYMBOL_REFs binding locally or
1839         from constant pool or LABEL_REFs as sign extended if allow_rip.
1840         Change all +-1GB limits to +-16MB.
1841         (x86_64_general_operand, x86_64_szext_general_operand,
1842         x86_64_nonmemory_operand, x86_64_movabs_operand,
1843         x86_64_szext_nonmemory_operand, x86_64_immediate_operand,
1844         legitimate_address_p, ix86_expand_int_movcc): Update callers.
1845         (local_symbolic_operand): Don't allow offsets bigger than +-16MB
1846         in CM_SMALL_PIC model.
1847         (legitimate_pic_address_disp_p): Don't check offsets before
1848         calling local_symbolic_operand.
1849         (legitimize_pic_address): Force offsets bigger than +-16MB into
1850         register.
1851         * config/i386/i386.h (EXTRA_CONSTRAINT, CONST_COSTS): Likewise.
1852         * config/i386/i386-protos.h (x86_64_sign_extended_value): Update
1853         prototype.
1854
1855         * configure.in: Test for @GOTNTPOFF and @INDNTPOFF on IA-32 too.
1856         Add x86-64 test.  Set tls_first_minor to 14 on IA-32 and x86-64.
1857         * configure: Rebuilt.
1858         * config/i386/i386.c (x86_64_sign_extended_value): Don't allow TLS
1859         SYMBOL_REFs unless enclosed in UNSPEC.  Handle UNSPEC_DTPOFF,
1860         UNSPEC_GOTNTPOFF and UNSPEC_NTPOFF.
1861         (legitimate_address_p): Allow foo@dtpoff(base) even on TARGET_64BIT
1862         -fpic.
1863         (ix86_encode_section_info): Don't ever generate TLSGD or TLSLD for
1864         non-pic code if TARGET_64BIT.
1865         (legitimize_address): Generate 64-bit TLS sequences.
1866         (output_pic_addr_const): Support x86-64 TLS operators.
1867         (i386_output_dwarf_dtprel): Output 64-bit DTPOFF as .long f@DTPOFF, 0.
1868         (print_operand_address): Use %fs instead of %gs on TARGET_64BIT.
1869         Don't append (%rip) in 64-bit TLSGD and TLSLD sequences.
1870         (output_addr_const_extra): Support x86-64 TLS operators.
1871         (maybe_get_pool_constant): Handle TARGET_64BIT -fpic.
1872         (ix86_tls_get_addr): Use __tls_get_addr on TARGET_64BIT
1873         unconditionally.
1874         * config/i386/i386.md (*tls_global_dynamic_gnu): Renamed to...
1875         (*tls_global_dynamic_32_gnu): ..., add !TARGET_64BIT.
1876         (*tls_global_dynamic_sun): Renamed to...
1877         (*tls_global_dynamic_32_sun): ..., add !TARGET_64BIT.
1878         (tls_global_dynamic): Renamed to...
1879         (tls_global_dynamic_32): ... this.
1880         (tls_global_dynamic_64, *tls_global_dynamic_64): New.
1881         (*tls_local_dynamic_base_dynamic_gnu): Renamed to...
1882         (*tls_local_dynamic_base_dynamic_32_gnu): ..., add !TARGET_64BIT.
1883         (*tls_local_dynamic_base_dynamic_sun): Renamed to...
1884         (*tls_local_dynamic_base_dynamic_32_sun): ..., add !TARGET_64BIT.
1885         (tls_local_dynamic_base_dynamic): Renamed to...
1886         (tls_local_dynamic_base_dynamic_32): ... this.
1887         (tls_local_dynamic_base_dynamic_64,
1888         *tls_local_dynamic_base_dynamic_64): New.
1889         (*tls_local_dynamic_once): Renamed to...
1890         (*tls_local_dynamic_32_once): ... this.
1891
1892 2002-10-21  Ulrich Weigand  <uweigand@de.ibm.com>
1893
1894         * libgcc2.c: Inline __udiv_w_sdiv when compiling __udivdi3,
1895         __divdi3, __umoddi3, or __moddi3.
1896
1897 2002-10-21  Ulrich Weigand  <uweigand@de.ibm.com>
1898
1899         * c-opts.c (missing_arg): Use cl_options[opt_index].opt_code
1900         instead of just opt_index as switch expression.
1901
1902         * calls.c (store_one_arg): Change type of 'excess_align'
1903         to unsigned int.
1904
1905         * profile.c (output_gcov_string): Change type of 'temp'
1906         to size_t.
1907
1908 2002-10-21  Ulrich Weigand  <uweigand@de.ibm.com>
1909
1910         * config/s390/fixdfdi.h (__fixunsdfdi, __fixdfdi): Add prototypes.
1911         (__fixunssfdi, __fixsfdi): Likewise.
1912         * config/s390/s390.c (s390_single_hi): Initialize 'value'.
1913         (s390_single_qi): Likewise.
1914         (s390_emit_epilogue): Initialize 'offset'.  Remove signed vs.
1915         unsigned comparison warning.
1916         (s390_return_addr_rtx): New function.
1917         * config/s390/s390-protos.h (s390_return_addr_rtx): Declare it.
1918         * config/s390/s390.h (RETURN_ADDR_RTX): Use it.
1919         (HARD_REGNO_MODE_OK): Rewrite condition to silence warnings.
1920
1921 2002-10-21  Ulrich Weigand  <uweigand@de.ibm.com>
1922
1923         * config/s390/s390.c (s390_output_mi_vcall_thunk): New function.
1924         (TARGET_ASM_OUTPUT_MI_VCALL_THUNK): Define target hook.
1925         (s390_output_mi_thunk): Remove.
1926         (TARGET_ASM_OUTPUT_MI_THUNK): Remove.
1927
1928 2002-10-21  Kazu Hirata  <kazu@cs.umass.edu>
1929
1930         * config/h8300/h8300.h (N_REG_CLASSES): Parenthesize.
1931
1932 2002-10-20  Richard Henderson  <rth@redhat.com>
1933
1934         * target.h (struct gcc_target): Line wrap.
1935
1936         * config/alpha/alpha.c (alpha_output_mi_thunk_osf): Static.
1937         (TARGET_ASM_OUTPUT_MI_THUNK): Define here...
1938         * config/alpha/alpha.h: ... not here.
1939         * config/alpha/alpha-protos.h: Update.
1940
1941         * config/arm/arm.c, config/arm/arm.h, config/arm/arm-protos.h
1942         config/cris/cris-protos.h, config/cris/cris.c, config/cris/cris.h,
1943         config/frv/frv-protos.h, config/frv/frv.c, config/frv/frv.h,
1944         config/i386/i386-protos.h, config/i386/i386.c, config/i386/openbsd.h,
1945         config/i386/unix.h, config/i960/i960-protos.h, config/i960/i960.c,
1946         config/i960/i960.h, config/ia64/ia64-protos.h, config/ia64/ia64.c,
1947         config/ia64/ia64.h, config/m68k/linux.h, config/m68k/m68k-protos.h,
1948         config/m68k/m68k.c, config/m68k/netbsd-elf.h, config/m68k/openbsd.h,
1949         config/mmix/mmix-protos.h, config/mmix/mmix.c, config/mmix/mmix.h,
1950         config/pa/pa-protos.h, config/pa/pa.c, config/pa/pa.h,
1951         config/s390/s390-protos.h, config/s390/s390.c, config/s390/s390.h,
1952         config/sparc/openbsd.h, config/sparc/sparc-protos.h,
1953         config/sparc/sparc.c, config/sparc/sparc.h,
1954         config/stormy16/stormy16-protos.h, config/stormy16/stormy16.c,
1955         config/stormy16/stormy16.h: Similarly.
1956
1957         * config/m68k/m68k.c (m68k_output_mi_thunk): Replicate mnemonic
1958         selection logic from call patterns.
1959
1960 2002-10-20  Mark Mitchell  <mark@codesourcery.com>
1961
1962         * config/m68k/m68k.c (m68k_output_mi_thunk): Fix typo.
1963
1964 2002-10-20  Zdenek Dvorak  <rakdver@atrey.karlin.mff.cuni.cz>
1965
1966         PR other/8202
1967         * i386.c (ix86_init_mmx_sse_builtins, ix86_expand_builtin): Define and
1968         expand __builtin_ia32_pslldqi128 and __builtin_ia32_psrldqi128.
1969         * i386.h (IX86_BUILTIN_PSLLDQI128, IX86_BUILTIN_PSRLDQI128): New.
1970         * xmmintrin.h (_mm_srli_si128, _mm_slli_si128): New.
1971
1972 2002-10-20  Roger Sayle  <roger@eyesopen.com>
1973
1974         PR c/761
1975         * toplev.c (flag_unsafe_profile_arcs): Remove.
1976         (flag_bounded_pointers): Remove.
1977         (flag_bounds_check): Correct comments.
1978         (lang_independent_options): Remove -funsafe-profile-arcs and
1979         -fbounded-pointers.  Correct -fbounds-check comments.
1980
1981         * flags.h: Correct flag_schedule_interblock comments.
1982         (flag_bounded_pointers): Remove prototype.
1983         (flag_bounds_check): Correct comments.
1984
1985         * c-opts.c (c_common_init_options): No need to mark
1986         flag_bounds_check as unspecified.
1987         (c_common_post_options): And no need to set it from
1988         flag_bounded_pointers if its still unspecified.
1989
1990         * doc/invoke.texi: Fix some overfull hboxes in "make dvi".
1991         Document --version, -feliminate-dwarf-2-dups, -fno-sched-interblock,
1992         -fno-sched-spec, -fsched-spec-load, -fsched-spec-load-dangerous,
1993         -fsched-verbose=n, -fno-branch-count-reg and -fbounds-check.
1994
1995 2002-10-19  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
1996             Mark Mitchell  <mark@codesourcery.com>
1997
1998         * alpha-protos.h (alpha_output_mi_thunk_osf): Update signature to
1999         match target.h.
2000         * arm-protos.h, arm.c (arm_output_mi_thunk): Likewise.
2001         * cris-protos.h, cris.c (cris_asm_output_mi_thunk): Likewise.
2002         * frv-protos.h, frv.c (frv_asm_output_mi_thunk): Likewise.
2003         * i386-protos.h, i386.c (x86_output_mi_vcall_thunk,
2004         x86_output_mi_thunk): Likewise.
2005         * i960-protos.h, i960.c (i960_output_mi_thunk): Likewise.
2006         * ia64-protos.h, ia64.c (ia64_output_mi_thunk): Likewise.
2007         * m68k-protos.h, m68k.c (m68k_output_mi_thunk): Likewise.
2008         * mmix-protos.h, mmix.c (mmix_asm_output_mi_thunk): Likewise.
2009         * rs6000-protos.h, rs6000.c (output_mi_thunk): Likewise.
2010         * s390-protos.h, s390.c (s390_output_mi_thunk): Likewise.
2011         * stormy16-protos.h, stormy16.c (xstormy16_asm_output_mi_thunk):
2012         Likewise.
2013         * vax-protos.h, vax.c (vax_output_mi_thunk): Likewise.
2014
2015         * target.h (gcc_target): Update output_mi_thunk and
2016         output_mi_vcall_thunk to take a HOST_WIDE_INT delta and
2017         vcall_index.
2018
2019         * config/alpha/alpha.c: Replace ASM_OUTPUT_MI_THUNK with
2020         TARGET_ASM_OUTPUT_MI_THUNK in comments.
2021         * config/alpha/vms.h (ASM_OUTPUT_MI_THUNK): Don't #undef it.
2022         (TARGET_ASM_OUTPUT_MI_THUNK): #undef it.
2023         * config/frv/frv.h (DEFAULT_VTABLE_THUNKS): Remove definition.
2024         * config/i386/i386-protos.h (x86_output_mi_vcall_thunk): Update
2025         signature.
2026         * config/i386/i386.c (x86_output_mi_vcall_thunk): Likewise.
2027         * config/i386/openbsd.h: Replace ASM_OUTPUT_MI_THUNK with
2028         TARGET_ASM_OUTPUT_MI_THUNK in comments.
2029         * config/i960/i960.h (ASM_OUTPUT_MI_THUNK): Don't define.
2030         (TARGET_ASM_OUTPUT_MI_THUNK): Do define.
2031         * config/m68k/openbsd.h: Replace ASM_OUTPUT_MI_THUNK with
2032         TARGET_ASM_OUTPUT_MI_THUNK in comments.
2033         * config/rs6000/rs6000.c (rs6000_ra_ever_killed): Remove #ifdef
2034         ASM_OUTPUT_MI_THUNK and replace with check of targetm.
2035
2036         * doc/tm.texi (TARGET_ASM_OUTPUT_MI_THUNK): Update signature.
2037         (TARGET_ASM_OUTPU_MI_VCALL_THUNK): Likewise.
2038
2039 2002-10-19  Brad Lucier  <lucier@math.purdue.edu>
2040
2041         * real.c (do_add): Fix 0+0 sign corner case.
2042         (do_divide): Fix Inf/0 corner case.
2043
2044 Sun Oct 20 00:31:31 CEST 2002  Jan Hubicka  <jh@suse.cz>
2045
2046         * i386.c (classify_argument): Pass MMX arguments in memory
2047         (ix86_expand_builtin): Expand proper address mode for cflush.
2048         * i386.md (movdqa): Fix typo.
2049         (sse2_cflush): Accept DImode addresses.
2050
2051         * xmmintrin.h (_mm_sqrt_sd): Accept two arguments.
2052         (_mm_max_sd): Fix pasto.
2053         (_mm_storeh_pd, _mm_storel_pd): Fix.
2054
2055         * i386.c (bdesc_comi): Fix to match specification.
2056         (ix86_expand_sse_comi): Emit the comparison properly.
2057         * i386.md (sse_comi, sse2_comi, sse_ucomi, sse2_ucomi):
2058         Do not use comparison operator.
2059         (vnmaskcmp): Fix template.
2060
2061         * xmmintrin.h (_mm_cvtps_pi16): Fix.
2062
2063 2002-10-19  Sebastian Pop  <s.pop@laposte.net>
2064
2065         * dependence.c : Removed.
2066         * Makefile.in : Remove dependence.o.
2067
2068 Sat Oct 19 10:46:52 CEST 2002  Jan Hubicka  <jh@suse.cz>
2069
2070         * mmintrin.h (__m64): typedef it to v2si.
2071         (_mm_cvtsi32_si64, _mm_cvtsi32_si64_mm_sll_pi16,
2072         _mm_sll_pi32, _mm_sll_pi64, _mm_slli_pi64, _mm_sra_pi16,
2073         _mm_sra_pi32, _mm_srl_pi16, _mm_srl_pi32, _mm_srl_pi64,
2074         _mm_srli_pi64, _mm_and_si64, _mm_andnot_si64,
2075         _mm_or_si64, _mm_xor_si64): Add neccesary casts.
2076         * xmmintrin.h (_mm_setzero_si64): Likewise.
2077
2078         * i386.h (ALIGN_MODE_128): Update comment; add missing modes
2079         (SSE_REG_MODE_P, MMX_REG_MODE_P): New macros.
2080
2081         PR target/7693
2082         Patch by Shawn Wagner
2083         * mmintrin.h: Replace pi64 by si64.
2084
2085 2002-10-18  David Edelsohn  <edelsohn@gnu.org>
2086
2087         * rs6000.md (movdf_hardfloat32): Order alternatives consistently.
2088         Use length of 4 not *.
2089         (movdf_hardfloat64): Same.  Support DFmode moves to/from CTR/LR.
2090         (movdf_softfloat64): Likewise.
2091         (movdi_internal32): Use length of 4 not *.
2092         (movti_power): Same.
2093         (ctrsi, ctrdi): Same.
2094
2095 2002-10-18  Zack Weinberg  <zack@codesourcery.com>
2096
2097         * c-decl.c (start_decl): Point users of the old initialized-
2098         typedef extension at __typeof__.
2099
2100 2002-10-18  Richard Henderson  <rth@redhat.com>
2101
2102         * real.c (cmp_significand_0, rtd_divmod, ten_to_mptwo): New.
2103         (real_to_decimal): Re-implement using the logic from the
2104         gcc 3.2 etoasc.  Comment heavily.
2105         (div_significands): Simplify loop startup and comparison logic.
2106
2107 2002-10-18  Mark Mitchell  <mark@codesourcery.com>
2108
2109         * target-def.h (TARGET_ASM_OUTPUT_MI_THUNK): Default to NULL.
2110         (TARGET_ASM_OUTPUT_MI_VCALL_THUNK): Likewise.
2111         (TARGET_ASM_OUT): Add them.
2112         * target.h (asm_out): Add output_mi_thunk and
2113         output_mi_vcall_thunk.
2114         * config/alpha/alpha.h (ASM_OUTPUT_MI_THUNK): Rename to ...
2115         (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
2116         * config/arm/arm-protos.h (arm_output_mi_thunk): Declare.
2117         * config/arm/arm.c (arm_output_mi_thunk): Define.
2118         * config/arm/arm.h (ASM_OUTPUT_MI_THUNK): Rename to ...
2119         (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
2120         * config/cris/cris.h (ASM_OUTPUT_MI_THUNK): Rename to ...
2121         (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
2122         * config/frv/frv.h (ASM_OUTPUT_MI_THUNK): Rename to ...
2123         (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
2124         * config/i386/i386-protos.h (x86_output_mi_thunk): Adjust
2125         prototype.
2126         (x86_output_mi_vcall_thunk): Declare.
2127         * config/i386/i386.c (override_options): Clear
2128         output_mi_vcall_thunk in 64-bit mode.
2129         (ix86_fntype_regparm): New function.
2130         (ix86_return_pops_args): Use it.
2131         (ia32_this_parameter): New function.
2132         (x86_output_mi_vcall_thunk): New function.
2133         (x86_output_mi_thunk): Use it
2134         * config/i386/unix.h (TARGET_ASM_OUTPUT_MI_THUNK): Adjust.
2135         (TARGET_ASM_OUTPUT_MI_VCALL_THUNK): Define.
2136         * config/i960/i960-protos.h (i960_output_mi_thunk): Declare.
2137         * config/i960/i960.c (i960_output_mi_thunk): New function.
2138         * config/i960/i960.h (ASM_OUTPUT_MI_THUNK): Adjust.
2139         * config/ia64/ia64-protos.h (ia64_output_mi_thunk): Declare.
2140         * config/ia64/ia64.c (ia64_output_mi_thunk): Define.
2141         * config/ia64/ia64.h (ASM_OUTPUT_MI_THUNK): Rename to ...
2142         (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
2143         * config/m68k/m68k-protos.h (m68k_output_mi_thunk): New function.
2144         * config/m68k/linux.h (ASM_OUTPUT_MI_THUNK): Rename to ...
2145         (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
2146         * config/m68k/netbsd-elf.h (ASM_OUTPUT_MI_THUNK): Rename to ...
2147         (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
2148         * config/mmix/mmix.h (ASM_OUTPUT_MI_THUNK): Rename to ...
2149         (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
2150         * config/pa/pa.h (ASM_OUTPUT_MI_THUNK): Rename to ...
2151         (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
2152         * config/rs6000/sysv4.h (ASM_OUTPUT_MI_THUNK): Rename to ...
2153         (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
2154         * config/s390/s390-protos.h (s390_output_mi_thunk): Declare.
2155         * config/s390/s390.c (s390_output_mi_thunk): Define.
2156         * config/s390/s390.h (ASM_OUTPUT_MI_THUNK): Rename to ...
2157         (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
2158         * config/sparc/sparc.h (ASM_OUTPUT_MI_THUNK): Rename to ...
2159         (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
2160         * config/stormy16/stormy16.h (ASM_OUTPUT_MI_THUNK): Rename to ...
2161         (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
2162         * config/vax/vax-protos.h (vax_output_mi_thunk): Declare.
2163         * config/vax/vax.c (vax_output_mi_thunk): Define.
2164         * config/vax/vax.h (ASM_OUTPUT_MI_THUNK): Rename to ...
2165         (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
2166         * doc/tm.texi: Adjust documentation.
2167
2168 2002-10-18  Jason Thorpe  <thorpej@wasabisystems.com>
2169
2170         * config/netbsd.h (NETBSD_ENABLE_EXECUTE_STACK): Define
2171         __enable_execute_stack function.
2172         * config/alpha/netbsd.h (TRANSFER_FROM_TRAMPOLINE): Define
2173         as NETBSD_ENABLE_EXECUTE_STACK.
2174         * config/i386/netbsd-elf.h (TRANSFER_FROM_TRAMPOLINE): Ditto.
2175         * config/i386/netbsd.h (TRANSFER_FROM_TRAMPOLINE): Ditto.
2176         * config/i386/netbsd64.h (TRANSFER_FROM_TRAMPOLINE): Ditto.
2177         * config/sparc/netbsd-elf.h (TRANSFER_FROM_TRAMPOLINE): Ditto.
2178         * config/sparc/netbsd.h (TRANSFER_FROM_TRAMPOLINE): Ditto.
2179
2180 2002-10-18  Jason Thorpe  <thorpej@wasabisystems.com>
2181
2182         * config/i386/i386.c (x86_initialize_trampoline): Emit a call
2183         to __enable_execute_stack with the address of the trampoline
2184         if TRANSFER_FROM_TRAMPOLINE is defined.
2185         * config/i386/i386.h (TARGET_64BIT): Expand to a compile-time
2186         constant if building libgcc2.
2187
2188 2002-10-17  Roger Sayle  <roger@eyesopen.com>
2189
2190         * doc/c-tree.texi: Update description of COND_EXPR tree nodes.
2191
2192 2002-10-17  Geoffrey Keating  <geoffk@apple.com>
2193
2194         * config/rs6000/rs6000.h (HARD_REGNO_MODE_OK): Allow arbitrary modes
2195         in CTR/LR/MQ.
2196         * config/rs6000/rs6000.md (movcc_internal1): Support CCmode moves
2197         to/from CTR/LR/MQ.
2198         (movsf_hardfloat): Support SFmode moves to/from CTR/LR/MQ.
2199         (movsf_softfloat): Likewise.
2200
2201 2002-10-17  Janis Johnson  <janis187@us.ibm.com>
2202
2203         * Makefile.in (site.exp): Add ALT_CXX_UNDER_TEST and COMPAT_OPTIONS.
2204
2205 2002-10-17  Jason Thorpe  <thorpej@wasabisystems.com>
2206
2207         * config/alpha/alpha.c (alpha_initialize_trampoline): Use
2208         tramp, not addr, to pass the trampoline address to
2209         __enable_execute_stack.
2210
2211 Thu Oct 17 18:40:47 CEST 2002  Jan Hubicka  <jh@suse.cz>
2212
2213         * mmintrin.h: Guard by __MMX__
2214         * xmmintrin.h: Guard by __SSE__
2215
2216         PR other/8062
2217         * xmmintrin.h (_MM_SHUFFLE2): New macro.
2218         (_mm_load*_?d): New functions.
2219         (_mm_set*_?d): New functions.
2220         (_mm_store*_?d): New functions.
2221
2222 Wed Oct 16 15:01:29 CEST 2002  Jan Hubicka  <jh@suse.cz>
2223
2224         Really commit patch announced at Oct 14
2225         PR c/7344
2226         * predict.c (can_predict_insn_p): New function.
2227         (estimate_probability): Avoid unnecesary work.
2228         (process_note_prediction): Likewise.
2229         * toplev.c (rest_of_compilation): Account early branch prediction pass
2230         as TV_BRANCH_PROB.
2231
2232         PR other/8048
2233         Found by Ian Ollmann
2234         * xmmintrin.h (_mm_shuffle_pd): Fix typo.
2235         (_mm_load?_pd): Likewise.
2236         (_mm_store?_pd): Likewise.
2237
2238         PR target/7386
2239         * i386.c (builtin_description):Drop cmpg[te]s[sd].
2240         * xmmintrin.h (__mm_cmpg[te]_s[sd]): Rewrite using
2241         swapped alternative.
2242
2243         PR opt/7630
2244         * reload1.c (reload_inner_reg_of_subreg): New argument output;
2245         (push_reload): Update call.
2246
2247 2002-10-17  Richard Sandiford  <rsandifo@redhat.com>
2248
2249         * config.gcc (mips*-*-*): Add OBJECT_FORMAT_ELF to $tm_defines
2250         if using mips/elf.h or mips/elf64.h.
2251         * config/mips/elf.h (OBJECT_FORMAT_ELF): Remove.
2252         * config/mips/elf64.h (OBJECT_FORMAT_ELF): Remove.
2253
2254 2002-10-16  Aldy Hernandez  <aldyh@redhat.com>
2255
2256         * config/rs6000/rs6000.c (function_arg): Set inner mode of V1DI to
2257         SI.
2258
2259 2002-10-16  Ulrich Weigand  <uweigand@de.ibm.com>
2260
2261         * config/s390/linux.h (ASM_DOUBLE, _ASM_OUTPUT_LONG): Remove.
2262         (LPREFIX): Likewise.
2263         (ASM_COMMENT_START, LOCAL_LABEL_PREFIX, ASM_FORMAT_PRIVATE_NAME,
2264         ASM_OUTPUT_ADDR_VEC_ELT, ASM_OUTPUT_ADDR_DIFF_ELT,
2265         ASM_OUTPUT_ALIGN, ASM_OUTPUT_SKIP, ASM_OUTPUT_ALIGNED_BSS,
2266         TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP, BSS_SECTION_ASM_OP,
2267         GLOBAL_ASM_OP, ASM_OUTPUT_MI_THUNK): Move to s390.h.
2268
2269         * config/s390/s390.h (ASM_COMMENT_START, LOCAL_LABEL_PREFIX,
2270         ASM_FORMAT_PRIVATE_NAME, ASM_OUTPUT_ALIGN, ASM_OUTPUT_SKIP,
2271         ASM_OUTPUT_ALIGNED_BSS, TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP,
2272         BSS_SECTION_ASM_OP): Move from linux.h.
2273         (ASM_OUTPUT_ADDR_VEC_ELT, ASM_OUTPUT_ADDR_DIFF_ELT): Likewise.
2274         Also, use ASM_GENERATE_INTERNAL_LABEL instead of LPREFIX.
2275
2276         * config/s390/s390.c (s390_function_profiler): Use
2277         ASM_GENERATE_INTERNAL_LABEL instead of LPREFIX.
2278
2279 2002-10-15  Richard Henderson  <rth@redhat.com>
2280
2281         * real.c (real_to_decimal): Accept BUF_SIZE and CROP_TRAILING_ZEROS
2282         as arguments.  Bound DIGITS by the available buffer size.
2283         (real_to_hexadecimal): Likewise.
2284         * real.h (real_to_decimal, real_to_hexadecimal): Update prototypes.
2285         (REAL_VALUE_TO_DECIMAL): Remove.
2286         * c-common.c, c-pretty-print.c, print-rtl.c, print-tree.c,
2287         sched-vis.c, config/arc/arc.c, config/c4x/c4x.c, config/fr30/fr30.c,
2288         config/i370/i370.h, config/i386/i386.c, config/i960/i960.c,
2289         config/ip2k/ip2k.c, config/m32r/m32r.c, config/m68hc11/m68hc11.c,
2290         config/m68k/hp320.h, config/m68k/m68k.h, config/m68k/sun2o4.h,
2291         config/m68k/sun3.h, config/mips/mips.c, config/ns32k/ns32k.c,
2292         config/pdp11/pdp11.h, config/vax/vax.h: Update all callers to
2293         use real_to_decimal directly, and with the proper arguments.
2294         * doc/tm.texi (REAL_VALUE_TO_DECIMAL): Remove.
2295
2296 2002-10-15  Jim Wilson  <wilson@redhat.com>
2297
2298         * reload1.c (merge_assigned_reloads): After converting overlapping
2299         reloads to RELOAD_OTHER, abort if there are now conflicting reloads.
2300
2301         * config/i386/i386.md (adddi3_1): Add call to ix86_binary_operator_ok.
2302
2303 Tue Oct 15 22:08:35 CEST 2002  Jan Hubicka  <jh@suse.cz>
2304
2305         * expr.c (do_tablejump): Fix typo in my previous commit.
2306
2307 2002-10-15  Richard Sandiford  <rsandifo@redhat.com>
2308
2309         * config/mips/vr.h (DRIVER_SELF_SPECS): Change %<mgp32 to %{<mgp32}.
2310
2311 2002-10-15  Ulrich Weigand  <uweigand@de.ibm.com>
2312
2313         * config/s390/s390.c (s390_split_branches): Add return
2314         value.  Add parameters TEMP_REG and TEMP_USED.  Use unspec 104.
2315
2316         (find_base_register_in_addr): New function.
2317         (find_base_register_ref): New function.
2318         (replace_base_register_ref): New function.
2319
2320         (struct constant_pool): Add members pool_insn, insns, and anchor.
2321         Remove member last_insn.
2322         (s390_start_pool): Initialize them.
2323         (s390_end_pool): Emit pool placeholder insn.
2324         (s390_add_pool_insn): New function.
2325         (s390_find_pool): Use insns bitmap instead of addresses.
2326         (s390_dump_pool): Replace placeholder insn.  Emit anchor.
2327         Replace unspec 104 by local-pool-relative references.
2328         (s390_output_constant_pool): Output anchor label if required.
2329         (s390_output_symbolic_const): Handle unspec 104 and 105.
2330         (s390_add_pool): Remove, replace by ...
2331         (s390_add_constant, s390_find_constant): ... these new functions.
2332         (s390_add_anchor): New function.
2333
2334         (s390_chunkify_pool): Delete, replace by ...
2335         (s390_chunkify_start, s390_chunkify_finish,
2336         s390_chunkify_cancel): ... these new functions.
2337         (s390_optimize_prolog): Add parameter TEMP_REGNO.
2338         Recompute register live data for special registers.
2339         (s390_fixup_clobbered_return_reg): New function.
2340         (s390_machine_dependent_reorg): Rewrite to use new
2341         s390_chunkify_... routines.
2342
2343         config/s390/s390.md ("reload_base"): Rename to ...
2344         ("reload_base_31"): ... this.
2345         ("reload_base_64"): New insn.
2346         ("reload_base2"): Remove.
2347         ("reload_anchor"): New insn.
2348         ("pool"): New insn.
2349
2350         s390.c (s390_pool_overflow): Remove.
2351         s390.h (s390_pool_overflow): Likewise.
2352         s390.md ("cjump", "icjump", "doloop_si"): Remove s390_pool_overflow.
2353
2354 Tue Oct 15 16:51:04 2002  J"orn Rennecke <joern.rennecke@superh.com>
2355
2356         * sh.md (movv8qi_i+2): Don't split if source is -1.
2357
2358 2002-10-15  Janis Johnson  <janis187@us.ibm.com>
2359
2360         * doc/install.texi: Formatting changes for conformance to HTML 4.01.
2361
2362 2002-10-15  Ulrich Weigand  <uweigand@de.ibm.com>
2363
2364         PR opt/7409
2365         * loop.c (loop_regs_scan): Mark registers used for function
2366         argument passing as MAY_NOT_OPTIMIZE.
2367
2368 Mon Oct 14 20:33:12 CEST 2002  Jan Hubicka  <jh@suse.cz>
2369
2370         * i386.md (movv2di_internal): New pattern.
2371         (movv2df_internal, movv8hi_internal, movv16qi_internal): Fix predicate.
2372         (movv2di): New expander.
2373         * i386.c (ix86_preferred_reload_class): Return NO_REGS for vector operands.
2374
2375         * i386.c (ix86_expand_timode_binop_builtin): Delete.
2376         (builtin_description): Add SSE1 logicals; rename SSE2 logicals.
2377         (ix86_init_mmx_sse_builtins): Kill SSE1 logicals.
2378         (ix86_expand_builtin): Likewise.
2379         * i386.h (sse_andti4_df_1, sse_andti3_df_2, sse_andti3_sf_1, sse_andti3_sf_2,
2380         sse_andti3,
2381         sse_andnti4_df_1, sse_andti3_df_2, sse_andti3_sf_1, sse_andti3_sf_2,
2382         sse_andnti3,
2383         sse_orti4_df_1, sse_orti3_df_2, sse_orti3_sf_1, sse_orti3_sf_2,
2384         sse_orti3,
2385         sse_xorti4_df_1, sse_xorti3_df_2, sse_xorti3_sf_1, sse_xorti3_sf_2,
2386         sse_xorti3): Kill.
2387         (sse_andv4sf3, sse_andnv4sf3, sse_orv2df3, sse_xorv2df3, sse_andv2df3,
2388          sse_andnv2df3, sse_orv2df3, sse_xorv2df3): New expanders.
2389         (*sse_andv4sf3, *sse_andnv2df3, *sse_orv4sf3, *sse_xorv4sf3, *sse_andv2df3,
2390          *sse_andnv2df3, *sse_orv2df3, *sse_xorv2df3): New patterns.
2391         (*sse_andsf3, *sse_andndf3, *sse_ordf3, *sse_xordf3, *sse_anddf3,
2392          *sse_andndf3, *sse_orv2df3, *sse_xorv2df3): New patterns.
2393
2394         * xmmintrin.h (__m128i): Define as __v2di.
2395
2396         PR c++/6419
2397         (expand_expr): Use DECL_RTL_SET_P.
2398
2399 2002-10-14  Roger Sayle  <roger@eyesopen.com>
2400
2401         * combine.c (simplify_set):  Treat MODE_CC registers like cc0.
2402
2403 2002-10-14  Roger Sayle  <roger@eyesopen.com>
2404             Zack Weinberg <zack@codesourcery.com>
2405
2406         * config/i386/i386.c (k6_cost): Correct typo.
2407
2408 2002-10-14  Mark Mitchell  <mark@codesourcery.com>
2409
2410         PR optimization/6631
2411         * alias.c (objects_must_conflict_p): Check honor_readonly when
2412         examining TYPE_READONLY.
2413         * function.c (assign_stack_temp_for_type): Likewise.
2414
2415 2002-10-14  Falk Hueffner  <falk.hueffner@student.uni-tuebingen.de>
2416
2417         * config/alpha/alpha.md (extendsidi2_nofix, extendsidi2_fix):
2418         Swap zero extension arguments.
2419         (umaxhi3): Fix instruction class.
2420         PR target/7211
2421         (prefetch): Fix prefetch instructions.
2422         PR target/7238
2423         (pkwb): Fix output constraint.
2424
2425 2002-10-14  Alexandre Oliva  <aoliva@redhat.com>
2426
2427         * config/mips/mips.c (print_operand): Increase buffer size for
2428         real numbers.
2429
2430 2002-10-14  Richard Henderson  <rth@redhat.com>
2431
2432         PR opt/8165
2433         * gcse.c (adjust_libcall_notes): Revert last change.
2434         * simplify-rtx.c (simplify_replace_rtx): Handle LO_SUM.
2435
2436 2002-10-14  Andrew Haley  <aph@redhat.com>
2437
2438         * tree-inline.c (remap_block): All local class initialization
2439         flags go in the outermost scope.
2440         (expand_call_inline): Call java_inlining_map_static_initializers.
2441         (expand_call_inline): Call java_inlining_merge_static_initializers.
2442         * java/lang.c (merge_init_test_initialization): New.
2443         (java_inlining_merge_static_initializers): New.
2444         (inline_init_test_initialization): New.
2445         (java_inlining_map_static_initializers): New.
2446
2447         * tree-inline.c (expand_call_inline): Convert retvar to expected
2448         type.
2449
2450 2002-10-14  Graham Stott  <graham.stott@btinternet.com>
2451
2452         * stmt.c (decl_conflicts_with_clobbers_p): Add REG_P check.
2453
2454 2002-10-14  Aldy Hernandez  <aldyh@redhat.com>
2455
2456         * stmt.c: Fix typo in comment.
2457
2458 Mon Oct 14 11:35:49 2002  J"orn Rennecke <joern.rennecke@superh.com>
2459
2460         * c-common.c (c_common_type_for_mode): Add V2HImode case.
2461         * tree.c (build_common_tree_nodes_2): Initialize
2462         unsigned_V2HI_type_node and V2HI_type_node.
2463         * tree.h (enum tree_index): Add TI_UV2HI_TYPE and TI_V2HI_TYPE.
2464         (unsigned_V2HI_type_node, V2HI_type_node): Define.
2465
2466 2002-10-14  Jakub Jelinek  <jakub@redhat.com>
2467
2468         * config/i386/i386.h (ASM_OUTPUT_REG_PUSH, ASM_OUTPUT_REG_POP):
2469         Handle TARGET_64BIT.
2470
2471 2002-10-14  Richard Sandiford  <rsandifo@redhat.com>
2472
2473         * config/mips/vr.h (DRIVER_SELF_SPECS): Define.
2474         * config/mips/t-vr (MULTILIB_OPTIONS): Remove mlong32.
2475         (MULTILIB_DIRNAMES): Remove long32.
2476         (MULTILIB_EXCEPTIONS): Don't build -mabi=32 -mgp32 multilibs.
2477         (MULTILIB_REDUNDANT_DIRS): Remove.
2478
2479 2002-10-14  Richard Sandiford  <rsandifo@redhat.com>
2480
2481         * doc/tm.texi (DRIVER_SELF_SPECS): Document.
2482         * gcc.c (driver_self_specs): New variable.
2483         (do_self_spec): New function.
2484         (main): Use it to process driver_self_specs.
2485
2486 2002-10-13  Richard Henderson  <rth@redhat.com>
2487
2488         * rtl.c (shallow_copy_rtx): Use memcpy for the entire node.
2489
2490 2002-10-12  Neil Booth  <neil@daikokuya.co.uk>
2491
2492         PR preprocessor/7862
2493         PR preprocessor/8190
2494         * gcc.c (cpp_unique_options): Don't delete .d files.
2495         Remove stray whitespace.
2496
2497 2002-10-12  Naohiko Shimizu  <pshimizu@fa2.so-net.ne.jp>
2498
2499         * pdp11.h (ASM_OUTPUT_SKIP): Add preceding 0 for octal constant.
2500         (ASM_OUTPUT_COMMON, ASM_OUTPUT_LOCAL): Likewise.
2501         * pdp11.c (pdp11_output_function_prologue): 0%o -> %#o.
2502         (pdp11_output_function_epilogue, output_ascii): Likewise.
2503         (output_addr_const_pdp11): Likewise.
2504         * pdp11.md (movdi): Use offsetable memory for floating store.
2505         (lshrsi3, negsi2): Delete irrelevant comment.
2506
2507 2002-10-11  Geoffrey Keating  <geoffk@apple.com>
2508
2509         * cse.c (mention_regs): Set SUBREG_TICKED to the register number,
2510         not the address of the REG.
2511         (struct cse_reg_info): Make subreg_ticked unsigned.
2512
2513 2002-10-11  Janis Johnson  <janis187@us.ibm.com>
2514
2515         * doc/compat.texi: Add info about C++ libraries.
2516
2517 2002-10-11  Richard Henderson  <rth@redhat.com>
2518
2519         PR opt/8165
2520         * gcse.c (adjust_libcall_notes): Also adjust notes for INSN.
2521
2522 2002-10-11  John David Anglin  <dave@hiauly1.hia.nrc.ca>
2523
2524         * cfganal.c (dfs_enumerate_from): Use PARAMS.
2525         * genautomata.c (output_insn_code_cases): Likewise.
2526         * real.c (real_format): Likewise.
2527         * tree.c (tree_size): Revise expressions using TREE_CODE_LENGTH to
2528         ensure value is promoted before doing subtraction.
2529
2530 Fri Oct 11 22:22:38 CEST 2002  Jan Hubicka  <jh@suse.cz>
2531
2532         * calls.c (expand_call): Simplify noreturn call.
2533
2534         PR c/7344
2535         * cfgbuild.c (make_edges): Create edge cache when we do have
2536         large jumptable.
2537         * expr.c (do_tablejump): Note size of maximal jumptable.
2538         * function.c (prepare_function_start): Zero out size.
2539         * function.h (function): Add max_jumptable_ents.
2540
2541         * cfgcleanup.c (insn_match_p): Verify sibcall flag for calls to.
2542
2543 Fri Oct 11 12:34:33 2002  J"orn Rennecke <joern.rennecke@superh.com>
2544
2545         * sh.md (movv8qi_i+2): For V8QI destinations, generate V4HI
2546         register for mperm_w operation.
2547
2548 Fri Oct 11 10:56:17 2002  J"orn Rennecke <joern.rennecke@superh.com>
2549
2550         * emit-rtl.c (gen_lowpart_common): When asked to make a vector from
2551         an integer, use simplify_gen_subreg.
2552
2553 2002-10-10  Aldy Hernandez  <aldyh@redhat.com>
2554
2555         * extend.texi (Vector Extensions): Remove comment about single
2556         element vectors.
2557
2558 2002-10-10  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
2559
2560         * fold-const.c (size_htab_hash): Use htab_hash_pointer.
2561         * function.c (insns_for_mem_hash): Likewise.
2562         * varasm.c (STRHASH): Likewise.
2563
2564 2002-10-10  Stuart Hastings  <stuart@apple.com>
2565
2566         * cse.c (struct cse_reg_info): Add subreg_ticked.
2567         (SUBREG_TICKED): New.
2568         (get_cse_reg_info): Initialize SUBREG_TICKED.
2569         (mention_regs): Use it.
2570         (invalidate): Set SUBREG_TICKED.
2571         (invalidate_for_call): Likewise.
2572         (addr_affects_sp_p): Likewise.
2573
2574 2002-10-10  Jakub Jelinek  <jakub@redhat.com>
2575
2576         * config/i386/i386.md (tls_local_dynamic_base): Put pic reg
2577         into proper operand.
2578
2579 2002-10-10  Denis Chertykov  <denisc@overta.ru>
2580
2581         * config/ip2k/ip2k.c (function_epilogue): Optimize stack
2582         deallocation.
2583         * config/ip2k/libgcc.S: Combine routines used by function
2584         epilogue.
2585
2586 2002-10-10  Jim Wilson  <wilson@redhat.com>
2587
2588         * cse.c (fold_rtx): Don't perform associative optimization for DIV and
2589         UDIV.
2590
2591 2002-10-10  David Edelsohn  <edelsohn@gnu.org>
2592
2593         * config/rs6000/aix52.h: New file.
2594         * config/rs6000/t-aix52: New File.
2595         * config.gcc (rs6000-ibm-aix5.1.*): New entry.
2596         (rs6000-ibm-aix[56789].*): Default to AIX 5.2.
2597
2598 Thu Oct 10 19:37:54 CEST 2002  Jan Hubicka  <jh@suse.cz>
2599
2600         PR target/5610
2601         * invoke.texi (-msse-math): Kill
2602         (-msse): Add note to mfpmath=sse.
2603
2604 Thu Oct 10 17:08:30 CEST 2002  Jan Hubicka  <jh@suse.cz>
2605
2606         PR target/7723
2607         * i386.c (ix86_expand_vector_move): Do not generate const0->mem moves.
2608
2609 2002-10-10  Neil Booth  <neil@daikokuya.co.uk>
2610
2611         PR preprocessor/8179
2612         * gcc.c (cpp_options): Add {ansi}, move %{m*} to same location
2613         as cc1_options.
2614         (default_compilers): Pass debug options when preprocessing
2615         stdin.
2616
2617 2002-10-06  Richard Henderson  <rth@redhat.com>
2618
2619         * toplev.c (rest_of_compilation): Revert opt/2960 change.
2620
2621 2002-10-09  Zack Weinberg  <zack@codesourcery.com>
2622
2623         PR c/7353
2624         * c-decl.c (start_decl): Unconditionally issue error for
2625         'typedef foo = bar'.
2626         (finish_decl): Remove special case for TYPE_DECL with initializer.
2627
2628         * doc/extend.texi: Delete "Naming Types" section.  Change all
2629         cross-references to that section to refer to "Typeof" instead.
2630         Add the useful safe-max()-macro example from "Naming Types" to
2631         "Typeof", rewritten using that extension.  Add some compatibility
2632         notes to "Typeof."
2633
2634 2002-10-09  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
2635
2636         * loop.c: Revert 2002-08-15 change.
2637         (LOOP_REGNO_NREGS): Ensure type is int.
2638
2639 2002-10-09  David Edelsohn  <edelsohn@gnu.org>
2640
2641         * config/rs6000/rs6000.md (extenddftf2): Change to define_insn
2642         which copies first FPR and clears second.
2643         (extendsftf2): Same.
2644         (floatditf2): Fix typo.
2645         (floatsitf2): Same.
2646         (fix_trunctfdi2): Same.
2647         (fix_trunctfsi2): Same.
2648
2649 2002-10-09  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
2650
2651         * conflict.c (arc_hash): Change return type to hashval_t.
2652         * cselib.c (get_value_hash): Likewise.
2653         * genautomata.c (automaton_decl_hash, insn_decl_hash, decl_hash,
2654         state_hash, automata_list_hash): Likewise.
2655         * read-rtl.c (def_hash): Likewise.
2656         * tree.c (type_hash_hash): Likewise.
2657
2658 2002-10-08  Aldy Hernandez  <aldyh@redhat.com>
2659
2660         * config/rs6000/rs6000.c (rs6000_ra_ever_killed): Call
2661         prologue_epilogue_contains instead of using REG_MAYBE_DEAD notes.
2662
2663 Wed Oct  9 15:54:49 2002  J"orn Rennecke <joern.rennecke@superh.com>
2664
2665         * sh.md (ffssi2): Fix emitted code.
2666
2667 2002-10-09  Ulrich Weigand  <uweigand@de.ibm.com>
2668
2669         * cse.c (insn_live_p): Pass insn pattern, not full insn
2670         to may_trap_p.
2671
2672 2002-10-09  Neil Booth  <neil@daikokuya.co.uk>
2673
2674         * cppmacro.c (paste_tokens): Only allow / to paste with =.
2675
2676 2002-10-09  David Edelsohn  <edelsohn@gnu.org>
2677
2678         * config/rs6000/rs6000.md (movdf splitter): Use gen_int_mode on
2679         64-bit hosts.
2680         (movtf_internal): Reference correct displacement for second value
2681         in memory.
2682         (movtf splitter): Correct generation of constants in 64-bit mode.
2683
2684 2002-10-09  Alan Modra  <amodra@bigpond.net.au>
2685
2686         * libgcc2.c (__floatdisf): Properly cure double rounding.
2687
2688 2002-10-09  Gabriel Dos Reis  <gdr@integrable-solutions.net>
2689
2690         * c-common.c (cb_register_builtins): Define __WCHAR_MAX__.
2691         * doc/cpp.texi (Common Predefined Macros): Document.
2692
2693 2002-10-09  Gabriel Dos Reis  <gdr@integrable-solutions.net>
2694
2695         PR doc/7484
2696         * doc/invoke.texi (Option Summary): List
2697         -Wmissing-declarations as a C only option.
2698
2699 2002-10-08  Jakub Jelinek  <jakub@redhat.com>
2700
2701         * config/sparc/t-linux64 (MULTILIB_OPTIONS): Remove
2702         mno-app-regs|mcmodel=medany.
2703         (MULTILIB_DIRNAMES, MULTILIB_OSDIRNAMES): Remove alt.
2704         (MULTILIB_EXCEPTIONS, MULTILIB_EXCLUSIONS, MULTILIB_MATCHES): Remove.
2705         (CRTSTUFF_T_CFLAGS): Define.
2706
2707 2002-10-08  Roger Sayle  <roger@eyesopen.com>
2708
2709         PR target/8087
2710         * simplify-rtx.c (avoid_constant_pool_reference):  Allow constant
2711         pool references that are constructed using LO_SUM.
2712
2713 2002-10-08  Nathan Sidwell  <nathan@codesourcery.com>
2714
2715         * c-opts.c (c_common_decode_option): Add warn_strict_aliasing to
2716         -Wall.
2717         * c-typeck.c (build_c_cast): Use warn_strict_aliasing, tweak
2718         message.
2719         * flags.h (warn_strict_aliasing): Declare.
2720         * toplev.c (warn_strict_aliasing): Define.
2721         (lang_independent_options): Add it.
2722         * doc/invoke.texi (-Wstrict-aliasing): Document it.
2723
2724 2002-10-08  Zack Weinberg  <zack@codesourcery.com>
2725
2726         * system.h (GCCBUGURL): Delete.
2727         * version.c (bug_report_url): New.  Add commentary about
2728         modifying both these strings in modified distributions.
2729         * version.h: Declare bug_report_url.
2730
2731         * diagnostic.c, gcc.c, gcov.c: Globally replace GCCBUGURL with
2732         bug_report_url.
2733
2734 2002-10-08  Nick Clifton  <nickc@redhat.com>
2735
2736         * config/rs6000/spe.h (__ev_set_acc_u64): Use __ev_create_u64 to
2737         convert uint64_t into __ev64_opaque__.
2738         (__ev_set_acc_s64): Likewise, but using signed types.
2739
2740 2002-10-08  Ulrich Weigand  <uweigand@de.ibm.com>
2741
2742         * config/s390/s390.md ("*doloop_si_long"): Add missing operand.
2743         ("*doloop_di_long"): Likewise.
2744
2745 Tue Oct  8 16:50:10 CEST 2002  Jan Hubicka  <jh@suse.cz>
2746
2747         * print-rtl.c (print_rtx): Increase buffer size for real numbers.
2748
2749 2002-10-08  Richard Sandiford  <rsandifo@redhat.com>
2750
2751         * config/mips/mips.md (define_attr cpu): Add r4111.
2752
2753 2002-10-08  Anthony Green  <green@redhat.com>
2754
2755         * bitmap.c (bitmap_equal_p): Clear all bitmap_head fields.
2756
2757 2002-10-08  Michael Hayes  <m.hayes@elec.canterbury.ac.nz>
2758
2759         * config/c4x/c4x.c (c4x_print_operand): Enlarge buffer
2760         for REAL_VALUE_TO_DECIMAL output.
2761
2762 2002-10-07  David Edelsohn  <edelsohn@gnu.org>
2763
2764         * config/rs6000/rs6000.c (rs6000_override_options): Set
2765         real_format_for_mode for IBM extended format, if enabled.
2766         (easy_fp_constant): Add TFmode.
2767         (rs6000_legitimize_address): Add TFmode.
2768         (rs6000_legitimate_address): Same.
2769         (function_arg_advance): TFmode uses two FPRs.
2770         (rs6000_emit_prologue): Fix warning.
2771         (rs6000_output_function_epilogue): Add TFmode.
2772         (output_toc): Add TFmode.
2773         * rs6000.h (SLOW_UNALIGNED_ACCESS): Add TFmode.
2774         (LEGITIMATE_OFFSET_ADDRESS_P): Add TFmode.
2775         * rs6000.md (movtf splitter): Load TFmode constant.
2776
2777 2002-10-07  Dale Johannesen  <dalej@apple.com>
2778
2779         * rtl.h:  Add NOTE_PRECONDITIONED.
2780         * unroll.c:  Set it.
2781         * loop.c:  Set loop_info->preconditioned from it.
2782         * doloop.c:  Permit doloop treatment when loop_info->preconditoned.
2783
2784 2002-10-07  Richard Henderson  <rth@redhat.com>
2785
2786         * config/i960/i960.c (i960_setup_incoming_varargs): Create a
2787         new rtx for comparing the argument pointer against zero.
2788         (i960_va_start): Similarly.
2789
2790 2002-10-07  Richard Henderson  <rth@redhat.com>
2791
2792         * config/i960/i960.md (*): Use TFmode, not XFmode.
2793         * config/i960/i960.c (*): Likewise.
2794         (i960_arg_size_and_align): Remove XFmode alignment hack.
2795         (i960_round_align): Merge code from ROUND_TYPE_ALIGN.
2796         * config/i960/i960.h (LONG_DOUBLE_TYPE_SIZE): Use 128, not 96.
2797         (MAX_LONG_DOUBLE_TYPE_SIZE): Likewise.
2798         (DATA_ALIGNMENT, ROUND_TYPE_SIZE): Remove.
2799
2800 2002-10-07  Richard Henderson  <rth@redhat.com>
2801
2802         * config/fp-bit.c (EXTENDED_FLOAT_STUBS): Flush out all XF/TFmode
2803         entry points; use void return value and argument list.
2804
2805 2002-10-05  Naohiko Shimizu <nshimizu@keyaki.cc.u-tokai.ac.jp>
2806
2807         * t-pdp11: Add MULTILIB support for msoft-float.
2808         * pdp11.h (LEGITIMATE_CONSTANT_P): Fix soft-float case.
2809
2810         * t-pdp11: Add LIB2FUNCS_EXTRA.
2811         * pdp11.c (pdp11_output_function_prologue): Restrict offset to 16bit,
2812         add preceding 0 to the octal constant, rename 'fp' to 'r5', rename
2813         'fldd' to 'ldd', rename 'fstd' to 'std'.
2814         (pdp11_output_function_epilogue): Likewise.
2815         (output_move_quad): Make the comment gas compatible.
2816         (output_ascii): Add preceding 0 to the octal constant.
2817         (print_operand_address): Add pre_modify, post_modify.
2818         (output_addr_const_pdp11): Add preceding 0 to the octal constant.
2819         * pdp11.h (GO_IF_LEGITIMATE_ADDRESS) : Add 'movb' pre_modify case
2820         with the indication of Paul Koning.
2821         (PRINT_OPERAND): Fix floating constant.
2822         * pdp11.md (movdi): Restrict matching pattern.
2823         (movqi): Generalize the matching pattern.
2824         (movdf): Restrict matching pattern.
2825         (zero_extendqihi2): Change constant representation.
2826         (floatsidf2): Fix wrong operands.
2827         (addqi3): Fix wrong instruction name.
2828         (subqi3): Fix wrong instruction name.
2829         (andsi3, andhi3, andqi3): Simplify and fix to use 'bic'.
2830         (xorsi3): Fix wrong insn.
2831         (one_cmplqi2): Add two operand pattern.
2832         (lsrsi3): New.
2833         (negsi2): New.
2834         (call): Add register indirect case.
2835         (mod): Fix wrong subreg.
2836
2837 2002-09-25  Eric Botcazou  <ebotcazou@libertysurf.fr>
2838             Volker Reichelt <reichelt@igpm.rwth-aachen.de>
2839
2840         PR c/7411
2841         * expr.c (expand_expr) [PLUS]: Simplify after the operands
2842         have been expanded in EXPAND_NORMAL mode.
2843
2844 2002-10-06  Richard Henderson  <rth@redhat.com>
2845
2846         * config/rs6000/rs6000.md (load_toc_v4_PIC_2): Fix base constraint.
2847
2848 2002-10-06  Richard Henderson  <rth@redhat.com>
2849
2850         PR optimization/2960
2851         * toplev.c (rest_of_compilation): Don't copy_loop_headers if
2852         optimize_size.
2853
2854 2002-10-06  Alexandre Oliva  <aoliva@redhat.com>
2855
2856         * config/mips/mips.h (SIZE_TYPE, PTRDIFF_TYPE): Override
2857         previously definitions.
2858
2859 2002-10-06  Frank Ch. Eigler  <fche@redhat.com>
2860
2861         * cppinit.c (init_standard_includes, parse_option): Use strncmp.
2862         * c-opts.c (find_opt): Similarly.
2863
2864 2002-10-05  Jakub Jelinek  <jakub@redhat.com>
2865
2866         * gcc.c (set_multilib_dir): Don't access *end.
2867         Use memcpy instead of strncpy.  Don't write beyond malloced buffer.
2868         (print_multilib_info): Don't show paths starting with ".:".
2869         * genmultilib: Add new option, "yes" if multilibs are enabled.
2870         Update comments.  If multilibs not enabled, print .:${osdirout}
2871         for each directory.  If multilibs are enabled, always print
2872         ${dirout}:${osdirout}, even if the two are the same.
2873         * Makefile.in (s-mlib): Pass @enable_multilib@ to genmultilib.
2874         Pass all MULTILIB_* variables to genmultilib even if
2875         --disable-multilib but MULTILIB_OSDIRNAMES is not empty.
2876
2877 2002-10-04  Bruce Korb  <bkorb@gnu.org>
2878
2879         * fixinc/inclhack.def(hpux11_abs):  use format fix
2880         * fixinc/fixincl.x: regenerate
2881         * fixinc/tests/base/stdlib.h: accommodate new fix test
2882
2883 Sat Oct  5 19:42:45 CEST 2002  Jan Hubicka  <jh@suse.cz>
2884
2885         * c-common.c (cb_register_builtins):  Use really_no_inline.
2886
2887 2002-10-04  David Edelsohn  <edelsohn@gnu.org>
2888
2889         * unroll.c (copy_loop_body): Remove REG_EQUAL note attached to
2890         copied instruction if the note is not loop invariant.
2891
2892 2002-10-04  Loren J. Rittle  <ljrittle@acm.org>
2893
2894         * gcc/ginclude/stddef.h: Support the FreeBSD 5 typedef system.
2895
2896 2002-10-04  Steve Ellcey  <sje@cup.hp.com>
2897
2898         * doc/invoke.texi (HPPA):  Add -mlinker-opt, -mgnu-ld,
2899         and -mhp-ld options to list of options.  Add -mgnu-ld
2900         and -mhp-ld option descriptions.
2901
2902 2002-10-04  Steve Ellcey  <sje@cup.hp.com>
2903
2904         * fixinc/inclhack.def (hpux11_abs):  New.
2905         (stdio_va_list): change __va_list__ to __gnuc_va_list.
2906         * fixinc/fixincl.x: Rebuild.
2907
2908 2002-10-04  Roger Sayle  <roger@eyesopen.com>
2909
2910         * config/i386/i386.h (processor_costs): Add new fields fadd,
2911         fmul, fdiv, fabs, fchs and fsqrt to costs structure.
2912         (RTX_COSTS): Use these fields to determine the RTX costs
2913         of floating point addition/subtraction, multiplication,
2914         division, fabs, negation and square root respectively.
2915         * config/i386/i386.c (size_cost): Provide instruction sizes
2916         for these new fields.
2917         (i386_cost, i486_cost, pentium_cost, pentiumpro_cost,
2918         k6_cost, athlon_cost, pentium4_cost): Provide typical cycle
2919         counts for these new fields for all x86 processor variants.
2920
2921 2002-10-04  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
2922
2923         * mips.c (mips_const_double_ok): Delete unused variable.
2924
2925         * gengtype.c (rtx_next): Change type to int.
2926
2927 2002-10-04  Andreas Jaeger  <aj@suse.de>
2928
2929         * config/i386/t-linux64 (MULTILIB_OSDIRNAMES): Fix value.
2930
2931 2002-10-04  Richard Henderson  <rth@redhat.com>
2932
2933         * real.h (SIGNIFICAND_BITS): Add one more word.
2934         (CONST_DOUBLE_FORMAT): Accomodate 6 words.
2935         * real.c (times_pten): New.
2936         (real_to_decimal, real_from_string): Use it.
2937         (sticky_rshift_significand): Use & to find modulus.
2938         (rshift_significand, lshift_significand): Likewise.
2939         (do_divide): Apply sticky bit after normalization.
2940         (real_to_decimal, real_to_hexadecimal): Fix sign of Inf and NaN.
2941
2942 2002-10-03  Andreas Jaeger  <aj@suse.de>
2943
2944         * gengtype.c (adjust_field_rtx_def): Cast variables of type size_t
2945         to unsigned long, adjust printf format string.
2946         (output_mangled_typename): Likewise.
2947
2948 2002-10-03  Jason Thorpe  <thorpej@wasabisystems.com>
2949
2950         * config/vax/vax.c (vax_output_function_prologue): Use asm_fprintf.
2951         * config/vax/vax.h (VAX_FUNCTION_PROFILER_NAME): New.
2952         (FUNCTION_PROFILER): Rewrite to use ASM_GENERATE_INTERNAL_LABEL,
2953         assemble_name, asm_fprintf, and VAX_FUNCTION_PROFILER_NAME.
2954         (ASM_OUTPUT_MI_THUNK): Use asm_fprintf instead of REGISTER_PREFIX.
2955         (PRINT_OPERAND_PUNCT_VALID_P): Fix comment.
2956         * config/vax/elf.h (FUNCTION_PROFILER): Remove.
2957         (VAX_FUNCTION_PROFILER_NAME): Redefine as "__mcount".
2958
2959 2002-10-03  Mark Mitchell  <mark@codesourcery.com>
2960
2961         * doc/invoke.texi (-Wabi): Document mangling bug.
2962
2963 2002-10-04  Alan Modra  <amodra@bigpond.net.au>
2964
2965         * config/rs6000/rs6000.c (rs6000_output_function_epilogue): Use a
2966         name for the tbtab label that depends on the function asm name.
2967         Don't output tbtab label unless optional_tbtab.
2968         (output_mi_thunk): Formatting.
2969
2970 2002-10-03  Richard Henderson  <rth@redhat.com>
2971
2972         * config/m68k/m68k.h (OVERRIDE_OPTIONS): Move additional code ...
2973         * config/m68k/m68k.c (override_options): ... here.
2974         * config/m68k/m68kelf.h (OVERRIDE_OPTIONS): Remove.
2975         * config/m68k/m68kv4.h (OVERRIDE_OPTIONS): Remove.
2976         * config/m68k/linux.h (SUBTARGET_OVERRIDE_OPTIONS): Remove.
2977         * config/m68k/netbsd-elf.h (SUBTARGET_OVERRIDE_OPTIONS): Remove.
2978
2979 2002-10-03  Richard Henderson  <rth@redhat.com>
2980
2981         * real.h (struct real_value): Use ENUM_BITFIELD.
2982
2983 2002-10-03  Richard Henderson  <rth@redhat.com>
2984
2985         * config/i960/i960.md (call, call_value): Use emit_call_insn.
2986
2987 2002-10-03  Steve Ellcey  <sje@cup.hp.com>
2988
2989         * config/pa/pa64-hpux.h (INIT_ENVIRONMENT): New.
2990
2991 2002-10-03  Steve Ellcey  <sje@cup.hp.com>
2992
2993         * config.gcc (hppa*64*-*-hpux11*): Check gnu_ld.
2994         * config/pa/pa.h (MASK_GNU_LD): New.
2995         (TARGET_GNU_LD): New.
2996         * config/pa/pa64-hpux.h (LINK_SPEC): Set based
2997         on gnu-ld and MASK_GNU_LD.
2998         (SUBTARGET_SWITCHES): New gnu-ld & hp-ld flags.
2999
3000 Thu Oct  3 23:35:51 CEST 2002  Jan Hubicka  <jh@suse.cz>
3001
3002         * i386.c (athlon_cost): Fix the move costs.
3003
3004 Thu Oct  3 23:20:58 CEST 2002  Jan Hubicka  <jh@suse.cz>
3005
3006         * final.c (final): Use symbol name as function name for profiling.
3007         * profile.c (get_exec_counts): Likewise.
3008         (branch_prob): Likewise.
3009
3010 2002-10-03  Jakub Jelinek  <jakub@redhat.com>
3011
3012         * longlong.h (__udiv_qrnnd): Remove PARAMS from prototype.
3013
3014 2002-10-03  Jakub Jelinek  <jakub@redhat.com>
3015
3016         * gcc.c (print_multi_os_directory): New variable.
3017         (option_map): Support --print-multi-os-directory.
3018         (struct prefix_list): Add os_multilib field.
3019         (multilib_os_dir): New variable.
3020         (static_specs): Add multilib_options.
3021         (find_a_file): Add multilib argument.  Search in GCC or OS multilib
3022         subdirs if non-zero.
3023         (read_specs, execute): Update callers.
3024         (find_file): Likewise.  Don't prefix name with multilib_dir, instead
3025         pass 1 as multilib option.
3026         (display_help): Include --print-multi-os-directory.
3027         (add_prefix): Add os_multilib argument.  Initialize pl->os_multilib.
3028         (process_command): Update callers.  Handle --print-multi-os-directory.
3029         (do_spec_1) ['D']: Use multilib_os_directory if pl->os_multilib is
3030         set.
3031         (main): Update find_a_file and add_prefix callers.
3032         Handle print_multi_os_directory.
3033         (struct mdswitchstr): New.
3034         (mdswitches, n_mdswitches): New variables.
3035         (used_arg): Add MULTILIB_DEFAULT switches too if they are not
3036         present on the command line nor their mutually incompatible
3037         switches.
3038         (default_arg): Optimize.
3039         (set_multilib_dir): Compute multilib_os_dir.  Initialize mdswitches
3040         array.
3041         (print_multilib_info): Only print GCC multilib dir name, not OS
3042         multilib dirname.
3043         * genmultilib: Add osdirnames parameter.  Output multilib_options
3044         variable.  If osdirnames is specified, output dirnames as
3045         dirname:osdirname.
3046         * mklibgcc.in: Use MULTILIB_OSDIRNAMES, --print-multi-directory
3047         and --print-multi-os-directory instead of SHLIB_SLIBDIR_SUFFIXES
3048         to compute libgcc_s soname and install path.
3049         * Makefile.in (libgcc.mk): Pass MULTILIB_OSDIRNAMES instead of
3050         SHLIB_SLIBDIR_SUFFIXES to mklibgcc.
3051         (s_mlib): Pass MULTILIB_OSDIRNAMES or nothing as last genmultilib
3052         argument.
3053
3054         * config/sparc/t-linux64 (MULTILIB_OSDIRNAMES): Set.
3055         (SHLIB_SLIBDIR_SUFFIXES): Remove.
3056         * config/sparc/linux64.h (STARTFILE_SPEC32, STARTFILE_SPEC64,
3057         ENDFILE_SPEC32, ENDFILE_SPEC64, ENDFILE_COMMON): Remove.
3058         (STARTFILE_SPEC, ENDFILE_SPEC): Don't distinguish between -m32
3059         and -m64.
3060         * config/sparc/t-sol2-64 (MULTILIB_OSDIRNAMES): Set.
3061         (SHLIB_SLIBDIR_SUFFIXES): Remove.
3062         * config/sparc/sol2-bi.h (STARTFILE_ARCH64_SPEC): Remove.
3063         (STARTFILE_ARCH_SPEC): Remove.
3064         * config/i386/t-linux64 (MULTILIB_OSDIRNAMES): Set.
3065         (SHLIB_SLIBDIR_SUFFIXES): Remove.
3066         * config/i386/linux64.h (STARTFILE_PREFIX_SPEC): Remove.
3067         * config/mips/t-iris6 (MULTILIB_OSDIRNAMES): Set.
3068         (SHLIB_SLIBDIR_SUFFIXES): Remove.
3069
3070 Thu Oct  3 21:42:20 CEST 2002  Jan Hubicka  <jh@suse.cz>
3071
3072         * predict.c (choose_function_section): Avoid choice for linkonce functions.
3073
3074 Thu Oct  3 15:15:00 CEST 2002  Jan Hubicka  <jh@suse.cz>
3075
3076         * i386.md (lea to mul peep2): Fix condition.
3077
3078 2002-10-02  John David Anglin  <dave@hiauly1.hia.nrc.ca>
3079
3080         * pa-linux.h (FUNCTION_OK_FOR_SIBCALL): Delete macro.
3081         * pa32-linux.h (FUNCTION_OK_FOR_SIBCALL): Define.
3082
3083 2002-10-02  Richard Henderson  <rth@redhat.com>
3084
3085         PR opt/7124
3086         * config/i386/i386.c (ix86_register_move_cost): Increase cost
3087         for secondary_memory_needed pairs.
3088
3089 2002-10-02  Nathanael Nerode  <neroden@gcc.gnu.org>
3090
3091         * doc/vms.texi: Blow away false include file section.
3092
3093 2002-10-02  Roger Sayle  <roger@eyesopen.com>
3094
3095         PR optimization/6627
3096         * toplev.c (force_align_functions_log): New global variable.
3097         * flags.h (force_align_functions_log): Add extern prototype.
3098         * varasm.c (assemble_start_function): Use it to force minimum
3099         function alignment.
3100         * config/i386/i386.h (FUNCTION_BOUNDARY): Set the correct
3101         minimum function alignment to one byte.
3102         (TARGET_PTRMEMFUNC_VBIT_LOCATION): Store the virtual bit in
3103         the least significant bit of vtable member function pointers.
3104         * tree.h (enum ptrmemfunc_vbit_where_t): Move definition to
3105         here from cp/cp-tree.h.
3106
3107 Wed Oct  2 17:01:36 CEST 2002  Jan Hubicka  <jh@suse.cz>
3108
3109         * i386.c (print_operand_address): Use RIP addressing for offsetted
3110         label refs too.
3111
3112 2002-09-30  David S. Miller  <davem@redhat.com>
3113
3114         PR middle-end/7151
3115         * config/sparc/sparc.md (movdi_insn_sp32_v9): Accept 'e' regs.
3116         (movdi reg/reg split): Match only on sparc32, and v9 when int regs.
3117
3118 2002-10-01  Roger Sayle  <roger@eyesopen.com>
3119
3120         * unroll.c (loop_iterations): Revert 2002-09-08 change.
3121
3122 2002-10-01  Richard Henderson  <rth@redhat.com>
3123
3124         * real.c (real_to_decimal): Crop trailing zeros for DIGITS < 0.
3125         (real_to_hexadecimal): Likewise.
3126         * print-rtl.c (print_rtx): If we are linked with real.c, don't
3127         dump the XWINT fields of a floating point CONST_DOUBLE.
3128
3129 2002-10-01  Jason Thorpe  <thorpej@wasabisystems.com>
3130
3131         * config/vax/elf.h (FUNCTION_PROFILER): Fix __mcount call.
3132
3133 2002-10-01  Richard Henderson  <rth@redhat.com>
3134
3135         * calls.c (precompute_register_parameters): Force non-legitimate
3136         constants into pseudos.
3137
3138 2002-10-01  Nick Clifton  <nickc@redhat.com>
3139
3140         * config/rs6000/spe.md (spe_evrlwi): Add missing third operand
3141         to assembler template.
3142
3143 2002-10-01  Richard Henderson  <rth@redhat.com>
3144
3145         * dwarf2out.c (loc_descriptor_from_tree): Relax requirement
3146         for TLS debug info to !DECL_EXTERNAL.
3147
3148 2002-10-01  Matt Thomas  <matt@3am-software.com>
3149             Jason Thorpe  <thorpej@wasabisystems.com>
3150
3151         * config.gcc (vax-*-netbsdelf*): Enable configuration.
3152         * config/elfos.h (PCC_BITFIELD_TYPE_MATTERS): Define only
3153         if not already defined.
3154         * config/vax/elf.h: New file.
3155         * config/vax/netbsd-elf.h: New file.
3156         * config/vax/vax.c: Include "debug.h".
3157         (vax_output_function_prologue): Add dwarf2 support.  Use
3158         MAIN_NAME_P when checking for VMS_TARGET stack adjust.
3159         * config/vax/vax.h (CONST_OK_FOR_LETTER_P): Add cases for
3160         'J' [0..63], 'K' [-128..127], 'L' [-32768..32767],
3161         'M' [0..255], 'N' [0..65535], and, 'O' [-63..-1].
3162         (VAX_ISTREAM_SYNC): Remove.
3163         (INITIALIZE_TRAMPOLINE): Use gen_sync_istream.
3164         (JUMP_TABLES_IN_TEXT_SECTION): Define.
3165         (ASM_OUTPUT_REG_POP): Use reg_names for the stack pointer.
3166         (ASM_OUTPUT_ADDR_VEC_ELT): Use ASM_GENERATE_INTERNAL_LABEL
3167         and assemble_name.
3168         (ASM_OUTPUT_ADDR_DIFF_ELT): Likewise.
3169         (PRINT_OPERAND_PUNCT_VALID_P): Accept '|'.
3170         (PRINT_OPERAND): Output REGISTER_PREFIX for '|'.
3171         (INCOMING_RETURN_ADDR_RTX): Define.
3172         * config/vax/vax.md (VUNSPEC_BLOCKAGE)
3173         (VUNSPEC_SYNC_ISTREAM): Define.
3174         (blockage): Use VUNSPEC_BLOCKAGE.
3175         (sync_istream): New insn.
3176
3177 2002-10-01  Richard Henderson  <rth@redhat.com>
3178
3179         * config/vax/vax.md (call_pop, *call_pop, call_value_pop)
3180         (*call_value_pop, call, call_value): Add dwarf2 EH support.
3181         (*call): New insn.
3182
3183 2002-10-01  Nathan Sidwell  <nathan@codesourcery.com>
3184
3185         PR c/8083
3186         * c-typeck.c (build_c_cast): Warn about type punning which breaks
3187         type based aliasing.
3188
3189 2002-10-01  Mark Mitchell  <mark@codesourcery.com>
3190
3191         * stor-layout.c (update_alignment_for_field): New function.
3192         (place_union_field): Use it.
3193         (place_field): Likewise.
3194
3195 2002-10-01  Nathan Sidwell  <nathan@codesourcery.com>
3196
3197         PR other/8077
3198         * gcc.c (cc1_options): Add space on -auxbase-strip.
3199
3200 2002-10-01  Jim Wilson  <wilson@redhat.com>
3201
3202         * config/v850/v850.h (EPILOGUE_USES): Define.
3203
3204 2002-09-30  Andrew Haley  <aph@redhat.com>
3205
3206         * flow.c (insn_dead_p): When using non-call-exceptions, don't
3207         eliminate insns that may trap.
3208         * cse.c (insn_live_p): Likewise.
3209
3210 2002-10-01  Richard Sandiford  <rsandifo@redhat.com>
3211
3212         * config/mips/mips.h (PROCESSOR_R4121): Rename to PROCESSOR_R4120.
3213         (TARGET_MIPS4121): Rename to TARGET_MIPS4120.
3214         * config/mips/mips.c (mips_cpu_info): Rename vr4121 to vr4120.
3215         * config/mips/mips.md: Apply same renaming here.
3216
3217 2002-10-01  Richard Sandiford  <rsandifo@redhat.com>
3218
3219         * config/mips/mips.c (PROCESSOR_R4320, TARGET_MIPS4320): Remove.
3220         (GENERATE_MULT3_SI): Remove use of TARGET_MIPS4320.
3221         * config/mips/mips.c (mips_cpu_info): Remove vr4320 entry.
3222         * config/mips/mips.md (define_attr cpu): Remove r4320.
3223         Remove vr4320 scheduler and uses of TARGET_MIPS4320.
3224
3225 2002-10-01  Richard Sandiford  <rsandifo@redhat.com>
3226
3227         * config/mips/mips.c (mips16_strings): New variable.
3228         (mips_output_function_epilogue): Clear the SYMBOL_REF_FLAG of every
3229         symbol in mips16_strings.  Free the list.
3230         (mips_encode_section_info): Keep track of local strings.
3231
3232 2002-10-01  Richard Sandiford  <rsandifo@redhat.com>
3233
3234         * config/mips/mips.md (bunge, bltgt, bungt): New define_expands.
3235         (sordered_df, sordered_sf): Remove.
3236         * config/mips/mips.c (get_float_compare_codes): New fn.
3237         (gen_int_relational, gen_conditional_move): Use it.
3238
3239 2002-10-01  Richard Sandiford  <rsandifo@redhat.com>
3240
3241         * config/mips/mips-protos.h (mips_emit_fcc_reload): Declare.
3242         * config/mips/mips.h (PREDICATE_CODES): Add fcc_register_operand.
3243         * config/mips/mips.c (fcc_register_operand): New function.
3244         (mips_emit_fcc_reload): New function, extracted from reload_incc.
3245         (override_options): Allow TFmode values in float registers
3246         if ISA_HAS_8CC.
3247         * cnfig/mips/mips.md (reload_incc): Change destination prediate
3248         to fcc_register_operand.  Remove misleading source constraint.
3249         Use mips_emit_fcc_reload.
3250         (reload_outcc): Duplicate reload_incc.
3251
3252 2002-09-30  Ulrich Weigand  <uweigand@de.ibm.com>
3253
3254         * longlong.h: Partially synchronize with GMP-4.1 version:
3255         Use i370 definitions also for s390.
3256         Add generic definition of umul_ppmm in terms of smul_ppmm.
3257         [s390] (umul_ppmm): Remove.
3258         [s390] (smul_ppmm): Fix incorrect assembler constraints.
3259         [s390] (smul_ppmm, sdiv_qrnnd): Rename __xx to __x.
3260
3261 2002-09-30  Bob Wilson  <bob.wilson@acm.org>
3262
3263         * config/xtensa/xtensa.h (REG_CLASS_NAMES, REG_CLASS_CONTENTS):
3264         Add new RL_REGS register class.
3265         (PREFERRED_RELOAD_CLASS, PREFERRED_OUTPUT_RELOAD_CLASS):
3266         Call xtensa_preferred_reload_class for both input and output reloads.
3267         * config/xtensa/xtensa.c (xtensa_regno_to_class): Use new RL_REGS class.
3268         (xtensa_preferred_reload_class): Handle output reloads; use RL_REGS
3269         instead of either AR_REGS or GR_REGS classes.
3270         (xtensa_secondary_reload_class): Use new RL_REGS class.
3271         * config/xtensa/xtensa-protos.h (xtensa_preferred_reload_class): Update.
3272
3273 2002-09-30  John David Anglin  <dave@hiauly1.hia.nrc.ca>
3274
3275         * pa.c (hppa_encode_label): Don't drop '*' from function labels.
3276         (pa_strip_name_encoding): Strip '@' and '*', in that order.
3277         * pa.h (ASM_OUTPUT_LABELREF): Output user_label_prefix except when
3278         there is a '*' prefix in NAME.
3279
3280 Mon Sep 30 21:33:23 CEST 2002  Jan Hubicka  <jh@suse.cz>
3281
3282         * reload.c (push_reload): Handle subregs and secondary memory.
3283         * reload1.c (gen_reload): Likewise.
3284
3285         * jump.c (reg_or_subregno): New function.
3286         * rtl.h (reg_or_subregno): Declare
3287         * unroll.c (find_splittable_givs): Handle subregs.
3288
3289 2002-09-30  Mark Mitchell  <mark@codesourcery.com>
3290
3291         * store-layout.c (finish_record_layout): Add free_p parameter.
3292         (layout_type): Pass it.
3293         * tree.h (finish_record_layout): Update prototype.
3294
3295 Mon Sep 30 14:57:18 CEST 2002  Jan Hubicka  <jh@suse.cz>
3296
3297         * i386.h (TARGET_CPP_CPU_BUILTINS): Define __SSE_MATH__.
3298
3299         * gcse.c (cprop_jump): Check that the register has not
3300         been modified
3301         (cprop_jump): Likewise.
3302
3303 2002-09-30  Richard Earnshaw  <rearnsha@arm.com>
3304
3305         * arm.h (BASE_REG_CLASS): Always return LO_REGS for Thumb.
3306         (MODE_BASE_REG_CLASS, case Thumb): Only return BASE_REGS if we know
3307         that we have a SImode access, and only then if reload hasn't completed;
3308         for all other cases, use LO_REGS.
3309
3310 2002-09-29  Richard Henderson  <rth@redhat.com>
3311
3312         * real.c (real_from_string): Apply sign last.  Tidy exponent handling.
3313
3314 2002-09-29  Richard Henderson  <rth@redhat.com>
3315
3316         PR c/8002
3317         * combine.c (force_to_mode): Handle FLOAT_MODE destinations
3318         for CONST_INT.
3319
3320 2002-09-29  David Edelsohn  <edelsohn@gnu.org>
3321
3322         * real.h (ibm_extended_format): Declare.
3323         * real.c (encode_ibm_extended, decode_ibm_extended): New
3324         functions.
3325
3326 2002-09-29  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
3327
3328         * darwin-protos.h (darwin_asm_output_dwarf_delta): Prototype.
3329
3330         * ia64.c (ia64_hpux_asm_file_end): Const-ify.
3331
3332 2002-09-29  John David Anglin  <dave@hiauly1.hia.nrc.ca>
3333
3334         * expmed.c (extract_bit_field): Fix bit-field extraction from SUBREGs.
3335
3336 2002-09-29  Kazu Hirata  <kazu@cs.umass.edu>
3337
3338         * builtins.def: Fix comment formatting.
3339         * c-common.def: Likewise.
3340         * cfgcleanup.c: Likewise.
3341         * combine.c: Likewise.
3342         * gengtype.c: Likewise.
3343         * params.def: Likewise.
3344         * predict.def: Likewise.
3345         * rtl.def: Likewise.
3346         * stab.def: Likewise.
3347         * stor-layout.c: Likewise.
3348         * tree.def: Likewise.
3349         * config/darwin.c: Likewise.
3350         * config/darwin.h: Likewise.
3351         * config/dbxcoff.h: Likewise.
3352         * config/elfos.h: Likewise.
3353         * config/fp-bit.c: Likewise.
3354         * config/freebsd-spec.h: Likewise.
3355         * config/interix.h: Likewise.
3356         * config/libgloss.h: Likewise.
3357         * config/linux-aout.h: Likewise.
3358         * config/linux.h: Likewise.
3359         * config/lynx-ng.h: Likewise.
3360         * config/lynx.h: Likewise.
3361         * config/netbsd-aout.h: Likewise.
3362         * config/netbsd.h: Likewise.
3363         * config/netware.h: Likewise.
3364         * config/psos.h: Likewise.
3365         * config/ptx4.h: Likewise.
3366
3367 2002-09-28  Kazu Hirata  <kazu@cs.umass.edu>
3368
3369         * ChangeLog.4: Fix typos.
3370         * ChangeLog.6: Likewise.
3371         * FSFChangeLog.10: Likewise.
3372         * genattrtab.c: Fix comment typos.
3373         * haifa-sched.c: Likewise.
3374         * real.c: Likewise.
3375         * tree.h: Likewise.
3376         * config/arm/arm.c: Likewise.
3377         * config/arm/crti.asm: Likewise.
3378         * config/arm/crtn.asm: Likewise.
3379         * config/frv/frv.c: Likewise.
3380         * config/frv/frv.md: Likewise.
3381         * config/h8300/h8300.md: Likewise.
3382         * config/i386/rtemself.h: Likewise.
3383         * config/ia64/unwind-ia64.c: Likewise.
3384         * config/ip2k/ip2k.h: Likewise.
3385         * config/m88k/m88k.c: Likewise.
3386         * config/m88k/m88k.md: Likewise.
3387         * config/mips/sr71k.md: Likewise.
3388         * config/mmix/mmix.c: Likewise.
3389         * config/rs6000/rs6000.c: Likewise.
3390         * config/sh/sh.md: Likewise.
3391
3392 2002-09-26  Theodore A. Roth  <troth@verinet.com>
3393
3394         * config/avr/avr.c: Eliminate use of _PC_ in pc relative insns.
3395         * config/avr/avr.md: Ditto.
3396
3397 2002-09-27  Alexander N. Kabaev <ak03@gte.com>
3398
3399         PR preprocessor/8055
3400         * cppmacro.c (stringify_arg): Do not overflow the buffer
3401         with the terminating NUL when the argument to be stringified
3402         has no tokens.
3403
3404 2002-09-27  Richard Henderson  <rth@redhat.com>
3405
3406         * unroll.c (simplify_cmp_and_jump_insns): New.
3407         (unroll_loop): Use it.  Use simplify_gen_foo+force_operand
3408         instead of expand_simple_foo.
3409
3410 2002-09-27  Richard Henderson  <rth@redhat.com>
3411
3412         PR optimization/7520
3413         * cfganal.c (flow_active_insn_p): New.
3414         (forwarder_block_p): Use it.
3415
3416 2002-09-27  Richard Henderson  <rth@redhat.com>
3417
3418         * emit-rtl.c (active_insn_p): Revert last change.
3419
3420 2002-09-27  Jakub Jelinek  <jakub@redhat.com>
3421
3422         * doc/extend.texi (tls_model): Document.
3423         * varasm.c (decl_tls_model): New.
3424         * c-common.c (handle_tls_model_attribute): New.
3425         (c_common_attribute_table): Add tls_model.
3426         * config/alpha/alpha.c (alpha_encode_section_info): Use
3427         decl_tls_model.
3428         * flags.h (enum tls_model, flag_tls_default): Move...
3429         * tree.h (enum tls_model, flag_tls_default): ...here.
3430         (decl_tls_model): New prototype.
3431         * config/ia64/ia64.c (ia64_encode_section_info): Likewise.
3432         * config/i386/i386.c (ix86_encode_section_info): Likewise.
3433         * config/i386/i386.md (tls_global_dynamic, tls_local_dynamic_base):
3434         Allow !flag_pic.
3435
3436 2002-09-27  Kazu Hirata  <kazu@cs.umass.edu>
3437
3438         * LANGUAGES: Follow spelling conventions.
3439         * rtl.def: Likewise.
3440         * sbitmap.c: Likewise.
3441         * sched-int.h: Likewise.
3442         * sched-rgn.c: Likewise.
3443         * sibcall.c: Likewise.
3444         * simplify-rtx.c: Likewise.
3445         * ssa.c: Likewise.
3446         * stab.def: Likewise.
3447         * stmt.c: Likewise.
3448         * stor-layout.c: Likewise.
3449         * target.h: Likewise.
3450         * timevar.c: Likewise.
3451         * toplev.c: Likewise.
3452         * tree-dump.c: Likewise.
3453         * tree-inline.c: Likewise.
3454         * tree.c: Likewise.
3455         * tree.def: Likewise.
3456         * tree.h: Likewise.
3457         * unroll.c: Likewise.
3458         * varasm.c: Likewise.
3459         * vmsdbgout.c: Likewise.
3460         * treelang/treelang.texi: Likewise.
3461         * treelang/treetree.c: Likewise.
3462
3463 2002-09-27  Kazu Hirata  <kazu@cs.umass.edu>
3464
3465         * config/h8300/h8300.c (compute_saved_regs): Use a macro
3466         instead of a hard register number.
3467         (get_shift_alg): Use an enumerated type instead of numbers.
3468         (h8300_shift_needs_scratch_p): Likewise.
3469
3470 2002-09-26  David S. Miller  <davem@redhat.com>
3471
3472         PR optimization/7335
3473         * calls.c (emit_library_call_value_1): Passing args by reference
3474         converts a CONST function into a PURE one.
3475
3476 2002-09-26  David Edelsohn  <edelsohn@gnu.org>
3477
3478         * dbxout.c (FORCE_TEXT): Switch to current_function_decl, not
3479         text_section.
3480         * xcoffout.h (DBX_STATIC_BLOCK_START): Remove explicit change to
3481         text section.
3482         * config/rs6000/rs6000.c (rs6000_override_options): Allow
3483         function-sections and data-sections functionality on AIX.
3484
3485 2002-09-26  David Edelsohn  <edelsohn@gnu.org>
3486             Dale Johannesen  <dalej@apple.com>
3487
3488         * config/rs6000/rs6000.c (rs6000_emit_move): Insert zero-extend
3489         in RTL for sub-word loads from memory.
3490
3491 2002-09-26  Richard Henderson  <rth@redhat.com>
3492
3493         PR c/7160
3494         * sched-deps.c (sched_analyze_insn): Make clobber insns depend
3495         on call insns.
3496
3497 2002-09-26  Richard Henderson  <rth@redhat.com>
3498
3499         * emit-rtl.c (const_double_htab_eq): Remove unused variable.
3500
3501 2002-09-26  Chris Lattner  <sabre@nondot.org>
3502
3503         * ssa.c (rename_insn_1): Handle RENAME_NO_RTX correctly when
3504         handling undefined values.
3505
3506 2002-09-26  Richard Henderson  <rth@redhat.com>
3507
3508         PR opt/7520
3509         * emit-rtl.c (active_insn_p): Consider a clobber of the
3510         function return value to be active even after reload.
3511
3512 2002-09-27  Alan Modra  <amodra@bigpond.net.au>
3513
3514         * doloop.c (doloop_modify_runtime <biv skips initial incr>): Adjust
3515         by absolute loop increment, not loop increment.
3516
3517 2002-09-26  Kazu Hirata  <kazu@cs.umass.edu>
3518
3519         * c-common.h: Follow spelling conventions.
3520         * cpplex.c: Likewise.
3521         * cpplib.h: Likewise.
3522         * gthr-dce.h: Likewise.
3523         * gthr-posix.h: Likewise.
3524         * optabs.c: Likewise.
3525         * output.h: Likewise.