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