]> gcc.gnu.org Git - gcc.git/blame - gcc/ChangeLog
Makefile.in, [...]: Rebuilt.
[gcc.git] / gcc / ChangeLog
CommitLineData
e72247f4
DE
12002-02-23 David Edelsohn <edelsohn@gnu.org>
2
3 * config/rs6000/rs6000.md (load_toc_aix_{si,di}): Use
4 gpc_reg_operand constraint.
5
62002-02-23 Alan Modra <amodra@bigpond.net.au>
7
8 * config/rs6000/rs6000.c (num_insns_constant): Fix formatting.
9 Simplify comparison of `low'.
10 (add_operand): Fix formatting.
11 (non_add_cint_operand): Use CONST_OK_FOR_LETTER_P.
57deb3a1 12 (mask_operand): Disallow mask to wrap in 64-bit mode.
e72247f4
DE
13 (rs6000_stack_info): Remove redundant test setting push_p.
14 (output_toc): Fix formatting.
15 * config/rs6000/rs6000.md (boolsi3, boolcsi3 splitters): Use
16 cc_reg_not_cr0_operand constraint.
17 (booldi3, boolcdi3 splitters): Same.
18
a5c30531
AH
192002-02-23 Aldy Hernandez <aldyh@redhat.com>
20
21 * config/rs6000/altivec.h: Add extra level of parentheses on casts.
22
43710f9f
DE
232002-02-22 David Edelsohn <edelsohn@gnu.org>
24
25 * gcc.c (init_gcc_spec): Do not link with static libgcc.a if
26 gcc invoked with -shared-libgcc.
27
3256b817
JJ
282002-02-22 Jakub Jelinek <jakub@redhat.com>
29
30 PR c++/5748
31 * stmt.c (expand_anon_union_decl): Set TREE_USED on the anon union
32 decl if any of elements was TREE_USED.
33
9e0625a3
AO
342002-02-22 Alexandre Oliva <aoliva@redhat.com>
35
36 * config/sparc/sol2.h: Don't include sys/mman.h.
37 * config/sparc/sparc.c (arith_operand): Use SMALL_INT32.
38 (arith_4096_operand): Don't throw high bits away.
39 (const64_operand): Take sign extension of CONST_INTs into account.
40 (const64_high_operand, sparc_emit_set_const32): Likewise.
41 (GEN_HIGHINT64): Likewise.
42 (sparc_emit_set_const64_quick1): Likewise.
43 (const64_is_2insns): Likewise.
44 (print_operand): Use trunc_int_for_mode for sign extension.
45 * config/sparc/sparc.h (SMALL_INT32): Likewise.
46 * config/sparc/sparc.md (movqi): Sign-extend CONST_DOUBLE
47 chars. Assume CONST_INT is already properly sign-extended.
48 (movdi split): Sign-extend each SImode part.
49 (andsi3 split): Don't mask high bits off, so that result
50 remains properly sign-extend.
51 (iorsi3 split): Likewise.
52 (xorsi3 split): Likewise.
53
54fec3d5
RS
542002-02-22 Richard Sandiford <rsandifo@redhat.com>
55
56 * fold-const.c (fold): Fix typo in comments.
57
667ada9b
DN
582002-02-21 Diego Novillo <dnovillo@redhat.com>
59
60 * Makefile.in (langhooks.o): Update dependencies.
61
29ac78d5
DN
622002-02-21 Diego Novillo <dnovillo@redhat.com>
63
64 * langhooks.c: Include flags.h.
65
6aa77e6c
AH
662002-02-21 Aldy Hernandez <aldyh@redhat.com>
67
68 * testsuite/gcc.dg/attr-alwaysinline.c: New.
69
70 * c-common.c (c_common_post_options): Set inline trees by
71 default.
72
73 * doc/extend.texi (Function Attributes): Document always_inline
74 attribute.
75 Update documentation about inlining when not optimizing.
76
77 * cp/decl.c (duplicate_decls): Merge always_inline attribute.
78
79 * cp/tree.c (cp_cannot_inline_tree_fn): Do not inline at -O0
80 unless DECL_ALWAYS_INLINE.
81
82 * c-objc-common.c (c_cannot_inline_tree_fn): Do not inline at -O0
83 unless DECL_ALWAYS_INLINE.
84 (c_disregard_inline_limits): Disregard if always_inline set.
85
86 * langhooks.c (lhd_tree_inlining_disregard_inline_limits):
87 Disregard if always_inline set.
88 (lhd_tree_inlining_cannot_inline_tree_fn): Do not inline at -O0
89 unless DECL_ALWAYS_INLINE.
90
91 * attribs.c (handle_always_inline_attribute): New.
92 (c_common_attribute_table): Add always_inline.
93
94 * config/rs6000/altivec.h: Add prototypes for builtins
95 requiring the always_inline attribute.
96
c410d49e
EC
972002-02-21 Eric Christopher <echristo@redhat.com>
98
99 * expmed.c (store_bit_field): Try to simplify the subreg
100 before generating a new one when when the mode size of
101 value is less than maxmode.
102
e3c8ea67
RH
1032002-02-21 Richard Henderson <rth@redhat.com>
104
105 * emit-rtl.c (offset_address): Use simplify_gen_binary rather
106 than gen_rtx_PLUS to form the sum.
107 * explow.c (force_reg): Rearrange to not allocate new pseudo
108 when force_operand returns a register.
109 * expr.c (expand_assignment): Allow offset_rtx expansion to
110 return a sum. Do not force addresses into registers.
111 (expand_expr): Likewise.
112 * simplify-rtx.c (simplify_gen_binary): Use simplify_plus_minus
113 to canonicalize arithmetic that didn't simpify.
114 (simplify_plus_minus): New argument force; update
115 all callers. Don't split CONST unless we can do something with it,
116 and wouldn't lose the constness of the operands.
117
118 * config/i386/i386.c (legitimize_pic_address): Recognize UNSPECs
119 that we generated earlier.
120
c1a046e5
TT
1212002-02-21 Tom Tromey <tromey@redhat.com>
122
123 * dwarf2out.c (DWARF_LINE_MIN_INSTR_LENGTH): Removed.
124 (output_line_info): Use constant `1', with a long explanatory
125 comment.
126 * system.h (DWARF_LINE_MIN_INSTR_LENGTH): Poison.
127
31fbaad4
R
128Thu Feb 21 22:43:44 2002 J"orn Rennecke <joern.rennecke@superh.com>
129
130 * jump.c (redirect_jump): If old label has no UID, don't try to
131 delete it.
132
a7f52356
R
133Thu Feb 21 21:17:21 2002 J"orn Rennecke <joern.rennecke@superh.com>
134
135 * sh.md (insv): Provide byte offsets for gen_rtx_SUBREG.
136 If input is constant, do shifts at compile time.
137
924fcc4e
JM
1382002-02-21 Joseph S. Myers <jsm28@cam.ac.uk>
139
140 * doc/extend.texi: Fix some more overfull hboxes.
141
e5a20888
JJ
1422002-02-21 Jakub Jelinek <jakub@redhat.com>
143
144 PR optimization/4994
145 * config/i386/i386.md (movsi_1, movsf_1): Support MMX -> MMX
146 register moves.
147
1482002-02-21 Jakub Jelinek <jakub@redhat.com>
22273300
JJ
149
150 PR c++/4574
151 * expr.h (expand_and): Add mode argument.
152 * expmed.c (expand_and): Add mode argument.
153 (expand_mult_highpart_adjust, emit_store_flag): Adjust callers.
154 * expr.c (store_field, expand_expr, do_store_flag): Likewise.
155 * except.c (expand_builtin_extract_return_addr): Likewise.
156 * config/alpha/alpha.c (alpha_initialize_trampoline): Likewise.
157 * config/sparc/sparc.c (sparc_initialize_trampoline): Likewise.
158 * config/c4x/c4x.h (INITIALIZE_TRAMPOLINE): Likewise.
159 Use GEN_INT (x) instead of gen_rtx (CONST_INT, VOIDmode, x).
160 * config/c4x/c4x.md: Use GEN_INT (x) instead of
161 gen_rtx (CONST_INT, VOIDmode, x).
162
7133e992
JJ
1632002-02-21 Jakub Jelinek <jakub@redhat.com>
164
165 PR c/4697:
166 * stmt.c (warn_if_unused_value): Move side effects test once more.
167
e2ec05a6
TG
1682002-02-20 Torbjorn Granlund <tege@swox.com>
169
170 * config/avr/avr.md: Add more patterns for mized-mode add and subtract
171 (addsi3_zero_extend, subhi3_zero_extend1, subsi3_zero_extend).
172
9dd791c8
AO
173Thu Feb 21 16:20:46 2002 Alexandre Oliva <aoliva@redhat.com>
174
175 * rtlanal.c (replace_rtx): Don't make a CONST_INT the operand of
176 SUBREG or ZERO_EXTEND.
177
7ab56274
R
178Thu Feb 21 15:35:46 2002 J"orn Rennecke <joern.rennecke@superh.com>
179
180 * sh.h (current_function_anonymous_args): Remove.
181 (SETUP_INCOMING_VARARGS): Don't set it - just check that one
182 of current_function_varargs and current_function_stdarg is set.
183 * sh.c (sh_expand_prologue): Check current_function_varargs /
184 current_function_stdarg / TARGET_SH5 instead of
185 current_function_anonymous_args.
186
187 * sh64.h (TARGET_VERSION): Define.
188
b1765bde
DE
1892002-02-20 David Edelsohn <edelsohn@gnu.org>
190
191 * config/rs6000/rs6000.h (EPILOGUE_USES): Conditionalize
192 VRSAVE_REGNO on TARGET_ALTIVEC.
193
1942002-02-20 Alan Modra <amodra@bigpond.net.au>
195
196 * config/rs6000/rs6000.c (includes_lshift_p): Mask irrelevant
197 bits of SImode const_int.
198 (includes_rshift_p): Likewise.
199 (print_operand): Call mask_operand and mask64_operand with correct
c410d49e 200 mode.
b1765bde
DE
201 (rs6000_output_function_epilogue): Pad traceback table to word.
202 * config/rs6000/rs6000.h (MASK_64BIT): Correct comment.
203 (EXTRA_CONSTRAINT, 'S' and 'T'): Call mask_operand and
204 mask64_operand with correct mode.
b1765bde
DE
205 (FUNCTION_ARG_REGNO_P): Correct parentheses.
206
149d6f9e
JJ
2072002-02-20 Jakub Jelinek <jakub@redhat.com>
208
209 PR debug/4461
210 * varasm.c (get_pool_constant_mark): New.
211 * rtl.h (get_pool_constant_mark): Add prototype.
212 * dwarf2out.c (mem_loc_descriptor): A pool constant cannot
213 be represented if it has not been output.
214
4161da12
AO
2152002-02-20 Alexandre Oliva <aoliva@redhat.com>
216
217 * combine.c (do_SUBST): Sanity check substitutions of
218 CONST_INTs, and reject them in SUBREGs and ZERO_EXTENDs.
219 (subst): Simplify SUBREG or ZERO_EXTEND instead of SUBSTing a
220 CONST_INT into its operand.
221 (known_cond): Likewise, for ZERO_EXTEND.
222 * simplify-rtx.c (simplify_unary_operation): Fix condition to
223 allow for simplification of wide modes. Reject CONST_INTs in
224 ZERO_EXTEND when their actual mode is not given.
225
3704ef74
AO
2262002-02-20 Alexandre Oliva <aoliva@redhat.com>
227
228 * c-decl.c (pushdecl): If no global declaration is found for an
229 extern declaration in block scope, try a limbo one.
230
7552da58
JJ
2312002-02-20 Jakub Jelinek <jakub@redhat.com>
232
233 PR c++/4401
234 * c-common.c (pointer_int_sum): Moved from...
235 * c-typeck.c (pointer_int_sum): ...here.
236 * c-common.h (pointer_int_sum): Add prototype.
237
00fae85d
JJ
2382002-02-20 Jakub Jelinek <jakub@redhat.com>
239
240 PR c++/5713
241 * c-decl.c (duplicate_decls): Return 0 if issued error about
242 redeclaration.
243
4636c87e
JJ
2442002-02-20 Roger Sayle <roger@eyesopen.com>
245 Jakub Jelinek <jakub@redhat.com>
246
247 PR c/4389
248 * tree.c (host_integerp): Ensure that the constant integer is
249 representable in a HOST_WIDE_INT or an unsigned HOST_WIDE_INT
250 when pos is zero or non-zero respectively. Clarify comment.
251 * c-format.c (check_format_info_recurse): Fix host_integerp
252 usage; the pos argument should be zero when assigning to a
253 signed HOST_WIDE_INT.
254
59bef189
RH
2552002-02-20 Richard Henderson <rth@redhat.com>
256
257 * config/i386/i386.c (ix86_expand_vector_move): Use the mode
258 of the operand, rather than assuming TImode.
259 (ix86_expand_binop_builtin): Cope with commutative patterns
260 using nonimmediate_operand for both operands.
261 (ix86_expand_timode_binop_builtin): Likewise.
262 (ix86_expand_store_builtin): Validate operand 1.
263 (ix86_expand_unop1_builtin): Likewise.
264
9338ffe6 2652002-02-20 Philip Blundell <philb@gnu.org>
c410d49e 266
9338ffe6
PB
267 PR 5705
268 * config/arm/arm.h (HARD_REGNO_RENAME_OK): New macro.
269
f322b423
RH
2702002-02-20 Richard Henderson <rth@redhat.com>
271
272 PR c/5615
273 * expr.h (ARGS_SIZE_TREE): Convert size.var to ssizetype.
274
d94084f7
TT
2752002-02-20 Tom Tromey <tromey@redhat.com>
276
277 * config/fr30/fr30.h (DWARF_LINE_MIN_INSTR_LENGTH): Removed.
278 * config/sh/sh.h (DWARF_LINE_MIN_INSTR_LENGTH): Removed.
279 * config/pj/pj.h (DWARF_LINE_MIN_INSTR_LENGTH): Removed.
280 * config/cris/cris.h (DWARF_LINE_MIN_INSTR_LENGTH): Removed.
281 * dwarf2out.c (DWARF_LINE_MIN_INSTR_LENGTH): Define
282 unconditionally.
283
37fa124a
AM
284Wed Feb 20 00:03:25 EST 2002 Alan Matsuoka <alanm@redhat.com>
285
286 * config/rs6000/rs6000.h (LEGITIMATE_OFFSET_ADDRESS_P): Look
287 for (const_int 0) in X not just INTVAL.
288
6e5bb5ad
JM
2892002-02-20 Joseph S. Myers <jsm28@cam.ac.uk>
290
291 * doc/extend.texi: Avoid or reduce overfull hboxes.
292
420e7dfa
DN
2932002-02-20 Diego Novillo <dnovillo@redhat.com>
294
295 * expmed.c (store_bit_field): Do not store bit fields using SUBREG
296 operations if the field does not start at a mode boundary.
297
1b7a2af6
JS
2982001-02-20 Joel Sherrill <joel@OARcorp.com>
299
300 * config/a29k/rtems.h, config/arm/rtems-elf.h, config/h8300/rtems.h,
301 config/mips/rtems.h: Use new style of -Asystem= rather than -Asystem().
302 Also done for -Acpu and -Amachine.
303
56cd5b95
NB
3042002-02-20 Neil Booth <neil@daikokuya.demon.co.uk>
305
306 * cppinit.c (init_dependency_output): Take deps output file
307 from -o if none given with -MF. Suppress normal output.
c410d49e 308 * gcc.c (cpp_unique_options): Have -M and -MM imply -E.
56cd5b95
NB
309 * doc/cpp.texi, doc/invoke.texi: Update.
310
042cdf71
ZW
3112002-02-19 Zack Weinberg <zack@codesourcery.com>
312
313 * toplev.c (output_quoted_string): Write unprintable
314 characters with octal escapes.
315
c1f11548
DE
3162002-02-19 David Edelsohn <edelsohn@gnu.org>
317
318 * config/rs6000/rs6000.h (CONDITIONAL_REGISTER_USAGE): Set
319 really_call_used[VRSAVE_REGNO] if not Altivec.
320
3212002-02-19 Alan Modra <amodra@bigpond.net.au>
c410d49e 322
c1f11548
DE
323 * config/rs6000/rs6000.c (u_short_cint_operand): Mask op with
324 MODE_MASK.
325 (constant_pool_expr_1): Fix formatting.
326 (rs6000_legitimize_reload_address): Likewise.
327
c964d90e
RK
328Tue Feb 19 20:13:57 2002 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
329
330 * config/sparc/sparc.md (nonlocal_goto): Use hard_frame_pointer_rtx
331 now that we have one.
332
ae34ac46
ZW
3332002-02-19 Zack Weinberg <zack@codesourcery.com>
334
335 * tree.h (struct tree_common): Remove aux. Add unused_0 at
336 end of first block of bitfields (which was only seven bits);
337 rename dummy to unused_1; remove comment which is no longer true.
338
293c28ee
GS
3392002-02-19 Gaute B Strokkenes <gs234@cam.ac.uk>
340
341 * doc/c-tree.texi (Classes, TYPE_BINFO): Fix typo.
342
7b8781c8
PB
3432002-02-19 Philip Blundell <pb@nexus.co.uk>
344
0cb6c58d 345 PR 5399
7b8781c8
PB
346 * config/arm/arm.h (THUMB_LEGITIMATE_CONSTANT_P): Accept anything
347 if generating PIC.
348
349 PR 5054
350 * config/arm/arm.md (call_insn) [TARGET_THUMB]: Use
351 arm_is_longcall_p rather than inspecting call-type cookie
352 directly.
353 (call_value_insn) [TARGET_THUMB]: Likewise.
354
5c464583
GS
3552002-02-19 Graham Stott <grahams@redhat.com>
356
357 * config/i386/i386.c (ix86_expand_builtin): Fix typo.
358
71c061e6
DE
3592002-02-19 David Edelsohn <edelsohn@gnu.org>
360
361 * config/rs6000/linux64.h (LINK_OS_LINUX_SPEC): Look in /lib64.
362 ({STARTFILE,ENDFILE}_LINUX_SPEC): Define.
6d1def5c 363 (FP_SAVE_INLINE): Delete.
71c061e6
DE
364
365 * config/rs6000/sysv4.h (ENDFILE_SPEC): Add crtsaveres.o.
366 * config/rs6000/eabi.asm: Remove ABI save restore routines.
367 * config/rs6000/t-ppccomm: Build crtsavres.o.
368 * config/rs6000/crtsavres.asm: New file.
369
3a7731fd
PB
3702002-02-19 Philip Blundell <philb@gnu.org>
371
372 * config/arm/arm.c (use_return_insn): Don't reject interrupt
373 functions.
374 (arm_compute_save_reg_mask): Save LR for interrupt functions too.
375 (output_return_instruction): Allow interrupt functions to return with
376 ldmfd sp!, {... pc}^. Use LDR to restore any single register.
377 (arm_expand_prologue): Subtract 4 before stacking LR in an
378 interrupt function.
379
14f583b8
PB
3802002-02-19 Philip Blundell <pb@nexus.co.uk>
381
382 * config/arm/arm.c (arm_encode_call_attribute): Operate on any
383 decl, not just FUNCTION_DECL.
384 (legitimize_pic_address): Handle local SYMBOL_REF like LABEL_REF.
385 (arm_assemble_integer): Likewise.
386 * config/arm/arm.h (ARM_ENCODE_CALL_TYPE): Allow any decl to be
387 marked local.
c410d49e 388
4cb7482c
MG
3892002-02-19 matthew green <mrg@eterna.com.au>
390
391 * config.gcc (sparc-*-netbsdelf*): Enable target.
392 (sparc64-*-netbsd*): New target.
393 * config/sparc/netbsd-elf.h: New file.
394 * config/sparc/t-netbsd64: New file.
395
2df3a718
GS
3962002-02-19 Gaute B Strokkenes <gs234@cam.ac.uk>
397
398 * doc/rtl.texi (Flags, MEM_SCALAR_P): Fix typo.
399
77f6c1eb
RS
4002002-02-19 Ryan T. Sammartino <ryants@shaw.ca>
401
402 * doc/invoke.texi: explicitly list the style guidelines that
403 -Weffc++ checks for.
404
fd973d56
JH
405Tue Feb 19 12:37:23 CET 2002 Jan Hubicka <jh@suse.cz>
406
407 * regmove.c (regmove_optimize): Avoid increasing of register pressure.
408
30518e45
NB
4092002-02-19 Neil Booth <neil@daikokuya.demon.co.uk>
410
411 PR other/5718
412 * gcc.c (cpp_unique_options): Treat -o as indicating object file
413 only if not -E. If -E, pass -o through to the preprocessor.
414
39ea5704
KH
4152002-02-19 Kazu Hirata <kazu@hxi.com>
416
417 * config/h8300/h8300.h (REGNO_REG_CLASS): Replace a literal
418 register number with an appropriate macro.
419
7355dba7
BM
4202002-02-19 Bryce McKinlay <bryce@waitaki.otago.ac.nz>
421
422 * doc/rtl.texi (Constants): Close @code tag.
423
91c8aa9e
AH
4242002-02-19 Aldy Hernandez <aldyh@redhat.com>
425
426 * config/i386/i386.md ("mmx_uavgv8qi3"): Use const_vector.
427 ("mmx_uavgv4hi3"): Same.
428 ("pmulhrwv4hi3"): Same.
429
430 * tree-inline.c (walk_tree): Handle vectors.
431
432 * c-common.c (constant_expression_warning): Handle vectors.
433 (overflow_warning): Same.
434
435 * sched-deps.c (sched_analyze_2): Handle vectors.
436
437 * rtlanal.c (rtx_unstable_p): Handle vectors.
438 (rtx_varies_p): Same.
439 (count_occurrences): Same.
440 (regs_set_between_p): Same.
441 (modified_between_p): Same.
442 (modified_in_p): Same.
443 (volatile_insn_p): Same.
444 (volatile_refs_p): Same.
445 (side_effects_p): Same.
446 (may_trap_p): Same.
447 (inequality_comparisons_p): Same.
448 (replace_regs): Same.
449 (computed_jump_p_1): Same.
450
451 * rtl.c (DEF_MACHMODE): Change all definitions to accept 8th
452 argument.
453 (inner_mode_array): New.
454 (copy_rtx): Handle vectors.
455 (copy_most_rtx): Same.
456 (rtx_equal_p): Same.
457 (get_mode_alignment): Adjust for vectors.
458
459 * resource.c (mark_referenced_resources): Handle vectors.
460 (mark_set_resources): Same.
461
462 * reload1.c (eliminate_regs): Handle vectors.
463 (elimination_effects): Same.
464 (scan_paradoxical_subregs): Same.
465
466 * reload.c (subst_reg_equivs): Handle vectors.
467
468 * regrename.c (scan_rtx): Handle vectors.
469
470 * regclass.c (reg_scan_mark_refs): Handle vectors.
471
472 * recog.c (find_single_use_1): Handle vectors.
473
474 * local-alloc.c (equiv_init_varies_p): Handle vectors.
475 (contains_replace_regs): Same.
476 (memref_referenced_p): Same.
477
478 * integrate.c (copy_rtx_and_substitute): Handle vectors.
479 (subst_constants): Same.
480
481 * genattrtab.c (attr_copy_rtx): Handle vectors.
482 (encode_units_mask): Same.
483 (clear_struct_flag): Same.
484 (count_sub_rtxs): Same.
485
486 * gcse.c (want_to_gcse_p): Handle vectors.
487 (oprs_unchanged_p): Same.
488 (hash_expr_1): Same.
489 (oprs_not_set_p): Same.
490 (expr_killed_p): Same.
491 (compute_transp): Same.
492 (store_ops_ok): Same.
493
494 * function.c (purge_addressof_1): Do not allow paradoxical subregs
495 of vectors.
496 (fixup_var_refs_1): Same.
497 (instantiate_virtual_regs_1): Same.
498
499 * fold-const.c (operand_equal_p): Handle vectors.
500 (fold): Same.
501 (rtl_expr_nonnegative_p): Same.
502
503 * flow.c (mark_used_regs): Handle vectors.
504
505 * df.c (df_uses_record): Handle vectors.
506
507 * cselib.c (cselib_subst_to_values): Handle vectors.
508 (cselib_mem_conflict_p): Same.
509 (hash_rtx): Same.
510
511 * cse.c (canon_reg): Handle vectors.
512 (fold_rt): Same.
513 (cse_process_notes): Same.
514 (count_reg_usage): Same.
515 (canon_hash): Same.
516
517 * alias.c (nonlocal_mentioned_p): Add case for CONST_VECTOR.
518
519 * combine.c (mark_used_regs_combine): Add case for CONST_VECTOR.
520
521 * emit-rtl.c (init_emit_once): Generate const0_rtx for vectors.
522 (gen_rtx): Handle CONST_VECTOR.
523 (gen_const_vector_0): New.
524 (copy_rtx_if_shared): CONST_VECTORs can be shared.
525 (reset_used_flags): Same.
526 (copy_insn_1): Same.
527 (initializer_constant_valid_p): Handle VECTOR_CST.
528
529 * doc/c-tree.texi (Expression trees): Document VECTOR_CST.
530
531 * doc/rtl.texi (Constants): Document const_vector.
532 (CONST0_RTX): Update for vectors.
533 (RTL sharing): Same.
534
535 * print-tree.c (print_node): Add case for VECTOR_CST.
536
537 * tree.h (TREE_VECTOR_CST_ELTS): New.
538 (struct tree_vector): New.
539 (union tree_node): Add vector node.
540 (build_vector): Add prototype.
541
542 * tree.def (VECTOR_CST): New.
543
544 * tree.c (build_vector): New.
545
546 * expmed.c (make_tree): Handle CONST_VECTOR.
547
548 * rtl.h (CONSTANT_P): CONST_VECTORs are constants too.
549 (CONST_VECTOR_ELT): New.
550 (CONST_VECTOR_NUNITS): New.
551
552 * machmode.h (GET_MODE_INNER): New.
553 (DEF_MACHMODE): Accept 8th arg.
554
555 * machmode.def: Add 8th argument for vector inner mode.
556 Add inner vector modes for vectors.
557
558 * rtl.def (VEC_CONST): Remove.
559 (CONST_VECTOR): New.
560
561 * expr.c (clear_storage): Allow vectors.
562 (is_zeros_p): Handle VECTOR_CST.
563
564 * varasm.c (output_constant_pool): Handle vectors.
565 (rtx_const): Add veclo and vechi fields.
566 (kind): Add RTX_VECTOR.
567 (decode_rtx_const): Add case for vector.
568
569 * config/rs6000/rs6000-protos.h: Add zero_constant.
c410d49e 570
91c8aa9e
AH
571 * config/rs6000/rs6000.c (rs6000_emit_move): Handle vector
572 constants. Force easy vector constants into memory.
573 (easy_vector_constant): New.
574 (emit_easy_vector_constant): New.
575 (rs6000_legitimize_reload_address): Do not generate bad reloads on
576 darwin.
577
578 * config/rs6000/rs6000.md ("altivec_lvx"): Reflect what
579 instruction does.
580 ("altivec_lvxl"): Same.
581 (altivec_lvebx): Same.
582 (altivec_lvehx): Same.
583 (altivec_lvewx): Same.
584 ("*movv4si_const0"): New.
585 ("*movv4sf_const0"): New.
586 ("*movv8hi_const0"): New.
587 ("*movv16qi_const0"): New.
588
d4d6d0ce
KH
5892002-02-18 Kazu Hirata <kazu@hxi.com>
590
591 * config/h8300/h8300.c (notice_update_cc): Use
592 cc_status.value2.
593
4915d3aa
KH
5942002-02-18 Kazu Hirata <kazu@hxi.com>
595
596 * config/h8300/h8300.md (divmod patterns): Change the
597 constraints for operands[1] to register_operand.
598
82be00ee
KH
5992002-02-18 Kazu Hirata <kazu@hxi.com>
600
601 * config/h8300/h8300-protos.h: Remove the prototype for
602 p_operand.
603 * config/h8300/h8300.c (p_operand): Remove.
604 * config/h8300/h8300.md: Replace p_operand with
605 const_int_operand.
606
1768c26f
PB
6072002-02-18 Philip Blundell <pb@nexus.co.uk>
608
609 * config/arm/arm.c (arm_compute_save_reg_mask): Fix typo in
610 comment.
611 (output_return_instruction): Allow use of LDR to unstack
612 return addresss even for interrupt handlers or when
613 interworking. If compiling for ARMv5, use interworking-safe
614 return instructions by default. Remove duplicated code and
615 lengthy "strcat" sequences.
616
ccd84f51
FS
6172002-02-18 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
618
619 * config/rs6000/sysv4.h (STARTFILE_SPEC): Use crtbeginT.o for -static.
620 (LINK_EH_SPEC): Define.
621 * config/rs6000/t-ppccomm (EXTRA_MULTILIB_PARTS): Add crtbeginT.o.
622
2c153108
UW
6232002-02-18 Ulrich Weigand <uweigand@de.ibm.com>
624
625 * config/s390/s390.c (s390_emit_prologue): Do not set the
626 frame_related flag for call-clobbered registers.
627
e95d6b23
JH
628Mon Feb 18 15:07:35 CET 2002 Jan Hubicka <jh@suse.cz>
629
630 * i386.c (classify_argument): Properly classify SSE/MMX modes and VOIDmode.
631 (construct_container): Fix handling of SSE operands.
632 (ix86_expand_builtin): Fix handling of 64bit pointers.
633 (mmx_maskmovq_rex): New pattern.
634
c43a12b5
JH
635Mon Feb 18 11:55:55 CET 2002 Jan Hubicka <jh@suse.cz>
636
637 * regrename.c (kill_set_value): Handle subregs properly.
638
aeb85a15
DB
6392002-02-18 David Billinghurst <David.Billinghurst@riotinto.com>
640
641 * objc/objc-act.c (handle_impent): Remove leading '*'
c410d49e 642 from objc_class_name.
aeb85a15 643
a615ca3e
RH
6442002-02-17 Richard Henderson <rth@redhat.com>
645
646 * config/alpha/alpha.c (some_small_symbolic_operand,
647 some_small_symbolic_operand_1, split_small_symbolic_operand,
648 split_small_symbolic_operand_1): Rename from *symbolic_mem_op*.
649 Handle small SYMBOL_REFs anywhere, not just inside memories.
650 * config/alpha/alpha-protos.h: Update.
651 * config/alpha/alpha.h (PREDICATE_CODES): Update.
652 * config/alpha/alpha.md (small symbolic operand splitter): Update.
653
ddb28441
RM
6542002-02-17 Roland McGrath <roland@frob.com>
655
656 * config.gcc (powerpc-*-gnu-gnualtivec*,
657 powerpc-*-gnu*, powerpc64-*-gnu*): New configurations.
658 * config/rs6000/gnu.h: New file.
659 * config/rs6000/sysv4.h (SUBTARGET_OVERRIDE_OPTIONS):
660 Grok "gnu" in rs6000_abi_name.
661 (ASM_SPEC, CC1_SPEC, LINK_START_SPEC, LINK_OS_SPEC,
662 CPP_ENDIAN_SPEC, CPP_SPEC, STARTFILE_SPEC, LIB_SPEC, ENDFILE_SPEC):
663 Grok -mcall-gnu analogous to -mcall-linux et al.
664 (LIB_GNU_SPEC, STARTFILE_GNU_SPEC, ENDFILE_GNU_SPEC,
665 LINK_START_GNU_SPEC, LINK_OS_GNU_SPEC, CPP_OS_GNU_SPEC): New macros.
666 (SUBTARGET_EXTRA_SPECS): Add *_os_gnu specs using them.
667
f6f8ada3
JJ
6682002-02-17 Jakub Jelinek <jakub@redhat.com>
669
670 PR c/3444:
671 * c-typeck.c (build_binary_op) [BIT_XOR_EXPR]: Remove explicit
672 shortening.
673
e16b32fc
PT
6742002-02-17 Philipp Thomas <pthomas@suse.de>
675
676 * config/cris/cris.h: Undefine STARTFILE_SPEC and
677 ENDFILE_SPEC before (re)defining them.
678
f9477efd
KH
6792002-02-17 Kazu Hirata <kazu@hxi.com>
680
681 * config/h8300/h8300.c: Fix formatting.
682 * config/h8300/h8300.h: Likewise.
683
404ae494
PT
6842002-02-17 Philipp Thomas <pthomas@suse.de>
685
686 * doc/tm.texi: Explain why empty strings should not be
687 marked for translation.
688
a52453cc
PT
6892002-02-17 Philipp Thomas <pthomas@suse.de>
690
691 * final.c (output_operand_lossage): Changed to accept
692 printf style arguments. Change calls where necessary.
693 * output.h (output_operand_lossage): Change declaration
694 accordingly. Update copyright.
695 * config/arc/arc.c config/fr30/fr30.c config/m32r/m32r.c
696 config/m88k/m88k.c : Adapt all calls to output_operand_lossage.
697 Update copyright date where necessary.
c410d49e 698
a52453cc
PT
699 * config/i386/i386.c (print_operand): Likewise. Remove use of
700 sprintf.
701
702 * config/cris/cris.c (cris_operand_lossage): Likewise.
703 Rename parameter so that exgettext recognizes it as
704 translatable message.
705 (LOSE_AND_RETURN): Rename parameter to msgid.
706
1c11abc4
KH
7072002-02-17 Kazu Hirata <kazu@hxi.com>
708
709 * config/h8300/h8300.h (CONDITIONAL_REGISTER_USAGE): Replace a
710 hard coded register number with an appropriate macro.
711 (HARD_REGNO_MODE_OK): Likewise.
712 (ARG_POINTER_REGNUM): Likewise.
713 (STATIC_CHAIN_REGNUM): Likewise.
714 (RETURN_ADDRESS_POINTER_REGNUM): Likewise.
715 * config/h8300/h8300.md (define_constants): Define more
716 register numbers.
717
a5d17ff3
PT
7182002-02-17 Philipp Thomas <pthomas@suse.de>
719
720 * config/i386/i386.h: Don't mark empty strings for translation.
721
1a7289c4
L
7222002-02-16 H.J. Lu <hjl@gnu.org>
723
724 * config/mips/linux.h (ASM_PREFERRED_EH_DATA_FORMAT): New.
725
afb58288
ZW
7262002-02-16 Zack Weinberg <zack@codesourcery.com>
727
728 * cppinit.c (merge_include_chains): Check for brack being
729 NULL before attempting to merge it with qtail.
730
d2af4dbd
AC
7312002-02-16 Andrew Cagney <ac131313@redhat.com>
732
733 * config/rs6000/netbsd.h (PREFERRED_DEBUGGING_TYPE): Set to
734 DBX_DEBUG.
735
2e1ed1e3
JDA
7362002-02-16 John David Anglin <dave@hiauly1.hia.nrc.ca>
737
738 * pa/t-pa, pa/t-pro, som.h: Revert last patch.
739
604c75b2
JDA
7402002-02-16 John David Anglin <dave@hiauly1.hia.nrc.ca>
741
742 * pa/t-pa (LIB2FUNCS_EXTRA): Don't build lib2funcs.asm.
743 * pa/t-pro (LIB2FUNCS_EXTRA): Likewise.
744 * som.h (DO_GLOBAL_DTORS_BODY): Delete define.
745
1a42b072
RK
746Sat Feb 16 13:48:50 2002 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
747
7303604f 748 * config/alpha/alpha.md (*movsi_nt_vms_nofix): Was *movsi_nt_vms;
1a42b072
RK
749 now only if !TARGET_FIX.
750 (*movsi_nt_vms_fix): New pattern.
751
c2ea1ac6
DR
7522002-02-16 Douglas B Rupp <rupp@gnat.com>
753
754 * config/alpha/alpha.c: Implement null frame procedure types on VMS.
755 (alpha_procedure_type): Replaces alpha_is_stack_procedure.
756 (alpha_sa_mask, alpha_sa_size): Reflect above change.
757 (alpha_pv_save_size, alpha_expand_prologue): Likewise.
758 (alpha_start_function, alpha_expand_epilogue): Likewise.
759 (unicosmk_gen_dsib): Likewise.
760
725e58b1
RK
761Sat Feb 16 13:39:09 2002 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
762
763 * expr.c (store_constructor): Handle target REG case for ARRAY_TYPE.
764
13e58269
UW
7652002-02-16 Ulrich Weigand <uweigand@de.ibm.com>
766
c410d49e 767 * config/s390/s390.c (pool_stop_uid, other_chunk, far_away,
13e58269
UW
768 check_and_change_labels, s390_final_chunkify): Delete.
769 (s390_split_branches, s390_chunkify_pool): New functions.
770 (s390_function_prologue): Call them.
c410d49e 771
13e58269
UW
772 * config/s390/s390.h (S390_REL_MAX): Delete.
773 (S390_CHUNK_MAX, S390_CHUNK_OV): Adjust values.
774
c410d49e 775 * config/s390/s390.md (cjump, icjump, jump): Fix length
13e58269
UW
776 attribute calculation.
777
778
34d1b01d
DE
7792002-02-15 David Edelsohn <edelsohn@gnu.org>
780
781 * config/rs6000/linux64.h (STRIP_NAME_ENCODING): Delete.
782 * config/rs6000/ppc-asm.h (JUMP_TARGET): Define for powerpc64.
783
be5cc51a
JDA
7842002-02-15 John David Anglin <dave@hiauly1.hia.nrc.ca>
785
786 * gcc.c (init_gcc_specs): Revert patch from 2002-02-15.
787 * config/pa/pa-linux.h (LIB_SPEC): Likewise.
788 * config/pa/pa32-linux.h (LINK_COMMAND_SPEC): Likewise.
789
ee96ce90
RS
7902002-02-15 Richard Sandiford <rsandifo@redhat.com>
791
792 * c-decl.c (grokdeclarator): Prevent a segfault on unnamed decls.
793
05fa709d
RS
7942002-02-15 Richard Sandiford <rsandifo@redhat.com>
795
796 * reload.c (find_dummy_reload): Check that an output register
797 is valid for its mode.
798
4606272b
AO
7992002-02-14 Alexandre Oliva <aoliva@redhat.com>
800
9a360704
AO
801 * combine.c (known_cond): After replacing the REG of a SUBREG, try
802 to simplify it.
803
4606272b
AO
804 * function.c (assign_parms): Demote promoted argument passed by
805 transparent reference.
806
e62d89a1
JS
8072001-02-14 Joel Sherrill <joel@OARcorp.com>
808
809 * config/arm/rtems-elf.h, config/h8300/rtems.h: Removed redundant
810 -Acpu() and -Amachine() to eliminate warnings.
811
6c4cf695
UW
8122002-02-14 Ulrich Weigand <uweigand@de.ibm.com>
813
814 * config/s390/linux.h (ASM_OUTPUT_ALIGNED_BSS): New.
815
037f11ef
KH
8162002-02-14 Kazu Hirata <kazu@hxi.com>
817
818 * config/h8300/h8300-protos.h: Update the prototype for
819 const_costs.
820 * config/h8300/h8300.c (const_costs): Treat SET as a little
821 more expensive operation.
822 * config/h8300/h8300.h (DEFAULT_RTX_COSTS): Update the
823 reference to const_costs.
824
fdc76b09
HPN
8252002-02-14 Hans-Peter Nilsson <hp@axis.com>
826
827 * config.gcc (c4x-*-rtems*): Fix typo in tm_file setting.
828
d76e6800
JJ
8292002-02-14 Jakub Jelinek <jakub@redhat.com>
830
831 PR c/5503:
832 * c-decl.c (duplicate_decls): If builtin type has TYPE_ARG_TYPES NULL,
833 use arguments from newtype.
834
5ae590d7
EC
8352002-02-13 Eric Christopher <echristo@redhat.com>
836
837 * config/mips/mips.c (override_options): Add check for march/mipsX
838 on the same command line. Fix error message in cpu processing.
839 Remove architecture and ISA checks.
840
b8513691
AH
8412002-02-14 Aldy Hernandez <aldyh@redhat.com>
842
843 * config/rs6000/darwin.h (ROUND_TYPE_ALIGN): Adjust for vectors.
844
845 * config/rs6000/sysv4.h (ROUND_TYPE_ALIGN): Add MAX.
846
78c875e8
AH
8472002-02-14 Aldy Hernandez <aldyh@redhat.com>
848
849 * config/rs6000/rs6000.md ("*movv4si_internal"): Add m<-r and r<-r
850 alternatives.
851 ("*movv8hi_internal1"): Same.
852 ("*movv16qi_internal1"): Same.
853 ("*movv4sf_internal1"): Same.
854
855 * config/rs6000/rs6000.c (rs6000_legitimize_reload_address): Do
856 not push_reload for altivec modes.
857
d76e6800 8582002-02-13 Joel Sherrill <joel@OARcorp.com>
f22b4bc4
JS
859
860 * config.gcc (a29k-*-rtems), config/a29k/rtems.h: General cleanup across
861 all RTEMS targets including removal of #includes from config/*/rtems*.h
862 file and adding them to tm_file setting. Added xm_defines=POSIX to
863 many targets.
864 * config.gcc (c4x-*-rtems), config/c4x/rtems.h: Ditto.
865 * config.gcc (h8300-*-rtems), config/h8300/rtems.h: Ditto.
866 * config.gcc (hppa1.1-*-rtems), config/pa/rtems.h: Ditto.
867 * config.gcc (i960-*-rtems), config/i960/rtems.h: Ditto.
868 * config.gcc (m68k-*-rtems*), config/m68k/rtems.h,
869 config/m68k/rtemself.h: Ditto.
870 * config.gcc (mips*-*-rtems*), config/mips/rtems.h,
871 config/mips/rtems64.h: Ditto.
872 * config.gcc (powerpc-*-rtems*), config/rs6000/rtems.h: Ditto.
873 * config.gcc (sh-*-rtems*), config/sh/rtems.h, config/sh/rtemself.h:
874 Ditto.
875 * config.gcc (sparc-*-rtems*), config/sparc/rtems.h,
876 config/sparc/rtemself.h: Ditto.
877 * config.gcc (v850-*-rtems*), config/v850/rtems.h: Ditto.
878 * config.gcc (arm-rtems), config/arm/rtems-elf.h: Ditto plus moved
879 arm-rtems stanza closer to other arm-elf targets and made arm-rtems
880 more like arm-elf.
881 * config.gcc (i[34567]86-*-rtems*), config/i386/djgpp-rtems.h,
882 config/i386/rtems.h, config/i386/rtemself.h: Ditto plus i386-rtemself
883 target made more similar to i386-elf.
884 * config/i386/t-rtems-i386: Added soft float support and multilibs.
885 * config/m68k/t-m68kbare: Add 68040 and 68060 as multilib alternatives to
886 be similar to config/m68k/t-m68kelf.
887 * gthr-rtems.h: Encapsulate with extern "C" for C++.
888
8686336f
JH
889Wed Feb 13 23:41:15 CET 2002 Jan Hubicka <jh@suse.cz>
890
891 * regmove.c (kill_value): Handle subregs.
892
558740bf
JH
893Wed Feb 13 23:34:30 CET 2002 Jan Hubicka <jh@suse.cz>
894
895 * i386.md (mul patterns): Allow memory operand to be first;
896 add expanders where needed; fix constraints.
897 (min?f_nonieee, max?f_nonieee, SSE TImode patterns):
898 Allow memory operand to be the first.
899
900 * i386.c (ix86_prepare_fp_compare_args): Fix condition for swapping
901 operands.
902
21117a17
JJ
9032002-02-13 Jakub Jelinek <jakub@redhat.com>
904
905 PR c/5681:
906 * expr.c (safe_from_p): Pass VOIDmode to true_dependence instead of
907 GET_MODE (x).
908
ec65b2e3
JJ
9092002-02-13 Jakub Jelinek <jakub@redhat.com>
910
911 PR optimization/5547:
912 * config/i386/i386.c (i386_simplify_dwarf_addr): Simplify
913 all valid IA-32 address modes involving non-scaled %ebx and
914 GOT/GOTOFF as displacement.
915
ce50cae8
UW
9162002-02-13 Ulrich Weigand <uweigand@de.ibm.com>
917
918 * config/s390/s390.c (s390_final_chunkify): Re-run shorten_branches
919 after emitting ltorg insns.
920
921 * config/s390/s390.md (*cmpdf_ccs_0, *cmpdf_ccs, *cmpsf_ccs_0,
922 *cmpsf_ccs, truncdfsf2_ieee, *adddf3, *addsf3, *subdf3, *subsf3,
923 *muldf3, *mulsf3, *divdf3, *divsf3, *negdf2, *negsf2, *absdf2,
924 *abssf2): Fix "op_type" attribute.
925
09eb789b
DR
9262002-02-13 Douglas B Rupp <rupp@gnat.com>
927
2dbe67bb
DR
928 * mkconfig.sh: Avoid using a subshell redirect.
929 ($output.T): Change to $(output)T.
930 (ENABLE_NLS): Remove unneeded undef.
931
ea5b9a1f
DR
932 * config/alpha/vms.h (MD_EXEC_PREFIX, MD_STARTFILE_PREFIX): Define.
933 * config/alpha/x-vms (libsubdir): Define.
934
3deb00ce
DR
935 * config/alpha/vms.h (MD_FALLBACK_FRAME_STATE_FOR): Handle
936 register frame procedures. Optimize retrieving context.
937
09eb789b
DR
938 * config/alpha/t-vms (MULTILIB_OPTIONS): Define.
939 (MULTILIB_DIRNAME, LIBGCC, INSTALL_LIBGCC): Likewise.
940 * config/alpha/vms.h (ASM_FILE_START): Write .arch directive.
941
1abade85
RK
942Wed Feb 13 09:45:08 2002 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
943
944 * alias.c (find_base_term, case ZERO_EXTEND, case SIGN_EXTEND):
945 Make same change as for find_base_value.
946
c283e63f
KH
9472002-02-13 Kazu Hirata <kazu@hxi.com>
948
949 * config/h8300/h8300.h (MODES_TIEABLE_P): Accept a combination
950 of QImode and SImode.
951
86039100
KH
9522002-02-13 Kazu Hirata <kazu@hxi.com>
953
954 * config/h8300/h8300.c (h8300_adjust_insn_length): Correct the
955 length computation of movsi.
956 * config/h8300/h8300.md (movsi_h8300hs): Correct the length.
957
e1429da0
KH
9582002-02-13 Kazu Hirata <kazu@hxi.com>
959
960 * config/h8300/h8300.md (subqi3): Tighten the predicate for
961 operands[2] to register_operand.
962
aebfea10
JH
963Wed Feb 13 10:35:56 CET 2002 Jan Hubicka <jh@suse.cz>
964
965 * i386.md (fop_*_comm_*): allow nonimmediate in the first operand.
966
0ec4e2a8
AH
9672002-02-12 Aldy Hernandez <aldyh@redhat.com>
968
969 * config/rs6000/rs6000.md: Use predicate altivec_register_operand
970 for altivec_lvx* and altivec_stvx*.
971 ("*movv4si_internal"): Add constraint for loading from GPRs.
972 ("*movv8hi_internal1"): Same.
973 ("*movv16qi_internal1"): Same.
974 ("*movv4sf_internal1"): Same.
975
976 * config/rs6000/rs6000.c (altivec_register_operand): New.
977
978 * config/rs6000/rs6000.h (PREDICATE_CODES): Add
979 altivec_register_operand.
980
b007569d
HPN
9812002-02-13 Hans-Peter Nilsson <hp@bitrange.com>
982
983 * config/mmix/mmix.c (mmix_assemble_integer) <case 4>: Don't
984 handle SYMBOL_REF.
985
e6834654
SS
9862002-02-13 Stan Shebs <shebs@apple.com>
987
988 * c-typeck.c (digest_init): Handle vectors.
989 (really_start_incremental_init): Same.
990 (pop_init_level): Same.
991 (process_init_element): Same.
992
993 * varasm.c (output_constant): Same.
994
995 * expr.c (clear_storage): Same.
996 (store_constructor): Same.
997
d9b3eb63
EC
9982002-02-12 Eric Christopher <echristo@redhat.com>
999
1000 * explow.c (hard_function_value): Add comment explaining
1001 signed/unsigned comparison.
1002
56d44285
JJ
10032002-02-12 Jakub Jelinek <jakub@redhat.com>
1004
1005 * jump.c (never_reached_warning): Add finish argument.
1006 If finish is NULL, stop on CODE_LABEL, otherwise stop before first
1007 real insn after end.
1008 * rtl.h (never_reached_warning): Adjust prototype.
1009 * cse.c (cse_insn): Pass NULL as finish to never_reached_warning.
1010 * cfgrtl.c (flow_delete_block): Pass b->end as finish to
1011 never_reached_warning.
1012
fc209487
GS
10132002-02-12 Graham Stott <grahams@redhat.com>
1014
1015 * config/hp/pa.h (GO_IF_LEGITIMATE_ADDRESS): Fix typos.
1016
1e41e866
KH
10172002-02-12 Kazu Hirata <kazu@hxi.com>
1018
1019 * config/h8300/h8300.c (shift_alg_hi): Improve the 15-bit
1020 logical shifts on H8/300.
1021 (shift_alg_si): Improve several shifts on H8/300.
1022 (get_shift_alg): Likewise.
1023
a36a47ad
GS
10242002-02-12 Graham Stott <grahams@redhat.com>
1025
1026 * config/pa/pa.c (compute_movstrsi_length): Fix typos.
1027
0aacc8ed
RK
1028Tue Feb 12 10:12:56 2002 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
1029
1030 * alias.c (find_base_value, case ZERO_EXTEND, case SIGN_EXTEND):
1031 Handle #ifdef POINTERS_EXTEND_UNSIGNED.
1032
a02ac966
HPN
10332002-02-11 Hans-Peter Nilsson <hp@bitrange.com>
1034
1035 * config/mmix/mmix.c (mmix_assemble_integer) <case 1, 2>: Handle
1036 non-CONST_INT through default_assemble_integer.
1037 <case 4>: Likewise, for non-CONST_INT, non-SYMBOL_REF.
1038 <case 8>: Abort for CONST_DOUBLE.
1039
d6e06ddc
JDA
10402002-02-11 John David Anglin <dave@hiauly1.hia.nrc.ca>
1041
1042 * gcc.c (init_gcc_specs): Add static libgcc to link when "-shared"
1043 is specified.
1044 * config/pa/pa-linux.h (LIB_SPEC): Delete.
1045 * config/pa/pa32-linux.h (LINK_COMMAND_SPEC): Delete.
1046
515342a8
AH
10472002-02-11 Andrew Haley <aph@cambridge.redhat.com>
1048
1049 * config/stormy16/stormy16.md (zero_extendqihi2): New.
1050
cddd8b72
AO
10512002-02-11 Alexandre Oliva <aoliva@redhat.com>
1052
66df7a98
AO
1053 * regrename.c (regrename_optimize): Don't accept a
1054 part-clobbered register if the replaced register is not part
1055 clobbered.
1056
841404cd
AO
1057 * calls.c (store_one_arg): In the non-BLKmode non-partial case,
1058 take padding into account when computing the argument value.
1059
1d1ade42
AO
1060 * config/sh/sh.h (FUNCTION_ARG_REGNO_P): Fix parenthesizing error.
1061
cddd8b72
AO
1062 * combine.c (try_combine): Apply substitutions in
1063 CALL_INSN_FUNCTION_USAGE too.
1064
5c665b88
AH
10652002-02-11 Aldy Hernandez <aldyh@redhat.com>
1066
77f6c1eb
RS
1067 * config/rs6000/rs6000.c (altivec_init_builtins): Handle
1068 __builtin_altivec_abs*.
1069 (bdesc_abs): New.
5c665b88 1070
77f6c1eb
RS
1071 * config/rs6000/rs6000.h (rs6000_builtins): Add
1072 ALTIVEC_BUILTIN_ABS*.
5c665b88 1073
77f6c1eb
RS
1074 * config/rs6000/altivec.h: Use const char for builtins expecting
1075 literals.
1076 (vec_abs): New versions for C and C++.
1077 (vec_abss): Same.
5c665b88 1078
3494f1b4
KH
10792002-02-10 Kazu Hirata <kazu@hxi.com>
1080
1081 * config/h8300/h8300.h (INITIALIZE_TRAMPOLINE): Simplify by
1082 using Pmode.
1083
72431aef
KH
10842002-02-10 Kazu Hirata <kazu@hxi.com>
1085
1086 * config/h8300/h8300.h (STACK_POINTER_REGNUM): Use the
1087 constant definition from h8300.md.
1088 (FRAME_POINTER_REGNUM): Likewise.
1089 * config/h8300/h8300.md (define_constants): Add FP_REG.
1090
87e4ee91
KH
10912002-02-10 Kazu Hirata <kazu@hxi.com>
1092
1093 * config/h8300/h8300.c (print_operand): Remove redundant code.
1094
9c188705
KH
10952002-02-10 Kazu Hirata <kazu@hxi.com>
1096
1097 * config/h8300/h8300-protos.h: Remove the prototype for byte_reg.
1098 * config/h8300/h8300.c (byte_reg): Make it static.
1099
fba78abb
RH
11002002-02-10 Richard Henderson <rth@redhat.com>
1101
1102 PR c/5623
1103 * c-typeck.c (incomplete_type_error): Handle flexible array members.
1104
65739e62
RH
11052002-02-10 Richard Henderson <rth@redhat.com>
1106
1107 PR c++/5624
1108 * tree.c (append_random_chars): Don't abort if main_input_filename
1109 does not exist.
1110
247cb9df
HPN
11112002-02-10 Hans-Peter Nilsson <hp@bitrange.com>
1112
1113 * config/mmix/t-mmix (MULTILIB_EXTRA_OPTS): Disable.
1114
232bd029
KH
11152002-02-10 Kazu Hirata <kazu@hxi.com>
1116
65739e62 1117 * config/h8300/h8300.md (pushhi1_h8300): Correct the mode used.
232bd029
KH
1118 (pushhi1): Likewise.
1119
276ef573
JDA
11202002-02-10 John David Anglin <dave@hiauly1.hia.nrc.ca>
1121
1122 * pa.c (reg_before_reload_operand): Don't accept a SUBREG operand.
1123 * pa.h (PREDICATE_CODES): Adjust codes for reg_before_reload_operand.
1124
617e9ee5
DB
11252002-02-09 David O'Brien <obrien@FreeBSD.org>
1126
1127 * config/sparc/freebsd.h(TARGET_DEFAULT): Add MASK_EPILOGUE setting and
1128 remove MASK_VIS.
1129 (ASM_CPU_DEFAULT_SPEC): Remove. Default setting is fine.
1130
6dfa4005
KH
11312002-02-09 Kazu Hirata <kazu@hxi.com>
1132
1133 * config/h8300/h8300.c (output_logical_op): Use sub.w to clear
1134 a half of an SImode register on H8/300.
1135
749e7b80
JH
1136Sat Feb 9 18:28:02 CET 2002 Jan Hubicka <jh@suse.cz>
1137
1138 * i386.md (movdi_2): Add missing '!'.
1139
ca77d87c
KH
11402002-02-09 Kazu Hirata <kazu@hxi.com>
1141
1142 * config/h8300/h8300.h: Fix formatting. Remove commented-out
1143 definitions.
1144
16c96304
KH
11452002-02-09 Kazu Hirata <kazu@hxi.com>
1146
1147 * config/h8300/h8300.md (length): Correct the distance valid
1148 for the short branch.
1149
a364bc90
KH
11502002-02-09 Kazu Hirata <kazu@hxi.com>
1151
1152 * config/h8300/h8300.md (iorhi3): Tighten the predicates.
1153
e4ec2cac
AO
11542002-02-09 Alexandre Oliva <aoliva@redhat.com>
1155
a138247b
AO
1156 * config/sh/sh.h (REGISTER_NATURAL_MODE): Save part-clobbered
1157 registers in SImode.
1158 (HARD_REGNO_CALL_PART_CLOBBERED) [TARGET_SHMEDIA32]: Set r18 as
1159 part-clobbered.
1160
2b1fd83f
AO
1161 * config/sh/sh.c (expand_prologue): Fix mis-applied 2001-11-09's
1162 patch.
d9b3eb63 1163
fa5322fa
AO
1164 Contribute sh64-elf.
1165 2002-02-09 Alexandre Oliva <aoliva@redhat.com>
1166 * config/sh/sh.c (TARGET_CANNOT_MODIFY_JUMPS_P): Define to...
1167 (sh_cannot_modify_jumps_p): New function.
1168 2002-02-05 Alexandre Oliva <aoliva@redhat.com>
1169 * config/sh/sh.c (TARGET_MS_BITFIELD_LAYOUT_P): Define to...
1170 (sh_ms_bitfield_layout_p): New function.
1171 2002-02-04 Alexandre Oliva <aoliva@redhat.com>
1172 Zack Weinberg <zack@codesourcery.com>
1173 * config/sh/sh.h (TRAMPOLINE_ADJUST_ADDRESS): Use
1174 expand_simple_binop instead of expand_binop.
1175 2002-02-03 Alexandre Oliva <aoliva@redhat.com>
1176 * config/sh/sh.h (OVERRIDE_OPTIONS) [! TARGET_SH5]: Disable
1177 use of .quad and .uaquad.
1178 * config/sh/sh.c (TARGET_ASM_UNALIGNED_DI_OP,
1179 TARGET_ASM_ALIGNED_DI_OP): Add comment pointing to the above.
1180 2002-01-24 Alexandre Oliva <aoliva@redhat.com>
1181 * config/sh/sh.md (movdi_const, movdi_const_32bit,
1182 movdi_const_16bit): Make sure all CONSTs have modes.
1183 (sym2PIC): Ditto, but by adjusting all callers.
1184 * config/sh/sh.c (calc_live_regs) [TARGET_SHCOMPACT]: Set pr_live
1185 if the prologue calls the SHmedia argument decoder or register
1186 saver.
1187 2002-01-24 Alexandre Oliva <aoliva@redhat.com>
1188 * config/sh/sh.c (TARGET_ASM_UNALIGNED_DI_OP): Define.
1189 (TARGET_ASM_ALIGNED_DI_OP): Likewise.
1190 (sh_expand_epilogue): Don't emit USE of return target register.
1191 (prepare_move_operands): Legitimize DImode PIC addresses.
1192 (sh_media_register_for_return): Skip tr0, used to initialize the
1193 PIC register.
1194 (sh_expand_prologue): Remove explicit USE of return register.
1195 (nonpic_symbol_mentioned_p): PC is non-PIC. Don't recurse in
1196 CONST_DOUBLEs. UNSPEC_GOTPLT is PIC.
1197 * config/sh/sh.h (ASM_OUTPUT_DOUBLE_INT): Removed, obsolete.
1198 (OVERRIDE_OPTIONS): Don't disable PIC on SH5.
1199 (EXTRA_CONSTRAINT_S): Use MOVI_SHORI_BASE_OPERAND_P instead of
1200 EXTRA_CONSTRAINT_T.
1201 (GOT_ENTRY_P, GOTPLT_ENTRY_P, GOTOFF_P, PIC_ADDR_P): New.
1202 (MOVI_SHORI_BASE_OPERAND_P): New.
1203 (NON_PIC_REFERENCE_P, PIC_REFERENCE_P): New.
1204 (EXTRA_CONSTRAINT_T): Define in terms of them.
1205 (OUTPUT_ADDR_CONST_EXTRA): Handle UNSPEC_GOTPLT.
1206 * config/sh/sh.md (movsi_media, movsi_media_nofpu,
1207 movdi_media, movdi_media_nofpu): Add SIBCALL_REGS class to
1208 alternatives supporting TARGET_REGS.
1209 (UNSPEC_GOTPLT): New constant.
1210 (movdi split): Move incrementing of LABEL_NUSES...
1211 (movdi_const, movdi_const_32bit): Here. Use
1212 MOVI_SHORI_BASE_OPERAND_P instead of EXTRA_CONSTRAINT_T.
1213 (movdi_const_16bit): New.
1214 (call, call_value) [flag_pic]: Use GOTPLT.
1215 (call_pop, call_value_pop): New expands.
1216 (call_pop_compact, call_pop_rettramp): New insns.
1217 (call_value_pop_compact, call_value_pop_rettramp): New insns.
1218 (sibcall) [flag_pic]: Use GOT.
1219 (builtint_setjmp_receiver): Remove bogus, unused expand.
1220 (GOTaddr2picreg): Implement for SHcompact and SHmedia.
1221 (*pt, *ptb, ptrel): New insns.
1222 (sym2GOT): Handle DImode GOT.
1223 (sym2GOTPLT, symGOTPLT2reg): New expands.
1224 (sym2PIC): New expand.
1225 (shcompact_return_tramp): Use GOTPLT to return trampoline.
1226 (shcompact_return_tramp_i): Use return register explicitly.
1227 * config/sh/sh.h (OVERRIDE_OPTIONS) [TARGET_SHMEDIA]: Don't
1228 disable flag_reorder_blocks.
1229 2002-01-19 Alexandre Oliva <aoliva@redhat.com>
1230 * config/sh/sh.md (sibcall_compact): Reorder return, uses and
1231 clobbers, for clarity.
1232 (sibcall_epilogue) [TARGET_SHCOMPACT]: Mark saving and
1233 restoring of r0 in macl as MAYBE_DEAD.
1234 2002-01-18 Alexandre Oliva <aoliva@redhat.com>
1235 * config/sh/sh.h (LONG_DOUBLE_TYPE_SIZE): Define.
1236 * config/sh/sh.md (movv4sf_i, movv16sf_i): Fix uses of
1237 alter_subreg all over.
1238 (jump) [TARGET_SHMEDIA]: FAIL to create new jumps after
1239 reload, instead of emitting instructions that would require
1240 reloading.
1241 (casesi_load_media): Add missing modes.
1242 2001-11-09 Alexandre Oliva <aoliva@redhat.com>
1243 * config/sh/sh.c (sh_expand_prologue): Mark the PIC register
1244 as used if the argument decoder is called.
1245 2001-08-28 Alexandre Oliva <aoliva@redhat.com>
1246 * config/sh/sh.md (udivsi3, divsi3): Load libcall symbol name in
1247 Pmode, then extend it to DImode if necessary.
1248 2001-08-28 Stephen Clarke <Stephen.Clarke@st.com>
1249 * config/sh/sh.h (LEGITIMATE_CONSTANT_P): Don't accept DFmode
1250 constants in FPU-enabled SHmedia, let them be loaded from memory.
1251 2001-08-28 Alexandre Oliva <aoliva@redhat.com>
1252 * config/sh/sh.md (cmpeqdi_media, cmpgtdi_media, cmpgtudi_media):
1253 Adjust whitespace in assembly output templates.
1254 2001-08-28 Stephen Clarke <Stephen.Clarke@st.com>
1255 * config/sh/sh.md (movdicc_false, movdicc_true, movdicc): Adjust
1256 mode of if_then_else.
1257 2001-08-04 Alexandre Oliva <aoliva@redhat.com>
1258 * config/sh/sh64.h (CPP_DEFAULT_CPU_SPEC): Override definition in
1259 sh.h.
1260 2001-07-26 Andrew Haley <aph@cambridge.redhat.com>
1261 Joern Rennecke <amylaar@redhat.com>
1262 * config/sh/sh64.h (CPP_DEFAULT_CPU_SPEC): New.
1263 (SUBTARGET_CPP_PTR_SPEC): New.
1264 (SUBTARGET_CPP_SPEC): Remove.
1265 2001-07-06 Chandrakala Chavva <cchavva@redhat.com>
1266 * config/sh/sh.md (movsf_media_nofpu+1, movdf_media_nofpu+1):
1267 Fix typo in previous checkin.
1268 2001-07-11 Chandrakala Chavva <cchavva@redhat.com>
1269 * config/sh/sh.h (MODES_TIEABLE_P): Fix redact indentations.
1270 2001-07-10 Chandrakala Chavva <cchavva@cygnus.com>
1271 Alexandre Oliva <aoliva@redhat.com>
1272 * config/sh/sh.h (MODES_TIEABLE_P): Don't tie modes wider than
1273 what single FP register can hold for SHmedia target.
1274 2001-07-06 Chandrakala Chavva <cchavva@redhat.com>
1275 Alexandre Oliva <aoliva@redhat.com>
1276 * config/sh/sh.md (movsf_media_nofpu+1, movdf_media_nofpu+1):
1277 Do not split into SUBREG.
1278 2001-06-14 Alexandre Oliva <aoliva@redhat.com>
1279 * config/sh/ushmedia.h, config/sh/sshmedia.h: Updated signatures
1280 and added new functions as specified in SH5 ABI r9.
1281 2001-06-04 Alexandre Oliva <aoliva@redhat.com>
1282 * config/sh/lib1funcs.asm (GCC_nested_trampoline): Align to an
1283 8-byte boundary.
1284 2001-06-03 Alexandre Oliva <aoliva@redhat.com>
1285 * config/sh/sh.c (dump_table): Add const0_rtx in calls of
1286 gen_consttable_4 and gen_consttable_8. Emit multiple labels
1287 and consttable_window_ends.
1288 2001-06-03 Graham Stott <grahams@redhat,com>
1289 * config/sh/sh.md (movdi split): Remove unused variable last_insn.
1290 2001-05-16 Alexandre Oliva <aoliva@redhat.com>
1291 * config/sh/sh.c (print_operand): Handle floating-point pair,
1292 vector and matrix registers.
1293 * config/sh/sh.h (REGISTER_MOVE_COST): Take floating-pointer
1294 vector modes into account.
1295 * config/sh/sh.md (movv2sf): Split move between registers into
1296 movdf.
1297 (movv4sf, movv16sf): Introduce insns that get split only after
1298 reload.
1299 * config/sh/shmedia.h: Fix Copyright dates.
1300 * config/sh/ushmedia.h: Likewise. Move loop counter
1301 declarations into conditionals that uses them.
1302 (sh_media_FVADD_S, sh_media_FVSUB_S): Fix off-by-one error in
1303 loop boundary.
1304 * config/sh/sshmedia.h: Fix Copyright dates.
1305 (sh_media_PUTCFG): Fix constraints.
1306 2001-05-12 Alexandre Oliva <aoliva@redhat.com>
1307 * config/sh/sh.h (TARGET_PTRMEMFUNC_VBIT_LOCATION): Define to
1308 ptrmemfunc_vbit_in_delta for SH5.
1309 2001-05-08 Alexandre Oliva <aoliva@redhat.com>
1310 * config/sh/sh.h (TARGET_SWITCHES): Document -m5-*.
1311 * invoke.texi: Likewise.
1312 2001-04-14 Alexandre Oliva <aoliva@redhat.com>
1313 * config/sh/lib1funcs.asm (GCC_push_shmedia_regs,
1314 GCC_push_shmedia_regs_nofpu, GCC_pop_shmedia_regs,
1315 GCC_pop_shmedia_regs_nofpu): New global symbols.
1316 * config/sh/t-sh64 (LIB1ASMFUNCS): Add them.
1317 * config/sh/sh.h (SHMEDIA_REGS_STACK_ADJUST): New macro.
1318 * config/sh/sh.c (calc_live_regs): Account for PR's saving in
1319 compact function with nonlocal labels.
1320 (sh_expand_prologue) [SHcompact]: Push SHmedia regs if needed.
1321 (sh_expand_epilogue) [SHcompact]: Pop them when appropriate.
1322 (initial_elimination_offset): Account for their stack space.
1323 * config/sh/sh.md (shmedia_save_restore_regs_compact): New insn.
1324 * config/sh/sh.md (movsi_media, movsi_media_nofpu, movqi_media,
1325 movhi_media, movdi_media, movdi_media_nofpu, movdf_media,
1326 movdf_media_nofpu, movsf_media, movsf_media_nofpu): Require at
1327 least one of the operands to be a register.
1328 (movv2sf): Likewise. Renamed to movv2sf_i.
1329 (movdi, movdf, movv2sf, movv4sf, movv16sf, movsf):
1330 prepare_move_operands() before emitting SHmedia insns.
1331 2001-04-03 Alexandre Oliva <aoliva@redhat.com>
1332 * config/sh/crti.asm (init, fini) [__SH5__ && ! __SHMEDIA__]:
1333 Don't save nor initialize r12. Don't mis-align the stack.
1334 Pad the code with a nop.
1335 * config/sh/crti.asm: Don't restore r12. Don't mis-align the
1336 stack.
1337 2001-03-13 Alexandre Oliva <aoliva@redhat.com>
1338 * gcc/longlong.h (__umulsidi3, count_leading_zeros)
1339 [__SHMEDIA__]: Implement.
1340 2001-03-11 Alexandre Oliva <aoliva@redhat.com>
1341 * config/sh/sh.md: Set latency of `pt' closer to reality.
1342 (movsi_media, movsi_media_nofpu, movdi_media, movdi_media_nofpu,
1343 movdf_media, movdf_media_nofpu, movsf_media, movsf_media_nofpu):
1344 Set move, load and store type attributes.
1345 * config/sh/sh.c (sh_loop_align) [TARGET_SH5]: Set to 3.
1346 * config/sh/sh.h (OVERRIDE_OPTIONS) [TARGET_SH5]: Disable
1347 profiling.
1348 * config/sh/sh.h (PROMOTE_MODE): Sign-extend SImode to DImode.
1349 * config/sh/sh-protos.h (sh_media_register_for_return): Declare.
1350 * config/sh/sh.c (sh_media_register_for_return): New function.
1351 (sh_expand_prologue) [TARGET_SHMEDIA]: Copy r18 to an available
1352 branch-target register.
1353 (sh_expand_epilogue) [TARGET_SHMEDIA]: Explicitly USE it.
1354 * config/sh/sh.md (return_media_i): Use any call-clobbered
1355 branch-target register.
1356 (return_media): If r18 wasn't copied in the prologue, copy it
1357 here.
1358 * config/sh/sh.h (CONDITIONAL_REGISTER_USAGE) [TARGET_SHMEDIA]:
1359 Clear class FP0_REGS.
1360 * config/sh/sh64.h (LINK_SPEC): Removed incorrect default copied
1361 from elf.h.
1362 2001-03-08 DJ Delorie <dj@redhat.com>
1363 * config/sh/sh.h (OVERRIDE_OPTIONS): Disable relaxing for SHMEDIA.
1364 2001-02-09 Alexandre Oliva <aoliva@redhat.com>
1365 * config/sh/sh.md (sibcall_compact): Set fp_mode to single.
1366 2001-02-07 Alexandre Oliva <aoliva@redhat.com>
1367 * config/sh/sh.h (INT_ASM_OP) [SHMEDIA64]: Use `.quad'.
1368 2001-02-03 Alexandre Oliva <aoliva@redhat.com>
1369 * config/sh/sh.h (INIT_CUMULATIVE_ARGS): Compute size of BLKmode
1370 return value correctly for call_cookie.
1371 2001-02-01 Alexandre Oliva <aoliva@redhat.com>
1372 * config/sh/crt1.asm (start): Modified so as to call
1373 ___setup_argv_and_call_main.
1374 2001-01-26 Alexandre Oliva <aoliva@redhat.com>
1375 * config/sh/sh.h (FUNCTION_ARG_ADVANCE): Don't count stack_regs in
1376 SHmedia mode.
1377 2001-01-20 Alexandre Oliva <aoliva@redhat.com>
1378 * config/sh/sh.h (STRIP_DATALABEL_ENCODING): New macro.
1379 (STRIP_NAME_ENCODING): Use it.
1380 (ASM_OUTPUT_LABELREF): Likewise. Don't call assemble_name().
1381 2001-01-19 Alexandre Oliva <aoliva@redhat.com>
1382 * config/sh/sh.md (sgeu) [! SHMEDIA]: Fix invocation of
1383 prepare_scc_operands().
1384 * config/sh/sh.h (SH_DATALABEL_ENCODING): Change to "#"...
1385 (DATALABEL_SYMNAME_P): ... so that we don't need memcmp here.
1386 2001-01-17 Alexandre Oliva <aoliva@redhat.com>
1387 * config/sh/sh.h (STRIP_NAME_ENCODING): Strip leading `*'.
1388 2001-01-13 Alexandre Oliva <aoliva@redhat.com>
1389 * config/sh/sh.md (shcompact_incoming_args): Use R0_REG.
1390 * config/sh/sh.md (R7_REG, R8_REG, R9_REG): Define as constants,
1391 used in shcompact_incoming_args.
1392 * config/sh/sh.c (sh_expand_epilogue): Fix thinko in previous
1393 change.
1394 * config/sh/crt1.asm (start) [SH5]: Switch to single-precision
1395 mode.
1396 * config/sh/lib1funcs.asm (sdivsi3_i4, udivsi3_i4, set_fpscr):
1397 Adjust accordingly.
1398 * config/sh/sh.c (sh_expand_prologue, sh_expand_epilogue):
1399 Simplify. Adjust. Add sanity check.
1400 * config/sh/sh.h (TARGET_SWITCHES) [5-compact]: Set
1401 FPU_SINGLE_BIT.
1402 * config/sh/sh.md (udivsi3_i4_single, divsi3_i4_single): Match
1403 TARGET_SHCOMPACT.
1404 (udivsi3, divsi3): Use them.
1405 (force_mode_for_call): New insn.
1406 (call, call_value, sibcall_value): Emit it before SHcompact
1407 calls.
1408 2001-01-11 Alexandre Oliva <aoliva@redhat.com>
1409 * config/sh/sh.md (call, call_value, sibcall): Make sure the
1410 call cookie is non-NULL before taking its value.
1411 2001-01-10 Alexandre Oliva <aoliva@redhat.com>
1412 * config.gcc (sh64): Set target_requires_64bit_host_wide_int.
1413 2001-01-09 Alexandre Oliva <aoliva@redhat.com>
1414 * config/sh/sh.md (shcompact_incoming_args): Set argument memory
1415 block.
1416 * config/sh/sh.h (STATIC_CHAIN_REGNUM) [SH5]: Use r1.
1417 * config/sh/sh.c (sh_expand_prologue) [SH5]: Use r0 as
1418 temporary for stack adjusts. Use MACL and MACH to pass
1419 arguments to shcompact_incoming_args.
1420 * config/sh/sh.md (shcompact_incoming_args): Adjust. Don't
1421 clobber r1.
1422 * config/sh/lib1funcs.asm (shcompact_incoming_args): Likewise.
1423 (nested_trampoline): Load static chain address into r1.
1424 * config/sh/sh.md (movdi_media splits): Fix sign-extension.
1425 2001-01-07 Alexandre Oliva <aoliva@redhat.com
1426 * config/sh/sh.c (fpul_operand) [SHMEDIA]: Just call
1427 fp_arith_reg_operand().
1428 2001-01-06 Alexandre Oliva <aoliva@redhat.com>
1429 * config/sh/sh.md (casesi): Sign-extend the first two operands,
1430 and use signed compares for them.
1431 * config/sh/sh.c (dump_table): Don't emit 8-byte constants after
1432 4-byte ones. Instead, inter-leave them, maintaining the 8-byte
1433 ones properly aligned.
1434 (find_barrier): Account for extra alignment needed for 8-byte wide
1435 constants.
1436 (machine_dependent_reorg): Require a label for the second 4-byte
1437 constant after an 8-byte one.
1438 * config/sh/lib1funcs.asm (sdivsi3): Fix typo in yesterday's
1439 change.
1440 2001-01-05 Alexandre Oliva <aoliva@redhat.com>
1441 * config/sh/sh.c (machine_dependent_reorg) [SHCOMPACT]: Reset
1442 last_float when switching float modes.
1443 * config/sh/sh.md (movdf) [SH5]: Don't use stack-pointer
1444 auto-increment for general-purpose registers.
1445 * config/sh/lib1funcs.asm (sdivsi3) [SHMEDIA]: Sign-extend the
1446 result.
1447 * config/sh/sh.c (sh_expand_prologue) [SH5]: Use r1 as temporary
1448 for stack adjust.
1449 * config/sh/sh.c (sh_builtin_saveregs): Support using all
1450 registers for varargs.
1451 2001-01-01 Alexandre Oliva <aoliva@redhat.com>
1452 * config/sh/sh.h (FUNCTION_ARG_ADVANCE): Simplify.
1453 * config/sh/sh.h (CALL_COOKIE_STACKSEQ,
1454 CALL_COOKIE_STACKSEQ_SHIFT, CALL_COOKIE_STACKSEQ_GET): New macros.
1455 (CALL_COOKIE_INT_REG_SHIFT): Adjust.
1456 (FUNCTION_ARG_ADVANCE): Use SHCOMPACT_FORCE_ON_STACK. Adjust
1457 call_cookie accordingly.
1458 (FUNCTION_ARG): Test SHCOMPACT_FORCE_ON_STACK.
1459 (SHCOMPACT_BYREF): Likewise.
1460 (SHCOMPACT_FORCE_ON_STACK): New macro.
1461 * config/sh/sh.c (sh_expand_prologue): Use new call_cookie format.
1462 (sh_builtin_saveregs): Likewise.
1463 * config/sh/lib1funcs.asm (shcompact_call_trampoline,
1464 shcompact_incoming_args): Use new shift values. Support
1465 sequences of consecutive and non-consecutive pushes/pops.
1466 * config/sh/sh.md (return): Don't explicitly use PR_REG.
1467 2001-01-05 Hans-Peter Nilsson <hpn@cygnus.com>
1468 * config/sh/sh.h (TEXT_SECTION): Define.
1469 * config/sh/elf.h (ASM_FILE_START): Output TEXT_SECTION_ASM_OP.
1470 2001-01-05 Alexandre Oliva <aoliva@redhat.com>
1471 * config/sh/sh.h (INIT_CUMULATIVE_LIBCALL_ARGS): New macro.
1472 * config/sh/sh.h (BASE_RETURN_VALUE_REG): Use FP regs for
1473 return values on FPU-enabled SHmedia.
1474 (FUNCTION_VALUE_REGNO_P): Mark FIRST_FP_RET_REG as used on
1475 FPU-enabled SHmedia.
1476 (INIT_CUMULATIVE_ARGS): Set up return trampoline only if
1477 value is returned in a non-FP reg and is not returned by
1478 reference.
1479 * config/sh/sh.md (shcompact_return_tramp_i): Change type to
1480 jump_ind.
1481 2000-01-04 Alexandre Oliva <aoliva@redhat.com>
1482 * config/sh/sh.h (SH_MIN_ALIGN_FOR_CALLEE_COPY): New.
1483 (FUNCTION_ARG_CALLEE_COPIES): Require argument to be
1484 quad-aligned to be passed by callee-copy reference.
1485 2001-01-03 Alexandre Oliva <aoliva@redhat.com>
1486 * config/sh/elf.h (MAX_WCHAR_TYPE_SIZE): Define.
1487 * config/sh/sh64.h (MAX_WCHAR_TYPE_SIZE): Undefine.
1488 2001-01-02 Alexandre Oliva <aoliva@redhat.com>
1489 * config/sh/lib1funcs.asm (shcompact_call_trampoline): Fix error in
1490 copying low-numbered FP regs to r7 and r8.
1491 * config/sh/sh.h (FUNCTION_ARG_ADVANCE): Don't request copying of
1492 FP regs to general-purpose regs only if the copy was passed on the
1493 stack.
1494 * config/sh/lib1funcs.asm (shcompact_call_trampoline): Fix typo in
1495 copying FP reg to r9.
1496 * config/sh/sh.h (FUNCTION_ARG_ADVANCE): Use trampoline to
1497 copy FP regs to general-purpose regs only in outgoing calls.
1498 * config/sh/sh.md (movdf_media, movsf_media): Revert incorrect
1499 change from 2000-10-30. Adjust for 64-bit (or 32-bit)
1500 HOST_WIDE_INT.
1501 * config/sh/sh.h (struct sh_args): Document all fields.
1502 (FUNCTION_OK_FOR_SIBCALL): Functions that receive arguments
1503 passed partially on the stack should not consider making
1504 sibcalls.
1505 * config/sh/sh.h (FUNCTION_ARG_ADVANCE): Add byref regs to
1506 stack_regs only for incoming calls. When passing FP args,
1507 make sure there are FP regs available before modifying
1508 call_cookie.
1509 (SHCOMPACT_BYREF): Pass double args in general-purpose
1510 registers by reference.
1511 2000-12-30 Alexandre Oliva <aoliva@redhat.com>
1512 * config/sh/sh.h (FUNCTION_OK_FOR_SIBCALL) [SHCOMPACT]: Don't
1513 attempt to generate sibcalls if the caller got any arguments
1514 by reference.
1515 * config/sh/lib1funcs.asm (set_fpscr) [SH5]: Default to double.
1516 * config/sh/sh.c (dump_table) [SHCOMPACT]: Align DImode and DFmode
1517 to 8-byte boundaries.
1518 * config/sh/sh.md (shcompact_preserve_incoming_args): New insn.
1519 * config/sh/sh.h (CALL_COOKIE_INT_REG_GET): New macro.
1520 * config/sh/sh.c (sh_expand_prologue): Preserve args that will be
1521 stored in the stack.
1522 * config/sh/lib1funcs.asm (ct_main_table, ia_main_table): Arrange
1523 for the offsets to have the ISA bit set.
1524 (shcompact_call_trampoline): Document. Swap r0 and r1, to match
1525 invocation. Use beq instead of bgt to mark end of sequence of
1526 loads.
1527 (shcompact_incoming_args): Fix store of r2. Use beq instead of
1528 bgt to mark end of sequence of stores.
1529 * config/sh/sh.c (arith_operand): Don't check whether
1530 CONST_OK_FOR_J for now.
1531 * config/sh/sh.md (movdf_media, movsf_media): Use HOST_WIDE_INT
1532 instead of long for conversion.
1533 2000-12-29 Alexandre Oliva <aoliva@redhat.com>
1534 * config/sh/sh.c (print_operand_address): Convert INTVAL to int
1535 before passing it to fprintf.
1536 2000-12-28 Alexandre Oliva <aoliva@redhat.com>
1537 * config/sh/crt1.asm (start): Reset SR.FD, to enable the FP unit.
1538 Call set_fpscr before reading/writing SR.
1539 * config/sh/crt1.asm (start): Set SR.SZ and SR.PR, but not SR.FR.
1540 Call set_fpscr.
1541 * config/sh/lib1funcs.asm: Add `.align 2' directives before
1542 SHmedia code.
1543 (FMOVD_WORKS): Define on SH5 with FPU.
1544 (set_fpscr): Define on SH5. Remove separate _fpscr_values
1545 setting.
1546 * config/sh/t-sh64 (LIB1ASMFUNCS): Add _set_fpscr instead of
1547 _fpscr_values.
1548 2000-12-28 Hans-Peter Nilsson <hpn@cygnus.com>
1549 * config/sh/lib1funcs.asm (ct_main_table): Align contents to even
1550 address.
1551 (ia_main_table): Ditto.
1552 2000-12-27 Alexandre Oliva <aoliva@redhat.com>
1553 * config/sh/sh.h (MAX_WCHAR_TYPE_SIZE): Don't define.
1554 * config/sh/sh64.h (WCHAR_TYPE, WCHAR_TYPE_SIZE): Reinstate
1555 the definitions from sh.h.
1556 * config/sh/sh.h (PTRDIFF_TYPE): Define as conditional on
1557 TARGET_SH5.
1558 (SUBTARGET_CPP_SPEC): Arrange for __PTRDIFF_TYPE__ to be defined.
1559 * config/sh/elf.h (PTRDIFF_TYPE): Likewise.
1560 * config/sh/sh64.h (SUBTARGET_CPP_SPEC): Likewise.
1561 2000-12-26 Alexandre Oliva <aoliva@redhat.com>
1562 * config/sh/sh.md (movdi_media split): Don't add REG_LABEL notes.
1563 Increment LABEL_NUSES.
d9b3eb63 1564
fa5322fa
AO
1565 * config/sh/sh.h (SIZE_TYPE): Define as conditional on
1566 TARGET_SH5.
1567 (SUBTARGET_CPP_SPEC): Arrange for __SIZE_TYPE__ to be always
1568 defined.
1569 * config/sh/elf.h (SIZE_TYPE): Likewise.
1570 * config/sh/sh64.h (SUBTARGET_CPP_SPEC): Likewise.
1571 * config/sh/lib1funcs.asm (shcompact_call_trampoline,
1572 shcompact_incoming_args): Load switch table addresses using
1573 datalabel.
1574 * config/sh/sh.h (SUBTARGET_CPP_SPEC): Define __SIZE_TYPE__.
1575 (NO_BUILTIN_SIZE_TYPE): Define.
1576 (SIZE_TYPE): Don't define.
1577 * config/sh/sh64.h (SUBTARGET_CPP_SPEC): Define __SIZE_TYPE__.
1578 * config/sh/sh.h (CPP_SPEC): Fixed typo that prevented the
1579 definition of __SH5__=32 for -m5-compact-nofpu.
1580 * config/sh/sh.c (barrier_align): Ensure 32-bit alignment after
1581 ADDR_DIFF_VEC.
1582 2000-12-24 Alexandre Oliva <aoliva@redhat.com>
1583 * config/sh/sh.h (FUNCTION_ARG_PADDING): Removed.
1584 2000-12-23 Alexandre Oliva <aoliva@redhat.com>
1585 * config/sh/sh.h (TARGET_CACHE32): Enable on SH5.
1586 (FUNCTION_BOUNDARY): Ensure 32-bit alignment for SHmedia.
1587 (INSN_LENGTH_ALIGNMENT): Likewise.
1588 2000-12-22 Alexandre Oliva <aoliva@redhat.com>
1589 * config/sh/sh.md (call, call_value, sibcall): Simplify
1590 copying of non-branch-target register.
1591 2000-12-22 Alexandre Oliva <aoliva@redhat.com>
1592 * glimits.h (__LONG_MAX__): Revert 2000-12-13's patch.
1593 * config/sh/sh.h (CPP_SPEC): Define it here for 64-bit SHmedia.
1594 2000-12-22 Alexandre Oliva <aoliva@redhat.com>
1595 * config/sh/sh.h (GET_SH_ARG_CLASS): Handle complex
1596 floating-point values as structs.
1597 (FUNCTION_ARG): Use SH5_PROTOTYPED_FLOAT_ARG.
1598 (SH5_PROTOTYPELESS_FLOAT_ARG): List FP registers before
1599 general-purpose register.
1600 (SH5_PROTOTYPED_FLOAT_ARG): New macro.
1601 2000-12-20 Alexandre Oliva <aoliva@redhat.com>
1602 * config/sh/sh.md (addsi3): Force operand1 to reg for SHmedia.
1603 * config/sh/sh.md (movsi_media): Split CONST_DOUBLE loads too.
1604 * config/sh/sh.h (DATALABEL_REF_P): Don't require the CONST.
1605 (ENCODE_SECTION_INFO): Enclose variables and constants in
1606 DATALABEL unspecs.
1607 (SH_DATALABEL_ENCODING, DATALABEL_SYMNAME_P): Define.
1608 (STRIP_NAME_ENCODING): Strip SH_DATALABEL_ENCODING off.
1609 (ASM_OUTPUT_LABELREF, AMS_OUTPUT_SYMBOL_REF): Define.
1610 * config/sh/sh.c (gen_datalabel_ref): Use UNSPEC_DATALABEL
1611 only for LABEL_REFs. For SYMBOL_REFs, prepend
1612 SH_DATALABEL_ENCODING to the symbol name.
1613 * config/sh/sh.md (indirect_jump): Use SUBREG instead of
1614 convert_mode().
1615 2000-12-20 Alexandre Oliva <aoliva@redhat.com>
1616 * config/sh/sh.md (casesi): Enclose ADDR_DIFF_VEC address in
1617 UNSPEC_DATALABEL.
1618 * config/sh/sh.c (gen_datalabel_ref): Accept LABEL_REFs.
1619 * config/sh/sh.h (DATALABEL_REF_NO_CONST_P): Likewise.
1620 (DATALABEL_REF_P): Don't require CONST.
1621 (ASM_OUTPUT_ADDR_DIFF_ELT): On SH5, output datalabel before
1622 REL label.
1623 2000-12-19 Alexandre Oliva <aoliva@redhat.com>
1624 * config/sh/sh.md (extendhidi2, extendqidi2): Use arithmetic shift
1625 right.
1626 2000-12-18 Alexandre Oliva <aoliva@redhat.com>
1627 * config/sh/sh.md (movsi_media, call, call_value, sibcall):
1628 Use shallow_copy_rtx and PUT_MODE to change the mode of
1629 SYMBOL_REFs, LABEL_REFs, CONSTs, etc.
1630 * config/sh/sh.h (PREFERRED_RELOAD_CLASS): Reload SYMBOL_REFs
1631 on SHmedia using GENERAL_REGs.
1632 * config/sh/sh.md (ble_media_i, blt_media_i, bleu_media_i,
1633 bltu_media_i): Fix reversion of conditions.
1634 2000-12-18 Alexandre Oliva <aoliva@redhat.com>
1635 * config/sh/sh.md (zero_extendhidi2): Use logical shift right.
1636 * config/sh/sh.c (output_far_jump): Save r13 in macl.
1637 2000-12-17 Alexandre Oliva <aoliva@redhat.com>
1638 * config/sh/sh.c (gen_datalabel_ref): Fix mode of the UNSPEC.
1639 2000-12-16 Alexandre Oliva <aoliva@redhat.com>
1640 * config/sh/lib1funcs.asm (ic_invalidate): Define for SH5.
1641 (GCC_nested_trampoline): Likewise.
1642 * config/sh/sh-protos.h (gen_datalabel_ref): Declare.
1643 * config/sh/sh.c (gen_datalabel_ref): Define.
1644 * config/sh/sh.h (TRAMPOLINE_SIZE): Adjust for SH5.
1645 (INITIALIZE_TRAMPOLINE): Likewise.
1646 (TRAMPOLINE_ADJUST_ADDRESS): Define.
1647 (DATALABEL_REF_NO_CONST_P, DATALABEL_REF_P): Define.
1648 (EXTRA_CONSTRAINT_T): Match DATALABEL unspecs.
1649 (OUTPUT_ADDR_CONST_EXTRA): Handle DATALABEL unspecs.
1650 * config/sh/sh.md (UNSPEC_DATALABEL): New constant.
1651 (ic_invalidate): Adjust for SH5.
1652 (ic_invalidate_line_media, ic_invalidate_line_compact): New insns.
1653 * config/sh/t-sh64 (LIB1ASMFUNCS): Added _ic_invalidate and
1654 _nested_trampoline.
1655 2000-12-15 Alexandre Oliva <aoliva@redhat.com>
1656 * config/sh/sh.h (MOVE_MAX): Set to 8 for SHmedia, 4 elsewhere.
1657 (MOVE_MAX_PIECES): Set to 8 on SHmedia too.
1658 2000-12-14 Alexandre Oliva <aoliva@redhat.com>
1659 * config/sh/sh.h (DBX_REGISTER_NUMBER): Adjust for sh64-elf-gdb.
1660 * config/sh/elf.h (DBX_REGISTER_NUMBER): Likewise.
1661 2000-12-14 Alexandre Oliva <aoliva@redhat.com>
1662 * config/sh/sh.c (target_reg_operand): Match only target-branch
1663 registers and pseudos that aren't virtual registers.
1664 * config/sh/sh.md (call, call_value, sibcall) [TARGET_SHMEDIA]:
1665 Copy operands that don't match target_reg_operand to pseudos.
1666 (call_media, call_value_media, sibcall_media): Use
1667 target_reg_operand instead of target_operand.
1668 2000-12-13 Alexandre Oliva <aoliva@redhat.com>
d9b3eb63 1669 * glimits.h (__LONG_MAX__) [SH5 == 64]: Adjust for 64 bits.
fa5322fa
AO
1670 * config/sh/sh.c (target_reg_operand): Match hardware registers
1671 other than branch-target registers.
1672 * config/sh/sh.md (zero_extendqidi2): Input operand is %1.
1673 * config/sh/lib1funcs.asm (sdivsi3) [SH5]: Make it global.
1674 (fpscr_values) [SH5 == 32]: Define.
1675 * config/sh/t-sh64 (LIB1ASMFUNCS): Add fpscr_values.
1676 * config/sh/sh.md (call, call_value, sibcall) [TARGET_SHMEDIA]:
1677 Handle function addresses coming in SUBREGs.
1678 2000-12-12 Alexandre Oliva <aoliva@redhat.com>
1679 * config/sh/lib1funcs.asm (shcompact_call_trampoline,
1680 shcompact_return_trampoline): Use datalabel where appropriate.
1681 2000-12-09 Alexandre Oliva <aoliva@redhat.com>
1682 * config/sh/sh.h (SECONDARY_OUTPUT_RELOAD_CLASS): Use a
1683 general-purpose register to copy one branch-target register to
1684 another.
1685 2000-12-06 Alexandre Oliva <aoliva@redhat.com>
1686 * config/sh/sh.c (target_operand): Accept LABEL_REFs and
1687 SYMBOL_REFs with VOIDmode.
1688 * config/sh/sh.md (ble_media_i, blt_media_i, bleu_media_i,
1689 bltu_media_i): New insns.
1690 2000-12-06 Alexandre Oliva <aoliva@redhat.com>
1691 * config/sh/sh.h (RETURN_IN_MEMORY): Adjust for SH5 ABI.
1692 (INIT_CUMULATIVE_ARGS): Likewise.
1693 2000-12-01 Alexandre Oliva <aoliva@redhat.com>
1694 * machmode.def (V16SFmode): New mode.
1695 * c-common.c (type_for_mode): Support V2SF and V16SF.
1696 * tree.c (build_common_tree_nodes_2): Likewise.
1697 * tree.h (tree_index): Likewise.
1698 * calls.c (emit_call_1): Take args_so_far. Adjust all
1699 callers. Introduce CALL_POPS_ARGS.
1700 * tm.texi (CALL_POPS_ARGS): Document.
1701 * config/sh/crt1.asm: Implement in SHmedia mode.
1702 * config/sh/crti.asm, config/sh/crtn.asm: Likewise
1703 * config/sh/elf.h (ASM_SPEC, LINK_SPEC): Support SH5 flags.
1704 (DBX_REGISTER_NUMBER): Renumber registers for SH5.
1705 * config/sh/lib1funcs.asm: Disable functions unused in SH5.
1706 Implement divsi and udivsi in SHmedia mode. Introduce
1707 SHcompact trampolines.
1708 * config/sh/sh.c (GEN_MOV, GEN_ADD3, GEN_SUB3): Use DImode
1709 only in SHmedia64.
1710 (regno_reg_class): Rewrite.
1711 (fp_reg_names): Remove.
1712 (sh_register_names, sh_additional_register_names): New.
1713 (print_operand): Added `u'. Support SUBREGs in addresses.
1714 Add parentheses around shifted CONSTs.
1715 (output_file_start): Output .mode and .abi directives.
1716 (shiftcosts, addsubcosts, multcosts): Adjust.
1717 (output_stack_adjust): Compute alignment. Sanity-check SIZE.
1718 (push_regs): Take array of HOST_WIDE_INTs. Adjust callers.
1719 (calc_live_regs): Output to array of HOST_WIDE_INTs. Count
1720 bytes, not registers. Take into account the need for the
1721 SHcompact incoming args trampoline. Adjust all callers.
1722 (sh_expand_prologue): Take stack_regs into account. Call
1723 incoming args trampoline. Keep stack aligned as per SH5 ABI.
1724 (sh_expand_epilogue): Take stack_regs into accoutn. Keep
1725 stack aligned as per SH5 ABI.
1726 (sh_builtin_saveregs): Support SH5 ABI.
1727 (sh_build_va_list, sh_va_start): Likewise.
1728 (initial_elimination_offset): Take alignment into account.
1729 Compute location of PR according to the SH5 stack frame.
1730 (arith_reg_operand): Reject branch-target registers.
1731 (shmedia_6bit_operand): New.
1732 (logical_operand): Use CONST_OK_FOR_P on SHmedia.
1733 (target_reg_operand): Match DImode only. Accept SUBREGs.
1734 (target_operand): New.
1735 * config/sh/sh.h (CPP_SPEC, SUBTARGET_CPP_SPEC): Support SH5 flags.
1736 (CONDITIONAL_REGISTER_USAGE): Implement SH5 ABI. Initialize
1737 SIBCALL_REGS for SHmedia.
1738 (TARGET_SH3E, TARGET_SH4): Only if SH1_BIT is set too.
1739 (TARGET_FPU_DOUBLE, TARGET_FPU_ANY): New.
1740 (TARGET_SHMEDIA32, TARGET_SHMEDIA64): New.
1741 (TARGET_SWITCHES): New SH5 flags.
1742 (OVERRIDE_OPTIONS): Set SH5-specific options. Use
1743 VALID_REGISTER_P to disable unsupported registers.
1744 (LONG_TYPE_SIZE, LONG_LONG_TYPE_SIZE): Set.
1745 (POINTER_SIZE, PARM_BOUNDARY): Adjust.
1746 (FUNCTION_ARG_PADDING): Define.
1747 (FASTEST_ALIGNMENT): Adjust.
1748 (SH_REGISTER_NAMES_INITIALIZER): New.
1749 (sh_register_names): Declare.
1750 (DEBUG_REGISTER_NAMES): Define.
1751 (REGISTER_NAMES): Define based on sh_register_names.
1752 (SH_ADDITIONAL_REGISTER_NAMES_INITIALIZER): New.
1753 (sh_additional_register_names): Declare.
1754 (LAST_GENERAL_REG, LAST_FP_REG, LAST_XD_REG): Adjust for SHmedia.
1755 (FIRST_TARGET_REG, LAST_TARGET_REG): Define.
1756 (TARGET_REGISTER_P, SHMEDIA_REGISTER_P, VALID_REGISTER_P): Define.
1757 (REGISTER_NATURAL_MODE): Define.
1758 (FIRST_PSEUDO_REGISTER): Adjust.
1759 (FIXED_REGISTERS, CALL_USED_REGISTERS): Adjust.
1760 (HARD_REGNO_CALL_PART_CLOBBERED): Define.
1761 (HARD_REGNO_NREGS, HARD_REGNO_MODE_OK): Adjust.
1762 (VECTOR_MODE_SUPPORTED_P): Define.
1763 (REG_CLASS_CONTENTS): Adjust.
1764 (SMALL_REGISTER_CLASSES): Adjust.
1765 (REG_ALLOC_ORDER): Adjust.
1766 (INDEX_REG_CLASS): Adjust.
1767 (CONST_OK_FOR_O, CONST_OK_FOR_P): New.
1768 (CONST_OK_FOR_LETTER_P): Adjust.
1769 (PREFERRED_RELOAD_CLASS): Adjust.
1770 (SECONDARY_OUTPUT_RELOAD_CLASS): Adjust.
1771 (SECONDARY_INPUT_RELOAD_CLASS): Adjust.
1772 (NPARM_REGS, FIRST_PARM_REG, FIRST_RET_REG): Adjust.
1773 (FIRST_FP_PARM_REG): Adjust.
1774 (CALL_POPS_ARGS): Define.
1775 (FUNCTION_ARG_REGNO_P): Adjust.
1776 (struct sh_args): New fields.
1777 (GET_SH_ARG_CLASS): Adjust.
1778 (INIT_CUMULATIVE_ARGS): Adjust.
1779 (INIT_CUMULATIVE_INCOMING_ARGS): Define.
1780 (FUNCTION_ARG_ADVANCE): Adjust.
1781 (FUNCTION_ARG): Adjust.
1782 (FUNCTION_ARG_PASS_BY_REFERENCE, SHCOMPACT_BYREF): Define.
1783 (FUNCTION_ARG_CALLEE_COPIES): Define.
1784 (SH5_PROTOTYPELESS_FLOAT_ARG): Define.
1785 (STRICT_ARGUMENT_NAMING): Define.
1786 (PRETEND_OUTGOING_VARARGS_NAMED): Adjust.
1787 (FUNCTION_ARG_PARTIAL_NREGS): Adjust.
1788 (SH5_WOULD_BE_PARTIAL_NREGS): Define.
1789 (SETUP_INCOMING_VARARGS): Adjust.
1790 (HAVE_POST_INCREMENT, HAVE_PRE_DECREMENT): Adjust.
1791 (USE_LOAD_POST_INCREMENT, USE_STORE_PRE_DECREMENT): Adjust.
1792 (REGNO_OK_FOR_INDEX_P, REG_OK_FOR_INDEX_P): Adjust.
1793 (SUBREG_OK_FOR_INDEX_P): Adjust.
1794 (EXTRA_CONSTRAINT_S): Update.
1795 (EXTRA_CONSTRAINT_T): New.
1796 (EXTRA_CONSTRAINT): Adjust.
1797 (GO_IF_LEGITIMATE_INDEX): Adjust.
1798 (GO_IF_LEGITIMATE_ADDRESS): Adjust.
1799 (LEGITIMIZE_ADDRESS, LEGITIMIZE_RELOAD_ADDRESS): Adjust.
1800 (MOVE_MAX): Adjust.
1801 (MAX_MOVE_MAX): Define.
1802 (Pmode): Adjust.
1803 (CONST_COSTS): Adjust.
1804 (REGISTER_MOVE_COST): Adjust.
1805 (BRANCH_COST): Adjust.
1806 (TEXT_SECTION_ASM_OP): Adjust.
1807 (DBX_REGISTER_NUMBER): Adjust.
1808 (ASM_OUTPUT_DOUBLE_INT): New.
1809 (UNALIGNED_DOUBLE_INT_ASM_OP): New.
1810 (PREDICATE_CODES): Adjust.
1811 (PROMOTE_MODE): Adjust.
1812 (CRT_CALL_STATIC_FUNCTION): Do not define for SHmedia.
1813 * config/sh/sh.md (AP_REG, PR_REG, T_REG, GBR_REG): Renumber.
1814 (MACH_REG, MACL_REG, FPUL_REG, RAP_REG, FPSCR_REG): Renumber.
1815 (PR_MEDIA_REG, T_MEDIA_REG, R10_REG): New.
1816 (DR0_REG, DR2_REG, DR4_REG): Renumber.
1817 (TR0_REG, TR1_REG, TR2_REG): New.
1818 (XD0_REG): Renumber.
1819 (UNSPEC_COMPACT_ARGS): New.
1820 (type): Added pt and ptabs.
1821 (length): Default to 4 on SHmedia. Default pt length to 12
1822 and 20 on SHmedia32 and SHmedia64, respectively.
1823 (pt): New function unit.
1824 (movdi, movsi): Add types pt and ptabs. Don't increment LABEL_NUSES.
1825 Add whitespace between operands of SHmedia instructions.
1826 (movdicc): Fix.
1827 (adddi3_media, addsi3_media): Adjust constraints.
1828 (subsi3) [SHmedia]: Force operand 1 into a register.
1829 (udivsi3_i1_media, udivsi3_i4_media): New.
1830 (udivsi3): Support SHmedia.
1831 (divsi3_i1_media, divsi3_i4_media): New.
1832 (divsi3): Support SHmedia.
1833 (anddi3, iordi3, xordi3): Adjust constraints.
1834 (zero_extendhidi2, zero_extendqidi2): New.
1835 (extendsidi2, extendhidi2, extendqidi2): New.
1836 (push, pop, push_e, push_fpul, push_4): Disable on SH5.
1837 (pop_e, pop_fpul, pop_4): Likewise.
1838 (movsi_media): Support FP and BT registers.
1839 (movsi_media_nofpu): New. Adjust splits to DImode.
1840 (lduw, ldub): Renamed to zero_extend* above.
1841 (movqi_media): Fix typo.
1842 (movdi_media): Support FP and BT registers.
1843 (movdi_media_nofpu): New. Adjust splits for SHmedia32.
1844 (movdi_const_32bit): New.
1845 (shori_media): Require immediate operand. Use `u' for output.
1846 (movdf_media, movsf_media): Simplified.
1847 (movdf_media_nofpu, movsf_media_nofpu): New.
1848 (movdf, movsf): Adjust
1849 (movv2sf, movv2sf, movv16sf): New.
1850 (beq_media, beq_media_i): Adjust constraints. Don't use
1851 scratch BT register.
1852 (bne_media, bne_media_i): Likewise.
1853 (bgt_media, bgt_media_i): Likewise.
1854 (bge_media, bge_media_i): Likewise.
1855 (bgtu_media, bgtu_media_i): Likewise.
1856 (bgeu_media, bgeu_media_i): Likewise.
1857 (beq, bne, bgt, blt, ble, bge, bgtu, bltu, bgeu, bleu,
1858 bunordered): Emit jump insn. Force operands to registers when
1859 needed.
1860 (jump_media, jump): Simplify.
1861 (call_compact, call_compact_rettramp): New.
1862 (call_value_compact, call_value_compact_rettramp): New.
1863 (call_media, call_value_media): Simplify.
1864 (sibcall_compact, sibcall_media): New.
1865 (call, call_value): Adjust for SHmedia and SHcompact.
1866 (sibcall, sibcall_value, untyped_call): Likewise.
1867 (sibcall_epilogue): Preserve r0 across epilogue for SHcompact.
1868 (indirect_jump): Adjust for SHmedia.
1869 (casesi_jump_media): New.
1870 (nop): Re-enable for SHmedia.
1871 (call_site): Restrict to SH1.
1872 (casesi): Adjust for SHmedia.
1873 (casesi_shift_media, casesi_load_media): New.
1874 (return): Explicitly use PR register. Call return trampoline
1875 on SHcompact.
1876 (return_i): Explicitly use PR register.
1877 (shcompact_return_tramp, shcompact_return_tramp_i): New.
1878 (return_media): Adjust.
1879 (shcompact_incoming_args): New.
1880 (epilogue): Adjust.
1881 (seq, slt, sle, sgt, sge, sgtu, sltu, sleu, sgeu, sne): Adjust.
1882 (movstrsi): Disable on SH5.
1883 (fpu_switch0, fpu_switch1, movpsi): Enable on SH4.
1884 (addsf3, addsf3_media): Test TARGET_SHMEDIA_FPU.
1885 (subsf3, subsf3_media): Likewise.
1886 (mulsf3, mulsf3_media, mac_media): Likewise.
1887 (divsf3, divsf3_media): Likewise.
1888 (floatdisf2, floatsisf2_media): Likewise. Adjust constraints.
1889 (floatsisf2, fux_truncsfsi2): Likewise.
1890 (fix_truncsfdi2, fix_truncsfsi2_media): Likewise. Adjust
1891 constraints.
1892 (cmpeqsf_media, cmpgtsf_media, cmpgesf_media): Likewise.
1893 (cmpunsf_media, cmpsf): Likewise.
1894 (negsf2, negsf2_media, sqrtsf2, sqrtsf2_media): Likewise.
1895 (abssf2, abssf2_media): Likewise.
1896 (adddf3, adddf3_media, subdf3, subdf3_media): Likewise.
1897 (muldf3, muldf3_media, divdf3, divdf3_media): Likewise.
1898 (floatdidf2, floatsidf2_media): Likewise. Adjust constraints.
1899 (floatsidf2, fix_truncdfsi2): Likewise.
1900 (fix_truncdfdi2, fix_truncdfsi2_media): Likewise. Adjust
1901 constraints.
1902 (cmpeqdf_media, cmpgtdf_media): Likewise.
1903 (cmpgedf_media, cmpundf_media, cmpdf): Likewise.
1904 (negdf2, negdf2_media, sqrtdf2, sqrtdf2_media): Likewise.
1905 (absdf2, absdf2_media): Likewise.
1906 (extendsfdf2, extendsfdf2_media): Likewise.
1907 (truncsfdf2, truncsfdf2_media): Likewise.
1908 * config/sh/sh64.h: New file.
1909 * config/sh/t-sh64: New file.
1910 * config/sh/shmedia.h: New file.
1911 * config/sh/ushmedia.h: New file.
1912 * config/sh/sshmedia.h: New file.
1913 * configure.in: Added sh64-*-elf.
1914 * configure: Rebuilt.
1915 2000-10-10 Alexandre Oliva <aoliva@redhat.com>
1916 * config/sh/sh.c (GEN_MOV, GEN_ADD3, GEN_SUB3): New macros.
1917 (reg_class_from_letter): Use `b' for TARGET_REGS.
1918 (print_operand): Support `%M', `%m', `AND' and
1919 `ASHIFTRT'. Do not precede constants with `#' on SHmedia.
1920 (andcosts): Adjust for SHmedia.
1921 (output_stack_adjust, sh_expand_prologue, sh_expand_epilogue):
1922 Likewise.
1923 (target_reg_operand): New function.
1924 * config/sh/sh-protos.h (target_reg_operand): Declare.
1925 * config/sh/sh.h (CONDITIONAL_REGISTER_USAGE): Don't disable
1926 FP registers on SH5.
1927 (HARD_REGNO_MODE_OK): Accept them whenever they're acceptable
1928 on SH4.
1929 (TARGET_REGISTER_P): New macro.
1930 (reg_class, REG_CLASS_NAMES, REG_CLASS_CONTENTS): Added TARGET_REGS.
1931 (FUNCTION_VALUE): Use DImode for promoted types on SHmedia.
1932 (EXTRA_CONSTRAINT_S): New macro.
1933 (EXTRA_CONSTRAINT): Adjust.
1934 (FLOAT_TYPE_SIZE): Define to 32.
1935 (Pmode): DImode on SHmedia.
1936 (CONST_COSTS): Adjust for SHmedia literals.
1937 (PREDICATE_CODES): Added target_reg_operand.
1938 (PROMOTE_MODE): Promote signed types to DImode on SHmedia.
1939 * config/sh/sh.md: Remove all attrs from SHmedia insns.
1940 (cmpeqdi_media, cmpgtdi_media, cmpgtudi_media): New insns.
1941 (cmpdi): Accept SHmedia.
1942 (movdicc_false, movdicc_true): New insns.
1943 (movdicc): New expand.
1944 (adddi3): Accept arith_operand for op2, but FAIL on SH1 if
1945 no_new_pseudos.
1946 (addsi3_media): Match `S' constraint.
1947 (anddi3, andcdi3, iordi3, xordi3, negdi_media): New insns.
1948 (negdi2): Expand for SHmedia.
1949 (one_cmpldi2): New expand.
1950 (zero_extendsidi2): Change from expand to insn.
1951 (extendsidi2): Add constraints.
1952 (movdi_media, movsi_media): Change `%x' to `%M'. Use `%m' for
1953 LD/ST address. Fix SI immediate loading split.
1954 (movhi_media, movqi_media, lduw, ldub): New insns.
1955 (movhi, movqi): Accept SHmedia.
1956 (shori_media, movdi_media): Relax input constraints. Split
1957 symbolic constants.
1958 (movdf_media, movsf_media): New insn. New split to movdi.
1959 (movdf, movsf): Match on SHmedia.
1960 (beq_media, bne_media, bgt_media, bge_media, bgtu_media,
1961 bgeu_media): New insns and splits. New insns with `_i' suffix.
1962 (beq, bne, bgt, blt, ble, bge, bgtu, bltu, bgeu, bleu): Adjust.
1963 (bunordered): New expand.
1964 (jump_compact): Renamed from `jump'.
1965 (jump_media): New insn.
1966 (jump): New expand.
1967 (call_media, call_value_media): New insns.
1968 (call, call_value): Adjust.
1969 (indirect_jump_compact): Renamed from `indirect_jump'.
1970 (indirect_jump_media): New insn.
1971 (indirect_jump): New expand.
1972 (untyped_call, return): Accept SHmedia.
1973 (return_media): New insn.
1974 (prologue, epilogue, blockage): Accept SHmedia.
1975 (seq, slt, sle, sgt, sge, sgtu, sltu, sleu, sgeu, sne): Adjust.
1976 (sunordered): New expand.
1977 (addsf3, subsf3, mulsf3, divsf3, floatsisf2, fix_truncsfsi2,
1978 cmpsf, negsf2, sqrtsf2, abssf2): Adjust for SHmedia.
1979 (addsf3_media, subsf3_media, mulsf3_media, mac_media,
1980 divsf3_media, floatdisf2, floatsisf2_media, fix_truncsfdi2,
1981 fix_truncsfsi2_media, cmpeqsf_media, cmpgtsf_media,
1982 cmpgesf_media, cmpunsf_media, negsf2_media, sqrtsf2_media,
1983 abssf2_media): New insns.
1984 (adddf3, subdf3, muldf3, divdf3, floatsidf2, fix_truncdfsi2,
1985 cmpdf, negdf2, sqrtdf2, absdf2): Adjust for SHmedia.
1986 (adddf3_media, subdf3_media, muldf3_media, divdf3_media,
1987 floatdidf2, floatsidf2_media, fix_truncdfdi2,
1988 fix_truncdfsi2_media, cmpeqdf_media, cmpgtdf_media,
1989 cmpgedf_media, cmpundf_media, negdf2_media, sqrtdf2_media,
1990 absdf2_media): New insns.
1991 (extendsfdf2, truncdfsf2): Adjust for SHmedia.
1992 (extendsfdf2_media, truncdfsf2_media): New insns.
1993 2000-09-14 Alexandre Oliva <aoliva@redhat.com>
1994 * config/sh/sh.c (machine_dependent_reorg): On shmedia, skip for now.
1995 * config/sh/sh.h (CONST_OK_FOR_J): Document.
1996 (LEGITIMATE_CONSTANT_P): Accept CONST_DOUBLEs on shmedia.
1997 * config/sh/sh.md (adddi3): New expand.
1998 (adddi3_media, adddi3z_media): New insns.
1999 (adddi3_compact): Renamed from adddi3.
2000 (addsi3_media): Use add.l r63 to add constant zero.
2001 (subdi3): New expand.
2002 (subdi3_media): New insn.
2003 (subdi3_compact): Renamed from subdi3.
2004 (mulsidi3): New expand.
2005 (mulsidi3_media): New insn.
2006 (mulsidi3_compact): Renamed from mulsidi3.
2007 (umulsidi3): New expand.
2008 (umulsidi3_media): New insn.
2009 (umulsidi3_compact): Renamed from umulsidi3.
2010 (ashlsi3_media, ashrsi3_media, lshrsi3_media): New insns.
2011 (ashlsi3, ashrsi3, lshrsi3): Use them.
2012 (ashldi3_media, ashrdi3_media, lshrdi3_media): New insns.
2013 (ashldi3, ashrdi3, lshrdi3): Use them.
2014 (zero_extendsidi2): New expand.
2015 (extendsidi2): New insn.
2016 (movsi_media): New insn. Split to movdi to load constants.
2017 (movsi): Enable for shmedia.
2018 (movdi_media): New insn. Use shori_media to load wide constants.
2019 (short_media): New insn.
2020 (movdi): Enable for shmedia.
2021 2000-09-08 Alexandre Oliva <aoliva@redhat.com>
2022 * config/sh/sh.h (CPP_SPEC): Added `m5'.
2023 (SUBTARGET_CPP_SPEC): Added `!m5'.
2024 (SH5_BIT, TARGET_SH5, TARGET_SHMEDIA, TARGET_SHCOMPACT): New macros.
2025 (TARGET_SWITCHES): Added `5' and `5-compact'. Added SH1_BIT
2026 to all other SH variants.
2027 (TARGET_DEFAULT): Set to SH1_BIT.
2028 (OVERRIDE_OPTIONS): Recognize sh5 CPU.
2029 (BITS_PER_WORD): Raise to 64 on shmedia.
2030 (MAX_BITS_PER_WORD): Change to 64.
2031 (MAX_LONG_TYPE_SIZE, MAX_WCHAR_TYPE_SIZE): Set to MAX_BITS_PER_WORD.
2032 (INT_TYPE_SIZE): Keep as 32.
2033 (UNITS_PER_WORD): Raise to 8 on shmedia.
2034 (MIN_UNITS_PER_WORD): Keep as 4.
2035 (POINTER_SIZE): Raise to 64 on shmedia.
2036 (CONST_OK_FOR_J): New macro.
2037 (CONST_OK_FOR_LETTER_P): Use it.
2038 (processor_type): Add PROCESSOR_SH5.
2039 * config/sh/sh.md: Conditionalize all expands, insns and
2040 splits to TARGET_SH1.
2041 (cpu): Added sh5.
2042 (addsi3_compact): Renamed from...
2043 (addsi3): Now an expand.
2044 (addsi3_media, subsi3_media): New insns.
2045 (subsi3): Don't negate constants with SHmedia.
2046
e4ec2cac
AO
2047 * hooks.c: New file.
2048 * hooks.h: New file.
2049 * Makefile.in (HOOKS_H): New.
2050 (TARGET_DEF_H): Added $(HOOKS_H).
2051 (OBJS): Added hooks.o.
2052 (cfgcleanup.o, bb-reorder.o): Added target.h.
2053 (hooks.o): Added dependencies.
2054 * target-def.h (TARGET_CANNOT_MODIFY_JUMPS_P): New, added to...
2055 (TARGET_INITIALIZER): this.
2056 * doc/tm.texi (TARGET_CANNOT_MODIFY_JUMPS_P): Document.
2057 * target.h (struct gcc_target): Added cannot_modify_jumps_p.
2058 * bb-reorder.c: Include target.h.
2059 (reorder_basic_blocks): Skip if cannot modify jumps.
2060 * cfgcleanup.c: Include target.h.
2061 (try_optimize_cfg): Skip merge blocking if cannot modify jumps.
2062
246a46e0
CD
20632002-02-08 Chris Demetriou <cgd@broadcom.com>
2064
2065 * config/mips/mips.md (casesi_internal, casesi_internal_di):
2066 Protect jump delay slot instructions with .set noreorder and
2067 .set nomacro.
2068
20692002-02-08 Chris Demetriou <cgd@broadcom.com>
6a5ea3f4
CD
2070
2071 * config/mips/mips.md (casesi_internal_di): Calculate
2072 the index into the target offset table correctly.
2073
fdf473ae
RH
20742002-02-08 Richard Henderson <rth@redhat.com>
2075
2076 * expr.c (expand_expr): Mind EXPAND_INITIALIZER for truncation also.
2077 * final.c (output_addr_const): Accept and discard SUBREG.
2078 * varasm.c (decode_addr_const): Don't abort on unknown expressions --
2079 mark them unknown instead.
2080 (simplify_subtraction): Handle RTX_UNKNOWN.
2081 (initializer_constant_valid_p): Strip NOP_EXPRs that narrow the mode.
2082
c50503ac
DE
20832002-02-08 David Edelsohn <edelsohn@gnu.org>
2084
2085 * doc/invoke.texi (RS/6000 and PowerPC Options): Fix typo.
2086
3660d217
RH
20872002-02-08 Richard Henderson <rth@redhat.com>
2088
2089 * config/alpha/elf.h (ASM_OUTPUT_ALIGNED_BSS): New.
2090
56547299
AJ
20912002-02-08 Andreas Jaeger <aj@suse.de>
2092
2093 * config.gcc (x86_64-*-linux): Add t-linux64 makefile fragment.
2094 * config/i386/t-linux64: New file.
2095
1cf537c5
JJ
20962002-02-08 Jakub Jelinek <jakub@redhat.com>
2097
2098 * c-common.c (c_expand_expr): Revert 2002-02-06 patch.
2099 * c-parse.in (compstmt): Clear last_expr_type.
2100
5c7f5a5f
RH
21012002-02-07 Richard Henderson <rth@redhat.com>
2102
2103 * loop.c (strength_reduce): Sink final_value when not
2104 eliminating a biv.
2105
b1138bf3
DB
21062002-02-07 David O'Brien <obrien@FreeBSD.org>
2107
2108 * config/sparc/freebsd.h: Fix mismatched spec {.
2109
b6878a45
RH
21102002-02-07 Richard Henderson <rth@redhat.com>
2111
2112 * cfgrtl.c: Include recog.h and insn-config.h.
2113 (keep_with_call_p): Fix general_operand invocation.
2114 * Makefile.in (cfgrtl.o): Update dependencies.
2115
ae19f5ef
KH
21162002-02-07 Kazu Hirata <kazu@hxi.com>
2117
2118 * config/h8300/h8300.c (two_insn_adds_subs_operand): Revise a
2119 comment. Accept HImode only if TARGET_H8300.
2120
b137f9fc
EC
21212002-02-07 Eric Christopher <echristo@redhat.com>
2122
2123 * config/mips/crtn.asm: Cleanup #ifdefs.
2124
21252002-02-07 Eric Christopher <echristo@redhat.com>
2126
2127 * config/mips/crti.asm: Add changes for mips16. mips16 uses
2128 register 7 as RA instead of $31.
2129 * config/mips/crtn.asm: Ditto.
2130 * config/mips/mips.c (mips_move_2words): Add case for
2131 TARGET_MIPS16 when HOST_BITS_PER_WIDE_INT >= 64.
2132 (compute_frame_size): Fix typo.
2133 (save_restore_insns): Ditto. Make documentation about using
2134 register $7 as return register more precise.
2135 (mips_expand_epilogue): Fix comment. Add code to work around not
2136 being able to add to the stack pointer directly.
2137 * config/mips/mips.h (EH_RETURN_DATA_REGNO): Change register number
2138 to 2 for TARGET_MIPS16 as we need 6 and 7 as clobbers in the
2139 epilogue.
2140
768070a0
TR
21412002-02-07 Tom Rix <trix@redhat.com>
2142
b137f9fc 2143 * config/rs6000/rs6000.c (reg_or_aligned_short_operand): New. For
768070a0
TR
2144 immediates in ldu and stdu DS opcode field.
2145 * config/rs6000/rs6000.md (movdi_update, movdi_update1): Use.
2146 * config/rs6000/rs6000-protos.h: Add reg_or_aligned_short_operand.
2147 * config/rs6000/rs6000.h (PREDICATE_CODES): Same.
2148
225909c3
JS
21492002-02-07 Jeff Sturm <jsturm@one-point.com>
2150
2151 * config/sparc/sparc.c (compute_frame_size): Don't correct frame
2152 offset for stack bias.
2153
15fae023
L
21542002-02-07 H.J. Lu <hjl@gnu.org>
2155
2156 * config/mips/linux.h (SUBTARGET_ASM_DEBUGGING_SPEC): Defined.
2157
fde5badd
UW
21582002-02-07 Ulrich Weigand <uweigand@de.ibm.com>
2159
2160 * testsuite/gcc.dg/cpp/charconst-2.c: Add -fsigned-char option.
2161
162f023b
JH
2162Thu Feb 7 12:14:17 CET 2002 Jan Hubicka <jh@suse.cz>
2163
2164 * i386-protos.h (x86_order_regs_for_local_alloc): Declare
2165 * i386.c (x86_order_regs_for_local_alloc): New global function.
2166 * i386.h (REG_ALLOC_ORDER): CLeanup.
2167 (ORDER_REGS_FOR_LOCAL_ALLOC): New.
2168
9b462c42
RH
21692002-02-07 Richard Henderson <rth@redhat.com>
2170
85aa876c 2171 PR optimization/2463
9b462c42
RH
2172 * alias.c (find_base_value): Recall base values for fixed hard regs.
2173 * loop.c (loop_regs_update): Don't use single_set on non-insns.
2174
06e455a9
AO
21752002-02-07 Alexandre Oliva <aoliva@redhat.com>
2176
2177 * config/mips/mips.md (define_delay) [mips16]: Adjust required
2178 length.
2179
edd1967d
RH
21802002-02-06 Richard Henderson <rth@redhat.com>
2181
2182 PR c/5609
2183 * stmt.c (resolve_operand_name_1): Take more care with mixed
2184 named and unnamed operands.
2185
a2cd028f
JJ
21862002-02-06 Janis Johnson <janis187@us.ibm.com>
2187 Jan Hubicka <jh@suse.cz>
2188
2189 * loop.c (remove_constant_addition): Avoid clobbering a shared
2190 CONST expression.
2191
e8487c04
UW
21922002-02-06 Ulrich Weigand <uweigand@de.ibm.com>
2193
2194 * config.gcc (s390x-*-linux*): Add t-linux64 makefile fragment.
2195 * config/s390/t-linux64: New file.
2196 * config/s390/libgcc-glibc.ver: New file.
2197
58d10f89
UW
21982002-02-06 Ulrich Weigand <uweigand@de.ibm.com>
2199
2200 * config/s390/linux64.h: Delete file.
2201 * config/s390/s390x.h: New file.
2202 * config.gcc (s390x-*-linux*): Use s390x.h instead of linux64.h
2203 as target header file.
2204 * config/s390/linux.h (TARGET_VERSION): Define depending on
2205 DEFAULT_TARGET_64BIT.
2206 (CPP_SPEC, ASM_SPEC, LINK_SPEC): Likewise.
2207 (SIZE_TYPE, PTRDIFF_TYPE): Likewise.
2208 (NO_BUILTIN_SIZE_TYPE, NO_BUILTIN_PTRDIFF_TYPE): Define.
2209 (CPP_ARCH31_SPEC, CPP_ARCH64_SPEC): New defines.
2210 (LINK_ARCH31_SPEC, LINK_ARCH64_SPEC): New defines.
2211 (EXTRA_SPEC): New define.
2212 * config/s390/s390.h (TARGET_VERSION): Define depending on
2213 DEFAULT_TARGET_64BIT.
2214 (MASK_RETURN_ADDR): Add run-time check for TARGET_64BIT.
2215
5ce89b2e
JM
22162002-02-06 Jason Merrill <jason@redhat.com>
2217
2218 * c-decl.c (finish_function): Warn about a non-void function with
2219 no return statement and no abnormal exit.
2220 (current_function_returns_abnormally): New variable.
2221 (start_function): Clear it.
2222 (struct c_language_function): Add returns_abnormally.
2223 (push_c_function_context): Save it.
2224 (pop_c_function_context): Restore it.
2225 (builtin_function): Set TREE_THIS_VOLATILE on return fns.
2226 (grokdeclarator): Set C_FUNCTION_IMPLICIT_INT on functions without
2227 an explicit return type.
2228 * c-tree.h: Declare current_function_returns_abnormally.
2229 (C_FUNCTION_IMPLICIT_INT): New macro.
2230 * c-typeck.c (build_function_call): Set it.
2231 (c_expand_return): Set current_function_returns_value even if the
2232 value is erroneous.
2233
caaf2272
JJ
22342002-02-06 Jakub Jelinek <jakub@redhat.com>
2235
2236 PR c/5420:
2237 * c-common.c (c_unsafe_for_reeval): Make COMPOUND_LITERAL_EXPR
2238 unsafe for reevaluation.
2239
d5129288
JJ
22402002-02-06 Jakub Jelinek <jakub@redhat.com>
2241
2242 PR c/5482:
2243 * c-common.c (c_expand_expr) [STMT_EXPR]: If last expression is not
2244 EXPR_STMT, but COMPOUND_STMT, recurse into it.
2245
7fb75099
RH
22462002-02-06 Richard Henderson <rth@redhat.com>
2247
2248 * cfganal.c (keep_with_call_p): Source for fixed_reg dest must
2249 be a general_operand. Dest for function value must be a pseudo.
2250
d3a8b6a6
NC
22512002-02-06 Nick Clifton <nickc@cambridge.redhat.com>
2252
2253 * dbxout.c (dbxout_symbol_location): Accept LABEL_REFs as well
2254 as SYMBOL_REFs from the constant pool.
2255
3c1299c5
AO
22562002-02-06 Alexandre Oliva <aoliva@redhat.com>
2257
2258 * dbxout.c (dbxout_parms): Apply DEBUGGER_ARG_OFFSET to parameters
2259 passed by invisible reference.
2260
c2c9f6c9
RH
22612002-02-05 Richard Henderson <rth@redhat.com>
2262
2263 * config/sparc/sparc.h (ARG_POINTER_CFA_OFFSET): No stack bias.
2264
a824924d
HPN
22652002-02-06 Hans-Peter Nilsson <hp@bitrange.com>
2266
2267 Implement using "base addresses" in insn operands as default.
2268 * config/mmix/mmix.c (mmix_conditional_register_usage): if
2269 -mabi=gnu, modify fixed_regs to fit the GNU ABI.
2270 (mmix_extra_constraint): Use 'R' to indicate that GETA should be
2271 used to read the rtx value.
2272 (mmix_target_asm_function_epilogue): Fix spacing.
2273 (mmix_constant_address_p): Handle TARGET_BASE_ADDRESSES.
2274 (mmix_legitimate_address): Ditto.
2275 (mmix_encode_section_info): Set SYMBOL_REF_FLAG on rtx:es that
2276 should be loaded with a GETA insn. Don't allocate needless extra
2277 char for nul termination and fix misleading comment.
2278 (mmix_print_operand_address): Handle constants if
2279 TARGET_BASE_ADDRESSES.
2280 (mmix_output_register_setting): Use base addressing if
2281 TARGET_BASE_ADDRESSES and the number of insns is 3.
2282 * config/mmix/t-mmix (MULTILIB_EXTRA_OPTS): New.
2283 * config/mmix/mmix.md ("movdi"): Change the alternative with GETA
2284 to use R as constraint, add LDA to match s.
2285 * config/mmix/mmix.h (TARGET_BASE_ADDRESSES): New.
2286 (TARGET_DEFAULT): Add TARGET_MASK_BASE_ADDRESSES.
2287 (TARGET_SWITCHES): Add -mbase-addresses, -mno-base-addresses.
2288 (FIXED_REGISTERS): Make registers $231..$246 fixed by default.
2289 (MMIX_MMIXWARE_ABI_REG_ALLOC_ORDER): Move $231..$246 last, in
2290 order with other fixed registers.
2291 (MMIX_GNU_ABI_REG_ALLOC_ORDER): Put forward $231, in order with
2292 other parameter/call-clobbered registers.
2293 * doc/invoke.texi (Option Summary) <MMIX Options>: Add
2294 -mbase-addresses, -mno-base-addresses.
2295 (MMIX Options): Ditto.
2296
73c342b9
JDA
22972002-02-05 John David Anglin <dave@hiauly1.hia.nrc.ca>
2298
2299 * pa.h (PREDICATE_CODES): Add reg_before_reload_operand.
2300
ef238c58
AH
23012002-02-06 Aldy Hernandez <aldyh@redhat.com>
2302
2303 * config/rs6000/altivec.h: Change elem to _S_elem.
2304
ad08e60e
JT
23052002-02-05 Jason Thorpe <thorpej@wasabisystems.com>
2306
2307 * config/netbsd.h (WCHAR_TYPE): Define.
2308 (WCHAR_TYPE_SIZE): Ditto.
2309 (WINT_TYPE): Ditto.
2310 * config/alpha/netbsd.h (WCHAR_TYPE): Remove.
2311 (WCHAR_UNSIGNED): Ditto.
2312 (WCHAR_TYPE_SIZE): Ditto.
2313 (WINT_TYPE): Ditto.
2314 * config/arm/netbsd.h: Likewise.
2315 * config/i386/netbsd-elf.h: Likewise.
2316 * config/i386/netbsd.h: Likewise.
2317 * config/m68k/netbsd-elf.h: Likewise.
2318 * config/m68k/netbsd.h: Likewise.
2319 * config/ns32k/netbsd.h: Likewise.
2320 * config/sparc/netbsd.h: Likewise.
2321 * config/vax/netbsd.: Likewise.
2322
f913c102
AO
23232002-02-05 Alexandre Oliva <aoliva@redhat.com>
2324
2325 * target.h (struct gcc_target): Added ms_bitfield_layout_p.
2326 * target-def.h (TARGET_MS_BITFIELD_LAYOUT_P): New. Added to...
2327 (TARGET_INITIALIZER): this.
2328 * doc/tm.texi (TARGET_MS_BITFIELD_LAYOUT_P): Document.
2329 (BITFIELD_NBYTES_LIMITED): Markup fix.
2330 * tree.h (default_ms_bitfield_layout_p): Declare.
2331 (record_layout_info): Added prev_field.
2332 * tree.c (default_ms_bitfield_layout_p): New fn.
2333 * c-decl.c (finish_struct): Disregard EMPTY_FIELD_BOUNDARY and
2334 PCC_BITFIELD_TYPE_MATTERS for MS bit-field layout.
2335 * stor-layout.c: Include target.h.
2336 (start_record_layout): Initialize prev_field.
2337 (place_field): Handle MS bit-field layout, and disregard
2338 EMPTY_FIELD_BOUNDARY, BITFIELD_NBYTES_LIMITED and
2339 PCC_BITFIELD_TYPE_MATTERS in this case. Update prev_field.
2340 * Makefile.in (stor-layout.o): Adjust dependencies.
2341
c13db5d1
JM
23422002-02-05 Jason Merrill <jason@redhat.com>
2343
c13db5d1
JM
2344 * collect2.c (dump_file): Pass DMGL_VERBOSE to cplus_demangle.
2345
4505024e
AJ
23462002-02-05 Andreas Jaeger <aj@suse.de>
2347
2348 * crtstuff.c: Fix comments.
2349
794ad79d
RH
23502002-02-05 Richard Henderson <rth@redhat.com>
2351
2e279a9b
RH
2352 PR fortran/3393
2353 * loop.c (loop_iv_add_mult_emit_before): Copy multiplier as well.
2354 (loop_iv_add_mult_sink, loop_iv_add_mult_hoist): Likewise.
2355
794ad79d
RH
2356 PR fortran/3392
2357 * config/mips/mips.c (function_arg): Handle TImode.
2358 (function_arg_advance): Likewise.
2359
8f909017
AH
23602002-02-05 Aldy Hernandez <aldyh@redhat.com>
2361
c13db5d1
JM
2362 * config/rs6000/altivec.h (vec_step_help): Rename to
2363 __vec_step_help.
8f909017 2364
66daa9e3
AH
23652002-02-05 Aldy Hernandez <aldyh@redhat.com>
2366
c13db5d1 2367 * config/rs6000/altivec.h: Fix typos.
66daa9e3 2368
2696e97b
JT
23692002-02-05 Jason Thorpe <thorpej@wasabisystems.com>
2370
2371 * config/arm/netbsd.h: Correct a comment.
2372
3deb2758
AH
23732002-02-05 Aldy Hernandez <aldyh@redhat.com>
2374
c13db5d1
JM
2375 * config/rs6000/rs6000.c (altivec_init_builtins): Fix typo
2376 building void typed builtins.
3deb2758 2377
c13db5d1
JM
2378 * config/rs6000/altivec.h (vec_ld*): Fix typos.
2379 (vec_step): Implement for C++.
3deb2758 2380
c13db5d1 2381Mon Feb 4 19:23:19 2002 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
2c79137a
RK
2382
2383 * final.c (final_scan_insn): Add case for NOTE_INSN_LOOP_END_TOP_COND.
2384
ebbb0a63
RH
23852002-02-04 Richard Henderson <rth@redhat.com>
2386
2387 * combine.c (nonzero_bits): Re-introduce special case for
2388 sp/fp/ap wrt REGNO_POINTER_ALIGN.
2389
ae4b4a02
AH
23902002-02-05 Aldy Hernandez <aldyh@redhat.com>
2391
c13db5d1
JM
2392 * doc/extend.texi: Warn about unsupported usage of altivec
2393 builtins.
ae4b4a02 2394
c13db5d1
JM
2395 * config/rs6000/rs6000.md (altivec_vcmp*_p): Remove.
2396 (altivec_predicate_*): New.
ae4b4a02 2397
c13db5d1
JM
2398 * config/rs6000/altivec.h: Rewrite predicates to use new builtins.
2399 Add C++ version of vec_*() functions.
ae4b4a02 2400
c13db5d1
JM
2401 * config/rs6000/rs6000.c (bdesc_altivec_preds): New.
2402 (bdesc_2arg): Remove altivec predicates.
2403 (altivec_expand_builtin): Handle predicates.
2404 (altivec_init_builtins): Handle predicates.
2405 (altivec_expand_predicate_builtin): New.
ae4b4a02 2406
f6bcf44c
JDA
24072002-02-04 John David Anglin <dave@hiauly1.hia.nrc.ca>
2408
2409 * pa.c (DO_FRAME_NOTES): Move forward.
2410 (store_reg): Revise handling of frame notes.
2411 (load_reg): Likewise.
2412 (set_reg_plus_d): Likewise.
2413 (hppa_expand_prologue): Likewise.
2414 (hppa_expand_epilogue): Likewise.
b137f9fc 2415
703b0080
JDA
24162002-02-04 John David Anglin <dave@hiauly1.hia.nrc.ca>
2417
2418 * unwind-dw2-fde-glibc.c: Define _GNU_SOURCE if not defined.
2419
6f9fdf4d
JJ
24202002-02-04 Jakub Jelinek <jakub@redhat.com>
2421
2422 PR c/4475, c++/3780:
2423 * c-common.def (SWITCH_STMT): Add SWITCH_TYPE operand.
2424 * c-common.h (SWITCH_TYPE): Define.
2425 * c-typeck.c (c_start_case): Set SWITCH_TYPE.
2426 * stmt.c (all_cases_count): Set lastval to thisval at end of loop.
2427 Rename spareness variable to sparseness.
2428 (expand_end_case_type): Renamed from expand_end_case, use orig_type
2429 if non-NULL instead of TREE_TYPE (orig_index).
2430 * tree.h (expand_end_case_type): Renamed from expand_end_case.
2431 (expand_end_case): Define using expand_end_case_type.
2432 * c-semantics.c (genrtl_switch_stmt): Pass SWITCH_TYPE
2433 to expand_end_case_type.
2434 * doc/c-tree.texi (SWITCH_STMT): Document SWITCH_TYPE.
2435
79109502
JDA
24362002-02-04 John David Anglin <dave@hiauly1.hia.nrc.ca>
2437
2438 * pa.h (PREFERRED_STACK_BOUNDARY): Define to match standard rounding.
2439 (BIGGEST_ALIGNMENT): Change to 128.
2440
e62a5987
JDA
24412002-02-04 John David Anglin <dave@hiauly1.hia.nrc.ca>
2442
2443 * pa32-linux.h (LINK_COMMAND_SPEC): Define.
2444
219f24a4
JDA
24452002-02-04 John David Anglin <dave@hiauly1.hia.nrc.ca>
2446
2447 * pa.md (call_internal_reg_64bit): Remove unused variable.
2448
3cb66fd7
NC
24492002-02-04 Nick Clifton <nickc@cambridge.redhat.com>
2450
2451 * config/arm/arm.h (machine_function): Add uses_anonymous_args
2452 field.
2453 (SETUP_INCOMING_VARARGS): Set uses_anonymous_args.
2454 * config/arm/arm.c (current_function_anonymous_args): Delete,
2455 replace uses with cfun->machine->uses_anonymous_args.
2456 (arm_reorg): Do not reset uses_anonymous_args.
2457
2458 * config/arm/arm.c (arm_hard_regno_mode_ok): Allow any value in
2459 any geenral register.
b137f9fc 2460
24c545ff
BS
24612001-02-04 Bernd Schmidt <bernds@redhat.com>
2462
2463 * cfgrtl.c (force_nonfallthru_and_redirect): Don't try to redirect
2464 the entry block.
2465
563c12b0
RH
24662002-02-04 Richard Henderson <rth@redhat.com>
2467
2468 * combine.c (force_to_mode): Remove STACK_BIAS code.
2469 (nonzero_bits): Likewise. Replace sp/fp special case with
2470 REGNO_POINTER_ALIGN.
2471
2472 * config/sparc/sparc.h (FRAME_POINTER_REGNUM): Change to SFP.
2473 (HARD_FRAME_POINTER_REGNUM): New.
2474 (FIRST_PSEUDO_REGISTER, REG_CLASS_CONTENTS): Update.
2475 (FIXED_REGS, CALL_USED_REGS): Update.
2476 (REG_ALLOC_ORDER, REGISTER_NAMES): Update.
2477 (CONDITIONAL_REGISTER_USAGE): Update for HFP.
2478 (HARD_REGNO_NREGS): Update for SFP.
2479 (STACK_POINTER_OFFSET): Include bias here ...
2480 (FIRST_PARM_OFFSET): ... not here.
2481 (STACK_BIAS): Remove.
2482 (INIT_EXPANDERS): New.
2483 (STARTING_FRAME_OFFSET): Do not include bias.
2484 (ELIMINABLE_REGS, CAN_ELIMINATE, INITIAL_ELIMINATION_OFFSET): New.
2485 (REGNO_OK_FOR_INDEX_P, REGNO_OK_FOR_BASE_P): Update for SFP.
2486 (REG_OK_FOR_INDEX_P, REG_OK_FOR_BASE_P): Likewise.
2487 * config/sparc/aout.h (DBX_REGISTER_NUMBER): Update for HFP.
2488 * config/sparc/litecoff.h, config/sparc/sol2.h: Likewise.
2489 * config/sparc/sparc.c (mem_min_alignment): Update for HFP.
2490 (sparc_nonflat_function_prologue, epilogue_renumber): Likewise.
2491 (MUST_SAVE_REGISTER): Likewise.
2492 (sparc_flat_function_prologue): Likewise.
2493 (sparc_flat_function_epilogue): Likewise.
2494 (HARD_FRAME_POINTER_MASK): Rename from FRAME_POINTER_MASK.
2495 (sparc_init_modes): SFP is GENERAL_REGS.
2496 (sparc_builtin_saveregs): SFP does not have bias applied.
2497
14691f8d
RH
24982002-02-04 Richard Henderson <rth@redhat.com>
2499
2500 * config/alpha/alpha.c (current_function_is_thunk): Don't check
2501 current_function_is_thunk.
2502 (alpha_sa_mask): Distinguish between current_function_is_thunk
2503 called from ASM_OUTPUT_MI_THUNK and not.
2504 (alpha_does_function_need_gp): Thunks always need gp.
2505 (alpha_start_function, alpha_output_function_end_prologue): Likewise.
2506 (alpha_output_mi_thunk_osf): New.
2507 * config/alpha/alpha-protos.h: Update.
2508 * config/alpha/alpha.h (ASM_OUTPUT_MI_THUNK): New.
2509
af702de8
RS
25102002-02-04 Richard Sandiford <rsandifo@redhat.com>
2511
2512 * c-typeck.c (build_c_cast): Warn when qualifiers are added to
2513 function types, not when they're taken away.
2514
5b1cacd8
JL
2515Mon Feb 4 09:05:58 2002 Jeffrey A Law (law@redhat.com)
2516
2517 * cfgrtl.c (try_redirect_by_replacing_jump): Remove associated
2518 CODE_LABEL and jump table when replacing a table jump with a
2519 simple jump.
2520
f3e9edff
UW
25212002-02-04 Ulrich Weigand <uweigand@de.ibm.com>
2522
2523 * config/s390/s390-protos.h (legitimize_la_operand,
2524 s390_secondary_input_reload_class, s390_plus_operand,
2525 s390_expand_plus_operand): Add prototypes.
2526
2527 config/s390/s390.c (s390_secondary_input_reload_class,
2528 s390_plus_operand, s390_expand_plus_operand): New functions.
2529
2530 (struct s390_address): New member 'pointer'.
2531 (s390_decompose_address): Compute it.
2532 (legitimate_la_operand_p): Use it.
2533 (legitimize_la_operand): New function.
2534 (movti, movdi, movdf splitters): Call it.
2535
2536 config/s390/s390.h (SECONDARY_INPUT_RELOAD_CLASS): Define.
2537 (PREDICATE_CODES): Add s390_plus_operand.
2538
2539 config/s390/s390.md (adddi3_inv_64, addaddr_ccclobber): Delete.
2540 (la_ccclobber): Allow GENERAL_REGS as output operand.
2541
2542 (reload_load_address, *reload_load_address_reg_0, *la, *do_la_reg_0,
2543 *reload_la_64, *reload_la_31 and splitters): Delete, replace by ...
2544 (*la_64, *la_31, reload_indi, reload_insi): ... these.
2545
3c9a08ec
UW
25462002-02-04 Ulrich Weigand <uweigand@de.ibm.com>
2547
2548 * gcc/config/s390/s390.h (CRT_CALL_STATIC_FUNCTION): Fixed
2549 register names for regular asm () construct.
2550
ac300a45
JJ
25512002-02-04 Jakub Jelinek <jakub@redhat.com>
2552
2553 * config/i386/i386.md (movsf_1): Allow moving SF values in MMX
2554 registers.
2555
fa852403
JJ
25562002-02-04 Jakub Jelinek <jakub@redhat.com>
2557
2558 * combine.c (recog_for_combine): Create a dummy insn with PATTERN
2559 pat for recog.
2560
fecaac37
HP
25612002-02-04 Hartmut Penner <hpenner@de.ibm.com>
2562
2563 * varasm.c (decode_rtx_const): Allow unspec (symbol_ref) in
2564 constant pool to be identical by string address and index.
2565
10c45943
AG
25662002-02-04 Anthony Green <green@redhat.com>
2567
2568 * output.h (SECTION_OVERRIDE): Define.
2569 * varasm.c (named_section): Obey SECTION_OVERRIDE.
2570
69474c3c
JT
25712002-02-03 Jason Thorpe <thorpej@wasabisystems.com>
2572
2573 * config.gcc (arm*-*-netbsdelf*): Placeholder to prevent match
2574 by existing arm*-*-netbsd* (a.out) target.
2575 (ns32k-*-netbsdelf*): Likewise.
2576 (sparc-*-netbsdelf*): Likewise.
2577 (vax-*-netbsdelf*): Likewise.
2578
939a46f6 25792002-02-03 Danny Smith <dannysmith@users.sourceforge.net>
3b56934f
CF
2580
2581 * gthr-win32.h: Protect against conflicting typedef for BOOL in windows
2582 headers and libobjc headers.
2583
25842002-02-03 Mumit Khan <khan@nanotech.wisc.edu>
2585
2586 * gthr-win32.h (__mingwthr_key_dtor): Use extern "C" linkage for C++.
2587 (_mingw.h): Remove duplicate include.
2588
2fd95d71
JT
25892002-02-03 Jason Thorpe <thorpej@wasabisystems.com>
2590
2591 * config.gcc: Set cpu_type to m68k for 68010, as well.
2592 (m68010-*-netbsdelf*): New...
2593 (m68k*-*-netbsdelf*): ...targets.
2594 * config/m68k/netbsd-elf.h: New file.
2595
0ea6f6a0
KH
25962002-02-02 Kazu Hirata <kazu@hxi.com>
2597
2598 * config/h8300/h8300.c (hand_list): Move inside function_arg.
2599
cbf1b2da
KH
26002002-02-02 Kazu Hirata <kazu@hxi.com>
2601
2602 * config/h8300/h8300.c (h8_push_ops): Move inside
2603 h8300_init_once.
2604 (h8_pop_ops): Likewise.
2605 (h8_move_ops): Likewise.
2606
0869f126
KH
26072002-02-02 Kazu Hirata <kazu@hxi.com>
2608
2609 * config/h8300/h8300.c (os_task): Make it static.
2610 (monitor): Likewise.
2611 (pragma_saveall): Likewise.
2612
90e65b70
AO
26132002-02-02 Alexandre Oliva <aoliva@redhat.com>
2614
2615 * config/sh/sh.md (ic_invalidate_line): Make sure the immediate
2616 constant is a valid sign-extension for Pmode.
2617
9cbcd983
KH
26182002-02-02 Kazu Hirata <kazu@hxi.com>
2619
2620 * config/h8300/h8300.c: Fix formatting.
2621
7a27efc4
KH
26222002-02-02 Kazu Hirata <kazu@hxi.com>
2623
2624 * config/h8300/h8300.md: Fix formatting.
2625
54175a44
KH
26262002-02-02 Kazu Hirata <kazu@hxi.com>
2627
2628 * config/h8300/h8300.md (one_cmpl patterns): Tighten the
2629 predicates of operands[1]. Split the patterns for each
2630 processor variant.
2631
eceb1755
KH
26322002-02-02 Kazu Hirata <kazu@hxi.com>
2633
2634 * config/h8300/h8300.md (xor patterns): Tighten the predicates
2635 of operands[1] to register_operand.
2636
0fef3fd0
NB
26372002-02-02 Neil Booth <neil@daikokuya.demon.co.uk>
2638
2639 * cpphash.h (struct spec_nodes): Remove n__CHAR_UNSIGNED__.
2640 * cpphash.c (_cpp_init_hashtable): Similarly.
2641 * cppinit.c (cpp_create_reader): Default the signed_char flag.
2642 (init_builtins): Define __CHAR_UNSIGNED__ appropriately.
2643 (COMMAND_LINE_OPTIONS): Recognise -f{un,}signed-char.
2644 (cpp_handle_option): Handle the new options.
2645 * cpplex.c (cpp_interpret_charconst): Use new flag.
2646 * cpplib.h (struct cpp_options): New member signed_char.
2647 * gcc.c (cpp_unique_options): Remove %c spec and documentation.
2648 (cpp_options): Handle -fsigned-char and -funsigned-char.
2649 (static_specs): Remove signed_char_spec.
2650 (do_spec1): Don't handle %c.
2651 * system.h: Poison SIGNED_CHAR_SPEC.
2652 * tradcif.y (yylex): Use flag_signed_char.
2653 * tradcpp.h (flag_signed_char): New.
2654 * tradcpp.c (flag_signed_char): New.
2655 (main): Handle new command-line options.
2656 (initialize_builtins): Define __CHAR_UNSIGNED__ if appropriate.
2657config:
2658 * alpha/alpha.h (SIGNED_CHAR_SPEC): Remove.
2659 * avr/avr.h: Remove old comments.
2660 * i960/i960.h (CPP_SPEC): Pass -fsigned-char if -mic*.
2661 (CC1_SPEC): Pass -fsigned-char if -mic*.
2662 (SIGNED_CHAR_SPEC): Remove.
2663doc:
2664 * tm.texi (SIGNED_CHAR_SPEC): Remove documentation.
2665
0617ed52
EC
26662002-02-01 Eric Christopher <echristo@redhat.com>
2667
2668 From Daniel Jacobowitz <dmj+@andrew.cmu.edu>
2669 * config/mips/mips.h (FUNCTION_PROFILER): Fix function profiling.
2670 * config/mips/linux.h (ASM_OUTPUT_REG_PUSH): Undefine.
2671 (ASM_OUTPUT_REG_POP): Ditto.
2672
dfd48d76
NB
26732002-02-02 Neil Booth <neil@daikokuya.demon.co.uk>
2674
2675 * c-decl.c, tree.c, tree.h, objc/objc-act.c: Revert bitfield
2676 patch.
2677
4a23409e
JJ
26782002-02-02 Jakub Jelinek <jakub@redhat.com>
2679
2680 * config/i386/i386.h (CPP_CPUCOMMON_SPEC): Add missing | separators.
2681
d3c52658
JJ
26822002-02-02 Jakub Jelinek <jakub@redhat.com>
2683
2684 PR c/5304:
2685 * expmed.c (expand_mult_highpart): Use immed_double_const for wide_op1
2686 unconditionally.
2687
02c5a3bd
JJ
26882002-02-01 Janis Johnson <janis187@us.ibm.com>
2689
2690 * cfganal.c: Include tm_p.h.
2691 (keep_with_call_p): Fix the test that determines if a register holds
2692 the return value of a call.
2693
3968de80
DD
26942002-02-01 DJ Delorie <dj@redhat.com>
2695
2696 * config/sparc/sparc.c (sparc_emit_set_symbolic_const64): If
2697 we are given conflicting registers, switch to the other one we
2698 had allocated for us.
2699 * config/sparc/sparc.md (reload_indi, reload_outdi): Pass op[2]
2700 as TImode so we know when the "other" register is available.
2701
1338ea6c
DB
27022002-02-01 David O'Brien <obrien@FreeBSD.org>
2703
2704 * config/sparc/sol2-sld-64.h: Include sparc/biarch64.h rather than
2705 sparc/sparc_bi.h.
2706
f015be23
JJ
27072002-02-01 Janis Johnson <janis187@us.ibm.com>
2708
2709 * cfganal.c (keep_with_call_p): New function.
2710 (flow_call_edges_add): Prevent splitting a block between a call and
2711 a single-set instruction that should be kept in the same block.
2712
63708ffc
CR
27132002-02-01 Craig Rodrigues <rodrigc@gcc.gnu.org>
2714
2715 * doc/install.texi (avr): Update outdated URL.
2716
5ee4950e
AH
27172002-01-30 Andrew Haley <aph@cambridge.redhat.com>
2718
2719 * config/stormy16/stormy16.md (pushqi): New.
2720 (popqi): New.
2721 (pushhi): New.
2722 (pophi): New.
2723 (movhi): Remove stack operands.
2724 (movqi): Likewise.
2725 * config/stormy16/stormy16.h (PREDICATE_CODES): Add
2726 nonimmediate_nonstack_operand.
0617ed52 2727 * config/stormy16/stormy16.c (nonimmediate_nonstack_operand):
5ee4950e
AH
2728 New.
2729 * config/stormy16/stormy16-protos.h (nonimmediate_nonstack_operand)
2730 New.
2731
b88c0704
JM
27322002-01-31 Jason Merrill <jason@redhat.com>
2733
2734 * Makefile.in (c-parse.c): Handle .output file.
2735 * objc/Make-lang.in (objc-parse.c): Likewise.
2736
ac282977
AO
27372002-02-01 Alexandre Oliva <aoliva@redhat.com>
2738
2739 * config/mips/mips.h (ENDIAN_SPEC): Output the endianness flag if
2740 the -me[lb] option is given. Don't output the default flag
2741 twice.
2742
bebc7e8b
ZW
27432002-01-31 Zack Weinberg <zack@codesourcery.com>
2744
2745 * c-lex.c (yyparse): Call debug_hooks->start_source_file for
2746 the primary source file; this has not been done yet.
2747 * c-decl.c (c_expand_body): Reset input_filename from
2748 DECL_SOURCE_FILE (fndecl) before calling init_function_start.
2749
5809eb5f
KH
27502002-01-31 Kazu Hirata <kazu@hxi.com>
2751
2752 * rtlanal.c (subreg_regno_offset): Do not use
2753 SUBREG_REGNO_OFFSET.
2754 * system.h: Add SUBREG_REGNO_OFFSET to the GCC poison list.
2755 * doc/tm.texi (SUBREG_REGNO_OFFSET): Remove.
2756
8512bbd7
JM
27572002-01-31 Joseph S. Myers <jsm28@cam.ac.uk>
2758
2759 * gccbug.in: Follow GNU Coding Standards for --version. Use GCC
2760 version rather than GNATS version in --version output.
2761
74cb3cc8
RS
27622002-01-31 Richard Sandiford <rsandifo@redhat.com>
2763
2764 * ifcvt.c (noce_process_if_block): Make a copy of the destination
2765 when copying back from a temporary.
2766
874b5b14
RH
27672002-01-30 Richard Henderson <rth@redhat.com>
2768
2769 * ifcvt.c (dead_or_predicable): Handling merging when other_bb
2770 and new_dest are the same.
2771
e803a64b
RH
27722002-01-30 Richard Henderson <rth@redhat.com>
2773
89cf7be5 2774 PR opt/5076
e803a64b
RH
2775 * rtl.h (NOTE_INSN_LOOP_END_TOP_COND): New.
2776 * rtl.c (note_insn_name): Update.
2777 * emit-rtl.c (remove_unnecessary_notes): Kill it.
2778 * stmt.c (expand_end_loop): Kill jump opt code. Use LOOP_END_TOP_COND
2779 to perform loop rotation.
2780 (expand_exit_loop_top_cond): New.
2781 * tree.h (expand_exit_loop_top_cond): Declare it.
2782 * c-semantics.c (genrtl_while_stmt): Use it.
2783 (genrtl_for_stmt): Likewise.
2784
0b51254d
AO
27852002-01-30 Alexandre Oliva <aoliva@redhat.com>
2786
2787 * config/mips/mips.h (PARM_BOUNDARY): Guarantee alignment of
2788 arguments to 64-bit boundaries on 64-bit ABIs.
2789
71cef493
SE
27902002-01-30 Steve Ellcey <sje@cup.hp.com>
2791
2792 * loop.c (loop_invariant_p): Special case pic_offset_table_rtx.
2793
6169e5fd
JM
27942002-01-31 Joseph S. Myers <jsm28@cam.ac.uk>
2795
2796 * c-decl.c (grokdeclarator): Handle type being a typedef for an
2797 invalid type.
2798
86f808dc
DB
27992002-01-30 David O'Brien <obrien@FreeBSD.org>
2800
2801 * config.gcc: Include sparc/biarch64.h rather than sparc/sparc_bi.h.
2802 * config/sparc/sparc_bi.h: Remove file.
2803 * config/sparc/biarch64.h: New file (rename of sparc_bi.h).
2804
5748ebeb
RH
28052002-01-30 Richard Henderson <rth@redhat.com>
2806
2807 * sched-deps.c (sched_analyze): Make a call read the frame pointer.
2808
20d32cc2
ZW
28092002-01-30 Zack Weinberg <zack@codesourcery.com>
2810
2811 * expmed.c (emit_store_flag): Call protect_from_queue on op0 and op1.
2812
b88c0704 28132002-01-30 Jason Merrill <jason@redhat.com>
6bb28965
JM
2814
2815 * dwarf2out.c (dwarf_cfi_name): Add other DWARF 3 codes.
2816 (output_cfi): Likewise. Disable DW_CFA_GNU_negative_offset_extended.
2817 (reg_save): Use DW_CFA_offset_extended_sf instead.
2818
2819 * dwarf2out.c (dwarf2out_finish): Don't abort if there were errors.
2820
37060e78
JJ
28212002-01-29 Jakub Jelinek <jakub@redhat.com>
2822
2823 * cselib.c (cselib_record_sets): Use IF_THEN_ELSE result
2824 in cselib_lookup.
2825
d18dba68
AH
28262002-01-29 Aldy Hernandez <aldyh@redhat.com>
2827
bebc7e8b
ZW
2828 * rs6000.md ("*call_value_local32"): Remove constraints.
2829 ("*call_value_local64"): Same.
2830 ("*call_value_indirect_nonlocal_aix32"): Same.
2831 ("*call_value_nonlocal_aix32"): Same.
2832 ("*call_value_indirect_nonlocal_aix64"): Same.
2833 ("*call_value_nonlocal_aix64"): Same.
2834 ("*call_value_nonlocal_sysv"): Same.
d18dba68 2835
80a8aac6
RH
28362002-01-29 Richard Henderson <rth@redhat.com>
2837
2838 * config/alpha/elf.h (SDB_DEBUGGING_INFO): Undef.
2839
12beba6f
RH
28402002-01-29 Richard Henderson <rth@redhat.com>
2841
2842 * expr.c (force_operand): Ignore flag_pic for detecting pic
2843 address loads.
2844 * regclass.c (init_reg_sets_1): Test fixed_regs not flag_pic
2845 for determining if PIC_OFFSET_TABLE_REGNUM is call-clobbered.
2846 * resource.c (mark_target_live_regs): Use regs_invalidated_by_call
2847 instead of open-coded loop.
2848 * doc/tm.texi (PIC_OFFSET_TABLE_REGNUM): Clarify that it must
2849 be fixed when in use.
2850
2583081e
RH
28512002-01-29 Richard Henderson <rth@redhat.com>
2852
2853 * sched-int.h (struct deps_reg): Add uses_length, clobbers_length.
2854 * sched-rgn.c (propagate_deps): Update them.
2855 * sched-deps.c (sched_analyze_insn): Update them. Flush the
2856 clobbers list when either gets too long.
2857
3b8d200e
JJ
28582002-01-29 Jakub Jelinek <jakub@redhat.com>
2859
2860 * config/i386/i386.h (LIMIT_RELOAD_CLASS): Handle LEGACY_REGS
2861 and INDEX_REGS the same as GENERAL_REGS.
2862 (SECONDARY_OUTPUT_RELOAD_CLASS): Likewise.
2863
2d3115eb
NB
28642002-01-29 Neil Booth <neil@daikokuya.demon.co.uk>
2865
bebc7e8b 2866 * tree.c (build_nonstandard_integer_type): Correct prototype.
2d3115eb 2867
ecbe845e
UW
28682002-01-29 Ulrich Weigand <uweigand@de.ibm.com>
2869
bebc7e8b 2870 * config/s390/s390.md (movstrsico, movstrdix_64,
ecbe845e 2871 movstrsix_31): Remove, replace by ...
bebc7e8b 2872 (movstrdi_short, movstrsi_short, movstrdi_long,
ecbe845e
UW
2873 movstrsi_long): ... these. New.
2874 (movstrdi, movstrsi): Adapt.
2875
2876 (rotldi3, rotlsi3, ashldi3, *ashldi3_31, *ashldi3_64,
bebc7e8b 2877 ashlsi3, lshrdi3, *lshrdi3_31, *lshrdi3_64, lshrsi3):
ecbe845e
UW
2878 Remove unnecessary CC clobber.
2879 (*ashrdi3_cc_31, *ashrdi3_cconly_31, *ashrdi3_cc_64,
2880 *ashrdi3_cconly_64, *ashrsi3_cc, *ashrsi3_cconly): New.
2881
2882 (divmoddi4): Don't partially initialize TImode register.
2883
0b32fca5
GK
28842002-01-29 Geoffrey Keating <geoffk@redhat.com>
2885
2886 * doc/sourcebuild.texi (C Tests): Document gcc.dg/debug directory.
2887
08ef5437
RH
28882002-01-29 Richard Henderson <rth@redhat.com>
2889
2890 * flow.c (print_rtl_and_abort): Remove.
2891 (print_rtl_and_abort_fcn): Remove.
2892 (verify_local_live_at_start): Use dump_bb instead.
2893 (verify_wide_reg): Likewise. Take a basic_block, not rtl endpoints.
2894 (verify_wide_reg_1): Return 2 on mode test failure.
2895
8469e54e
NB
28962002-01-29 Neil Booth <neil@daikokuya.demon.co.uk>
2897
2898 PR c/3325, c/3326, c/2511, c/3347
2899 * c-decl.c (enum_decl_context): Remove BITFIELD.
2900 (grokdeclarator): Take bitfield width as an input.
2901 Ensure bitfields are given the correct type. Perform
2902 bitfield width validation with build_bitfield_integer_type
2903 rather than waiting for finish_struct.
2904 (grok_typename, grok_typename_in_parm_context, start_decl,
2905 push_parmdecl, grokfield, start_function): Update calls to
2906 grokdeclarator.
2907 (build_bitfield_integer_type): New function.
2908 (finish_struct): Move bitfield validation to grokdeclarator
bebc7e8b 2909 and build_bitfield_integer_type.
8469e54e
NB
2910 * tree.c (build_nonstandard_integer_type): New function.
2911 * tree.h (build_nonstandard_integer_type): New prototype.
2912objc:
2913 * objc-act.c (objc_copy_list): Remove DECL_INITIAL kludge.
2914
ffdeea47
JJ
29152002-01-29 Jakub Jelinek <jakub@redhat.com>
2916
2917 PR other/1502:
2918 * cppinit.c (cpp_handle_option): Add ignore argument, if it is zero,
2919 don't ignore unrecognized -W* options.
2920 (cpp_handle_options): Pass 1 as last argument to cpp_handle_option.
2921 * cpplib.h (cpp_handle_option): Adjust prototype.
2922 * c-decl.c (c_decode_options): Pass 0 as last argument to
2923 cpp_handle_option.
2924
2925 PR c/2896:
2926 * gcc.c (cpp_unique_options): Split from cpp_options.
2927 (cpp_options): Source cpp_unique_options.
2928 (default_compilers): Use cpp_unique_options instead of cpp_options
2929 when used together with cc1_options.
2930 (static_specs): Add cpp_unique_options.
2931 * objc/lang-specs.h: Use cpp_unique_options instead of cpp_options
2932 when used together with cc1_options.
2933
1a275226
KH
29342002-01-29 Kazu Hirata <kazu@hxi.com>
2935
2936 * config/h8300/h8300-protos.h: Update the prototype of
2937 output_a_shift.
2938 * config/h8300/h8300.c (output_a_shift): Remove an unused
2939 argument 'insn'. Remove redundant code.
2940 * config/h8300/h8300.md: Adust to the new prototype of
2941 output_a_shift.
2942
a11d9dfc
KH
29432002-01-29 Kazu Hirata <kazu@hxi.com>
2944
2945 * config/h8300/h8300-protos.h: Update the prototypes of
2946 emit_a_rotate and expand_a_rotate.
2947 * config/h8300/h8300.c (emit_a_rotate): Change the type of the
2948 first argument to 'enum rtx_code'.
2949 (expand_a_rotate): Likewise.
2950
871f73e3
KH
29512002-01-28 Kazu Hirata <kazu@hxi.com>
2952
2953 * config/h8300/h8300-protos.h: Update the prototype of
2954 output_simode_bld.
2955 * config/h8300/h8300.c (output_simode_bld): Remove an argumen
2956 'log2'.
2957 * config/h8300/h8300.md: Adjust to the new prototype.
2958
5fc4b751
KH
29592002-01-28 Kazu Hirata <kazu@hxi.com>
2960
2961 * conifg/h8300/h8300.c (h8300_adjust_insn_length): Remove
2962 redundant code.
2963
2d67bd7b
JDA
29642002-01-28 John David Anglin <dave@hiauly1.hia.nrc.ca>
2965
2966 * emit-rtl.c (gen_rtx_REG): Check that the PIC_OFFSET_TABLE_REGNUM
2967 is a fixed register before returning pic_offset_table_rtx.
2968 * loop.c (scan_loop): Don't hoist insns that set pic_offset_table_rtx
2969 when PIC_OFFSET_TABLE_REG_CALL_CLOBBERED is defined.
2970
5a852b3e
JM
29712002-01-28 Jason Merrill <jason@redhat.com>
2972
6bb28965 2973 * dwarf2.h: Sync with src version.
5a852b3e 2974
3bca17dd
PK
29752002-01-28 Paul Koning <pkoning@equallogic.com>
2976
2977 * builtin-types.def (BT_FN_VOID_CONST_PTR_VAR): Replace
2978 BT_FN_VOID_PTR_VAR.
2979 * builtins.def (BUILT_IN_PREFETCH): Change first argument to be const.
2980 * doc/extend.texi (__builtin_prefetch): Update documentation:
2981 first argument is now const void ptr.
2982
7dc3f8c0
KH
29832002-01-28 Kazu Hirata <kazu@hxi.com>
2984
2985 * config/h8300/h8300-protos.h: Remove an unused prototype.
2986
e83cb5f0
RZ
29872002-01-28 Roman Zippel <zippel@linux-m68k.org>
2988
2989 * toplev.c (lang_independent_init): Round up identifier size.
2990
5721cd84
RE
29912002-01-28 Richard Earnshaw <rearnsha@arm.com>
2992
2993 * config.gcc: Revert previous change.
2994
d534119e
AP
29952002-01-28 Andris Pavenis <pavenis@latnet.lv>
2996
2997 * config/i386/djgpp.h: Use STRIP_NAME_ENCODING in macro UNIQUE_SECTION
2998
5a721dab
RE
29992002-01-28 Richard Earnshaw <rearnsha@arm.com>
3000
3001 * config.gcc (*-*-netbsdelf*): Set up generic parameters.
3002 (*-*-netbsd*): Always use collect2. Remove collect2 settings from
3003 other non-elf netbsd config frags.
3004 * config/netbsd-aout.h (STARTFILE_SPEC): Don't pull in c++rt0 since
3005 collect2 will does that.
3006 * config/netbsd.h (LIBGCC_SPEC): Add white space before -lgcc, so that
3007 shared-lib frobbing will work.
3008
da1775d6
KH
30092002-01-28 Kazu Hirata <kazu@hxi.com>
3010
3011 * config/h8300/h8300.h: Fix formatting.
3012 * config/h8300/h8300.md: Likewise.
3013
8f2e963b
LR
30142002-01-28 Loren J. Rittle <ljrittle@acm.org>
3015
3016 * fixinc/inclhack.def (strict_ansi_not): Add a bypass based on
3017 the old, removed AAA_standards fix.
3018 * fixinc/fixincl.x: Rebuilt.
3019
fdae5767
HPN
30202002-01-28 Hans-Peter Nilsson <hp@axis.com>
3021
3022 * config/cris/cris.h (CRT_CALL_STATIC_FUNCTION): Change to emit
3023 atexit call in crtbegin, hooked in after call to frame_dummy;
3024 register EH before registering __fini__start.
3025
2a2ecb63
AH
30262002-01-28 Aldy Hernandez <aldyh@redhat.com>
3027
3028 * config/rs6000/altivec.h: Remove spurious semicolons.
3029
8ed43adf
KH
30302002-01-27 Kazu Hirata <kazu@hxi.com>
3031
3032 * config/h8300/h8300.md: Replace dead bit extraction patterns
3033 with ones that work.
3034
917afb0c
RK
3035Sun Jan 27 13:23:40 2002 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
3036
3037 * emit-rtl.c (get_mem_attrs): Don't default alignment for non-BLKmode
3038 if not STRICT_ALIGNMENT.
3039 * rtl.h (MEM_ALIGN): Likewise.
3040
f70a54cb
CR
30412002-01-27 Craig Rodrigues <rodrigc@gcc.gnu.org>
3042
3043 * doc/invoke.texi (-fdump-translation-unit): Revert this
3044 patch: 2001-10-21 Craig Rodrigues <rodrigc@gcc.gnu.org>
3045
d8fd4914
KH
30462002-01-27 Kazu Hirata <kazu@hxi.com>
3047
3048 * config/h8300/h8300.md (define_constants): New.
3049 (anonymous patterns) Use defined constants appropriately.
3050
15e0e275
KH
30512002-01-27 Kazu Hirata <kazu@hxi.com>
3052
3053 * config/h8300/h8300.c (function_arg): Remove redundant code.
3054
37a0f8a5
RH
30552002-01-26 Richard Henderson <rth@redhat.com>
3056
3057 * sched-deps.c (reg_pending_uses_head): New.
3058 (reg_pending_barrier): Rename from reg_pending_sets_all.
3059 (find_insn_list): Don't mark inline.
3060 (find_insn_mem_list): Remove.
3061 (add_dependence_list, add_dependence_list_and_free): New.
3062 (flush_pending_lists): Replace only_write param with separate
3063 for_read and for_write parameters. Update all callers. Use
3064 add_dependence_list_and_free.
3065 (sched_analyze_1): Do not add reg dependencies here; just set
3066 the pending bits. Use add_dependence_list.
3067 (sched_analyze_2): Likewise.
3068 (sched_analyze_insn): Replace schedule_barrier_found with
3069 reg_pending_barrier. Add all dependencies for pending reg
3070 uses, sets, and clobbers.
3071 (sched_analyze): Don't add reg dependencies for calls, just
3072 set pending bits. Use regs_invalidated_by_call. Treat
3073 sched_before_next_call as a normal list, not a fake insn.
3074 (init_deps): No funny init for sched_before_next_call.
3075 (free_deps): Free pending mems lists. Don't zero reg_last.
3076 (init_deps_global): Init reg_pending_uses.
3077 (finish_deps_global): Free it.
3078 * sched-int.h (deps): Make in_post_call_group_p boolean. Update docs.
3079 (find_insn_mem_list): Remove.
3080 * sched-rgn.c (concat_INSN_LIST, concat_insn_mem_list): New.
3081 (propagate_deps): Use them. Zero temp mem lists.
3082
cea3bd3e
RH
30832002-01-26 Richard Henderson <rth@redhat.com>
3084
3085 * Makefile.in (CRTSTUFF_CFLAGS): New.
3086 (crtbegin.o, crtend.o, crtbeginS.o, crtendS.o, crtbeginT.o): Use it.
3087 * config.gcc (alpha-linux, alpha-freebsd, alpha-netbsd): Use plain
3088 crtstuff.c instead of alpha assembly version.
3089 * crtstuff.c (CRT_CALL_STATIC_FUNCTION): Rewrite to assume the
3090 entire dummy function sequence. Use FORCE_CODE_SECTION_ALIGN
3091 not FORCE_{INIT,FINI}_SECTION_ALIGN.
3092 (__do_global_dtors_aux): Mark used.
3093 (frame_dummy, __do_global_ctors_aux): Mark used.
3094 (fini_dummy, init_dummy): Remove.
3095
3096 * config/alpha/crtbegin.asm: Remove file.
3097 * config/alpha/crtend.asm: Remove file.
3098 * config/alpha/t-crtbe: Remove file.
3099 * config/alpha/elf.h (CRT_CALL_STATIC_FUNCTION): New.
3100 (LINK_EH_SPEC): New.
3101
3102 * config/cris/cris.h (CRT_CALL_STATIC_FUNCTION): Rewrite old
3103 FORCE_INIT_SECTION_ALIGN hack. Register __fini_start before
3104 calling constructors.
3105 * config/cris/linux.h (CRT_CALL_STATIC_FUNCTION): Undef.
3106
3107 * config/i386/i386.h (CRT_CALL_STATIC_FUNCTION): New.
3108 * config/i386/linux.h (CRT_CALL_STATIC_FUNCTION): Replace old
3109 CRT_END_INIT_DUMMY hack.
3110 * config/i386/sol2.h (FORCE_CODE_SECTION_ALIGN): Replace
3111 FORCE_{INIT,FINI}_SECTION_ALIGN.
3112
3113 * config/mcore/mcore-elf.h (FORCE_CODE_SECTION_ALIGN): Replace
3114 FORCE_{INIT,FINI}_SECTION_ALIGN.
3115
3116 * config/s390/s390.h (CRT_CALL_STATIC_FUNCTION): Update for new
3117 invocation sequence.
3118 * config/sh/sh.h (CRT_CALL_STATIC_FUNCTION): Likewise.
3119
3120 * doc/tm.texi (CRT_CALL_STATIC_FUNCTION): Update.
3121 (FORCE_CODE_SECTION_ALIGN): New.
3122
60ffa0e5
RH
31232002-01-26 Richard Henderson <rth@redhat.com>
3124
3125 * config/cris/cris.c (cris_print_operand): Handle 64-bit CONST_INT.
3126
61334ebe
RH
31272002-01-26 Richard Henderson <rth@redhat.com>
3128
3129 * config/alpha/alpha.c (alpha_sa_mask): Mark RA for unicos here too.
3130 (alpha_sa_size): Use alpha_sa_mask to compute size of saved regs.
3131
1d788fb6
KH
31322002-01-26 Kazu Hirata <kazu@hxi.com>
3133
3134 * config/h8300/h8300.md: Remove bit extraction patterns that
3135 cannot be triggered.
3136 Restrict each bit extraction pattern to a variant on which the
3137 pattern is tested.
3138
87611f88
JM
31392002-01-26 Joseph S. Myers <jsm28@cam.ac.uk>
3140
3141 * doc/include/texinfo.tex: Update to version 2002-01-04.07.
3142
cd74ec59
KH
31432002-01-26 Kazu Hirata <kazu@hxi.com>
3144
3145 * config/h8300/h8300.md: Remove bit test patterns that cannot
3146 be triggered.
3147 Restrict each bit test pattern to a variant on which the
3148 pattern is tested.
3149
93051e0f
KG
31502002-01-26 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
3151
3152 * builtins.c (expand_builtin_strncat): Remove redundant check for
3153 INTEGER_CST.
3154
216c995f
DB
31552002-01-25 David O'Brien <obrien@FreeBSD.org>
3156
3157 * config/i386/x86-64.h (DEFAULT_PCC_STRUCT_RETURN): Do not overide
3158 default setting.
3159 * config/i386/freebsd64.h (DEFAULT_PCC_STRUCT_RETURN): Do not override
3160 existing setting.
3161
33c7f925
GK
31622002-01-25 Geoffrey Keating <geoffk@redhat.com>
3163
3164 * dbxout.c (dbxout_init): Use assemble_name rather than just
3165 stripping off the first character.
3166 (dbxout_source_file): Likewise.
3167
6cd444b4
DD
31682002-01-25 DJ Delorie <dj@redhat.com>
3169
3170 * config/sparc/sparc.c (sparc_emit_set_symbolic_const64): Compare
3171 using rtx_equal_p, not by comparing pointers.
3172
751551d5
SE
31732002-01-25 Steve Ellcey <sje@cup.hp.com>
3174
3175 * emit-rtl.c (gen_rtx_REG): Always return the same rtx
3176 for PIC_OFFSET_TABLE_REGNUM.
3177 (init_emit_once): Use gen_raw_REG to initialize pic_offset_table_rtx.
3178
e564e618
DB
31792002-01-25 David O'Brien <obrien@FreeBSD.org>
3180
3181 * config.gcc (x86_64-*-freebsd*): New target.
3182 (x86_64-*-netbsd*,x86_64-*-linux*): Use ${tm_file} rather than its
3183 value.
3184 (i[34567]86-*-freebsd*): Don't include svr4.h.
3185 * config/i386/freebsd64.h: New file.
3186
ff3aaf17
DR
31872002-01-25 Douglas B Rupp <rupp@gnat.com>
3188
4857d29d
DR
3189 * config/alpha/x-vms (version): Make static.
3190
3191 * config/alpha/vms.h (MD_FALLBACK_FRAME_STATE_FOR): Fix error
3192 in previous checkin.
3193
ff3aaf17
DR
3194 * Makefile.in (install-headers-cp): New target.
3195 * config.gcc (alpha-dec-*vms*): Install headers with
3196 install-headers-cp
3197
48d79c43
JH
3198Fri Jan 25 22:42:49 CET 2002 Jan Hubicka <jh@suse.cz>
3199
3200 * unroll.c (unroll_loop): Lower final_value to nonmemory operand;
3201 avoid it's copies.
3202
995b5904
RK
3203Fri Jan 25 08:26:19 2002 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
3204
3205 * builtins.c (expand_builtin_strncpy): Use integer_zerop instead
3206 of compare_tree_int.
3207 (expand_builtin_strncat): Likewise.
3208 * c-decl.c (finish_struct): Use tree_low_cst.
3209 * tree.h (compare_tree_int): Arg is unsigned HOST_WIDE_INT.
3210 * tree.c (compare_tree_int): Likewise.
3211
75eefe3f
UW
32122002-01-25 Ulrich Weigand <uweigand@de.ibm.com>
3213
3214 * reload1.c (eliminate_regs_in_insn): Recognize frame pointer
3215 adjustments even if they are implemented by more than two insns.
3216
5a133afd
JH
3217Fri Jan 25 20:43:56 CET 2002 Jan Hubicka <jh@suse.cz>
3218
995b5904 3219 * df.c (df_ref_create, df_ref_record_1, df_ref_record): Kill BB arg.
5a133afd
JH
3220 * df.h (struct ref): Kill B.
3221 (DF_REF_BB, DF_REF_BBNO): Use BLOCK_FOR_INSN.
3222
3223 * basic-block.h (PROP_EQUAL_NOTES): New flag.
3224 * flow.c (propagate_one_insn): Use it.
3225 (mark_used_regs): Handle NIL.
3226
ead39bdf 32272002-01-25 Geoffrey Keating <geoffk@redhat.com>
3d8dd3c0
GK
3228
3229 * config/stormy16/stormy16.md (tablejump_pcrel): Use a MEM
3230 to help folding.
3231
01a2ccd0
DE
32322002-01-25 David Edelsohn <edelsohn@gnu.org>
3233
3234 * rs6000.md (prefetch): Make address V4SI mode so that the address
3235 is restricted to legitimate form for instruction.
3236
fd29f6ea
BW
32372002-01-25 Bob Wilson <bob.wilson@acm.org>
3238
3239 * doc/install.texi (xtensa-*-elf): New target.
3240 (xtensa-*-linux*): New target.
3241 * doc/contrib.texi: Add myself.
3242
55492b32
NC
32432002-01-25 Nick Clifton <nickc@cambridge.redhat.com>
3244
3245 * config/arm/arm.c (arm_hard_regno_mode_ok): Allow any general
3246 purpose register to hold an SImode (or smaller) value.
3247
72c7c913
JJ
32482002-01-25 Jakub Jelinek <jakub@redhat.com>
3249
3250 * unwind-dw2-fde-glibc.c: If inhibit_libc, use __register_frame*
3251 registry only.
3252 * crtstuff.c: Likewise.
3253
c4df4ceb
KH
32542002-01-25 Kazu Hirata <kazu@hxi.com>
3255
3256 * config/h8300/h8300.md (negation patterns): Tighten
3257 predicates to register_operand.
3258
70e531f5
AH
32592002-01-24 Aldy Hernandez <aldyh@redhat.com>
3260
3bca17dd
PK
3261 * loop.c (emit_prefetch_instructions): Use the prefetch insn's
3262 mode, not Pmode.
70e531f5 3263
3bca17dd 3264 * builtins.c (expand_builtin_prefetch): Same.
70e531f5 3265
a4f76ef9
AO
32662002-01-24 Alexandre Oliva <aoliva@redhat.com>
3267
3268 * config/sh/sh.md (sym_label2reg): Make sure all CONSTs have
3269 modes.
3270
9bf25b09
KH
32712002-01-24 Kazu Hirata <kazu@hxi.com>
3272
3273 * config/h8300/h8300.c (print_operand): Remove support for
3274 operand character 'A'.
3275 * config/h8300/h8300.md (three anonymous patterns): Replace
3276 operand character 'A' with either 'T' or 'S'.
3277
974af6a5
KH
32782002-01-24 Kazu Hirata <kazu@hxi.com>
3279
3280 * config/h8300/h8300.c (print_operand): Remove support for
3281 operand character 'U'.
3282
7a5bb7b8
AP
32832002-01-24 Andris Pavenis <pavenis@latnet.lv>
3284
3bca17dd 3285 * config/i386/t-djgpp: Use NATIVE_SYSTEM_HEADER_DIR.
7a5bb7b8 3286
92a4639e
NC
32872002-01-24 Nick Clifton <nickc@cambridge.redhat.com>
3288
3289 * config/arm/arm.c (arm_hard_regno_mode_ok): Allow SImode
3290 values to be assigned to the stack pointer.
3291
467cb2da
HP
32922002-01-14 Hartmut Penner <hpenner@de.ibm.com>
3293
bebc7e8b 3294 * emit_rtl.c (gen_lowpart_common): Conversion from const_int
467cb2da
HP
3295 to const_double needs to be done right for big-endian systems.
3296
3b6cb920
JM
32972002-01-24 Jason Merrill <jason@redhat.com>
3298
b08dd119 3299 PR c++/2432
3b6cb920
JM
3300 * config/sparc/sparc.md (call-jump peepholes): Pass the right insn
3301 to can_throw_internal.
3302
f3077311
RH
33032002-01-23 Richard Henderson <rth@redhat.com>
3304
3305 * fold-const.c (fold): Change UINT_MAX test to check vs precision
3306 rather than TYPE_MAX_VALUE. Fix indentation and a bogus negation.
3307
e1d71275
AO
33082002-01-24 Alexandre Oliva <aoliva@redhat.com>
3309
3310 * config/sh/sh.md (symGOT_load, sym2GOT, sym2GOTOFF): New expands.
3311 (symGOT2reg): Use them, then set as GOT value as unchanging.
3312 (symGOTOFF2reg): Set REG_EQUAL note. Use a different pseudo
3313 as a temporary, if possible.
3314 (symPLT_label2reg): Enclose (pc) in UNSPEC_PIC. Emit
3315 sym@PLT-(.LPCS#+2-.) instead of sym@PLT+.-(.LPCS#+2).
3316
dc271dbe
KH
33172002-01-23 Kazu Hirata <kazu@hxi.com>
3318
3319 * config/h8300/h8300.md: Fix xorqi and xorqi so that they will
3320 accept to accept 0x80 as operands[2].
3321
1a9017f9
AO
33222002-01-24 Alexandre Oliva <aoliva@redhat.com>
3323
3324 * config/sparc/sparc.md (fix_trunctfdi2): Correct typo in mode.
3325
6932f033
RH
33262002-01-23 Richard Henderson <rth@redhat.com>
3327
3328 * config/alpha/alpha.md (call_value_osf_1_er peepholes): Fix typo.
3329
709619d9
AH
33302002-01-23 Aldy Hernandez <aldyh@redhat.com>
3331
3bca17dd
PK
3332 * c-parse.in (parmlist_or_identifiers): Add maybe_attribute.
3333 (parmlist_or_identifiers_1): Verify that only a parmlist follows
3334 an attribute.
709619d9 3335
3d709fd3
RH
33362002-01-23 Richard Henderson <rth@redhat.com>
3337
3338 * expr.c (move_by_pieces_1): Extend size before negation.
3339
88a446c0
RH
3340 * config/m68k/t-m68kbare (MULTILIB_OPTIONS): Add 68040 and 68060.
3341 (MULTILIB_MATCHES): Remove 68040 and 68060 aliases.
3342 (MULTILIB_EXCEPTIONS): Ignore 68881 and soft-float for 68040 and 68060.
3343 * config/m68k/t-m68kelf: Likewise.
3344
03984308
BW
33452002-01-23 Bob Wilson <bob.wilson@acm.org>
3346
3347 * config/xtensa/elf.h: New file.
3348 * config/xtensa/lib1funcs.asm: New file.
3349 * config/xtensa/lib2funcs.S: New file.
3350 * config/xtensa/linux.h: New file.
3351 * config/xtensa/t-xtensa: New file.
3352 * config/xtensa/xtensa-config.h: New file.
3353 * config/xtensa/xtensa-protos.h: New file.
3354 * config/xtensa/xtensa.c: New file.
3355 * config/xtensa/xtensa.h: New file.
3356 * config/xtensa/xtensa.md: New file.
3357 * config.gcc (xtensa-*-elf*): New target.
3358 (xtensa-*-linux*): New target.
3359 * cse.c (canon_hash): Compare rtx pointers instead of register
3360 numbers. This is required for the Xtensa port.
3361 * integrate.c (copy_insn_list): Handle case where the static
3362 chain is in memory and the memory address has to be copied to
3363 a register.
3364 * doc/invoke.texi (Option Summary): Add Xtensa options.
3365 (Xtensa Options): New node.
3366 * doc/md.texi (Machine Constraints): Add Xtensa machine constraints.
3367
c3d5c3fa
ZW
33682002-01-23 Zack Weinberg <zack@codesourcery.com>
3369
a63bea75
ZW
3370 * diagnostic.c (internal_error): Do ICE suppression only
3371 when ENABLE_CHECKING is not defined.
3372
c3d5c3fa
ZW
3373 * c-typeck.c (require_complete_type): Return error_mark_node
3374 if type is error_mark_node.
3375
1398974c
JJ
33762002-01-23 Janis Johnson <janis187@us.ibm.com>
3377
3378 * toplev.c (process_options): Disable -fprefetch-loop-arrays with
3379 -Os and issue a warning.
3380
807633e5
ZW
33812002-01-23 Zack Weinberg <zack@codesourcery.com>
3382
3383 * doc/fragments.texi, doc/hostconfig.texi: Update to reflect
3384 current (lack of) need for host configuration by hand.
3385
3386 * doc/gccint.texi, doc/rtl.texi, doc/tm.texi: Adjust cross
3387 references. Documentation of some target macros moved from
3388 hostconfig.texi to tm.texi.
3389
cf8002d0
WC
33902002-01-23 Will Cohen <wcohen@redhat.com>
3391
3392 * config/arm/arm.h (THUMB_FUNCTION_PROFILER): Define if not currently
3393 defined.
3394
d1e76310
KH
33952002-01-23 Kazu Hirata <kazu@hxi.com>
3396
3397 * config/h8300/h8300.md (*andorhi3): Accept 0x8000 as an
3398 operand[3].
3399
b2115575
JM
34002002-01-23 Jason Merrill <jason@redhat.com>
3401
f893c16e
JM
3402 * tree.c (build1): Don't set TREE_READONLY on INDIRECT_REF.
3403
b2115575
JM
3404 * function.c (assign_parms): Don't put args of inline functions
3405 into registers when not optimizing.
3406
6bacc7b0
NC
34072002-01-23 Nick Clifton <nickc@cambridge.redhat.com>
3408
3409 * config/arm/arm.md (UNSPEC_PROLOGUE_USE): New unspec constant.
3410 (prologue_use): New pattern.
3411 * config/arm/arm.c (expand_prologue): Use gen_prologue_use in
3412 preference to gen_rtx_USE.
3413 (thumb_expand_prologue): Use gen_prologue_use in preference to
3414 gen_rtx_USE.
3415 (thumb_expand_epilogue): Use gen_prologue_use in preference to
3416 gen_rtx_USE.
3417
a415f7bc
HPN
34182002-01-23 Hans-Peter Nilsson <hp@bitrange.com>
3419
3420 * loop.c [!HAVE_prefetch] (CODE_FOR_prefetch): Define to 0.
3421
5372b3fb
NB
34222002-01-23 Neil Booth <neil@daikokuya.demon.co.uk>
3423
3424 PR c/3504
3425 * doc/extend.texi: Correct documentation of __alignof__.
3426
bd571ffc
ZW
34272002-01-22 Zack Weinberg <zack@codesourcery.com>
3428
3429 * params.h: Rename arguments of DEFPARAM so that it will be
3430 recognized as a translation keyword.
3431
333c8841
AH
34322002-01-22 Aldy Hernandez <aldyh@redhat.com>
3433
bd571ffc
ZW
3434 * extend.texi: Document altivec functions.
3435 Fix N-bit adjectives in X86 builtin documentation.
333c8841 3436
38979c65
AO
34372002-01-22 Alexandre Oliva <aoliva@redhat.com>
3438
3439 * reload.c (reg_overlap_mentioned_for_reload_p): Handle PLUS and
3440 auto_inc_dec values.
3441
7458a9f0
RE
34422002-01-22 Richard Earnshaw <rearnsha@arm.com>
3443
3444 * config/netbsd-aout.h (SWITCH_TAKES_ARG): Remove bogus white space
3445 after backslash.
3446 (ASM_DECLARE_OBJECT_NAME): Add missing backslash before final line.
3447
129bd0c4
AO
34482002-01-22 Alexandre Oliva <aoliva@redhat.com>
3449
3450 * config/i386/freebsd-aout.h (ASM_QUAD): Undefine.
3451
8b9b74a9
RH
34522002-01-22 Richard Henderson <rth@redhat.com>
3453
3454 * config/alpha/alpha.c (split_small_symbolic_mem_operand): Use
3455 copy_insn not copy_rtx.
3456
d0c9db30
AM
34572002-01-23 Alan Modra <amodra@bigpond.net.au>
3458
3459 * combine.c (simplify_and_const_int): Don't trunc_int_for_mode
3460 "nonzero" as that might add "1" bits. Ensure "constop" is
3461 properly sign extened.
3462 (force_to_mode): Tweak for sign extended constop.
3463
1e7e480e
RH
34642002-01-22 Richard Henderson <rth@redhat.com>
3465
3466 * config/alpha/alpha.c (some_small_symbolic_mem_operand) Use
3467 for_each_rtx instead of assuming we're already looking at the MEM.
3468 (split_small_symbolic_mem_operand): Likewise.
3469 * config/alpha/alpha.h (PREDICATE_CODES): Update.
3470 * config/alpha/alpha.md (small symbolic memory splitters): Update.
3471
34722002-01-22 Richard Henderson <rth@redhat.com>
2e271932
RH
3473
3474 * config/alpha/alpha.md (divmodsi_internal_er): Generate lituse
3475 sequence number for the literal.
3476 (divmoddi_internal_er): Likewise.
3477
b7f2fb96
CR
34782002-01-22 Craig Rodrigues <rodrigc@gcc.gnu.org>
3479
3480 PR java/4972
3481 * aclocal.m4 (AM_ICONV): Put linking flags for libiconv
3482 in LIBICONV variable.
3483 * configure: Regenerated.
3484
f66a0046
KW
34852002-01-22 Krister Walfridsson <cato@df.lth.se>
3486
3487 * dependence.c (build_def_use): Remove array_idx.
3488
e3b0efd1
KW
3489 * dwarfout.c (last_filename): Remove.
3490 (output_compile_unit_die): Remove last_filename.
3491
d8086cbb
RS
34922002-01-22 Roger Sayle <roger@eyesopen.com>
3493 Richard Henderson <rth@redhat.com>
3494
3495 PR opt/3640
3496 * fold-const.c (fold): Optimize unsigned comparisons against
3497 UINT_MAX (and similar unsigned constants).
3498
e8d52ba0
JJ
34992002-01-22 Janis Johnson <janis187@us.ibm.com>
3500
d8086cbb 3501 * Makefile.in (loop.o): Depend on OPTABS_H.
1398974c 3502 * loop.c (emit_prefetch_instructions): Check the prefetch operand
d8086cbb 3503 against the predicate.
11303d15 3504
e8d52ba0
JJ
3505 PR target/5379
3506 * config/i386/i386.md (prefetch_sse): Specify "p" as a constraint
3507 for the address operand.
3508
cc7b420e
RH
35092002-01-22 Richard Henderson <rth@redhat.com>
3510
3511 * config/alpha/freebsd.h (FUNCTION_PROFILER): Remove.
3512
816e265a
CR
35132002-01-22 Craig Rodrigues <rodrigc@gcc.gnu.org>
3514
3515 PR other/5450
cc7b420e
RH
3516 * config/i386/sysv4.h (CPP_SPEC): Define, and add CPU
3517 preprocessor flags.
816e265a 3518
7c884404
JT
35192002-01-22 Jason Thorpe <thorpej@wasabisystems.com>
3520
3521 * config.gcc (x86_64-*-netbsd*): New target.
3522 * config/i386/netbsd64.h: New file.
3523
2b672c08
AH
35242002-01-22 Aldy Hernandez <aldyh@redhat.com>
3525
d8086cbb 3526 * regrename.c (kill_value): Fix typo.
2b672c08
AH
3527
35282002-01-22 Aldy Hernandez <aldyh@redhat.com>
3529
d8086cbb 3530 * doc/tm.texi: Remove STARTING_FRAME_PHASE.
2b672c08 3531
d8086cbb 3532 * config/rs6000/rs6000.h: Same.
2b672c08 3533
d8086cbb
RS
3534 * function.c (instantiate_virtual_regs): Remove
3535 STARTING_FRAME_PHASE.
3536 (assign_stack_local_1): Same.
3537 Calculate frame phase.
2b672c08 3538
4b02997f
NC
35392002-01-22 Nick Clifton <nickc@redhat.com>
3540
3541 * config/arm/arm.h (CONDITIONAL_REGISTER_USAGE): Move 'regno'
3542 variable declaration to outer scope in order to simplify
3543 future extensions.
3544 (HARD_REGNO_MODE_OK): Replace macro body with a with a call to
3545 arm_hard_regno_mode_ok.
3546 * config/arm/arm-protos.h: Add a prototype for
3547 arm_hard_regno_mode_ok.
3548 * config/arm/arm.c (soft_df_operand): Remove now redundant
3549 check for DImode values using IP_REGNUM.
3550 (nonimmediate_soft_df_operand): Remove now redundant check for
3551 DImode values using IP_REGNUM.
3552 (arm_hard_regno_mode_ok): New function. New check: make sure
3553 that DImode values are not stored in IP_REGNUM.
c14a3a45
NC
3554
3555 * config/arm/arm.c (arm_expand_prologue): Replace REG_MAYBE_DEAD
3556 note with a USE.
3557 (thumb_expand_prologue): Replace REG_MAYBE_DEAD note with a USE.
3558
8a827ab2
JM
35592002-01-22 Jason Merrill <jason@redhat.com>
3560
3561 * c-semantics.c (genrtl_compound_stmt): Only check nesting
3562 consistency if this COMPOUND_STMT is scoped.
3563
cf403648
KH
35642002-01-22 Kazu Hirata <kazu@hxi.com>
3565
3566 * predict.c: Fix formatting.
3567 * print-tree.c: Likewise.
3568 * protoize.c: Likewise.
3569 * real.h: Likewise.
3570 * rtl.h: Likewise.
3571 * sbitmap.h: Likewise.
3572 * scan.c: Likewise.
3573 * sched-deps.c: Likewise.
3574 * sched-vis.c: Likewise.
3575 * sdbout.c: Likewise.
3576 * sibcall.c: Likewise.
3577 * ssa.c: Likewise.
3578 * ssa-ccp.c: Likewise.
3579 * ssa-dce.c: Likewise.
3580 * stmt.c: Likewise.
3581 * stor-layout.c: Likewise.
3582 * system.h: Likewise.
3583
aea9695c
RK
3584Tue Jan 22 06:26:33 2002 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
3585
a8765ae7
RK
3586 * tree.c (int_fits_type_p): If bounds of a subtype are variable, see
3587 if fits in bounds of base type.
3588
aea9695c
RK
3589 * dwarf2out.c (equate_decl_number_to_die): Add "int" to decls.
3590 (loc_descriptor_from_tree, case CALL_EXPR, case ADDR_EXPR): New.
3591 (add_bound_info, default): If can't find a context, make a
3592 SAVE_EXPR.
3593 (dwarf2out_finish): Check for SAVE_EXPR in node->created_for.
3594
58bf601b
HPN
35952002-01-22 Hans-Peter Nilsson <hp@axis.com>
3596
3597 * c-typeck.c (parser_build_binary_op): If result from
3598 build_binary_op is ERROR_MARK just return error_mark_node without
3599 further processing.
3600
f982f805
JT
36012002-01-21 Jason Thorpe <thorpej@wasabisystems.com>
3602
3603 * config/netbsd.h (TARGET_HAS_F_SETLKW): define.
3604 Split a.out-specific bits into...
3605 * config/netbsd-aout.h: ...this.
3606 * config/netbsd-elf.h: New file.
3607 * config/alpha/netbsd-elf.h: Remove.
3608 * config/alpha/netbsd.h: Rewrite for a NetBSD/alpha ELF target.
3609 * config/i386/netbsd-elf.h (LIB_SPEC): Remove.
bd571ffc 3610 (STARTFILE_SPEC): Remove redundant definition.
f982f805
JT
3611 (ENDFILE_SPEC): Likewise.
3612 (LINK_SPEC): Likewise.
3613 (CPP_SPEC): Likewise.
3614 (ASM_SPEC): Likewise.
3615 (LIB_SPEC): Likewise.
3616 (SWITCH_TAKES_ARG): Likewise.
3617 (TARGET_MEM_FUNCTIONS): Likewise.
3618 (CPP_PREDEFINES): Redefine.
3619 (ASM_FINAL_SPEC): Remove redefinition.
3620 (ASM_COMMENT_START): Redefine.
3621 (FUNCTION_PROFILER): Define.
3622 (TARGET_VERSION): Redefine.
3623 Comment and formatting cleanup.
3624 * config/i386/netbsd.h: Include <netbsd-aout.h>.
3625 * config/m68k/netbsd.h: Include <netbsd-aout.h>.
3626 * config/mips/netbsd.h: Rewrite for NetBSD/mips ELF target,
3627 big- or little-endian.
3628 * config/ns32k/netbsd.h: Include <netbsd-aout.h>.
3629 * config.gcc (*-*-netbsd*): Add definitions common to all
3630 NetBSD configs.
3631 (alpha*-*-netbsd*): Remove redundant xm_defines, gas, and
3632 gnu_ld definitions. Add netbsd-elf.h to and remove
3633 alpha/netbsd-elf.h from tm_file. Remove alpha/t-crtfm from
3634 tmake_file, and don't lose previous tmake_file contents.
3635 (arm*-*-netbsd*): Add netbsd-aout.h to tm_file.
3636 (i[34567]86-*-netbsdelf*): Remove redundant xm_defines, gas, and
3637 gnu_ld definitions. Add netbsd-elf.h to tm_file.
3638 (mips-dec-netbsd*): Remove as alias for mipsel-*-netbsd*.
3639 (mipsel-*-netbsd*): Rename this to...
3640 (mips*-*-netbsd*): ...this. Add elfos.h to tm_file. Add
3641 mips/little.h to tm_file for mips*el-*.
3642 (powerpc-*-netbsd*): Remove redundant xm_defines definition.
3643 (sparc-*-netbsd*): Add netbsd-aout.h to tm_file.
3644 (vax-*-netbsd*): Add netbsd-aout.h to tm_file.
3645
2e396476
JDA
36462002-01-21 John David Anglin <dave@hiauly1.hia.nrc.ca>
3647
3648 * pa-protos.h (reg_before_reload_operand): New function prototype.
3649 * pa.c (reg_before_reload_operand): New function implementation.
3650 * pa.md (decrement_and_branch_until_zero, movb): Use it. Change "!*m"
3651 contraints to "*m".
3652
3b5708e7
FS
36532002-01-21 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
3654
3655 * combine.c (simplify_and_const_int): Properly sign-extend CONSTOP.
3656
85e79f96
JDA
36572002-01-21 John David Anglin <dave@hiauly1.hia.nrc.ca>
3658
3659 * pa64-hpux.h (MD_EXEC_PREFIX): Set to "/usr/ccs/bin".
3660 (MD_STARTFILE_PREFIX): Set to "/usr/ccs/lib/pa20_64/".
3661 (MD_STARTFILE_PREFIX_1): Set to "/opt/langtools/lib/pa20_64/".
3662 (EH_FRAME_IN_DATA_SECTION): Define and update comment on init sections.
3663 (ENDFILE_SPEC): Undefine.
3664 (STARTFILE_SPEC): Redefine for PA.
3665
38abadee
FS
36662002-01-21 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
3667
3668 * config/rs6000/t-ppccomm (CRTSTUFF_T_CFLAGS_S): Re-add -fPIC.
3669
94f1d97c
DJ
36702002-01-21 Daniel Jacobowitz <drow@mvista.com>
3671
3672 * config.gcc: Add entries to supported PowerPC --with-cpu
3673 types.
3674
0333394e
JJ
36752002-01-21 Jakub Jelinek <jakub@redhat.com>
3676
3677 * config/i386/i386.c (ix86_function_arg_regno_p): Never return
3678 true for 64-bit mode only SSE registers in 32-bit mode.
3679
e9d1b155
KH
36802002-01-21 Kazu Hirata <kazu@hxi.com>
3681
3682 * unwind-dw2.c: Fix formatting.
3683 * unwind-dw2-fde.c: Likewise.
3684 * unwind-dw2-fde.h: Likewise.
3685 * unwind-pe.h: Likewise.
3686 * varasm.c: Likewise.
3687 * varray.h: Likewise.
3688
07338cf8
HPN
36892002-01-21 Hans-Peter Nilsson <hp@bitrange.com>
3690
3691 Remove workaround for register stack overwrite bug in mmix.
3692 * config/mmix/mmix.c (mmix_target_asm_function_prologue): Remove
3693 support for TARGET_REG_STACK_FILL_BUG.
3694 * config/mmix/mmix.h: Remove member has_call_without_parameters.
3695 (TARGET_MASK_REG_STACK_FILL_BUG, TARGET_REG_STACK_FILL_BUG):
3696 Delete.
3697 (TARGET_DEFAULT): Remove TARGET_MASK_REG_STACK_FILL_BUG.
3698 (TARGET_SWITCHES): Remove -mreg-stack-fill-bug-workaround and
3699 -mno-reg-stack-fill-bug-workaround.
3700 * config/mmix/mmix.md ("call", "call_value"): Don't set struct
3701 machine member has_call_without_parameters.
3702 * doc/invoke.texi (Option Summary) <MMIX Options>: Remove
3703 -mreg-stack-fill-bug-workaround and
3704 -mno-reg-stack-fill-bug-workaround.
3705 (MMIX Options): Ditto.
3706
7192cbf1
KH
37072002-01-21 Kazu Hirata <kazu@hxi.com>
3708
3709 * config/h8300/h8300.c (function_arg): Replace 0 with NULL_RTX
3710 as appropriate.
3711 Remove redundant code.
3712
d1552d7b
JM
37132002-01-21 Joseph S. Myers <jsm28@cam.ac.uk>
3714
3715 * config/alpha/alpha.h, config/arc/arc.h, config/avr/avr.h,
3716 config/c4x/c4x.h, config/d30v/d30v.h, config/dsp16xx/dsp16xx.h,
3717 config/fr30/fr30.h, config/ia64/ia64.h, config/m68hc11/m68hc11.h,
3718 config/mips/mips.h, config/rs6000/rs6000.h, config/sparc/sparc.h,
3719 config/stormy16/stormy16.h, config/v850/v850.h: Remove commented
3720 out target macro definitions and non-target-specific comments
3721 mostly taken from old versions of the manual.
3722
ed168e45
KH
37232002-01-20 Kazu Hirata <kazu@hxi.com>
3724
3725 * config/h8300/h8300.h: Fix comment formatting.
3726 * config/ia64/aix.h: Likewise.
3727 * config/ia64/ia64-protos.h: Likewise.
3728 * config/ia64/ia64.c: Likewise.
3729 * config/ia64/ia64.h: Likewise.
3730 * config/ia64/ia64intrin.h: Likewise.
3731 * config/ia64/linux.h: Likewise.
3732 * config/ia64/unwind-aix.c: Likewise.
3733 * config/ia64/unwind-ia64.c: Likewise.
3734
005e3e05
KH
37352002-01-20 Kazu Hirata <kazu@hxi.com>
3736
3737 * config/h8300/h8300.c: Revise comments about shift code.
3738
64bead4c
KH
37392002-01-20 Kazu Hirata <kazu@hxi.com>
3740
3741 * config/h8300/h8300.c (function_arg): Update a comment.
3742
ed863595
KH
37432002-01-20 Kazu Hirata <kazu@hxi.com>
3744
3745 * config/h8300/h8300.md: Update the comments at the beginning
3746 of the file.
3747
5904dc87
KH
37482002-01-20 Kazu Hirata <kazu@hxi.com>
3749
3750 * config/i370/i370.c: Fix comment formatting.
3751 * config/i370/i370.h: Likewise.
3752 * config/i370/i370.md: Likewise.
3753 * config/i370/linux.h: Likewise.
3754
9702143f
RK
3755Sun Jan 20 18:40:14 2002 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
3756
cbafacd1
RK
3757 * reg-stack.c (subst_stack_regs): Properly check for deleted insn.
3758
9702143f
RK
3759 * dwarf2out.c (loc_descriptor_from_tree): Add TRUTH_*_EXPR cases.
3760 (gen_struct_or_union_type_die): Don't SIGSEGV if no TYPE_STUB_DECL
3761 in incomplete case.
3762
6b6996b8
GS
37632002-01-20 Graham Stott <grahams@redhat.com>
3764
3765 * cfgloop.c (flow_loop_preheader_scan): Fix typo.
3766
eab854f6
JDA
37672002-01-19 John David Anglin <dave@hiauly1.hia.nrc.ca>
3768
3769 * config.gcc (hppa*64*-*-hpux11*): Fix tmake_file.
3770
5b029315
TR
37712002-01-19 Tom Rix <trix@redhat.com>
3772
3773 * config/rs6000/rs6000.md: Fix DF split for 64 bit hosts.
3774
1d690052
AH
37752002-01-18 Aldy Hernandez <aldyh@redhat.com>
3776
d8086cbb 3777 * doc/tm.texi (STARTING_FRAME_PHASE): Document.
1d690052 3778
d8086cbb
RS
3779 * function.c (assign_stack_local_1): Adjust x_frame_offset with
3780 STARTING_FRAME_PHASE.
3781 (STARTING_FRAME_PHASE): New.
3782 (instantiate_virtual_regs): Check saneness of
3783 STARTING_FRAME_PHASE.
1d690052 3784
d8086cbb 3785 * config/rs6000/rs6000.h (STARTING_FRAME_PHASE): New.
1d690052 3786
4dd8c093
AO
37872002-01-19 Alexandre Oliva <aoliva@redhat.com>
3788
3789 * config/sh/sh.md (movdf_i4 split): Fix alter_subreg calls.
3790
6f2a28d7
CR
37912002-01-18 Craig Rodrigues <rodrigc@gcc.gnu.org>
3792
3793 * doc/install.texi (hppa*-hp-hpux11): Clarify that GCC 2.95.x cannot
3794 be used for bootstrapping GCC 3.0.
3795
8763a465
KH
37962002-01-18 Kazu Hirata <kazu@hxi.com>
3797
3798 * config/h8300/h8300.md: Fix an insn length.
3799
3ef42a0c
KH
38002002-01-18 Kazu Hirata <kazu@hxi.com>
3801
3802 * bitmap.h: Fix comment formatting.
3803 * combine.c: Likewise.
3804 * cppfiles.c: Likewise.
3805 * c-pragma.h: Likewise.
3806 * c-typeck.c: Likewise.
3807 * df.c: Likewise.
3808 * dwarf2out.c: Likewise.
3809 * function.c: Likewise.
3810 * gcc.c: Likewise.
3811 * genattrtab.c: Likewise.
3812 * gthr-win32.h: Likewise.
3813 * haifa-sched.c: Likewise.
3814 * predict.c: Likewise.
3815 * rtlanal.c: Likewise.
3816 * rtl.h: Likewise.
3817 * unwind-dw2-fde.h: Likewise.
3818 * unwind-pe.h: Likewise.
3819 * vmsdbgout.c: Likewise.
3820
dd4dc3cd
RK
3821Thu Jan 17 15:28:26 2002 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
3822
3823 * attribs.c (decl_attributes): Clear ATTR_FLAG_TYPE_IN_PLACE
3824 if type_required and passed decl.
3825
5fb4cf24
AH
38262002-01-17 Aldy Hernandez <aldyh@redhat.com>
3827
d8086cbb
RS
3828 * config.gcc (cpu_type): Include altivec.h in powerpc
3829 extra_headers.
3830 Same for darwin.
5fb4cf24 3831
d8086cbb 3832 * config/rs6000/altivec.h: New.
5fb4cf24 3833
2705baf5
DE
38342002-01-17 David Edelsohn <edelsohn@gnu.org>
3835
3836 * doc/install.texi (*-ibm-aix*): Update assembler and exception
3837 handling information.
3838 * doc/trouble.texi (Interoperation): Add libstdc++ information
3839 for AIX.
3840 (Misunderstandings): Add template instantiation and static template
3841 member information for AIX.
3842
dbd680e1
JM
38432002-01-17 Jason Merrill <jason@redhat.com>
3844
821adc5e
JM
3845 * dbxout.c (dbxout_type): Support const and volatile.
3846
dbd680e1
JM
3847 * except.c (add_partial_entry): Remove backwards compatibility code.
3848 (end_protect_partials): Likewise.
3849
d0e82870
JJ
38502002-01-17 Jakub Jelinek <jakub@redhat.com>
3851
3852 * config/ia64/ia64.md (prologue_use): New.
3853 * config/ia64/ia64.c (ia64_expand_prologue): Use
3854 gen_prologue_use instead of gen_rtx_USE.
3855 (group_barrier_needed_p): Handle CODE_FOR_prologue_use the same way
3856 as CODE_FOR_pred_rel_mutex.
3857 (ia64_sched_reorder2): Likewise.
3858
f9f45c65
EC
38592002-01-16 Eric Christopher <echristo@redhat.com>
3860
3861 * config/mips/r3900.h: Reformat.
3862 (SUBTARGET_CPP_SIZE_SPEC): Remove.
3863 * config/mips/isa3264.h (SUBTARGET_CPP_SIZE_SPEC): Ditto.
3864 * config/mips/mips.h (ABI_GAS_ASM_SPEC): Default to "".
3865 (SUBTARGET_CPP_SIZE_SPEC): Rewrite.
3866 * config/mips/t-elf: Remove mips3 multilib.
3867
c66c8b0e
L
38682002-01-16 H.J. Lu <hjl@gnu.org>
3869
3870 * config/mips/linux.h: Include "mips/abi64.h".
3871
5f083b72
L
38722002-01-16 H.J. Lu <hjl@gnu.org>
3873
3874 * config/mips/t-linux: New.
3875
3876 * config.gcc: Add mips/t-linux to tmake_file for mips*-*-linux*.
3877
3878 * config/mips/linux.h: Don't include "gofast.h".
3879 (INIT_SUBTARGET_OPTABS): Removed.
3880
af3c90a6
KH
38812002-01-16 Kazu Hirata <kazu@hxi.com>
3882
3883 * config/h8300/h8300-protos.h: Replace emit_a_shift with
3884 output_a_shift.
3885 * config/h8300/h8300.c: Likewise.
3886 * config/h8300/h8300.md: Likewise.
3887
a1bf0a16
KH
38882002-01-16 Kazu Hirata <kazu@hxi.com>
3889
3890 * config/h8300/h8300.md (pushqi1_h8300): Use a tab instead of
3891 spaces after an opcode name.
3892 (pushqi1_h8300hs): Likewise.
3893 (pushhi1_h8300hs): Likewise.
3894
88ab0d1c
KH
38952002-01-16 Kazu Hirata <kazu@hxi.com>
3896
3897 * doc/extend.texi: Replace "option" with "attribute"
3898 appropriately.
3899
51c561e3
JJ
39002002-01-16 Jakub Jelinek <jakub@redhat.com>
3901
3902 * config/alpha/alpha.c (some_small_symbolic_mem_operand): Look into
3903 (and:DI () (const_int -8)).
3904 (split_small_symbolic_mem_operand): Split
3905 (mem (and:DI () (const_int -8)).
3906
b8c1a6b8
JJ
39072002-01-16 Jakub Jelinek <jakub@redhat.com>
3908
3909 PR target/5309:
d8086cbb 3910 * config/sparc/sparc.c (ultrasparc_adjust_cost): Handle TYPE_IDIV the
b8c1a6b8
JJ
3911 same way as TYPE_IMUL.
3912 (ultrasparc_sched_reorder): Likewise.
3913 * config/sparc/sparc.md (type): Add comment to update
3914 ultrasparc_sched_reorder when making changes.
3915
1e4e4df2
KH
39162002-01-16 Kazu Hirata <kazu@hxi.com>
3917
3918 * doc/invoke.texi: Change the dump file name of block
3919 reordering pass from 28.bbro to 29.bbro.
3920 Mention -dk option.
3921
14d920c0
JH
3922Wed Jan 16 17:54:22 CET 2002 Jan Hubicka <jh@suse.cz>
3923
3924 * i386.md (minsf splitter): Fix pasto.
3925
2e99323f
NC
39262002-01-16 Nick Clifton <nickc@cambridge.redhat.com>
3927
3928 * config/arm/arm.c (arm_expand_prologue): Add REG_MAYBE_DEAD note
3929 to frame pointer initialisation instruction.
3930 (thumb_expand_prologue): Add REG_MAYBE_DEAD note to frame pointer
3931 initialisation instruction.
ab8081c1
NC
3932 (soft_df_operand): Do not accept the IP register.
3933 (nonimmediate_soft_df_operand): Do not accept the IP register.
2e99323f 3934
c4031a04
JJ
39352002-01-16 Jakub Jelinek <jakub@redhat.com>
3936
3937 PR target/5357:
3938 * config/sparc/sparc.c (sparc_override_options): Avoid MASK_V9 and
3939 MASK_V8 being both set.
3940
44b8152b
UW
39412002-01-16 Ulrich Weigand <uweigand@de.ibm.com>
3942
3943 * config/s390/s390.c (s390_emit_prologue): Do not emit USE
3944 insn for GOT register; add REG_MAYBE_DEAD notes instead.
3945 config/s390/s390.md (call, call_value): Add GOT register to
3946 CALL_INSN_FUNCTION_USAGE where needed.
3947 (call_exp, call_value_exp): New.
3948
1d6e90ac
NC
39492002-01-16 Nick Clifton <nickc@cambridge.redhat.com>
3950
3951 * config/arm/arm.c: General formatting tidy up.
3952
39532002-01-16 Graham Stott <grahams@redhat.com>
60e8b9f0
GS
3954
3955 * calls.c (try_to_integrate): Use "(size_t)" intermediate
3956 cast and when casting an integer literal to "rtx" pointer.
3957 (expand_call): Likewise.
3958 * flow.c (try_pre_increment): Likewise.
3959 (find_use_as_address): Likewise.
3960 * integrate.c (expand_iline_function): Likewise.
3961 * regmove.c (try_auto_increment): Likewise.
3962
1d6e90ac 39632002-01-16 Graham Stott <grahams@redhat.com>
7b25b076
GS
3964
3965 * sched-rgn.c (passed): Use sbitmap_free.
3966 (header): Likewise.
3967 (inner): Likewise.
3968 (in_queue): Likewise.
3969 (in_stack): Likewise.
3970
31fce3c4
EC
39712002-01-15 Eric Christopher <echristo@redhat.com>
3972
3973 * flow.c (propagate_one_insn): Change to use fatal_insn.
3974
c99d986a
KH
39752002-01-15 Kazu Hirata <kazu@hxi.com>
3976
3977 * expmed.c (extract_fixed_bit_field): Remove unused code.
3978 * system.h: Poison SLOW_ZERO_EXTEND.
3979 * doc/tm.texi: Remove.
3980 * config/1750a/1750a.h (SLOW_ZERO_EXTEND): Remove.
3981 * config/arm/arm.h: Likewise.
3982 * config/avr/avr.h: Likewise.
3983 * config/clipper/clipper.h: Likewise.
3984 * config/convex/convex.h: Likewise.
3985 * config/d30v/d30v.h: Likewise.
3986 * config/dsp16xx/dsp16xx.h: Likewise.
3987 * config/elxsi/elxsi.h: Likewise.
3988 * config/fr30/fr30.h: Likewise.
3989 * config/h8300/h8300.h: Likewise.
3990 * config/i370/i370.h: Likewise.
3991 * config/i386/i386.h: Likewise.
3992 * config/m68k/m68k.h: Likewise.
3993 * config/mips/mips.h: Likewise.
3994 * config/ns32k/ns32k.h: Likewise.
3995 * config/pdp11/pdp11.h: Likewise.
3996 * config/pj/pj.h: Likewise.
3997 * config/s390/s390.h: Likewise.
3998 * config/sh/sh.h: Likewise.
3999 * config/stormy16/stormy16.h: Likewise.
4000 * config/v850/v850.h: Likewise.
4001 * config/vax/vax.h: Likewise.
4002 * config/we32k/we32k.h: Likewise.
4003
acfab996
AH
40042002-01-15 Aldy Hernandez <aldyh@redhat.com>
4005
d8086cbb
RS
4006 * config/rs6000/rs6000.md (altivec_stvx): Add parallels to stvx.
4007 (altivec_lvsl): Change constraint to b.
4008 (altivec_lvsr): Same.
4009 (altivec_lvebx): Same.
4010 (altivec_lvehx): Same.
4011 (altivec_lvewx): Same.
4012 (altivec_lvxl): Same.
4013 (altivec_lvx): Same.
4014 (altivec_stvx): Add parallel.
4015 (altivec_stvxl): Same.
4016 (altivec_stvehx): Same.
4017 (altivec_stvebx): Same.
4018 (altivec_stvebx): Same.
acfab996 4019
5e505bc9
AH
40202002-01-15 Aldy Hernandez <aldyh@redhat.com>
4021
d8086cbb 4022 * config.gcc: Change altivec.h to altivec-defs.h.
5e505bc9 4023
d8086cbb 4024 * config/rs6000/altivec.h: Delete.
5e505bc9 4025
d8086cbb 4026 * config/rs6000/altivec-defs.h: Add.
5e505bc9 4027
5c41fdfb
JDA
40282002-01-15 John David Anglin <dave@hiauly1.hia.nrc.ca>
4029
4030 * vax.c (vax_rtx_cost): Return MAX_COST for unsupported MULT, UDIV
4031 and UMOD modes.
4032
4033 * vax.h (INDEX_TERM_P): Restrict indexing to modes which have a size
4034 less than or equal to eight bytes.
4035
4036 * vax.md (andsi3): Remove constraints and change SET destination
4037 operand type to nonimmediate_operand.
4038 (andhi3, andqi3): Likewise. Don't clear high order bits of operand 1
4039 when it is a CONST_INT.
4040
de097a2d
JM
40412002-01-15 Jason Merrill <jason@redhat.com>
4042
4043 * c-common.def (FILE_STMT): New code.
4044 * c-common.c (statement_code_p): It's a statement.
4045 * c-common.h (stmt_tree_s): Add x_last_filename.
4046 (FILE_STMT_FILENAME_NODE, FILE_STMT_FILENAME): New macros.
4047 (last_expr_filename): New macro.
4048 * c-semantics.c (begin_stmt_tree): Initialize it.
4049 (add_stmt): If the filename changed, also insert a
4050 FILE_STMT.
4051 (expand_stmt): Handle seeing one.
4052
4a913dd6
EC
40532002-01-15 Eric Christopher <echristo@redhat.com>
4054
4055 * flow.c (propagate_one_insn): Add error message and print out
4056 insn for debugging.
4057
006946e4
JM
40582002-01-15 Joseph S. Myers <jsm28@cam.ac.uk>
4059
4060 * system.h (ASM_IDENTIFY_GCC, STDC_VALUE, TRAMPOLINE_ALIGN,
4061 ASM_IDENTIFY_GCC_AFTER_SOURCE): Poison.
4062 * config/pdp11/pdp11.h (TRAMPOLINE_ALIGN): Rename to
4063 TRAMPOLINE_ALIGNMENT.
4064 * config/arm/arm.h, config/mcore/mcore.h: Likewise. Change value
4065 to be in bits.
4066 * config/i386/cygwin.h (PCC_BITFIELDS_TYPE_MATTERS): Rename to
4067 PCC_BITFIELD_TYPE_MATTERS.
4068 * config/interix.h (STDC_VALUE): Remove. Use
4069 STDC_0_IN_SYSTEM_HEADERS.
4070 * config/darwin.h (ASM_IDENTIFY_GCC), config/dsp16xx/dsp16xx.h
4071 (ASM_IDENTIFY_GCC), config/stormy16/stormy16.h (ASM_IDENTIFY_GCC,
4072 ASM_IDENTIFY_GCC_AFTER_SOURCE): Remove.
4073
751a1458
CR
40742002-01-15 Craig Rodrigues <rodrigc@gcc.gnu.org>
4075
4076 * doc/install.texi (hppa*-hp-hpux11): --enable-threads does
4077 not work on this platform currently.
4078
57771fe8
JM
40792002-01-15 Joseph S. Myers <jsm28@cam.ac.uk>
4080
4081 * c-typeck.c (build_unary_op): Don't wrap msgid argument of
4082 readonly_warning in _().
4083
0e83ceb1 40842002-01-15 Douglas B Rupp <rupp@gnat.com>
9a52433e 4085
0e83ceb1 4086 * gcc.c (delete_if_ordinary): Backout previous change.
9a52433e 4087
8e2e89f7
KH
40882002-01-15 Kazu Hirata <kazu@hxi.com>
4089
0e83ceb1
DR
4090 * config/h8300/h8300.c (print_operand): Remove support for
4091 unused operand characters.
4092
8e2e89f7
KH
4093 * read-rtl.c: Fix formatting.
4094 * real.c: Likewise.
4095 * recog.c: Likewise.
4096 * regclass.c: Likewise.
4097 * regmove.c: Likewise.
4098 * reg-stack.c: Likewise.
4099 * reload1.c: Likewise.
4100 * rtlanal.c: Likewise.
4101
b531087a
KH
41022002-01-15 Kazu Hirata <kazu@hxi.com>
4103
4104 * config/i386/i386.c: Fix formatting.
4105
7c94ce7f
JJ
41062002-01-15 Jakub Jelinek <jakub@redhat.com>
4107
4108 * c-typeck.c (process_init_element): Don't save_expr
4109 COMPOUND_LITERAL_EXPR if just its initializer will be used.
4110
6041bf2f
DE
41112002-01-15 David Edelsohn <edelsohn@gnu.org>
4112
4113 * config/rs6000/rs6000.c (rs6000_output_function_epilogue): Do not
4114 emit optional traceback table if optimize_size or TARGET_ELF.
4115 * config/rs6000/rs6000.md (prefetch): New.
4116
8559c8c0
AJ
41172002-01-15 Andreas Jaeger <aj@suse.de>
4118
4119 * config.gcc (x86_64-*-*): Install mmintrin.h and xmmintrin.h.
4120
70f122f2
KH
41212002-01-15 Kazu Hirata <kazu@hxi.com>
4122
4123 * mips-tfile.c: Fix formatting.
4124
6a7b4ca6
JH
4125Tue Jan 15 00:56:11 CET 2002 Jan Hubicka <jh@suse.cz>
4126
4127 * unroll.c (final_reg_note_copy): Fix previous commit.
4128
e7afe229
KH
41292002-01-14 Kazu Hirata <kazu@hxi.com>
4130
4131 * config/h8300/h8300-protos.h: Remove the prototype for
4132 eq_operator.
4133 * config/h8300/h8300.c (eq_operator): Remove.
4134
7d378549
RH
41352002-01-14 Richard Henderson <rth@redhat.com>
4136
4137 * config/i386/i386.md (prefetch): Tidy.
4138 (prefetch_3dnow): Fix locality operand.
4139
ab093b81
RH
41402002-01-14 Richard Henderson <rth@redhat.com>
4141
4142 * config/mips/mips.h (HI_AND_FP_REGS): New register class.
4143 (CLASS_CANNOT_CHANGE_MODE): Disallow HI in little-endian mode.
4144
d300f51f
HPN
41452002-01-14 Hans-Peter Nilsson <hp@bitrange.com>
4146
4147 * reload1.c (reload_combine): Pass reg_sum replacement through
4148 copy_rtx in loop performing multiple changes.
4149
655dd289
JJ
41502002-01-14 Jakub Jelinek <jakub@redhat.com>
4151
4152 * except.c (remove_unreachable_regions): New.
4153 (free_eh_status): Clear exception_handler_labels.
4154 (convert_from_eh_region_ranges): Call remove_unreachable_regions.
4155 (find_exception_handler_labels): Don't add the same label more than
4156 once.
4157 (remove_exception_handler_label): Don't die if
4158 find_exception_handler_labels hasn't been called for the current
4159 function yet.
4160
1fba46a7
JH
4161Mon Jan 14 21:26:13 CET 2002 Jan Hubicka <jh@suse.cz>
4162
4163 * toplev.c (rest_of_compilation): Rebuild jump labels after
4164 gcse.
4165
0975678f
JM
41662002-01-14 Joseph S. Myers <jsm28@cam.ac.uk>
4167
4168 * doc/extend.texi: Move documentation of X86 built-in functions
4169 here.
4170 * doc/invoke.texi: From here.
4171 * doc/sourcebuild.texi: Document location of documentation for
4172 machine built-in functions.
4173
969815c7
CF
41742002-01-13 Christopher Faylor <cgf@redhat.com>
4175
4176 * cppfiles.c (TEST_THRESHOLD): New macro.
4177 (SHOULD_MMAP): Ditto.
4178 (read_include_file): Use SHOULD_MMAP macro to decide when mmap should
4179 be used.
4180
494c950b
JH
4181Mon Jan 14 20:23:34 CET 2002 Jan Hubicka <jh@suse.cz>
4182
4183 * unroll.c (final_reg_note_copy): Properly handle
4184 REG_LABEL
4185 (unroll_loops): Fix LOOP_CONDITION heuristics.
4186
69a0611f
GK
41872002-01-14 Geoffrey Keating <geoffk@redhat.com>
4188
4189 * doc/invoke.texi (Xstormy16 Options): Add xstormy16 option.
4190 * doc/md.texi (Machine Constraints): Use @minus{} where appropriate.
4191
b90e45ae
JH
4192Mon Jan 14 20:18:19 CET 2002 Jan Hubicka <jh@suse.cz>
4193
4194 * cfgcleanup.c (try_forward_edges): Avoid infinite loop at infinite
4195 threaded loop.
4196
8377288b
TR
41972002-01-14 Tom Rix <trix@redhat.com>
4198
4199 * config/rs6000/rs6000.md: Fix typo with sradi.
4200
9f37ccb1
UW
42012002-01-14 Ulrich Weigand <uweigand@de.ibm.com>
4202
4203 * config/s390/s390.md (movstrdix_64, movstrsix_31, movstrdi_64,
4204 movstrsi_31, clrstrsi_64, clrstrsi_31): Improve RTL templates.
4205 (clrstrdi, clrstrsi): Adapt callers.
4206
4207 (extendsidi2, zero_extendsidi2): Remove no-conflict blocks.
4208
8559c8c0 4209 (movti splitter): Never use register 0 as base register.
9f37ccb1 4210
6c2d03d0
HP
42112002-01-14 Hartmut Penner <hpenner@de.ibm.com>
4212
8559c8c0
AJ
4213 * combine.c (simplify_shift_const): Always generate new rtx
4214 for shift expression instead of reusing given expression.
6c2d03d0 4215
d3e98208
RK
4216Mon Jan 14 07:08:55 2002 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
4217
4218 * config/alpha/alpha.c (alpha_expand_mov): Don't call
4219 alpha_legitimize_address unless mode is Pmode.
4220
9f339dde
GK
42212002-01-13 Geoffrey Keating <geoffk@redhat.com>
4222
4223 * doc/md.texi (Modifiers): Document the '*' constraint for the
4224 user.
4225
4226 * doc/md.texi (Machine Constraints): Add constraints for xstormy16.
4227 * doc/extend.texi (Function Attributes): 'interrupt' is valid
4228 for xstormy16 too.
4229
02a10130
RH
42302002-01-13 Richard Henderson <rth@redhat.com>
4231
4232 * reload.c (find_reloads): Use a hard reg destination as reload reg
4233 for an input reload of the source.
4234
61d47787
GP
42352002-01-13 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
4236
4237 * doc/install.texi (Binaries): Make link to ftp.writtenword.com
4238 more generic.
4239
f0df8029
DR
4240Sun Jan 13 07:23:01 2002 Douglas B Rupp <rupp@gnat.com>
4241
4242 * Makefile.in (LIB2FUNCS): Split into LIB2FUNCS_1 and LIB2FUNCS_2.
4243 * mklibgcc.in (LIB2FUNCS): Split into LIB2FUNCS_1 and LIB2FUNCS_2.
4244
d2a37256
DR
4245 * config/alpha/x-vms (USE_COLLECT2): Set to empty.
4246
a9e8a5ee
RK
4247Sun Jan 13 06:55:31 2002 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
4248
4249 * dwarf2out.c (mem_loc_descriptor, case ADDRESSOF): New case.
4250
bc06712d
TR
42512002-01-12 Tom Rix <trix@redhat.com>
4252
8559c8c0 4253 * config/rs6000/rs6000.c (rs6000_emit_set_long_const): Use ior for
bc06712d
TR
4254 TARGET_POWERPC64.
4255
7cbe9bb7
RH
42562002-01-12 Richard Henderson <rth@redhat.com>
4257
38b29e64
RH
4258 * config/i386/i386.c (bdesc_2arg): Mark psadbw MASK_3DNOW_A.
4259
58605ba0
RH
4260 * doc/invoke.texi: Update Alpha options.
4261
7cbe9bb7
RH
4262 * doc/invoke.texi: Update i386 built-in function lists.
4263
9d560860
JH
4264Sat Jan 12 17:38:11 CET 2002 Jan Hubicka <jh@suse.cz>
4265
4266 * unroll.c (final_reg_note_copy): Avoid crash on REG_LABEL note
4267 referencing outside.
4268
bb93b973
RK
4269Sat Jan 12 08:54:51 2002 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
4270
4271 * diagnostic.c (warn_deprecated_use): Rework to lower indentation.
4272 * expr.c (emit_move_insn_1): Remove warning, use HOST_WIDE_INT for
4273 offsets, and change line folding.
4274 * optabs.c (expand_binop): Remove warnings.
4275 * sdbout.c (sdbout_record_type_name): Constify NAME to avoid warning.
8559c8c0 4276
f9f6b7df
GS
42772002-01-12 Graham Stott <grahams@redhat.com>
4278
4279 * attribs.c (handle_deprecated_attribute): constify WHAT.
4280 * diagnostic.c (warn_deprecated_use): Add braces, fixes
4281 dangling else warning and constify WHAT.
4282 * except.h (struct function, struct inline_remap): Move
4283 struct tag forward defs before all prototypes.
4284 (duplicate_eh_regions): Whitespace.
4285
4a692617
NC
42862002-01-12 Nick Clifton <nickc@cambridge.redhat.com>
4287
4288 * config/arm/arm.h (ARM_LEGITIMIZE_RELOAD_ADDRESS): Use
4289 MODE_BASE_REG_CLASS.
4290 (THUMB_LEGITIMIZE_RELOAD_ADDRESS): Use MODE_BASE_REG_CLASS.
4291
e37af218
RH
42922002-01-12 Richard Henderson <rth@redhat.com>
4293
4294 * config/i386/i386.c (override_options): If SSE, enable sse prefetch.
4295 (ix86_expand_vector_move): New.
4296 (bdesc_2arg): Remove andps, andnps, orps, xorps.
4297 (ix86_init_mmx_sse_builtins): Make static. Remove composite builtins.
4298 Remove old prefetch builtins. Special case the logicals removed above.
4299 (ix86_expand_builtin): Likewise.
4300 (safe_vector_operand): Use V4SFmode, not TImode.
4301 (ix86_expand_store_builtin): Remove shuffle arg. Update callers.
4302 (ix86_expand_timode_binop_builtin): New.
4303 * config/i386/i386-protos.h: Update.
4304 * config/i386/i386.h (enum ix86_builtins): Update.
4305 * config/i386/i386.md: Correct predicates on MMX/SSE patterns.
4306 Use ix86_expand_vector_move in vector move expanders.
4307 (movti_internal, movti_rex64): Add xorps alternative.
4308 (sse_clrv4sf): Rename and adjust from sse_clrti.
4309 (prefetch): Don't work so hard.
4310 (prefetch_sse, prefetch_3dnow): Use PREFETCH rtx, not UNSPEC.
4311 * config/i386/xmmintrin.h (__m128): Use V4SFmode.
4312 (_mm_getcsr, _mm_setcsr): Fix typo in builtin name.
4313
6f1a6c5b
RH
43142002-01-11 Richard Henderson <rth@redhat.com>
4315
4316 * config/i386/mmintrin.h: New file.
4317 * config/i386/xmmintrin.h: New file.
4318 * config.gcc (i?86-*-*): Add extra_headers.
4319 * simplify-rtx.c (simplify_unary_operation): Handle saturating
4320 truncation codes.
4321 (simplify_binary_operation): Handle saturating arithmetic codes.
4322 * config/i386/i386.c (ix86_expand_sse_comi): Return the full result,
4323 not the lowpart subreg.
4324 (ix86_expand_builtin): Return a TImode dummy register instead of 0
4325 on error.
4326 * config/i386/i386.md (mmx_clrdi): Override memory attribute.
4327
cdb574d3
MH
43282002-01-12 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
4329
4330 * conflict.c (conflict_graph_compute): Free regsets when finished.
4331 * ssa.c (compute_coalesced_reg_partition): Likewise.
8559c8c0 4332
cf11ac55
HB
43332002-01-12 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
4334
4335 * global.c (find_reg): Check for HARD_REGNO_CALL_PART_CLOBBERED
4336 every where we allocate a register.
4337
76ac938b
MH
43382002-01-12 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
4339
4340 * gcse.c (compute_pre_data, pre_gcse): Use sbitmap_free.
4341 * lcm.c (compute_earliest, compute_farthest): Likewise.
4342
a84b4898
JJ
43432002-01-11 Janis Johnson <janis187@us.ibm.com>
4344
4345 * expr.c (expand_assignment): Fix misuse of MEM_KEEP_ALIAS_SET.
4346
aaef1c12
JJ
43472002-01-11 Janis Johnson <janis187@us.ibm.com>
4348
4349 * doc/rtl.texi (Insns): Fix 2 typos.
4350
5d22c1a5
JM
43512002-01-11 Joseph S. Myers <jsm28@cam.ac.uk>
4352
4353 * doc/invoke.texi: Avoid overfull hboxes. Add summary of D30V
4354 options. Use @table @gcctabopt for MMIX options. Add index
4355 entries for MMIX options. Start new paragraph with first
4356 heading of the machine-dependent options.
4357
3e92902c
CR
43582002-01-11 Craig Rodrigues <rodrigc@gcc.gnu.org>
4359
4360 PR other/5299
4361 * config/ns32k/ns32k.md: Fix spelling mistake of "than" in comments.
4362 * combine.c (force_to_mode): Same.
4363 * reload1.c (clear_reload_reg_in_use): Same.
4364
96ae8197
NC
43652002-01-11 Nick Clifton <nickc@cambridge.redhat.com>
4366
4367 * config/arm/arm.c (arm_gen_constant): Correct test of 'remainder'
4368 and 'subtargets'.
4369
9b780582
AJ
43702002-01-11 Andreas Jaeger <aj@suse.de>,
4371 Brad Lucier <lucier@math.purdue.edu>
4372
4373 * config/i386/i386.h (CPP_CPUCOMMON_SPEC): Remove wrong
4374 mcpu.
4375
12300dad
DR
4376Fri Jan 11 07:35:12 2002 Douglas B Rupp <rupp@gnat.com>
4377
4378 * config/alpha/vms.h: (MD_FALLBACK_FRAME_STATE_FOR): Fix errors.
4379 Protect with IN_LIBGCC.
4380 (LINK_EH_SPEC): Add required trailing space.
4381
27511a9a
NP
4382Fri Jan 11 09:25:05 2002 Nicola Pero <n.pero@mi.flashnet.it>
4383
9b780582 4384 * c-tree.h: Move function declarations so that they are listed
27511a9a
NP
4385 under the filename which contains them.
4386 (check_identifier, finish_decl_top_level,
4387 lookup_name_current_level_global, shadow_record_fields): Remove.
4388
4daeab16
AJ
43892002-01-11 Andreas Jaeger <aj@suse.de>
4390
4391 * config/i386/i386.h (CPP_CPUCOMMON_SPEC): Remove duplicated
4392 march.
4393
40571d67
RH
43942002-01-10 Richard Henderson <rth@redhat.com>
4395
4396 * config/alpha/alpha.c (print_operand): Add 'J'.
4397 * config/alpha/alpha.md (call_osf_1_er, call_value_osf_1_er): Take a
4398 new operand with the sequence number for the lituse. When splitting
4399 the insns, use gen_movdi_er_high_g and generate a sequence number.
4400 (gen_movdi_er_high_g): Print the sequence number if non-zero.
4401
6525c0e7
AH
44022002-01-10 Aldy Hernandez <aldyh@redhat.com>
4403
d8086cbb
RS
4404 * config/rs6000/rs6000.c (altivec_init_builtins): Add support for
4405 lvebx, lvehx, lvewx, lvxl, lvx, stvx, stvebx, stvehx, stvewx,
4406 stvxl.
4407 (altivec_expand_builtin): Same.
4408 (altivec_expand_stv_builtin): New.
4409
4410 * config/rs6000/rs6000.h (rs6000_builtins): Same.
4411
4412 * config/rs6000/rs6000.md ("altivec_lvebx"): New.
4413 ("altivec_lvehx"): New.
4414 ("altivec_lvewx"): New.
4415 ("altivec_lvxl"): New.
4416 ("altivec_lvx"): New.
4417 ("altivec_stvx"): New.
4418 ("altivec_stvebx"): New.
4419 ("altivec_stvehx"): New.
4420 ("altivec_stvewx"): New.
4421 ("altivec_stvxl"): New.
6525c0e7 4422
cda94cbb
RH
44232002-01-10 Richard Henderson <rth@redhat.com>
4424
4425 * cfgrtl.c (delete_insn): Assert insn hasn't been deleted yet.
4426 * reload1.c (delete_output_reload): Zap spill_reg_store. Take
4427 care not to delete instructions twice.
4428
df2c9a44
ZW
44292002-01-10 Zack Weinberg <zack@codesourcery.com>
4430
4431 * toplev.c: Don't declare environ (it's not used anywhere).
4432 * configure.in: Don't check for declaration of environ.
4433 * config/i386/xm-mingw32.h: Don't #define environ.
4434 * config.in, configure: Regenerate.
4435
5dd8a9b1
ZW
44362002-01-10 Zack Weinberg <zack@codesourcery.com>
4437
4438 * configure.in: Set stage1_cflags for powerpc-*-darwin*.
4439 * configure: Regenerate.
4440
4441 * config/interix.h: Set DO_GLOBAL_CTORS_BODY and
4442 DO_GLOBAL_DTORS_BODY here, not in xm-interix.h.
4443 * config/alpha/vms.h: Set INCLUDE_DEFAULTS here, not in
4444 alpha/xm-vms.h.
4445 * config/m68k/t-next: Set OTHER_FIXINCLUDES_DIRS and
4446 LIMITS_H_TEST here, not in m68k/x-next.
4447 * config/rs6000/beos.h: Set STANDARD_INCLUDE_DIR and
4448 SYSTEM_INCLUDE_DIR here, not in rs6000/xm-beos.h.
4449
4450 * config/x-interix: Don't set RANLIB, RANLIB_TEST, SHELL,
4451 LIBGCC2_INCLUDES, or SYSTEM_HEADER_DIR.
4452 * config/alpha/x-vms: Don't set USE_COLLECT2. Add comments.
4453
4454 * config/i386/x-djgpp: Renamed i386/t-djgpp.
4455 * config/m88k/x-dolph: Renamed m88k/t-dolph.
4456 * config/m88k/x-texXD88: Renamed m88k/t-texXD88.
4457 * config/pa/x-pa-mpeix: Renamed pa/t-mpeix. Update for
4458 replacement of quadlib.asm with quadlib.c.
4459
4460 * config/x-interix3, config/xm-interix.h, config/i386/x-beos,
4461 config/i386/xm-osf1elf.h, config/rs6000/x-darwin,
4462 config/rs6000/xm-beos.h: Delete file.
4463
4464 * config.gcc: Update to match above changes.
4465
d10dd44c
KH
44662002-01-10 Kazu Hirata <kazu@hxi.com>
4467
4468 * config/h8300/h8300.h: Fix comment typos.
4469 * config/h8300/h8300.md: Likewise.
4470 * config/h8300/lib1funcs.asm: Likewise.
4471
04894c5a
DJ
44722002-01-10 Dale Johannesen <dalej@apple.com>
4473
4474 PR optimization/5269
4475 * unroll.c (precondition_loop_p): Make *increment be the correct
4476 sign when n_iterations known, to avoid confusing caller.
4477
adc9fe67
KH
44782002-01-10 Kazu Hirata <kazu@hxi.com>
4479
4480 * doc/extend.texi (deprecated): Fix a typo.
4481
b446e5a2
JH
4482Thu Jan 10 22:35:54 CET 2002 Jan Hubicka <jh@suse.cz>
4483
4484 * basic-block.h (update_br_prob_note): Declare.
4485 * cfgcleanup.c (try_simplify_condjump): Call update_br_prob_note.
4486 (try_forward_edges): Care negative frequencies and update note.
4487 (outgoing_edges_match): Tweek conditional merging heuristics.
4488 (try_crossjump_to_edge): use update_br_prob_note.
4489 * cfglayout.c (fixup_reorder_chain): Likewise.
4490 * cfrtl.c (update_br_prob_note): New.
4491 * ifcvt.c (dead_or_predicable): Call update_br_prob_note.
4492
4493 * i386.c (ix86_decompose_address): Return -1 if address contains
4494 shift.
4495 (legitimate_address_p): Require ix86_decompose_address to return 1.
4496
4497 * gcse.c (hash_scan_set): Use CONSTANT_INSN_P.
4498 (cprop_insn): Likewise.
4499
a01da83b
KH
45002002-01-10 Kazu Hirata <kazu@hxi.com>
4501
4502 * toplev.c: Fix formatting.
4503 * tree.c: Likewise.
4504 * tree-dump.c: Likewise.
4505 * unroll.c: Likewise.
4506 * unwind-dw2.c: Likewise.
4507 * unwind-dw2-fde.c: Likewise.
4508 * unwind-dw2-fde-glibc.c: Likewise.
4509 * unwind-sjlj.c: Likewise.
4510
9f85bca7
JM
45112002-01-10 Joseph S. Myers <jsm28@cam.ac.uk>
4512
4513 * doc/invoke.texi: Document PDP-11 options.
4514
f48f56b1
KH
45152002-01-10 Kazu Hirata <kazu@hxi.com>
4516
4517 * config/h8300/h8300.h: Fix formatting.
4518
ead39bdf 45192002-01-10 Ira Ruben <ira@apple.com>
7f180628
IR
4520
4521 Add __attribute__ ((deprecated)).
4522 * extend.texi: Document __attribute__ ((deprecated)).
4523 * invoke.texi: Document -Wno-deprecated-declarations.
4524 * testsuite/g++.dg/other/deprecated.C: New C++ test.
4525 * testsuite/gcc.dg/deprecated.c: New C test.
4526 * attribs.c (enum attrs): Declare handle_deprecated_attribute().
4527 (c_common_attribute_table): Add "deprecated" entry.
4528 (handle_deprecated_attribute): New function.
4529 * c-decl.c (deprecated_states): New enum.
4530 deprecated_state: State of "deprecated" handling.
4531 (start_decl): Set deprecated_state based on attributes.
4532 (grokdeclarator): Test for deprecated uses, propagate attribute.
4533 * c-typeck.c (build_component_ref): Test for deprecated fields.
4534 (build_external_ref): Test for deprecated primaries.
4535 * diagnostic.c (warn_deprecated_use) New function to issue
4536 warnings about __attribute__ ((depricated)) references.
4537 * flags.h (warn_deprecated_decl): Extern declared for
4538 -W[no-]deprecated-declarations option.
4539 * print-tree.c (print_node): Show deprecated flag status.
4540 * toplev.c (warn_deprecated_decl): Defined.
4541 (W_options): Added "deprecated-declaration".
4542 * toplev.h (warn_deprecated_use): Extern declared.
4543 * tree.h (struct tree_common): Define deprecated_flag.
4544 (TREE_DEPRECATED): New macro to access flag.
4545 * cp/call.c (build_call): Test for deprecated calls.
4546 * cp/class.c (add_implicitly_declared_members): Set global
4547 flag to tell grokdeclarator to not issue deprecated warnings.
4548 * cp/cp-tree.h: Add extern for adding_implicit_members.
4549 * cp/decl.c (deprecated_states): New enum.
4550 (start_decl): Set deprecated_state based on attributes.
4551 (grokdeclarator): Test for deprecated uses, propagate attribute.
4552 * cp/lex.c (do_identifier): Test for deprecated primaries.
4553 * cp/typeck.c (build_component_ref): Test for deprecated fields.
4554
ead39bdf 45552002-01-10 Ira Ruben <ira@apple.com>
7f180628
IR
4556
4557 Fix to assign attributes to inline member functions.
4558 * cp/decl.c (start_method): Handle attrlist.
4559
47073a38
KH
45602002-01-10 Kazu Hirata <kazu@hxi.com>
4561
4562 * combine.c (expand_field_assignment): Use subreg_lsb().
4563
d288e53d
DE
45642002-01-10 David Edelsohn <edelsohn@gnu.org>
4565
4566 * alias.c (find_base_value): Add cases for HIGH, PRE_INC, PRE_DEC,
4567 POST_INC, POST_DEC, PRE_MODIFY, and POST_MODIFY.
4568 (find_base_term): Add cases for TRUNCATE, PRE_MODIFY, and POST_MODIFY.
4569 Recurse for any operand of AND as long as constant is non-zero.
4570
08a02ffa
KH
45712002-01-10 Kazu Hirata <kazu@hxi.com>
4572
4573 * config/h8300/h8300.md: Remove constraints from expanders.
4574
c203e7fe
KH
45752002-01-10 Kazu Hirata <kazu@hxi.com>
4576
4577 * varasm.c: Fix formatting.
4578 * varray.c: Likewise.
4579 * vmsdbgout.c: Likewise.
4580 * xcoffout.c: Likewise.
4581
bcb3bc6d
JH
4582Thu Jan 10 17:19:12 CET 2002 Jan Hubicka <jh@suse.cz>
4583
4584 * cfgcleanup.c (try_forward_edges): Properly initialize nthreaded_edges;
cda94cbb 4585 update edge probabilities to match.
bcb3bc6d 4586
0a553c7e
JM
45872002-01-10 Joseph S. Myers <jsm28@cam.ac.uk>
4588
4589 * Makefile.in ($(docdir)/gccint.info, gccint.dvi): Add additional
4590 dependencies.
4591 * doc/languages.texi, doc/sourcebuild.texi: New files.
4592 * doc/configfiles.texi: Make a subsubsection. Update.
4593 * doc/configterms.texi: Add @node. Remove warning that this isn't
4594 instructions for building GCC.
4595 * doc/makefile.texi: Make a subsection.
4596 * doc/gccint.texi: Update.
4597
adc7fcb8
JH
4598Thu Jan 10 16:39:58 CET 2002 Jan Hubicka <jh@suse.cz>
4599
4600 * i386.md (sse_mov?fcc_const0_?): Fix constraints.
4601
5a4dd0b3
NP
4602Thu Jan 10 12:45:50 2002 Nicola Pero <n.pero@mi.flashnet.it>
4603
4604 * doc/cpp.texi: Document the __OBJC__ preprocessor macro.
4605
3987b9db
JH
4606Thu Jan 10 11:19:18 CET 2002 Jan Hubicka <jh@suse.cz>
4607
4608 * optabs.c (expand_fix): Look for wider integer modes first.
4609
4610 * i386.md (mov?f): Avoid the fake const double trick for medium
4611 memory model.
4612 (min?f*/max?f*): Prohibit memory operands for i387 variant.
4613 (fop_df_4): Disable for SSE compilation.
4614
ceb15948 46152002-01-10 Graham Stott <grahams@redhat.com>
117f9d28
GS
4616
4617 * dwarf2out.c (indirect_string_alloc, output_indirect_string):
cda94cbb 4618 Move prototype into DWARF2_DEBUGGING_INFO conditional block.
117f9d28 4619
e1623399
RH
46202002-01-10 Richard Henderson <rth@redhat.com>
4621
4622 * config/alpha/alpha.md (extendsidi2_fix): Penalize f/f alternative.
4623
c4abb293
RH
46242002-01-10 Richard Henderson <rth@redhat.com>
4625
4626 * regrename.c (find_oldest_value_reg): Fix typo in mode change check.
4627 (copyprop_hardreg_forward_1): Likewise. Use mode_change_ok.
4628
d2604ae9
KH
46292002-01-10 Kazu Hirata <kazu@hxi.com>
4630
4631 * combine.c (can_combine_p): Fix a comment typo.
4632
766c7ad1
ZW
46332002-01-09 Zack Weinberg <zack@codesourcery.com>
4634
4635 * Makefile.in (s-gencheck, s-options, s-specs): Handle an
4636 empty list correctly. Change loop index $t to $f for
4637 consistency with rest of Makefile.
4638
95385cbb
AH
46392002-01-08 Aldy Hernandez <aldyh@redhat.com>
4640
4641 * testuite/gcc.dg/altivec-4.c: Add test for mtvscr, dssall,
4642 mfvscr, dss, lvsl, lvsr, dstt, dstst, dststt, dst.
4643
4644 * config/rs6000/rs6000.c (altivec_expand_builtin): Add support for
4645 mtvscr, dssall, mfvscr, dss, lvsl, lvsr, dstt, dst, dstst, dststt.
4646 (altivec_init_builtins): Same.
4647 (altivec_expand_unop_builtin): Return NULL_RTX on error.
4648 (altivec_expand_binop_builtin): Same.
4649 (altivec_expand_ternop_builtin): Same.
4650 (bdesc_dst): New.
4651
4652 * config/rs6000/rs6000.md ("altivec_mtvscr"): New.
4653 ("altivec_vctuxs"): Fix typo.
4654 ("altivec_vnmsubfp"): Same.
4655 ("altivec_dssall"): New.
4656 ("altivec_mfvscr"): New.
4657 ("altivec_dss"): New.
4658 ("altivec_lvsl"): New.
4659 ("altivec_lvsr"): New.
4660 ("altivec_dstt"): New.
4661 ("altivec_dstst"): New.
4662 ("altivec_dststt"): New.
4663 ("altivec_dst"): New.
4664
4665 * config/rs6000/rs6000.h (rs6000_builtins): Add mtvscr, dssall,
4666 mfvscr, dss, lvsl, lvsr, dstt, dstst, dststt, dst.
4667
e4ac76b4
RH
46682002-01-09 Richard Henderson <rth@redhat.com>
4669
4670 * config/alpha/alpha.md (prologue_mcount): Remove lituse_jsr reloc.
4671
c893e4a4
HPN
46722002-01-10 Hans-Peter Nilsson <hp@bitrange.com>
4673
4674 * config/mmix/mmix.c (mmix_asm_identify_gcc): Remove unused
4675 function.
4676 * config/mmix/mmix-protos.h (mmix_asm_identify_gcc): Don't
4677 prototype.
7387c700 4678 * config/mmix/mmix.h (ASM_IDENTIFY_GCC): Remove unused macro.
c893e4a4 4679
f4f4d0f8
KH
46802002-01-09 Kazu Hirata <kazu@hxi.com>
4681
4682 * read-rtl.c: Fix formatting.
4683 * real.c: Likewise.
4684 * regclass.c: Likewise.
4685 * regrename.c: Likewise.
4686 * reg-stack.c: Likewise.
4687 * reload1.c: Likewise.
4688 * reload.c: Likewise.
4689 * rtl.c: Likewise.
4690
cc863bea
KH
46912002-01-09 Kazu Hirata <kazu@hxi.com>
4692
4693 * rtlanal.c (find_reg_fusage): Use XEXP instead of SET_DEST
4694 to extract items in the expr_list chain.
4695
7b4dfe3d
RH
46962002-01-09 Richard Henderson <rth@redhat.com>
4697
4698 * config/vax/vax.c (vax_rtx_cost): Never abort.
4699
1d969638
RH
4700 * config/vax/vax.h (REAL_ARITHMETIC): Define.
4701
7d5ab30e
JH
47022002-01-09 Jan Hubicka <jh@suse.cz>
4703
4704 * gcse.c (cprop_jump): Delete insn if simplified jump is no-op.
4705
9503f3d1
RH
47062002-01-09 Richard Henderson <rth@redhat.com>
4707
4708 * config/arm/arm.c (arm_gen_constant): Use trunc_int_for_mode.
4709 Unify code from various alternatives.
4710
42bd17b7
RH
47112002-01-09 Richard Henderson <rth@redhat.com>
4712
4713 * regrename.c (copy_value): Ignore the copy if the source register
4714 is present in the value chain with a narrower mode.
4715
bdca3c33
HB
47162002-01-09 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
4717
cda94cbb
RH
4718 * real.c (c4xtoe, toc4x): Do some special conversion on long doubles
4719 for the c4x target. Also improve layout.
bdca3c33 4720
c73a5e94
RH
47212002-01-09 Richard Henderson <rth@redhat.com>
4722
4723 * config/m32r/m32r.c (move_src_operand): Fix 32-bit int test.
4724 * config/m32r/m32r.md (and ior xor splitters): Swap operands
4725 to match insn patterns.
4726
dd0a18c0
RH
47272002-01-09 Richard Henderson <rth@redhat.com>
4728
4729 * regrename.c (find_oldest_value_reg): Use gen_rtx_raw_REG.
4730 (copyprop_hardreg_forward_1): Likewise.
4731
1fd9ac1e
JDA
47322002-01-09 John David Anglin <dave@hiauly1.hia.nrc.ca>
4733
4734 * pa.md (decrement_and_branch_until_zero): Change predicate for
4735 operand 0 from register_operand to reg_or_nonsymb_mem_operand.
4736
5cb265ec
BM
47372002-01-09 Bryce McKinlay <bryce@waitaki.otago.ac.nz>
4738
4739 * ginclude/stddef.h: Define _BSD_WCHAR_T_DEFINED_ if _BSD_WCHAR_T_
4740 gets undefined. For Darwin.
4741
fcd8fa8b
HB
47422002-01-09 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
4743
4744 * config/c4x/c4x.h: Use PUSH_ARGS and PUSH_ROUNDING for stack passing.
4745
bd3ab23a
MH
47462002-01-09 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
4747
4748 * config/c4x/c4x/md: Remove extraneous constraints from define_splits.
4749
21e16bd6
RH
47502002-01-08 Richard Henderson <rth@redhat.com>
4751
4752 * regrename.c (copy_value): Ignore overlapping copies.
4753
a5376276
RH
47542002-01-08 Richard Henderson <rth@redhat.com>
4755
4756 * config/alpha/alpha.c (alpha_split_conditional_move): Call copy_rtx
4757 as needed to avoid shared structure.
4758
18cf8dda
KH
47592002-01-08 Kazu Hirata <kazu@hxi.com>
4760
4761 * config/h8300/h8300.c (get_shift_alg): Fix 15-bit LSHIFTRT on
4762 H8/300H and H8/S.
4763
16c484c7
JM
47642002-01-08 Joseph S. Myers <jsm28@cam.ac.uk>
4765
4766 * doc/tm.texi (EASY_DIV_EXPR, IMPLICIT_FIX_EXPR,
4767 LONGJMP_RESTORE_FROM_STACK, MAX_INT_TYPE_SIZE): Remove
4768 documentation of obsolete macros.
4769 * system.h: Poison these macros.
4770 * config/1750a/1750a.h, config/a29k/a29k.h, config/alpha/alpha.h,
4771 config/arc/arc.h, config/arm/arm.h, config/avr/avr.h,
4772 config/c4x/c4x.h, config/clipper/clipper.h,
4773 config/convex/convex.h, config/cris/cris.h, config/d30v/d30v.h,
4774 config/dsp16xx/dsp16xx.h, config/elxsi/elxsi.h,
4775 config/fr30/fr30.h, config/h8300/h8300.h, config/i370/i370.h,
4776 config/i386/i386.h, config/i860/i860.h, config/i960/i960.h,
4777 config/ia64/ia64.h, config/m32r/m32r.h, config/m68hc11/m68hc11.h,
4778 config/m68k/m68k.h, config/m88k/m88k.h, config/mcore/mcore.h,
4779 config/mips/mips.h, config/mmix/mmix.h, config/mn10200/mn10200.h,
4780 config/mn10300/mn10300.h, config/ns32k/ns32k.h, config/pa/pa.h,
4781 config/pdp11/pdp11.h, config/pj/pj.h, config/romp/romp.h,
4782 config/rs6000/rs6000.h, config/s390/s390.h, config/sh/sh.h,
4783 config/sparc/sparc.h, config/stormy16/stormy16.h,
4784 config/v850/v850.h, config/vax/vax.h, config/we32k/we32k.h: Remove
4785 definitions and commented out definitions of obsolete macros.
4786 * config/mips/iris5.h (MAX_WCHAR_TYPE_SIZE): Don't define in terms
4787 of MAX_INT_TYPE_SIZE.
4788
14b3e8ef
UW
47892002-01-08 Ulrich Weigand <uweigand@de.ibm.com>
4790
4791 * config/s390/s390.c (s390_preferred_reload_class): Never
4792 return ADDR_REGS if it isn't a subset of the given class.
4793 * config/s390/s390.h (REGISTER_MOVE_COST): Penalize not just
4794 FP_REGS, but all superclasses as well.
4795
4796 * config/s390/s390.c (s390_function_profiler): Fix thinko.
4797
4798 * config/s390/s390.md (cmpdi_ccu_mem, cmpsi_ccu_mem,
4799 cmphi_ccu_mem, cmpqi_ccu_mem): First operand of compare
4800 must not be a const_int.
4801
a693284d
RH
48022002-01-08 Richard Henderson <rth@redhat.com>
4803
4804 * Makefile.in (toplev.o): Depend on options.h.
4805 (gcc.o): Depend on specs.h.
4806
b3ca30df
JJ
48072002-01-08 Jakub Jelinek <jakub@redhat.com>
4808
4809 * expr.c (store_expr): Convert VOIDmode constants back to target's
4810 mode.
4811
24dbb440
GP
48122002-01-08 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
4813
4814 * doc/invoke.texi: Markup gcc as @command. Refer to
4815 http://gcc.gnu.org/onlinedocs/gcc/Contributors.html instead
4816 of http://gcc.gnu.org/thanks.html.
4817
234e114c
DJ
48182002-01-08 Dale Johannesen <dalej@apple.com>
4819
4820 * config/rs6000/rs6000.md: Add missing int register
4821 target case to movdf_low.
4822
0d24f4d1
ZW
48232002-01-08 Zack Weinberg <zack@codesourcery.com>
4824
4825 * Makefile.in (cs-tconfig.h): Don't depend on $(CONFIG_H) or
4826 except.h. Remove commands to define USING_SJLJ_EXCEPTIONS.
4827 (cppinit.o): Depend on except.h.
4828 (gencheck.h, options.h, specs.h, s-gencheck, s-options,
4829 s-specs): New rules.
4830
4831 * configure.in: Don't AC_DEFINE_UNQUOTED PACKAGE or VERSION.
4832 Don't create specs.h/options.h/gencheck.h here. Remove
4833 unnecessary variable settings from last argument of AC_OUTPUT.
4834 * config.in, configure: Regenerate.
4835 * intl.c: Hardcode package name as "gcc".
4836
4837 * cppinit.c: Include except.h.
4838 (builtin_array): Define __USING_SJLJ_EXCEPTIONS__ when
4839 appropriate.
4840 * unwind-dw2.c, unwind-sjlj.c, config/ia64/unwind-ia64.c:
4841 Use #if(n)def __USING_SJLJ_EXCEPTIONS, not #if
4842 (!)USING_SJLJ_EXCEPTIONS.
4843 * doc/cpp.texi: Document __USING_SJLJ_EXCEPTIONS__.
4844
ed722f66
JM
48452002-01-08 Joseph S. Myers <jsm28@cam.ac.uk>
4846
4847 * doc/tm.texi (ASM_OUTPUT_EH_REGION_BEG, ASM_OUTPUT_EH_REGION_END,
4848 ASM_OUTPUT_LABELREF_AS_INT, DOESNT_NEED_UNWINDER, EH_TABLE_LOOKUP,
4849 OBJC_SELECTORS_WITHOUT_LABELS, OMIT_EH_TABLE): Remove
4850 documentation of obsolete macros.
4851 * system.h: Poison these macros.
4852 * config/d30v/d30v.h, config/ns32k/encore.h,
4853 config/stormy16/stormy16.h: Remove definitions and commented out
4854 definitions of obsolete macros.
4855
31e5e29a
NP
4856Tue Jan 8 15:56:41 2002 Nicola Pero <nicola@brainstorm.co.uk>
4857
4858 * objc/objc-act.c (handle_class_ref): Mark the declaration of
4859 %sobjc_class_ref_%s as used - to prevent unwanted compiler
4860 warnings.
4861
bc1fa59c
UW
48622002-01-08 Ulrich Weigand <uweigand@de.ibm.com>
4863
4864 * config/s390/linux.h (ASM_OUTPUT_LABELREF): Remove.
4865 * config/s390/s390.c (s390_emit_epilog): Add REG_FRAME_RELATED_EXPR
4866 to insn adjusting stack/frame pointer.
0d24f4d1 4867 * config/s390/s390.md (reload_la_64, reload_la_31): Do not
bc1fa59c
UW
4868 accept operands that cause the insn to be non-splittable.
4869
a8086abf
GS
48702002-01-08 Graham Stott <grahams@redhat.com>
4871
4872 * c-tree.h (C_TYPE_FIELDS_READONLY): Uppercase macro parameter.
4873 (C_TYPE_FIELDS_VOLATILE): Likewise.
4874 (C_TYPE_BEING_DEFINED): Likewise.
4875 (C_IS_RESERVED_WORD): Likewise.
4876 (C_TYPE_VARIABLE_SIZE): Likewise.
4877 (C_DECL_VARIABLE_SIZE): Likewise.
4878 (C_MISSING_PROTOTYPE_WARNED): Likewise.
4879 (C_SET_EXP_ORIGINAL_CODE): Likewise.
4880 (C_TYPEDEF_EXPLICITLY_SIGNED): Uppercase macro parameter and remove
4881 parenthesis.
4882 (C_DECL_ANTICIPATED): Likewise.
4883 (c_build_type_variant): Add parenthesis.
4884
3f595aa1
JM
48852002-01-08 Joseph S. Myers <jsm28@cam.ac.uk>
4886
4887 * gcc.c (option_map): Remove --version.
4888 (process_command): Handle -fversion following the GNU Coding
4889 Standards. Partially addresses PR other/704.
4890
5bc5a8f9
GS
48912002-01-08 Graham Stott <grahams@redhat.com>
4892
4893 * combine.c (combine_instructions): Fix typo.
4894
16ec4ebf
GS
48952002-01-08 Graham Stott <grahams@redhat.com>
4896
4897 * debug.h: Use "tree" and "rtx" throughout.
4898
4899 * debug.c: Likewise.
4900
4b69f385
NC
49012002-01-08 Nick Clifton <nickc@cambridge.redhat.com>
4902
4903 * dbxout.c (dbxout_symbol_location): If a symbol ref is in the
4904 constant pool, use the pool's version of the symbol instead.
4905
57d1019b
RH
49062002-01-07 Richard Henderson <rth@redhat.com>
4907
4908 * regrename.c (find_oldest_value_reg): Ignore the value chain if
4909 the original register was copied in a mode with a fewer number of
4910 hard registers than the desired mode.
4911 (copyprop_hardreg_forward_1): Likewise.
4912 (debug_value_data): Fix loop test.
4913 * toplev.c (parse_options_and_default_flags): Reenable
4914 -fcprop-registers at -O1.
4915
49162002-01-07 Aldy Hernandez <aldyh@redhat.com>
fa066a23 4917
0d24f4d1
ZW
4918 * config/rs6000/rs6000.c (bdesc_2arg): Add altivec predicates.
4919 (altivec_init_builtins): New node v4si_ftype_v16qi_v16qi.
fa066a23 4920
0d24f4d1
ZW
4921 * config/rs6000/rs6000.h (rs6000_builtins): Add enums for altivec
4922 predicates.
fa066a23 4923
0d24f4d1 4924 * config/rs6000/rs6000.md: Add altivec predicate patterns.
fa066a23 4925
8f949e7e
JDA
49262002-01-07 John David Anglin <dave@hiauly1.hia.nrc.ca>
4927
4928 * pa.c (FUNC_BEGIN_PROLOG_LABEL, current_function_number): Define.
4929 (pa_output_function_prologue): Output local label at the beginning of
4930 the prologue when profiling.
4931 (hppa_profile_hook): Use the local label rather than the function label.
4932 * pa.h (PROFILE_BEFORE_PROLOGUE): Define.
4933
c62f2db5
AH
49342002-01-07 Aldy Hernandez <aldyh@redhat.com>
4935
0d24f4d1
ZW
4936 * config/rs6000/rs6000.c (print_operand): Remove extra space.
4937 (altivec_expand_unop_builtin): Fix thinko.
4938 (altivec_expand_binop_builtin): Same.
4939 (altivec_expand_ternop_builtin): Same.
4940 (altivec_expand_builtin): Same.
c62f2db5 4941
b5235ba7
RH
49422002-01-07 Richard Henderson <rth@redhat.com>
4943
4944 * config/rs6000/xcoff.h (ASM_FILE_START): Reverted to profile_flag.
4945
7d8ac293
JM
49462002-01-07 Jason Merrill <jason@redhat.com>
4947
4948 * unwind-dw2.c (execute_cfa_program): Use < again.
4949
571a03b8
JJ
49502002-01-07 Jakub Jelinek <jakub@redhat.com>
4951
4952 * predict.c (combine_predictions_for_insn): Avoid division by zero.
4953
2e951384
JJ
49542002-01-07 Jakub Jelinek <jakub@redhat.com>
4955
4956 * simplify-rtx.c (simplify_plus_minus): Bump n_ops for NOT.
4957 Don't allow -1 - x -> ~x simplifications in the first pass.
4958
20e26713
AH
49592002-01-07 Aldy Hernandez <aldyh@redhat.com>
4960
0d24f4d1
ZW
4961 * rs6000.c (altivec_expand_ternop_builtin): Don't die on invalid
4962 arguments.
4963 (altivec_expand_binop_builtin): Same.
4964 (altivec_expand_unop_builtin): Same.
4965 (print_operand): Fix typo.
4966 (bdesc_1arg): Add vupk* variants.
20e26713 4967
0d24f4d1 4968 * rs6000.h (rs6000_builtins): Add vupk* enums.
20e26713 4969
0d24f4d1 4970 * rs6000.md: Add altivec_vupk* variants.
20e26713 4971
4dd57c18
JM
49722002-01-07 Joseph S. Myers <jsm28@cam.ac.uk>
4973
4974 * doc/gcc.texi, doc/gccint.texi, doc/cppinternals.texi,
4975 doc/install.texi, doc/invoke.texi, doc/rtl.texi: Update copyright
4976 and last update dates.
4977
0341c5d2
JJ
49782002-01-07 Janis Johnson <janis187@us.ibm.com>
4979
4980 * doc/rtl.texi (Flags): Clean up documentation of RTL flags
4981
c7f3e0b0
MM
49822002-01-07 Marek Michalkiewicz <marekm@amelek.gda.pl>
4983
4984 * config/avr/avr.c (avr_mcu_types): Add new MCU types.
4985 * config/avr/avr.h (CPP_SPEC): Likewise.
4986 (LINK_SPEC): Likewise.
4987 (CRT_BINUTILS_SPECS): Likewise.
4988 * config/avr/t-avr (MULTILIB_MATCHES): Likewise.
4989 * doc/invoke.texi (AVR Options): Document them.
4990
6ba4d630
JH
4991Mon Jan 7 11:59:34 CET 2002 Jan Hubicka <jh@suse.cz>
4992
4993 * unroll.c (copy_loop_body): Always properly update JUMP_LABEL and
4994 LABEL_NUSES.
4995
6253d571
GS
49962002-01-07 Graham Stott <grahams@redhat.com>
4997
0d24f4d1
ZW
4998 * config/i386/i386.h: Update copyright date.
4999 (HALF_PIC_PTR): Add parenthesis.
5000 (OPTIMIZATION_OPTIONS): Whitespace, add parenthesis and wrap.
5001 (CONSTANT_ALIGNMENT): Add parenthesis.
5002 (DATA_ALIGNMENT): Likewise.
5003 (LOCAL_ALIGNMENT): Likewise.
5004 (FUNCTION_ARG_BOUNDARY): Whitespace, add parenthesis and wrap.
5005 (IS_STACK_MODE): Uppercase macro parameter, add parenthesis and wrap.
5006 (CONDITIONAL_REGISTER_USAGE): Wrap in do {...} while (0).
5007 (HARD_REGNO_NREGS): Add paranethesis.
5008 (VALID_SSE_REG_MODE): Whitespace.
5009 (VALID_MMX_REG_MODE): Whitespace.
5010 (VALID_FP_MODE_P): Uppercase macros parameter and whitespace.
5011 (ix86_hard_regno_mode_ok): Add parenthesis.
5012 (HARD_REGNO_CALLER_SAVE_MODE): Whitespace.
5013 (RETURN_IN_MEMORY): Whitespace.
5014 (N_REG_CLASSES): Add parenthesis.
5015 (INTEGER_CLASS_P): Add parenthesis and wrap.
5016 (FLOAT_CLASS_P): Likewise.
5017 (SSE_CLASS_P): Likewise.
5018 (MMX_CLASS_P): Likewise.
5019 (MAYBE_INTEGER_CLASS_P): Likewise.
5020 (MAYBE_FLOAT_CLASS_P): Likewise.
5021 (MAYBE_SSE_CLASS_P): Likewise.
5022 (MAYBE_MMX_CLASS_P): Likewise.
5023 (Q_CLASS_P): Likewise.
5024 (GENERAL_REGNO_P): Uppercase macro parameter.
5025 (REX_INT_REGNO_P): Uppercase macro parameter and wrap.
5026 (FP_REGNO_P): Likewise.
5027 (ANY_FP_REGNO_P): Uppercase macro parameter.
5028 (SSE_REGNO_P): Likewise.
5029 (SSE_REGNO): Likewise.
5030 (SSE_REG_P): Likewise.
5031 (SSE_FLOAT_MODE_P): Likewise.
5032 (MMX_REGNO_P): Likewise.
5033 (MMX_REG_P):Likewise.
5034 (STACK_REG_P): Likewise.
5035 (NON_STACK_REG_P): Likewise.
5036 (STACK_TOP_P): Likewise.
5037 (CONVERT_HARD_REGISTER_TO_SSA_P): Add parenthesis.
5038 (PREFERRED_RELOAD_CLASS): Add parenthesis and whitespace.
5039 (SECONDARY_MEMORY_NEEDED): Likewise.
5040 (SECONDARY_OUTPUT_RELOAD_CLASS): Whitespace.
5041 (MD_ASM_CLOBBERS): Whitespace and wrap.
5042 (MUST_PASS_IN_STACK): Whitespace and wrap.
5043 (RETURN_POPS_ARGS): Add parenthesis.
5044 (INIT_CUMULATIVE_ARGS): Likewise.
5045 (FUNCTION_ARG): Likewise.
5046 (FUNCTION_OK_FOR_SIBCALL): Add parenthesis and whitespace.
5047 (SETUP_INCOMING_VARARGS): Likewise.
5048 (BUILD_VA_LIST_TYPE): Add parenthesis.
5049 (EXPAND_BUILTIN_VA_START): Uppercase macro paremeters and add
5050 parenthsis.
5051 (EXPAND_BUILTIN_VA_ARG): Likewise.
5052 (FUNCTION_PROFILER): Wrap in do { ... } while (0) and add parenthesis.
5053 (INITIALIZE_TRAMPOLINE): Add parenthesis.
5054 (INITIAL_ELIMINATION_OFFSET): Likewise.
5055 (REGNO_OK_FOR_INDEX_P): Add parenthesis.
5056 (REGNO_OK_FOR_BASE_P): Likewise.
5057 (REGNO_OK_FOR_SIREG_P): Add parenthesis and wrap.
5058 (REGNO_OK_FOR_DIREG_P): Likewise.
5059 (REG_OK_FOR_INDEX_P): Whitespace.
5060 (REG_OK_FOR_BASE_P): Whitespace.
5061 (GO_IF_LEGITIMATE_ADDRESS): Wrap in do { ... } while (0) and add
5062 parenthesis.
5063 (FIND_BASE_TERM): Fix typo.
5064 (LEGITIMIZE_ADDRESS): Wrap in { .. } while (0) and add parenthesis.
5065 (REWRITE_ADDRESS): Uppercase macro parameter and whitespace.
5066 (SYMBOLIC_CONST; Whitespace.
5067 (GO_IF_MODE_DEPENDENT_ADDRESS):Wrap in { .. } while (0) and wrap.
5068 (ENCODE_SECTION_INFO): Whitespace.
5069 (FINALIZE_PIC): Remove do { ... } while (0).
5070 (PROMOTE_MODE): Wrap in do { ... } while (0).
5071 (CONST_COSTS): Whitespace.
5072 (RTX_COSTS): Add paramethesis, whitespace and wrap.
5073 (REGISTER_MOVE_COST): Add parenthesis.
5074 (MEMORY_MOVE_COST): Likewise.
5075 (EXTRA_CC_MODES): Whitespace.
5076 (SELECT_CC_MODE): Add parenthesis and whitespace.
5077 (DBX_REGISTER_NUMBER): Uppercase macro parameter and add parenthsis.
5078 (ASM_PREFERRED_EH_DATA_FORMAT): Add parenthesis and whitespace.
5079 (ASM_OUTPUT_LABEL): Add paramethesis.
5080 (ASM_OUTPUT_REG_PUSH): Add parenthesis and whitespace.
5081 (ASM_OUTPUT_REG_POP): Likewise.
5082 (ASM_OUTPUT_ADDR_VEC_ELT): Add parenthesis.
5083 (ASM_OUTPUT_ADDR_DIFF_ELT): Likewise.
d9a5f180 5084
07933f72
GS
5085 * config/i386/i386.c: Update copyright.
5086 (CHECK_STACK_LIMIT): Add parenthesis.
5087 (AT_BP): Uppercase macro parameter.
5088 (x86_64_int_parameter_registers): Constify.
5089 (x86_64_int_return_registers): Likewise.
5090 (ix86_compare_op0): Use rtx.
5091 (construct_container): Constify INTREG parameter.
5092 (function_arg): Use rtx.
5093
0b4d32c9
GS
5094 * diagnostic.h: Update copyright date.
5095 (output_buffer_state): Add parenthesis.
5096 (output_buffer_format_args): Likewise.
5097
6253d571
GS
5098 * combine.c (combine_instructions): Replace XEXP (links, 0)
5099 with link.
5100
68f3f6f1
L
51012002-01-06 H.J. Lu <hjl@gnu.org>
5102
5103 * cfgcleanup.c (thread_jump): Fix 2 typos.
5104
51052002-01-06 Aldy Hernandez <aldyh@redhat.com>
480f7f3a 5106
0d24f4d1 5107 * config.gcc: Add support for --enable-altivec.
480f7f3a 5108
13b8c631
CR
51092002-01-06 Craig Rodrigues <rodrigc@gcc.gnu.org>
5110
5111 * emit-rtl.c (gen_highpart): Add check for NULL_RTX.
5112
58ad89b1
JJ
51132002-01-06 Jakub Jelinek <jakub@redhat.com>
5114
5115 * objc/objc-act.c (handle_impent): Use assemble_variable to emit
5116 __objc_class_name_*.
5117
e403b4bc
CR
51182002-01-06 Craig Rodrigues <rodrigc@gcc.gnu.org>
5119
5120 * doc/install.texi (sparcv9-*-solaris2*): Add documentation.
5121
e41c7831
RH
51222002-01-06 Richard Henderson <rth@redhat.com>
5123
5124 * reorg.c (emit_delay_sequence): Remove death notes, not merely
5125 nop them out. Increment label reference count for REG_LABEL.
5126 (fill_slots_from_thread): Frob label reference count around
5127 delete_related_insns.
5128
3b3b1e32
RH
51292002-01-05 Richard Henderson <rth@redhat.com>
5130
5131 * cfgcleanup.c (try_forward_edges): Detect infinite loops while
5132 jump threading.
5133
c28abdf0
RH
51342002-01-05 Richard Henderson <rth@redhat.com>
5135
5136 * c-decl.c (c_expand_body): Don't call outlining_inline_function.
5137 * integrate.c (output_inline_function): Likewise.
5138 * toplev.c (rest_of_compilation): Do it here instead. Move call
5139 to remove_unnecessary_notes after emitting abstract instance.
5140 Force an emitted nested function to have its parent emited as well.
5141 * dwarf2out.c (loc_descriptor_from_tree): Read mode after checking
5142 for null.
5143 (rtl_for_decl_location): Do not look at reload data structures
5144 before reload has run.
5145
c4f2c499
KH
51462002-01-05 Kazu Hirata <kazu@hxi.com>
5147
5148 * cse.c: Fix formatting.
5149 * dwarf2asm.c: Likewise.
5150 * dwarf2out.c: Likewise.
5151 * explow.c: Likewise.
5152 * expmed.c: Likewise.
5153 * function.c: Likewise.
5154 * gcov.c: Likewise.
5155 * gencheck.c: Likewise.
5156 * genrecog.c: Likewise.
5157 * ggc-common.c: Likewise.
5158 * ggc-page.c: Likewise.
5159 * global.c: Likewise.
5160
cf0d9408
KH
51612002-01-05 Kazu Hirata <kazu@hxi.com>
5162
5163 * combine.c: Fix formatting.
5164
bedca03a
CR
51652002-01-05 Craig Rodrigues <crodrigu@bbn.com>
5166
5167 PR middle-end/1557
5168 * config/ia64/ia64.h (RENAME_EXTENDED_BLOCKS): Remove.
5169
0134bf2d
DE
51702002-01-05 David Edelsohn <edelsohn@gnu.org>
5171
5172 * config/rs6000/rs6000.h (TARGET_POWERPC): For IN_LIBGCC2, define
5173 as 1 for __powerpc64__ as well.
5174
5175 * config/rs6000/t-aix43 (T_ADAFLAGS): Define.
5176
5177 * alias.c (find_base_value, PLUS/MINUS): If we found a base,
5178 return it.
5179
9ca88d5a
DB
51802002-01-05 Daniel Berlin <dan@dberlin.org>
5181
5182 * lcm.c: Revert change, due to performance regression it causes on
5183 SPEC because it's slightly more conservative (sigh, I hate
5184 edge-based LCM).
0d24f4d1 5185
1c570418
JH
5186Sat Jan 5 11:52:05 CET 2002 Jan Hubicka <jh@suse.cz>
5187
5188 * cfgcleanup.c (try_forward_edges): Allow multiple jump threading.
5189
d83bb9f7
NB
51902002-01-05 Neil Booth <neil@daikokuya.demon.co.uk>
5191
5192 * doc/cppinternals.texi: Update.
5193
3e0f61ac
HPN
51942002-01-05 Hans-Peter Nilsson <hp@bitrange.com>
5195
5196 * doc/invoke.texi (Option Summary) <MMIX Options>: Document
5197 -mbranch-predict, -mreg-stack-fill-bug-workaround and their
5198 negatives.
5199 (MMIX Options): Ditto. Fix item/itemx typo for -mno-zero-extend.
5200 * config/mmix/mmix.c (mmix_target_asm_function_prologue): Rework
5201 kludge for pre-october-14th mmix versions to handle new-found bug
5202 with PUSHJ/PUSHGO and the register stack.
5203 * config/mmix/mmix.h (struct machine_function): Rename member
5204 has_call_value_without_parameters to has_call_without_parameters.
5205 All referers changed.
5206 (TARGET_MASK_REG_STACK_FILL_BUG, TARGET_DEFAULT
5207 TARGET_MASK_BRANCH_PREDICT): New macros.
5208 (TARGET_SWITCHES): New options -mreg-stack-fill-bug-workaround,
5209 -mno-reg-stack-fill-bug-workaround.
5210 * config/mmix/mmix.md ("call"): Set struct machine member
5211 has_call_without_parameters.
5212
4deaa2f8
JH
5213Sat Jan 5 02:20:22 CET 2002 Jan Hubicka <jh@suse.cz>
5214
5215 * cfgcleanup.c (thread_jump): Fix handling of reversed branches.
5216
9f16e871
JH
5217Sat Jan 5 01:35:29 CET 2002 Jan Hubicka <jh@suse.cz>
5218
5219 * cfgcleanup.c: Include tm_p.h
5220 (mark_effect): Fix handling of hard register; fix handling of SET
5221
96eb1157
KH
52222002-01-04 Kazu Hirata <kazu@hxi.com>
5223
5224 * config/h8300/h8300.md (anonymous patterns): Check that
5225 operands are registers before using REGNO on them.
5226
48180d68
RM
52272002-01-03 Roland McGrath <roland@frob.com>
5228
5229 * doc/invoke.texi (RS/6000 and PowerPC Options): Add -mcall-gnu.
5230
b0832fe1
JJ
52312002-01-04 Jakub Jelinek <jakub@redhat.com>
5232
5233 * tree.h (expand_expr_stmt_value): Add maybe_last argument.
5234 * c-common.h (genrtl_expr_stmt_value): Likewise.
5235 * stmt.c (expand_expr_stmt): Pass 1 as maybe_last.
5236 (expand_expr_stmt_value): Add maybe_last argument.
5237 Don't warn about statement with no effect if it is the last statement
5238 in expression statement.
5239 * c-semantics.c (genrtl_expr_stmt): Pass 1 as maybe_last.
5240 (genrtl_expr_stmt_value): Add maybe_last argument, pass it down to
5241 expand_expr_stmt_value.
5242 (expand_stmt) [EXPR_STMT]: Pass 1 as maybe_last to
5243 genrtl_expr_stmt_value if t is the last EXPR_STMT in its scope.
5244 * expr.c (expand_expr) [LABELED_BLOCK_EXPR, LOOP_EXPR]: Pass 1
5245 as maybe_last to expand_expr_stmt_value.
5246
c1e14513
JL
5247Fri Jan 4 11:45:05 2002 Jeffrey A Law (law@redhat.com)
5248
0d24f4d1
ZW
5249 * c-common.c (c_expand_start_cond): Expect the IF_STMT node to
5250 be passed in, do not build it.
5251 (c_begin_if_stmt): New function.
5252 (c_begin_while_stmt, c_finish_while_stmt_cond): Likewise.
5253 * c-common.h (c_expand_start_cond): Update prototype.
5254 (c_begin_if_stmt): Prototype new function.
5255 (c_begin_while_stmt, c_finish_while_stmt_cond): Likewise.
5256 * c-parse.in (if_prefix): Use c_begin_if_stmt,
5257 c_begin_while_stmt and c_finish_while_stmt_cond.
c1e14513 5258
b6ec437a
WC
52592002-01-04 William Cohen <wcohen@redhat.com>
5260
5261 * config/pa/elf.h (ASM_FILE_START): Reverted to profile_flag.
5262 * config/pa/pa-linux.h (ASM_FILE_START): Likewise.
5263 * config/pa/pa64-hpux.h (ASM_FILE_START): Likewise.
5264 * config/pa/som.h (ASM_FILE_START): Likewise.
5265
ead39bdf 52662002-01-04 Daniel Berlin <dan@cgsoftware.com>
517b711f
DB
5267
5268 * lcm.c: Include df.h.
5269 Add available_transfer_function prototype.
5270 (compute_available): Rework to use iterative dataflow framework.
5271 (struct bb_info): s/bb_info/lcm_bb_info/g to avoid conflict
5272 with bb_info in df.h
5273 (available_transfer_function): New function.
5274
5275 * Makefile.in (lcm.o): add df.h to dependencies.
5276
551cc6fd
RH
52772002-01-04 Richard Henderson <rth@redhat.com>
5278
5279 * config/alpha/alpha.c (some_operand): Accept HIGH.
5280 (input_operand): Likewise; accept simple references to globals.
5281 (alpha_const_ok_for_letter_p): New, outlined from alpha.h.
5282 (alpha_const_double_ok_for_letter_p): Likewise.
5283 (alpha_extra_constraint): Likewise.
5284 (alpha_preferred_reload_class): Likewise. Do not force
5285 symbolic constants to memory.
5286 (alpha_legitimate_address_p): Accept simple references
5287 to small_symbolic_operand.
5288 (alpha_legitimize_address): New arg scratch. Be prepared to be
5289 called when no_new_pseudos. Emit simple symbolic references.
5290 Split integers into low, high, and rest.
5291 (alpha_expand_mov): Use alpha_legitimize_address.
5292 (some_small_symbolic_mem_operand): New.
5293 (split_small_symbolic_mem_operand): New.
5294 * config/alpha/alpha-protos.h: Update.
5295 * config/alpha/alpha.h (CONST_OK_FOR_LETTER_P): Out-line.
5296 (CONST_DOUBLE_OK_FOR_LETTER_P): Likewise.
5297 (EXTRA_CONSTRAINT): Likewise.
5298 (PREFERRED_RELOAD_CLASS): Likewise.
5299 (LEGITIMIZE_ADDRESS): Update for alpha_legitimize_address change.
5300 (PREDICATE_CODES): Update.
5301 * config/alpha/alpha.md: New post-reload splitters to convert
5302 simplfied symbolic operands to the form that references $29.
5303 (divide expanders): Use emit_move_insn, not gen_movdi_er_high_g.
5304 (movdi_er_nofix, movdi_er_fix): Accept any symbolic operand.
5305
1eaea054
RH
53062002-01-03 Richard Henderson <rth@redhat.com>
5307
5308 * local-alloc.c (function_invariant_p): Update commentary.
5309
c4cc12b7
L
53102002-01-04 H.J. Lu <hjl@gnu.org>
5311
5312 * toplev.c (rest_of_compilation): Fix a typo when calling
5313 cleanup_cfg.
5314
173bf5be
KH
53152002-01-03 Kazu Hirata <kazu@hxi.com>
5316
5317 * c-common.c: Fix formatting.
5318 * diagnostic.c: Likewise.
5319 * doloop.c: Likewise.
5320 * dwarf2out.c: Likewise.
5321
187462ac
KH
53222002-01-03 Kazu Hirata <kazu@hxi.com>
5323
5324 * config/h8300/h8300.c (output_logical_op): Use 'not.w' instead
5325 of 'neg.w' when xoring with 0x0000ffff or 0xffff0000.
5326
5d8ebbd8
NB
53272002-01-03 Neil Booth <neil@daikokuya.demon.co.uk>
5328
5329 * cpperror.c: Update comments and copyright.
5330 * cppexp.c, cppfiles.c, cpphash.c, cpphash.h, cppinit.c,
5331 cpplex.c, cpplib.c, cpplib.h, cppmacro.c, cppmain.c: Similarly.
5332
518c1311
JDA
53332002-01-03 John David Anglin <dave@hiauly1.hia.nrc.ca>
5334
5335 * collect2.c (main): Use strcmp when testing for "-shared".
5336
d15a58c0
NB
53372002-01-03 Neil Booth <neil@daikokuya.demon.co.uk>
5338
5339 * cppmacro.c: Don't include intl.h. Update comments.
5340 (new_number_token): Allocate enough buffer for 64-bit unsigned
5341 integers; update prototype.
5342 * cppmain.c: Update comments.
5343
70f4f91c
WC
53442002-01-03 William Cohen <wcohen@redhat.com>
5345
5346 * function.h (struct function): Add profile.
5347 (current_function_profile): New.
5348 doc/extend.texi: Update documentation.
5349 * final.c (final_start_function): Use current_function_profile
5350 instead of profile_flag.
5351 (profile_after_prologue): Likewise.
5352 * function.c (expand_function_start): Likewise.
5353 (expand_function_start): Likewise.
c4cc12b7 5354 * config/alpha/alpha.c (direct_call_operand):
70f4f91c
WC
5355 (alpha_does_function_need_gp): Likewise.
5356 (alpha_expand_prologue): Likewise.
5357 * config/arm/arm.c (arm_expand_prologue): Likewise.
5358 thumb_expand_prologue: Likewise.
5359 * config/d30v/d30v.c (d30v_stack_info): Likewise.
5360 * config/fr30/fr30.c (MUST_SAVE_RETURN_POINTER): Likewise.
5361 (fr30_expand_prologue): Likewise.
5362 * config/i386/cygwin.h (SUBTARGET_PROLOGUE): Likewise.
5363 * config/i386/i386.c (ix86_osf_output_function_prologue): Likewise.
5364 * config/i386/i386.h (FINALIZE_PIC): Likewise.
5365 * config/i386/win32.h (SUBTARGET_PROLOGUE): Likewise.
5366 * config/i960/i960.c (i960_output_function_prologue): Likewise.
5367 * config/ia64/ia64.c (ia64_compute_frame_size): Likewise.
5368 * config/m32r/m32r.c (MUST_SAVE_RETURN_ADDR): Likewise.
5369 (m32r_expand_prologue): Likewise.
5370 * config/m88k/m88k.c (m88k_layout_frame): Likewise.
5371 (m88k_expand_prologue): Likewise.
5372 * config/m88k/m88k.h (ADJUST_INSN_LENGTH): Likewise.
5373 * config/mips/mips.c (compute_frame_size): Likewise.
5374 (mips_expand_prologue): Likewise.
5375 (mips_can_use_return_insn): Likewise.
5376 * config/pa/elf.h (ASM_FILE_START): Likewise.
5377 * config/pa/pa-linux.h (ASM_FILE_START): Likewise.
5378 * config/pa/pa64-hpux.h (ASM_FILE_START): Likewise.
5379 * config/pa/som.h (ASM_FILE_START): Likewise.
5380 * config/romp/romp.c (romp_using_r14): Likewise.
5381 * config/rs6000/rs6000.c (first_reg_to_save): Likewise.
5382 (rs6000_stack_info): Likewise.
5383 * config/rs6000/sysv4.h (ASM_DECLARE_FUNCTION_NAME): Likewise.
2fd17409 5384 * config/rs6000/xcoff.h (ASM_FILE_START): Likewise.
70f4f91c
WC
5385 * config/v850/v850.c (compute_register_save_size): Likewise.
5386
cb1ac742
JJ
53872002-01-03 Jakub Jelinek <jakub@redhat.com>
5388
5389 * simplify-rtx.c (simplify_binary_operation) [DIV]: If
5390 gen_lowpart_common fails, use gen_lowpart_SUBREG.
5391
61d951df 53922002-01-03 Turly O'Connor <turly@apple.com>
cb1ac742 5393
61d951df
TC
5394 * darwin.c (machopic_output_possible_stub_label): Don't generate
5395 stub routines for pseudo-stubs which we've just defined.
5396
505ddab6
KH
53972002-01-03 Kazu Hirata <kazu@hxi.com>
5398
5399 * builtins.c: Fix formatting.
5400 * c-typeck.c: Likewise.
5401 * combine.c: Likewise.
5402 * expr.c: Likewise.
5403 * loop.c: Likewise.
5404
b7e30d8a
AS
54052002-01-03 Andreas Schwab <schwab@suse.de>
5406
5407 * cppfiles.c (_cpp_pop_file_buffer): Change return type to bool
5408 and return true if _cpp_push_next_buffer pushed a new include
5409 file.
5410 * cpplib.c (_cpp_pop_buffer): Only call obstack_free if
5411 _cpp_pop_file_buffer did not push a new file.
5412 * cpphash.h (_cpp_pop_file_buffer): Update declaration.
5413
ff81832f
EC
54142002-01-02 Eric Christopher <echristo@redhat.com>
5415
5416 * final.c (final_scan_insn): Change 0 -> NULL_RTX in
5417 FIND_REG_INC_NOTE call. Update copyright.
5418 * loop.c (canonicalize_condition): Ditto.
5419 * reorg.c (delete_scheduled_jump): Ditto.
5420
8e42ace1
KH
54212002-01-03 Kazu Hirata <kazu@hxi.com>
5422
5423 * gcse.c: Fix formatting.
5424
fb2bf631
GS
54252002-01-03 Graham Stott <grahams@redhat.com>
5426
5427 * mkconfig.sh: Output to config.h, hconfig.h and tconfig.h
5428 forward defs for struct tags rtx_def, union_tree, rtvec_def
6253d571 5429 also output corresponding typedefs for rtx, tree, and rtvec.
fb2bf631
GS
5430
5431 * system.h: Move forward defs for struct tags rtx_def, union_tree,
5432 rtvec_def along with corresponding typedefs for rtx, tree, and
6253d571 5433 rtvec to config.h, hconfig.h, tconfig.h.
fb2bf631
GS
5434
54352002-01-03 Graham Stott <grahams@redhat.com>
b9daac31
GS
5436
5437 * tree.h: Update copyright date.
5438 (IS_EXPR_CODE_CLASS): Add parenthesis.
5439 (TREE_SET_CODE): Add whitespace.
5440 (TREE_CHECK): Add parenthesis.
5441 (TREE_CLASS_CODE): Add parenthesis and wrap long line.
5442 (CST_OR_CONSTRUCTOR_CHECK):
5443 (EXPR_CHECK): Add parenthis, whitespace and wrap line.
5444 (TREE_SYMBOL_REFERENCED): Whitespace.
5445 (INT_CST_LT): Likewise.
5446 (INT_CST_LT_UNSIGNED): Likewise.
5447 (tree_real_cst): Unwrap comment.
5448 (tree_string): Likewise.
5449 (tree_complex): Likewise.
5450 (IDENTIFIER_POINTER): correct cast.
5451 (SAVE_EXPR_CONTEXT): Whitespace.
5452 (EXPR_WFL_FILENAME_NODE): Likewise.
5453 (EXPR_WFL_FILENAME): Remove parenthesis.
5454 (DECL_ORIGIN): Add parenthesis.
5455 (DECL_FROM_INLINE): Use NULL_TREE.
5456 (build_int_2): Whitespace.
5457 (build_type_variant): Add parenthesis.
5458
5459 * gcc/jcf-parse.c: Update copyright date.
5460 (yyparse): Constify resource_filename.
5461
f52eda29
GS
54622002-01-03 Graham Stott <grahams@redhat.com>
5463
5464 * rtl.h: Update copyright date.
5465 (RTL_CHECK1): Wrap long line.
5466 (RTL_CHECK2): Likewise.
5467 (RTL_CHECKC1): Wrap long line and whitespace.
5468 (RTL_CHECKC2): Likewise.
5469 (XWINT): Whitespace.
5470 (XINT): Likewise.
5471 (XSTR): Likewise.
5472 (XEXP): Likewise.
5473 (XVEC): Likewise.
5474 (XMODE): Likewise.
5475 (XBITMAP): Likewise.
5476 (XTREE): Likewise.
5477 (XBBDEF): Likewise.
5478 (XTMPL): Likewise.
5479 (X0WINT): Likewise.
5480 (X0INT):Likewise.
5481 (X0UINT): Likewise.
5482 (X0STR): Likewise.
5483 (X0EXP): Likewise.
5484 (X0VEC): Likewise.
5485 (X0MODE): Likewise.
5486 (X0BITMAP): Likewise.
5487 (X0TREE): Likewise.
5488 (X0BBDEF): Likewise.
5489 (X0ADVFLAGS): Likewise.
5490 (X0CSELIB): Likewise.
5491 (X0MEMATTR): Likewise.
5492 (XCWINT): Likewise.
5493 (XCINT): Likewise.
5494 (XCUINT): Likewise.
5495 (XCSTR): Likewise.
5496 (XCEXP): Likewise.
5497 (XCVEC): Likewise.
5498 (XCMODE): Likewise.
5499 (XCBITMAP): Likewise.
5500 (XCTREE): Likewise.
5501 (XCBBDEF): Likewise.
5502 (XCADVFLAGS): Likewise.
5503 (XCCSELIB): Likewise.
5504 (XC2EXP): Likewise.
5505 (INSN_UID): Likewise.
5506 (PREV_INSN): Likewise.
5507 (PATTERN): Likewise.
5508 (INSN_CODE): Likewise.
5509 (PUT_REG_NOTE_KIND): Likewise.
5510 (CODE_LABEL_NUMBER): Likewise.
5511 (NOTE_SOURCE_FILE): Likewise.
5512 (NOTE_BLOCK): Likewise.
5513 (NOTE_EH_HANDLER): Likewise.
5514 (NOTE_RANGE_INFO): Likewise.
5515 (NOTE_LIVE_INFO): Likewise.
5516 (NOTE_BASIC_BLOCK): Likewise.
5517 (NOTE_EXPECTED_VALUE): Likewise.
5518 (NOTE_LINE_NUMBER): Likewise.
5519 (LABEL_NAME): Likewise.
5520 (LABEL_NUSES): Likewise.
5521 (LABEL_ALTERNATE_NAME): Likewise.
5522 (ADDRESSOF_DECL): Likewise.
5523 (JUMP_LABEL): Likewise.
5524 (LABEL_NEXTREF): Likewise.
5525 (REGNO): Likewise.
5526 (ORIGINAL_REGNO: Likewise.
5527 (HARD_REGISTER_NUM_P): Add parenthesis.
5528 (SUBREG_REG): Whitespace.
5529 (SUBREG_BYTE): Likewise.
5530 (ASM_OPERANDS_TEMPLATE): Remove parenthesis.
5531 (ASM_OPERANDS_OUTPUT_CONSTRAINT): Likewise.
5532 (ASM_OPERANDS_OUTPUT_IDX): Likewise.
5533 (ASM_OPERANDS_INPUT_VEC): Likewise.
5534 (ASM_OPERANDS_INPUT_CONSTRAINT_VEC): Likewise.
5535 (ASM_OPERANDS_INPUT): Likewise.
5536 (ASM_OPERANDS_INPUT_LENGTH): Likewise.
5537 (ASM_OPERANDS_INPUT_CONSTRAINT_EXP): Likewise.
5538 (ASM_OPERANDS_INPUT_CONSTRAINT): Likewise.
5539 (ASM_OPERANDS_INPUT_MODE): Likewise.
5540 (ASM_OPERANDS_SOURCE_FILE): Likewise.
5541 (ASM_OPERANDS_SOURCE_LINE): Likewise.
5542 (MEM_SET_IN_STRUCT_P): Minor reformat.
5543 (TRAP_CONDITION): Whitespace.
5544 (TRAP_CODE): Likewise.
5545 (COND_EXEC_TEST): Likewise.
5546 (COND_EXEC_CODE): Likewise.
5547 (FIND_REG_INC_NOTE): Uppercase macro args and add parenthesis.
5548 (PHI_NODE_P): Add parenthesis.
5549 (plus_constant): Whitespace and add parenthesis.
5550
e03f5d43
KH
55512002-01-03 Kazu Hirata <kazu@hxi.com>
5552
5553 * config/avr/avr.c: Fix comment typos.
5554 * config/c4x/c4x.md: Likewise.
5555 * config/dsp16xx/dsp16xx.h: Likewise.
5556 * config/dsp16xx/dsp16xx.md: Likewise.
5557 * config/i386/i386.md: Likewise.
5558 * config/ia64/ia64.c: Likewise.
5559 * config/m32r/m32r.h: Likewise.
5560 * config/m68hc11/m68hc11.md: Likewise.
5561 * config/mmix/mmix.c: Likewise.
5562 * config/mn10200/mn10200.c: Likewise.
5563 * config/romp/romp.c: Likewise.
5564 * config/sh/sh.c: Likewise.
5565 * config/stormy16/stormy16.c: Likewise.
5566 * config/stormy16/stormy16.h: Likewise.
5567 * config/stormy16/stormy16.md: Likewise.
5568
97e300e9
GS
55692002-01-03 Graham Stott <grahams@redhat.com>
5570
5571 * loop.h: Update copyright date.
0d24f4d1
ZW
5572 (LOOP_MOVABLES): Fix typo.
5573 (LOOP_REGS): Likewise.
5574 (LOOP_IVS): Likewise.
ff81832f 5575
745b26b3
GS
55762002-01-03 Graham Stott <grahams@redhat.com>
5577
5578 * cppinit.c: Update copyright date.
5579 Don't include output.h
5580 * Makefile.in: Update copyright date.
5581 Update dependency.
5582
0a379b7a
CR
55832002-01-02 Craig Rodrigues <rodrigc@gcc.gnu.org>
5584
5585 PR c/5226
5586 * invoke.texi (-mthreads): Remove from documented RS/6000 options.
5587 (-pthread) Add to RS/6000 options.
5588
a8154559
KH
55892002-01-02 Kazu Hirata <kazu@hxi.com>
5590
5591 * except.c: Fix comment typos.
5592 * loop.c: Likewise.
5593 * varasm.c: Likewise.
5594 * doc/tm.texi: Fix a typo.
5595
e6ecc89b
JJ
55962002-01-02 Jakub Jelinek <jakub@redhat.com>
5597
5598 * c-typeck.c (output_init_element): Allow initializing static storage
5599 duration objects with compound literals.
5600
d1094b40
RH
56012002-01-02 Richard Henderson <rth@redhat.com>
5602
5603 * objc/objc-act.c (hack_method_prototype): Clear current_function_decl
5604 after abusing it.
5605
0c5d8c82
KG
56062002-01-02 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
5607
5e65297b
KG
5608 * gcc.c (default_compilers): Const-ify.
5609 * mips-tdump.c (stab_names): Likewise.
5610 * mips-tfile.c (map_coff_types, map_coff_storage,
5611 map_coff_sym_type, map_coff_derived_type, stabs_symbol,
5612 pseudo_ops_t, pseudo_ops): Likewise.
5613 * protoize.c (default_include): Likewise
5614
0c5d8c82
KG
5615 * real.c (GET_REAL, PUT_REAL): Don't cast away const-ness.
5616 (ezero, ehalf, eone, etwo, e32, elog2, esqrt2, epi): Const-ify.
5617 Add array size in declaration.
5618 (endian, emov, eisneg, eisinf, eisnan, eiisnan, eiisneg, emovi,
5619 emovo, emovz, eiisinf, ecmpm, eaddm, esubm, m16m, edivm, emulm,
5620 esub, eadd, eadd1, ediv, emul, e53toe, e64toe, e113toe, e24toe,
5621 etoe113, etoe64, etoe53, etoe24, ecmp, eround, ltoe, ultoe,
5622 eifrac, euifrac, e24toasc, e53toasc, e64toasc, e113toasc, etoasc,
5623 efloor, efrexp, eldexp, eremain, dectoe, etodec, ibmtoe, etoibm,
5624 c4xtoe, etoc4x, uditoe, ditoe, etoudi, etodi, esqrt, etens,
5625 emtens, make_nan): Const-ify.
5626 (TFbignan, TFlittlenan, XFbignan, XFlittlenan, DFbignan,
5627 DFlittlenan, SFbignan, SFlittlenan): Make static and const-ify.
5628
817e13c4
JM
56292002-01-02 Joseph S. Myers <jsm28@cam.ac.uk>
5630
5631 * config.gcc (ia64-*-*): Set extra_headers.
5632 (alpha*-dec-osf*): Likewise. Don't use alpha/t-osf.
5633 * config/alpha/t-osf: Remove.
5634 * config/ia64/t-ia64 (EXTRA_HEADERS): Remove.
5635
98095e2b
DE
56362002-01-02 David Edelsohn <edelsohn@gnu.org>
5637
5638 * config/rs6000/t-aix43: Revert previous change.
5639
a4200657
JM
56402002-01-02 Jason Merrill <jason@redhat.com>
5641
5642 * c-decl.c (c_expand_body): Call outlining_inline_function when
5643 emitting an inline function out of line.
5644
54ba1f0d
RH
56452002-01-02 Richard Henderson <rth@redhat.com>
5646
5647 * dwarf2out.c (limbo_die_node): Add created_for member.
5648 (new_die): New argument created_for. Update all callers.
5649 (mark_limbo_die_list): New.
5650 (dwarf2out_init): Register limbo_die_list as a root.
5651 (dwarf2out_finish): Force insert limbo dies into their function
5652 context.
5653
323728aa
NS
56542002-01-02 Nathan Sidwell <nathan@codesourcery.com>
5655
5656 PR c++/5089
5657 * doc/invoke.texi (-Wold-style-cast): Only warn about non-void casts.
5658
aefc5826
KH
56592002-01-02 Kazu Hirata <kazu@hxi.com>
5660
5661 * config/h8300/fixunssfsi.c: Update copyright.
5662 Fix comment typos.
5663 Fix formatting.
5664 * config/h8300/h8300.c: Update copyright.
5665 Eliminate warnings.
5666
b1c9bc51
KH
56672002-01-02 Kazu Hirata <kazu@hxi.com>
5668
5669 * config/romp/romp.c: Fix comment formatting.
5670 * config/romp/romp.h: Likewise.
5671 * config/romp/romp.md: Likewise.
5672 * config/s390/s390.c: Likewise.
5673 * config/stormy16/stormy16.c: Likewise.
5674 * config/stormy16/stormy16.h: Likewise.
5675
1574ef13
AO
56762002-01-02 Alexandre Oliva <aoliva@redhat.com>
5677
5678 * c-common.h (genrtl_expr_stmt_value): Declare.
5679 * c-semantics.c (genrtl_goto_stmt): Redirect to...
5680 (genrtl_goto_stmt_value): ... this new function. Pass new
5681 argument down to expand_expr_stmt_value, taking
5682 TREE_ADDRESSABLE into account.
5683 * c-common.c (c_expand_expr): Mark the last EXPR_STMT of a
5684 STMT_EXPR as addressable, i.e., one whose result we want.
5685 * expr.c (expand_expr): Don't save expression statement value
5686 of labeled_blocks or loop_exprs.
5687 * stmt.c (expand_expr_stmt): Redirect to...
5688 (expand_expr_stmt_value): ... this new function. Use new
5689 argument to tell whether to save expression value.
5690 (expand_end_stmt_expr): Reset last_expr_type and
5691 last_expr_value if we don't have either.
5692 * tree-inline.c (declare_return_variable): Mark its use
5693 statement as addressable.
5694 * tree.h: Document new use of TREE_ADDRESSABLE.
5695 (expand_expr_stmt_value): Declare.
5696
252b88f7
TR
56972002-01-01 Tom Rix <trix@redhat.com>
5698
5699 * config/rs6000/rs6000.c (rs6000_emit_set_long_const): Fix for use by
5700 rs6000_emit_allocate_stack.
5701
29f7a208
JM
57022002-01-01 Joseph S. Myers <jsm28@cam.ac.uk>
5703
5704 * configure.in: Prepend ${srcdir}/config/${cpu_type}/ instead of
5705 ${srcdir}/ginclude/ to every entry in extra_headers.
5706 * configure: Regenerate.
5707 * ginclude/math-3300.h: Rename to config/m68k/math-3300.h.
5708 * ginclude/math-68881.h: Rename to config/m68k/math-68881.h.
5709 * ginclude/ppc-asm.h: Rename to config/rs6000/ppc-asm.h.
5710 * ginclude/proto.h: Rename to config/convex/proto.h.
5711
2cc2d4bb
RK
5712Tue Jan 1 17:12:56 2002 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
5713
5714 * attribs.c (handle_vector_size_attribute): Use host_integerp
5715 and tree_int_cst; remove warnings.
5716 * caller-save.c (insert_restore): Add cast to get rid of warning.
5717 (insert_save): Likewise.
5718 * emit-rtl.c (adjust_address_1, offset_address): Likewise.
5719 * regmove.c (find_matches): Add temporary var to kill a warning.
5720
f01c9bcd
DR
57212002-01-01 Douglas B Rupp <rupp@gnat.com>
5722
16b61764
DR
5723 * config/alpha/vms.h (DWARF2_UNWIND_INFO, EH_RETURN_HANDLER_RTX,
5724 LINK_EH_SPEC, MD_FALLBACK_FRAME_STATE_FOR): Define.
5725 * config/alpha/t-vms (EXTRA_PARTS): Add vms-dwarf2eh.o
5726 (vms-dwarf2eh.o): Add Makefile rule.
5727 * config/alpha/vms-ld.c (main): Handle vms-dwarf2eh.o.
5728 * config/alpha/vms-dwarf2eh.asm: New file.
5729
f01c9bcd
DR
5730 * gcc.c (delete_if_ordinary): Delete all versions.
5731
91312b81
HPN
57322002-01-01 Hans-Peter Nilsson <hp@bitrange.com>
5733
5734 * config/mmix/mmix.md: Update FIXME to not mention
5735 define_constants.
5736 (MMIX_rJ_REGNUM): New define_constants constant.
5737 ("movqi", "movsi", "movdi", "*movdicc_real_foldable",
5738 "*movdicc_real"): Adjust contraints formatting.
5739 ("*bCC_foldable"): Add %+ for P in output format and delete FIXME
5740 for branch prediction.
5741 ("*bCC", "*bCC_inverted_foldable", "*bCC_inverted"): Add %+ in
5742 output template.
5743 ("*call_real", "*call_value_real", "nonlocal_goto_receiver",
5744 "*nonlocal_goto_receiver_expanded"): Use MMIX_rJ_REGNUM instead of
5745 number. Delete related FIXMEs.
5746 * config/mmix/mmix.h (MMIX_INCOMING_RETURN_ADDRESS_REGNUM): Change
5747 from number to MMIX_rJ_REGNUM.
5748 (TARGET_MASK_BRANCH_PREDICT): New.
5749 (TARGET_DEFAULT): Change to TARGET_MASK_BRANCH_PREDICT.
5750 (TARGET_SWITCHES): Update comment. Correct -mno-toplevel-symbols
5751 value. Add -mbranch-predict and -mno-branch-predict.
5752 (TARGET_VERSION): Drop date.
5753 (ADDITIONAL_REGISTER_NAMES): Use MMIX_rJ_REGNUM, not number.
5754 * config/mmix/mmix.c (mmix_encode_section_info): Correct condition
5755 for finding out global symbols.
5756 (mmix_asm_output_labelref): Revert condition for global symbol.
5757 (mmix_print_operand): <case '+'>: Emit P for a likely branch.
5758 (mmix_print_operand_punct_valid_p): A '+' is valid.
5759
619acae7 5760See ChangeLog.6 for earlier changes.
This page took 0.765425 seconds and 5 git commands to generate.