OSDN Git Service

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