OSDN Git Service

remove obsolete fixes
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
1 2002-12-31  Larin Hennessy  <larin@science.oregonstate.edu>
2
3         * fixinc/fixinc.svr4: Remove references to i860, Sony NewsOS, and spur.
4         * fixinc/inclhack.def: Remove tests for Apple A/UX, ARM/RISCiX, DG/UX,
5         m88k-*-sysv3*, Sony NewsOS.   Remove references to i860.
6         Cleanup handling of replacement text.
7         * fixinc/mkfixinc.sh: Remove reference to i?86-*-osf1*
8
9 2003-01-04  Bruce Korb  <bkorb@gnu.org>
10
11         * fixinc/tests/base/math.h: removed obsolete results
12         * fixinc/tests/base/stdlib.h: ditto
13         * fixinc/tests/base/sys/param.h: ditto
14         * fixinc/tests/base/sys/stat.h: ditto
15         * fixinc/tests/base/time.h: ditto
16         * fixinc/tests/base/X11/Intrinsic.h: removed obsolete file
17         * fixinc/tests/base/sys/byteorder.h: ditto
18         * fixinc/inclhack.def: Remove superfluous backslashes
19
20 2003-01-04  Kazu Hirata  <kazu@cs.umass.edu>
21
22         * config/h8300/h8300-protos.h: Add prototypes for
23         the new functions defined below.
24         * config/h8300/h8300.c (TARGET_ASM_FUNCTION_PROLOGUE): Do not
25         define.
26         (dosize): Emit RTL instead of assembly code.
27         (push): Likewise.
28         (pop): Likewise.
29         (h8300_output_function_prologue): Remove.
30         (h8300_expand_prologue): New.
31         (h8300_expand_epilogue): New.
32         (h8300_output_function_epilogue): Do only the reset of
33         pragma_saveall.
34         * config/h8300/h8300.md (push_h8300): New.
35         (push_h8300hs): Likewise.
36         (pop_h8300): Likewise.
37         (pop_h8300hs): Likewise.
38         (*stm_h8300s_2): Change the name to stm_h8300s_2.
39         (*stm_h8300s_3): Change the name to stm_h8300s_3.
40         (*stm_h8300s_4): Change the name to stm_h8300s_4.
41         (*ldm_h8300s_2): New.
42         (*ldm_h8300s_3): Likewise.
43         (*ldm_h8300s_4): Likewise.
44         (return): Likewise.
45         (*return_1): Likewise.
46         (prologue): Likewise.
47         (epilogue): Likewise.
48         (monitor_prologue): Likewise.
49
50 2003-01-03  Dale Johannesen  <dalej@apple.com>
51
52         * config/darwin.h:  (EXTRA_SECTIONS):  Add machopic_symbol_stub1,
53           machopic_picsymbol_stub1.
54           (EXTRA_SECTION_FUNCTIONS):  Ditto.
55         * rs6000/rs6000.c:  Update copyright.
56           (machopic_output_stub):  Use them.  Remove an insn from stub code.
57
58 2003-01-02  Jason Merrill  <jason@redhat.com>
59
60         * fold-const.c (fold) [COND_EXPR]: Avoid NOP_EXPRs better.
61
62         * integrate.c (copy_decl_for_inlining): Don't clear the rtl for
63         static/external decls.
64         
65         * c-common.c (finish_fname_decls): Put the DECL_STMTs inside the
66         outermost scope.
67         * c-decl.c (c_make_fname_decl): Push the decls there, too.
68
69 2003-01-03  Kazu Hirata  <kazu@cs.umass.edu>
70
71         * config/h8300/h8300-protos.h: Add a prototype for
72         h8300_current_function_interrupt_function_p.
73         * config/h8300/h8300.c (interrupt_handler): Remove.
74         (os_task): Likewise.
75         (monitor): Likewise.
76         (pragma_interrupt): New.
77         (WORD_REG_USED): Use
78         h8300_current_function_interrupt_function_p.
79         (dosize): Likewise.
80         (h8300_output_function_prologue): Likewise.
81         Do not set interrupt_handler, os_task, monitor.
82         (h8300_output_function_prologue): Use
83         h8300_current_function_interrupt_function_p.
84         Do not set interrupt_handler, os_task, monitor.
85         (h8300_current_function_interrupt_function_p): New.
86         (h8300_pr_interrupt): Set pragma_interrupt.
87         (h8300_insert_attributes): Reset pragma_interrupt.
88
89 2003-01-03  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
90
91         * doc/install.texi (Configuration): Fix markup for reference to
92         gcc/config.gcc.
93
94 2003-01-02  Kazu Hirata  <kazu@cs.umass.edu>
95
96         * config/h8300/h8300.md (*iorhi3_zext): Relax the condition.
97         (*iorhi3_two_qi): Likewise.
98         (*iorsi3_zexthi): Likewise.
99         (*xorhi3_zextqi): Likewise.
100         (*xorsi3_zexthi): Likewise.
101         (*xorsi3_zextqi): Likewise.
102
103 2003-01-02  Kazu Hirata  <kazu@cs.umass.edu>
104
105         * config/h8300/h8300.c (stack_pointer_operand): New.
106         (const_int_gt_2_operand): Likewise.
107         (const_int_ge_8_operand): Likewise.
108         * config/h8300/h8300.md (a splitter): Likewise.
109         (a peephole2): Likewise.
110         * config/h8300/h8300-protos.h: Add prototypes for the new
111         functions above.
112
113 2003-01-02  Steven Bosscher <s.bosscher@student.tudelft.nl>
114
115         * objc/Make-lang.in, objc/config-lang.in, objc/lang-specs.h,
116         objc/objc-act.h: Fix copyright years.
117
118 2003-01-02  Steven Bosscher  <s.bosscher@student.tudelft.nl>
119
120         * doc/passes.texi: Fix documentation for -fssa-ccp
121
122 2003-01-02  Neil Booth  <neil@daikokuya.co.uk>
123
124         * gccbug.in: Update for new categories.
125
126 2003-01-01  Kazu Hirata  <kazu@cs.umass.edu>
127
128         * config/h8300/h8300.md: Reorder some patterns.
129
130 2003-01-01  Kazu Hirata  <kazu@cs.umass.edu>
131
132         * config/h8300/h8300.c (output_logical_op): Fix a warning.
133
134 2003-01-01  Neil Booth  <neil@daikokuya.co.uk>
135
136         * config/darwin-protos.h, config/c4x/c4x-protos.h,
137         config/cris/cris-protos.h, config/i370/i370-protos.h,
138         config/i960/i960-protos.h, config/ia64/ia64-protos.h,
139         config/v850/v850-protos.h: Use struct, and don't conditionally
140         compile on GCC_C_PRAGMA_H.
141
142 2003-01-01  Kazu Hirata  <kazu@cs.umass.edu>
143
144         * config/arm/arm-protos.h: Remove #ifdef GCC_C_PRAGMA_H.
145         * config/h8300/h8300-protos.h: Likewise.
146         * config/sh/sh-protos.h: Likewise.
147
148 2003-01-01  Kazu Hirata  <kazu@cs.umass.edu>
149
150         * config/arm/arm-protos.h: Use struct cpp_reader instead of
151         cpp_reader.
152         * config/h8300/h8300-protos.h: Likewise.
153         * config/sh/sh-protos.h: Likewise.
154
155 2003-01-01  Neil Booth  <neil@daikokuya.co.uk>
156
157         * config/arm/arm.c (arm_pr_long_calls, arm_pr_no_long_calls,
158         arm_pr_long_calls_off): Use struct.
159         * config/h8300/h8300.c (h8300_pr-interrupt, h8300_pr_saveall)
160         : Similarly.
161         Don't include cpplib.h.
162         * config/sh/sh.c (sh_pr_interrupt, sh_pr_trapa,
163         sh_pr_nosave_low_regs): Similarly.
164
165 2003-01-01  Kazu Hirata  <kazu@cs.umass.edu>
166
167         * config/h8300/h8300.c: Include cpplib.h.
168
169 2003-01-01  Steven Bosscher  <s.bosscher@student.tudelft.nl>
170
171         * objc/Make-lang.in, objc/config-lang.in, objc/lang-options.h,
172           objc/lang-specs.h, objc/objc-act.c, objc/objc-act.h,
173           objc/objc-lang.c, objc/objc-tree.def: Replace "GNU CC" with
174           "GCC" in the copyright header.
175
176 2003-01-01  Neil Booth  <neil@daikokuya.co.uk>
177
178         * c-pragma.c (c_register_pragma): New.
179         (init_pragma): Use it.
180         * c-pragma.h (cpp_register_pragma): Don't declare.
181         (c_register_pragma): New.
182         * cpplib.h: Remove #ifdef GCC_C_PRAGMA_H.
183         * config/darwin.h (REGISTER_TARGET_PRAGMAS): Update.
184         * config/arm/arm.h (REGISTER_TARGET_PRAGMAS): Update.
185         * config/c4x/c4x.h (REGISTER_TARGET_PRAGMAS): Update.
186         * config/h8300/h8300.h (REGISTER_TARGET_PRAGMAS): Update.
187         * config/i370/i370.h (REGISTER_TARGET_PRAGMAS): Update.
188         * config/i960/i960.h (REGISTER_TARGET_PRAGMAS): Update.
189         * config/ia64/hpux.h (REGISTER_TARGET_PRAGMAS): Update.
190         * config/rs6000/rs6000.h (REGISTER_TARGET_PRAGMAS): Update.
191         * config/sh/sh.h (REGISTER_TARGET_PRAGMAS): Update.
192         * config/v850/v850.h (REGISTER_TARGET_PRAGMAS): Update.
193         * doc/tm.texi (REGISTER_TARGET_PRAGMAS): Update
194
195 2002-12-31  Kazu Hirata  <kazu@cs.umass.edu>
196
197         * config/h8300/h8300-protos.h: Update the prototypes.
198         * config/h8300/h8300.c (const_le_2_operand): Change to
199         const_int_le_2_operand.
200         (const_int_le_6_operand): Change to const_int_le_6_operand.
201         * config/h8300/h8300.md (two peepholes): Update the function
202         names.
203
204 2002-12-31  Tom Tromey  <tromey@redhat.com>
205
206         * doc/install.texi (Testing): Fixed typo.
207
208 2002-12-31  Kazu Hirata  <kazu@cs.umass.edu>
209
210         * config/h8300/h8300.h (TRAMPOLINE_TEMPLATE): Remove.
211         (TRAMPOLINE_SIZE): Support the normal mode.
212         (INITIALIZE_TRAMPOLINE): Emit the entire trampoline.
213
214 2002-12-31  Mark Mitchell  <mark@codesourcery.com>
215
216         * c-common.h (pending_lang_change): Declare.
217
218 2002-12-31  Jerry Quinn  <jlquinn@optonline.net>
219
220         * gcc/doc/invoke.texi (Optimization Options): Clean up -O flag
221         descriptions.
222
223 2002-12-31  Jerry Quinn  <jlquinn@optonline.net>
224
225         * gcc/doc/invoke.texi (Optimization Options): List the options
226         enabled by each -O flag.
227
228 2002-12-31  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
229
230         * doc/install.texi (Configuration): Explicitly refer
231         gcc/config.gcc for a list of cpu models.
232
233 2002-12-31  Kazu Hirata  <kazu@cs.umass.edu>
234
235         * config/h8300/h8300.h: Fix comment typos.
236
237 2002-12-30  David Edelsohn  <edelsohn@gnu.org>
238
239         * config/rs6000/rs6000.h (WIDEST_HARDWARE_FP_SIZE): Define.
240
241 2002-12-30  Tom Tromey  <tromey@redhat.com>
242
243         * doc/install.texi (Testing): Mention Jacks.
244
245 2002-12-30  Joseph S. Myers  <jsm@polyomino.org.uk>
246
247         * doc/gcc.texi, doc/gccint.texi: Update last modification dates.
248
249 2002-12-30  Kazu Hirata  <kazu@cs.umass.edu>
250
251         * config/h8300/h8300.c (output_logical_op): Use extu.w in more
252         cases.
253         (compute_logical_op_length): Update to reflect the change in
254         output_logical_op.
255         (compute_logical_op_cc): Likewise.
256
257 2002-12-30  Joseph S. Myers  <jsm@polyomino.org.uk>
258
259         * doc/service.texi: Uncomment and update FAQ link.
260
261 2002-12-30  Andreas Jaeger  <aj@suse.de>
262
263         * unwind-dw2-fde.h (last_fde): Add unused attribute for obj.
264
265 2002-12-30  Kazu Hirata  <kazu@cs.umass.edu>
266
267         * config/h8300/h8300.md (*addsi3_lshiftrt_16_zexthi): New.
268
269 2002-12-30  Kazu Hirata  <kazu@cs.umass.edu>
270
271         * config/h8300/h8300.c (output_logical_op): Use extu.w if we
272         are clearing the most significant byte.
273         (compute_logical_op_length): Update to reflect the change in
274         output_logical_op.
275         (compute_logical_op_cc): Likewise.
276
277 2002-12-29  Kazu Hirata  <kazu@cs.umass.edu>
278
279         * config/h8300/h8300.md: Give internal names to anonymous
280         insns.
281
282 2002-12-29  Kazu Hirata  <kazu@cs.umass.edu>
283
284         * config/h8300/h8300.md: Reorder some insns.
285
286 2002-12-29  Kazu Hirata  <kazu@cs.umass.edu>
287
288         * config/h8300/h8300-protos.h: Add prototypes for
289         const_int_qi_operand and const_int_hi_operand.
290         * config/h8300/h8300.c (const_int_qi_operand): New.
291         (const_int_hi_operand): Likewise.
292         * config/h8300/h8300.md (three peepholes): New.
293
294 2002-12-28  Joseph S. Myers  <jsm@polyomino.org.uk>
295
296         * doc/cpp.texi, doc/gcc.texi, doc/gccint.texi, doc/install.texi:
297         Use @copying.
298
299 2002-12-28  Joseph S. Myers  <jsm@polyomino.org.uk>
300
301         * configure.in: Increase makeinfo version requirement to 4.[2-9].
302         * configure: Regenerate.
303         * doc/install.texi: Update Texinfo version requirement.
304
305 2002-12-28  Andreas Jaeger  <aj@suse.de>
306
307         * config/i386/i386.c (x86_function_profiler): Mark labelno as
308         possibly unused.
309
310         * c-parse.in (yyprint): Use HOST_WIDE_INT_PRINT_DOUBLE_HEX for
311         correct format.
312
313 2002-12-27  Kazu Hirata  <kazu@cs.umass.edu>
314
315         * config/h8300/h8300.md (*iorhi_shift_8): Change the name to
316         *iorhi_ashift_8.
317         (*iorhi_lshiftrt_8): New.
318
319 2002-12-27  Joseph S. Myers  <jsm@polyomino.org.uk>
320
321         * doc/include/texinfo.tex: Update to version 2002-12-26.16.
322
323 2002-12-27  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
324
325         * doc/contrib.texi (Contributors): Add Abramo and Roberto Bagnara.
326
327 2002-12-26  Kazu Hirata  <kazu@cs.umass.edu>
328
329         * config/h8300/h8300-protos.h: Fix comment typos.
330         Update copyright.
331         * config/h8300/h8300.c: Fix comment typos.
332
333 2002-12-26  Kazu Hirata  <kazu@cs.umass.edu>
334
335         * config/h8300/h8300.h (IDENT_ASM_OP): End with a tab.
336
337 2002-12-26  Kazu Hirata  <kazu@cs.umass.edu>
338
339         * config/i386/athlon.md: Fix comment typos.
340         * config/i386/crtdll.h: Likewise.
341         * config/i386/djgpp.h: Likewise.
342         * config/i386/i386-interix.h: Likewise.
343         * config/i386/i386.c: Likewise.
344         * config/i386/i386.h: Likewise.
345         * config/i386/i386.md: Likewise.
346         * config/i386/k6.md: Likewise.
347         * config/i386/mingw32.h: Likewise.
348         * config/i386/pentium.md: Likewise.
349         * config/i386/sco5.h: Likewise.
350         * config/i386/winnt.c: Likewise.
351         * config/i386/xmmintrin.h: Likewise.
352
353 2002-12-26  Jose Renau <renau@cs.uiuc.edu>
354
355         * ssa-dce.c (EXECUTE_IF_UNNECESSARY): Verify INSN is an
356         INSN_P before checking to see if it is dead.
357         (mark_all_insn_unnecessary): Similarly.
358         (ssa_eliminate_dead_code): Similarly.
359         * rtl.h (struct rtx_def): Update comments for in_struct usage
360         in dead code elimination pass.
361         (INSN_DEAD_CODE_P): Allow JUMP_INSN and CALL_INSN as well.
362
363 2002-12-26  Andreas Schwab  <schwab@suse.de>
364
365         * config.gcc (powerpc*-*-*, rs6000-*-*): Fix assignment syntax.
366
367 2002-12-25  David Edelsohn  <edelsohn@gnu.org>
368
369         * config/rs6000/rs6000.c (rs6000_override_options): Convert to
370         tartet_flags_explicit.
371         * config/rs6000/rs6000.h (MASK_MULTIPLE_SET, MASK_STRING_SET): Delete.
372         Compact target_flags bits.
373         (TARGET_MULTIPLE_SET, TARGET_STRING_SET): Delete.
374         (TARGET_SWITCHES): Delete references to *_SET flags.
375
376 Wed Dec 25 20:30:53 CET 2002  Jan Hubicka  <jh@suse.cz>
377
378         * i386.md (memory attribute): Fix setcc attribute.
379
380 2002-12-25  Kazu Hirata  <kazu@cs.umass.edu>
381
382         * output.h: Fix comment typos.
383         * predict.c: Likewise.
384         * print-tree.c: Likewise.
385         * profile.c: Likewise.
386         * ra-build.c: Likewise.
387         * ra-colorize.c: Likewise.
388         * ra-debug.c: Likewise.
389         * ra-rewrite.c: Likewise.
390         * ra.c: Likewise.
391         * ra.h: Likewise.
392         * real.c: Likewise.
393         * recog.c: Likewise.
394         * reg-stack.c: Likewise.
395         * regclass.c: Likewise.
396
397 2002-12-25  Kazu Hirata  <kazu@cs.umass.edu>
398
399         * config/h8300/h8300.c (print_operand_address): Do not negate
400         a negative number when printing one.
401
402 2002-12-25  Kazu Hirata  <kazu@cs.umass.edu>
403
404         * config/h8300/h8300-protos.h: Add prototypes for
405         output_plussi, compute_plussi_length, and compute_plussi_cc.
406         * config/h8300/h8300.c (output_plussi): New.
407         (compute_plussi_length): Likewise.
408         (compute_plussi_cc): Likewise.
409         * config/h8300/h8300.md (addsi_h8300h): Call
410         output_plussi, compute_plussi_length, and compute_plussi_cc.
411
412 2002-12-24  Kazu Hirata  <kazu@cs.umass.edu>
413
414         * config/h8300/h8300.md (two peepholes): Use match_dup instead
415         of match_operand in the new patterns.
416
417 2002-12-24  Joseph S. Myers  <jsm@polyomino.org.uk>
418
419         * doc/include/texinfo.tex: Update to version 2002-11-25.11.
420
421 2002-12-24  Nathan Sidwell  <nathan@codesourcery.com>
422
423         * configure.in (enable-coverage): Add SELF_COVERAGE.
424         * profile.c (end_branch_prob): Use SELF_COVERAGE.
425
426 2002-12-24  Jim Wilson  <wilson@redhat.com>
427
428         * alias.c (record_set): Handle multi-reg hard registers.
429
430 2002-12-24  Kazu Hirata  <kazu@cs.umass.edu>
431
432         * regmove.c: Fix comment typos.
433         * reload.c: Likewise.
434         * reload1.c: Likewise.
435         * resource.c: Likewise.
436         * rtl.def: Likewise.
437         * rtl.h: Likewise.
438         * rtlanal.c: Likewise.
439         * sched-deps.c: Likewise.
440         * sched-rgn.c: Likewise.
441         * sibcall.c: Likewise.
442         * simplify-rtx.c: Likewise.
443         * ssa-ccp.c: Likewise.
444         * ssa.c: Likewise.
445         * stmt.c: Likewise.
446         * stor-layout.c: Likewise.
447         * system.h: Likewise.
448         * tlink.c: Likewise.
449         * toplev.c: Likewise.
450         * tracer.c: Likewise.
451         * tree-inline.c: Likewise.
452         * tree.c: Likewise.
453         * tree.h: Likewise.
454         * unroll.c: Likewise.
455         * varasm.c: Likewise.
456
457 2002-12-23  Larin Hennessy  <larin@science.oregonstate.edu>
458
459         * doc/install.texi: Remove i386-*-isc, i860-*-bsd,
460         m68k-altos-sysv, m68k-isi-bsd, m68k-sony-bsd entries.
461         * doc/invoke.texi: Remove AMD 29K, ARM RISC/iX, Clipper, Convex,
462         DG/UX entries.
463         * doc/md.texi: Remove AMD 29K entries.
464         * doc/trouble.texi: Remove Alliant, DG/UX, Iris 4.0.5F, GAS
465         1.38.1, NewsOS, RT PC, WE32K entries.
466
467 2002-12-23  Aldy Hernandez  <aldyh@redhat.com>
468
469         PR/8763
470         * config/rs6000/altivec.md (mulv4sf3): Rewrite to add -0.0 vector.
471         (altivec_vspltisw_v4sf): Name pattern.
472         (altivec_vslw_v4sf): New pattern.
473
474 2002-12-23  Joseph S. Myers  <jsm@polyomino.org.uk>
475
476         * doc/include/gcc-common.texi: Define DEVELOPMENT.
477
478 2002-12-23  Mark Mitchell  <mark@codesourcery.com>
479
480         * stor-layout.c (update_alignment_for_field): Correct handling of
481         unnamed bitfields on PCC_BITFIELD_TYPE_MATTERS machines.
482         * doc/tm.texi (PCC_BITFIELD_TYPE_MATTERS): Note that an unnamed
483         bitfield does not affect alignment.
484
485 2002-12-23  David Edelsohn  <edelsohn@gnu.org>
486
487         * expr.c (expand_assignment): Apply special treatment to
488         ARRAY_TYPE.
489
490 2002-12-23  Kazu Hirata  <kazu@cs.umass.edu>
491
492         * config/h8300/h8300-protos.h: Update the prototype of
493         expand_a_shift.
494         * config/h8300/h8300.c (expand_a_shift): Change the return
495         type to void.
496         * config/h8300/h8300.md: Update all the uses of
497         expand_a_shift.
498
499 2002-12-22  Nathan Sidwell  <nathan@codesourcery.com>
500
501         * tree.c (save_expr): Allow either side of a dyadic operand to be
502         constant.
503
504         * doc/portability.texi (portability): Update portability goals.
505
506 2002-12-23  Kazu Hirata  <kazu@cs.umass.edu>
507
508         * config/h8300/h8300.c (output_a_shift): Remove unused code.
509
510 2002-12-22  Mark Mitchell  <mark@codesourcery.com>
511
512         * stor-layout.c (update_alignment_for_field): Guard use of
513         ADJUST_FIELD_ALIGN with #ifdef.
514
515         * stor-layout.c (update_alignment_for_field): Use
516         ADJUST_FIELD_ALIGN when computing the alignment for a zero-width
517         bitfield when PCC_BITFIELD_TYPE_MATTERS.
518
519 2002-12-22  Kazu Hirata  <kazu@cs.umass.edu>
520
521         * genautomata.c: Fix comment typos.
522
523 Sun Dec 22 18:23:44 CET 2002  Jan Hubicka  <jh@suse.cz>
524
525         * params.def (tracer-min-branch-probability-feedback): Fix default.
526         * final.c (compute_alignments): Use profile to avoid code bloat.
527
528 2002-12-22  Kazu Hirata  <kazu@cs.umass.edu>
529
530         * config/h8300/h8300.c (get_shift_alg): Make shift insn
531         sequences end with a valid cc0 whenever possible.
532
533 2002-12-22  Kazu Hirata  <kazu@cs.umass.edu>
534
535         * config/h8300/h8300.md (negsf2): New.
536         (*negsf2_h8300): Likewise.
537         (*negsf2_h8300hs): Likewise.
538
539 2002-12-21  Geoffrey Keating  <geoffk@apple.com>
540
541         * integrate.c (output_inline_function): Don't hold private
542         pointers to 'struct function' over GC calls.
543
544 2002-12-21  Kaz kojima  <kkojima@gcc.gnu.org>
545
546         * config/sh/lib1funcs.asm (__fpscr_values): Conditionalize with
547         NO_FPSCR_VALUES.
548         * config/sh/t-linux (TARGET_LIBGCC2_CFLAGS): Add -DNO_FPSCR_VALUES.
549
550 2002-12-21  Kazu Hirata  <kazu@cs.umass.edu>
551
552         * config/h8300/h8300.md (zero_extendqisi2): Correct the
553         length.
554
555 2002-12-21  Kazu Hirata  <kazu@cs.umass.edu>
556
557         * config/h8300/h8300.md (*zero_extendqihi2_h8300): Make the
558         second alternative "#".
559         (*zero_extendqihi2_h8300hs): Likewise.
560         (a define_split): New.
561
562 2002-12-21  Kazu Hirata  <kazu@cs.umass.edu>
563
564         * config/h8300/h8300-protos.h: Update the prototype for
565         split_adds_subs.
566         Add prototypes for const_le_2_operand and const_le_6_operand.
567         * config/h8300/h8300.c (split_adds_subs): Add an argument to
568         specify whether inc/dec should be used when possible.
569         (const_le_2_operand): New.
570         (const_le_6_operand): Likewise.
571         * config/h8300/h8300.md (two peepholes): New.
572
573 2002-12-21  Kazu Hirata  <kazu@cs.umass.edu>
574
575         * config/fr30/fr30.md: Fix a comment typo.
576         * config/i386/i386.c: Likewise.
577         * config/ip2k/ip2k.h: Likewise.
578
579 2002-12-20  Jim Wilson  <wilson@redhat.com>
580
581         * config/rs6000/spe.h (__ev_subifw): Reverse arguments.
582         (__ev_subw, __ev_subiw): New.
583         (ev_mwlssf, ev_mwlsmf, ev_mwlssfa, ev_mwlsmfa, ev_mwlssfaaw,
584         ev_mwlsmfaaw, ev_mwlssfanw, ev_mwlsmfanw): Delete.
585
586 2002-12-20  John David Anglin  <dave.anglin@nrc.gc.ca>
587
588         * pa-linux.h (TARGET_HAS_STUBS_AND_ELF_SECTIONS): Delete define.
589         * pa32-linux.h (FUNCTION_OK_FOR_SIBCALL): Delete define.
590         * pa.c (pa_function_ok_for_sibcall): Allow non indirect sibcalls on
591         TARGET_ELF32.  Add comment on sibcall issues for TARGET_64BIT.
592
593 2002-12-20  Kazu Hirata  <kazu@cs.umass.edu>
594
595         * config/h8300/h8300-protos.h: Add prototypes for
596         incdec_operand and eqne_operator.
597         * config/h8300/h8300.c (incdec_operand): New.
598         (eqne_operator): Likewise.
599         * config/h8300/h8300.h (CONST_OK_FOR_M): Likewise.
600         (CONST_OK_FOR_O): Likewise.
601         (CONST_OK_FOR_LETTER_P): Use CONST_OK_FOR_M and
602         CONST_OK_FOR_O.
603         * config/h8300/h8300.md (UNSPEC_INCDEC): New.
604         (addhi3_incdec): New.
605         (addsi3_incdec): Likewise.
606         (two peepholes): Likewise.
607
608 2002-12-20  Kazu Hirata  <kazu@cs.umass.edu>
609
610         * config/h8300/h8300.c (dosize): Remove warnings.
611         (print_operand): Likewise.
612
613 2002-12-20  Richard Henderson  <rth@redhat.com>
614
615         * config/alpha/alpha.c (decl_has_samegp): New.
616         (samegp_function_operand): Use it.  Rename from
617         current_file_function_operand.
618         (direct_call_operand): Handle -msmall-text via symbol->jump.
619         (tls_symbolic_operand_1): Use T for tprel64, t for smaller tprel.
620         (tls_symbolic_operand_type): Likewise.
621         (alpha_encode_section_info): Likewise.  Handle -msmall-text.
622         (alpha_function_ok_for_sibcall): Use decl_has_samegp.
623         (alpha_end_function): Set symbol->jump for functions defined in
624         the text section.
625         * config/alpha/alpha-protos.h: Update.
626         * config/alpha/alpha.h (MASK_SMALL_TEXT, TARGET_SMALL_TEXT): New.
627         (TARGET_SWITCHES): Add -msmall-text and -mlarge-text.
628         (PREDICATE_CODES): Update.
629         * config/alpha/alpha.md (call patterns): Update for
630         samegp_function_operand rename; use !samegp reloc if
631         TARGET_EXPLICIT_RELOCS.
632         * doc/invoke.text: Document -msmall-text and -mlarge-text.
633
634 2002-12-20  Ian Dall  <ian@sibyl.beware.dropbear.id.au>
635
636         * config/ns32k/ns32k.md (movdi): Use "l" instead of "f" to match
637         all registers capable of holding a double float.
638         (*rcond): change name of "reverse branch" insns to
639         something more meaningful.
640         (*rbgt, *rblt, *rbge, *rble): Reverse branches to handle IEEE
641         comparisons properly.
642         (*ffs): Change operand 0 from write to read-modify-write.
643         (*ffsssi2): Drop constraints from define_expand.
644
645         * config/ns32k/ns32k.h (STORE_RATIO, STORE_BY_PIECES): Avoid using
646         MOVE_RATIO as default for store operations.
647
648         * config/ns32k/ns32k.h (enum reg_class, REG_CLASS_NAMES): Add
649         LONG_REGS class.
650         (CANNOT_CHANGE_MODE_CLASS): Can't subreg LONG_REGS.
651         (GO_IF_LEGITIMATE_ADDRESS): Remove spurious abort().
652         * config/ns32k/ns32k.c (regclass_map): Add LONG_REGS class.
653
654         * config/ns32k/STATUS: New File
655         * config/ns32k/NOTES: New file.
656
657 2002-12-20  Hartmut Penner  <hpenner@de.ibm.com>
658
659         * doc/invoke.texi: Document -mzarch, -mesa, -mcpu= and -march=
660         option for S/390 and zSeries.
661         * config/s390/s390.c (s390_cpu, s390_cpu_string, s390_arch,
662         s390_arch_string): New variables.
663         (override_options): Checking for options and setting of
664         appropriate target_flags, cpu and arch flags.
665         * config/s390/s390.h: (processor_type): New enum.
666         (TARGET_SWITCHES): New switches -mesa/zarch.
667         * config/s390/s390.md: New attribute 'cpu'.
668
669 2002-12-19  Kazu Hirata  <kazu@cs.umass.edu>
670
671         * c-pretty-print.h: Fix comment typos.
672         * integrate.c: Likewise.
673         * varasm.c: Likewise.
674         * config/c4x/c4x.h: Likewise.
675         * config/c4x/c4x.md: Likewise.
676         * config/fr30/fr30.md: Likewise.
677         * config/frv/frv.c: Likewise.
678         * config/h8300/h8300.c: Likewise.
679         * config/i386/i386.c: Likewise.
680         * config/i386/i386.h: Likewise.
681         * config/ia64/ia64.c: Likewise.
682         * config/ia64/ia64.h: Likewise.
683         * config/ip2k/ip2k.md: Likewise.
684         * config/m68hc11/m68hc11-crt0.S: Likewise.
685         * config/m68hc11/m68hc11.h: Likewise.
686         * config/m68hc11/m68hc11.md: Likewise.
687         * config/m68hc11/m68hc12.h: Likewise.
688         * config/mcore/mcore.md: Likewise.
689         * config/mips/mips.c: Likewise.
690         * config/mips/mips.md: Likewise.
691         * config/mmix/mmix-modes.def: Likewise.
692         * config/pa/pa.c: Likewise.
693         * config/rs6000/rs6000.c: Likewise.
694         * config/rs6000/rs6000.h: Likewise.
695         * config/rs6000/rs6000.md: Likewise.
696
697 2002-12-19  Kazu Hirata  <kazu@cs.umass.edu>
698
699         * config/h8300/h8300.md (output_a_shift): Clean up the code to
700         output shifts using rotation.
701
702 2002-12-20  Zdenek Dvorak  <rakdver@atrey.karlin.mff.cuni.cz>
703
704         * flow.c (allocate_reg_life_data): Reset REG_FREQ.
705
706 2002-12-19  Kazu Hirata  <kazu@cs.umass.edu>
707
708         * config/h8300/h8300.md (pushqi_h8300): Don't push the stack
709         pointer.
710         (pushqi_h8300hs): Likewise.
711         (pushhi_h8300): Likewise.
712         (pushhi_h8300hs): Likewise.
713
714 Thu Dec 19 23:44:09 2002  J"orn Rennecke <joern.rennecke@superh.com>
715
716         * sched-rgn.c (init_regions): Update comment.
717
718 2002-12-19  David Edelsohn  <edelsohn@gnu.org>
719
720         * config/rs6000/rs6000.md (define_attr type): Remove altivec.
721         * config/rs6000/altivec.md (movv4si_internal): Set correct instruction
722         attributes.
723         (movv8hi_internal,movv16qi_internal,movv4sf_internal): Same.
724         (get_vrsave_internal,set_vrsave_internal): Same.
725         (altivec_vspltisb,altivec_vspltish,altivec_vspltisw): Same.
726         (absv16qi2,absv8hi2,absv4si2,absv4sf2): Same
727         (altivec_abss_v16qi,altivec_abss_v8hi,altivec_abss_v4si): Same.
728
729 2002-12-19  Casper S. Hornstrup  <chorns@users.sourceforge.net>
730             Danny Smith  <dannysmith@users.sourceforge.net>
731             Eric Kohl  <ekohl@rz-online.de>
732
733         * config/i386/i386.c (ix86_handle_cdecl_attribute): Check for
734         attributes incompatible with fastcall attribute.
735         (ix86_handle_regparm_attribute): Likewise.
736
737         * config/i386/i386.c (ix86_comp_type_attributes): Check for mismatched
738         fastcall types.
739
740         * config/i386/cygwin.h (TARGET_OS_CPP_BUILTINS): Add fastcall
741         attributes.
742         (ASM_OUTPUT_LABELREF): Define as i386_pe_output_labelref.
743         * config/i386/i386-protos.h (i386_pe_output_labelref): Declare.
744         * config/i386/winnt.c (i386_pe_mark_dllimport). Add __imp_ prefix in
745         i386_pe_output_labelref rather than here.
746         (gen_fastcall_suffix): New function. Decorates a label name with the
747         fastcall prefix (@) and the stdcall suffix.
748         (i386_pe_encode_section_info): Call gen_fastcall_suffix() if a symbol
749         has a fastcall attribute.
750         (i386_pe_output_labelref): New function. Outputs a label reference.
751         * config/i386/i386.c (ix86_attribute_table): Accept 'fastcall' as a
752         valid attribute.
753         (ix86_return_pops_args): Fastcall functions pop the stack.
754         (init_cumulative_args): Reserve registers ECX and EDX if function has
755         fastcall attribute.
756         (function_arg): Use registers ECX and EDX if function has fastcall
757         attribute.
758         * config/i386/i386.h (CUMULATIVE_ARGS): Add fastcall attribute flag.
759         (DLL_IMPORT_EXPORT_PREFIX): Redefine as '#'.
760         (FASTCALL_PREFIX): Define as '@'.
761         * config/i386/mingw32.h (TARGET_OS_CPP_BUILTINS): Add fastcall
762         attributes.
763         * doc/extend.texi: Add documentation of fastcall attribute.
764
765 2002-12-19  Nathanael Nerode  <neroden@gcc.gnu.org>
766
767         * configure.in: FORBUILD when build!=host changed from
768         ../$build-alias to ../build-$build_alias to match change made
769         in top directory.
770         * configure: Regenerated.
771
772 2002-12-19  Eric Botcazou  <ebotcazou@libertysurf.fr>
773
774         PR optimization/8988
775         * loop.c (maybe_eliminate_biv): Kill REG_EQUAL notes mentioning
776         the biv when eliminating.
777
778 2002-12-19  Devang Patel  <dpatel@apple.com>
779         * gcc.c (struct default_compiler): Recognizes input file name with
780         .CPP extension as C++ source files
781         * cp/lang-spec.h: Same
782         * doc/invoke.texi:  Add documentation for .CPP support.
783
784 2002-12-19  Aldy Hernandez  <aldyh@redhat.com>
785
786         PR 8553
787         * config/rs6000/altivec.md ("absv8hi2"): Add & to clobbered
788         registers.
789         ("absv16qi2"): Same.
790         ("absv4si2"): Same.
791         ("absv4sf2"): Same.
792         ("altivec_abss_v16qi"): Same.
793         ("altivec_abss_v8hi"): Same.
794         ("altivec_abss_v4si"): Same.
795
796 2002-12-19  Ulrich Weigand  <uweigand@de.ibm.com>
797
798         * config/s390/s390.md ("*tsthiCCT", "*tsthiCCT_cconly",
799         "*tstqiCCT", "*tstqiCCT_cconly"): New insns.
800
801 2002-12-19  Eric Botcazou  <ebotcazou@libertysurf.fr>
802
803         PR target/8340
804         * stmt.c (expand_asm_operands): Produce an error when
805         the PIC register is clobbered.
806
807 2002-12-18  Daniel Berlin  <dberlin@dberlin.org>
808
809         * Makefile.in (OBJS): Add alloc-pool.o
810         (alloc-pool.o): New object.
811
812         * alloc-pool.c: New file.
813         * alloc-pool.h: New file.
814
815 2002-12-18  Loren James Rittle  <rittle@labs.mot.com>
816
817         * gcc.c (validate_switches): Robustify against skipping past '\0'.
818
819 2002-12-18  Geoffrey Keating  <geoffk@apple.com>
820
821         * config.gcc: Set extra_objs in the generic Darwin rule,
822         not in the machine-specific rules.
823
824 2002-12-19  Kazu Hirata  <kazu@cs.umass.edu>
825
826         * ChangeLog: Follow spelling conventions.
827         * ChangeLog.2: Likewise.
828         * ChangeLog.4: Likewise.
829         * ChangeLog.5: Likewise.
830         * cppexp.c: Likewise.
831         * df.c: Likewise.
832         * gcov.c: Likewise.
833         * gengtype.c: Likewise.
834         * reload1.c: Likewise.
835         * sched-rgn.c: Likewise.
836         * stmt.c: Likewise.
837         * stor-layout.c: Likewise.
838         * timevar.c: Likewise.
839         * toplev.c: Likewise.
840         * tree.h: Likewise.
841         * varasm.c: Likewise.
842         * config/fr30/fr30.md: Likewise.
843         * config/i386/i386.c: Likewise.
844         * config/ia64/ia64.c: Likewise.
845         * config/pa/pa.c: Likewise.
846
847 2002-12-18  Roger Sayle  <roger@eyesopen.com>
848
849         * basic-block.h (flow_bb_inside_loop_p): Correct prototype.
850
851 2002-12-18  Aldy Hernandez  <aldyh@redhat.com>
852
853         PR 8551
854         * config/rs6000/altivec.h (vec_cmplt macro): Reverse arguments in
855         macro.
856         (vec_cmplt C++ functions): Reverse arguments.
857
858 2002-12-18  Geoffrey Keating  <geoffk@apple.com>
859
860         * config/rs6000/t-rs6000: Move contents to t-fprules,
861         add rules for dependencies of rs6000.o and to build rs6000-c.o
862         * config/rs6000/t-fprules: New file from t-rs6000.
863         * config/rs6000/t-beos: Remove soft-fp rules.
864         * config/rs6000/t-ppccomm: Likewise.
865         * config/rs6000/t-newas: Likewise.
866         * config/rs6000/t-rs6000-c-rule: Delete.
867         * config.gcc: Use t-fprules for rs6000/ ports when appropriate.
868         Use t-rs6000 for all rs6000/ ports instead of t-rs6000-c-rule.
869         Create generic Darwin rules.
870
871         * gengenrtl.c (gencode): Delete unnecessary rtl_obstack declaration.
872
873 2002-12-18  Doug Evans  <dje@sebabeach.org>
874
875         * m32r/m32r.c (addr24_operand): Fix arg to CONSTANT_POOL_ADDRESS_P
876         and LIT_NAME_P.
877         (move_src_operand): Remove compile-time warning.
878         * m32r/m32r.h (ROUND_ADVANCE_ARG): Ditto.
879
880 2002-12-18  Jason Merrill  <jason@redhat.com>
881
882         * unwind-dw2-fde.c (frame_downheap): Split out from...
883         (frame_heapsort): Here.
884
885 2002-12-17  Jason Merrill  <jason@redhat.com>
886
887         * tree.c (make_node): Don't set TREE_TYPE on 's' class nodes.
888         (build1): Always set TREE_SIDE_EFFECTS on 's' class nodes.
889
890         * gcc.c (do_spec_1) ['W']: End any pending argument from the braces.
891
892         * calls.c (expand_call): Don't try to be clever about expanding
893         the return slot address.
894
895 2002-12-18  Kaz kojima  <kkojima@gcc.gnu.org>
896
897         * config/sh/linux.h (NO_IMPLICIT_EXTERN_C, CPLUSPLUS_CPP_SPEC):
898         Define.
899
900 2002-12-17  Jason Merrill  <jason@redhat.com>
901
902         * genmultilib: Use 'cd ./foo'.
903
904 2002-12-17  Kazu Hirata  <kazu@cs.umass.edu>
905
906         * doc/c-tree.texi: Restore deliberate spelling mistakes.
907
908 2002-12-17  Kazu Hirata  <kazu@cs.umass.edu>
909
910         * doc/c-tree.texi: Fix typos and follow spelling conventions.
911         * doc/cpp.texi: Likewise.
912         * doc/extend.texi: Likewise.
913         * doc/gty.texi: Likewise.
914         * doc/install.texi: Likewise.
915         * doc/invoke.texi: Likewise.
916         * doc/md.texi: Likewise.
917         * doc/passes.texi: Likewise.
918         * doc/rtl.texi: Likewise.
919         * doc/sourcebuild.texi: Likewise.
920         * doc/tm.texi: Likewise.
921
922 2002-12-17  Jerry Quinn  <jlquinn@optonline.net>
923
924         * doc/invoke.texi: Minor spelling and grammar fixes.
925
926 2002-12-17  Ulrich Weigand  <uweigand@de.ibm.com>
927
928         * config/s390/s390.c (s390_output_constant_pool): Replace
929         ASM_OUTPUT_INTERNAL_LABEL by (*targetm.asm_out.internal_label).
930
931 Tue Dec 17 09:47:57 CET 2002  Jan Hubicka  <jh@suse.cz>
932
933         * convert.c (convert_to_real): Disable function transformation for
934         now.
935
936 2002-12-16  Geoffrey Keating  <geoffk@apple.com>
937
938         * gcc.c (handle_braces): Allow '@' as a switch name.
939
940 2002-12-16  Jason Merrill  <jason@redhat.com>
941
942         * calls.c (expand_call): Handle CALL_EXPR_HAS_RETURN_SLOT_ADDR
943         with special struct-return ABIs.
944
945         * c-semantics.c (add_scope_stmt): Abort if the end SCOPE_STMT
946         doesn't match the begin SCOPE_STMT in partialness.
947
948 2002-12-16  Geoffrey Keating  <geoffk@apple.com>
949
950         * genmultilib: Create temporary files in unique subdirectory.
951
952         * gcc.c (validate_switches): Allow '@' as a switch name.
953
954 2002-12-16  Loren J. Rittle  <ljrittle@acm.org>
955
956         * Makefile.in (gcov-iov.h): Improve portability.
957
958 Mon Dec 16 23:39:19 CET 2002  Jan Hubicka  <jh@suse.cz>
959
960         * mips.h (ASM_OUTPUT_ADDR_DIFF_ELT): Do not use qpword on API_N32/not
961         gas
962         * mips.md (tablejump insn): Likewise.
963
964 2002-12-16  Mark Mitchell  <mark@codesourcery.com>
965
966         * doc/include/gcc-common.texi: Change version number to 3.4.
967
968 2002-12-16  Bruce Korb  <bkorb@gnu.org>
969
970         * fixinc/fixlib.h: add: #include <signal.h>
971         * fixinc/fixincl.c: remove: #include <signal.h>
972
973 Mon Dec 16 17:20:04 2002  J"orn Rennecke <joern.rennecke@superh.com>
974
975         * sh.h (EXTRA_CONSTRAINT_Z): New macro.
976         (EXTRA_CONSTRAINT): Use it.
977         * sh.md (anddi3): Use 'Z' constraint for alternative 2.
978
979 2002-12-15  Zack Weinberg  <zack@codesourcery.com>
980
981         * config.gcc (need_64bit_hwint): New variable.
982         (alpha*-*-*, x86_64-*-*, ia64-*-*, mips*-*-*, powerpc*-*-*,
983         mmix-knuth-mmixware, rs6000*-*-*, sparc64*-*-*, s390*-*-*,
984         sh*-*-*, hppa*64*-*-linux, parisc*64*-*-linux, hppa*64*-*-hpux11*,
985         sparcv9-*-solaris2*, sparc*-*-solaris2.[789], ultrasparc-*-freebsd*):
986         Set it.
987         (powerpc*-*-darwin*): Unset it.
988         (alpha-*-interix, alpha64-dec-*vms*, i?86-*-interix3*,
989         i?86-*-interix*, sparc64-*-openbsd*): Remove references to
990         deleted/nonexistent xm-*.h headers.
991         * configure.in: AC_DEFINE NEED_64BIT_HOST_WIDE_INT if the
992         target set need_64bit_hwint in config.gcc.
993         * configure, config.in: Regenerate.
994
995         * hwint.h: Overhaul.  Don't bother trying int for
996         HOST_WIDE_INT.  Do try __int64 if long is not enough.  Base
997         decision to force 64-bit HOST_WIDE_INT on
998         NEED_64BIT_HOST_WIDE_INT, not (MAX_)LONG_TYPE_SIZE which is
999         not visible at this point.  Don't allow prior definition of
1000         any macro defined by this file.
1001
1002         * config/alpha/xm-vms.h: Don't define HOST_WIDE_INT or
1003         HOST_BITS_PER_WIDE_INT.
1004         * config/c4x/c4x.h: Adjust redefinition of
1005         HOST_WIDE_INT_PRINT_HEX to match changes to hwint.h.
1006         * config/alpha/xm-alpha-interix.h, config/alpha/xm-vms64.h,
1007         config/i386/xm-i386-interix.h: Delete file.
1008
1009 2002-12-14  Rodney Brown  <rbrown64@csc.com.au>
1010             John David Anglin  <dave@hiauly1.hia.nrc.ca>
1011
1012         * pa.c (output_millicode_call): Convert ASM_OUTPUT_INTERNAL_LABEL.
1013         * pa64-hpux.h (ASM_OUTPUT_INTERNAL_LABEL): Delete define.
1014
1015 2002-12-14  Zack Weinberg  <zack@codesourcery.com>
1016
1017         * mkconfig.sh: Correct comment.  Add copyright boilerplate.
1018
1019 2002-12-14  Zack Weinberg  <zack@codesourcery.com>
1020
1021         * config/t-darwin, config/arm/t-pe, config/arm/t-strongarm-pe,
1022         config/c4x/t-c4x, config/i370/t-i370, config/i386/t-cygwin,
1023         config/i386/t-interix, config/i960/t-960bare, config/ia64/t-ia64,
1024         config/rs6000/t-rs6000-c-rule, config/sparc/t-sol2,
1025         config/v850/t-v850:  Correct dependencies and normalize
1026         compilation commands for files that include coretypes.h and tm.h.
1027
1028         * config/sparc/gmon-sol2.c: Include tconfig.h and tsystem.h,
1029         not config.h and system.h.
1030
1031 Sat Dec 14 20:43:41 CET 2002  Jan Hubicka  <jh@suse.cz>
1032
1033         * i386.c (flags_reg_operand):  New function.
1034         * i386.h (PREDICATE_CODES): Add flags_reg_operand.
1035         * i386.md (cmov splitter, movqicc): Use new predicate.
1036
1037 Sat Dec 14 17:03:17 CET 2002  Jan Hubicka  <jh@suse.cz>
1038
1039         * i386.md (movqicc splitter): Fix template.
1040
1041 2002-12-13  Jason Merrill  <jason@redhat.com>
1042
1043         * tree.h (CALL_EXPR_HAS_RETURN_SLOT_ADDR): New macro.
1044         * calls.c (expand_call): Handle it.
1045         * tree-inline.c (struct inline_data): Remove target_exprs field.
1046         (optimize_inline_calls): Don't initialize it.
1047         (expand_call_inline): Don't modify it.  Handle
1048         CALL_EXPR_HAS_RETURN_SLOT_ADDR.
1049         (declare_return_variable): Take return slot addr.
1050         * langhooks.h (copy_res_decl_for_inlining): Change target_exprs parm
1051         to return_slot_addr.
1052         * langhooks-def.h, langhooks.c: Adjust.
1053         * explow.c (maybe_set_unchanging): Don't set RTX_UNCHANGING_P for
1054         a decl with no DECL_INITIAL.
1055
1056         * expr.c (expand_expr): Don't discard the target of a call which
1057         returns in memory.
1058
1059 2002-12-13  Neil Booth  <neil@daikokuya.co.uk>
1060
1061         * cppinit.c (path_include): Take an environment variable name.
1062         Tidy up.
1063         (init_standard_includes): Simplify environment handling, and
1064         move to ...
1065         (cpp_read_main_file): ...here as -nostdinc should not affect
1066         environment variable paths.
1067
1068 2002-12-13  John David Anglin  <dave@hiauly1.hia.nrc.ca>
1069
1070         * pa.c (output_millicode_call): Correct typo.
1071         (output_call): Likewise.
1072
1073 Fri Dec 13 21:07:18 2002  Alexandre Oliva  <aoliva@redhat.com>
1074
1075         * config/mn10300/mn10300.c (print_operand) <case N>: Check
1076         operand's range.  Print value directly, without aid from
1077         output_address.
1078         <case U>: New.
1079         <case S>: Make sure argument to fprintf has the right type.
1080         * config/mn10300/mn10300.h (OK_FOR_T): New macro.
1081         (EXTRA_CONSTRAINT): Adjust.
1082         * config/mn10300/mn10300.md: Add new all-QImode pattern for
1083         bclr.  Use %U for immediate operands of bset and bclr.
1084         (iorqi3): New expand, with insns for AM33 and mn10300.
1085
1086 Fri Dec 13 16:02:27 2002  J"orn Rennecke <joern.rennecke@superh.com>
1087
1088         * sh.c (sh_register_operand): New function.
1089         (prepare_move_operands): Use it.
1090         * sh.h (PREDICATE_CODES): Add entry for sh_register_operand.
1091         * sh.md (movsi_media, movsi_media_nofpu): Allow stores of 0.
1092         (movqi_media, movhi_media, movdi_media, movdi_media_nofpu): Likewise.
1093         (movdf_media, movdf_media_nofpu, movv4sf_i, movsf_media): Likewise.
1094         (movsf_media_nofpu, movv2hi_i, movv4hi_i, movv8qi_i): Likewise.
1095         (movv2si_i): Likewise.
1096
1097 2002-12-13  Jim Wilson  <wilson@redhat.com>
1098
1099         * doc/extend.texi (Complex Numbers): Update info on debug info.
1100
1101 2002-12-13  Kazu Hirata  <kazu@cs.umass.edu>
1102
1103         * config/h8300/h8300.md (addhi3_h8300): Remove the last
1104         alternative.
1105
1106 2002-12-12  Zdenek Dvorak  <rakdver@atrey.karlin.mff.cuni.cz>
1107
1108         * hooks.h (hook_tree_tree_bool_false): Declare
1109         hook_bool_tree_tree_false instead.
1110
1111 2002-12-12  Devang Patel  <dpatel@apple.com>
1112
1113         * doc/invoke.texi: Document Darwin linker options, -bundle
1114         -bind_at_load, -all_load and -arch_errors_fatal
1115
1116 2002-12-12  Jim Wilson  <wilson@redhat.com>
1117
1118         * dbxout.c (dbxout_fptype_value): New.
1119         (dbxout_type, case COMPLEX_TYPE): Call it.  Use 'R' instead of 'r'.
1120
1121 2002-12-12  Kazu Hirata  <kazu@cs.umass.edu>
1122
1123         * c-decl.c: Fix a comment typo.
1124         * cfg.c: Likewise.
1125         * cfgcleanup.c: Likewise.
1126         * cfglayout.c: Likewise.
1127         * cfgrtl.c: Likewise.
1128         * c-typeck.c: Likewise.
1129         * dominance.c: Likewise.
1130         * dwarf2asm.c: Likewise.
1131         * dwarfout.c: Likewise.
1132         * expmed.c: Likewise.
1133         * expr.c: Likewise.
1134         * final.c: Likewise.
1135         * flow.c: Likewise.
1136         * function.c: Likewise.
1137         * gcc.c: Likewise.
1138         * genautomata.c: Likewise.
1139         * integrate.c: Likewise.
1140         * loop.c: Likewise.
1141         * loop.h: Likewise.
1142         * output.h: Likewise.
1143         * profile.c: Likewise.
1144         * ra.h: Likewise.
1145         * reload1.c: Likewise.
1146         * reload.c: Likewise.
1147         * sched-rgn.c: Likewise.
1148         * stmt.c: Likewise.
1149         * tree.h: Likewise.
1150         * vmsdbgout.c: Likewise.
1151
1152 2002-12-12  Kazu Hirata  <kazu@cs.umass.edu>
1153
1154         * config/h8300/h8300.md: Add a new peephole2.
1155
1156 2002-12-12  Kazu Hirata  <kazu@cs.umass.edu>
1157
1158         * config/h8300/h8300.md (a peephole2): Accept a constant
1159         that's accepted by CONST_OK_FOR_J.
1160
1161 2002-12-12  Kazu Hirata  <kazu@cs.umass.edu>
1162
1163         * config/h8300/h8300.h (CONST_OK_FOR_J): New.
1164         (CONST_OK_FOR_LETTER_P): Use CONST_OK_FOR_J.
1165         * config/h8300/h8300.md (*addhi_h8300): Add a new alternative.
1166         (*addhi_h8300hs): Likewise.
1167
1168 Thu Dec 12 16:24:59 2002  J"orn Rennecke <joern.rennecke@superh.com>
1169
1170         * sh.c (reg_class_from_letter): No longer const.  Add 'e' entry.
1171         (sh_register_move_cost): Add clause for SImode fp-fp moves.
1172         Increase cost for moves involving multiple general purpose registers.
1173         * sh.h (OVERRIDE_OPTIONS): Set reg_class_from_letter['e'] according to
1174         TARGET_FMOVD.
1175         (HARD_REGNO_MODE_OK): Allow V2SFmode and V4SFmode in general purpose
1176         registers, and SImode in fp registers, for ! TARGET_SHMEDIA.
1177         (enum reg_class reg_class_from_letter): No longer const.
1178         (SECONDARY_OUTPUT_RELOAD_CLASS): Use REGCLASS_HAS_FP_REG /
1179         REGCLASS_HAS_GENERAL_REG.
1180         Handle SImode moves from/to fp registers.
1181         ! TARGET_SHMEDIA && TARGET_FMOVD.
1182         (SECONDARY_INPUT_RELOAD_CLASS): Use REGCLASS_HAS_FP_REG.
1183         * sh.md (movsi_ie): Add alternatives to move from / to fp regisyters.
1184
1185 2002-12-12  Andreas Schwab  <schwab@suse.de>
1186
1187         * config/ia64/ia64.c (ia64_hpux_asm_file_end): Fix typo in last
1188         change and some warnings.
1189
1190 2002-12-12  Kazu Hirata  <kazu@cs.umass.edu>
1191
1192         * doc/md.texi (pushm): Fix a typo.
1193
1194 2002-12-12  Alexandre Oliva  <aoliva@redhat.com>
1195
1196         * config/mips/mips.c (mips_output_conditional_branch): Support
1197         PIC-safe out-of-range branch and branch-likely.
1198         * config/mips/mips.md (attr length): PIC-safe out-of-range
1199         branches are longer.
1200         ("jump"): Support PIC-safe out-of-range-for-branch jumps.  Remove
1201         unused code to support indirect jumps.
1202
1203 2002-12-11  Zack Weinberg  <zack@codesourcery.com>
1204
1205         * Makefile.in (GTFILES): Add $(host_xm_file_list) and
1206         $(tm_file_list).
1207
1208 2002-12-11  David Edelsohn  <edelsohn@gnu.org>
1209
1210         * config/rs6000/t-rs6000-c-rule: Add coretypes.h $(TM_H) dependencies.
1211
1212 Wed Dec 11 15:20:45 CET 2002  Jan Hubicka  <jh@suse.cz>
1213
1214         * i386.md (cmove splitters): Avoid creation of unnecesary subregs.
1215
1216 2002-12-11  John David Anglin  <dave@hiauly1.hia.nrc.ca>
1217
1218         * pa.h (BIGGEST_ALIGNMENT): Change 32-bit value to 64 bits.
1219         (MAX_PARM_BOUNDARY, STACK_BOUNDARY): Express in terms of
1220         BIGGEST_ALIGNMENT.
1221         (PREFERRED_STACK_BOUNDARY): Express in terms of STACK_BOUNDARY.
1222         (FUNCTION_BOUNDARY): Express in terms of BITS_PER_WORD.
1223
1224 2002-12-11  Kazu Hirata  <kazu@cs.umass.edu>
1225
1226         * doc/invoke.texi: Correct dump file names.
1227
1228 2002-12-09  Steve Ellcey  <sje@cup.hp.com>
1229
1230         * config/ia64/ia64.c (ia64_hpux_asm_file_end): Don't send stripped
1231         name to globalize_label or assemble_name.
1232
1233 Wed Dec 11 20:15:19 2002  J"orn Rennecke <joern.rennecke@superh.com>
1234
1235         * sh.h (REG_CLASS_HAS_GENERAL_REG): Only true for SIBCALL_REGS
1236         if not TARGET_SHMEDIA.
1237
1238 Wed Dec 11 19:05:05 2002  J"orn Rennecke <joern.rennecke@superh.com>
1239
1240         * sh.h (REG_CLASS_HAS_FP_REG): New.
1241         (REGISTER_MOVE_COST) Use it.  Put body into a function and
1242         move it into:
1243         * sh.c (sh_register_move_cost).
1244         * sh-protos.h (sh_register_move_cost): Declare.
1245
1246         * sh.c (sh_expand_builtin): Abort for unexpected nop values.
1247         (sh_adjust_cost): Always return a value.
1248
1249 Wed Dec 11 18:39:52 2002  J"orn Rennecke <joern.rennecke@superh.com>
1250
1251         * sh.h (REG_CLASS_HAS_GENERAL_REG): New.
1252         (REGISTER_MOVE_COST): Use it.
1253
1254 2002-12-11  Richard Henderson  <rth@redhat.com>
1255
1256         * tree.h (MODULE_LOCAL_P): Kill.
1257         * varasm.c (default_binds_local_p_1): Use decl_visibility instead.
1258
1259 2002-12-11  Kazu Hirata  <kazu@cs.umass.edu>
1260
1261         * config/h8300/h8300.md (two define_peephole2): New.
1262
1263 2002-12-11  Kazu Hirata  <kazu@cs.umass.edu>
1264
1265         * config/h8300/h8300.h (CONST_OK_FOR_J): Remove.
1266         (CONST_OK_FOR_K): Likewise.
1267         (CONST_OK_FOR_M): Likewise.
1268         (CONST_OK_FOR_LETTER_P): Do not use the above macros.
1269
1270 2002-12-11  Neil Booth  <neil@daikokuya.co.uk>
1271
1272         * c-common.c (builtin_define_type_max): Handle unsigned
1273         types too.
1274
1275 2002-12-10  David Edelsohn  <edelsohn@gnu.org>
1276
1277         * haifa-sched.c (rank_for_schedule): Correct style.
1278
1279 2002-12-10  Per Bothner  <pbothner@apple.com>
1280
1281         * cpplib.h (struct cpp_hashnode):  Split a non-portably-signed field
1282         directive_index into an unsigned field and a new is_directive field.
1283         * cppinit.c (mark_named_operators):  Update to set new fields.
1284         * cpplex.c (_cpp_lex_direct):  Now directive_field is unsigned.
1285         * cpplib.c [_cpp_handle_directive]:   Test is_directive field.
1286         No longer need to subtract 1 from directive_index.
1287         (_cpp_init_directives):  No longer need to add 1 to directive_index.
1288         * cpptrad.c (scan_out_logical_line):  Use is_directive field.
1289
1290 2002-12-10  Roger Sayle  <roger@eyesopen.com>
1291
1292         * builtins.c (fold_builtin): Remove -funsafe-math-optimizations
1293         check for evaluating sqrt of a constant at compile time.
1294         * simplify-rtx.c (simplify_unary_operation): Likewise.
1295
1296 2002-12-10  Janis Johnson  <janis187@us.ibm.com>
1297
1298         PR other/8882
1299         * doc/tm.texi (PUSH_ARGS): Remove misplaced line.
1300
1301 2002-12-10  Devang Patel  <dpatel@appple.com>
1302
1303         * config/darwin.h(LINK_SPEC): Add darwin specific linker options.
1304         * doc/invoke.texi: Add new "Darwin Options" section.
1305
1306 2002-12-10  Jim Wilson  <wilson@redhat.com>
1307
1308         * rs6000.h (RETURN_IN_MEMORY): If ABI_V4, then TFmode is returned in
1309         memory.
1310
1311 2002-12-10  Andrew Haley  <aph@redhat.com>
1312
1313         * cse.c (cse_insn): Don't cse past a basic block boundary.
1314
1315 2002-12-10  Jakub Jelinek  <jakub@redhat.com>
1316
1317         * config/linux.h (LIB_SPEC): If -pthread, add -lpthread even if
1318         -shared.
1319         * config/alpha/linux-elf.h (LIB_SPEC): Likewise.
1320         * config/alpha/linux.h (LIB_SPEC): Likewise.
1321         * config/arm/linux-elf.h (LIB_SPEC): Likewise.
1322         * config/pa/pa-linux.h (LIB_SPEC): Likewise.
1323         * config/sparc/linux.h (LIB_SPEC): Likewise.
1324         * config/sparc/linux64.h (LIB_SPEC): Likewise.
1325
1326 2002-12-09  Larin Hennessy  <larin@science.oregonstate.edu>
1327
1328         * doc/invoke.texi: Document UltraSparc III option.
1329
1330 2002-12-09  Richard Henderson  <rth@redhat.com>
1331
1332         * config/i386/i386.h (TARGET_CPU_CPP_BUILTINS): Define
1333         __tune_pentium2__ and __tune_pentium3__ as necessary.
1334
1335 2002-12-09  Richard Henderson  <rth@redhat.com>
1336
1337         * target.h (gcc_target): Add cannot_force_const_mem.
1338         * target-def.h (TARGET_CANNOT_FORCE_CONST_MEM): New.
1339         (TARGET_INITIALIZER): Add it.
1340         * varasm.c (force_const_mem): Fail if cannot_force_const_mem.
1341         * expr.c (emit_move_insn): Be prepared for force_const_mem to fail.
1342         * reload1.c (reload): Likewise.
1343         * hooks.c (hook_bool_rtx_false): New.
1344         * hooks.h: Declare it.
1345
1346         * config/i386/i386.c (ix86_cannot_force_const_mem): New.
1347         (TARGET_CANNOT_FORCE_CONST_MEM): New.
1348         (ix86_expand_move): Remove de-const-pooling hack.
1349
1350 Mon Dec  9 21:33:38 CET 2002  Jan Hubicka  <jh@suse.cz>
1351
1352         * toplev.c (dump_file): Fix order to match reality.
1353
1354 2002-12-08  Geoffrey Keating  <geoffk@apple.com>
1355
1356         * config/rs6000/rs6000.md (load_multiple): Use adjust_address_nv.
1357         (store_multiple): Likewise.
1358
1359 2002-12-09  John David Anglin  <dave@hiauly1.hia.nrc.ca>
1360
1361         * pa/fptr.c (__canonicalize_funcptr_for_compare): Don't canonicalize
1362         function pointers in page 0.
1363
1364 2002-12-09  Steve Ellcey  <sje@cup.hp.com>
1365
1366         * config/ia64/hpux.h (TARGET_STRUCT_ARG_REG_LITTLE_ENDIAN): Remove
1367         definition
1368         (MEMBER_TYPE_FORCES_BLK): Move.
1369         * config/ia64/ia64.c (ia64_function_arg): Use PARALLEL to pass
1370         aggregate arguments.
1371         (ia64_function_value): Use PARALLEL to return aggregate values.
1372
1373 2002-12-09  Steve Ellcey  <sje@cup.hp.com>
1374
1375         * doc/tm.texi (FUNCTION_ARG_REG_LITTLE_ENDIAN): Remove definition.
1376         * defaults.h (FUNCTION_ARG_REG_LITTLE_ENDIAN): Remove definition.
1377         * calls.c (store_unaligned_arguments_into_pseudos) Remove
1378         FUNCTION_ARG_REG_LITTLE_ENDIAN.
1379         * stmt.c (expand_return): Ditto.
1380         * expr.c (move_block_from_reg): Ditto.
1381         (copy_blkmode_from_reg): Ditto.
1382         * expmed.c (store_bit_field): Ditto.
1383
1384 2002-12-09  Svein E. Seldal  <Svein.Seldal@solidas.com>
1385
1386         * config.gcc: Added tic4x-* target as an alias to c4x-*
1387
1388 Sun Dec  8 14:57:39 CET 2002  Jan Hubicka  <jh@suse.cz>
1389
1390         * i386.c (ix86_expand_int_movcc): Use force_operand instead of
1391         constructing insn directly.
1392
1393 2002-12-06  Per Bothner  <pbothner@apple.com>
1394
1395         * cpplib.h (struct cpp_hashnode):  Change field directive_index from
1396         char to an int bit-field, for hosts where char is unsigned.
1397
1398 2002-12-07  Roger Sayle  <roger@eyesopen.com>
1399             Richard Henderson <rth@redhat.com>
1400
1401         * real.c (ieee_extended_motorola_format,
1402         ieee_extended_intel_96_format, ieee_extended_intel_128_format,
1403         ieee_quad_format, vax_d_format, vax_g_format, i370_double_format):
1404         Provide appropriate values for new signbit field.
1405
1406 2002-12-07  Roger Sayle  <roger@eyesopen.com>
1407
1408         * real.h (real_format): Add signbit field.
1409         * real.c (ieee_single_format, ieee_double_format,
1410         ieee_extended_motorola_format, ieee_extended_intel_96_format,
1411         ieee_extended_intel_128_format, ibm_extended_format,
1412         ieee_quad_format, vax_f_format, vax_d_format,
1413         vax_g_format, i370_single_format, i370_double_format,
1414         c4x_single_format, c4x_extended_format, real_internal_format):
1415         Provide suitable signbit value, or -1 to avoid bit twiddling.
1416
1417         * optabs.c (expand_unop): Try implementing negation of
1418         floating point modes by flipping the sign bit.
1419         (expand_abs): Try implementing abs of floating point modes
1420         by clearing the sign bit.
1421
1422 Sat Dec  7 22:29:47 CET 2002  Jan Hubicka  <jh@suse.cz>
1423
1424         * i386.c (ix86_expand_int_movcc):  Use force_operand instead
1425         of constructing insn directly.
1426
1427 2002-12-07  Kazu Hirata  <kazu@cs.umass.edu>
1428
1429         * config/h8300/h8300.md (*iorhi_shift_8): New.
1430
1431 2002-12-06  Bernd Schmidt  <bernds@redhat.com>
1432
1433         * doc/invoke.texi: Document FRV port options.
1434         * doc/md.texi: Document FRV register classes.
1435
1436 2002-12-07  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
1437
1438         * doc/install.texi (Configuration): Improve description of cases
1439         where `make distclean` may fail; clarify --with-gnu-as; fix grammar.
1440
1441 2002-12-06  Per Bothner  <pbothner@apple.com>
1442
1443         * cpplib.h (NODE_MACRO_ARG):  New flag.
1444         (struct cpp_hashnode):  Give _cpp_hashnode_value tag to value union.
1445         Remove value.operator field.  Move arg_index field to value union.
1446         (directive_index):  Make signed, since also used for C++ operators.
1447         * cppmacro.c (_cpp_save_parameter):  Use NODE_MACRO_ARG flag to
1448         check for duplicate parameter.  Set NODE_MACRO_ARG flag.
1449         Save node->value, and set node->value.arg_index.
1450         (_cpp_create_definition):  For each paramater, restore node->value.
1451         (lex_expansion_token):  Use NODE_MACRO_ARG flag, and moved arg_index.
1452         * cpptrad.c (scan_out_logical_line): Likewise.
1453         (scan_out_logical_line): Check for directive > 0.
1454         * cpplib.c (cpp_handle_directive):  Likewise.
1455         * cpplex.c (_cpp_lex_direct):  Update as value.operator is replaced
1456         by negative of directive_index.
1457         * cppinit.c (mark_named_operators):  Likewise.
1458
1459         * hashtable.h (struct ht_identifier):  Swap fields, for better packing.
1460
1461 2002-12-06 Dhananjay Deshpande <dhananjayd@kpit.com>
1462
1463         * gcc/config/sh/sh.c (calc_live_regs): Save fpscr only if target has
1464         FPU.
1465         (push): Generate push_fpscr.
1466         (pop): Generate pop_fpscr.
1467         * gcc/config/sh/sh.md : Add define_expand "push_fpscr", "pop_fpscr".
1468         (fpu_switch): Add alternative to push fpscr.  Enable for TARGET_SH3E.
1469
1470 Fri Dec  6 19:36:24 2002  J"orn Rennecke <joern.rennecke@superh.com>
1471
1472         * sh.c (dump_table): DImode pool constants need only 32 bit alignment.
1473         DFmode alignment depends on TARGET_FMOVD && TARGET_ALIGN_DOUBLE.
1474
1475 Fri Dec  6 19:17:49 2002  J"orn Rennecke <joern.rennecke@superh.com>
1476
1477         * sh.md (movdi_i): Name.  Remove inappropriate comment.
1478
1479 Fri Dec  6 15:44:46 2002  J"orn Rennecke <joern.rennecke@superh.com>
1480         Merged from basic improvements branch (excerpt):
1481
1482         2002-11-19  Kaz Kojima  <kkojima@gcc.gnu.org>
1483         * config/sh/sh.h (SH_DBX_REGISTER_NUMBER): Handle PR_MEDIA_REG.
1484
1485 2002-12-06  Jakub Jelinek  <jakub@redhat.com>
1486
1487         * expr.c (expand_expr) <case COND_EXPR>: Never modify exp in place.
1488
1489 Thu Dec  5 16:58:25 CET 2002  Jan Hubicka  <jh@suse.cz>
1490
1491         * i386.md (dimode peep2s): Re-add "&& 1".
1492
1493 Thu Dec  5 14:10:15 CET 2002  Jan Hubicka  <jh@suse.cz>
1494
1495         * i386.c (ix86_expand_prologue):  Add comment, do not use
1496         fast prologues for cold and normal functions.
1497
1498 Thu Dec  5 00:52:37 CET 2002  Jan Hubicka  <jh@suse.cz>
1499
1500         * i386.c (x86_rep_movl_optimal): New variable.
1501         (ix86_expand_movstr, ix86_expand_clrstr): Use TARGET_REP_MOVL_OPTIMAL
1502         * i386.h (TARGET_REP_MOVL_OPTIMAL): New macro.
1503
1504         * i386.md (negsf2_ifs, negdf2_ifs, negdf2_ifs_rex64, abssf2_ifs,
1505         absdf2_ifs, absdf2_ifs_rex64): Fix constraints.
1506         neg?f2_ifs, abs?f2_ifs splitters): Refuse memory operand; do not
1507         generate unnecesary subregs.
1508
1509 2002-12-05  John David Anglin  <dave@hiauly1.hia.nrc.ca>
1510
1511         * pa32-linux.h (CANONICALIZE_FUNCPTR_FOR_COMPARE_LIBCALL): Move define.
1512         * pa.h (CANONICALIZE_FUNCPTR_FOR_COMPARE_LIBCALL): To here.
1513
1514 2002-12-05  Dale Johannesen  <dalej@apple.com>
1515
1516         * tree.c (unsafe_for_reeval):  Consider callee child of CALL_EXPR.
1517
1518 2002-12-05  Danny Smith  <dannysmith@users.sourceforge.net>
1519
1520         * config/i386/cygwin.h (SUBTARGET_PROLOGUE): Replace with
1521         PROFILE_HOOK.
1522         * config/i386/mingw32.h (SUBTARGET_PROLOGUE): Don't undef.
1523
1524 2002-12-05  Aldy Hernandez  <aldyh@redhat.com>
1525
1526         * config/rs6000/spe.h (__ev_mwlufi): Remove.
1527         (__ev_mwlufia): Remove.
1528         (__ev_mwlumfaaw): Remove.
1529         (__ev_mwlusfaaw): Remove.
1530         (__ev_mwlumfanw): Remove.
1531         (__ev_mwlusfanw): Remove.
1532
1533 2002-12-05  Kazu Hirata  <kazu@cs.umass.edu>
1534
1535         * config/h8300/h8300.md (*andorsi3_shift_8): New.
1536
1537 2002-12-05  Kazu Hirata  <kazu@cs.umass.edu>
1538
1539         * config/h8300/h8300.c (shift_alg_si): Optimize ashift:HI and
1540         lshiftrt:SI by 28, 29, and 30 bits when !TARGET_H8300.
1541         (get_shift_alg): Return optimal assembly instructions for the
1542         shifts mentioned above.
1543
1544 Wed Dec  4 11:53:07 CET 2002  Jan Hubicka  <jh@suse.cz>
1545
1546         * i386.c (ix86_expand_int_movcc): Force operand into register for QImode
1547         condtiional moves.
1548
1549 2002-12-04  Kazu Hirata  <kazu@cs.umass.edu>
1550
1551         * config/h8300/h8300.c (h8300_init_once): Do not use loop to
1552         implement ashiftrt:HI by 13 bits on H8S.
1553
1554 2002-12-04  John David Anglin  <dave@hiauly1.hia.nrc.ca>
1555
1556         * pa/fptr.c (__canonicalize_funcptr_for_compare): New file and function.
1557         * pa.md (canonicalize_funcptr_for_compare): Output library call to
1558         canonicalize_funcptr_for_compare_libfunc on TARGET_ELF32.
1559         * pa32-linux.h (CANONICALIZE_FUNCPTR_FOR_COMPARE_LIBCALL,
1560         CTOR_LIST_BEGIN): New defines.
1561         * pa/t-linux (LIB2FUNCS_EXTRA): New define.
1562         (fptr.c): Add make rules.
1563
1564 2002-12-04  Geoffrey Keating  <geoffk@apple.com>
1565
1566         * combine.c (combine_simplify_rtx): Add new canonicalizations.
1567         * doc/md.texi (Insn Canonicalizations): Document new
1568         canonicalizations for multiply/add combinations.
1569         * config/rs6000/rs6000.md: Add and modify floating add/multiply
1570         patterns to ensure they're used whenever they can be.
1571
1572 2002-12-04  Kazu Hirata  <kazu@cs.umass.edu>
1573
1574         * config/h8300/h8300.c: Update the comments related to shifts.
1575
1576 2002-12-04  Chris Demetriou  <cgd@broadcom.com>
1577
1578         * config/mips/mips.md (get_fnaddr): Correct length attribute.
1579
1580 2002-12-04  Kazu Hirata  <kazu@cs.umass.edu>
1581
1582         * config/h8300/h8300.md (*extzv_8_8): New.
1583         (*extzv_8_16): Likewise.
1584
1585 2002-12-04  Jason Merrill  <jason@redhat.com>
1586
1587         PR c++/8461, c++/8625
1588         * integrate.c (copy_decl_for_inlining): Handle explicit invisible
1589         references.
1590         * tree-inline.c (initialize_inlined_parameters): Likewise.
1591
1592         * tree.c (variably_modified_type_p): Just return an error_mark_node.
1593
1594 2002-12-04  Chris Demetriou  <cgd@broadcom.com>
1595
1596         * config/mips/mips.md (get_fnaddr): Avoid placing an "la"
1597         macro instruction in a branch delay slot, to avoid assembler
1598         warnings.
1599
1600 2002-12-04  Eric Botcazou  <ebotcazou@libertysurf.fr>
1601
1602         PR c/7622
1603         * c-semantics (genrtl_scope_stmt): Do not output inlined
1604         nested functions that contain no code.
1605
1606 Wed Dec  4 15:20:54 CET 2002  Jan Hubicka  <jh@suse.cz>
1607
1608         * cfgrtl.c (force_nonfallthru_and_redirect):  Allow abnormal edge
1609         to be forced into nonfallthru.
1610
1611 2002-12-03  Jason Thorpe  <thorpej@wasabisystems.com>
1612
1613         * config/t-netbsd (USER_H): Set to $(EXTRA_HEADERS).
1614
1615 2002-12-03  Aldy Hernandez  <aldyh@redhat.com>
1616
1617         * config/rs6000/spe.md (*movv1di_const0): New pattern.
1618
1619 2002-12-03  Richard Henderson  <rth@redhat.com>
1620
1621         * libgcc-std.ver: Inherit GCC_3.3 from GCC_3.0.
1622
1623 2002-12-03  Hans-Peter Nilsson  <hp@bitrange.com>
1624
1625         * bitmap.c (bitmap_ior_and_compl, bitmap_union_of_diff):
1626         Initialize tmp.using_obstack to 0.
1627
1628 2002-12-03  Andreas Schwab  <schwab@suse.de>
1629
1630         * config/m68k/m68k.h (EH_RETURN_DATA_REGNO): Define.
1631         (EH_RETURN_STACKADJ_RTX): Define.
1632         (EH_RETURN_HANDLER_RTX): Define.
1633         (ASM_PREFERRED_EH_DATA_FORMAT): Define.
1634         * config/m68k/m68k.c (m68k_save_reg): New function.  Handle eh
1635         registers and don't save fixed registers.
1636         (m68k_output_function_prologue): Use it.
1637         (use_return_insn): Likewise.
1638         (m68k_output_function_epilogue): Likewise.
1639
1640 2002-12-03  Kazu Hirata  <kazu@cs.umass.edu>
1641
1642         * config/h8300/h8300.c (single_one_operand): Fix a warning.
1643         (single_zero_operand): Likewise.
1644
1645 2002-12-02  Nathanael Nerode  <neroden@gcc.gnu.org>
1646
1647         * Makefile.in configure configure.in dummy-conditions.c fix-header.c
1648         gcov-iov.c gen-protos.c genattr.c genattrtab.c genautomata.c
1649         gencheck.c gencodes.c genconditions.c genconfig.c genconstants.c
1650         genemit.c genextract.c genflags.c gengenrtl.c gengtype-lex.l
1651         gengtype-yacc.y gengtype.c genopinit.c genoutput.c genpeep.c
1652         genpreds.c genrecog.c gensupport.c mkconfig.sh read-rtl.c
1653         scan-decls.c scan.c config/sh/sh.h doc/configfiles.texi
1654         doc/install-old.texi: Replace hconfig.h with bconfig.h.
1655         * Makefile.in: Replace HCONFIG_H with BCONFIG_H.
1656
1657 2002-12-02  Andrew Pinski  <pinskia@physics.uc.edu>
1658
1659         * config/rs6000/rs6000.md (ffssi): Convert to expander.
1660         (ffsdi): Likewise.
1661         (cntlzw2, cntlzd2): New patterns.
1662
1663 2002-12-02  H.J. Lu <hjl@gnu.org>
1664
1665         * config.gcc (mips*-*-netbsd*): Remove mips/t-netbsd.
1666         (mips*-*-linux*): Remove mips/t-linux.
1667
1668 Mon Dec  2 19:26:30 CET 2002  Jan Hubicka  <jh@suse.cz>
1669
1670         * i386.c (ix86_expand_int_movcc):  Avoid overflow.
1671
1672 2002-12-02  Kazu Hirata  <kazu@cs.umass.edu>
1673
1674         * config/h8300/h8300.c (dosize): Replace argument op with
1675         sign.
1676         (h8300_output_function_prologue): Update the call to dosize.
1677         (h8300_output_function_epilogue): Likewise.
1678
1679 2002-12-02  Bob Wilson  <bob.wilson@acm.org>
1680
1681         * config/xtensa/xtensa.h: Delete ifndefs with nothing inside them.
1682
1683 2002-12-02  Craig Rodrigues  <rodrigc@gcc.gnu.org>
1684
1685         * configure.in: Use "missing" script to generate warning if
1686         flex or bison programs not found, instead of invoking "false".
1687         * configure: Rebuilt.
1688
1689 Mon Dec  2 20:28:48 CET 2002  Jan Hubicka  <jh@suse.cz>
1690
1691         * unroll.c (copy_loop_body): Copy CONST_OR_PURE_CALL_P.
1692
1693 Mon Dec  2 19:42:52 CET 2002  Jan Hubicka  <jh@suse.cz>
1694
1695         * i386.c (ix86_expand_int_movcc):  Avoid overflow.
1696
1697 2002-12-02  Kazu Hirata  <kazu@cs.umass.edu>
1698
1699         * config/h8300/h8300.c (dosize): Output r7/er7 instead of sp.
1700         (push): Likewise.
1701         (pop): Likewise.
1702         (h8300_output_function_prologue): Likewise.
1703         (h8300_output_function_epilogue): Likewise.
1704
1705 Mon Dec  2 14:43:22 2002  J"orn Rennecke <joern.rennecke@superh.com>
1706
1707         * expmed.c (store_bit_field): Use int_mode_for_mode to find
1708         corresponding mode of non-integer mode, unless it is VOIDmode.
1709
1710 2002-12-02  Kazu Hirata  <kazu@cs.umass.edu>
1711
1712         * config/h8300/h8300.md (stm_h8300s_2): New.
1713         (stm_h8300s_3): Likewise.
1714         (stm_h8300s_4): Likewise.
1715         (five define_peephole2): Likewise.
1716
1717 2002-12-02  Kazu Hirata  <kazu@cs.umass.edu>
1718
1719         * ra-build.c: Fix a comment typo.
1720
1721 Sun Dec  1 16:50:47 CET 2002  Jan Hubicka  <jh@suse.cz>
1722
1723         * i386.c (ix86_expand_int_movcc): fix
1724         reversed BRANCH_COST test; be curefull about infinite recursion.
1725
1726 2002-12-01  Kazu Hirata  <kazu@cs.umass.edu>
1727
1728         * config/h8300/h8300.c (h8300_output_function_prologue):
1729         Remove variable idx.
1730         (h8300_output_function_epilogue): Likewise.
1731
1732 2002-12-01  Zack Weinberg  <zack@codesourcery.com>
1733
1734         * config/frv/xm-frv.h: Delete, unnecessary.
1735
1736 2002-12-01  Kazu Hirata  <kazu@cs.umass.edu>
1737
1738         * config/h8300/h8300.md: Add comments for define_peephole2.
1739
1740 2002-12-01  Mark Mitchell  <mark@codesourcery.com>
1741
1742         * builtin-types.def (BT_SIZE): Use size_type_node.
1743         * builtins.c (fold_builtin): Make the builtin strlen returns a
1744         size_t, not a sizetype.
1745         * c-common.c (c_sizeof_or_alignof_type): Use size_type_node, not
1746         c_size_type_node.
1747         (c_alignof_expr): Likewise.
1748         (c_common_nodes_and_builtins): Likewise.
1749         * c-common.h (CTI_C_SIZE_TYPE): Remove.
1750         (c_size_type_node): Likewise.
1751         * c-format.c (T_ST): Use size_type_node, not c_size_type_node.
1752         * tree.h (TI_SIZE_TYPE): New enumeral.
1753         (size_type_node): Likewise.
1754
1755 2002-11-30  Zack Weinberg  <zack@codesourcery.com>
1756
1757         * configure.in: Don't put ${tm_file} into host_xm_file,
1758         build_xm_file, or xm_file.  Do put tm-preds.h into tm_p_file.
1759         Take location of tm-preds.h into account when calculating
1760         tm_p_file_list.
1761         * configure: Regenerate.
1762         * mkconfig.sh: No need for separate TM_DEFINES and XM_DEFINES
1763         arguments.  Do not provide rtx, rtvec, tree, or GTY here.
1764         Remove special case code for tm_p.h and *config.h; add new
1765         special case code for tm.h and tconfig.h. Clean up a bit.
1766
1767         * Makefile.in (tm_file, tm_file_list): New variables set from
1768         @-substitutions.
1769         (GCONFIG_H): Deleted.
1770         (GTM_H, TM_H): New.
1771         (CONFIG_H): Is now just config.h $(host_xm_file_list).
1772         (TM_P_H): Move up with the other mkconfig.sh-generated
1773         headers; don't mention tm-preds.h explicitly.
1774         (tm.h, cs-tm.h): New rule.
1775         (cs-config.h, cs-hconfig.h, cs-tconfig.h, cs-tm_p.h): Adjust
1776         invocations of mkconfig.sh for changes to that program.
1777         (mostlyclean): Delete print-rtl1.c.
1778         (clean): Delete tm.h.
1779         Update dependencies for the files listed below.
1780
1781         * mklibgcc.in:  Add 'coretypes.h $(TM_H)' to libgcc2_c_dep.
1782
1783         * coretypes.h: New file.
1784         * system.h: #define malloc to xmalloc and realloc to xrealloc
1785         when FLEX_SCANNER or YYBISON is defined, independent of the
1786         value of GCC_VERSION.
1787         * alias.c, attribs.c, bb-reorder.c, bitmap.c, builtins.c,
1788         c-aux-info.c, c-common.c, c-convert.c, c-decl.c, c-dump.c,
1789         c-errors.c, c-format.c, c-lang.c, c-lex.c, c-objc-common.c,
1790         c-opts.c, c-parse.in, c-pragma.c, c-pretty-print.c,
1791         c-semantics.c, c-typeck.c, caller-save.c, calls.c, cfg.c,
1792         cfganal.c, cfgbuild.c, cfgcleanup.c, cfglayout.c, cfgloop.c,
1793         cfgrtl.c, collect2.c, combine.c, conflict.c, convert.c,
1794         cppdefault.c, cpperror.c, cppexp.c, cppfiles.c, cpphash.c,
1795         cppinit.c, cpplex.c, cpplib.c, cppmacro.c, cppmain.c,
1796         cppspec.c, cpptrad.c, crtstuff.c, cse.c, cselib.c, dbxout.c,
1797         debug.c, df.c, diagnostic.c, doloop.c, dominance.c,
1798         dummy-conditions.c, dwarf2asm.c, dwarf2out.c, dwarfout.c,
1799         emit-rtl.c, errors.c, et-forest.c, except.c, explow.c,
1800         expmed.c, expr.c, final.c, fix-header.c, flow.c, fold-const.c,
1801         function.c, gcc.c, gccspec.c, gcov-dump.c, gcov-iov.c, gcov.c,
1802         gcse.c, gen-protos.c, genattr.c, genattrtab.c, genautomata.c,
1803         gencheck.c, gencodes.c, genconditions.c, genconfig.c,
1804         genconstants.c, genemit.c, genextract.c, genflags.c,
1805         gengenrtl.c, gengtype-lex.l, gengtype-yacc.y, gengtype.c,
1806         genopinit.c, genoutput.c, genpeep.c, genpreds.c, genrecog.c,
1807         gensupport.c, ggc-common.c, ggc-none.c, ggc-page.c,
1808         ggc-simple.c, global.c, graph.c, haifa-sched.c, hashtable.c,
1809         hooks.c, ifcvt.c, integrate.c, intl.c, jump.c, langhooks.c,
1810         lcm.c, libgcc2.c, line-map.c, lists.c, local-alloc.c, loop.c,
1811         main.c, mbchar.c, mips-tdump.c, mips-tfile.c, mkdeps.c,
1812         optabs.c, params.c, predict.c, prefix.c, print-rtl.c,
1813         print-tree.c, profile.c, protoize.c, ra-build.c,
1814         ra-colorize.c, ra-debug.c, ra-rewrite.c, ra.c, read-rtl.c,
1815         real.c, recog.c, reg-stack.c, regclass.c, regmove.c,
1816         regrename.c, reload.c, reload1.c, reorg.c, resource.c,
1817         rtl-error.c, rtl.c, rtlanal.c, sbitmap.c, scan-decls.c,
1818         scan.c, sched-deps.c, sched-ebb.c, sched-rgn.c, sched-vis.c,
1819         sdbout.c, sibcall.c, simplify-rtx.c, ssa-ccp.c, ssa-dce.c,
1820         ssa.c, stmt.c, stor-layout.c, stringpool.c, timevar.c,
1821         tlink.c, toplev.c, tracer.c, tree-dump.c, tree-inline.c,
1822         tree.c, unroll.c, varasm.c, varray.c, varray.h, vmsdbgout.c,
1823         xcoffout.c, config/darwin-c.c, config/darwin.c,
1824         config/fp-bit.c, config/alpha/alpha.c, config/alpha/vms-cc.c,
1825         config/alpha/vms-ld.c, config/arc/arc.c, config/arm/arm.c,
1826         config/arm/pe.c, config/avr/avr.c, config/c4x/c4x-c.c,
1827         config/c4x/c4x.c, config/cris/cris.c, config/d30v/d30v.c,
1828         config/dsp16xx/dsp16xx.c, config/fr30/fr30.c,
1829         config/frv/frv.c, config/h8300/h8300.c, config/i370/i370-c.c,
1830         config/i370/i370.c, config/i386/i386.c, config/i386/winnt.c,
1831         config/i960/i960-c.c, config/i960/i960.c,
1832         config/ia64/ia64-c.c, config/ia64/ia64.c, config/ip2k/ip2k.c,
1833         config/m32r/m32r.c, config/m68hc11/m68hc11.c,
1834         config/m68k/m68k.c, config/m88k/m88k.c, config/mcore/mcore.c,
1835         config/mips/irix6-libc-compat.c, config/mips/mips.c,
1836         config/mmix/mmix.c, config/mn10200/mn10200.c,
1837         config/mn10300/mn10300.c, config/ns32k/ns32k.c,
1838         config/pa/pa.c, config/pdp11/pdp11.c, config/romp/romp.c,
1839         config/rs6000/rs6000-c.c, config/rs6000/rs6000.c,
1840         config/s390/s390.c, config/sh/sh.c, config/sparc/gmon-sol2.c,
1841         config/sparc/sparc.c, config/stormy16/stormy16.c,
1842         config/v850/v850-c.c, config/v850/v850.c, config/vax/vax.c,
1843         config/xtensa/xtensa.c, objc/objc-act.c, objc/objc-lang.c:
1844         Include coretypes.h and tm.h.
1845
1846         * genattrtab.c, genconditions.c, genemit.c, genextract.c,
1847         gengenrtl.c, gengtype.c, genopinit.c, genoutput.c, genpeep.c,
1848         genrecog.c: Include coretypes.h and tm.h from the file
1849         generated by this program.
1850
1851         * unwind-dw2-fde-darwin.c, unwind-dw2-fde-glibc.c,
1852         unwind-dw2-fde.c, unwind-dw2.c, unwind-sjlj.c: Include
1853         coretypes.h and tm.h, and tsystem.h when not already included.
1854         No need to include stddef.h nor stdlib.h.
1855
1856         * fixinc/fixlib.h: Include coretypes.h and tm.h.  Do not
1857         include auto-host.h or ansidecl.h/
1858         * fixinc/server.h: Do not include stdio.h, unistd.h, or fixlib.h.
1859         * fixinc/procopen.c: Include server.h after fixlib.h.  Do not
1860         include auto-host.h, ansidecl.h, or system.h.
1861         * fixinc/server.c: Likewise.  Also, do not include signal.h,
1862         and do not redefine volatile.
1863
1864 Sat Nov 30 17:16:46 CET 2002  Jan Hubicka  <jh@suse.cz>
1865
1866         * i386.md (movdf_integer):  Always enable in 64bit.
1867         (movdf_nointeger): Always disable in 64bit.
1868
1869 2002-11-30  John David Anglin  <dave@hiauly1.hia.nrc.ca>
1870
1871         * cfg.c (dump_flow_info): Use max_reg_num () to determine the largest
1872         pseudo register number plus 1.
1873
1874 Fri Nov 29 20:10:56 2002  J"orn Rennecke <joern.rennecke@superh.com>
1875
1876         * expmed.c (store_bit_field): Use int_mode_for_mode to find
1877         corresponding mode of non-integer mode, unless it is VOIDmode.
1878
1879 2002-11-29  Hans-Peter Nilsson  <hp@bitrange.com>
1880
1881         * cpplib.c (_cpp_test_assertion): Default *value to 0.
1882
1883         * cppexp.c (num_part_mul): Initialize result.unsignedp, to 1.
1884
1885 2002-11-29  Ulrich Weigand  <uweigand@de.ibm.com>
1886
1887         * config/s390/t-crtstuff: New target makefile fragment.
1888         * config.gcc [s390-*-linux, s390x-*-linux]: Use it.
1889
1890 2002-11-29  Kazu Hirata  <kazu@cs.umass.edu>
1891
1892         * config/h8300/h8300.md (movsi_h8300hs): Change the order of
1893         alternatives to correct the length when the memory operand is
1894         either pre_dec or post_inc.
1895
1896 2002-11-29  Kazu Hirata  <kazu@cs.umass.edu>
1897
1898         * config/h8300/h8300.md (an anonymous pattern): Give an
1899         internal name *tst_extzv_bitqi_1_n.
1900         Accept bit_operand instead of bit_memory_operand.
1901         Do not accept bit tests with the MSB.
1902         (*tst_extzv_memqi_1_n): New.
1903
1904 Thu Nov 28 23:56:24 CET 2002  Jan Hubicka  <jh@suse.cz>
1905
1906         * i386.c (ix86_expand_int_movcc): Add copy_rtx to avoid invalid RTX
1907         sharing when operand is SUBREG.
1908
1909 Thu Nov 28 08:57:26 CET 2002  Jan Hubicka  <jh@suse.cz>
1910
1911         * athlon.md (athlon-decodev): New reservation unit.
1912         (athlon-direct0): New reservation.
1913         (athlon-vector): New use athlon-decodev.
1914         (athlon-double, athlon-direct): Better model.
1915         (athlon_imul_k8): Use athlon-direct0.
1916         (athlon_movlpd_load): New insn reservation.
1917
1918 2002-11-28  Kazu Hirata  <kazu@cs.umass.edu>
1919
1920         * config/h8300/h8300.c (h8300_eightbit_constant_address_p):
1921         Fix a comment typo.
1922         (h8300_tiny_constant_address_p): Likewise.
1923
1924 2002-11-28  Michael Matz  <matz@suse.de>
1925
1926         * doc/passes.texi: Mention the other register allocator.
1927
1928 2002-11-28  Kazu Hirata  <kazu@cs.umass.edu>
1929
1930         * config/h8300/h8300.md (6 new peephole2 patterns): New.
1931
1932 2002-11-28  Jakub Jelinek  <jakub@redhat.com>
1933
1934         * config.gcc (x86_64-*-linux*) [tmake_file]: Remove i386/t-crtstuff.
1935         * config/t-linux (CRTSTUFF_T_CFLAGS_S): Add $(CRTSTUFF_T_CFLAGS).
1936         * config/i386/t-linux64 (CRTSTUFF_T_CFLAGS): Define.
1937
1938 2002-11-28  Kazu Hirata  <kazu@cs.umass.edu>
1939
1940         * config/h8300/h8300.c (h8300_and_costs): New.
1941         * config/h8300/h8300.h (RTX_COSTS): Use h8300_and_costs.
1942         * config/h8300/h8300-protos.h: Add a prototype for
1943         h8300_and_costs.
1944
1945 Wed Nov 27 20:34:13 CET 2002  Jan Hubicka  <jh@suse.cz>
1946
1947         * i386.c (x86_sse_partial_regs_for_cvtsd2ss): New.
1948         * i386.h (x86_sse_partial_regs_for_cvtsd2ss): Declare.
1949         (TARGET_SSE_PARTIAL_REGS_FOR_CVTSD2SS): New macro.
1950         * i386.md (truncdfsf patterns and splitters): Use
1951         TARGET_SSE_PARTIAL_REGS_FOR_CVTSD2SS
1952
1953 2002-11-27  Zack Weinberg  <zack@codesourcery.com>
1954
1955         * config/rs6000/rs6000.c (altivec_init_builtins): Make the
1956         pointer argument in the prototypes of the following builtins
1957         be (const TYPE *) rather than (TYPE *):
1958          + __builtin_altivec_ld_internal_4sf
1959          + __builtin_altivec_ld_internal_4si
1960          + __builtin_altivec_ld_internal_8hi
1961          + __builtin_altivec_ld_internal_16qi
1962          + __builtin_altivec_lvsl
1963          + __builtin_altivec_lvsr
1964          + __builtin_altivec_lvebx
1965          + __builtin_altivec_lvehx
1966          + __builtin_altivec_lvewx
1967          + __builtin_altivec_lvxl
1968          + __builtin_altivec_lvx
1969          + __builtin_altivec_dst
1970          + __builtin_altivec_dstt
1971          + __builtin_altivec_dstst
1972          + __builtin_altivec_dststt
1973
1974 2002-11-27  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
1975
1976         * except.c (default_exception_section): Move variable into the
1977         scope where it is used.
1978
1979 2002-11-27  Krister Walfridsson  <cato@df.lth.se>
1980
1981         * config.gcc (*-*-netbsd[2-9]*, *-*-netbsdelf[2-9]*): Test for
1982         correct version.
1983
1984 2002-11-27  Kazu Hirata  <kazu@cs.umass.edu>
1985
1986         * config/h8300/h8300.h (OK_FOR_U): Remove extra parentheses.
1987
1988 2002-11-27  Kazu Hirata  <kazu@cs.umass.edu>
1989
1990         * config/h8300/h8300.c (h8300_shift_costs): New.
1991         * config/h8300/h8300.h (RTX_COSTS): Use h8300_shift_costs.
1992         * config/h8300/h8300-protos.h: Add a prototype for
1993         h8300_shift_costs.
1994
1995 2002-11-27  Jim Wilson  <wilson@redhat.com>
1996
1997         * config/rs6000/spe.md (spu_evsplatfi, spu_evsplati): Swap operands
1998         in output template.
1999
2000 2002-11-27  Casper S. Hornstrup  <chorns@users.sourceforge.net>
2001
2002         * config/i386/i386.h (DLL_IMPORT_EXPORT_PREFIX): Define.
2003         * config/i386/winnt.c (i386_pe_dllexport_name_p): Use
2004         DLL_IMPORT_EXPORT_PREFIX, not '@'.
2005         (i386_pe_dllimport_name_p): Likewise.
2006         (i386_pe_mark_dllexport): Likewise.
2007         (i386_pe_mark_dllimport): Likewise.
2008         (i386_pe_encode_section_info): Likewise.
2009         (i386_pe_strip_name_encoding): Likewise.
2010
2011 2002-11-27  Richard Henderson  <rth@redhat.com>
2012
2013         * mkmap-symver.awk (BEGIN): Set sawsymbol false.
2014         (nm && NF == 3): Set sawsymbol true.
2015         (END): Exit if no symbols seen.
2016         (output): Fix map syntax error if no globals for the version.
2017
2018 Wed Nov 27 14:45:46 CET 2002  Jan Hubicka  <jh@suse.cz>
2019
2020         * builtins.def (DEF_C99_BUILTIN): Fix.
2021
2022 2002-11-26  Kaz Kojima  <kkojima@gcc.gnu.org>
2023
2024         * config/sh/lib1funcs.asm (FUNC, ENDFUNC0, ENDFUNC): New macros.
2025         (all): Add .size and .type information.
2026
2027 Tue Nov 26 22:43:50 CET 2002  Jan Hubicka  <jh@suse.cz>
2028
2029         * i386.c (ix86_expand_int_movcc):  Do not emit lea for short mode on
2030         partial_reg_stall target.
2031
2032 Tue Nov 26 22:27:47 CET 2002  Jan Hubicka  <jh@suse.cz>
2033
2034         * i386.md (movhicc): Allow general operand.
2035         (movqicc): New expander.
2036         (movqicc_noc): New pattern.
2037         * i386.c (ix86_expand_carry_flag_compare): New function.
2038         (ix86_expand_int_movcc): Optimize harder using sbb; support more
2039         HImode conversion; support QImode conditional moves
2040
2041 Tue Nov 26 16:30:59 CET 2002  Jan Hubicka  <jh@suse.cz>
2042
2043         * i386.c (FAST_PROLOGUE_INSN_COUNT): Set to 20.
2044         (ix86_expand_prologue): Multiply the count by amount of registers to be
2045         pushed.
2046
2047 Tue Nov 26 15:55:27 CET 2002  Jan Hubicka  <jh@suse.cz>
2048
2049         * i386.c (override_options): Error about wrong -mcpu on x86-64
2050         compilation.
2051
2052 2002-11-26  NIIBE Yutaka  <gniibe@m17n.org>
2053
2054         * config/sh/linux.h (FUNCTION_PROFILER): Implemented.
2055
2056 Tue Nov 26 00:14:20 CET 2002  Jan Hubicka  <jh@suse.cz>
2057
2058         * i386-protos.h (x86_extended_QIreg_mentioned_p,
2059         x86_extended_reg_mentioned_p): Declare.
2060         * i386.c (extended_reg_mentioned_1): New static function.
2061         (x86_extended_QIreg_mentioned_p,
2062         x86_extended_reg_mentioned_p): New global functions.
2063         * i386.h (REX_SSE_REGNO_P): New macro.
2064         * i386.md (prefix_rex): New attribute.
2065         (length attribute): Add rex.
2066
2067 2002-11-26  Andrew Haley  <aph@redhat.com>
2068
2069         * unwind-sjlj.c (_Unwind_FindEnclosingFunction): Rename
2070         from_Unwind_Find_Enclosing_Function.
2071         * unwind-dw2.c (_Unwind_FindEnclosingFunction): Likewise.
2072         * config/ia64/unwind-ia64.c (_Unwind_FindEnclosingFunction): Likewise.
2073         * libgcc-std.ver (_Unwind_FindEnclosingFunction): Rename from
2074         _Unwind_Find_Enclosing_Function, export @@GCC_3.3.
2075         * unwind.h (_Unwind_FindEnclosingFunction): Add.
2076
2077 2002-11-26  Hartmut Penner  <hpenner@de.ibm.com>
2078
2079         * config/s390/s390.c (390_output_constant_pool): Set alignment
2080         before label in 64 bit mode, behind otherwise.
2081
2082 2002-11-26  Richard Henderson  <rth@redhat.com>
2083
2084         * c-common.c (handle_visibility_attribute): Accept "default".
2085         * tree.h (enum symbol_visibility): New.
2086         (decl_visibility): Declare.
2087         * target.h (gcc_target.visibility): Take visibility arg as integer.
2088         * varasm.c (default_assemble_visibility): Likewise.
2089         (decl_visibility): New.
2090         (maybe_assemble_visibility): Use it.
2091         * output.h (default_assemble_visibility): Update prototype.
2092         * config/rs6000/rs6000.c (rs6000_assemble_visibility): Take
2093         visibility arg as integer.
2094         * doc/extend.texi: Document default visibility.
2095
2096 2002-11-26  Kazu Hirata  <kazu@cs.umass.edu>
2097
2098         * config/h8300/h8300.c: Adjust spacing.
2099         * config/h8300/h8300.h: Likewise.
2100
2101 2002-11-26  Richard Henderson  <rth@redhat.com>
2102
2103         * hooks.c (hook_bool_void_false, hook_void_tree_int,
2104         hook_void_FILEptr_constcharptr): Rename so that the return
2105         type is first.
2106         (hook_int_tree_tree_1, hook_void_tree, hook_void_tree_treeptr,
2107         hook_bool_tree_false): New.
2108         * hooks.h: Update.
2109         * langhooks-def.h: Update for renames.
2110         * target-def.h: Likewise.
2111         * tree.c (default_comp_type_attributes,
2112         default_set_default_type_attributes, default_insert_attributes,
2113         default_function_attribute_inlinable_p,
2114         default_ms_bitfield_layout_p): Remove.
2115         * tree.h: Update.
2116
2117 2002-11-26  John David Anglin  <dave@hiauly1.hia.nrc.ca>
2118
2119         * pa-protos.h (function_value): New prototype.
2120         * pa.c (function_value): Use a PARALLEL to return small aggregates on
2121         TARGET_64BIT.
2122         * pa.h (FUNCTION_VALUE): Use function_value.
2123         * pa.md (call_value_internal_symref, call_value_internal_reg_64bit,
2124         call_value_internal_reg, sibcall_value_internal_symref,
2125         sibcall_value_internal_symref_64bit): Remove =rf constraint on return
2126         value.
2127
2128 2002-11-26  John David Anglin  <dave@hiauly1.hia.nrc.ca>
2129
2130         * expr.c (gen_group_rtx, emit_group_move): New functions.
2131         * expr.h (gen_group_rtx, emit_group_move): Prototype.
2132         * function.c (expand_function_start): Use gen_group_rtx to create a
2133         PARALLEL rtx to hold the return value when the real return rtx is a
2134         PARALLEL.
2135         (expand_function_end): Use emit_group_move to move the return value
2136         from a PARALLEL to the real return registers.
2137         * rtl.h (REG_FUNCTION_VALUE_P): Allow function values to be returned
2138         in PARALLELs.
2139
2140 2002-11-26  Jason Thorpe  <thorpej@wasabisystems.com>
2141
2142         * config/t-libc-ok: Fix typo.
2143
2144 2002-11-26  Jakub Jelinek  <jakub@redhat.com>
2145
2146         * configure.in: Move AC_CANONICAL_SYSTEM and AC_ARG_PROGRAM back
2147         before AC_PROG_CC.
2148         * configure: Rebuilt.
2149
2150 2002-11-26  Nathan Sidwell  <nathan@codesourcery.com>
2151
2152         * c-decl.c: (start_struct): Commonize flag setting.
2153
2154 2002-11-26  Jason Thorpe  <thorpej@wasabisystems.com>
2155
2156         * config/rs6000/rs6000.h (RS6000_CPU_CPP_ENDIAN_BUILTINS): New.
2157         * config/rs6000/rs6000-c.c (rs6000_cpu_cpp_builtins): Use
2158         RS6000_CPU_CPP_ENDIAN_BUILTINS.
2159         * config/rs6000/netbsd.h (RS6000_CPU_CPP_ENDIAN_BUILTINS): Redefine.
2160
2161 2002-11-26  Hartmut Penner  <hpenner@de.ibm.com>
2162
2163         * config/s390/s390.md (literal_pool_64, literal_pool_31 ): New
2164         insns.
2165         * config/s390/s390.c (struct machine_function): Introduction of
2166         struct machine_function.
2167         (s390_output_symbolic_const): Use of cfun.
2168         (s390_optimize_prolog): Likewise.
2169         (s390_fixup_clobbered_return_reg): Likewise.
2170         (s390_frame_info): Likewise.
2171         (s390_emit_prologue, s390_emit_epilogue): Likewise.
2172         (s390_init_machine_status): New function.
2173         (override_options): call s390_init_machine_status.
2174         * config/s390/s390-protos.h (s390_output_constant_pool): Changed
2175         prototype.
2176
2177 2002-11-26  Jakub Jelinek  <jakub@redhat.com>
2178
2179         * varasm.c (output_constant_pool): For pool constants in mergeable
2180         section ensure each constant is padded to multiple of entity size.
2181
2182 2002-11-26  Jakub Jelinek  <jakub@redhat.com>
2183
2184         * varasm.c (default_exception_section): Move to...
2185         * except.c (default_exception_section): ... here. Make
2186         .gcc_except_table read-only if it is not expected to have any
2187         dynamic relocations and linker handles it.
2188         * dwarf2out.c (default_eh_frame_section): Make .eh_frame read-only
2189         if it is not expected to have any dynamic relocations and linker
2190         handles it.
2191         * configure.in (HAVE_LD_RO_RW_SECTION_MIXING): Check what ld does
2192         when linking read-only and read-write sections together.
2193         * configure, config.in: Rebuilt.
2194         * crtstuff.c (EH_FRAME_SECTION_CONST): Define.
2195         (__EH_FRAME_BEGIN__, __FRAME_END__): Add it.
2196
2197 Mon Nov 25 18:32:37 CET 2002  Jan Hubicka  <jh@suse.cz>
2198
2199         * i386.md (pushsf_rex64): Fix typo.
2200
2201 2002-11-25  Aldy Hernandez  <aldyh@redhat.com>
2202
2203         * config/rs6000/spe.h (__ev_create_sfix32_fs): Change macro into
2204         new function.
2205         (__ev_create_ufix32_fs): Same.
2206         (__ev_get_sfix32_fs_internal): New.
2207         (__ev_get_sfix32_fs): Define to use function.
2208         (__ev_get_ufix32_fs_internal): New.
2209         (__ev_get_ufix32_fs): Define to use function.
2210         (__ev_get_upper_ufix32_fs): Call __ev_get_ufix32_fs.
2211         (__ev_get_lower_ufix32_fs): Same.
2212         (__ev_get_upper_sfix32_fs): Call __ev_get_sfix32_fs.
2213         (__ev_get_lower_sfix32_fs): Same.
2214         (__ev_set_sfix32_fs_internal): New.
2215         (__ev_set_ufix32_fs_internal): New.
2216         (__ev_set_sfix32_fs): Call __ev_set_sfix32_fs_internal.
2217         (__ev_set_ufix32_fs): Call __ev_set_ufix32_fs_internal.
2218         (__ev_set_upper_sfix32_fs): Call function.
2219         (__ev_set_lower_sfix32_fs): Same.
2220         (__ev_set_upper_ufix32_fs): Same.
2221         (__ev_set_lower_ufix32_fs): Same.
2222
2223 2002-11-25  Douglas B Rupp  <rupp@gnat.com>
2224
2225         * gcc.c (do_spec_1): Reset delete_this_arg to zero.
2226
2227 2002-11-25  Jason Thorpe  <thorpej@wasabisystems.com>
2228
2229         * config/elfos.h (HANDLE_SYSV_PRAGMA): Define as 1.
2230         * config/interix.h (HANDLE_SYSV_PRAGMA): Likewise.
2231         * config/linux-aout.h (HANDLE_SYSV_PRAGMA): Likewise.
2232         * config/lynx-ng.h (HANDLE_SYSV_PRAGMA): Likewise.
2233         * config/lynx.h (HANDLE_SYSV_PRAGMA): Likewise.
2234         * config/netbsd.h (HANDLE_SYSV_PRAGMA): Likewise.
2235         * config/openbsd.h (HANDLE_SYSV_PRAGMA: Likewise.
2236         * config/alpha/elf.h (HANDLE_SYSV_PRAGMA): Likewise.
2237         * config/arm/netbsd.h (HANDLE_SYSV_PRAGMA): Likewise.
2238         * config/cris/aout.h (HANDLE_SYSV_PRAGMA): Likewise.
2239         * config/d30v/d30v.h (HANDLE_SYSV_PRAGMA): Likewise.
2240         * config/frv/frv.h (HANDLE_SYSV_PRAGMA): Likewise.
2241         * config/i386/djgpp.h (HANDLE_SYSV_PRAGMA): Likewise.
2242         * config/i386/i386-interix.h (HANDLE_SYSV_PRAGMA): Likewise.
2243         * config/i386/vxi386.h (HANDLE_SYSV_PRAGMA): Likewise.
2244         * config/ia64/ia64.h (HANDLE_SYSV_PRAGMA): Likewise.
2245         * config/m88k/m88k.h (HANDLE_SYSV_PRAGMA): Likewise.
2246         * config/mmix/mmix.h (HANDLE_SYSV_PRAGMA): Likewise.
2247         * config/rs6000/aix.h (HANDLE_SYSV_PRAGMA): Likewise.
2248         * config/rs6000/darwin.h (HANDLE_SYSV_PRAGMA): Likewise.
2249         * config/sparc/linux-aout.h (HANDLE_SYSV_PRAGMA): Likewise.
2250         * config/sparc/vxsparc64.h (HANDLE_SYSV_PRAGMA): Likewise.
2251         * config/stormy16/stormy16.h (HANDLE_SYSV_PRAGMA): Likewise.
2252         * config/alpha/osf.h (HANDLE_SYSV_PRAGMA): Don't undef before
2253         defining.
2254         * config/i386/sco5.h (HANDLE_SYSV_PRAGMA): Likewise.
2255         * config/mips/iris5.h (HANDLE_SYSV_PRAGMA): Likewise.
2256
2257 2002-11-25  Dave Pitts  <dpitts@cozx.com>
2258
2259         * gcc/fixinc/mkfixinc.sh: add i370-*-openedition to bypass fixinc list
2260
2261 2002-11-25  Kazu Hirata  <kazu@cs.umass.edu>
2262
2263         * config/h8300/h8300.md (an anonymous pattern): New.
2264
2265 2002-11-25  Richard Henderson  <rth@redhat.com>
2266
2267         * alias.c (find_base_value): Use new_reg_base_value if it's live.
2268         (copying_arguments): Make boolean.
2269
2270 2002-11-25  Jason Thorpe  <thorpej@wasabisystems.com>
2271
2272         * gcc.c (static_spec_functions): Add if-exists-else spec
2273         function.
2274         (if_exists_else_spec_function): New function.
2275         * doc/invoke.texi: Document the if-exists-else spec function.
2276
2277         * config/netbsd-elf.h (NETBSD_STARTFILE_SPEC): For -static, use
2278         "%:if-exists-else(crtbeginT%O%s crtbegin%O%s)".
2279
2280 2002-11-25  Jason Thorpe  <thorpej@wasabisystems.com>
2281
2282         * config.gcc (powerpc-*-netbsd*): Replace "svr4.h" with
2283         "netbsd.h netbsd-elf.h" in tm_file.  Set tmake_file to
2284         "${tmake_file} rs6000/t-netbsd".
2285         * config/rs6000/netbsd.h: Rewrite.
2286         * config/rs6000/t-netbsd: New file.
2287
2288 2002-11-25  Kazu Hirata  <kazu@cs.umass.edu>
2289
2290         * config/h8300/h8300.md (an anonymous pattern): Relax the
2291         condition for the pattern.
2292
2293 2002-11-25  Aldy Hernandez  <aldyh@redhat.com>
2294
2295         * config/rs6000/rs6000.h (enum rs6000_builtins): Remove evmwlssf,
2296         evmwlsmf, evmwlssfa, evmwlsmfa, evmwlssfaaw, evmwlsmfaaw,
2297         evmwlssfanw, evmwlsmfanw.
2298
2299         * config/rs6000/rs6000.c (bdesc_2arg): Same.
2300
2301         * config/rs6000/spe.md: Same for patterns.
2302
2303 2002-11-25  Christian Ehrhardt  <ehrhardt@mathematik.uni-ulm.de>
2304
2305         PR c/8639
2306         * fold-const.c (extract_muldiv): Don't propagate division unless
2307         both arguments are multiples of C.
2308
2309 2002-11-25  Andrew Haley  <aph@redhat.com>
2310
2311         * libgcc-std.ver (_Unwind_Find_Enclosing_Function): Add.
2312         * config/ia64/unwind-ia64.c (_Unwind_Find_Enclosing_Function): New.
2313         * unwind-sjlj.c (_Unwind_Find_Enclosing_Function): Likewise.
2314         * unwind-dw2.c (_Unwind_Find_Enclosing_Function): Likewise.
2315
2316 Sun Nov 24 10:38:04 CET 2002  Jan Hubicka  <jh@suse.cz>
2317
2318         * i386.c (x86_use_ffreep): New global variable.
2319         * i386.h (x86_use_frfeep): Declare
2320         (TARGET_USE_FFREEP): New macro
2321         * i386.md  (movs?f*): Use freep when asked for.
2322         (push?f): Remove dead code.
2323
2324 2002-11-24  Kazu Hirata  <kazu@cs.umass.edu>
2325
2326         * config/h8300/h8300.c (h8300_init_once): Fix a typo in the
2327         target help message.
2328
2329 2002-11-24  Jason Thorpe  <thorpej@wasabisystems.com>
2330
2331         * config.gcc (*-*-netbsd*1.[7-9]*, *-*-netbsd*[2-9]*): Set
2332         extra_parts to "crtbegin.o crtend.o crtbeginS.o crtendS.o
2333         crtbeginT.o".
2334         (arm*-*-netbsd*, i[34567]86-*-netbsd*, m68k*-*-netbsd*)
2335         (ns32k-*-netbsd*, sparc-*-netbsd*, vax-*-netbsd*): Set extra_parts
2336         to "" for a.out configurations.
2337         * config/t-netbsd (CRTSTUFF_T_CFLAGS): Set to "-fPIC".
2338
2339 2002-11-24  Jason Thorpe  <thorpej@wasabisystems.com>
2340
2341         * config/alpha/netbsd.h (CPP_SUBTARGET_SPEC): Just use
2342         NETBSD_CPP_SPEC directly.
2343         (SUBTARGET_EXTRA_SPECS): Remove netbsd_cpp_spec.  Add
2344         netbsd_endfile_spec.
2345         (ENDFILE_SPEC): Use %(netbsd_endfile_spec).
2346
2347 2002-11-24  Jason Thorpe  <thorpej@wasabisystems.com>
2348
2349         * config/netbsd-elf.h (STARTFILE_SPEC): Rename to
2350         NETBSD_STARTFILE_SPEC.
2351         (STARTFILE_SPEC): Redefine in terms of NETBSD_STARTFILE_SPEC.
2352         (ENDFILE_SPEC): Likewise.
2353         * config/netbsd.h (LIB_SPEC, LIBGCC_SPEC): Likewise.
2354
2355 2002-11-24  Andreas Schwab  <schwab@suse.de>
2356
2357         * Makefile.in (install-driver): Remove versioned link before
2358         trying to create it.
2359
2360         * config/m68k/m68k.c: Fix typo in last change defining
2361         TARGET_ASM_CAN_OUTPUT_MI_THUNK.
2362
2363 2002-11-23  H.J. Lu <hjl@gnu.org>
2364
2365         * aclocal.m4: Include ../config/accross.m4.
2366         (gcc_AC_COMPILE_CHECK_SIZEOF): Removed.
2367         (gcc_AC_C_COMPILE_ENDIAN): Removed.
2368         (gcc_AC_C_FLOAT_FORMAT): Check $ac_cv_c_bigendian
2369         instead of $ac_cv_c_compile_endian.
2370
2371         * configure.in: Replace gcc_AC_COMPILE_CHECK_SIZEOF with
2372         AC_COMPILE_CHECK_SIZEOF.
2373         Replace gcc_AC_C_COMPILE_ENDIAN with AC_C_BIGENDIAN_CROSS.
2374         * configure: Rebuild.
2375
2376 2002-11-23  Kazu Hirata  <kazu@cs.umass.edu>
2377
2378         * config/h8300/h8300.c (print_operand): Update the use of
2379         h8300_tiny_constant_address_p.
2380         (h8300_adjust_insn_length): Likewise.
2381         (h8300_tiny_constant_address_p): Check if the given rtx is a
2382         variable declared with __attribute__ ((tiny_data)).
2383
2384 2002-11-22  Dale Johannesen  <dalej@apple.com>
2385
2386         * toplev.c (rest_of_compilation):  Fix comments.
2387
2388 2002-11-22  Geoffrey Keating  <geoffk@apple.com>
2389
2390         * aclocal.m4 (ac_cv_func_mmap_dev_zero): Darwin does not
2391         allow mmap from /dev/zero.  Don't make decisions for the host
2392         based on presence or absence of /dev/zero on the build machine.
2393         (ac_cv_func_mmap_anon): Darwin does have working MMAP_ANON.
2394         (AC_FUNC_MMAP_FILE): Darwin does have mmap of a file.
2395         * configure: Regenerate.
2396
2397 2002-11-22  Daniel Jacobowitz  <drow@mvista.com>
2398
2399         * gcc.c (make_relative_prefix, split_directories)
2400         (free_split_directories): Removed.
2401
2402 2002-11-22  Daniel Jacobowitz  <drow@mvista.com>
2403
2404         * configure.in: Set insn=nop for DWARF-2 tests on ARM.
2405         * configure: Regenerated.
2406
2407 2002-11-22  Kazu Hirata  <kazu@cs.umass.edu>
2408
2409         * config/h8300/h8300.c (compute_a_shift_length): Fix the insn
2410         length computation when xor.l is output.
2411
2412 2002-11-21  Douglas B Rupp  <rupp@gnat.com>
2413
2414         * alpha.md (movstrdi, clrstrdi): New VMS patterns.
2415         (call_vms_1, call_value_vms_1): Cleanup syntax.
2416
2417 Thu Nov 21 19:20:27 CET 2002  Jan Hubicka  <jh@suse.cz>
2418
2419         * athlon.md (define_atuomaton): Add athlon_load.
2420         (athlon-double): New reservation.
2421         (athlon-ieu0): New CPU unit.
2422         (athlon-load?): Use athlon_load automaton.
2423         (*_k8 reservations): New.
2424         (other insn revervations): Activate for K8.
2425
2426 Thu Nov 21 15:07:42 CET 2002  Jan Hubicka  <jh@suse.cz>
2427
2428         * cfgrtl.c (verify_flow_info):  Accept EDGE_CAN_FALLTHRU flag.
2429
2430 2002-11-21  Jim Wilson  <wilson@redhat.com>
2431
2432         * config/rs6000/rs6000.c (function_arg): Set inner mode of SPE
2433         vectors to SI.
2434
2435 2002-11-21  Bob Wilson  <bob.wilson@acm.org>
2436
2437         * config/xtensa/xtensa-protos.h (xtensa_copy_incoming_a7): Declare.
2438         * config/xtensa/xtensa.c (struct machine_function): Add
2439         incoming_a7_copied flag.
2440         (xtensa_copy_incoming_a7): Define.
2441         (xtensa_emit_move_sequence): Use xtensa_copy_incoming_a7.
2442         * config/xtensa/xtensa.md (movdi, movsf, movdf): Ditto.
2443
2444 Thu Nov 21 23:52:04 CET 2002  Jan Hubicka  <jH@suse.cz>
2445
2446         * i386-protos.h (x86_64_sign_extended_value): Fix prototype.
2447         * i386.c (x86_64_general_operand, x86_64_szext_general_operand,
2448         x86_64_nonmemory_operand, x86_64_movabs_operand,
2449         x86_64_szext_nonmemory_operand, x86_64_immediate_operand,
2450         ix86_expand_int_movcc): Update call of x86_64_sign_extended_value.
2451         (local_symbolic_operand): Do not care the 64bit limits.
2452         (x86_64_sign_extended_value): Remove allow_rip support.
2453         (legitimate_pic_address_disp_p): Handle all cases allowed
2454         with RIP addressing.
2455         (legitimate_address_p): Use legitimate_pic_address_disp_p for PIC.
2456         (legitimize_pic_address): Reorganize.
2457         * i386.h (EXTRA_CONSTRAINT): Update call of x86_64_sign_extended_value.
2458
2459 2002-11-21  Jason Thorpe  <thorpej@wasabisystems.com>
2460
2461         * config.gcc (arm*-*-netbsdelf*): Enable configuration.
2462         * config/arm/netbsd-elf.h: New file.
2463
2464 2002-11-21  Jason Thorpe  <thorpej@wasabisystems.com>
2465
2466         * config/arm/elf.h (SUBTARGET_EXTRA_SPECS): Add
2467         subtarget_asm_float_spec.
2468         (SUBTARGET_ASM_FLOAT_SPEC): Define, moving the
2469         defaults from...
2470         (ASM_SPEC): ...here.  Use subtarget_asm_float_spec.
2471
2472 2002-11-21  Nick Clifton  <nickc@redhat.com>
2473
2474         * config/fr30/fr30.md (movsf_constant_store): Move code to
2475         detect 0.0 into fr30.c.
2476         * config/fr30/fr30-protos.h (fr30_const_double_is_zero):
2477         Prototype.
2478         * config/fr30/fr30.c (fr30_const_double_is_zero): New
2479         function.  Return true if the rtx is 0.0.
2480
2481 2002-11-21  Jason Thorpe  <thorpej@wasabisystems.com>
2482
2483         * config/arm/elf.h (ASM_SPEC, LINK_SPEC): Pass -EL
2484         if -mlittle-endian is specified.
2485
2486 2002-11-21  Richard Earnshaw  <rearnsha@arm.com>
2487
2488         PR optimization/2903
2489         * arm.md (anddi_notzesidi_di): Operand 2 is inverted not operand 1.
2490         (anddi_notsesidi_di): Likewise.
2491
2492 2002-11-21  Kazu Hirata  <kazu@cs.umass.edu>
2493
2494         * config/h8300/h8300.c (print_operand): Use
2495         h8300_eightbit_constant_address_p and
2496         h8300_tiny_constant_address_p.
2497         (h8300_adjust_insn_length): Likewise.
2498         * config/h8300/h8300.h (EIGHTBIT_CONSTANT_ADDRESS_P): Remove.
2499         (TINY_CONSTANT_ADDRESS_P): Likewise.
2500         (OK_FOR_U): Use eightbit_constant_address_p.
2501
2502 2002-11-21  Ulrich Weigand  <uweigand@de.ibm.com>
2503
2504         * config/s390/libgcc-libc.ver: Add multilib support.
2505         * config/s390/linux.h (MULTILIB_DEFAULT): Define.
2506         * config/s390/t-linux64 (MULTILIB_OPTIONS, MULTILIB_DIRNAMES,
2507         MULTILIB_OSDIRNAMES, LIBGCC, INSTALL_LIBGCC,
2508         EXTRA_MULTILIB_PARTS): Define.
2509
2510 2002-11-21  Richard Earnshaw  <rearnsha@arm.com>
2511
2512         * arm.c (arm_get_frame_size): A leaf function does not need its
2513         stack padding to an aligned boundary if it has no frame.
2514         (thumb_get_frame_size): Likewise.
2515
2516 Wed Nov 20 22:25:53 CET 2002  Jan Hubicka  <jh@suse.cz>
2517
2518         * x86-64.h (MCOUNT_NAME): Fix typo in my previous patch.
2519         (override_options): Likewise.
2520
2521 Wed Nov 20 19:07:17 CET 2002  Jan Hubicka  <jh@suse.cz>
2522
2523         * config.gcc: Add k8 target alias support
2524         * i386.c (_cost): Declare costs for various variants of divides and
2525         multiplies.
2526         (k8_cost): New.
2527         (m_K8, m_ATHLON_K8): New macros.
2528         (x86_use_leave, x86_push_memory, x86_movx, x86_unroll_strlen,
2529         x86_cmove, x86_3dnow_a, x86_deep_branch, x86_use_fiop,
2530         x86_promote_QImode, x86_sub_esp_?, x86_add_esp_?,
2531         x86_integer_DFmode_moves, x86_partial_reg_dependency,
2532         x86_memory_mismatch_stall, x86_accumulate_outgoing_args,
2533         x86_prologue_using_move, x86_epilogue_using_move,
2534         x86_arch_always_fancy_math_387, x86_sse_partial_regs,
2535         x86_sse_typeless_stores): Set for K8
2536         (override_options): Add k8 support; fix athlon alignment;
2537         complain about non-x86-64 capable CPU being used in x86-64 compilation.
2538         (ix86_issue_rate): Set for K8.
2539         (ix86_adjust_cost, ia32_use_dfa_pipeline_interface,
2540         x86_machine_dependent_reorg): Handle K8 like
2541         * i386.h
2542         (x86_costs):  Change mult_init and divide into array.
2543         (TARGET_K8, TARGET_ATHLON): New macros.
2544         (MODE_INDEX): New macro.
2545         (RTX_COST): Use new costs.
2546         (TARGET_CPU_CPP_BUILTINS):  Define __k8__ and __tune_k8__.
2547         (TARGET_CPU_DEFAULT_NAMES): Add k8
2548         (TARGET_CPU_DEFAULT_k8): New constant
2549         (enum processor_type): Add PROCESSOR_K8.
2550         * i386.md (cpu attribute): Add k8.
2551
2552         * invoke.texi: Document -march=k8.
2553
2554         * i386.md (type attribute): Add leave
2555         (mode attribute): Remove unknownfp.
2556         (length_immediate, modrm, memory attributes): Handle leave correctly.
2557         (fp comparison patterns): Determine FP mode.
2558         (leave, leave_rex64): Remove special cases.
2559         * ppro.md (ppro_uops, ppro_p2): Add leave
2560         * pentiun.md (pent_pop): Handle leave too.
2561         * k6.md (k6_load): Handle leave.
2562         * athlon.md (athlon_leave, athlon_pop): Fix.
2563         (athlon_decode): Handle leave.
2564
2565 2002-11-20  Steve Ellcey  <sje@cup.hp.com>
2566
2567         * emit-rtl.c (gen_reg_rtx): Simplify mapping of Complex type
2568         to component type using GET_MODE_INNER.
2569         * expr.c (emit_move_insn_1): Ditto.
2570         * optabs.c (expand_binop): Ditto.
2571         (expand_unop): Ditto.
2572         (expand_complex_abs): Ditto.
2573
2574 2002-11-20  Douglas B Rupp  <rupp@gnat.com>
2575
2576         * hwint.h (HAVE___INT64): Fix typo (was HAVE__INT64).
2577
2578 2002-11-20  DJ Delorie  <dj@redhat.com>
2579
2580         * config/stormy16/stormy16.c (s16builtins,
2581         xstormy16_init_builtins, xstormy16_expand_builtin): New.
2582         * config/stormy16/stormy16.md (divmodhi4, sdivlh, udivlh): New.
2583
2584 2002-11-20  Hans-Peter Nilsson  <hp@bitrange.com>
2585
2586         * Makefile.in (RUN_GEN, VALGRIND_DRIVER_DEFINES): New variables.
2587         (DRIVER_DEFINES): Add $(VALGRIND_DRIVER_DEFINES).
2588         (executing gencheck, genconfigs, genconditions, genflags,
2589         gencodes, genconstants, genemit, genrecog, genopinit, genextract,
2590         genpeep, genattr, genattrtab, genoutput, gengenrtl, genpreds,
2591         gengtype, genprotos): Prepend $(RUN_GEN).
2592         * configure.in: Move host compiler tests before --enable-checking
2593         tests.
2594         (--enable-checking=valgrind): New.
2595         * config.in, configure: Regenerate.
2596         * cppfiles.c [!ENABLE_VALGRIND_CHECKING] (VALGRIND_DISCARD):
2597         Define as empty.
2598         (read_include_file): When doing the mmap+1 trick,
2599         valgrind-annotate the byte after the mmap:ed area as readable.
2600         (purge_cache): Remove above annotation.
2601         * gcc.c (execute) [ENABLE_VALGRIND_CHECKING]: Arrange to prepend
2602         VALGRIND_PATH -q to each command.
2603
2604         * ggc-common.c [!ENABLE_VALGRIND_CHECKING] (VALGRIND_DISCARD):
2605         Define as empty.
2606         (ggc_realloc): Update valgrind annotations.
2607         * ggc-page.c [!ENABLE_VALGRIND_CHECKING] (VALGRIND_DISCARD):
2608         Define as empty.
2609         (alloc_anon, free_page, ggc_alloc, poison_pages): Add machinery to
2610         valgrind-annotate memory.
2611
2612 2002-11-20  Ulrich Weigand  <uweigand@de.ibm.com>
2613
2614         * recog.c (constrain_operands): Prefer exact match over reloadable
2615         EXTRA_MEMORY_CONSTRAINT or EXTRA_ADDRESS_CONSTRAINT.
2616
2617         * reload.c (find_reloads): Always reload EXTRA_ADDRESS_CONSTRAINT
2618         operands in Pmode.
2619
2620 2002-11-20  Eric Botcazou  <ebotcazou@libertysurf.fr>
2621
2622         PR c/8518
2623         * c-decl.c (duplicate_decls): Outline the second definition
2624         of an extern inline function in all cases.
2625
2626 2002-11-20  Richard Sandiford  <rsandifo@redhat.com>
2627
2628         * stor-layout.c (place_field): Update rli->offset as well as
2629         rli->bitpos.
2630
2631 2002-11-20  Richard Sandiford  <rsandifo@redhat.com>
2632
2633         * sched-deps.c (sched_analyze): Check HARD_REGNO_CALL_PART_CLOBBERED.
2634
2635 2002-11-20  Richard Sandiford  <rsandifo@redhat.com>
2636
2637         * config/sh/sh.md (udivsi3): Don't put udivsi3_i4_media instructions
2638         into a libcall block.
2639         (divsi3): Likewise divsi3_i4_media.
2640
2641 2002-11-20  Richard Sandiford  <rsandifo@redhat.com>
2642
2643         * global.c (find_reg): Check HARD_REGNO_NREGS before kicking
2644         out another register.
2645
2646 2002-11-20  Jakub Jelinek  <jakub@redhat.com>
2647
2648         * combine.c (force_to_mode): Only replace with (not Y) if all bits in fuller_mask
2649         (not just mask) are set in C.
2650
2651 2002-11-19  Steven Bosscher <steven.bosscher@usafa.af.mil>
2652
2653         * config/mips/vr.h (DRIVER_SELF_SPECS): Change %{<mgp32} to %<mgp32.
2654
2655 2002-11-19  Zdenek Dvorak  <rakdver@atrey.karlin.mff.cuni.cz>
2656
2657         * profile.c (index_counts_file): Fix obvious mistake.
2658
2659 2002-11-19  Zdenek Dvorak  <rakdver@atrey.karlin.mff.cuni.cz>
2660
2661         * Makefile.in (profile.o): Add hashtab.h dependency.
2662         * gcov-io.h (GCOV_SUMMARY_LENGTH): New.
2663         * profile.c: Include hashtab.h.
2664         (htab_counts_index_hash, htab_counts_index_eq, htab_counts_index_del,
2665         cleanup_counts_index, index_counts_file, struct section_reference,
2666         struct da_index_entry, counts_file_name, counts_file_index): New.
2667         (get_exec_counts, init_branch_prob): Modified.
2668
2669 2002-11-19  Kaz Kojima  <kkojima@gcc.gnu.org>
2670
2671         * config.gcc (sh*-*-linux*): Add t-slibgcc-elf-ver and t-linux
2672         to tmake_file. Remove setting gas and gnu_ld here.
2673         * config/sh/libgcc-glibc.ver: New file.
2674         * config/sh/t-linux (EXTRA_MULTILIB_PARTS): Add crtbeginT.o.
2675         (SHLIB_MAPFILES): New.
2676         * config/sh/linux.h (MD_EXEC_PREFIX): Undefine.
2677         (MD_STARTFILE_PREFIX): Likewise.
2678         (HANDLE_PRAGMA_PACK_PACK_PUSH_POP): Define.
2679         (DWARF2_UNWIND_INFO): Redefine.
2680         (ASM_PREFERRED_EH_DATA_FORMAT): Define.
2681         (LINK_EH_SPEC): Redefine.
2682         (MD_FALLBACK_FRAME_STATE_FOR): Define except for SH-media.
2683         (SH_FALLBACK_FRAME_FLOAT_STATE): Define.
2684         (SH_DWARF_FRAME_GP0, SH_DWARF_FRAME_FP0, SH_DWARF_FRAME_XD0,
2685         SH_DWARF_FRAME_BT0, SH_DWARF_FRAME_PR, SH_DWARF_FRAME_PR_MEDIA,
2686         SH_DWARF_FRAME_GBR, SH_DWARF_FRAME_MACH, SH_DWARF_FRAME_MACL,
2687         SH_DWARF_FRAME_PC, SH_DWARF_FRAME_SR, SH_DWARF_FRAME_FPUL,
2688         SH_DWARF_FRAME_FPSCR): Likewise.
2689         * config/sh/sh-protos.h (sh_set_return_address): Declare.
2690         * config/sh/sh.c (calc_live_regs): Count EH_RETURN_DATA_REGNO
2691         registers if the current function calls EH return.
2692         (sh_expand_epilogue): Handle EH stack adjustments.
2693         (sh_set_return_address): New function.
2694         * config/sh/sh.h (SH_DBX_REGISTER_NUMBER): Handle PR_MEDIA_REG.
2695         Don't abort even if the number is mapped to -1.
2696         (EH_RETURN_DATA_REGNO): Define.
2697         (EH_RETURN_STACKADJ_RTX): Define.
2698         * config/sh/sh.md (UNSPEC_EH_RETURN): New.
2699         (eh_return): New pattern.
2700         (eh_set_ra_di, eh_set_ra_si): Likewise.
2701         Add splitter to perform EH return after reload.
2702
2703 Tue Nov 19 12:52:07 2002  J"orn Rennecke <joern.rennecke@superh.com>
2704
2705         * stor-layout.c (excess_unit_span): New function.
2706         (place_field): Use it.
2707
2708 2002-11-19  Andreas Schwab  <schwab@suse.de>
2709
2710         * unwind.h (_Unwind_GetTextRelBase): Revert last change, this is
2711         not valid in C++.
2712
2713 2002-11-19  Nathanael Nerode  <neroden@gcc.gnu.org>
2714
2715         * configure.in, Makefile.in: Correct BUILD/HOST confusion.
2716         * configure: Regenerate.
2717
2718 Tue Nov 19 00:11:44 CET 2002  Jan Hubicka  <jh@suse.cz>
2719
2720         * convert.c (strip_float_extensions): New function.
2721         (convert_to_real): Optimize some cases.
2722
2723 2002-11-19  Andreas Jaeger  <aj@suse.de>
2724
2725         * loop.c (record_giv): Initialize not_replaceable.
2726         (check_final_value): Likewise.
2727
2728 2002-11-19  Kazu Hirata  <kazu@cs.umass.edu>
2729
2730         * config/h8300/h8300.c (h8300_init_once): Replace 1 with
2731         MASK_H8300S.
2732
2733 2002-11-19  Vijay L. Khuspe  <vijayk1@kpit.com>
2734
2735         * config/h8300/h8300.c (h8300_init_once): Allow -mn switch
2736         only if -mh or -ms present.
2737         (h8300_eightbit_constant_address_p): Support the normal mode.
2738         (h8300_tiny_constant_address_p): Likewise.
2739         * config/h8300/h8300.h (TARGET_NORMAL_MODE): New.
2740         (POINTER_SIZE): Add 16 bit pointer for the normal mode.
2741         (Pmode): Evaluate to HImode for the normal mode.
2742         (SIZE_TYPE): Evaluate to unsigned int for normal mode.
2743         (PTRDIFF_TYPE): Evaluate to int for the normal mode.
2744         (ASM_WORD_OP): Evaluate to word for the normal mode.
2745         * config/h8300/h8300.md (tablejump_normal_mode): New.
2746         (indirect_jump_normal_mode): New.
2747         * config/h8300/t-h8300 (MULTILIB_OPTIONS): Pass -mn option to
2748         directory.
2749         (MULTILIB_DIRNAMES): Create target dependent directory
2750         'normal'.
2751         (MULTILIB_EXCEPTIONS): Don't turn on -mn on H8/300.
2752         * doc/invoke.texi (gccoptlist): Describe the new switch -mn.
2753
2754 Tue Nov 19 23:50:56 CET 2002  Jan Hubicka  <jh@suse.cz>
2755
2756         * i386.md (length_immediate): Do not refer to insn address.
2757         (jcc*, jmp patterns):  Compute length explicitly.
2758
2759 2002-11-19 Eric Botcazou <ebotcazou@libertysurf.fr>
2760
2761         PR c/8588
2762         * optabs.c (expand_binop): Convert CONST_INTs in shift
2763         operations too.
2764
2765 2002-11-19  Roger Sayle  <roger@eyesopen.com>
2766
2767         * gcse.c (gcse_emit_move_after): Correct typo in REG_EQUAL note.
2768
2769 2002-11-19  Kazu Hirata  <kazu@cs.umass.edu>
2770
2771         * config/h8300/h8300.md (an anonymous pattern): Relax the
2772         condition to accept the same operands and/or subregs.
2773
2774 2002-11-19  Daniel Jacobowitz  <drow@mvista.com>
2775
2776         * config/sh/sh.c (gen_shl_and): Revert previous patch.
2777         * config/sh/sh.md (ashrdi3+1, ashrdi3+2): Predicate on
2778         reload_completed.
2779
2780 2002-11-19  Kazu Hirata  <kazu@cs.umass.edu>
2781
2782         * config/h8300/h8300.c (print_operand): Update the use of
2783         EIGHTBIT_CONSTANT_ADDRESS_P.
2784         (h8300_adjust_insn_length): Likewise.
2785         (h8300_eightbit_constant_address_p): Check if the given rtx is
2786         a variable with __attribute__((eightbit_data)).
2787         * config/h8300/h8300.h (OK_FOR_U): Update the use of
2788         EIGHTBIT_CONSTANT_ADDRESS_P.
2789
2790 2002-11-19  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
2791
2792         * doc/contrib.texi (Contributors): Add self as second contact in
2793         addition to Jeff Law.
2794
2795 2002-11-19  Andreas Jaeger  <aj@suse.de>
2796
2797         * tree-inline.c: Move prototpyes of find_alloca_call_1 and
2798         find_alloca_call to right place.
2799
2800 2002-11-19  Kazu Hirata  <kazu@cs.umass.edu>
2801
2802         * cppfiles.c: Fix formatting.
2803
2804 2002-11-19  Jason Thorpe  <thorpej@wasabisystems.com>
2805
2806         * gcc.c (The Specs Language): Document spec functions.
2807         (static_spec_functions, lookup_spec_function)
2808         (eval_spec_function, handle_spec_function)
2809         (if_exists_spec_function, alloc_args): New.
2810         (execute): Abort if processing_spec_function is true.
2811         (do_spec_1): Hand off spec to handle_spec_function if %:
2812         is encountered.  If processing_spec_function is true,
2813         end any pending argument when the end of the string is reached.
2814         (main): Use alloc_args to allocate the initial argument vector.
2815         * gcc.h (struct spec_function): New.
2816         (lang_specific_spec_functions): New extern.
2817
2818         * config/netbsd-elf.h (STARTFILE_SPEC): Add if-exists(crti%O%s).
2819         (ENDFILE_SPEC): Add if-exists(crtn%O%s).
2820         * config/alpha/netbsd.h (ENDFILE_SPEC): Likewise.
2821
2822         * doc/invoke.texi: Document spec functions.
2823
2824         * cppspec.c (lang_specific_spec_functions): New.
2825         * gccspec.c: Likewise.
2826
2827 2002-11-18  Steve Ellcey  <sje@cup.hp.com>
2828
2829         * config/ia64/hpux_longdouble.h (FIXUNS_TRUNCTFSI2_LIBCALL): New.
2830         (FIXUNS_TRUNCTFDI2_LIBCALL): New.
2831         (fixunstfsi_libfunc): Change.
2832         (fixunstfdi_libfunc): Change.
2833         (sdiv_optab): Don't zero out SImode handler.
2834         (udiv_optab): Don't zero out SImode handler.
2835         (smod_optab): Don't zero out SImode handler.
2836         (umod_optab): Don't zero out SImode handler.
2837
2838 2002-11-18  Neil Booth  <neil@daikokuya.co.uk>
2839
2840         PR preprocessor/8524
2841         * cpplib.c (run_directive): Remove previous kludge to _Pragma.
2842         Add a new one in its place, which hopefully works.
2843         (skip_rest_of_line): Change test for bottom-of-context-stack.
2844
2845 Mon Nov 18 21:29:03 CET 2002  Jan Hubicka  <jh@suse.cz>
2846
2847         * i386.md (addqi_1_slp): Fix output template.
2848         (subqi_1_slp): Fix type.
2849
2850 Sun Nov 17 00:01:28 CET 2002  Jan Hubicka  <jh@suse.cz>
2851
2852         * calls.c (alloca_call_p): New global function.
2853         * tree.h (alloca_call_p): New.
2854         * tree-inline.c (inlinable_function_p):  Do not inline when
2855         function calls alloca.
2856         (find_alloca_call, find_alloca_call_1): New functions.
2857
2858 2002-11-18  Kazu Hirata  <kazu@cs.umass.edu>
2859
2860         * config/h8300/h8300.md (*andorqi3): Use bor between bld and
2861         bst.  Update the insn length.
2862         (*andorhi3): Likewise.
2863         (*andorsi3): Likewise.
2864
2865 2002-11-18  Richard Sandiford  <rsandifo@redhat.com>
2866
2867         * config/sh/sh-protos.h (sh_mark_label): Declare.
2868         * config/sh/sh.c (sh_mark_label): New function, taken from
2869         movdi_const, but fixing the case when the address has an addend.
2870         * config/sh/sh.md (movdi_const, movdi_const_32bit): Use it.
2871
2872 2002-11-18  Richard Sandiford  <rsandifo@redhat.com>
2873
2874         * config/sh/sh.c (pool_node): New field: part_of_sequence_p.
2875         (add_constant): Set it.
2876         (dump_table): Don't reorder a constant if part_of_sequence_p.
2877         (machine_dependent_reorg): Assume that float constants will
2878         stay in their original order if used as a sequence.
2879
2880 2002-11-18  Richard Sandiford  <rsandifo@redhat.com>
2881
2882         * config/sh/sh.c (calc_live_regs): Update check for PIC liveness
2883         in compact code.
2884
2885 2002-11-18  Richard Sandiford  <rsandifo@redhat.com>
2886
2887         * config/sh/sh.md (initialize_trampoline): Do not force the
2888         trampoline address into R0_REGS here.
2889
2890 Sun Nov 17 14:01:09 CET 2002  Jan Hubicka  <jh@suse.cz>
2891
2892         * i386.md (negsf2_ifs, negdf2_ifs, negdf2_ifs_rex64, abssf2_ifs,
2893         absdf2_ifs, absdf2_ifs_rex64): Fix constraints.
2894         (neg?f2_ifs, abs?f2_ifs splitters): Refuse memory operand; do not
2895         generate unnecesary subregs.
2896
2897 2002-11-17  Kazu Hirata  <kazu@cs.umass.edu>
2898
2899         * df.c: Fix formatting.
2900
2901 2002-11-17  Kazu Hirata  <kazu@cs.umass.edu>
2902
2903         * config/h8300/h8300.md (two anonymous patterns): Fix insn
2904         lengths.
2905
2906 2002-11-17  Daniel Jacobowitz  <drow@mvista.com>
2907
2908         * sh.c (gen_shl_and): Don't create a zero_extend if the operand
2909         is not an arith_reg_operand.
2910
2911 2002-11-17  Graham Stott  <graham.stott@btinternet.com>
2912
2913         * real.c (real_to_decimal): Fix buffer overrun when buffer size
2914         is smaller than representation.
2915
2916 2002-11-17  Kazu Hirata  <kazu@cs.umass.edu>
2917
2918         * builtins.c: Fix formatting.
2919
2920 Sat Nov 16 16:49:58 CET 2002  Jan Hubicka  <jh@suse.cz>
2921
2922         * i386.md (truncdfsf2_1_sse, truncdfsf2_1_sse_nooverlap, truncdfsf2_2,
2923         floats?dff2_i387):
2924         Work around regclass stupidity.
2925         (truncdfsf_2_1_sse splitter):  Accept !TARGET_PARTIAL_SSE_REGS
2926
2927 Sat Nov 16 02:17:48 CET 2002  Jan Hubicka  <jh@suse.cz>
2928
2929         * i386.md (fop_df_6): New pattern.
2930         (fop_xf_4, fop_xf_5): Handle both SF and DFmode extensions.
2931         (fop_xf_6): Rewrite
2932         (fop_xf_7): Delete.
2933         (fop_tf_4, fop_tf_5): Handle both SF and DFmode extensions.
2934         (fop_tf_6): Rewrite
2935         (fop_tf_7): Delete.
2936
2937 2002-11-16  Kazu Hirata  <kazu@cs.umass.edu>
2938
2939         * config/h8300/h8300.md (two anonymous patterns): Fix typos.
2940
2941 2002-11-16  Kazu Hirata  <kazu@cs.umass.edu>
2942
2943         * config/h8300/h8300.md: Fix formatting.
2944
2945 2002-11-16  Kazu Hirata  <kazu@cs.umass.edu>
2946
2947         * config/h8300/h8300.md: Replace spaces with tabs.
2948         * config/h8300/t-h8300: Remove a trailing empty line.
2949
2950 2002-11-16  Kazu Hirata  <kazu@cs.umass.edu>
2951
2952         * tlink.c: Fix formatting.
2953
2954 2002-11-16  David Edelsohn  <edelsohn@gnu.org>
2955
2956         PR 8362
2957         * config/rs6000/rs6000.c (rs6000_outout_load_multiple): New function.
2958         * config/rs6000/rs6000.md (movti_string): Remove output modifier
2959         when scratch register never needed.
2960         (ldmsi[3-8]): New patterns.
2961
2962 2002-11-16  Kazu Hirata  <kazu@cs.umass.edu>
2963
2964         * hard-reg-set.h: Follow spelling conventions.
2965         * real.c: Likewise.
2966         * target.h: Likewise.
2967
2968 2002-11-16  Jakub Jelinek  <jakub@redhat.com>
2969
2970         * config/i386/x86-64.h (MCOUNT_NAME): Change into string literal.
2971
2972 2002-11-16  Kazu Hirata  <kazu@cs.umass.edu>
2973
2974         * optabs.c: Fix formatting.
2975
2976 Sat Nov 16 02:06:02 CET 2002  Jan Hubicka  <jh@suse.cz>
2977
2978         * athlon.md, k6.md, pentium.md, ppro.md: Handle shift1, rotate1
2979         * i386.md (attribute type): Add type shift1 and rotate1.
2980         (*_slp): Rewrite to have just two operands to avoid reload problems.
2981
2982 2002-11-15  Kazu Hirata  <kazu@cs.umass.edu>
2983
2984         * config/h8300/h8300.md (4 anonymous patterns): New.
2985
2986 2002-11-15  Geoffrey Keating  <geoffk@apple.com>
2987
2988         * params.def (GGC_MIN_HEAPSIZE): Fix GGC_ALWAYS_COLLECT problem.
2989         * doc/invoke.texi: Correct description of what needs to be done to
2990         force collection at every ggc_collect call.
2991
2992 2002-11-15  Ulrich Weigand  <uweigand@de.ibm.com>
2993
2994         * config/s390/s390.c (optimization_options): Set
2995         flag_asynchronous_unwind_tables to 1 by default.
2996
2997 2002-11-15  Ulrich Weigand  <uweigand@de.ibm.com>
2998
2999         * config/s390/s390.h (ASM_PREFERRED_EH_DATA_FORMAT): Define.
3000
3001 Fri Nov 15 14:54:19 CET 2002  Jan Hubicka  <jh@suse.cz>
3002
3003         * i386-protos.h (x86_function_profiler): New function
3004         * i386.h (MCOUNT_NAME): New.
3005         (PROFILE_COUNT_REGISTER): New.
3006         (FUNCTION_PROFILER): Move offline to ...
3007         * i386.c (x86_function_profiler) ... here; fix 64bit support
3008         * beos-elf.h (FUNCTION_PROFILER): Kill.
3009         (MCOUNT_NAME): New.
3010         * freebsd-aout.h (FUNCTION_PROFILER): Kill.
3011         (MCOUNT_NAME): New.
3012         (PROFILE_COUNT_REGISTER): New.
3013         * linux.h (FUNCTION_PROFILER): Kill.
3014         (MCOUNT_NAME): New.
3015         * x86-64.h (FUNCTION_PROFILER): Kill.
3016         (MCOUNT_NAME): New.
3017         * freebsd.h (FUNCTION_PROFILER): Kill.
3018         (MCOUNT_NAME): New.
3019
3020 2002-11-14  Jeroen Dobbelaere  <jeroen.dobbelaere@acunia.com>
3021
3022         * config/arm/arm.h (EXPAND_BUILTIN_VA_ARG,
3023         FUNCTION_ARG_PASS_BY_REFERENCE): Define.
3024         * config/arm/arm.c (arm_va_arg,
3025         arm_function_arg_pass_by_reference): New.
3026         * config/arm/arm-protos.h: Add prototypes.
3027
3028 2002-11-14  Kazu Hirata  <kazu@cs.umass.edu>
3029
3030         * gthr-single.h: Fix formatting.
3031
3032 2002-11-14  Zack Weinberg  <zack@codesourcery.com>
3033
3034         * tree.c (tree_vec_elt_check_failed): New function.
3035         * tree.h (TREE_VEC_ELT_CHECK): New checking macro.
3036         (TREE_VEC_ELT): Use it.
3037
3038         * tree-inline.c (optimize_inline_calls): Don't copy a
3039         zero-length vector.
3040
3041 2002-11-14  Gabriel Dos Reis  <gdr@integrable-solutions.net>
3042
3043         * diagnostic.c (sorry): Don't repeat "sorry, unimplemented" text.
3044
3045 2002-11-14  Jakub Jelinek  <jakub@redhat.com>
3046
3047         * varasm.c (output_addressed_constants) [MINUS_EXPR]: Clear reloc if
3048         both operands contain local relocations.
3049         (categorize_decl_for_section): Don't use mergeable sections if
3050         initializer has any relocations.
3051
3052 2002-11-14  Kazu Hirata  <kazu@cs.umass.edu>
3053
3054         * gthr-vxworks.h: Fix formatting.
3055
3056 2002-11-13  Janis Johnson  <janis187@us.ibm.com>
3057
3058         * doc/install.texi (Testing): Document extra Java testing.
3059         * doc/sourcebuild.texi (Test Suites): Document libgcj testing.
3060
3061 2002-11-13  John David Anglin  <dave@hiauly1.hia.nrc.ca>
3062
3063         * pa64-hpux.h (LINK_SPEC): Move "+Accept TypeMismatch" switch to the
3064         beginning of the spec.
3065         (LDD_SUFFIX, PARSE_LDD_OUTPUT): Delete.
3066         (LD_INIT_SWITCH, LD_FINI_SWITCH): Define but don't enable.  Add comment
3067         regarding problems with global constructors when using GNU ld.
3068
3069 2002-11-13  Kazu Hirata  <kazu@cs.umass.edu>
3070
3071         * gthr-solaris.h: Fix formatting.
3072
3073 2002-11-13  Kazu Hirata  <kazu@cs.umass.edu>
3074
3075         * gthr-posix.h: Fix formatting.
3076
3077 2002-11-12  Devang Patel <dpatel@apple.com>
3078         * gcc.c (display_help): Two new options -Xpreprocessor and -Xassembler.
3079         (process_command): Same.
3080         * doc/invoke.texi: Info about these two new options.
3081
3082 2002-11-12  Kazu Hirata  <kazu@cs.umass.edu>
3083
3084         * config/h8300/h8300.md (*andorsi3): New.
3085
3086 2002-11-12  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
3087
3088         * doc/install.texi (powerpc-*-linux-gnu*): Update binutils requirement.
3089
3090 2002-11-12  Kazu Hirata  <kazu@cs.umass.edu>
3091
3092         * config/h8300/h8300.c (tiny_constant_address_p): Parenthesize
3093         expressions appropriately.
3094
3095 2002-11-12  Kazu Hirata  <kazu@cs.umass.edu>
3096
3097         * gthr-win32.h: Fix formatting.
3098
3099 2002-11-12  Kazu Hirata  <kazu@cs.umass.edu>
3100
3101         * config/h8300/h8300.c (single_one_operand): Correctly compute
3102         mask when mode is SImode.
3103         (single_zero_operand): Likewise.
3104         * config/h8300/h8300.md (two new anonymous insns): New.
3105
3106 2002-11-12  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
3107
3108         * doc/contrib.texi (Contributors): Use GCJ instead of gcj to refer
3109         to that entire project.
3110
3111 2002-11-12  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
3112
3113         * config/mips/t-iris6 (MULTILIB_OSDIRNAMES): Restore old
3114         directories.
3115
3116 2002-11-11  Zack Weinberg  <zack@codesourcery.com>
3117
3118         * params.def (ggc-min-expand, ggc-min-heapsize): New parameters.
3119         * doc/invoke.texi: Document them.
3120
3121         * ggc-page.c: Include params.h.  Remove definitions of
3122         GGC_MIN_EXPAND_FOR_GC, GGC_MIN_LAST_ALLOCATED.  Replace
3123         GGC_POISON with ENABLE_GC_CHECKING in ifdefs, delete #define.
3124         (init_gcc): Don't set G.allocated_last_gc here.
3125         (ggc_collect): Use PARAM_VALUE (GGC_MIN_HEAPSIZE) and
3126         PARAM_VALUE (GGC_MIN_EXPAND) to decide whether or not to
3127         perform collection.
3128         * ggc-simple.c: Similarly.
3129         * Makefile.in (ggc-common.o, ggc-simple.o): Add $(PARAMS_H) to
3130         dependencies.
3131
3132 2002-11-11  Kazu Hirata  <kazu@cs.umass.edu>
3133
3134         * gthr-dce.h: Fix formatting.
3135
3136 2002-11-11  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
3137
3138         PR c/8467
3139         * stmt.c (tail_recursion_args): Handle DECL_MODE differing from the
3140         mode of DECL_RTL case.
3141
3142 2002-11-11  Janis Johnson  <janis187@us.ibm.com>
3143
3144         * doc/contrib.texi: Merge in the list from the libstdc++ web pages.
3145
3146 Mon Nov 11 12:06:08 CET 2002  Jan Hubicka  <jh@suse.cz>
3147
3148         * i386.c (construct_container): Fix handling of SSE_CLASS.
3149
3150 2002-11-10  Joel Sherrill <joel@gcc.gnu.org>
3151
3152         * config/m68k/t-crtstuff (crti.o): Use this...
3153         ($(T)crti.o): ... instead.
3154         (crtn.o): Use this...
3155         ($(T)crtn.o): ... instead.
3156
3157 2002-11-10  Eric Botcazou  <ebotcazou@libertysurf.fr>
3158
3159         PR c/8439
3160         * recog.c (validate_replace_rtx_1) [PLUS]: Simplify only
3161         if there is something new to be simplified.
3162
3163 2002-11-10  H.J. Lu <hjl@gnu.org>
3164
3165         * calls.c (PUSH_ARGS_REVERSED): Define only if not defined.
3166         * expr.c (PUSH_ARGS_REVERSED): Likewise.
3167
3168         * config/i386/i386.h (PUSH_ARGS_REVERSED): Set to 1.
3169
3170 2002-11-10  Zack Weinberg  <zack@codesourcery.com>
3171
3172         * config/rs6000/sysv4.h: Define NO_IMPLICIT_EXTERN_C here...
3173         * config/rs6000/linux.h, config/rs6000/linux64.h,
3174         config/rs6000/windiss.h: ... not here.
3175
3176 2002-11-10  Jason Thorpe  <thorpej@wasabisystems.com>
3177
3178         * config/mips/netbsd.h (TARGET_OS_CPP_BUILTINS): Define
3179         __ABICALLS__ if TARGET_ABICALLS.
3180
3181 Sun Nov 10 18:49:21 CET 2002  Jan Hubicka  <jh@suse.cz>
3182
3183         * i386.h (MIN_UNITS_PER_WORD): Define to 8 for x86-64 libgcc.
3184
3185 2002-11-10  Joseph S. Myers  <jsm@polyomino.org.uk>
3186
3187         * c-decl.c (grokdeclarator): Make error for duplicate type
3188         qualifiers into a pedwarn, disabled for C99.
3189
3190 2002-11-10  Hans-Peter Nilsson  <hp@bitrange.com>
3191
3192         * config/mmix/mmix.h (FUNCTION_ARG_CALLEE_COPIES): Define the same
3193         as FUNCTION_ARG_PASS_BY_REFERENCE.
3194
3195 2002-11-09  Zack Weinberg  <zack@codesourcery.com>
3196
3197         * doc/install.texi: Add *-*-vxworks* specific installation
3198         instructions.
3199
3200         * config/vxlib.c: Rewrite using generation numbers to identify
3201         valid TSD keys.
3202
3203 Sat Nov  9 00:10:54 CET 2002  Jan Hubicka  <jh@suse.cz>
3204
3205         * i386.c (x86_machine_dependent_reorg): Fix even more side cases.
3206
3207 2002-11-09  John David Anglin  <dave@hiauly1.hia.nrc.ca>
3208
3209         * pa.h (STARTING_FRAME_OFFSET): Change offset for TARGET_64BIT to 16.
3210
3211         * config.gcc (hppa*64*-*-linux*): Shorten lines in tm_file define.
3212         (hppa*64*-*-hpux11*): Likewise.  Use elfos.h with gas.
3213         * pa.c (output_millicode_call): Use symbol difference rather than
3214         $PIC_pcrel$0 when using HP assembler.
3215         * pa64-hpux.h (TARGET_GAS): Define to 1 or 0 depending on whether or
3216         not elfos.h (i.e., gas) is being used.
3217         (ASM_FILE_START, STRING_ASM_OP, TEXT_SECTION_ASM_OP,
3218         DATA_SECTION_ASM_OP, BSS_SECTION_ASM_OP, ASM_OUTPUT_ALIGNED_COMMON,
3219         ASM_OUTPUT_ALIGNED_LOCAL, GLOBAL_ASM_OP, ASM_DECLARE_FUNCTION_NAME,
3220         ASM_OUTPUT_EXTERNAL, ASM_OUTPUT_EXTERNAL_LIBCALL,
3221         ASM_OUTPUT_INTERNAL_LABEL, ASM_GENERATE_INTERNAL_LABEL): Define when
3222         using elfos.h.
3223         (TARGET_ASM_GLOBALIZE_LABEL): Undefine when using elfos.h.
3224         (DWARF2_ASM_LINE_DEBUG_INFO): Delete.
3225         (ASM_FILE_START): Add standard .SPACE and .SUBSPA defines when not
3226         using elfos.h.
3227         (TEXT_SECTION_ASM_OP, READONLY_DATA_SECTION_ASM_OP, DATA_SECTION_ASM_OP,
3228         BSS_SECTION_ASM_OP): New HP style defines when not using elfos.h.
3229         (TARGET_ASM_NAMED_SECTION, MAKE_DECL_ONE_ONLY, ASM_WEAKEN_LABEL):
3230         Don't define when not using elfos.h.
3231         (ASM_DECLARE_RESULT): Don't define.
3232         * doc/install.texi (hppa*-hp-hpux*): Remove statement that HP assembler
3233         doesn't work on hppa64-hp-hpux11.
3234         (hppa*-hp-hpux11): Update.
3235
3236 2002-11-09  Jason Thorpe  <thorpej@wasabisystems.com>
3237
3238         * config/mips/netbsd.h (SUBTARGET_ASM_SPEC): Don't pass -KPIC
3239         to the assembler if -mno-abicalls was specified.
3240
3241 2002-11-09  John David Anglin  <dave@hiauly1.hia.nrc.ca>
3242
3243         * pa-linux.h (PREFERRED_DEBUGGING_TYPE, DWARF2_ASM_LINE_DEBUG_INFO,
3244         ASM_OUTPUT_DEF): Delete.
3245
3246 2002-11-09  Neil Booth  <neil@daikokuya.co.uk>
3247
3248         * c-opts.c (COMMAND_LINE_OPTIONS): Fix -Wimplicit.
3249
3250 2002-11-08  Roger Sayle  <roger@eyesopen.com>
3251
3252         * real.c (real_sqrt): Update comment with bibliographic reference.
3253
3254 Fri Nov  8 13:33:58 CET 2002  Jan Hubicka  <jh@suse.cz>
3255
3256         * i386.md (sse_loadss, sse2_loadsd): Fix expander.
3257
3258 Fri Nov  8 13:25:41 CET 2002  Jan Hubicka  <jh@suse.cz>
3259
3260         * i386.c (x86_machine_dependent_reorg): Fix handling of empty functions.
3261
3262 Fri Nov  8 13:01:42 CET 2002  Jan Hubicka  <jh@suse.cz>
3263
3264         * builtins.c (expand_builtin_mathfn): Handle floor/ceil/trunc/round/nearbyint
3265         (expand_builtin): Likewise.
3266         * builtins.def: Add
3267         __builtin_floor, __builtin_floorf, __builtin_floorl
3268         __builtin_ceil, __builtin_ceilf, __builtin_ceill
3269         __builtin_round, __builtin_roundf, __builtin_roundl
3270         __builtin_trunc, __builtin_truncf, __builtin_truncl
3271         __builtin_nearbyint, __builtin_nearbyintf, __builtin_nearbyintl.
3272         * genopinit.c (optabs): Initialize the new optabs.
3273         * optab.c (init_optabs): Likewise.
3274         * optabs.h (optab_index): Add OTI_floor, OTI_ceil, OTI_trunc,
3275         OTI_round, OTI_nearbyint.
3276         (floor_optab, ceil_optab, trunc_optab, round_optab, nearbyint_optab): New.
3277         * doc/md.texi: Document new named patterns.
3278         * doc/extend.texi (builtin functions)  Document
3279         floor, floorf, floorl, ceil, ceilf,
3280         ceill, round, roundf, roundl, trunc,
3281         truncf, truncl, nearbyint, nearbyintf, nearbyintl.
3282
3283 Fri Nov  8 11:36:11 CET 2002  Jan Hubicka  <jh@suse.cz>
3284
3285         * i386.md (sse_movdfcc, sse_movsfcc): Fix typo in previous patch.
3286
3287 2002-11-08  Dale Johannesen  <dalej@apple.com>
3288
3289         * dbxout.c (dbxout_type):  Fix stabs info for vector types.
3290
3291 2002-11-08  Neil Booth  <neil@daikokuya.co.uk>
3292
3293         PR preprocessor/8497
3294         PR preprocessor/8501
3295         * cpptrad.c (scan_out_logical_line): A '#' from a macro doesn't
3296         start a directive.  In assembler, #NUM is not a line directive.
3297
3298 2002-11-08  Neil Booth  <neil@daikokuya.co.uk>
3299
3300         * cppmain.c (cpp_preprocess_file): Loop to pop any -included
3301         buffers.
3302
3303 2002-11-08  Kazu Hirata  <kazu@cs.umass.edu>
3304
3305         * config/h8300/h8300.md (two anonymous test insns): New.
3306
3307 Fri Nov  8 11:20:19 CET 2002  Jan Hubicka  <jh@suse.cz>
3308
3309         * jump.c (mark_jump_label): Handle subregs of label_refs.
3310
3311 Thu Nov  7 21:54:22 CET 2002  Jan Hubicka  <jh@suse.cz>
3312
3313         * i386.md (sse_movdfcc, sse_movsfcc): Avoid overactive matching.
3314         * i386.c (ix86_expand_fp_movcc): Match the reversed cases.
3315
3316 2002-11-07  David Mosberger  <davidm@hpl.hp.com>
3317
3318         * config/ia64/crtend.asm: Include "auto-host.h".
3319         [HAVE_INITFINI_ARRAY]: Invoke __do_global_ctors_aux via .init_array.
3320         * config/ia64/crtbegin.asm: Similarly.
3321         * config/ia64/t-ia64 (crtbegin.o): Include from current directory.
3322         (crtend.o, crtbeginS.o, crtendS.o): Likewise.
3323
3324         * aclocal.m4 (gcc_AC_INITFINI_ARRAY): New.
3325         * configure.in: Use it if --enable-initfini-array not specified.
3326         * doc/install.texi (Configuration): Document --enable-initfini-array.
3327         * configure, config.in: Rebuild.
3328
3329 2002-11-07  Jason Thorpe  <thorpej@wasabisystems.com>
3330
3331         * config/arm/arm-protos.h (arm_get_frame_size)
3332         (thumb_get_frame_size): New prototypes.
3333         * config/arm/arm.c (arm_get_frame_size)
3334         (thumb_get_frame_size): New functions.
3335         (use_return_insn, arm_output_epilogue, arm_output_function_epilogue)
3336         (arm_compute_initial_elimination_offset, arm_expand_prologue): Use
3337         arm_get_frame_size.
3338         (thumb_expand_prologue, thumb_expand_epilogue): Use
3339         thumb_get_frame_size.
3340         * config/arm/arm.h (PREFERRED_STACK_BOUNDARY): Define.
3341         (machine_function): Add frame_size member.
3342         (THUMB_INITIAL_ELIMINATION_OFFSET): Use thumb_get_frame_size.
3343
3344 2002-11-07  Richard Earnshaw  <rearnsha@arm.com>
3345
3346         * arm.c (bit_count): Make argument unsigned long.  Return unsigned.
3347         Adjust code to use portable unsigned bit manipulation.
3348         (insn_flags, tune_flags): Change type to unsigned.
3349         (struct processors): Make flags unsigned long.
3350         (arm_override_options): Change type of count and current_bit_count
3351         to unsigned.
3352
3353 2002-11-07  Richard Earnshaw  <rearnsha@arm.com>
3354
3355         * arm/elf.h (TYPE_OPERAND_FMT): Prefix type with %.
3356
3357 Thu Nov  7 15:50:18 2002  J"orn Rennecke <joern.rennecke@superh.com>
3358
3359         * sh.h (DWARF_FRAME_RETURN_COLUMN): Use DWARF_FRAME_REGNUM.
3360
3361 Thu Nov  7 11:18:01 CET 2002  Jan Hubicka  <jh@suse.cz>
3362
3363         * reg-stack.c (compensate_edge): Fix sanity check.
3364
3365 2002-11-05  Geoffrey Keating  <geoffk@apple.com>
3366
3367         * config.gcc: Don't create crtbegin, crtend on Darwin; do create
3368         crt2.o.  Rearrange t-darwin makefiles.
3369         * crtstuff.c [OBJECT_FORMAT_MACHO]: Delete.
3370         * unwind-dw2-fde-darwin.c: New.
3371         * unwind-dw2-fde-glibc.c: Correct comment.
3372         * unwind-dw2-fde.c (__register_frame_info_bases)
3373         [DWARF2_OBJECT_END_PTR_EXTENSION]: Clear fde_end.
3374         (classify_object_over_fdes): Use last_fde.
3375         (add_fdes): Likewise.
3376         (linear_search_fdes): Likewise.
3377         * unwind-dw2-fde.h (struct object)
3378         [DWARF2_OBJECT_END_PTR_EXTENSION]: Add fde_end field.
3379         (last_fde): New.
3380         * config/darwin.h (STARTFILE_SPEC): Include crt2.o not crtbegin.o.
3381         (ENDFILE_SPEC): No crtend.o.
3382         * config/t-darwin: New.
3383         * config/i386/t-darwin: Delete.
3384         * config/darwin-crt2.c: New.
3385         * config/rs6000/t-darwin: Delete contents duplicated in t-rs6000
3386         or config/t-darwin.
3387
3388 2002-11-06  Douglas B Rupp  <rupp@gnat.com>
3389
3390         * config/i386/i386-interix.h (TARGET_SUBTARGET_DEFAULT): Or
3391         MASK_MS_BITFIELD_LAYOUT
3392         (SUBTARGET_OVERRIDE_OPTIONS): Warn about and turn off
3393         MS bitfields for Objective-C.
3394         (PCC_BIT_FIELD_TYPE_TEST, GROUP_BITFIELDS_BY_ALIGN): Remove
3395         defines.
3396
3397         * config/i386/i386.c (ix86_ms_bitfield_layout): New function.
3398         (TARGET_MS_BITFIELD_LAYOUT_P): Define to above function.
3399         (TARGET_USE_MS_BITFIELD_LAYOUT): Define.
3400
3401         * config/i386/i386.h (MASK_MS_BITFIELD_LAYOUT: New mask.
3402         TARGET_USE_MS_BITFIELD_LAYOUT): New macro.
3403         (TARGET_SWITCHES): Add above mask.
3404
3405         * testsuite/gcc.dg/bf-ms-layout.c: New test case.
3406         * testsuite/gcc.dg/bf-no-ms-layout.c: New test case.
3407         * testsuite/gcc.dg/i386-bitfield1.c (dg-options): Add appropriate
3408         flags for interix.
3409
3410 Wed Nov  6 18:54:47 2002  Alexandre Oliva  <aoliva@redhat.com>
3411
3412         * config/mips/mips.h (ASM_OUTPUT_ADDR_DIFF_ELT): Output
3413         .gpword/.gpdword for ABI_N32 and ABI_64 too, if using the GNU
3414         assembler.
3415         * config/mips/mips.md (tablejump_internal3): Output .cpadd
3416         before jump on ABI_N32 too.
3417         (tablejump_internal4): Ditto on ABI_64.  Increase maximum
3418         length to match.
3419
3420 Wed Nov  6 17:16:48 CET 2002  Jan Hubicka  <jh@.suse.cz>
3421
3422         * i386.md (negsf splitter): Accept memory operand in second register.
3423         (abssf/absdf splitters): Simplify
3424         (sse_loadss, sse_loadsd): Turn into expander.
3425
3426 2002-11-06  David Edelsohn  <edelsohn@gnu.org>
3427
3428         PR target/8480
3429         * config/rs6000/rs6000.md (movdi_internal64): Discourage
3430         FPR to FPR moves.
3431
3432 2002-11-06  Janis Johnson  <janis187@us.ibm.com>
3433
3434         * doc/contrib.texi: Merge in the list from the Java web pages.
3435
3436 2002-11-06  David O'Brien  <obrien@FreeBSD.org>
3437
3438         * config/sparc/freebsd: Fix typo.
3439
3440 2002-11-06  John David Anglin  <dave@hiauly1.hia.nrc.ca>
3441
3442         * pa64-hpux.h (LDD_SUFFIX, PARSE_LDD_OUTPUT): Define.
3443
3444 2002-11-06  Alexandre Oliva  <aoliva@redhat.com>
3445
3446         * config/mips/mips.md (call_value_multiple_internal2): Use dla for
3447         non-SImode addresses.
3448
3449 Tue Nov  5 14:34:36 CET 2002  Jan Hubicka  <jh@suse.cz>
3450
3451         * i386.md (float_truncate SSE splitter): Ensure that operand is not
3452         stack register.
3453         (float SSE splitters): Reorder conditional.
3454
3455 2002-11-05  Bob Wilson  <bob.wilson@acm.org>
3456
3457         * config/xtensa/elf.h (LIB_SPEC): Add "-lhal".
3458
3459 2002-11-05  John David Anglin  <dave2hiauly1.hia.nrc.ca>
3460
3461         * pa64-hpux.h (LIB_SPEC): Fix p and pg options.
3462         (STARTFILE_SPEC): Remove p and pg options.
3463
3464 2002-11-05  Andrew Haley  <aph@redhat.com>
3465
3466         * fold-const.c (fold): Don't transform (a0 op compound(a1,a2))
3467         to (compound(a1,a0 op a2)) if a0 or a1 have side effects.
3468
3469 2002-11-05  Richard Sandiford  <rsandifo@redhat.com>
3470
3471         * config/mips/mips.h (CANNOT_CHANGE_MODE_CLASS): Move comment to...
3472         * config/mips/mips.c (mips_cannot_change_mode_class): ...here.
3473
3474 2002-11-04  Zack Weinberg  <zack@codesourcery.com>
3475
3476         * gthr-vxworks.h: Rewritten from scratch.
3477         * config/vxlib.c: New file.
3478         * config/t-vxworks: Add config/vxlib.c to LIB2FUNCS_EXTRA.
3479         * config/rs6000/t-vxworks: Add config/vxlib.c to
3480         LIB2FUNCS_EXTRA here too, because of clash with
3481         config/rs6000/t-ppccomm.
3482
3483 2002-11-04  Dale Johannesen  <dalej@apple.com>
3484
3485         * doloop.c (doloop_modify_runtime):  Fix loop count computation
3486         for unrolled loops.
3487         * loop.c (loop_invariant_p):  Support calling from unroller.
3488
3489 2002-11-04  Ulrich Weigand  <uweigand@de.ibm.com>
3490
3491         * config/s390/s390.c (s390_decompose_address): Use arg_pointer_rtx
3492         for comparison.
3493
3494 2002-11-04  Aldy Hernandez  <aldyh@redhat.com>
3495
3496         * hard-reg-set.h (REG_CANNOT_CHANGE_MODE_P): New.
3497
3498         * config/rs6000/rs6000.h (CLASS_CANNOT_CHANGE_MODE_P): Remove.
3499         (CLASS_CANNOT_CHANGE_MODE): Remove.
3500         (CANNOT_CHANGE_MODE_CLASS): New.
3501
3502         * config/alpha/alpha.h: Same.
3503
3504         * config/ia64/ia64.h: Same.
3505
3506         * config/mips/mips.h: Same.
3507
3508         * config/s390/s390.h: Same.
3509
3510         * config/sh/sh.h: Same.
3511
3512         * config/pa/pa64-regs.h: Same.
3513
3514         * config/sh/sh-protos.h (sh_cannot_change_mode_class): Add prototype.
3515
3516         * config/sh/sh.c (sh_cannot_change_mode_class): New.
3517
3518         * config/mips/mips-protos.h (mips_cannot_change_mode_class): Add
3519         prototype.
3520
3521         * config/mips/mips.c (mips_cannot_change_mode_class): New.
3522
3523         * doc/tm.texi (Register Classes): Remove
3524         CLASS_CANNOT_CHANGE_MODE and CLASS_CANNOT_CHANGE_MODE_P.
3525         Document CANNOT_CHANGE_MODE_CLASS.
3526
3527         * reload.c (push_reload): Use CANNOT_CHANGE_MODE_CLASS.
3528         (push_reload): Same.
3529
3530         * simplify-rtx.c (simplify_subreg): Same.
3531
3532         * reload1.c (choose_reload_regs): Same.
3533
3534         * recog.c (register_operand): Same.
3535
3536         * regrename.c (mode_change_ok): Change to use new
3537         CANNOT_CHANGE_MODE_CLASS infrastructure.
3538
3539         * regclass.c (cannot_change_mode_set_regs): New.
3540         Declare subregs_of_mode.
3541         (regclass)