1 2002-01-09 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
3 * config/c4x/c4x/md: Remove extraneous constraints from define_splits.
5 2002-01-08 Richard Henderson <rth@redhat.com>
7 * regrename.c (copy_value): Ignore overlapping copies.
9 2002-01-08 Richard Henderson <rth@redhat.com>
11 * config/alpha/alpha.c (alpha_split_conditional_move): Call copy_rtx
12 as needed to avoid shared structure.
14 2002-01-08 Kazu Hirata <kazu@hxi.com>
16 * config/h8300/h8300.c (get_shift_alg): Fix 15-bit LSHIFTRT on
19 2002-01-08 Joseph S. Myers <jsm28@cam.ac.uk>
21 * doc/tm.texi (EASY_DIV_EXPR, IMPLICIT_FIX_EXPR,
22 LONGJMP_RESTORE_FROM_STACK, MAX_INT_TYPE_SIZE): Remove
23 documentation of obsolete macros.
24 * system.h: Poison these macros.
25 * config/1750a/1750a.h, config/a29k/a29k.h, config/alpha/alpha.h,
26 config/arc/arc.h, config/arm/arm.h, config/avr/avr.h,
27 config/c4x/c4x.h, config/clipper/clipper.h,
28 config/convex/convex.h, config/cris/cris.h, config/d30v/d30v.h,
29 config/dsp16xx/dsp16xx.h, config/elxsi/elxsi.h,
30 config/fr30/fr30.h, config/h8300/h8300.h, config/i370/i370.h,
31 config/i386/i386.h, config/i860/i860.h, config/i960/i960.h,
32 config/ia64/ia64.h, config/m32r/m32r.h, config/m68hc11/m68hc11.h,
33 config/m68k/m68k.h, config/m88k/m88k.h, config/mcore/mcore.h,
34 config/mips/mips.h, config/mmix/mmix.h, config/mn10200/mn10200.h,
35 config/mn10300/mn10300.h, config/ns32k/ns32k.h, config/pa/pa.h,
36 config/pdp11/pdp11.h, config/pj/pj.h, config/romp/romp.h,
37 config/rs6000/rs6000.h, config/s390/s390.h, config/sh/sh.h,
38 config/sparc/sparc.h, config/stormy16/stormy16.h,
39 config/v850/v850.h, config/vax/vax.h, config/we32k/we32k.h: Remove
40 definitions and commented out definitions of obsolete macros.
41 * config/mips/iris5.h (MAX_WCHAR_TYPE_SIZE): Don't define in terms
44 2002-01-08 Ulrich Weigand <uweigand@de.ibm.com>
46 * config/s390/s390.c (s390_preferred_reload_class): Never
47 return ADDR_REGS if it isn't a subset of the given class.
48 * config/s390/s390.h (REGISTER_MOVE_COST): Penalize not just
49 FP_REGS, but all superclasses as well.
51 * config/s390/s390.c (s390_function_profiler): Fix thinko.
53 * config/s390/s390.md (cmpdi_ccu_mem, cmpsi_ccu_mem,
54 cmphi_ccu_mem, cmpqi_ccu_mem): First operand of compare
55 must not be a const_int.
57 2002-01-08 Richard Henderson <rth@redhat.com>
59 * Makefile.in (toplev.o): Depend on options.h.
60 (gcc.o): Depend on specs.h.
62 2002-01-08 Jakub Jelinek <jakub@redhat.com>
64 * expr.c (store_expr): Convert VOIDmode constants back to target's
67 2002-01-08 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
69 * doc/invoke.texi: Markup gcc as @command. Refer to
70 http://gcc.gnu.org/onlinedocs/gcc/Contributors.html instead
71 of http://gcc.gnu.org/thanks.html.
73 2002-01-08 Dale Johannesen <dalej@apple.com>
75 * config/rs6000/rs6000.md: Add missing int register
76 target case to movdf_low.
78 2002-01-08 Zack Weinberg <zack@codesourcery.com>
80 * Makefile.in (cs-tconfig.h): Don't depend on $(CONFIG_H) or
81 except.h. Remove commands to define USING_SJLJ_EXCEPTIONS.
82 (cppinit.o): Depend on except.h.
83 (gencheck.h, options.h, specs.h, s-gencheck, s-options,
86 * configure.in: Don't AC_DEFINE_UNQUOTED PACKAGE or VERSION.
87 Don't create specs.h/options.h/gencheck.h here. Remove
88 unnecessary variable settings from last argument of AC_OUTPUT.
89 * config.in, configure: Regenerate.
90 * intl.c: Hardcode package name as "gcc".
92 * cppinit.c: Include except.h.
93 (builtin_array): Define __USING_SJLJ_EXCEPTIONS__ when
95 * unwind-dw2.c, unwind-sjlj.c, config/ia64/unwind-ia64.c:
96 Use #if(n)def __USING_SJLJ_EXCEPTIONS, not #if
97 (!)USING_SJLJ_EXCEPTIONS.
98 * doc/cpp.texi: Document __USING_SJLJ_EXCEPTIONS__.
100 2002-01-08 Joseph S. Myers <jsm28@cam.ac.uk>
102 * doc/tm.texi (ASM_OUTPUT_EH_REGION_BEG, ASM_OUTPUT_EH_REGION_END,
103 ASM_OUTPUT_LABELREF_AS_INT, DOESNT_NEED_UNWINDER, EH_TABLE_LOOKUP,
104 OBJC_SELECTORS_WITHOUT_LABELS, OMIT_EH_TABLE): Remove
105 documentation of obsolete macros.
106 * system.h: Poison these macros.
107 * config/d30v/d30v.h, config/ns32k/encore.h,
108 config/stormy16/stormy16.h: Remove definitions and commented out
109 definitions of obsolete macros.
111 Tue Jan 8 15:56:41 2002 Nicola Pero <nicola@brainstorm.co.uk>
113 * objc/objc-act.c (handle_class_ref): Mark the declaration of
114 %sobjc_class_ref_%s as used - to prevent unwanted compiler
117 2002-01-08 Ulrich Weigand <uweigand@de.ibm.com>
119 * config/s390/linux.h (ASM_OUTPUT_LABELREF): Remove.
120 * config/s390/s390.c (s390_emit_epilog): Add REG_FRAME_RELATED_EXPR
121 to insn adjusting stack/frame pointer.
122 * config/s390/s390.md (reload_la_64, reload_la_31): Do not
123 accept operands that cause the insn to be non-splittable.
125 2002-01-08 Graham Stott <grahams@redhat.com>
127 * c-tree.h (C_TYPE_FIELDS_READONLY): Uppercase macro parameter.
128 (C_TYPE_FIELDS_VOLATILE): Likewise.
129 (C_TYPE_BEING_DEFINED): Likewise.
130 (C_IS_RESERVED_WORD): Likewise.
131 (C_TYPE_VARIABLE_SIZE): Likewise.
132 (C_DECL_VARIABLE_SIZE): Likewise.
133 (C_MISSING_PROTOTYPE_WARNED): Likewise.
134 (C_SET_EXP_ORIGINAL_CODE): Likewise.
135 (C_TYPEDEF_EXPLICITLY_SIGNED): Uppercase macro parameter and remove
137 (C_DECL_ANTICIPATED): Likewise.
138 (c_build_type_variant): Add parenthesis.
140 2002-01-08 Joseph S. Myers <jsm28@cam.ac.uk>
142 * gcc.c (option_map): Remove --version.
143 (process_command): Handle -fversion following the GNU Coding
144 Standards. Partially addresses PR other/704.
146 2002-01-08 Graham Stott <grahams@redhat.com>
148 * combine.c (combine_instructions): Fix typo.
150 2002-01-08 Graham Stott <grahams@redhat.com>
152 * debug.h: Use "tree" and "rtx" throughout.
156 2002-01-08 Nick Clifton <nickc@cambridge.redhat.com>
158 * dbxout.c (dbxout_symbol_location): If a symbol ref is in the
159 constant pool, use the pool's version of the symbol instead.
161 2002-01-07 Richard Henderson <rth@redhat.com>
163 * regrename.c (find_oldest_value_reg): Ignore the value chain if
164 the original register was copied in a mode with a fewer number of
165 hard registers than the desired mode.
166 (copyprop_hardreg_forward_1): Likewise.
167 (debug_value_data): Fix loop test.
168 * toplev.c (parse_options_and_default_flags): Reenable
169 -fcprop-registers at -O1.
171 2002-01-07 Aldy Hernandez <aldyh@redhat.com>
173 * config/rs6000/rs6000.c (bdesc_2arg): Add altivec predicates.
174 (altivec_init_builtins): New node v4si_ftype_v16qi_v16qi.
176 * config/rs6000/rs6000.h (rs6000_builtins): Add enums for altivec
179 * config/rs6000/rs6000.md: Add altivec predicate patterns.
181 2002-01-07 John David Anglin <dave@hiauly1.hia.nrc.ca>
183 * pa.c (FUNC_BEGIN_PROLOG_LABEL, current_function_number): Define.
184 (pa_output_function_prologue): Output local label at the beginning of
185 the prologue when profiling.
186 (hppa_profile_hook): Use the local label rather than the function label.
187 * pa.h (PROFILE_BEFORE_PROLOGUE): Define.
189 2002-01-07 Aldy Hernandez <aldyh@redhat.com>
191 * config/rs6000/rs6000.c (print_operand): Remove extra space.
192 (altivec_expand_unop_builtin): Fix thinko.
193 (altivec_expand_binop_builtin): Same.
194 (altivec_expand_ternop_builtin): Same.
195 (altivec_expand_builtin): Same.
197 2002-01-07 Richard Henderson <rth@redhat.com>
199 * config/rs6000/xcoff.h (ASM_FILE_START): Reverted to profile_flag.
201 2002-01-07 Jason Merrill <jason@redhat.com>
203 * unwind-dw2.c (execute_cfa_program): Use < again.
205 2002-01-07 Jakub Jelinek <jakub@redhat.com>
207 * predict.c (combine_predictions_for_insn): Avoid division by zero.
209 2002-01-07 Jakub Jelinek <jakub@redhat.com>
211 * simplify-rtx.c (simplify_plus_minus): Bump n_ops for NOT.
212 Don't allow -1 - x -> ~x simplifications in the first pass.
214 2002-01-07 Aldy Hernandez <aldyh@redhat.com>
216 * rs6000.c (altivec_expand_ternop_builtin): Don't die on invalid
218 (altivec_expand_binop_builtin): Same.
219 (altivec_expand_unop_builtin): Same.
220 (print_operand): Fix typo.
221 (bdesc_1arg): Add vupk* variants.
223 * rs6000.h (rs6000_builtins): Add vupk* enums.
225 * rs6000.md: Add altivec_vupk* variants.
227 2002-01-07 Joseph S. Myers <jsm28@cam.ac.uk>
229 * doc/gcc.texi, doc/gccint.texi, doc/cppinternals.texi,
230 doc/install.texi, doc/invoke.texi, doc/rtl.texi: Update copyright
231 and last update dates.
233 2002-01-07 Janis Johnson <janis187@us.ibm.com>
235 * doc/rtl.texi (Flags): Clean up documentation of RTL flags
237 2002-01-07 Marek Michalkiewicz <marekm@amelek.gda.pl>
239 * config/avr/avr.c (avr_mcu_types): Add new MCU types.
240 * config/avr/avr.h (CPP_SPEC): Likewise.
241 (LINK_SPEC): Likewise.
242 (CRT_BINUTILS_SPECS): Likewise.
243 * config/avr/t-avr (MULTILIB_MATCHES): Likewise.
244 * doc/invoke.texi (AVR Options): Document them.
246 Mon Jan 7 11:59:34 CET 2002 Jan Hubicka <jh@suse.cz>
248 * unroll.c (copy_loop_body): Always properly update JUMP_LABEL and
251 2002-01-07 Graham Stott <grahams@redhat.com>
253 * config/i386/i386.h: Update copyright date.
254 (HALF_PIC_PTR): Add parenthesis.
255 (OPTIMIZATION_OPTIONS): Whitespace, add parenthesis and wrap.
256 (CONSTANT_ALIGNMENT): Add parenthesis.
257 (DATA_ALIGNMENT): Likewise.
258 (LOCAL_ALIGNMENT): Likewise.
259 (FUNCTION_ARG_BOUNDARY): Whitespace, add parenthesis and wrap.
260 (IS_STACK_MODE): Uppercase macro parameter, add parenthesis and wrap.
261 (CONDITIONAL_REGISTER_USAGE): Wrap in do {...} while (0).
262 (HARD_REGNO_NREGS): Add paranethesis.
263 (VALID_SSE_REG_MODE): Whitespace.
264 (VALID_MMX_REG_MODE): Whitespace.
265 (VALID_FP_MODE_P): Uppercase macros parameter and whitespace.
266 (ix86_hard_regno_mode_ok): Add parenthesis.
267 (HARD_REGNO_CALLER_SAVE_MODE): Whitespace.
268 (RETURN_IN_MEMORY): Whitespace.
269 (N_REG_CLASSES): Add parenthesis.
270 (INTEGER_CLASS_P): Add parenthesis and wrap.
271 (FLOAT_CLASS_P): Likewise.
272 (SSE_CLASS_P): Likewise.
273 (MMX_CLASS_P): Likewise.
274 (MAYBE_INTEGER_CLASS_P): Likewise.
275 (MAYBE_FLOAT_CLASS_P): Likewise.
276 (MAYBE_SSE_CLASS_P): Likewise.
277 (MAYBE_MMX_CLASS_P): Likewise.
278 (Q_CLASS_P): Likewise.
279 (GENERAL_REGNO_P): Uppercase macro parameter.
280 (REX_INT_REGNO_P): Uppercase macro parameter and wrap.
281 (FP_REGNO_P): Likewise.
282 (ANY_FP_REGNO_P): Uppercase macro parameter.
283 (SSE_REGNO_P): Likewise.
284 (SSE_REGNO): Likewise.
285 (SSE_REG_P): Likewise.
286 (SSE_FLOAT_MODE_P): Likewise.
287 (MMX_REGNO_P): Likewise.
288 (MMX_REG_P):Likewise.
289 (STACK_REG_P): Likewise.
290 (NON_STACK_REG_P): Likewise.
291 (STACK_TOP_P): Likewise.
292 (CONVERT_HARD_REGISTER_TO_SSA_P): Add parenthesis.
293 (PREFERRED_RELOAD_CLASS): Add parenthesis and whitespace.
294 (SECONDARY_MEMORY_NEEDED): Likewise.
295 (SECONDARY_OUTPUT_RELOAD_CLASS): Whitespace.
296 (MD_ASM_CLOBBERS): Whitespace and wrap.
297 (MUST_PASS_IN_STACK): Whitespace and wrap.
298 (RETURN_POPS_ARGS): Add parenthesis.
299 (INIT_CUMULATIVE_ARGS): Likewise.
300 (FUNCTION_ARG): Likewise.
301 (FUNCTION_OK_FOR_SIBCALL): Add parenthesis and whitespace.
302 (SETUP_INCOMING_VARARGS): Likewise.
303 (BUILD_VA_LIST_TYPE): Add parenthesis.
304 (EXPAND_BUILTIN_VA_START): Uppercase macro paremeters and add
306 (EXPAND_BUILTIN_VA_ARG): Likewise.
307 (FUNCTION_PROFILER): Wrap in do { ... } while (0) and add parenthesis.
308 (INITIALIZE_TRAMPOLINE): Add parenthesis.
309 (INITIAL_ELIMINATION_OFFSET): Likewise.
310 (REGNO_OK_FOR_INDEX_P): Add parenthesis.
311 (REGNO_OK_FOR_BASE_P): Likewise.
312 (REGNO_OK_FOR_SIREG_P): Add parenthesis and wrap.
313 (REGNO_OK_FOR_DIREG_P): Likewise.
314 (REG_OK_FOR_INDEX_P): Whitespace.
315 (REG_OK_FOR_BASE_P): Whitespace.
316 (GO_IF_LEGITIMATE_ADDRESS): Wrap in do { ... } while (0) and add
318 (FIND_BASE_TERM): Fix typo.
319 (LEGITIMIZE_ADDRESS): Wrap in { .. } while (0) and add parenthesis.
320 (REWRITE_ADDRESS): Uppercase macro parameter and whitespace.
321 (SYMBOLIC_CONST; Whitespace.
322 (GO_IF_MODE_DEPENDENT_ADDRESS):Wrap in { .. } while (0) and wrap.
323 (ENCODE_SECTION_INFO): Whitespace.
324 (FINALIZE_PIC): Remove do { ... } while (0).
325 (PROMOTE_MODE): Wrap in do { ... } while (0).
326 (CONST_COSTS): Whitespace.
327 (RTX_COSTS): Add paramethesis, whitespace and wrap.
328 (REGISTER_MOVE_COST): Add parenthesis.
329 (MEMORY_MOVE_COST): Likewise.
330 (EXTRA_CC_MODES): Whitespace.
331 (SELECT_CC_MODE): Add parenthesis and whitespace.
332 (DBX_REGISTER_NUMBER): Uppercase macro parameter and add parenthsis.
333 (ASM_PREFERRED_EH_DATA_FORMAT): Add parenthesis and whitespace.
334 (ASM_OUTPUT_LABEL): Add paramethesis.
335 (ASM_OUTPUT_REG_PUSH): Add parenthesis and whitespace.
336 (ASM_OUTPUT_REG_POP): Likewise.
337 (ASM_OUTPUT_ADDR_VEC_ELT): Add parenthesis.
338 (ASM_OUTPUT_ADDR_DIFF_ELT): Likewise.
340 * config/i386/i386.c: Update copyright.
341 (CHECK_STACK_LIMIT): Add parenthesis.
342 (AT_BP): Uppercase macro parameter.
343 (x86_64_int_parameter_registers): Constify.
344 (x86_64_int_return_registers): Likewise.
345 (ix86_compare_op0): Use rtx.
346 (construct_container): Constify INTREG parameter.
347 (function_arg): Use rtx.
349 * diagnostic.h: Update copyright date.
350 (output_buffer_state): Add parenthesis.
351 (output_buffer_format_args): Likewise.
353 * combine.c (combine_instructions): Replace XEXP (links, 0)
356 2002-01-06 H.J. Lu <hjl@gnu.org>
358 * cfgcleanup.c (thread_jump): Fix 2 typos.
360 2002-01-06 Aldy Hernandez <aldyh@redhat.com>
362 * config.gcc: Add support for --enable-altivec.
364 2002-01-06 Craig Rodrigues <rodrigc@gcc.gnu.org>
366 * emit-rtl.c (gen_highpart): Add check for NULL_RTX.
368 2002-01-06 Jakub Jelinek <jakub@redhat.com>
370 * objc/objc-act.c (handle_impent): Use assemble_variable to emit
373 2002-01-06 Craig Rodrigues <rodrigc@gcc.gnu.org>
375 * doc/install.texi (sparcv9-*-solaris2*): Add documentation.
377 2002-01-06 Richard Henderson <rth@redhat.com>
379 * reorg.c (emit_delay_sequence): Remove death notes, not merely
380 nop them out. Increment label reference count for REG_LABEL.
381 (fill_slots_from_thread): Frob label reference count around
382 delete_related_insns.
384 2002-01-05 Richard Henderson <rth@redhat.com>
386 * cfgcleanup.c (try_forward_edges): Detect infinite loops while
389 2002-01-05 Richard Henderson <rth@redhat.com>
391 * c-decl.c (c_expand_body): Don't call outlining_inline_function.
392 * integrate.c (output_inline_function): Likewise.
393 * toplev.c (rest_of_compilation): Do it here instead. Move call
394 to remove_unnecessary_notes after emitting abstract instance.
395 Force an emitted nested function to have its parent emited as well.
396 * dwarf2out.c (loc_descriptor_from_tree): Read mode after checking
398 (rtl_for_decl_location): Do not look at reload data structures
399 before reload has run.
401 2002-01-05 Kazu Hirata <kazu@hxi.com>
403 * cse.c: Fix formatting.
404 * dwarf2asm.c: Likewise.
405 * dwarf2out.c: Likewise.
406 * explow.c: Likewise.
407 * expmed.c: Likewise.
408 * function.c: Likewise.
410 * gencheck.c: Likewise.
411 * genrecog.c: Likewise.
412 * ggc-common.c: Likewise.
413 * ggc-page.c: Likewise.
414 * global.c: Likewise.
416 2002-01-05 Kazu Hirata <kazu@hxi.com>
418 * combine.c: Fix formatting.
420 2002-01-05 Craig Rodrigues <crodrigu@bbn.com>
423 * config/ia64/ia64.h (RENAME_EXTENDED_BLOCKS): Remove.
425 2002-01-05 David Edelsohn <edelsohn@gnu.org>
427 * config/rs6000/rs6000.h (TARGET_POWERPC): For IN_LIBGCC2, define
428 as 1 for __powerpc64__ as well.
430 * config/rs6000/t-aix43 (T_ADAFLAGS): Define.
432 * alias.c (find_base_value, PLUS/MINUS): If we found a base,
435 2002-01-05 Daniel Berlin <dan@dberlin.org>
437 * lcm.c: Revert change, due to performance regression it causes on
438 SPEC because it's slightly more conservative (sigh, I hate
441 Sat Jan 5 11:52:05 CET 2002 Jan Hubicka <jh@suse.cz>
443 * cfgcleanup.c (try_forward_edges): Allow multiple jump threading.
445 2002-01-05 Neil Booth <neil@daikokuya.demon.co.uk>
447 * doc/cppinternals.texi: Update.
449 2002-01-05 Hans-Peter Nilsson <hp@bitrange.com>
451 * doc/invoke.texi (Option Summary) <MMIX Options>: Document
452 -mbranch-predict, -mreg-stack-fill-bug-workaround and their
454 (MMIX Options): Ditto. Fix item/itemx typo for -mno-zero-extend.
455 * config/mmix/mmix.c (mmix_target_asm_function_prologue): Rework
456 kludge for pre-october-14th mmix versions to handle new-found bug
457 with PUSHJ/PUSHGO and the register stack.
458 * config/mmix/mmix.h (struct machine_function): Rename member
459 has_call_value_without_parameters to has_call_without_parameters.
460 All referers changed.
461 (TARGET_MASK_REG_STACK_FILL_BUG, TARGET_DEFAULT
462 TARGET_MASK_BRANCH_PREDICT): New macros.
463 (TARGET_SWITCHES): New options -mreg-stack-fill-bug-workaround,
464 -mno-reg-stack-fill-bug-workaround.
465 * config/mmix/mmix.md ("call"): Set struct machine member
466 has_call_without_parameters.
468 Sat Jan 5 02:20:22 CET 2002 Jan Hubicka <jh@suse.cz>
470 * cfgcleanup.c (thread_jump): Fix handling of reversed branches.
472 Sat Jan 5 01:35:29 CET 2002 Jan Hubicka <jh@suse.cz>
474 * cfgcleanup.c: Include tm_p.h
475 (mark_effect): Fix handling of hard register; fix handling of SET
477 2002-01-04 Kazu Hirata <kazu@hxi.com>
479 * config/h8300/h8300.md (anonymous patterns): Check that
480 operands are registers before using REGNO on them.
482 2002-01-03 Roland McGrath <roland@frob.com>
484 * doc/invoke.texi (RS/6000 and PowerPC Options): Add -mcall-gnu.
486 2002-01-04 Jakub Jelinek <jakub@redhat.com>
488 * tree.h (expand_expr_stmt_value): Add maybe_last argument.
489 * c-common.h (genrtl_expr_stmt_value): Likewise.
490 * stmt.c (expand_expr_stmt): Pass 1 as maybe_last.
491 (expand_expr_stmt_value): Add maybe_last argument.
492 Don't warn about statement with no effect if it is the last statement
493 in expression statement.
494 * c-semantics.c (genrtl_expr_stmt): Pass 1 as maybe_last.
495 (genrtl_expr_stmt_value): Add maybe_last argument, pass it down to
496 expand_expr_stmt_value.
497 (expand_stmt) [EXPR_STMT]: Pass 1 as maybe_last to
498 genrtl_expr_stmt_value if t is the last EXPR_STMT in its scope.
499 * expr.c (expand_expr) [LABELED_BLOCK_EXPR, LOOP_EXPR]: Pass 1
500 as maybe_last to expand_expr_stmt_value.
502 Fri Jan 4 11:45:05 2002 Jeffrey A Law (law@redhat.com)
504 * c-common.c (c_expand_start_cond): Expect the IF_STMT node to
505 be passed in, do not build it.
506 (c_begin_if_stmt): New function.
507 (c_begin_while_stmt, c_finish_while_stmt_cond): Likewise.
508 * c-common.h (c_expand_start_cond): Update prototype.
509 (c_begin_if_stmt): Prototype new function.
510 (c_begin_while_stmt, c_finish_while_stmt_cond): Likewise.
511 * c-parse.in (if_prefix): Use c_begin_if_stmt,
512 c_begin_while_stmt and c_finish_while_stmt_cond.
514 2002-01-04 William Cohen <wcohen@redhat.com>
516 * config/pa/elf.h (ASM_FILE_START): Reverted to profile_flag.
517 * config/pa/pa-linux.h (ASM_FILE_START): Likewise.
518 * config/pa/pa64-hpux.h (ASM_FILE_START): Likewise.
519 * config/pa/som.h (ASM_FILE_START): Likewise.
521 2001-01-04 Daniel Berlin <dan@cgsoftware.com>
523 * lcm.c: Include df.h.
524 Add available_transfer_function prototype.
525 (compute_available): Rework to use iterative dataflow framework.
526 (struct bb_info): s/bb_info/lcm_bb_info/g to avoid conflict
528 (available_transfer_function): New function.
530 * Makefile.in (lcm.o): add df.h to dependencies.
532 2002-01-04 Richard Henderson <rth@redhat.com>
534 * config/alpha/alpha.c (some_operand): Accept HIGH.
535 (input_operand): Likewise; accept simple references to globals.
536 (alpha_const_ok_for_letter_p): New, outlined from alpha.h.
537 (alpha_const_double_ok_for_letter_p): Likewise.
538 (alpha_extra_constraint): Likewise.
539 (alpha_preferred_reload_class): Likewise. Do not force
540 symbolic constants to memory.
541 (alpha_legitimate_address_p): Accept simple references
542 to small_symbolic_operand.
543 (alpha_legitimize_address): New arg scratch. Be prepared to be
544 called when no_new_pseudos. Emit simple symbolic references.
545 Split integers into low, high, and rest.
546 (alpha_expand_mov): Use alpha_legitimize_address.
547 (some_small_symbolic_mem_operand): New.
548 (split_small_symbolic_mem_operand): New.
549 * config/alpha/alpha-protos.h: Update.
550 * config/alpha/alpha.h (CONST_OK_FOR_LETTER_P): Out-line.
551 (CONST_DOUBLE_OK_FOR_LETTER_P): Likewise.
552 (EXTRA_CONSTRAINT): Likewise.
553 (PREFERRED_RELOAD_CLASS): Likewise.
554 (LEGITIMIZE_ADDRESS): Update for alpha_legitimize_address change.
555 (PREDICATE_CODES): Update.
556 * config/alpha/alpha.md: New post-reload splitters to convert
557 simplfied symbolic operands to the form that references $29.
558 (divide expanders): Use emit_move_insn, not gen_movdi_er_high_g.
559 (movdi_er_nofix, movdi_er_fix): Accept any symbolic operand.
561 2002-01-03 Richard Henderson <rth@redhat.com>
563 * local-alloc.c (function_invariant_p): Update commentary.
565 2002-01-04 H.J. Lu <hjl@gnu.org>
567 * toplev.c (rest_of_compilation): Fix a typo when calling
570 2002-01-03 Kazu Hirata <kazu@hxi.com>
572 * c-common.c: Fix formatting.
573 * diagnostic.c: Likewise.
574 * doloop.c: Likewise.
575 * dwarf2out.c: Likewise.
577 2002-01-03 Kazu Hirata <kazu@hxi.com>
579 * config/h8300/h8300.c (output_logical_op): Use 'not.w' instead
580 of 'neg.w' when xoring with 0x0000ffff or 0xffff0000.
582 2002-01-03 Neil Booth <neil@daikokuya.demon.co.uk>
584 * cpperror.c: Update comments and copyright.
585 * cppexp.c, cppfiles.c, cpphash.c, cpphash.h, cppinit.c,
586 cpplex.c, cpplib.c, cpplib.h, cppmacro.c, cppmain.c: Similarly.
588 2002-01-03 John David Anglin <dave@hiauly1.hia.nrc.ca>
590 * collect2.c (main): Use strcmp when testing for "-shared".
592 2002-01-03 Neil Booth <neil@daikokuya.demon.co.uk>
594 * cppmacro.c: Don't include intl.h. Update comments.
595 (new_number_token): Allocate enough buffer for 64-bit unsigned
596 integers; update prototype.
597 * cppmain.c: Update comments.
599 2002-01-03 William Cohen <wcohen@redhat.com>
601 * function.h (struct function): Add profile.
602 (current_function_profile): New.
603 doc/extend.texi: Update documentation.
604 * final.c (final_start_function): Use current_function_profile
605 instead of profile_flag.
606 (profile_after_prologue): Likewise.
607 * function.c (expand_function_start): Likewise.
608 (expand_function_start): Likewise.
609 * config/alpha/alpha.c (direct_call_operand):
610 (alpha_does_function_need_gp): Likewise.
611 (alpha_expand_prologue): Likewise.
612 * config/arm/arm.c (arm_expand_prologue): Likewise.
613 thumb_expand_prologue: Likewise.
614 * config/d30v/d30v.c (d30v_stack_info): Likewise.
615 * config/fr30/fr30.c (MUST_SAVE_RETURN_POINTER): Likewise.
616 (fr30_expand_prologue): Likewise.
617 * config/i386/cygwin.h (SUBTARGET_PROLOGUE): Likewise.
618 * config/i386/i386.c (ix86_osf_output_function_prologue): Likewise.
619 * config/i386/i386.h (FINALIZE_PIC): Likewise.
620 * config/i386/win32.h (SUBTARGET_PROLOGUE): Likewise.
621 * config/i960/i960.c (i960_output_function_prologue): Likewise.
622 * config/ia64/ia64.c (ia64_compute_frame_size): Likewise.
623 * config/m32r/m32r.c (MUST_SAVE_RETURN_ADDR): Likewise.
624 (m32r_expand_prologue): Likewise.
625 * config/m88k/m88k.c (m88k_layout_frame): Likewise.
626 (m88k_expand_prologue): Likewise.
627 * config/m88k/m88k.h (ADJUST_INSN_LENGTH): Likewise.
628 * config/mips/mips.c (compute_frame_size): Likewise.
629 (mips_expand_prologue): Likewise.
630 (mips_can_use_return_insn): Likewise.
631 * config/pa/elf.h (ASM_FILE_START): Likewise.
632 * config/pa/pa-linux.h (ASM_FILE_START): Likewise.
633 * config/pa/pa64-hpux.h (ASM_FILE_START): Likewise.
634 * config/pa/som.h (ASM_FILE_START): Likewise.
635 * config/romp/romp.c (romp_using_r14): Likewise.
636 * config/rs6000/rs6000.c (first_reg_to_save): Likewise.
637 (rs6000_stack_info): Likewise.
638 * config/rs6000/sysv4.h (ASM_DECLARE_FUNCTION_NAME): Likewise.
639 * config/rs6000/xcoff.h (ASM_FILE_START): Likewise.
640 * config/v850/v850.c (compute_register_save_size): Likewise.
642 2002-01-03 Jakub Jelinek <jakub@redhat.com>
644 * simplify-rtx.c (simplify_binary_operation) [DIV]: If
645 gen_lowpart_common fails, use gen_lowpart_SUBREG.
647 2002-01-03 Turly O'Connor <turly@apple.com>
649 * darwin.c (machopic_output_possible_stub_label): Don't generate
650 stub routines for pseudo-stubs which we've just defined.
652 2002-01-03 Kazu Hirata <kazu@hxi.com>
654 * builtins.c: Fix formatting.
655 * c-typeck.c: Likewise.
656 * combine.c: Likewise.
660 2002-01-03 Andreas Schwab <schwab@suse.de>
662 * cppfiles.c (_cpp_pop_file_buffer): Change return type to bool
663 and return true if _cpp_push_next_buffer pushed a new include
665 * cpplib.c (_cpp_pop_buffer): Only call obstack_free if
666 _cpp_pop_file_buffer did not push a new file.
667 * cpphash.h (_cpp_pop_file_buffer): Update declaration.
669 2002-01-02 Eric Christopher <echristo@redhat.com>
671 * final.c (final_scan_insn): Change 0 -> NULL_RTX in
672 FIND_REG_INC_NOTE call. Update copyright.
673 * loop.c (canonicalize_condition): Ditto.
674 * reorg.c (delete_scheduled_jump): Ditto.
676 2002-01-03 Kazu Hirata <kazu@hxi.com>
678 * gcse.c: Fix formatting.
680 2002-01-03 Graham Stott <grahams@redhat.com>
682 * mkconfig.sh: Output to config.h, hconfig.h and tconfig.h
683 forward defs for struct tags rtx_def, union_tree, rtvec_def
684 also output corresponding typedefs for rtx, tree, and rtvec.
686 * system.h: Move forward defs for struct tags rtx_def, union_tree,
687 rtvec_def along with corresponding typedefs for rtx, tree, and
688 rtvec to config.h, hconfig.h, tconfig.h.
690 2002-01-03 Graham Stott <grahams@redhat.com>
692 * tree.h: Update copyright date.
693 (IS_EXPR_CODE_CLASS): Add parenthesis.
694 (TREE_SET_CODE): Add whitespace.
695 (TREE_CHECK): Add parenthesis.
696 (TREE_CLASS_CODE): Add parenthesis and wrap long line.
697 (CST_OR_CONSTRUCTOR_CHECK):
698 (EXPR_CHECK): Add parenthis, whitespace and wrap line.
699 (TREE_SYMBOL_REFERENCED): Whitespace.
700 (INT_CST_LT): Likewise.
701 (INT_CST_LT_UNSIGNED): Likewise.
702 (tree_real_cst): Unwrap comment.
703 (tree_string): Likewise.
704 (tree_complex): Likewise.
705 (IDENTIFIER_POINTER): correct cast.
706 (SAVE_EXPR_CONTEXT): Whitespace.
707 (EXPR_WFL_FILENAME_NODE): Likewise.
708 (EXPR_WFL_FILENAME): Remove parenthesis.
709 (DECL_ORIGIN): Add parenthesis.
710 (DECL_FROM_INLINE): Use NULL_TREE.
711 (build_int_2): Whitespace.
712 (build_type_variant): Add parenthesis.
714 * gcc/jcf-parse.c: Update copyright date.
715 (yyparse): Constify resource_filename.
717 2002-01-03 Graham Stott <grahams@redhat.com>
719 * rtl.h: Update copyright date.
720 (RTL_CHECK1): Wrap long line.
721 (RTL_CHECK2): Likewise.
722 (RTL_CHECKC1): Wrap long line and whitespace.
723 (RTL_CHECKC2): Likewise.
741 (X0BITMAP): Likewise.
744 (X0ADVFLAGS): Likewise.
745 (X0CSELIB): Likewise.
746 (X0MEMATTR): Likewise.
754 (XCBITMAP): Likewise.
757 (XCADVFLAGS): Likewise.
758 (XCCSELIB): Likewise.
760 (INSN_UID): Likewise.
761 (PREV_INSN): Likewise.
763 (INSN_CODE): Likewise.
764 (PUT_REG_NOTE_KIND): Likewise.
765 (CODE_LABEL_NUMBER): Likewise.
766 (NOTE_SOURCE_FILE): Likewise.
767 (NOTE_BLOCK): Likewise.
768 (NOTE_EH_HANDLER): Likewise.
769 (NOTE_RANGE_INFO): Likewise.
770 (NOTE_LIVE_INFO): Likewise.
771 (NOTE_BASIC_BLOCK): Likewise.
772 (NOTE_EXPECTED_VALUE): Likewise.
773 (NOTE_LINE_NUMBER): Likewise.
774 (LABEL_NAME): Likewise.
775 (LABEL_NUSES): Likewise.
776 (LABEL_ALTERNATE_NAME): Likewise.
777 (ADDRESSOF_DECL): Likewise.
778 (JUMP_LABEL): Likewise.
779 (LABEL_NEXTREF): Likewise.
781 (ORIGINAL_REGNO: Likewise.
782 (HARD_REGISTER_NUM_P): Add parenthesis.
783 (SUBREG_REG): Whitespace.
784 (SUBREG_BYTE): Likewise.
785 (ASM_OPERANDS_TEMPLATE): Remove parenthesis.
786 (ASM_OPERANDS_OUTPUT_CONSTRAINT): Likewise.
787 (ASM_OPERANDS_OUTPUT_IDX): Likewise.
788 (ASM_OPERANDS_INPUT_VEC): Likewise.
789 (ASM_OPERANDS_INPUT_CONSTRAINT_VEC): Likewise.
790 (ASM_OPERANDS_INPUT): Likewise.
791 (ASM_OPERANDS_INPUT_LENGTH): Likewise.
792 (ASM_OPERANDS_INPUT_CONSTRAINT_EXP): Likewise.
793 (ASM_OPERANDS_INPUT_CONSTRAINT): Likewise.
794 (ASM_OPERANDS_INPUT_MODE): Likewise.
795 (ASM_OPERANDS_SOURCE_FILE): Likewise.
796 (ASM_OPERANDS_SOURCE_LINE): Likewise.
797 (MEM_SET_IN_STRUCT_P): Minor reformat.
798 (TRAP_CONDITION): Whitespace.
799 (TRAP_CODE): Likewise.
800 (COND_EXEC_TEST): Likewise.
801 (COND_EXEC_CODE): Likewise.
802 (FIND_REG_INC_NOTE): Uppercase macro args and add parenthesis.
803 (PHI_NODE_P): Add parenthesis.
804 (plus_constant): Whitespace and add parenthesis.
806 2002-01-03 Kazu Hirata <kazu@hxi.com>
808 * config/avr/avr.c: Fix comment typos.
809 * config/c4x/c4x.md: Likewise.
810 * config/dsp16xx/dsp16xx.h: Likewise.
811 * config/dsp16xx/dsp16xx.md: Likewise.
812 * config/i386/i386.md: Likewise.
813 * config/ia64/ia64.c: Likewise.
814 * config/m32r/m32r.h: Likewise.
815 * config/m68hc11/m68hc11.md: Likewise.
816 * config/mmix/mmix.c: Likewise.
817 * config/mn10200/mn10200.c: Likewise.
818 * config/romp/romp.c: Likewise.
819 * config/sh/sh.c: Likewise.
820 * config/stormy16/stormy16.c: Likewise.
821 * config/stormy16/stormy16.h: Likewise.
822 * config/stormy16/stormy16.md: Likewise.
824 2002-01-03 Graham Stott <grahams@redhat.com>
826 * loop.h: Update copyright date.
827 (LOOP_MOVABLES): Fix typo.
828 (LOOP_REGS): Likewise.
829 (LOOP_IVS): Likewise.
831 2002-01-03 Graham Stott <grahams@redhat.com>
833 * cppinit.c: Update copyright date.
834 Don't include output.h
835 * Makefile.in: Update copyright date.
838 2002-01-02 Craig Rodrigues <rodrigc@gcc.gnu.org>
841 * invoke.texi (-mthreads): Remove from documented RS/6000 options.
842 (-pthread) Add to RS/6000 options.
844 2002-01-02 Kazu Hirata <kazu@hxi.com>
846 * except.c: Fix comment typos.
848 * varasm.c: Likewise.
849 * doc/tm.texi: Fix a typo.
851 2002-01-02 Jakub Jelinek <jakub@redhat.com>
853 * c-typeck.c (output_init_element): Allow initializing static storage
854 duration objects with compound literals.
856 2002-01-02 Richard Henderson <rth@redhat.com>
858 * objc/objc-act.c (hack_method_prototype): Clear current_function_decl
861 2002-01-02 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
863 * gcc.c (default_compilers): Const-ify.
864 * mips-tdump.c (stab_names): Likewise.
865 * mips-tfile.c (map_coff_types, map_coff_storage,
866 map_coff_sym_type, map_coff_derived_type, stabs_symbol,
867 pseudo_ops_t, pseudo_ops): Likewise.
868 * protoize.c (default_include): Likewise
870 * real.c (GET_REAL, PUT_REAL): Don't cast away const-ness.
871 (ezero, ehalf, eone, etwo, e32, elog2, esqrt2, epi): Const-ify.
872 Add array size in declaration.
873 (endian, emov, eisneg, eisinf, eisnan, eiisnan, eiisneg, emovi,
874 emovo, emovz, eiisinf, ecmpm, eaddm, esubm, m16m, edivm, emulm,
875 esub, eadd, eadd1, ediv, emul, e53toe, e64toe, e113toe, e24toe,
876 etoe113, etoe64, etoe53, etoe24, ecmp, eround, ltoe, ultoe,
877 eifrac, euifrac, e24toasc, e53toasc, e64toasc, e113toasc, etoasc,
878 efloor, efrexp, eldexp, eremain, dectoe, etodec, ibmtoe, etoibm,
879 c4xtoe, etoc4x, uditoe, ditoe, etoudi, etodi, esqrt, etens,
880 emtens, make_nan): Const-ify.
881 (TFbignan, TFlittlenan, XFbignan, XFlittlenan, DFbignan,
882 DFlittlenan, SFbignan, SFlittlenan): Make static and const-ify.
884 2002-01-02 Joseph S. Myers <jsm28@cam.ac.uk>
886 * config.gcc (ia64-*-*): Set extra_headers.
887 (alpha*-dec-osf*): Likewise. Don't use alpha/t-osf.
888 * config/alpha/t-osf: Remove.
889 * config/ia64/t-ia64 (EXTRA_HEADERS): Remove.
891 2002-01-02 David Edelsohn <edelsohn@gnu.org>
893 * config/rs6000/t-aix43: Revert previous change.
895 2002-01-02 Jason Merrill <jason@redhat.com>
897 * c-decl.c (c_expand_body): Call outlining_inline_function when
898 emitting an inline function out of line.
900 2002-01-02 Richard Henderson <rth@redhat.com>
902 * dwarf2out.c (limbo_die_node): Add created_for member.
903 (new_die): New argument created_for. Update all callers.
904 (mark_limbo_die_list): New.
905 (dwarf2out_init): Register limbo_die_list as a root.
906 (dwarf2out_finish): Force insert limbo dies into their function
909 2002-01-02 Nathan Sidwell <nathan@codesourcery.com>
912 * doc/invoke.texi (-Wold-style-cast): Only warn about non-void casts.
914 2002-01-02 Kazu Hirata <kazu@hxi.com>
916 * config/h8300/fixunssfsi.c: Update copyright.
919 * config/h8300/h8300.c: Update copyright.
922 2002-01-02 Kazu Hirata <kazu@hxi.com>
924 * config/romp/romp.c: Fix comment formatting.
925 * config/romp/romp.h: Likewise.
926 * config/romp/romp.md: Likewise.
927 * config/s390/s390.c: Likewise.
928 * config/stormy16/stormy16.c: Likewise.
929 * config/stormy16/stormy16.h: Likewise.
931 2002-01-02 Alexandre Oliva <aoliva@redhat.com>
933 * c-common.h (genrtl_expr_stmt_value): Declare.
934 * c-semantics.c (genrtl_goto_stmt): Redirect to...
935 (genrtl_goto_stmt_value): ... this new function. Pass new
936 argument down to expand_expr_stmt_value, taking
937 TREE_ADDRESSABLE into account.
938 * c-common.c (c_expand_expr): Mark the last EXPR_STMT of a
939 STMT_EXPR as addressable, i.e., one whose result we want.
940 * expr.c (expand_expr): Don't save expression statement value
941 of labeled_blocks or loop_exprs.
942 * stmt.c (expand_expr_stmt): Redirect to...
943 (expand_expr_stmt_value): ... this new function. Use new
944 argument to tell whether to save expression value.
945 (expand_end_stmt_expr): Reset last_expr_type and
946 last_expr_value if we don't have either.
947 * tree-inline.c (declare_return_variable): Mark its use
948 statement as addressable.
949 * tree.h: Document new use of TREE_ADDRESSABLE.
950 (expand_expr_stmt_value): Declare.
952 2002-01-01 Tom Rix <trix@redhat.com>
954 * config/rs6000/rs6000.c (rs6000_emit_set_long_const): Fix for use by
955 rs6000_emit_allocate_stack.
957 2002-01-01 Joseph S. Myers <jsm28@cam.ac.uk>
959 * configure.in: Prepend ${srcdir}/config/${cpu_type}/ instead of
960 ${srcdir}/ginclude/ to every entry in extra_headers.
961 * configure: Regenerate.
962 * ginclude/math-3300.h: Rename to config/m68k/math-3300.h.
963 * ginclude/math-68881.h: Rename to config/m68k/math-68881.h.
964 * ginclude/ppc-asm.h: Rename to config/rs6000/ppc-asm.h.
965 * ginclude/proto.h: Rename to config/convex/proto.h.
967 Tue Jan 1 17:12:56 2002 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
969 * attribs.c (handle_vector_size_attribute): Use host_integerp
970 and tree_int_cst; remove warnings.
971 * caller-save.c (insert_restore): Add cast to get rid of warning.
972 (insert_save): Likewise.
973 * emit-rtl.c (adjust_address_1, offset_address): Likewise.
974 * regmove.c (find_matches): Add temporary var to kill a warning.
976 2002-01-01 Douglas B Rupp <rupp@gnat.com>
978 * config/alpha/vms.h (DWARF2_UNWIND_INFO, EH_RETURN_HANDLER_RTX,
979 LINK_EH_SPEC, MD_FALLBACK_FRAME_STATE_FOR): Define.
980 * config/alpha/t-vms (EXTRA_PARTS): Add vms-dwarf2eh.o
981 (vms-dwarf2eh.o): Add Makefile rule.
982 * config/alpha/vms-ld.c (main): Handle vms-dwarf2eh.o.
983 * config/alpha/vms-dwarf2eh.asm: New file.
985 * gcc.c (delete_if_ordinary): Delete all versions.
987 2002-01-01 Hans-Peter Nilsson <hp@bitrange.com>
989 * config/mmix/mmix.md: Update FIXME to not mention
991 (MMIX_rJ_REGNUM): New define_constants constant.
992 ("movqi", "movsi", "movdi", "*movdicc_real_foldable",
993 "*movdicc_real"): Adjust contraints formatting.
994 ("*bCC_foldable"): Add %+ for P in output format and delete FIXME
995 for branch prediction.
996 ("*bCC", "*bCC_inverted_foldable", "*bCC_inverted"): Add %+ in
998 ("*call_real", "*call_value_real", "nonlocal_goto_receiver",
999 "*nonlocal_goto_receiver_expanded"): Use MMIX_rJ_REGNUM instead of
1000 number. Delete related FIXMEs.
1001 * config/mmix/mmix.h (MMIX_INCOMING_RETURN_ADDRESS_REGNUM): Change
1002 from number to MMIX_rJ_REGNUM.
1003 (TARGET_MASK_BRANCH_PREDICT): New.
1004 (TARGET_DEFAULT): Change to TARGET_MASK_BRANCH_PREDICT.
1005 (TARGET_SWITCHES): Update comment. Correct -mno-toplevel-symbols
1006 value. Add -mbranch-predict and -mno-branch-predict.
1007 (TARGET_VERSION): Drop date.
1008 (ADDITIONAL_REGISTER_NAMES): Use MMIX_rJ_REGNUM, not number.
1009 * config/mmix/mmix.c (mmix_encode_section_info): Correct condition
1010 for finding out global symbols.
1011 (mmix_asm_output_labelref): Revert condition for global symbol.
1012 (mmix_print_operand): <case '+'>: Emit P for a likely branch.
1013 (mmix_print_operand_punct_valid_p): A '+' is valid.
1015 See ChangeLog.6 for earlier changes.