"SfR Fresh" - the SfR Freeware/Shareware Archive

Member "gcc-4.1-20080630/gcc/ChangeLog-2003" of archive gcc-4.1-20080630.tar.gz:


As a special service "SfR Fresh" has tried to format the requested source page into HTML format using source code syntax highlighting with prefixed line numbers. Alternatively you can here view or download the uninterpreted source code file. That can be also achieved for any archive member file by clicking within an archive contents listing on the first character of the file(path) respectively on the according byte size field.
    1 2003-12-31  Jan Hubicka  <jh@suse.cz>
    2 
    3 	PR opt/13473
    4 	* recog.c (validate_replace_rtx_1):  Take care for RTL sharing inside
    5 	ASM input operands
    6 
    7 	PR opt/12617
    8 	* toplev.c (dump_file_index): Reorder ce3 and bbro.
    9 	(dump_file): Likewise.
   10 	(rest_of_compilation): Likewise.
   11 
   12 	PR debug/13367
   13 	* cgraph.c (cgraph_function_possibly_inlined):  Even with
   14 	flag_really_no_inline we inline always_inline functions.
   15 	* cgraphunit.c (cgraph_analyze_function): Clear inlinable flag
   16 	for non-always_inline functions when there is flag_really_no_inline.
   17 	(cgraph_decide_inlining): Limit work done when not inlining.
   18 	(cgraph_decide_inlining_incrementally): Likewise.
   19 	(cgraph_optimize_function): Check whether something got inlined.
   20 	* c-objc-common.c (c_disregard_inline_limits): Do not always inline
   21 	extern inline functions when not inlining.
   22 
   23 	* opts.c (decode_options):  Disable crossjumping at -O1
   24 	* invoke.texi (-O1): Document change.
   25 
   26 2003-12-31  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
   27 
   28 	* print-rtl.c (print_rtx): For hard register, write out register
   29 	number and register name instead of calling PRINT_REG.
   30 	* defaults.h (PRINT_REG): Deleted.
   31 	* config/i386/i386.c (print_reg): Remove handling of CODE of -1.
   32 	Move comments here from i386.h.
   33 	(print_operand, print_operand_address): Call print_reg directly.
   34 	* config/i386/i386.h (PRINT_REG): Deleted.
   35 
   36 2003-12-31  Roger Sayle  <roger@eyesopen.com>
   37 
   38 	* config/ia64/hpux.h (TARGET_OS_CPP_BUILTINS): Define
   39 	_INCLUDE_LONGLONG.
   40 
   41 2003-12-31  Zack Weinberg  <zack@codesourcery.com>
   42 
   43 	* gcc.c (init_spec): Add -lunwind to shared case too if
   44 	USE_LIBUNWIND_EXCEPTIONS.
   45 
   46 2003-12-31  Joseph S. Myers  <jsm@polyomino.org.uk>
   47 
   48 	* doc/include/texinfo.tex: Update to version 2003-12-21.10.
   49 	* doc/gcc.texi, doc/gccint.texi: Don't set font for
   50 	@def... commands.
   51 	* doc/invoke.texi: Don't use empty @opindex.
   52 
   53 2003-12-31  Mark Mitchell  <mark@codesourcery.com>
   54 
   55 	* c-common.c (c_expand_expr): Remove code to return a value
   56 	different from that returned by expand_expr.
   57 	* expr.c (store_expr): Use the validity of a target MEM, rather
   58 	than checking DECL_RTL (exp), to figure out if a copy is
   59 	required.
   60 
   61 2003-12-31  Kazu Hirata  <kazu@cs.umass.edu>
   62 
   63 	* config/v850/lib1funcs.asm: Fix comment formatting.
   64 	* config/v850/v850.c: Likewise.
   65 	* config/v850/v850.h: Likewise.
   66 	* config/v850/v850.md: Likewise.
   67 
   68 2003-12-31  Kazu Hirata  <kazu@cs.umass.edu>
   69 
   70 	* config/i386/i386.md (*movqi_insv_2): Remove AND in the
   71 	set source.
   72 
   73 2003-12-31  Kazuhiro Inaoka  <inaoka.kazuhiro@renesas.com>
   74 
   75 	* config.gcc: Added m32r-linux m32rle-elf and m32le-linux targets.
   76 	* doc/invoke.texi: Document -mflush-func, -mflush-trap options.
   77 	Also add documentation for -mdebug, -malign-loops, -missue-rate,
   78 	and -mbranch-cost options.
   79 	* config/m32r/t-linux: New file: m32r-linux support.
   80 	* config/m32r/xm-linux.h: Likewise.
   81 	* config/m32r/xm-m32r.h: Likewise.
   82 	* config/m32r/linux.h: Likewise.
   83 	* config/m32r/little.h: New file: Little endian code generation
   84 	support.
   85 	* config/m32r/m32r-protos.h (m32r_legitimize_pic_address,
   86 	m32r_legitimate_pic_operand_p, load_pic_register): Add
   87 	prototypes.
   88 	* config/m32r/m32r.c (m32r_init): Add options for cache-flush.
   89 	(addr24_operand): Changes for PIC code generation.
   90 	* config/m32r/m32r.h (LABEL_ALIGN): Define to calculate PNOP
   91 	length at labels.
   92 	(ASM_SPEC): Add PIC support.
   93 	(FUNCTION_PROFILER): New define.
   94 	(TRAMPOLINE_SIZE, INITIALIZE_TRAMPOLINE): Changed to support
   95 	trampoline.
   96 	(CONDITIONAL_REGISTER_USAGE, CONSTANT_ADDRESS_P,
   97 	 LEGITIMIZE_ADDRESS, JUMP_TABLES_IN_TEXT_SECTION,
   98 	 PIC_OFFSET_TABLE_REGNUM, FINALIZE_PIC, LEGITIMATE_PIC_OPERAND_P,
   99 	 ASM_OUTPUT_ADDR_DIFF_ELT, CASE_VECTOR_MODE): Define for PIC.
  100 	(move_src_operand, m32r_compute_frame_size, m32r_expand_prologue,
  101 	 m32r_finalize_pic): Changes for PIC and profile support.
  102 	(global_offset_table, load_pic_register, m32r_legitimate_pic_operand_p,
  103 	 m32r_legitimize_pic_address): Add for PIC support.
  104 	(m32r_file_start): Changed for little-endian-target.
  105 	* config/m32r/m32r.md (mvqi, movhi, movsi, movdi, movsf, movdf,
  106 	tablejump, tablejump_insn, call, call_value, call_value_via_label):
  107 	Changes for PIC.
  108 	(pic_load_addr, get_pc, builtin_setjmp_receiver): Added for PIC.
  109 	(flush_icache): Changes for cache-flush trap.
  110 
  111 2003-12-30  Kazu Hirata  <kazu@cs.umass.edu>
  112 
  113 	* config/i386/i386.h: Remove an unnecessary #undef.
  114 
  115 2003-12-30  Roger Sayle  <roger@eyesopen.com>
  116 
  117 	* cppfiles.c (pch_open_file): Minor tweak to work-around native
  118 	HPPA compiler bug.
  119 
  120 2003-12-30  Kazu Hirata  <kazu@cs.umass.edu>
  121 
  122 	* config/rs6000/aix.h: Fix comment formatting.
  123 	* config/rs6000/rs6000-modes.def: Likewise.
  124 	* config/rs6000/rs6000.c: Likewise.
  125 	* config/rs6000/rs6000.h: Likewise.
  126 	* config/rs6000/rs6000.md: Likewise.
  127 
  128 2003-12-30  Kazu Hirata  <kazu@cs.umass.edu>
  129 
  130 	* config/i386/i386-protos.h: Remove prototype for
  131 	const_int_1_operand.
  132 	* config/i386/i386.c (const_int_1_operand): Remove.
  133 	* config/i386/i386.h (PREDICATE_CODES): Remove
  134 	const_int_1_operand.
  135 	* config/i386/i386.md: Replace all uses of const_int_1_operand
  136 	with const1_operand.
  137 	* config/i386/pentium.md: Likewise.
  138 
  139 2003-12-30  Geoffrey Keating  <geoffk@greed.local>
  140 
  141 	* doc/tm.texi (PREFERRED_RELOAD_CLASS): Describe use of NO_REGS
  142 	with constants.
  143 
  144 2003-12-30  Mark Mitchell  <mark@codesourcery.com>
  145 
  146 	* stor-layout.c (layout_decl): Turn bitfields into ordinary
  147 	fields, even if they are the first field in a structure.
  148 
  149 2003-12-30  Roger Sayle  <roger@eyesopen.com>
  150 
  151 	* fold-const.c (fold) <COND_EXPR>: Don't require strict type
  152 	equality, instead just prevent replacing a COND_EXPR of non-void
  153 	type by one of its operands of void type.
  154 
  155 2003-12-30  Andreas Schwab  <schwab@suse.de>
  156 
  157 	* doc/c-tree.texi: Fix @item vs. @itemx.
  158 	* doc/cpp.texi: Likewise.
  159 	* doc/install.texi: Likewise.
  160 	* doc/invoke.texi: Likewise.
  161 
  162 2003-12-30  Nathan Sidwell  <nathan@codesourcery.com>
  163 
  164 	* builtins.c (expand_builtin_apply_args_1): Fix typo in previous
  165 	change.
  166 
  167 2003-12-30  Jan Hubicka  <jh@suse.cz>
  168 
  169 	PR target/11936
  170 	* i386.h (CLASS_LIKELY_SPILLED_P): Return true for
  171 	FP_TOP_REG/FP_SECOND_REG.
  172 
  173 2003-12-30  Steven Bosscher  <steven@gcc.gnu.org>
  174 
  175 	Backport from tree-ssa (relevant changes only):
  176 	2003-12-18  Zdenek Dvorak  <rakdver@atrey.karlin.mff.cuni.cz>
  177 
  178 	* et-forest.h (et_forest_create, et_forest_delete,
  179 	et_forest_add_node, et_forest_add_edge, et_forest_remove_node,
  180 	et_forest_remove_edge, et_forest_parent,
  181 	et_forest_common_ancestor, et_forest_node_value,
  182 	et_forest_enumerate_sons): Declarations removed.
  183 	(struct et_node): New.
  184 	(et_new_tree, et_free_tree, et_set_father, et_split, et_nca,
  185 	et_below): Declare.
  186 	* et-forest.c (struct et_forest_occurrence, struct et_forest,
  187 	struct et_forest_node): Removed.
  188 	(et_forest_create, et_forest_delete,
  189 	et_forest_add_node, et_forest_add_edge, et_forest_remove_node,
  190 	et_forest_remove_edge, et_forest_parent,
  191 	et_forest_common_ancestor, et_forest_node_value,
  192 	et_forest_enumerate_sons, splay, remove_all_occurrences,
  193 	find_leftmost_node, find_rightmost_node, calculate_value): Removed.
  194 	(struct et_occ): New.
  195 	(et_nodes, et_occurences): New.
  196 	(set_depth, set_depth_add, set_prev, set_next, et_recomp_min,
  197 	et_check_occ_sanity, et_check_sanity, et_check_tree_sanity,
  198 	record_path_before_1, record_path_before, check_path_after_1,
  199 	check_path_after, et_splay, et_new_occ, et_new_tree,
  200 	et_free_tree, et_set_father, et_split, et_nca, et_below): New.
  201 	* basic-block.h (struct basic_block_def): New field dom.
  202 	(struct dominance_info): Type removed.
  203 	(calculate_dominance_info, free_dominance_info,
  204 	nearest_common_dominator, set_immediate_dominator,
  205 	get_immediate_dominator, dominated_by_p, get_dominated_by,
  206 	add_to_dominance_info, delete_from_dominance_info,
  207 	recount_dominator, redirect_immediate_dominators,
  208 	iterate_fix_dominators, verify_dominators): Declarations
  209 	changed.
  210 	(enum dom_state): New.
  211 	(dom_computed): New variable.
  212 	(first_dom_son, next_dom_son): Declare.
  213 	* dominance.c (struct dominance_info): Removed.
  214 	(BB_NODE, SET_BB_NODE): Removed.
  215 	(calculate_dominance_info, free_dominance_info,
  216 	nearest_common_dominator, set_immediate_dominator,
  217 	get_immediate_dominator, dominated_by_p, get_dominated_by,
  218 	add_to_dominance_info, delete_from_dominance_info,
  219 	recount_dominator, redirect_immediate_dominators,
  220 	iterate_fix_dominators, verify_dominators,
  221 	debug_dominance_info): Work over new datastructure.  Access
  222 	dominance datastructures through CFG.
  223 	(assign_dfs_numbers, compute_dom_fast_query, first_dom_son,
  224 	next_dom_son): New.
  225 	* bt-load.c (dom): Variable removed.
  226 	(augment_live_range, combine_btr_defs, migrate_btr_def,
  227 	migrate_btr_defs, branch_target_load_optimize): Updated for the
  228 	new interface for dominance information.
  229 	* cfg.c {exit_entry_blocks): Update initializer.
  230 	* cfglayout.c (copy_bbs): Removed loops argument. Updated for
  231 	the new interface for dominance information.
  232 	* cfglayout.h (copy_bbs): Declaration changed.
  233 	* cfgloop.c (flow_loop_pre_header_find, flow_loops_cfg_dump,
  234 	flow_loop_scan, canonicalize_loop_headers, flow_loops_find): Updated
  235 	for the new interface for dominance information.
  236 	(flow_loop_scan): Loops argument removed.
  237 	(flow_loops_free): Don't release dominators.
  238 	* cfgloop.h (struct cfg): Dom field removed.
  239 	(flow_loop_scan, loop_split_edge_with, simple_loop_p,
  240 	just_once_each_iteration_p, split_loop_bb): Declaration changed.
  241 	* cfgloopanal.c (simple_loop_exit_p, simple_increment,
  242 	just_once_each_iteration_p, simple_loop_p): Remove loops argument.
  243 	Updated for the new interface for dominance information.
  244 	* cfgloopmanip.c (remove_bbs, find_path, create_preheader,
  245 	split_loop_bb, loopify, duplicate_loop_to_header_edge,
  246 	force_single_succ_latches, loop_split_edge_with): Ditto.
  247 	* gcse.c (dominators): Variable removed.
  248 	(free_code_hoist_mem, compute_code_hoist_data, hoist_code):
  249 	Updated for the new interface for dominance information.
  250 	* ifcvt.c (post_dominators): Variable removed.
  251 	(mark_loop_exit_edges, merge_if_block, find_if_header,
  252 	find_cond_trap, find_if_case_1, find_if_case_2, if_convert):
  253 	Updated for the new interface for dominance information.
  254 	* loop-init.c (rtl_loop_optimizer_init,
  255 	rtl_loop_optimizer_finalize): Ditto.
  256 	* loop-unroll.c (decide_peel_simple, decide_peel_once_rolling,
  257 	decide_peel_completely, decide_unroll_stupid,
  258 	decide_unroll_constant_iterations,
  259 	decide_unroll_runtime_iterations): Loops argument removed.
  260 	Updated for the new interface for dominance information.
  261 	(unroll_and_peel_loops, peel_loops_completely,
  262 	unroll_loop_runtime_iterations): Updated for the new interface for
  263 	dominance information.
  264 	* loop-unswitch.c (may_unswitch_on_p, unswitch_loops,
  265 	unswitch_single_loop, unswitch_loop): Updated for the new
  266 	interface for dominance information.
  267 	* predict.c (process_note_predictions, process_note_prediction,
  268 	estimate_probability, note_prediction_to_br_prob): Ditto.
  269 	* sched-rgn.c (find_rgns, init_regions): Ditto.
  270 	* toplev.c (rest_of_handle_branch_prob): Free the dominators.
  271 
  272 2003-12-30  Jan Hubicka  <jh@suse.cz>
  273 
  274 	PR target/13456
  275 	* i386.md (allocate_stack_worker):  Use different pattern for pre and
  276 	post reload expansion.
  277 	(allocate_stack_worker_1, allocate_stack_worker_rex64): Use
  278 	match_scratch.
  279 	(allocate_stack_worder_1_postreload,
  280 	allocate_stack_worker_rex64_postreload): New.
  281 
  282 2003-12-29  Nathan Sidwell  <nathan@codesourcery.com>
  283 
  284 	* builtins.c (expand_builtin_apply_args_1): Add pretend args size
  285 	to the virtual incoming args pointer for downward stacks.
  286 
  287 2003-12-29  Roger Sayle  <roger@eyesopen.com>
  288 
  289 	PR fortran/12632
  290 	* fold-const.c (fold) <COND_EXPR>: Don't fold a constant condition,
  291 	if the type of the selected branch doesn't match its' parent.
  292 
  293 2003-12-29  Jan Hubicka  <jh@suse.cz>
  294 
  295 	* coverage.c (read_counts_file): Better error messages; cause corrupted
  296 	profiles to produce hard errors, not just warnings
  297 	(get_coverage_counts): Similarly.
  298 
  299 	* toplev.c (rest_of_handle_loop_optimize): Enable LOOP_AUTO_UNROLL.
  300 
  301 2003-12-29  Phil Edwards  <phil@codesourcery.com>
  302 
  303 	* doc/cppopts.texi:  Use of -idirafter, -iprefix, -iwithprefix, and
  304 	-iwithprefixbefore is not discouraged.
  305 
  306 2003-12-28  Mostafa Hagog  <mustafa@il.ibm.com>
  307 
  308 	* sbitmap.c (sbitmap_union_of_diff_cg, sbitmap_a_and_b_cg,
  309 	sbitmap_a_xor_b_cg): Accumulate "changed" properly.
  310 	(sbitmap_not): Zero all bits past n_bit.
  311 
  312 2003-12-27  Zdenek Dvorak  <rakdver@atrey.karlin.mff.cuni.cz>
  313 
  314 	PR opt/13159
  315 	* cfgloopanal.c (mark_irreducible_loops): Fix the strongly connected
  316 	components detection.
  317 	* loop-unswitch.c (unswitch_loop): Preserve simple preheaders.
  318 
  319 2003-12-27  Bernardo Innocenti  <bernie@develer.com>
  320 
  321 	* config/m68k/uclinux.h (LIB_SPEC): Add elf2flt magic required for
  322 	correct linking of executables using id-based shared libraries.
  323 
  324 2003-12-27  Kazu Hirata  <kazu@cs.umass.edu>
  325 
  326 	* config/i386/i386-interix.h: Remove uses of "register"
  327 	specifier in declarations of arguments and local variables.
  328 	* config/i386/i386.c: Likewise.
  329 	* config/i386/i386elf.h: Likewise.
  330 	* config/i386/ptx4-i.h: Likewise.
  331 	* config/i386/sysv4.h: Likewise.
  332 
  333 2003-12-26  Fariborz Jahanian <fjahanian@apple.com>
  334 	    Geoffrey Keating <geoffk@apple.com>
  335 	    David Edelsohn <edelsohn@gnu.org>
  336 
  337 	* config/rs6000/rs6000.c (legitimate_offset_address_p): Do not
  338 	restrict DFmode and TFmode to word alignment.
  339 	* config/rs6000/rs6000.md (movdf_hardfloat64): Use 'o' constraint
  340 	for ld/std and order before mr.
  341 
  342 2003-12-26  Andrew Pinski  <pinskia@physics.uc.edu>
  343 
  344 	* config/darwin.h (LINK_COMMAND_SPEC): Arrange
  345 	-fprofile-generate to imply -lgcov.
  346 
  347 2003-12-26  Kazu Hirata  <kazu@cs.umass.edu>
  348 
  349 	* config/h8300/h8300.md (ldm_h8300s_2_normal): Use HImode for
  350 	addresses.
  351 
  352 2003-12-25  Kazu Hirata  <kazu@cs.umass.edu>
  353 
  354 	* config/m32r/m32r.md: Remove a constraint from a splitter.
  355 
  356 2003-12-25  Andrew Pinski  <pinskia@physics.uc.edu>
  357 
  358 	PR C++/13429, C/11944
  359 	* c-common.c (c_build_qualified_type): Return early when type is
  360 	error_mark_node.
  361 	(c_apply_type_quals_to_decl): Likewise.
  362 
  363 2003-12-25  Kazu Hirata  <kazu@cs.umass.edu>
  364 
  365 	* config/alpha/alpha-modes.def: Fix comment formatting.
  366 	* config/alpha/alpha.c: Likewise.
  367 	* config/alpha/alpha.h: Likewise.
  368 	* config/alpha/elf.h: Likewise.
  369 	* config/alpha/lib1funcs.asm: Likewise.
  370 	* config/alpha/openbsd.h: Likewise.
  371 	* config/alpha/vms-cc.c: Likewise.
  372 	* config/alpha/vms-crt0-64.c: Likewise.
  373 	* config/alpha/vms-crt0.c: Likewise.
  374 	* config/alpha/vms-ld.c: Likewise.
  375 	* config/alpha/vms-psxcrt0-64.c: Likewise.
  376 	* config/alpha/vms-psxcrt0.c: Likewise.
  377 	* config/alpha/vms.h: Likewise.
  378 	* config/arc/arc.c: Likewise.
  379 	* config/arm/aof.h: Likewise.
  380 	* config/arm/arm-modes.def: Likewise.
  381 	* config/arm/arm.c: Likewise.
  382 	* config/arm/arm.h: Likewise.
  383 	* config/arm/arm.md: Likewise.
  384 	* config/arm/linux-elf.h: Likewise.
  385 	* config/arm/vxworks.h: Likewise.
  386 	* config/avr/avr.c: Likewise.
  387 	* config/avr/avr.h: Likewise.
  388 
  389 2003-12-24  Kazu Hirata  <kazu@cs.umass.edu>
  390 
  391 	* config/xtensa/elf.h: Fix comment formatting.
  392 	* config/xtensa/xtensa-protos.h: Likewise.
  393 	* config/xtensa/xtensa.c: Likewise.
  394 	* config/xtensa/xtensa.h: Likewise.
  395 
  396 2003-12-24  Kazu Hirata  <kazu@cs.umass.edu>
  397 
  398 	* config/avr/avr.c: Fix comment formatting.
  399 	* config/avr/avr.md: Likewise.
  400 
  401 2003-12-24  Kazu Hirata  <kazu@cs.umass.edu>
  402 
  403 	PR target/12721.
  404 	* config/avr/avr.c: Include ggc.h.
  405 	(tmp_reg_rtx): Declare with GTY.
  406 	(zero_reg_rtx): Likewise.
  407 	(ldi_reg_rtx): Remove.
  408 	(avr_override_options): Initialize zero_reg_rtx and
  409 	ldi_reg_rtx.
  410 	(avr_init): Remove.
  411 	Include gt-avr.h.
  412 	* config/avr/avr.h (LDI_REG_REGNO): Remove.
  413 	Remove externs for tmp_reg_rtx, zero_reg_rtx, and ldi_reg_rtx.
  414 
  415 2003-12-24  David Edelsohn  <edelsohn@gnu.org>
  416 
  417 	* doc/md.texi: Document PowerPC vector register constraint letter.
  418 
  419 2003-12-23  Mark Mitchell  <mark@codesourcery.com>
  420 
  421 	* calls.c (expand_call): Recognize calls to "sqrt" and create
  422 	corresponding notes.
  423 
  424 2003-12-23  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
  425 
  426 	* config/mips/mips.c (override_options): Use `inform' instead
  427 	of `warning' for -g -mabi=32 and native assembler.
  428 
  429 	* config/mips/t-iris6 (CRTSTUFF_T_CFLAGS, TARGET_LIBGCC2_CFLAGS):
  430 	Don't pass -Wno-error.
  431 
  432 2003-12-23  David Edelsohn  <edelsohn@gnu.org>
  433 
  434 	* function.c (assign_parms): Update max_parm_reg and
  435 	parm_reg_stack_loc when adding new parm reg.
  436 
  437 2003-12-23  Kazu Hirata  <kazu@cs.umass.edu>
  438 
  439 	* config/ns32k/ns32k.c: Convert to ISO-C.
  440 
  441 2003-12-23  Zack Weinberg  <zack@codesourcery.com>
  442 
  443 	* config/ia64/ia64.c (ia64_va_arg): Pass pointer for
  444 	variable-sized type through convert_memory_address.
  445 	(ia64_in_small_data_p): Always return false for FUNCTION_DECLs.
  446 
  447 2003-12-23  Jan Hubicka  <jh@suse.cz>
  448 
  449 	* common.opt (fprofile-generate,fprofile-use): Add.
  450 	* gcc.c (LINK_COMMAND_SPEC): Arrange -fprofile-generate to imply -lgcov
  451 	* opts.c (profile_arc_flag_set, flag_profile_values_set,
  452 	flag_unroll_loops_set, flag_tracer_set,
  453 	flag_value_profile_transformations_set,
  454 	flag_peel_loops_set): New static variables.
  455 	(common_handle_option): Deal with -fprofile-generate/-fprofile-use
  456 	* invoke.texi (-fprofile-generate, -fprofile-use): Describe.
  457 
  458 2003-12-23  Mark Mitchell  <mark@codesourcery.com>
  459 
  460 	* Makefile.in (OBJS-common): Remove dwarfout.o.
  461 	(dwarfout.o): Remove.
  462 	* common.opt: Remove -gdwarf, -gdwarf+.
  463 	* defaults.h (PREFERRED_DEBUGGING_TYPE): Do not check for
  464 	DWARF_DEBUGGING_INFO.
  465 	* dwarf2out.c: Fix typo in comment.
  466 	* dwarfout.c: Remove.
  467 	* opts.c (common_handle_option): Remove OPT_gdwarf, OPT_gdwarf_.
  468 	* toplev.c (process_options): Remove check for
  469 	DWARF_DEBUGGING_INFO.
  470 	* config/elfos.h (DWARF_DEBUGGING_INFO): Do not #define it or
  471 	#undef it.
  472 	* config/netware.h (DWARF_DEBUGGING_INFO): Likewise.
  473 	* config/ptx4.h (DWARF_DEBUGGING_INFO): Likewise.
  474 	* config/vxworks.h (DWARF_DEBUGGING_INFO): Likewise.
  475 	* config/alpha/unicosmk.h (DWARF_DEBUGGING_INFO): Likewise.
  476 	* config/arc/arc.h (DWARF_DEBUGGING_INFO): Likewise.
  477 	* config/i386/sco5.h (DWARF_DEBUGGING_INFO): Likewise.
  478 	* config/i386/x86-64.h (DWARF_DEBUGGING_INFO): Likewise.
  479 	* config/m32r/m32r.h (DWARF_DEBUGGING_INFO): Likewise.
  480 	* config/mcore/mcore-elf.h (DWARF_DEBUGGING_INFO): Likewise.
  481 	* config/sparc/linux64.h (DWARF_DEBUGGING_INFO): Likewise.
  482 	* config/sparc/liteelf.h (DWARF_DEBUGGING_INFO): Likewise.
  483 	* config/sparc/sol26-sld.h (DWARF_DEBUGGING_INFO): Likewise.
  484 	* config/sparc/sp86x-elf.h (DWARF_DEBUGGING_INFO): Likewise.
  485 	* doc/invoke.texi: Do not mention -gdwarf, -gdwarf-1, -gdwarf-1+,
  486 	or -gdwarf+.
  487 	* doc/tm.texi: Likewise.
  488 
  489 	* c-common.c (flag_abi_version): Default to 2.
  490 	* c-cppbuiltin.c (c_cpp_builtins): Define __GXX_ABI_VERSION
  491 	uniformly for versions above 2.
  492 	* doc/invoke.texi: Update documentation for -fabi-version.
  493 
  494 2003-12-22  Geoffrey Keating  <geoffk@apple.com>
  495 
  496 	* config/rs6000/rs6000.md: Change many instances of '!
  497 	TARGET_POWERPC64' to 'TARGET_32BIT' when the pattern being guarded
  498 	was guarded only because it changed CR0 or the carry bit in XER.
  499 
  500 2003-12-23  Eric Botcazou  <ebotcazou@libertysurf.fr>
  501 
  502 	PR optimization/13394
  503 	* toplev.c (rest_of_compilation): Move call to
  504 	check_function_return_warnings right after the sibcall
  505 	optimization pass.
  506 
  507 2003-12-23  Eric Botcazou  <ebotcazou@libertysurf.fr>
  508 
  509 	PR c/13382
  510 	* c-typeck.c (convert_for_assignment): When converting from
  511 	integral type to pointer type, always call convert.
  512 
  513 2003-12-22  Mark Mitchell  <mark@codesourcery.com>
  514 
  515 	* doc/invoke.texi: Deprecate -fwritable-strings.
  516 
  517 	* c-common.c (flag_external_templates): Remove.
  518 	(flag_alt_external_templates): Likewise.
  519 	* c-common.h (flag_external_templates): Remove.
  520 	(flag_alt_external_templates): Likewise.
  521 	* c-opts.c (c_common_handle_option): Unsupport
  522 	-falt-external-templates and -ftemplates.
  523 	* doc/invoke.texi: Remove mention of -fexternal-templates and
  524 	-falt-external-templates.
  525 
  526 2003-12-22  Andrew Pinski  <pinskia@physics.uc.edu>
  527 
  528 	PR target/13466
  529 	* config.gcc (powerpc-*-darwin): Remove overridden value of need_64bit_hwint.
  530 
  531 	* emit-rtl.c (copy_rtx_if_shared): Add comment about its use of
  532 	copy_rtx_if_shared_1.
  533 	(copy_rtx_if_shared_1): Add comment about what the function does.
  534 
  535 	* c-decl.c (finish_function): Change order of checks.
  536 	(c_expand_body): Likewise.
  537 
  538 2003-12-22  Fariborz Jahanian <fjahanian@apple.com>
  539 
  540 	* config/rs6000/rs6000.c (legitimate_offset_address_p): Correct
  541 	check for the legitimate offset when memory of
  542 	DImode/DFmode/TFmode/TImode mode is being referenced and target
  543 	is TARGET_POWERPC64.
  544 
  545 2003-12-22  Dale Johannesen  <dalej@apple.com>
  546 
  547 	* reload1.c:  Add reg_reloaded_call_part_clobbered.
  548 	(reload_as_needed):  Use it.
  549 	(forget_old_reloads_1):  Ditto.
  550 	(emit_reload_insns):  Ditto.
  551 
  552 2003-12-22  Dale Johannesen  <dalej@apple.com>
  553 
  554 	PR optimization/12828
  555 	* loop.c:  Add find_regs_nested to look inside CLOBBER(MEM).
  556 	(scan_loop):  Call it.
  557 	* regclass.c (reg_scan_mark_regs):  Look inside CLOBBER(MEM).
  558 
  559 2003-12-22  Andrew Pinski  <pinskia@physics.uc.edu>
  560 
  561 	PR c/9163
  562 	* c-decl.c (poplevel): Only set DECL_INITIAL of a current function
  563 	if it is non-null.
  564 	(finish_function): Check for error_mark_node or null on DECL_RESULT and
  565 	DECL_RESULT of fndecl.
  566 	(c_expand_body): Only expand when DECL_INITIAL of fndecl is not
  567 	error_mark_node and not null.
  568 
  569 2003-12-21  Dan Nicolaescu  <dann@ics.uci.edu>
  570 
  571 	* rtl.h (dump_rtx_statistics): Declare it.
  572 	* rtl.c (rtx_alloc_counts, rtx_alloc_sizes, rtvec_alloc_counts,
  573 	rtx_alloc_sizes): New static vars.
  574 	(rtx_alloc, rtvec_alloc): Update them.
  575 	(dump_rtx_statistics): New function.
  576 	* toplev.c (finalize): Call it.
  577 	* ggc-page.c (struct globals): Fix comments. Add new member
  578 	total_allocated_per_order.
  579 	(ggc_alloc): Keep track of the total allocated memory.
  580 	(ggc_print_statistics): Clarify message. Print total allocated
  581 	memory stats.
  582 	* configure.in (gather-detailed-mem-stats): New flag.
  583 	* configure: Regenerate.
  584 	* config.in: Regenerate.
  585 	* doc/install.texi (Configuration): Document
  586 	--enable-gather-detailed-mem-stats.
  587 
  588 2003-12-22  Kazu Hirata  <kazu@cs.umass.edu>
  589 
  590 	* system.h (CONVERT_HARD_REGISTER_TO_SSA_P): Poison.
  591 	* config/i386/i386.h (CONVERT_HARD_REGISTER_TO_SSA_P): Remove.
  592 
  593 2003-12-21  Roger Sayle  <roger@eyesopen.com>
  594 
  595 	* config/ia64/hpux.h (TARGET_OS_CPP_BUILTINS): Define _ILP32
  596 	when compiling in ILP32 mode.
  597 
  598 2003-12-21  Andrew Pinski  <pinskia@physics.uc.edu>
  599 
  600 	* config/rs6000/rs6000.c (rs6000_tls_referenced_p): Return early if
  601 	TARGET_HAVE_TLS is false.
  602 
  603 2003-12-21  Kazu Hirata  <kazu@cs.umass.edu>
  604 
  605 	* config/ip2k/ip2k-protos.h: Remove the prototype for
  606 	asm_output_section_name.
  607 	* config/ip2k/ip2k.c (asm_output_section_name): Remove.
  608 
  609 2003-12-21  Kazu Hirata  <kazu@cs.umass.edu>
  610 
  611 	* alias.c: Fix comment formatting.
  612 	* alloc-pool.c: Likewise.
  613 	* bitmap.c: Likewise.
  614 	* bitmap.h: Likewise.
  615 	* bt-load.c: Likewise.
  616 	* c-common.c: Likewise.
  617 	* c-common.h: Likewise.
  618 	* c-decl.c: Likewise.
  619 	* c-opts.c: Likewise.
  620 	* c-pretty-print.c: Likewise.
  621 	* caller-save.c: Likewise.
  622 	* cfghooks.h: Likewise.
  623 	* cgraph.c: Likewise.
  624 	* collect2.c: Likewise.
  625 	* cppfiles.c: Likewise.
  626 	* cpplib.h: Likewise.
  627 	* dwarf2out.c: Likewise.
  628 	* dwarfout.c: Likewise.
  629 	* emit-rtl.c: Likewise.
  630 	* final.c: Likewise.
  631 	* function.c: Likewise.
  632 	* gcov.c: Likewise.
  633 	* gcse.c: Likewise.
  634 	* genemit.c: Likewise.
  635 	* ggc.h: Likewise.
  636 	* haifa-sched.c: Likewise.
  637 	* ifcvt.c: Likewise.
  638 	* libgcc2.h: Likewise.
  639 	* loop.c: Likewise.
  640 	* predict.h: Likewise.
  641 	* unwind-libunwind.c: Likewise.
  642 	* varasm.c: Likewise.
  643 
  644 2003-12-21  Kazu Hirata  <kazu@cs.umass.edu>
  645 
  646 	* config/mn10300/mn10300.c (mn10300_encode_section_info): Fix
  647 	a warning.
  648 
  649 2003-12-21  Kazu Hirata  <kazu@cs.umass.edu>
  650 
  651 	* config/arm/arm.c: Convert to ISO-C.
  652 	* config/avr/avr.h: Likewise.
  653 	* config/fr30/fr30.c: Likewise.
  654 	* config/ip2k/ip2k.c: Likewise.
  655 	* config/mn10300/mn10300.c: Likewise.
  656 
  657 2003-12-20  Andrew Pinski  <pinskia@gcc.gnu.org>
  658 	    Matt Thomas  <matt@3am-software.com>
  659 
  660 	PR target/12749
  661 	* config/i386/i386.c (print_operand): Print only the first
  662 	8 characters of the float in hex.
  663 
  664 2003-12-20  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
  665 
  666 	* pa.h (TRAMPOLINE_TEMPLATE): Shorten sequence when generating PA
  667 	2.0 code.
  668 	(TRAMPOLINE_CODE_SIZE, MIN_CACHELINE_SIZE): New defines.
  669 	(INITIALIZE_TRAMPOLINE): Rework to pass line length, and aligned start
  670 	and end addresses to I and D cache instruction patterns.
  671 	* pa.md (anddi3, iordi3): Change predicates of operands 1 and 2 to
  672 	and_operand and ior_operand, respectively.  When generating 64-bit
  673 	code, only one operand needs to be a register operand.
  674 	(xordi3): Change predicates of operands 1 and 2 to register_operand.
  675 	(one_cmpldi2): Change predicate of operand 1 to register_operand.
  676 	(dcacheflush, icacheflush): Revise to flush an arbitrary number of
  677 	cache lines.
  678 
  679 2003-12-20  Josef Zlomek  <zlomekj@suse.cz>
  680 
  681 	PR optimization/13430, PR optimization/12322
  682 	* bb-reorder.c (copy_bb_p): Do not allow block with many successors to
  683 	be copied.
  684 	(find_traces_1_round): Surround check for fake edges by
  685 	#ifdef ENABLE_CHECKING #endif.
  686 
  687 2003-12-20  Eric Botcazou  <ebotcazou@libertysurf.fr>
  688 
  689 	PR other/7956
  690 	* genmultilib: New variable disable_multilib.  Set it to 'yes'
  691 	if enable_multilib was set to 'no'.  Emit DISABLE_MULTILIB
  692 	if disable_multilib was set to 'yes'.
  693 	* gcc.c: Include multilib.h before tm.h.
  694 	* config/sparc/sol2-bi.h (LINK_ARCH_SPEC): Emit an error
  695 	message for multiarch options if DISABLE_MULTILIB is set.
  696 	* config/sparc/sol2-gld-bi.h (LINK_ARCH_SPEC): Likewise.
  697 
  698 2003-12-20  Eric Botcazou  <ebotcazou@libertysurf.fr>
  699 
  700 	PR c/12085
  701 	* c-typeck.c (build_function_call): Issue a warning if a
  702 	function is called through an incompatible prototype and
  703 	replace the call by a trap in this case.
  704 
  705 2003-12-19  James E Wilson  <wilson@specifixinc.com>
  706 
  707 	* install.texi (ia64-*-linux): Document minimum libunwind version
  708 	number.
  709 
  710 2003-12-19  Per Bothner  <per@bothner.com>
  711 
  712 	* langhooks.c (lhd_print_error_function):  Fix for PR c/13110.
  713 	Don't do pp_newline; it causes an extra blank line.
  714 	* pretty-print.c (pp_base_flush):  Clear pp_needs_newline.
  715 
  716 2003-12-19  Jason Merrill  <jason@redhat.com>
  717 
  718 	* tree.c (get_unwidened): Decide whether to narrow a bitfield
  719 	reference based on TYPE_SIZE, not TYPE_PRECISION.
  720 
  721 	* stmt.c (parse_output_constraint): Warn about in-out constraint
  722 	that doesn't allow a register.
  723 	(parse_input_constraint): Warn about matching constraint that
  724 	doesn't allow a register.
  725 
  726 2003-12-19  James E Wilson  <wilson@specifixinc.com>
  727 
  728 	* flow.c (mark_set_regs, case PARALLEL): Scan loop forwards.
  729 	Add case for ASM_OPERANDS.
  730 	* global.c (global_alloc): Set regs_ever_live for regs_asm_clobbered
  731 	registers.
  732 
  733 2003-12-19  Kazu Hirata  <kazu@cs.umass.edu>
  734 
  735 	* expr.c (check_max_integer_computation_mode): Remove.
  736 	* dojump.c (do_jump): Don't use MAX_INTEGER_COMPUTATION_MODE.
  737 	* fold-const.c (fold): Likewise.
  738 	* system.h (MAX_INTEGER_COMPUTATION_MODE): Poison.
  739 	* doc/tm.texi (MAX_INTEGER_COMPUTATION_MODE): Remove.
  740 
  741 2003-12-19  James E Wilson  <wilson@specifixinc.com>
  742 
  743 	* configure.in: Delete libunwind_has_eh_support test.
  744 	* configure: Regenerate.
  745 	* config.gcc (ia64*-*-linux*): Delete reference to t-libunwind-no-eh
  746 	and libunwind_has_eh_support check.
  747 	* config/t-libunwind-no-eh: Delete.
  748 
  749 2003-12-19  Joseph S. Myers  <jsm@polyomino.org.uk>
  750 
  751 	* c-format.c (print_char_table): Allow 'I' flag on floating point
  752 	decimal formats.
  753 
  754 2003-12-19  Stuart Hastings  <stuart@apple.com>
  755 
  756 	* gcc/config/i386/i386.c (ix86_expand_call, x86_output_mi_thunk):
  757 	Trivial fixes for i386.c on Darwin/x86.
  758 
  759 2003-12-19  Fariborz Jahanian <fjahanian@apple.com>
  760 
  761 	* config/rs6000/rs6000.c (legitimate_lo_sum_address_p): Add code to
  762 	recognize macho-style lo_sum adrress patterns.
  763 
  764 2003-12-19  Kazu Hirata  <kazu@cs.umass.edu>
  765 
  766 	* dwarfout.c: Remove uses of "register" specifier in
  767 	declarations of arguments and local variables.
  768 	* gensupport.c: Likewise.
  769 	* local-alloc.c: Likewise.
  770 	* regclass.c: Likewise.
  771 
  772 2003-12-19  Kelley Cook  <kelleycook@wideopenwest.com>
  773 
  774 	* config.guess: Remove.
  775 
  776 2003-12-19  Jakub Jelinek  <jakub@redhat.com>
  777 
  778 	* config/ia64/unwind-ia64.c (ia64_copy_rbs): New function.
  779 	(unw_access_gr): Only call ia64_rse_rnat_addr if addr is above
  780 	regstk_top.
  781 	(uw_frame_state_for): Handle locations inside bundles.
  782 	(uw_init_context_1): Initialize context->rnat.
  783 	Set context->regstk_top to lowest rbs address which has nat collection
  784 	in context->rnat.
  785 	(uw_install_context): Fix rnat restoring.
  786 	Restore ar.rsc to previous state.
  787 	* config/ia64/linux.h (MD_FALLBACK_FRAME_STATE_FOR,
  788 	MD_HANDLE_UNWABI): Handle unwinding through SA_ONSTACK frames.
  789 
  790 2003-12-19  Jakub Jelinek  <jakub@redhat.com>
  791 
  792 	PR c++/13239
  793 	* builtins.c (expand_builtin_expect_jump): Update
  794 	TREE_VALUE (arglist) if unsave_expr_now langhook
  795 	created a new tree.
  796 
  797 2003-12-19  Richard Earnshaw  <rearnsha@arm.com>
  798 
  799 	* arm.c (thumb_base_register_rtx_p): Use regno in comparison against
  800 	FIRST_PSEUDO_REGISTER.
  801 
  802 2003-12-18  Hartmut Penner  <hpenner@de.ibm.com>
  803 
  804 	* gcc/config/rs6000/rs6000.c (USE_ALTIVEC_FOR_ARG_P): Don't check
  805 	for SVR4 ABI.
  806 
  807 2003-12-18  Geoffrey Keating  <geoffk@apple.com>
  808 
  809 	* config/rs6000/aix.h (OS_MISSING_POWERPC64): Define.
  810 	(OS_MISSING_ALTIVEC): Define.
  811 	* config/rs6000/darwin.h (ASM_SPEC): Be generous about supplying
  812 	-force_cpusubtype_ALL.
  813 	* config/rs6000/rs6000.c (rs6000_override_options): Rearrange
  814 	CPU information table; now always set all CPU-specific values.
  815 	Also, use Altivec and powerpc64 when chip and OS supports them.
  816 
  817 2003-12-18  Geoffrey Keating  <geoffk@apple.com>
  818 
  819 	* fixinc/inclhack.def (darwin_macho_dyldh): New.
  820 	* fixinc/fixincl.x: Regenerate.
  821 
  822 2003-12-18  Dara Hazeghi  <dhazeghi@yahoo.com>
  823 
  824 	* version.c (version_string): Renumber as 3.4.0
  825 	* doc/include/gcc-common.texi: Likewise
  826 
  827 2003-12-18  Richard Henderson  <rth@redhat.com>
  828 
  829 	* genrecog.c (print_host_wide_int): New.
  830 	(write_switch, write_cond): Use it.
  831 
  832 2003-12-18  Richard Henderson  <rth@redhat.com>
  833 
  834 	* c-decl.c (check_bitfield_type_and_width): Remove enum special
  835 	case suppression of pedwarn.
  836 	* system.h (ENUM_BITFIELD): Use __extension__.
  837 	(CHAR_BITFIELD): Likewise.
  838 
  839 2003-12-18  Ulrich Weigand  <uweigand@de.ibm.com>
  840 	    Mark Dettinger  <dettinge@de.ibm.com>
  841 
  842 	* config/s390/s390.md (UNSPEC_SRST): New constant.
  843 	("strlendi", "strlensi"): New expanders.
  844 	("*strlendi", "*strlensi"): New insns.
  845 
  846 2003-12-18  Mark Mitchell  <mark@codesourcery.com>
  847 
  848 	* config/sol2.h (LINK_ARCH32_SPEC): Define in terms of ...
  849 	(LINK_ARCH32_SPEC_BASE): ... this new macro.
  850 	* config/sparc/sol2-bi.h (LINK_ARCH64_SPEC): Define in terms of
  851 	...
  852 	(LINK_ARCH64_SPEC_BASE): ... this new macro.
  853 	* config/sparc/sol2-gld-bi.h (LINK_ARCH32_SPEC): New macro.
  854 	(LINK_ARCH64_SPEC): Likewise.
  855 
  856 2003-12-18  Jason Merrill  <jason@redhat.com>
  857 
  858 	PR middle-end/13234
  859 	* tree-dump.c (dequeue_and_dump): Handle 'r' and 's' code
  860 	classes.
  861 
  862 2003-12-18  Steven Bosscher  <stevenb@suse.de>
  863 
  864 	* Makefile.in (tracer.o, bb-reorder.o): Depend on timevar.h
  865 	* toplev.c (rest_of_handle_reorder_blocks, rest_of_handle_tracer):
  866 	Don't push and pop TV_REORDER_BLOCKS timevars, do it...
  867 	* bb-reorder.c (reorder_basic_blocks): ...here, and...
  868 	* tracer.c (tracer): here.
  869 
  870 2003-12-18  Ulrich Weigand  <uweigand@de.ibm.com>
  871 
  872 	* loop.c (move_movables): Handle combination of m->consec,
  873 	m->move_insn_first, and m->insert_temp all nonzero correctly.
  874 
  875 2003-12-18  Kazu Hirata  <kazu@cs.umass.edu>
  876 
  877 	* calls.c (load_register_parameters): Don't use
  878 	LOAD_ARGS_REVERSED.
  879 	* system.h (LOAD_ARGS_REVERSED): Poison.
  880 	* doc/tm.texi (LOAD_ARGS_REVERSED): Remove.
  881 
  882 2003-12-17  Per Bothner  <per@bothner.com>
  883 
  884 	* emit-rtl.c (set_new_first_and_last_label_num):  Remove function.
  885 	* rtl.h (set_new_first_and_last_label_num):  Remove declaration.
  886 
  887 2003-12-17  Alexandre Oliva  <aoliva@redhat.com>
  888 
  889 	* config/frv/frv.c (frv_ifcvt_modify_insn): Don't leave alone
  890 	scratch insns of the then branch that clobber regs needed by the
  891 	else branch.
  892 
  893 2003-12-17  Kazu Hirata  <kazu@cs.umass.edu>
  894 
  895 	* calls.c (expand_call): Update comments.
  896 	* system.h (PRETEND_OUTGOING_VARARGS_NAMED): Poison.
  897 	* targhooks.c: Do not refer to PRETEND_OUTGOING_VARARGS_NAMED.
  898 
  899 2003-12-17  James E Wilson  <wilson@specifixinc.com>
  900 	    Roger Sayle  <roger@eyesopen.com>
  901 
  902 	* Makefile.in (gcse.o): Add $(TREE_H) to dependencies.
  903 	* gcse.c: Include tree.h.
  904 	(implicit_set_cond_p): New.
  905 	(find_implicit_sets): Call it.
  906 
  907 2003-12-17  Santiago Vila  <sanvila@unex.es>
  908 
  909 	* config/kfreebsdgnu.h (TARGET_OS_CPP_BUILTINS): Rename from
  910 	TARET_OS_CPP_BUILTINS.
  911 
  912 2003-12-16  Kazu Hirata  <kazu@cs.umass.edu>
  913 
  914 	* emit-rtl.c: Fix signed/unsigned comparison warnings.
  915 
  916 2003-12-17  Joseph S. Myers  <jsm@polyomino.org.uk>
  917 
  918 	* predict.c (struct block_info_def, struct edge_info_def): Change
  919 	bit-fields of width 1 to unsigned int.
  920 
  921 2003-12-16  Geoffrey Keating  <geoffk@apple.com>
  922 
  923 	PR 12480
  924 	* c-pch.c (pch_init): Improve error message when precompiled
  925 	header can't be written.
  926 
  927 	PR 12606
  928 	* c-pch.c (pch_init): Make a PCH file appear invalid while it's
  929 	being written.
  930 	(c_common_write_pch): Make it valid once it's done.
  931 
  932 2003-12-17  Ulrich Weigand  <uweigand@de.ibm.com>
  933 
  934 	PR target/11992
  935 	* config/s390/s390.md ("*cmpmem_long_64"): Use CLCLE instruction
  936 	instead of CLCL.
  937 	("*cmpmem_long_31"): Likewise.
  938 
  939 2003-12-17  Vladimir Makarov  <vmakarov@redhat.com>
  940 
  941 	* config/ia64/ia64.c: Add more comments about insn bundling.
  942 
  943 2003-12-17  Richard Earnshaw  <rearnsha@arm.com>
  944 
  945 	PR optimization/10592
  946 	* caller-save.c (mark_referenced_regs): Don't short-circuit a reg
  947 	or subreg in SET_DEST if it isn't a hard register.
  948 
  949 2003-12-17  David Edelsohn  <edelsohn@gnu.org>
  950 
  951 	* collect2.c (main): Add -fno-profile-arcs -fno-test-coverage
  952 	-fno-branch-probabilities to arguments when compiling ctors and
  953 	dtors.
  954 
  955 2003-12-17  Eric Botcazou  <ebotcazou@libertysurf.fr>
  956 
  957 	* config/sparc/sol2.h: Set SUPPORTS_INIT_PRIORITY to 0.
  958 	* config/sparc/sol2-gld.h: Set SUPPORTS_INIT_PRIORITY to 1.
  959 
  960 2003-12-17  Richard Earnshaw  <rearnsha@arm.com>
  961 
  962 	* arm.c (thumb_base_register_rtx_p): Don't allow virtual registers
  963 	as base registers for sub-word operations.
  964 	(thumb_legitimate_address_p): Simplify REG+REG test.
  965 
  966 2003-12-17  Segher Boessenkool  <boessen@de.ibm.com>
  967 
  968 	* opts.c (wrap_help): Fix overflow.
  969 
  970 2003-12-17  Fred Fish  <fnf@redhat.com>
  971 
  972 	* configure.in: Remove code to examine linker scripts and set
  973 	HAVE_MIPS_LIBGLOSS_STARTUP_DIRECTIVES.
  974 	* configure, config.in: Regenerate.
  975 
  976 2003-12-16  Mark Mitchell  <mark@codesourcery.com>
  977 
  978 	PR c++/12218
  979 	* varasm.c (initializer_constant_valid_p): Allow a conversion from
  980 	an integral constant to an OFFSET_TYPE.
  981 
  982 2003-12-16  Kazu Hirata  <kazu@cs.umass.edu>
  983 
  984 	PR target/11012
  985 	* config/m32r/m32r.c (gen_compare): Call gen_addsi3 instead of
  986 	gen_cmp_ne_small_const_insn.
  987 	* config/m32r/m32r.md (cmp_ne_small_const_insn): Remove.
  988 
  989 2003-12-17  Neil Booth  <neil@daikokuya.co.uk>
  990 	    Joseph S. Myers  <jsm@polyomino.org.uk>
  991 
  992 	PR c/3347
  993 	* c-decl.c (enum_decl_context): Remove BITFIELD.
  994 	(grokdeclarator): Take bit-field width as an input.
  995 	Perform bit-field width validation with
  996 	check_bitfield_type_and_width rather than waiting for
  997 	finish_struct.
  998 	(groktypename, groktypename_in_parm_context, start_decl,
  999 	push_parm_decl, grokfield, start_function): Update calls to
 1000 	grokdeclarator.
 1001 	(check_bitfield_type_and_width): New function.
 1002 	(finish_struct): Move bit-field validation to grokdeclarator
 1003 	and check_bitfield_type_and_width.
 1004 
 1005 2003-12-16  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
 1006 
 1007 	PR bootstrap/13386
 1008 	* configure.in (gcc_cv_ld_hidden): Set to yes on hppa64*-*-hpux* when
 1009 	using HP native linker.
 1010 	* configure: Rebuilt.
 1011 
 1012 2003-12-16  Mark Mitchell  <mark@codesourcery.com>
 1013 
 1014 	PR c++/13275
 1015 	* c-common.h (enum rid): Add RID_OFFSETOF.
 1016 	* c-parser.in (rid_to_yy): Ignore RID_OFFSETOF.
 1017 	* ginclude/stddef.h (offsetof): Reimplement for C++, using
 1018 	__offsetof__.
 1019 	* doc/extend.texi: Document __offsetof__.
 1020 
 1021 2003-12-16  Stan Cox  <scox@redhat.com>
 1022 
 1023 	* config/iq2000/iq2000.h: Formatting.
 1024 	(MAX_INT_TYPE_SIZE, MAX_INT_TYPE_SIZE, CONST_COSTS, RTX_COSTS)
 1025 	(ADDRESS_COST, ASM_OUTPUT_INTERNAL_LABEL, ASM_OUTPUT_INTERNAL_LABEL)
 1026 	(IMPLICIT_FIX_EXPR, EASY_DIV_EXPR, SLOW_ZERO_EXTEND): Remove
 1027 	* config/iq2000/iq2000.c: Formatting.
 1028 	(iq2000_rtx_costs): New.
 1029 
 1030 2003-12-16  Richard Earnshaw  <rearnsha@arm.com>
 1031 
 1032 	* arm.md (addsi3_carryin_shift): Add missing register constraints.
 1033 
 1034 2003-12-16  Loren James Rittle  <ljrittle@acm.org>
 1035 
 1036 	* testsuite/g++.old-deja/g++.eh/badalloc1.C: Tweak to
 1037 	pass with -pthread on FreeBSD systems.
 1038 
 1039 2003-12-16  Richard Sandiford  <rsandifo@redhat.com>
 1040 
 1041 	* config/mips/mips.c (mips_file_end): Only write symbols that have
 1042 	been referenced at some point.
 1043 
 1044 2003-12-16  Richard Sandiford  <rsandifo@redhat.com>
 1045 
 1046 	* config/mips/mips.c: Include langhooks.h
 1047 	(mips_build_builtin_va_list): Use lang_hooks.types.make_type.
 1048 
 1049 2003-12-16  Eric Botcazou  <ebotcazou@libertysurf.fr>
 1050 
 1051 	PR optimization/13313
 1052 	* combine.c (make_extraction) [REG]: Do not use
 1053 	gen_lowpart_for_combine when POS is non-zero.
 1054 
 1055 2003-12-16  Hartmut Penner  <hpenner@de.ibm.com>
 1056 
 1057 	* altivec.h (vec_cmple, vec_all_numeric): Fix typo.
 1058 	* testsuite/gcc.dg/altivec-10.c: Test for above.
 1059 
 1060 2003-12-15  David O'Brien  <obrien@FreeBSD.org>
 1061 
 1062 	* Makefile.in (CPPFLAGS): Initialize from configure.
 1063 
 1064 2003-12-15  Roger Sayle  <roger@eyesopen.com>
 1065 
 1066 	PR middle-end/13400
 1067 	* ifcvt.c (noce_process_if_block): Disable unconditional write
 1068 	optimizations if we could introduce a store to trapping memory
 1069 	that wasn't present previously.
 1070 
 1071 2003-12-15  Kazu Hirata  <kazu@cs.umass.edu>
 1072 
 1073 	* system.h (DEFAULT_CALLER_SAVES): Poison.
 1074 	* toplev.c (flag_caller_saves): Always initialize with 0.
 1075 	* doc/tm.texi (DEFAULT_CALLER_SAVES): Remove.
 1076 
 1077 2003-12-15  Kazu Hirata  <kazu@cs.umass.edu>
 1078 
 1079 	* flow.c (EXIT_IGNORE_STACK): Move to ...
 1080 	* defaults.h (EXIT_IGNORE_STACK): ... here.
 1081 	* dojump.c (clear_pending_stack_adjust): Don't use #ifdef
 1082 	EXIT_IGNORE_STACK.
 1083 	* function.c (expand_function_end): Likewise.
 1084 	* global.c (global_alloc): Likewise.
 1085 	* ra.c (init_ra): Likewise.
 1086 	* reload1.c (init_elim_table): Likewise.
 1087 	* reorg.c (fill_simple_delay_slots): Likewise.
 1088 	* resource.c (init_resource_info): Likewise.
 1089 	* doc/tm.texi (EXIT_IGNORE_STACK): Document that the default
 1090 	is 0.
 1091 
 1092 2003-12-15  J"orn Rennecke <joern.rennecke@superh.com>
 1093 
 1094 	* reload.c (reg_overlap_mentioned_for_reload_p):
 1095 	When looking at a PLUS in X, avoid spuriously returning nonzero
 1096 	when IN is a REG or another simple PLUS, or a MEM containing one.
 1097 
 1098 	* loop.c (loop_invariant_p): Amend comment about where new registers
 1099 	might come from.
 1100 
 1101 2003-12-15  Andreas Jaeger  <aj@suse.de>
 1102 
 1103 	* config/rs6000/rs6000.c (rs6000_output_function_epilogue): Remove
 1104 	handling of obsolete language CHILL.
 1105 
 1106 2003-12-15  Waldek Hebisch  <hebisch@math.uni.wroc.pl>
 1107 
 1108 	* tree.c (initializer_zerop): Add test for empty set.
 1109 	* integrate.c (function_cannot_inline_p): Forbid inlining
 1110 	functions calling `longjmp'.
 1111 
 1112 2003-12-15  Nathan Sidwell  <nathan@codesourcery.com>
 1113 
 1114 	PR c++/11773
 1115 	* doc/gcov.texi (Gcov and Optimization): Document inline function
 1116 	behaviour. Fix some file suffixes.
 1117 
 1118 2003-12-14  David O'Brien  <obrien@FreeBSD.org>
 1119 
 1120 	* config/i386/i386.h (__amd64, __amd64__): Remove duplicates.
 1121 
 1122 2003-12-14  Mark Mitchell  <mark@codesourcery.com>
 1123 
 1124 	* c-common.h (c_parse_error): Declare it.
 1125 	* c-common.c (c_parse_error): New function.
 1126 	* c-parse.y (yyerror): Use it.
 1127 
 1128 2003-12-14  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
 1129 
 1130 	PR target/13054
 1131 	* pa-protos.h (indexed_memory_operand, borx_reg_operand,
 1132 	move_dest_operand, move_src_operand): New protypes.
 1133 	(basereg_operand, move_operand, reg_or_nonsymb_mem_operand): Deleted.
 1134 	* pa.c (copy_reg_pointer, indexed_memory_operand, move_dest_operand,
 1135 	move_src_operand): New functions.
 1136 	(basereg_operand, reg_or_nonsymb_mem_operand, move_operand): Delete.
 1137 	(reg_or_0_or_nonsymb_mem_operand): Return false for unscaled indexed
 1138 	address until cse is not expected on targets with non-equivalent
 1139 	space registers.
 1140 	(hppa_legitimize_address): Canonicalize unscaled indexed addresses
 1141 	on targets non-equivalent space registers.
 1142 	(emit_move_sequence): Break out indexed addresses from destination
 1143 	operand.  Similarly, break out unscaled indexed addresses from
 1144 	source operand on targets with non-equivalent space registers.  Fix
 1145 	REG_POINTER flag when possible.  Mark register pointer when creating
 1146 	new pointers.
 1147 	(print_operand): Handle unscaled index addresses.
 1148 	* pa.h (IS_INDEX_ADDR_P, IS_LO_SUM_DLT_ADDR_P): New macro subroutines
 1149 	for EXTRA_CONSTRAINT.
 1150 	(EXTRA_CONSTRAINT): Rework to make more readable.
 1151 	(MODE_OK_FOR_SCALED_INDEXING_P, MODE_OK_FOR_UNSCALED_INDEXING_P): New
 1152 	subroutines for GO_IF_LEGITIMATE_ADDRESS.
 1153 	(GO_IF_LEGITIMATE_ADDRESS): Rework using new subroutines.  Allow scaled
 1154 	and unscaled addresses.  Canonicalize unscaled indexed addresses on
 1155 	targets with non-equivalent space registers.  Document issues in
 1156 	handling indexed address modes on PA-RISC.
 1157 	(PREDICATE_CODES): Update for new and deleted predicates.
 1158 	* pa.md (move_dest_operand, move_src_operand, indexed_memory_operand):
 1159 	Use new predicates in move patterns.
 1160 	Add peephole2 patterns to optimize floating point stores.  Fix
 1161 	constrain preferencing in move patterns.  Delete patterns for handling
 1162 	unscaled indexed memory loads.  Add missing load and store with
 1163 	base-register modification patterns.  Correct SFmode floating point
 1164 	store pattern.  Add missing zero extension loads.
 1165 
 1166 2003-12-13  Steven Bosscher  <stevenb@suse.de>
 1167 
 1168 	* ggc-zone.c (struct alloc_zone): Don't pre-declare, it already
 1169 	comes in with ggc.h.  Add a new bool field `dead'.
 1170 	(destroy_ggc_zone): Don't destroy a zone at once.  Instead, only
 1171 	set the `dead' flag for the dead zone.  Wrap a sanity check in
 1172 	ENABLE_CHECKING.
 1173 	(ggc_collect_1): Always mark and sweep if a zone has the `dead'
 1174 	flag set.
 1175 	(ggc_collect): Free dead zones after collecting.
 1176 
 1177 2003-12-13  Jan Hubicka  <jh@suse.cz>
 1178 
 1179 	* coverage.c (get_coverage_counts):  Use inform instead of warning
 1180 	about missing profile.
 1181 
 1182 2003-12-12  Steven Bosscher  <stevenb@suse.de>
 1183 
 1184 	* Makefile.in (opts.o, explow.o): Depend on langhooks.h
 1185 
 1186 2003-12-12  Geoffrey Keating  <geoffk@apple.com>
 1187 
 1188 	* config.gcc <i[34567]86-*-darwin*>: Don't use fixproto.
 1189 	<powerpc-*-darwin*>: Likewise.
 1190 
 1191 2003-12-12  Jakub Jelinek  <jakub@redhat.com>
 1192 
 1193 	* config/ia64/linux.h (IA64_GATE_AREA_END): Increase by 64K.
 1194 	(MD_FALLBACK_FRAME_STATE_FOR): Set fpsr_loc, br_loc[6] and
 1195 	br_loc[7].  Update comment.
 1196 	(MD_HANDLE_UNWABI): Define.
 1197 	* config/ia64/unwind-ia64.c (struct unw_state_record): Add
 1198 	unwabi field.
 1199 	(struct _Unwind_Context): Increase br_loc array size to 8 entries.
 1200 	(desc_abi): Set unwabi.
 1201 	(uw_update_reg_address): Allow br up to 7.
 1202 	(uw_update_context): Invoke MD_HANDLE_UNWABI if defined.
 1203 	(uw_install_context): Load b1..b5 from correct locations.
 1204 	Fix insn loading ar.fpsr.
 1205 	* doc/tm.texi: Document MD_HANDLE_UNWABI.
 1206 
 1207 2003-12-12  Roger Sayle  <roger@eyesopen.com>
 1208 
 1209 	PR optimization/13037
 1210 	* loop.c (update_giv_derive): Ignore redundant sets of a biv when
 1211 	calculating how to derive a giv from a biv.
 1212 
 1213 2003-12-12  Neil Booth  <neil@daikokuya.co.uk>
 1214 
 1215 	PR preprocessor/12935 preprocessor/12952 preprocessor/13046
 1216 	* cpplib.c (prepare_directive_trad): Clear skipping only in
 1217 	#if and #elif directives.
 1218 	(do_undef): Call the handler even if the identifier is not a macro.
 1219 	* cpptrad.c (scan_parameters): Emit an error message.
 1220 	(_cpp_create_trad_definition): Remember the params list even on
 1221 	failure.
 1222 
 1223 2003-12-11  Zack Weinberg  <zack@codesourcery.com>
 1224 
 1225 	* arm.c (ARM_ADDRESS_COST, THUMB_ADDRESS_COST): Convert macros
 1226 	to inline functions: arm_arm_address_cost, arm_thumb_address_cost
 1227 	respectively.
 1228 	(arm_address_cost): Use 'em.
 1229 
 1230 2003-12-12  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
 1231 
 1232 	* config/alpha/osf.h (TARGET_OS_CPP_BUILTINS): Define
 1233 	__STDC_VERSION__ to ISO C94 for C++.
 1234 
 1235 	* fixinc/inclhack.def (alpha_wchar): New fix.
 1236 	* fixinc/fixincl.x: Regenerate.
 1237 	* fixinc/tests/base/wchar.h: New file.
 1238 
 1239 2003-12-11  David Mosberger  <davidm@hpl.hp.com>
 1240 
 1241 	* unwind-libunwind.c (_Unwind_SetGR): Clear the NaT bit as
 1242 	required by C++ ABI for Itanium.
 1243 	* config/t-libunwind (LIB2ADDEH): Remove unwind-libunwind.c.
 1244 	* config/t-libunwind-no-eh: New file.
 1245 	* configure.in: Check libunwind for _Unwind_Resume() and if it's
 1246 	present, set libunwind_has_eh_support to "yes".
 1247 	* configure: Regenerate.
 1248 	* config.gcc (ia64*-*-linux*): If $libunwind_has_eh_support is
 1249 	set to yes, use t-libunwind, otherwise, use t-libunwind-no-eh.
 1250 
 1251 2003-12-11  Richard Sandiford  <rsandifo@redhat.com>
 1252 
 1253 	* config/mips/mips.c (mips_global_pointer): Force functions with
 1254 	a nonlocal goto to set up $gp.
 1255 
 1256 2003-12-11  James E Wilson  <wilson@specifixinc.com>
 1257 
 1258 	PR target/13132
 1259 	* function.c (gen_mem_addressof): When no decl, explicitly clear flag
 1260 	bits.
 1261 
 1262 2003-12-12  Nick Clifton  <nickc@redhat.com>
 1263 
 1264 	* config/m32r/m32r.c: Convert to ISO-C
 1265 
 1266 2003-12-12  Kazuhiro Inaoka  <inaoka.kazuhiro@renesas.com>
 1267 
 1268 	* doc/invoke.texi: Replace Mitsubishi with Renesas.
 1269 	* config/m32r/m32r.h: Ditto.
 1270 	* config/m32r/m32r.c: Ditto.
 1271 	* config/m32r/m32r.md: Ditto.
 1272 
 1273 2003-12-11  Steven Bosscher  <steven@gcc.gnu.org>
 1274 
 1275 	* basic-block.h (BLOCK_HEAD, BLOCK_END): Remove.
 1276 	(BLOCK_HEAD_TREE, BLOCK_END_TREE): Remove.
 1277 	(basic_block_def): Rename `head' to `head_' and `end' to `end_'.
 1278 	(BB_HEAD, BB_END): New accessor macros for the `head_' and `end_'
 1279 	fields of a basic block.
 1280 	* bb-reorder.c, bt-load.c, caller-save.c, cfg.c, cfganal.c,
 1281 	cfgbuild.c, cfgcleanup.c, cfglayout.c, cfgloop.c, cfgloopanal.c,
 1282 	cfgloopmanip.c, cfgrtl.c, combine.c, conflict.c, df.c, emit-rtl.c,
 1283 	final.c, flow.c, function.c, gcse.c, global.c, graph.c,
 1284 	haifa-sched.c, ifcvt.c, lcm.c, local-alloc.c, loop-unswitch.c,
 1285 	loop.c, postreload.c, predict.c, profile.c, ra-build.c, ra-debug.c,
 1286 	ra-rewrite.c, ra.c, recog.c, reg-stack.c, regclass.c, regmove.c,
 1287 	regrename.c, reload1.c, resource.c, sched-ebb.c, sched-rgn.c,
 1288 	sibcall.c, tracer.c, config/frv/frv.c, config/i386/i386.c,
 1289 	config/ia64/ia64.c: Use the BB_HEAD and BB_END macros instead of
 1290 	accessing the `head' and `end' fields of a basic block directly.
 1291 
 1292 	* gengtype.c: Teach about "void**" pointers and "void *" function
 1293 	types.  Fixes earlier commit.
 1294 
 1295 2003-12-10  Geoffrey Keating  <geoffk@apple.com>
 1296 
 1297 	* doc/extend.texi (Vector Extensions): Document that bitwise
 1298 	operations also work on vectors.
 1299 
 1300 2003-12-10  Richard Earnshaw  <rearnsha@arm.com>
 1301 
 1302 	* arm.md: New split patterns for optimizing bitfield accesses.
 1303 
 1304 2003-12-10  Steven Bosscher  <stevenb@suse.de>
 1305 
 1306 	* README.Portability: Remove K+R section.
 1307 
 1308 	* gengtype-lex.l: Teach about "void**" pointers and
 1309 	"void*" function types.
 1310 
 1311 2003-12-10  Eric Botcazou  <ebotcazou@libertysurf.fr>
 1312 
 1313 	PR target/13354
 1314 	* config/sparc/sparc.c (sparc_output_mi_thunk): Load DELTA
 1315 	manually if one can do that with only one instruction.
 1316 
 1317 2003-12-10  Nick Clifton  <nickc@redhat.com>
 1318 
 1319 	* config.gcc (arm-linux): Include linux.h in tm_file so that
 1320 	LINUX_TARGET_OS_CPP_BUILTINS is defined.
 1321 	* config/arm/linux-elf.h (LIB_SPEC): Protect the definition.
 1322 
 1323 2003-12-09  James E Wilson  <wilson@specifixinc.com>
 1324 
 1325 	* rtl.def (CODE_LABEL, NOTE): Correct operand numbers in comments.
 1326 
 1327 2003-12-09  Matt Austern  <austern@apple.com>
 1328 
 1329 	PR c/13134
 1330 	* c-decl.c (duplicate_decls): Copy visibility flag when appropriate.
 1331 
 1332 2003-12-09  Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com>
 1333 
 1334 	* config/m32r/m32r.h: Add support for m32r2 processor.  Including
 1335 	a new command line option -m32r2 to select it.
 1336 	* config/m32r/m32r.c: Add support for the new processor variant.
 1337 	* config/m32r/m32r.md: Likewise.
 1338 	* config/m32r/t-m32r: Add m32r2 multilibs.
 1339 	* doc/invoke.texi: Document the new command line switch.
 1340 
 1341 2003-12-08  Kazu Hirata  <kazu@cs.umass.edu>
 1342 
 1343 	* defaults.h (LOCAL_REGNO): Give the default definition.
 1344 	* flow.c (LOCAL_REGNO): Remove.
 1345 	* reload1.c (LOCAL_REGNO): Likewise.
 1346 
 1347 2003-12-08  Geoffrey Keating  <geoffk@apple.com>
 1348 
 1349 	PR target/11848
 1350 	* rs6000.h (CANNOT_CHANGE_MODE_CLASS): Allow change of mode
 1351 	in floating-point registers between TFmode and DImode.
 1352 	* rs6000.c (rs6000_emit_move): Split moves early.
 1353 	(secondary_reload_class): Random Whitespace Change.
 1354 	(rs6000_split_multireg_move): Support moves involving FP registers.
 1355 	Emit instructions directly.
 1356 	* rs6000-protos.h (rs6000_split_multireg_move): Update prototype.
 1357 	* altivec.md: Update for changes to rs6000_split_multireg_move.
 1358 	* rs6000.md: Update for changes to rs6000_split_multireg_move.
 1359 	(movtf_internal): Support moves to/from GPRs.
 1360 
 1361 2003-12-08  Stuart Hastings  <stuart@apple.com>
 1362 
 1363 	* config/i386/i386.md: Typo in split of fp-valued if_then_else.
 1364 
 1365 2003-12-08  James E Wilson  <wilson@specifixinc.com>
 1366 
 1367 	PR target/13132
 1368 	* expmed.c (extract_bit_field): Only call mode_for_size for scalar
 1369 	integer modes.
 1370 
 1371 2003-12-08  Nathanael Nerode  <neroden@gcc.gnu.org>
 1372 
 1373 	* doc/install.texi: Revert change of Dec 7; gcc is still a 2.13
 1374 	directory.
 1375 
 1376 2003-12-08  Alexandre Oliva  <aoliva@redhat.com>
 1377 
 1378 	* config/frv/frv.md (subdi2): Merge with _internal insn_and_split,
 1379 	by using match_scratch.
 1380 	(negdi2): New.
 1381 
 1382 2003-12-08  Jason Merrill <jason@redhat.com>
 1383 	    Daniel Berlin  <dberlin@dberlin.org>
 1384 
 1385 	PR debug/11114
 1386 	Support namespaces in DWARF 2 output.
 1387 	* dwarf2out.c (gen_namespace_die): New function.
 1388 	(force_namespace_die, setup_namespace_context): New fns.
 1389 	(declare_in_namespace): New fn.
 1390 	(gen_decl_die): Call declare_in_namespace.  Handle namespaces.
 1391 	(dwarf2out_decl): Handle namespaces.
 1392 	(scope_die_for): Pass through a namespace scope.
 1393 	(class_scope_p): Rename to class_or_namespace_scope_p.
 1394 	(gen_subprogram_die, gen_variable_die): Adjust.
 1395 	(gen_struct_or_union_die): Always emit a declaration
 1396 	if context_die is a namespace.
 1397 
 1398 2003-12-08  Jan Hubicka  <jh@suse.cz>
 1399 
 1400 	* unwind-pe.h (read_uleb128): Fix handling of large values
 1401 	(read_sleb128): Fix handling of large values
 1402 
 1403 2003-12-08  Andrew Pinski  <pinskia@physics.uc.edu>
 1404 
 1405 	PR middle-end/10060
 1406 	* emit-rtl.c (copy_rtx_if_shared): Split out into ...
 1407 	(copy_rtx_if_shared_1): here and optimize the last one
 1408 	in the sequence into tail-recursion.
 1409 	(reset_used_flags): Optimize the last one
 1410 	in the sequence into tail-recursion.
 1411 
 1412 2003-12-08  Richard Earnshaw  <rearnsha@arm.com>
 1413 
 1414 	* arm.md: New split to transform ((X << y) - 1) into ~(~(X-1) << y)
 1415 	for constant X.
 1416 
 1417 2003-12-08  Richard Sandiford  <rsandifo@redhat.com>
 1418 
 1419 	* calls.c (expand_call): Don't try using tail or recursive calls
 1420 	after the function body has been expanded.
 1421 
 1422 2003-12-08  Jan Hubicka  <jh@suse.cz>
 1423 
 1424 	* i386.md (cmpstr expander): Obey TARGET_INLINE_ALL_STRINGOPS
 1425 
 1426 2003-12-08  Arnaud Charlet  <charlet@act-europe.fr>
 1427 
 1428 	PR ada/13324, PR ada/12614
 1429 	* doc/install.texi: Update requirements for building Ada.
 1430 
 1431 2003-12-07  David Edelsohn  <edelsohn@gnu.org>
 1432 	    Graham Reed <greed@pobox.com>
 1433 
 1434 	* collect2.c (GCC_OK_SYMBOL): Add support for AIX C_WEAKEXT.
 1435 	(GCC_UNDEF_SYMBOL): Same.
 1436 
 1437 2003-12-07  Kazu Hirata  <kazu@cs.umass.edu>
 1438 
 1439 	* final.c (final_scan_insn): Don't use FINAL_PRESCAN_LABEL.
 1440 	* system.h (FINAL_PRESCAN_LABEL): Poison.
 1441 	* doc/tm.texi (FINAL_PRESCAN_LABEL): Remove.
 1442 
 1443 2003-12-07  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
 1444 
 1445 	* Makefile.in (compare): Combine toplevel and $(SUBDIRS) cases.
 1446 
 1447 2003-12-07  Nathanael Nerode  <neroden@gcc.gnu.org>
 1448 
 1449 	* configure.in, aclocal.m4: Revert to pre-2.5x conversion status.
 1450 	* configure: Regenerate with autoconf 2.13.
 1451 
 1452 	* configure.in: Replace AC_INIT, AC_OUTPUT, AC_CANONICAL_SYSTEM
 1453 	with modern equivalents.
 1454 	* configure: Regenerate.
 1455 
 1456 	* configure.in: Replace gcc_AC_CHECK_TYPE with AC_CHECK_TYPE.
 1457 	* aclocal.m4 (gcc_AC_CHECK_TYPE): Remove.
 1458 	* configure: Regenerate.
 1459 
 1460 	* configure: Regenerate with (preferred) autoconf 2.57.
 1461 	* doc/install.texi: Note that 'gcc' is now a 2.57 directory.
 1462 
 1463 2003-12-07  Eric Botcazou  <ebotcazou@libertysurf.fr>
 1464 
 1465 	PR optimization/12965
 1466 	* caller-save.c (save_call_clobbered_regs): Do not save/restore
 1467 	registers around no-return calls.
 1468 
 1469 2003-12-07  Nathanael Nerode  <neroden@gcc.gnu.org>
 1470 
 1471 	* configure.in: Make minimum necessary changes for autoconf 2.5x.
 1472 	* aclocal.m4: Make minimum necessary changes for autoconf 2.5x.
 1473 	* configure: Regenerate with autoconf 2.58.
 1474 
 1475 2003-12-07  Eric Botcazou  <ebotcazou@libertysurf.fr>
 1476 
 1477 	PR optimization/13318
 1478 	* loop.c (express_from): Protect integer division from overflow.
 1479 
 1480 2003-12-07  Eric Botcazou  <ebotcazou@libertysurf.fr>
 1481 
 1482 	PR optimization/13060
 1483 	* function.c (fixup_var_refs_1) [SUBREG]: Recognize even if a
 1484 	replacement already exists.  Fix again the whole insn if that fails.
 1485 
 1486 2003-12-06  Andrew Pinski  <pinskia@physics.uc.edu>
 1487 
 1488 	* config/rs6000/rs6000.c (macho_branch_islands): Use
 1489 	HOST_WIDE_INT_PRINT_UNSIGNED.
 1490 
 1491 2003-12-06  Richard Sandiford  <rsandifo@redhat.com>
 1492 
 1493 	* varasm.c (incorporeal_function_p): New.
 1494 	(assemble_external): Use it as a filter.
 1495 	* config/mips/mips.c (mips_output_external): Don't check for builtin
 1496 	functions here.
 1497 
 1498 2003-12-06  Richard Earnshaw  <reanrsha@arm.com>
 1499 
 1500 	* arm.md (IOR (COMPARISON) (AND)): New define_splits.
 1501 
 1502 2003-12-06  Kelley Cook  <kcook@gcc.gnu.org>
 1503 
 1504 	* Makefile.in (program_transform_cross_name): Delete.
 1505 	(GCC_CROSS_NAME, CPP_CROSS_NAME): Delete.
 1506 	(PROTOIZE_CROSS_NAME, UNPROTOIZE_CROSS_NAME): Delete.
 1507 	(AR_FOR_TARGET, RANLIB_FOR_TARGET, NM_FOR_TARGET): Adjust for above.
 1508 	(install_cpp, install_driver, install-man, uninstall): Likewise.
 1509 
 1510 2003-12-06  Alan Modra  <amodra@bigpond.net.au>
 1511 
 1512 	PR 13169
 1513 	* basic-block.h (PROP_ASM_SCAN): Define.
 1514 	* final.c (regs_asm_clobbered): New array.
 1515 	* regs.h (regs_asm_clobbered): Declare.
 1516 	* flow.c (life_analysis): Init it.
 1517 	(mark_set_regs): Set PROP_ASM_SCAN for asms.
 1518 	(mark_set_1): Set regs_asm_clobbered.
 1519 	* global.c (global_alloc): Don't set eliminable_regset when
 1520 	regs_asm_clobbered.
 1521 
 1522 2003-12-05  Mark Mitchell  <mark@codesourcery.com>
 1523 
 1524 	* config/ia64/ia64.h (MUST_PASS_IN_STACK): Define.
 1525 
 1526 	PR c++/13314
 1527 	* emit-rtl.c (set_mem_attributes_minus_bitpos): Robustify.
 1528 
 1529 2003-12-05  Andrew Pinski <pinskia@physics.uc.edu>
 1530 
 1531 	PR driver/13211
 1532 	* gcc.c (execute) Increment execution_count when returning
 1533 	early because verbose_only_flag is true.
 1534 
 1535 2003-12-05  Per Bothner  <pbothner@apple.com>
 1536 
 1537 	* cppfiles.c (file_hash_hash):  New static function.
 1538 	(hash_string_eq):  Renamed static function to file_hash_eq.
 1539 	(_cpp_init_files):  Create file_hash table with above callbacks.
 1540 	(cpp_included):  Must use htab_find_with_hash insead of htab_find.
 1541 	(_cpp_find_find, make_cpp_dir):  Must use htab_find_slot_with_hash.
 1542 
 1543 2003-12-05  Per Bothner  <pbothner@apple.com>
 1544 
 1545 	* line-map.h (source_location):  New typedef.
 1546 	(fileline):  Redefined as source_location.
 1547 	(struct line_map, linemap_add, linemap_lookup):  Replace filefile
 1548 	by source_location.
 1549 	* line-map.c (linemap_add, linemap_lookup):  Use source_location.
 1550 
 1551 2003-12-05  Richard Henderson  <rth@redhat.com>
 1552 
 1553 	* config/alpha/alpha.c (alpha_build_builtin_va_list): Add dummy
 1554 	field to suppress -Wpadded warnings.
 1555 
 1556 2003-12-05  Stuart Hastings  <stuart@apple.com>
 1557 
 1558 	* config/rs6000/rs6000.md: Correct macro test of TARGET_MACHO.
 1559 
 1560 2003-12-05  Stuart Menefy <stuart.menefy@st.com>
 1561 	    J"orn Rennecke <joern.rennecke@superh.com>
 1562 
 1563 	PR target/13302
 1564 	* sh.c (sh_build_builtin_va_list): Use (*lang_hooks.types.make_type).
 1565 
 1566 2003-12-05  Roger Sayle  <roger@eyesopen.com>
 1567 
 1568 	* dojump.c (do_jump): If the expression being compared against
 1569 	zero, is the subreg of a promoted variable, perform the comparison
 1570 	in the promoted mode.
 1571 	* simplify-rtx.c (simplify_unary_operation): Optimize sign and
 1572 	zero-extensions of subregs of promoted variables where the
 1573 	extension is identical to that used to promote the variable.
 1574 
 1575 2003-12-05  Hans-Peter Nilsson  <hp@axis.com>
 1576 
 1577 	PR target/13256
 1578 	* resource.h (enum mark_resource_type): Remove member MARK_DEST.
 1579 	The only user changed as follows:
 1580 	* resource.c (mark_set_resources) <case SET>: Always recurse for
 1581 	SET_SRC (x).
 1582 	<case SIGN_EXTRACT, case ZERO_EXTRACT>: Always recurse on
 1583 	operands.
 1584 	<case STRICT_LOW_PART>: Delete, deferring to default code.
 1585 
 1586 2003-12-05  Waldek Hebisch <hebisch@math.uni.wroc.pl>
 1587 
 1588 	* stmt.c (expand_nl_goto_receiver): Copy hard register clobbers
 1589 	and ASM_INPUT barrier from expand_builtin_setjmp_receiver.
 1590 
 1591 2003-12-05  Richard Sandiford  <rsandifo@redhat.com>
 1592 
 1593 	* config/mips/mips.c (mips_expand_call): Don't allow laziy binding
 1594 	for n32 & n64 abicalls.
 1595 
 1596 2003-12-05  Richard Sandiford  <rsandifo@redhat.com>
 1597 
 1598 	PR bootstrap/13145
 1599 	* config/mips/mips.h (FIRST_PSEUDO_REGISTER): Adjust comment.
 1600 	* config/mips/mips.c (mips_reg_names, mips_sw_reg_names): Add $fcall.
 1601 	(mips_load_got): Always create a constant MEM.
 1602 	(mips_expand_call): Use load_callsi and load_calldi.
 1603 	* config/mips/mips.md (UNSPEC_LOAD_CALL, FAKE_CALL_REGNO): New consts.
 1604 	(load_callsi, load_calldi): New patterns.
 1605 
 1606 2003-12-05  Peter Gerwinski <peter@gerwinski.de>
 1607 
 1608 	* tree.def (PLACEHOLDER_EXPR): Clarify commentary.
 1609 
 1610 2003-12-05  Steven Bosscher  <stevenb@suse.de>
 1611 
 1612 	* config/d30v/d30v-protos.h , config/d30v/d30v.c,
 1613 	config/dsp16xx/dsp16xx-protos.h, config/dsp16xx/dsp16xx.c,
 1614 	config/fr30/fr30-protos.h, config/fr30/fr30.c,
 1615 	config/i370/i370-protos.h, config/i370/i370.c,
 1616 	config/i960/i960-protos.h, config/i960/i960.c,
 1617 	config/ip2k/ip2k-protos.h, config/ip2k/ip2k.c,
 1618 	config/m32r/m32r-protos.h, config/m32r/m32r.c,
 1619 	config/mn10300/mn10300-protos.h, config/mn10300/mn10300.c,
 1620 	config/ns32k/ns32k-protos.h, config/ns32k/ns32k.c:
 1621 	Convert to ISO C90 function declarations and definitions.
 1622 
 1623 2003-12-05  Eric Botcazou  <ebotcazou@libertysurf.fr>
 1624 
 1625 	* doc/extend.texi (Constructing Calls): Add warning about
 1626 	the limitations of the functions.
 1627 
 1628 2003-12-05  Eric Botcazou  <ebotcazou@libertysurf.fr>
 1629 
 1630 	PR middle-end/11151
 1631 	* function.h (struct function): New field 'x_naked_return_label'.
 1632 	* function.c (free_after_compilation): Set it to NULL.
 1633 	(expand_function_end): Emit 'naked_return_label' if it exists.
 1634 	* rtl.h (expand_naked_return): Declare.
 1635 	* stmt.c (expand_naked_return): New function to generate a
 1636 	jump to 'naked_return_label'.
 1637 	* builtins.c (expand_builtin_return): Call expand_naked_return
 1638 	instead of expand_null_return.
 1639 	* config/sparc/sparc.md (untyped_return): Likewise.
 1640 
 1641 2003-12-04  Andrew Pinski  <pinskia@physics.uc.edu>
 1642 
 1643 	PR target/11322
 1644 	* config/sh/netbsd-elf.h (NO_PROFILE_COUNTERS): Define.
 1645 
 1646 	PR target/12467
 1647 	* config/rs6000/altivec.md (altivec_vmsummbm): Fix typo.
 1648 
 1649 2003-12-04  Stuart Hastings  <stuart@apple.com>
 1650 
 1651 	* rs6000.c (output_call, macho_branch_islands,
 1652 	add_compiler_branch_island, no_previous_def, get_previous_label)
 1653 	Revisions of xx_stub functions for branch islands,
 1654 	add -fPIC support for Darwin.
 1655 	* rs6000-protos.h (output_call) Prototype.
 1656 	* rs6000.md Use output_call.
 1657 	* invoke.texi Explain Darwin semantics of -longcall.
 1658 	* testsuite/gcc.dg/darwin-abi-1.c Revise testcase for -longcall/jbsr.
 1659 
 1660 2003-12-04  Richard Henderson  <rth@redhat.com>
 1661 
 1662 	* config/i386/i386.md (addqi3_carry): Use q not r constraints.
 1663 	(subqi3_carry): Likewise.
 1664 
 1665 2003-12-04  J"orn Rennecke <joern.rennecke@superh.com>
 1666 
 1667 	PR optimization/13260
 1668 	* sh-protos.h (sh_expand_t_scc): Declare.
 1669 	* sh.h (PREDICATE_CODES): Add cmpsi_operand.
 1670 	* sh.c (cmpsi_operand, sh_expand_t_scc): New functions.
 1671 	* sh.md (cmpsi): Use cmpsi_operand.  If T_REG is compared to
 1672 	something that is not a CONST_INT, copy it into a pseudo register.
 1673 	(subc): Fix description of new T value.
 1674 	(slt, sgt, sge, sgtu): Don't clobber T after rtl generation is over.
 1675 	(sltu, sleu, sgeu): Likewise.
 1676 	(seq, sne): Likewise. Use sh_expand_t_scc.
 1677 
 1678 2003-12-04  Nathanael Nerode  <neroden@gcc.gnu.org>
 1679 
 1680 	* configure.in: Generalize the CONFIG_HEADERS pattern under which
 1681 	we stamp cstamp-h.
 1682 	* configure: Regenerate.
 1683 
 1684 	* configure.in: Pull AC_CHECK_HEADER call out of shell if statement
 1685 	to avoid trouble when updating to autoconf 2.5x.
 1686 	* configure: Regenerate (with autoconf 2.13 still).
 1687 
 1688 2003-12-04  J"orn Rennecke <joern.rennecke@superh.com>
 1689 
 1690 	* sh.md (truncdiqi2): Use andi opcode for immediate.
 1691 	(reload_outdf+1,reload_outdf+2): Remove constraints.
 1692 	(movv16sf_i): Fxi multiplier for SUBREG_BYTE.
 1693 	(movv8qi_i+2): Zero-extend low byte before adding it to high byte.
 1694 	(fipr, ftrv): Add .s suffix to opcode.
 1695 
 1696 2003-12-04  Richard Sandiford  <rsandifo@redhat.com>
 1697 
 1698 	PR target/13186
 1699 
 1700 	Revert all of the following patch, except the addition of
 1701 	hook_bool_machine_mode_true:
 1702 
 1703 	2003-11-02  Richard Sandiford  <rsandifo@redhat.com>
 1704 
 1705 	* Makefile.in (targhooks.o, reload.o): Update dependencies.
 1706 	(GTFILES): Add targhooks.c.
 1707 	(gt-targhooks.h): New rule; depend on s-gtype.
 1708 	* target.h (direct_pool_load_p): New hook.
 1709 	* target-def.h (TARGET_DIRECT_POOL_LOAD_P): New macro.
 1710 	(TARGET_INITIALIZER): Include it.
 1711 	* targhooks.h (default_direct_pool_load_p): Declare.
 1712 	(hook_bool_machine_mode_true): Declare.
 1713 	* targhooks.c: Include insn-config.h, recog.h, ggc.h and
 1714 	gt-targhooks.h.
 1715 	(pool_symbol): New variable.
 1716 	(default_direct_pool_load_p): New function.
 1717 	(hook_bool_machine_mode_true): New function.
 1718 	* reload.c: Include target.h.
 1719 	(find_reloads): If an alternative will force a constant into memory,
 1720 	count an extra reload if constant pool symbols are not valid
 1721 	addresses.  If an alternative uses memory to move values between
 1722 	registers, count the move as two reloads rather than one.
 1723 	* config/s390/s390.c (TARGET_DIRECT_POOL_LOAD_P): Define.
 1724 	* doc/tm.texi (TARGET_DIRECT_POOL_LOAD_P): Document.
 1725 
 1726 2003-12-03  Mark Mitchell  <mark@codesourcery.com>
 1727 
 1728 	* config/ia64/hpux.h (TARGET_HAVE_TLS): Define it to false.
 1729 	* config/ia64/ia64.h (TARGET_HAVE_TLS): Define it to true if
 1730 	HAVE_AS_TLS is true.
 1731 	* config/ia64/ia64.c (TARGET_HAVE_TLS): Do not define it.
 1732 
 1733 2003-12-03  James E Wilson  <wilson@specifixinc.com>
 1734 
 1735 	* gcc.c (init_spec): Pass -lunwind to init_gcc_specs in eh_name.
 1736 
 1737 	* gcc-page.c (extra_order_size_tab): Correct comment.
 1738 
 1739 2003-12-03  Kazu Hirata  <kazu@cs.umass.edu>
 1740 
 1741 	* config/h8300/h8300.c (push): Call gen_push_h8300hs_advanced
 1742 	instead of gen_push_h8300hs.
 1743 	(pop): Call gen_pop_h8300hs_advanced instead of
 1744 	gen_pop_h8300hs.
 1745 	* config/h8300/h8300.h (TRAMPOLINE_SIZE): Use Pmode.
 1746 	* config/h8300/h8300.md (*tablejump_h8300hs_advanced):
 1747 	Tighten the predicate.
 1748 	(*tablejump_h8300hs_normal): Tighten the predicate.
 1749 	(push_h8300hs): Change to
 1750 	push_h8300hs_advanced.
 1751 	(pop_h8300hs): Change to pop_h8300hs_advanced.
 1752 
 1753 2003-12-03  Eric Christopher  <echristo@redhat.com>
 1754 
 1755 	* rtl.c: Fix typo.
 1756 	* config/mips/mips.h: Ditto. Fix formatting.
 1757 
 1758 2003-12-04  Ben Elliston  <bje@wasabisystems.com>
 1759 
 1760 	* future.options: Remove. Move to gnu.org web pages.
 1761 
 1762 2003-12-03  Eric Christopher  <echristo@redhat.com>
 1763 
 1764 	* c-parse.in (c_in_iteration_stmt, c_in_case_stmt): Move
 1765 	from here...
 1766 	* c-tree.h: to here.
 1767 
 1768 2003-12-03  Jan Hubicka  <jh@suse.cz>
 1769 
 1770 	PR optimization/12324
 1771 	* toplev.c  (rest_of_decl_compilation): Do not deffer when compiling
 1772 	in unit-at-a-time mode.
 1773 
 1774 2003-12-03  Jakub Jelinek  <jakub@redhat.com>
 1775 
 1776 	* expr.c (store_constructor): Only set RTX_UNCHANGING_P for
 1777 	read-only field if cleared is 0.
 1778 
 1779 2003-12-03  Nathanael Nerode  <neroden@gcc.gnu.org>
 1780 
 1781 	* config.gcc: Mark obsolete targets for GCC 3.4.
 1782 
 1783 2003-12-03  Zack Weinberg  <zack@codesourcery.com>
 1784 
 1785 	* aclocal.m4 (AM_ICONV): Add explicit check for iconv.h.
 1786 	* config.in, configure.in: Regenerate.
 1787 	* cpphash.h: Check both HAVE_ICONV and HAVE_ICONV_H before
 1788 	including iconv.h.
 1789 
 1790 2003-12-03  Alan Modra  <amodra@bigpond.net.au>
 1791 
 1792 	PR target/11229
 1793 	* cse.c (cse_insn): Set classp using src_const_elt if
 1794 	src_eqv_elt is NULL.
 1795 
 1796 2003-12-03  Richard Earnshaw  <rearnsha@arm.com>
 1797 
 1798 	* gcse.c (reg_clear_last_set): New function.
 1799 	(reg_set_info): If data is non-null, treat it as an sbitmap of
 1800 	registers, set the bit for the register being set.
 1801 	(compute_store_table): Allocate last_set_in with xcalloc.  Do not
 1802 	memset this array on each iteration.  Pass reg_set_in_block[bb->index]
 1803 	to note_stores while computing last_set_in instead of scanning
 1804 	last_set_in after the first pass through the insns.
 1805 	Clear last_set_in using reg_clear_last_set instead of explicitly
 1806 	rescanning after each insn.  If checking is enabled, assert that
 1807 	last_set_in is completely zeroed after each bb has been processed.
 1808 
 1809 2003-12-02  Geoffrey Keating  <geoffk@geoffk.org>
 1810 
 1811 	*