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