ChangeLog 282 KB
Newer Older
1 2 3 4 5
2003-09-12  Ziemowit Laski  <zlaski@apple.com>

	* pretty-print.c (pp_construct): Use xcalloc instead of xmalloc
	when allocating pp->buffer.

6 7 8 9 10
2003-09-12  Geoffrey Keating  <geoffk@apple.com>

	* config/darwin.c (machopic_select_rtx_section): Use
	const_data_section for things that might require relocation.

11 12 13 14 15
2003-09-12  H.J. Lu  <hongjiu.lu@intel.com>

	PR bootstrap/12264
	* tree-inline.c (inline_forbidden_p_1): Cast the 3rd arg to tree.

16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
2003-09-12  Bob Wilson  <bob.wilson@acm.org>
	
	* config/xtensa/elf.h (ASM_SPEC): Remove no-density option.  Reformat.
	* config/xtensa/linux.h (ASM_SPEC): Likewise.
	* config/xtensa/xtensa.h (TARGET_SWITCHES): Remove -mbig-endian,
	-mlittle-endian, -m[no-]density, -m[no-]abs, -m[no-]addx, -m[no-]mac16,
	-m[no-]mul16, -m[no-]mul32, -m[no-]nsa, -m[no-]minmax, -m[no-]sext,
	-m[no-]booleans, -mhard-float, -msoft-float, -m[no-]hard-float-div,
	-m[no-]hard-float-recip, -m[no-]hard-float-sqrt, and
	-m[no-]hard-float-rsqrt options.  Delete corresponding MASK_* macros
	and redefine corresponding TARGET_* macros with constants from the
	xtensa-config.h header.
	* doc/invoke.texi (Option Summary, Xtensa Options): Remove documention
	for the options listed above.
	
31 32 33 34 35 36
2003-09-12  Dale Johannesen  <dale@apple.com>
	* config/rs6000/rs6000-protos.h:  Use C90 prototypes.
	* config/rs6000/rs6000-c.c:  Ditto. 
	* config/rs6000/rs6000.c:  Ditto.
	* config/rs6000/ sysv4.h:  Ditto.

37 38 39 40
2003-09-12  Chris Lattner <sabre@nondot.org>

	* loop.c: Move comments describing BIV's and GIV's to top of file

41 42 43 44 45 46 47 48 49 50 51 52 53 54 55
2003-09-12  Roger Sayle  <roger@eyesopen.com>

	PR optimization/8967
	* alias.c (write_dependence_p): Modify to take an additional constp
	argument that controls whether the UNCHANGING_RTX_P flags are used.
	(anti_dependence, output_dependence): Adjust write_dependence_p
	callers to pass this additional argument, to return the same result.
	(unchanging_anti_dependence): New variant of anti_dependence that
	ignores the UNCHANGING_RTX_P property on memory references.
	* rtl.h (unchaning_anti_dependence): Prototype here.
	* flow.c (init_propagate_block): Place fake constant mem writes on
	the mem_set_list so that dead writes to const variables are deleted.
	(insn_dead_p): Change anti_dependence to unchanging_anti_dependence.
	(mark_used_regs): Likewise.

56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78
2003-09-12  Richard Sandiford  <rsandifo@redhat.com>

	* config/mcore/mcore-protos.h (mcore_r15_operand_p): Declare.
	(mcore_secondary_reload_class): Declare.
	(mcore_output_inline_const_forced): Remove.
	* config/mcore/mcore.md (movsi): Remove the code that forced
	non-inlineable constants into a register if the target was r15
	or the stack pointer.  Remove constant restrictions from the main
	define_insn.  Remove r <- I, r <- M and r <- N alternatives in favor
	of an r <- P alternative.  Remove fallback define_insn for reload.
	(movhi, movqi): Use gen_lowpart rather than gen_SUBREG.  Remove reload
	define_insn.  Use mcore_output_move in the remaining define_insn.
	Adjust condition and constraints in the way as for movsi.
	(movdi): Always split unacceptable constants into two.  Use
	simplify_gen_subreg instead of operand_subword{,_force}.
	* config/mcore/mcore.c (mcore_output_inline_const_forced): Remove.
	(mcore_output_move): Support HImode and QImode moves as well.
	(mcore_m15_operand_p): New function.
	(mcore_reload_class): Use it to detect cases where LRW_REGS are better.
	(mcore_secondary_reload_class): New function.
	* config/mcore/mcore.h (SECONDARY_RELOAD_CLASS): Redefine in
	terms of mcore_secondary_reload_class.

79 80 81 82
2003-09-11  Mike Stump  <mrs@apple.com>

	* c-lex.c (fe_file_change): Don't transform to_line with SOURCE_LINE.

83 84
2003-09-11  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>

85 86 87 88
	* builtins.c (fold_builtin_logarithm): if N can't be truncated to
	MODE exactly, then only convert logN(N) -> 1.0 if
	flag_unsafe_math_optimizations is set.

89 90 91 92 93 94
	* builtins.c (builtin_dconsts_init, dconstpi, dconste,
	init_builtin_dconsts): Delete.
	* emit-rtl.c (dconstpi, dconste): Define.
	(init_emit_once): Initialize dconstpi & dconste.
	* real.h (dconstpi, dconste): Declare.

95 96 97 98 99 100
2003-09-11  Alexandre Oliva  <aoliva@redhat.com>

	PR fortran/11522
	* dwarf2out.c (gen_inlined_subroutine_die): Emit abstract function
	for ultimate origin even if block is abstract.

101 102 103 104 105 106 107
2003-09-11  Roger Sayle  <roger@eyesopen.com>

	* combine.c (combine_simplify_rtx): Move several NOT and NEG
	optimizations from here...
	* simplify-rtx.c (simplify_unary_operation): to here.  Recursively
	simplify expressions using simplify_gen_*ary instead of gen_rtx_*.

108 109 110 111 112 113 114 115
2003-09-11  Richard Henderson  <rth@redhat.com>

	* cgraphunit.c (cgraph_finalize_function): Add nested arg.
	Tweek tests for function already generated.
	(cgraph_expand_function): Don't double announce in !unit-at-a-time.
	* cgraph.h (cgraph_finalize_function): Update for extra arg.
	* c-decl.c (finish_function): Likewise.

116 117 118 119
2003-09-10  Joe Buck  <jbuck@welsh-buck.org>

	* c-decl.c (poplevel): Eliminate use of |= in function_body assignment.

120 121 122 123 124
2003-09-10  Jerry Quinn  <jlquinn@optonline.net>

	* real.c: Update URL to VAX floating point docs.
	(decode_vax_d): Extract 8 exponent bits instead of 7.

125 126 127 128 129
2003-09-10  Ian Lance Taylor  <ian@wasabisystems.com>

	* combine.c (force_to_mode): Set fuller_mask based only on mask,
	not op_mode.

130 131 132 133 134 135 136 137 138 139 140 141
Thu Sep 11 01:21:05 CEST 2003  Jan Hubicka  <jh@suse.cz>

	* c-objc-common.c (c_cannot_inline_tree_fn): Warn
	on why function is not inlinable; do not check
	the body.
	(inline_forbidden_p): Move to...
	* tree-inline.c (inline_forbidden_p_1): ... here; Add warnings;
	deal with alloca, longjmp.
	(inline_forbidden_p): New static function.
	(find_alloca_call_1, find_alloca_call, find_builtin_longjmp_call_1,
	find_builtin_longjmp_call): Kill.

142 143 144 145 146 147 148 149 150 151 152
2003-09-10  Richard Henderson  <rth@redhat.com>

	* cgraph.h (struct cgraph_node): Rename lowered to analyzed.
	* cgraphunit.c: Update to match.
	(record_call_1): Rearrange.  Call lang hook for language nodes.
	(cgraph_analyze_function): Don't call lower_function.
	* langhooks.h (struct lang_hooks_for_callgraph): Replace 
	lower_function with analyze_expr.
	* langhooks-def.h: Update to match.
	* langhooks.c (lhd_callgraph_analyze_expr): New.

153 154 155 156 157 158 159 160 161 162
2003-09-10  Martin Husemann  <martin@duskware.de>

	PR target/11965
	* config/sparc/sparc.c (sparc_v8plus_shift): Protect against
	constants greater than 63.
	* config/sparc/sparc.md (ashlsi3, ashrsi3, lshrsi3): Protect
	against constants greater than 31.
	(*ashldi3_sp64, *ashrdi3_sp64, *lshrdi3_sp64): Protect against
	constants greater than 63.

163 164 165 166 167
2003-09-09  Richard Henderson  <rth@redhat.com>

	* cgraphunit.c (cgraph_finalize_function): Remove unused argument.
	* cgraph.h (cgraph_finalize_function): Update.
	* c-decl.c (finish_function): Update.
168 169 170 171 172 173

2003-09-09  Devang Patel  <dpatel@apple.com>

	* config/darwin.h (LINK_SPEC): Pass -nofixprebinding to linker.
	* doc/invoke.texi: Document new Darwin linker option -nofixprebinding.
	
174 175 176 177 178
2003-09-09  Eric Christopher  <echristo@redhat.com>

	* configure.in: Change usage of 'head' to 'sed 1q'.
	* configure: Regenerate.

179 180 181 182 183 184 185
2003-09-09  Richard Henderson  <rth@redhat.com>

	* except.c: Include cgraph.h.
	(output_function_exception_table): Invoke
	cgraph_varpool_mark_needed_node.
	* Makefile.in (except.o): Update.

186 187 188 189 190
2003-09-07  Kelley Cook  <kelleycook@wideopenwest.com>

	* Makefile.in: Define REMAKEFLAGS for LANGUAGES & BOOT_CFLAGS
	and use it throughout.

191 192 193 194 195 196 197 198 199 200 201 202
2003-09-09  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>

	* builtins.c (real_dconstp, fold_builtin_logarithm,
	fold_builtin_exponent): New, split out from fold_builtin.  Also
	generalize to add log2, log10, exp2 and exp10/pow10 equivalents.
	* emit-rtl.c (dconst3, dconst10, dconstthird): New.
	(init_emit_once): Initialize new dconsts, use ARRAY_SIZE in lieu
	of hardcoded array size.
	* fold-const.c (fold): Add cases for exp2, exp10 and pow10.
	(tree_expr_nonnegative_p): Likewise.
	* real.h (dconst3, dconst10, dconstthird): New.

203 204 205 206 207 208 209
Tue Sep  9 22:18:48 CEST 2003  Jan Hubicka  <jh@suse.cz>

	* cgraphunit.c (cgraph_finalize_function): Fix handling of extern
	inline functions.
	(cgraph_finalize_compilation_unit): Fix crash when dealing with lost
	DECL_SAVED_TREE.

210 211 212 213 214
2003-09-09  Roger Sayle  <roger@eyesopen.com>

	* builtins.c (fold_builtin_cabs): Protect the complex argument
	against multiple evaluation when optimizing cabs* into sqrt*.

215 216 217 218
Tue Sep  9 15:36:28 CEST 2003  Jan Hubicka  <jh@suse.cz>

	* varasm.c (notice_global_symbol):  Properly deal with weak symbols.

219 220 221 222
2003-09-08  Kelley Cook <kelleycook@wideopenwest.com>

	* Makefile.in: Revert yesterday's change.

223
2003-09-08  Bernardo Innocenti  <bernie@develer.com>
224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244
            Peter Barada <peter@baradas.org>

	* config/m68k/coff.h (REGISTER_NAMES): Add fake register `argptr'
	* config/m68k/hp320.h (REGISTER_NAMES): Likewise.
	* config/m68k/linux.h (REGISTER_NAMES): Likewise.
	* config/m68k/m68kelf.h (REGISTER_NAMES): Likewise.
	* gcc/config/m68k/sgs.h (REGISTER_NAMES): Likewise.
	* config/m68k/m68k-protos.h (m68k_initial_elimination_offset): Add prototype.
	* config/m68k/m68k.c (m68k_frame): New struct, simular to ix86 back-end.
	(m68k_compute_frame_layout): New function.
	(m68k_initial_elimination_offset): New function.
	(m68k_output_function_prologue): ColdFire-specific movem handling.
	(m68k_output_function_epilogue): Likewise.
	* config/m68k/m68k.h (FIRST_PSEOUDO_REGISTER): Make room for argptr reg.
	(ARG_POINTER_REGNUM): Add new definition.
	(INITIAL_FRAME_POINTER_OFFSET): Remove macro.
	(ELIMINABLE_REGS): Define new macro, like in ix86 back-end.
	(CAN_ELIMINATE): Likewise.
	(INITIAL_ELIMINATION_OFFSET): Likewise.

2003-09-08  Bernardo Innocenti  <bernie@develer.com>
245 246 247 248

	* config/m68k/m68k.c (m68k_output_function_prologue): Simplify
	by removing redundant variable cfa_store_offset.

249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264
2003-09-08  Mark Mitchell  <mark@codesourcery.com>

	* langhooks-def.h (lhd_register_builtin_type): New function.
	(LANG_HOOKS_REGISTER_BUILTIN_TYPE): New macro.
	(LANG_HOOKS_FOR_TYPES_INITIALIZER): Update.
	* langhooks.h (lang_hooks_for_types): Add register_builtin_type.
	* langhooks.c (lhd_register_builtin_type): New function.
	* c-common.h (c_register_builtin_type): Declare.
	* c-common.c (c_register_builtin_type): New function.
	* c-lang.c (LANG_HOOKS_REGISTER_BUILTIN_TYPE): Define to
	c_register_builtin_type.
	* config/ia64/hpux.h (TARGET_OS_CPP_BUILTINS): Remove __fpreg,
	__float80, and __float128 macros.
	* config/ia64/ia64.c (ia64_init_builtins): Create __fpreg,
	__float80, and __float128 types.

265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287
2003-09-08  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>

	* builtin-types.def
	(BT_FN_COMPLEX_LONGDOUBLE_COMPLEX_LONGDOUBLE_COMPLEX_LONGDOUBLE,
	BT_FN_COMPLEX_DOUBLE_COMPLEX_DOUBLE_COMPLEX_DOUBLE,
	BT_FN_COMPLEX_FLOAT_COMPLEX_FLOAT_COMPLEX_FLOAT): New.
	* builtins.def (BUILT_IN_CACOS, BUILT_IN_CACOSF, BUILT_IN_CACOSH,
	BUILT_IN_CACOSHF, BUILT_IN_CACOSHL, BUILT_IN_CACOSL,
	BUILT_IN_CARG, BUILT_IN_CARGF, BUILT_IN_CARGL, BUILT_IN_CASIN,
	BUILT_IN_CASINF, BUILT_IN_CASINH, BUILT_IN_CASINHF,
	BUILT_IN_CASINHL, BUILT_IN_CASINL, BUILT_IN_CATAN,
	BUILT_IN_CATANF, BUILT_IN_CATANH, BUILT_IN_CATANHF,
	BUILT_IN_CATANHL, BUILT_IN_CATANL, BUILT_IN_CCOS, BUILT_IN_CCOSF,
	BUILT_IN_CCOSH, BUILT_IN_CCOSHF, BUILT_IN_CCOSHL, BUILT_IN_CCOSL,
	BUILT_IN_CEXP, BUILT_IN_CEXPF, BUILT_IN_CEXPL, BUILT_IN_CPOW,
	BUILT_IN_CPOWF, BUILT_IN_CPOWL, BUILT_IN_CPROJ, BUILT_IN_CPROJF,
	BUILT_IN_CPROJL, BUILT_IN_CSIN, BUILT_IN_CSINF, BUILT_IN_CSINH,
	BUILT_IN_CSINHF, BUILT_IN_CSINHL, BUILT_IN_CSINL, BUILT_IN_CSQRT,
	BUILT_IN_CSQRTF, BUILT_IN_CSQRTL, BUILT_IN_CTAN, BUILT_IN_CTANF,
	BUILT_IN_CTANH, BUILT_IN_CTANHF, BUILT_IN_CTANHL, BUILT_IN_CTANL):
	New.
	* doc/extend.texi: Document new builtins.

288 289 290 291 292 293 294 295 296 297 298 299 300 301
Tue Sep  9 02:18:06 CEST 2003  Jan Hubicka  <jh@suse.cz>

	* cgraph.c (cgraph_varpool_finalize_decl): Sanity check duplicated
	finalization.
	* cgraphunit.c (decide_is_fnction_needed): Avoid special case of nested
	functions, check for COMDAT.
	(cgraph_assemble_pending_functions): Break out from...
	(cgraph_finalize_function): ... here; allow redefinig of extern inline
	functions.
	(record_call_1): Record function references only in non-unit-at-a-time
	mode.
	(cgraph_analyze_function): Reset current_function_decl.
	(cgraph_finalize_compilation_unit):  Assemble pending functions.

302 303 304 305 306 307
2003-09-08  Mark Mitchell  <mark@codesourcery.com>

	* mklibgcc.in (libcc.a): Depend on stmp-dirs.
	(libgov.a): Likewise.
	(libgcc_eh.a): Likewise.

308 309 310 311
2003-09-08  Roger Sayle  <roger@eyesopen.com>

	* fold-const.c (operand_equal_p): Clarify documentation.

312 313 314 315 316 317
2003-09-08  Richard Henderson  <rth@redhat.com>

	* c-decl.c (c_expand_body_1): Push and pop function context here.
	* tree-optimize.c (tree_rest_of_compilation): ... not here.  Take
	nested argument instead of computing nesting ourselves.

318 319
2003-09-08  Jakub Jelinek  <jakub@redhat.com>

320 321 322 323 324
	* toplev.c (rest_of_handle_stack_regs): Call split_all_insns before
	regstack if optimizing but not scheduling after reload.

2003-09-08  Jakub Jelinek  <jakub@redhat.com>

325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380
	* config/sparc/sparc.c (struct machine_function): New type.
	(TARGET_HAVE_TLS, TARGET_CANNOT_FORCE_CONST_MEM): Define.
	(sparc_override_options): Initialize init_machine_status.
	(tls_symbolic_operand, tgd_symbolic_operand, tld_symbolic_operand,
	tie_symbolic_operand, tle_symbolic_operand): New functions.
	(symbolic_operand): Disallow tls_symbolic_operand.
	(symbolic_memory_operand): Likewise.
	(tls_call_delay, sparc_cannot_force_const_mem, legitimate_constant_p,
	constant_address_p, legitimate_pic_operand_p, legitimate_address_p):
	New functions.
	(sparc_tls_symbol): New variable.
	(sparc_tls_get_addr, sparc_tls_got, legitimize_tls_address,
	legitimize_address): New functions.
	(print_operand): Handle %&.
	(sparc_init_machine_status, get_some_local_dynamic_name,
	get_some_local_dynamic_name_1): New functions.
	(sparc_output_dwarf_dtprel): New function.
	* config/sparc/sparc.h (CONSTANT_ADDRESS_P): Moved into
	constant_address_p.
	(LEGITIMATE_PIC_OPERAND_P): Moved into legitimate_pic_operand_p.
	(LEGITIMATE_CONSTANT_P): Moved into legitimate_constant_p.
	(GO_IF_LEGITIMATE_ADDRESS): Moved into legitimate_address_p.
	(LEGITIMIZE_ADDRESS): Moved into legitimize_address.
	(PRINT_OPERAND_PUNCT_VALID_P): Add '&'.
	(TARGET_TLS, TARGET_SUN_TLS, TARGET_GNU_TLS): Define.
	(ASM_OUTPUT_DWARF_DTPREL): Define.
	(PREDICATE_CODES): Add tgd_symbolic_operand, tld_symbolic_operand,
	tie_symbolic_operand, tle_symbolic_operand.
	* config/sparc/sparc.md (UNSPEC_TLSGD, UNSPEC_TLSLDM, UNSPEC_TLSLDO,
	UNSPEC_TLSIE, UNSPEC_TLSLE, UNSPEC_TLSLD_BASE): New constants.
	(tls_call_delay): New attribute.
	(in_call_delay): Use it.
	(movqi, movhi, movsi, movdi): Call legitimize_tls_address if needed.
	(tgd_hi22, tgd_lo10, tgd_add32, tgd_add64, tgd_call32, tgd_call64,
	tldm_hi22, tldm_lo10, tldm_add32, tldm_add64, tldm_call32, tldm_call64,
	tldo_hix22, tldo_lox10, tldo_add32, tldo_add64, tie_hi22, tie_lo10,
	tie_ld32, tie_ld64, tie_add32, tie_add64, tle_hix22_sp32,
	tle_lox10_sp32, tle_hix22_sp64, tle_lox10_sp64): New insns.
	(tldo_ldub_sp32, tldo_ldub1_sp32, tldo_ldub2_sp32, tldo_ldsb1_sp32,
	tldo_ldsb2_sp32, tldo_ldub_sp64, tldo_ldub1_sp64, tldo_ldub2_sp64,
	tldo_ldub3_sp64, tldo_ldsb1_sp64, tldo_ldsb2_sp64, tldo_ldsb3_sp64,
	tldo_lduh_sp32, tldo_lduh1_sp32, tldo_ldsh1_sp32, tldo_lduh_sp64,
	tldo_lduh1_sp64, tldo_lduh2_sp64, tldo_ldsh1_sp64, tldo_ldsh2_sp64,
	tldo_lduw_sp32, tldo_lduw_sp64, tldo_lduw1_sp64, tldo_ldsw1_sp64,
	tldo_ldx_sp64, tldo_stb_sp32, tldo_stb_sp64, tldo_sth_sp32,
	tldo_sth_sp64, tldo_stw_sp32, tldo_stw_sp64, tldo_stx_sp64): New
	insns.
	* config/sparc/sparc-protos.h (legitimate_constant_p,
	constant_address_p, legitimate_pic_operand_p, legitimate_address_p,
	legitimize_tls_address, legitimize_address, tls_symbolic_operand,
	tls_call_delay, sparc_output_dwarf_dtprel): New prototypes.
	* config/sparc/linux.h (TARGET_GNU_TLS, TARGET_SUN_TLS): Define.
	* config/sparc/linux64.h (TARGET_GNU_TLS, TARGET_SUN_TLS): Likewise.
	* configure.in (sparc*-*-*): Add TLS check.
	* configure: Rebuilt.

381 382 383 384 385 386
2003-09-07  Eric Botcazou  <ebotcazou@libertysurf.fr>

	PR target/11689
	* config/i386/i386.c (memory_address_length): Fix computation when
	the base is esp or ebp.

387 388 389 390 391 392
2003-09-07  Mark Mitchell  <mark@codesourcery.com>

	PR c++/11852
	* varasm.c (initializer_constant_valid_p): Correct logic for
	CONSTRUCTORs.

393 394
2003-09-07  Roger Sayle  <roger@eyesopen.com>

395 396 397 398 399 400 401
	* expr.c (expand_operands): New function to expand an operand pair.
	(expand_expr): Call expand_operands whenever we need to expand both
	operands of a binary operator.
	(do_store_flag): Likewise for operands of comparison operations.

2003-09-07  Roger Sayle  <roger@eyesopen.com>

402 403 404
	* combine.c (combine_simplify_rtx): Don't convert -(A*B) into
	(-A)*B if we care about sign-dependent rounding.

405 406 407 408 409 410 411
2003-09-07  Gabriel Dos Reis  <gcc@integrable-solutions.net>

	* c-pretty-print.h (pp_c_left_brace): Declare.
	(pp_c_right_brace): Likewise.
	* c-pretty-print.c (pp_c_left_brace): Now a function
	(pp_c_right_brace): Likewise.

412 413 414 415
Sun Sep  7 14:50:03 CEST 2003  Jan Hubicka  <jh@suse.cz>

	* cfgcleanup.c (try_simplify_condjump): Fix again the preivous patch.

416 417
2003-09-07  Gabriel Dos Reis  <gdr@integrable-solutions.net>

418 419 420 421
	* diagnostic.c (warn_deprecated_use): Move to toplev.c

2003-09-07  Gabriel Dos Reis  <gdr@integrable-solutions.net>

422 423 424
	* langhooks.c (lhd_print_error_function): Move from diagnostic.c.
	* Makefile.in (langhooks.o): Depend on diagnostic.h

425 426 427 428 429
2003-09-06  James E Wilson  <wilson@tuliptree.org>

	* loop.c (loop_regs_update): Delete else clause for PATTERN rtx and
	simplify.

430 431 432 433
2003-09-07  Kelley Cook  <kelleycook@wideopenwest.com>

	* Makefile.in: Define $REMAKE to be $MAKE with LANGUAGES & BOOT_CFLAGS
	and use it throughout.
434

435
2003-09-07  Jan Hubicka  <jh@suse.cz>
436

437 438
	* cfgcleanup.c (try_simplify_condjump): Fix my previous patch.

439
	* toplev.c  (rest_of_decl_compilation):  Do not finalize external
440
	virables.
441

442 443 444 445
	* cgraph.c (cgraph_mark_reachable_node): Only enqueue finalized
	functions.
	(cgraph_varpool_finalize_decl): Notice global symbol when needed.

446
2003-09-06  Jan Hubicka  <jh@suse.cz>
447 448 449 450 451 452 453

	PR target/12070
	* calls.c (emit_library_call_value_1): Fix saving of BLKmode arguments.

	PR opt/12082
	* cfgcleanup.c (try_simplify_condjump): Avoid unreachable code warning.

454 455 456 457
2003-09-06  Gabriel Dos Reis  <gdr@integrable-solutions.net>

	* diagnostic.c (announce_function): Move to toplev.c.

458 459 460 461 462
2003-09-06  Zdenek Dvorak  <rakdver@atrey.karlin.mff.cuni.cz>

	* gcse.c (expr_equiv_p): Don't consider anything to be equal to
	volatile mem.

463 464 465 466 467
2003-09-06  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>

	* ggc-common.c (init_ggc_heuristics): Don't use the heuristics
	when gc checking is enabled.

468 469 470 471 472 473
2003-09-06  Steven Bosscher  <steven@gcc.gnu.org>

	PR c/9862
	* c-decl.c (c_expand_body_1): Move return warning from here...
	(finish_function): ...to here.

474 475 476 477 478
2003-09-05  Geoffrey Keating  <geoffk@apple.com>

	* config/rs6000/darwin.h (PREFERRED_RELOAD_CLASS): Always return
	a subset of the input class.

479 480 481 482 483 484
2003-09-05  Kazu Hirata  <kazu@cs.umass.edu>

	* config/i860/i860.c: Follow spelling conventions.
	* config/i860/i860.h: Likewise.
	* config/sh/sh.h: Likewise.

485 486 487 488 489 490
2003-09-05  Nitin Yewale  <NitinY@KPITCummins.com>

	* config/h8300/h8300-protos.h: Declare h8300_hard_regno_rename_ok
	* config/h8300/h8300.h (HARD_REGNO_RENAME_OK): New.
	* config/h8300/h8300.c (h8300_hard_regno_rename_ok): New.

491 492 493 494 495 496 497
2003-09-05  Roger Sayle  <roger@eyesopen.com>
	    Richard Henderson  <rth@redhat.com>

	PR optimization/1823
	* expmed.c (expand_divmod <EXACT_DIV_EXPR>): Use an unsigned
	multiplication to implement division by constant integer.

498 499 500 501 502 503 504
Fri Sep  5 07:35:16 CEST 2003  Jan Hubicka  <jh@suse.cz>

	* opts.c (decode_options): Enable unit-at-a-time at -O2.
	* params.def (max-inline-insns-single): Set to 500
	(max-inline-insns-auto): Set to 150
	* invoke.texi (max-inline-insns-single, max-inline-insns-auto): Update.

505 506 507 508 509 510 511 512 513 514 515 516
2003-09-04  Richard Henderson  <rth@redhat.com>

	* cgraph.c (cgraph_mark_reachable_node): Split out from ...
	(cgraph_mark_needed_node): Remove needed argument.
	* cgraph.h: Update to match.
	* cgraphunit.c (decide_is_function_needed): Split out from ...
	(cgraph_finalize_function): Reorg.  Avoid deferred_inline_function
	if we generated the function.
	(record_call_1): Update for cgraph_mark_reachable_node.
	* varasm.c (mark_referenced): Likewise.
	* objc/objc-act.c (mark_referenced_methods): Likewise.

517 518 519 520
2003-09-04  DJ Delorie  <dj@redhat.com>

	* targhooks.c: Add comment explaining the migration process.

521 522 523 524 525
2003-09-04  Eric Christopher  <echristo@redhat.com>

	* config/frv/t-frv: Fix path for frv-abi.h.
	* config/frv/frv-asm.h: Fix string concatenation.

526 527 528 529 530
2003-09-04  DJ Delorie  <dj@redhat.com>

	* builtins.c (apply_args_size): Guard against a NULL cfun.
	(expand_builtin_apply_args_1): Likewise.
	(expand_builtin_apply): Likewise.
531
	Fixes PR bootstrap/12172.
532

533 534 535 536 537 538 539
2003-09-04  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>

	* configure.in (gcc_cv_as_ix86_cmov_sun_syntax): Check if
	assembler supports Sun syntax for cmov.
	* configure: Regenerate.
	* config.in: Likewise.
	* config/i386/i386.c: Rename CMOV_SUN_AS_SYNTAX to
540
	HAVE_AS_IX86_CMOV_SUN_SYNTAX.
541 542 543
	* config/i386/sol2.h (CMOV_SUN_AS_SYNTAX): Remove.
	Fixes PR target/12101.

544 545 546 547
2003-09-04  Matt Austern  <austern@apple.com>

	* c-common.c (fname_as_string): Use lang_hooks.decl_printable_name
	with verbosity 0, instead of DECL_NAME, for human-readable string.
548

549 550
2003-09-04  Eric Christopher  <echristo@redhat.com>

551 552 553 554 555
	* targhooks.c (default_return_in_memory): Allow
	unconverted ports.

2003-09-04  Eric Christopher  <echristo@redhat.com>

556 557 558 559 560
	* targhooks.c (default_return_in_memory): Fix typo
	in last checkin.

2003-09-04  Eric Christopher  <echristo@redhat.com>

561 562 563
	* targhooks.c (default_return_in_memory): Fix default
	definition.

564 565 566 567 568 569 570
2003-09-04  Bernardo Innocenti  <bernie@develer.com>

	* config/m68k/m68k.c (m68k_coff_asm_named_section): Restore
	deleted function.
	* config/m68k/coff.h (M68K_TARGET_COFF): Add flag used to
	enable coff-only code in m68k.c.

571 572
2003-09-04  Nick Clifton  <nickc@redhat.com>

573 574 575 576 577 578 579 580 581 582
	* config.gcc: Add v850e1 target.  Allow --with-cpu to accept
	v850e1.
	* config/v850/v850.h: Accept v850e1 as a default CPU.
	Accept -mv850e1 as a command line option.
	* doc/invoke.texi: Document new -mv850e1 command line switch.
	* config/v850/t-v850: Treat -mv850e1 as a multilib alias for
	-mv850e.

2003-09-04  Nick Clifton  <nickc@redhat.com>

583 584 585 586 587 588
	* config.gcc (v850e-*-*): Use t-v850e makefile fragment.
        * config/v850/t-v850: Only produce one extra multilib - for
        the v850e.
        * config/v850/t-v850e: New file: Only produce one extra
        multilib - for the v850.

589 590 591 592 593 594 595 596 597 598
2003-09-04  Jakub Jelinek  <jakub@redhat.com>

	* config/ia64/libgcc-ia64.ver: Export _Unwind_GetBSP@@GCC_3.3.2.
	* config/ia64/unwind-ia64.c (_Unwind_GetBSP): New function.
	* unwind.h (_Unwind_GetBSP): New prototype.
	* libgcc-std.ver: Add empty GCC_3.3.2 version.
	* mkmap-symver.awk: For symbol versions with no exported symbols,
	don't put anything into version script, just change all symbol
	versions which inherit from it to inherit from its ancestor.

599 600 601 602 603 604 605 606 607 608 609 610
2003-09-04  Eric Christopher  <echristo@redhat.com>

	* config/mips/mips.c (mips_expand_prologue): Convert to
	calls.struct_value_rtx hook.
	(reg_or_const_float_1_operand): New.
	* config/mips/mips.h: Update Comments.
	(mips_arg): Add reg_or_const_float_1_operand.
	* config/mips/mips.md (divdf3); Convert to expander.
	(divsf3): Ditto.
	(*divdf3): New pattern.
	(*divsf3): Ditto.

611 612 613 614 615
Thu Sep  4 10:43:24 CEST 2003  Jan Hubicka  <jh@suse.cz>

	* toplev.c (wrapup_global_declarations): Fix final pass in
	unit-at-atime mode.

616 617 618 619 620
2003-09-04  Mark Mitchell  <mark@codesourcery.com>

	* doc/extend.texi: Document removal of cast-as-lvalue extension in
	C++.

621 622 623 624
2003-09-04  Nicolas Roche  <roche@act-europe.fr>

	* gcc.c (process_command): Fix typo.

625 626 627 628 629 630 631
2003-09-03  David O'Brien  <obrien@FreeBSD.org>

	optimization/11980
	* config/i386/freebsd.h (SIZE_TYPE): Support TARGET_64BIT.
	(PTRDIFF_TYPE): Likewise.
	(WCHAR_TYPE_SIZE): Likewise.

DJ Delorie committed
632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703
2003-09-03  DJ Delorie  <dj@redhat.com>

	* targhooks.c: New file.
	* targhooks.h: New file.
	* Makefile.in: Add targhooks.o support.
	(function.o): Depend on$(TARGET_H).
	(stmt.o): Likewise.
	(combine.o): Depend on $(TREE_H) and $(TARGET_H).
	* builtins.c (apply_args_size, expand_builtin_apply_args_1,
	expand_builtin_apply): Convert to calls.struct_value_rtx hook.
	(expand_builtin_saveregs): Convert to
	calls.expand_builtin_saveregs hook.
	* c-decl.c (start_decl): Handle new calls.promote_prototypes hook
	here, instead of ...
	(get_parm_info) ... here.
	(store_parm_decls_oldstyle): Convert to calls.promote_prototypes
	hook.
	(finish_function): Handle calls.promote_prototypes hook here too.
	* c-typeck.c (convert_arguments): Convert to
	calls.promote_prototypes hook.
	(c_convert_parm_for_inlining): Likewise.
	* calls.c (initialize_argument_information): Convert to
	calls.promote_function_args hook.
	(expand_call): Convert to calls.struct_value_rtx,
	calls.strict_argument_naming,
	calls.pretend_outgoing_varargs_named, and
	calls.promote_function_return hooks.  Pass fndecl to
	aggregate_value_p.  Initialize CUMULATIVE_ARGS before calling
	hooks, so they can use that.
	(emit_library_call_value_1): Likewise.
	* combine.c (setup_incoming_promotions): Convert to
	calls.promote_function_args hook.
	* emit-rtl.c: Convert to calls.struct_value_rtx hook.
	* expr.c (expand_assignment): Pass call to aggregate_value_p.
	(expand_expr): Likewise.
	* expr.h: Remove support for SETUP_INCOMING_VARARGS,
	STRICT_ARGUMENT_NAMING, PRETEND_OUTGOING_VARARGS_NAMED,
	RETURN_IN_MEMORY macro defaults.
	* final.c (profile_function): Convert to calls.struct_value_rtx
	hook.
	* function.c (aggregate_value_p): Accept function type tree as
	second parameter; try to deduce fntype from it.  Convert to
	calls.return_in_memory hook.
	(assign_parms): Convert to calls.setup_incoming_varargs,
	calls.strict_argument_naming, calls.promote_function_args,
	calls.pretend_outgoing_varargs_named hooks.  Pass fndecl to
	aggregate_value_p.
	(expand_function_start): Likewise.  Convert to
	calls.struct_value_rtx hook.
	(expand_function_end): Convert to calls.promote_function_return hook.
	(allocate_struct_function): Pass fndecl to aggregate_value_p.
	* hard-reg-set.h: Update comments to new hook names.
	* integrate.c (expand_inline_function): Pass fndecl to aggregate_value_p.
	* reg-stack.c (stack_result): Likewise.
	* rtl.h (struct_value_rtx, struct_value_incoming_rtx): Delete.
	* stmt.c (expand_value_return): Convert to
	calls.promote_function_return hook.
	* target-def.h: Add TARGET_PROMOTE_FUNCTION_ARGS,
	TARGET_PROMOTE_FUNCTION_RETURN, TARGET_PROMOTE_PROTOTYPES,
	TARGET_STRUCT_VALUE_RTX, TARGET_RETURN_IN_MEMORY,
	TARGET_EXPAND_BUILTIN_SAVEREGS, TARGET_SETUP_INCOMING_VARARGS,
	TARGET_STRICT_ARGUMENT_NAMING,
	TARGET_PRETEND_OUTGOING_VARARGS_NAMED, and TARGET_CALLS.
	* target.h: Likewise.
	* tree.h (aggregate_value_p): Also takes a tree to deduce function
	attributes from (for target hooks).
	* doc/tm.texi (PROMOTE_FUNCTION_ARGS, PROMOTE_FUNCTION_RETURN,
	PROMOTE_PROTOTYPES, RETURN_IN_MEMORY, STRUCT_VALUE_REGNUM,
	STRUCT_VALUE, STRUCT_VALUE_INCOMING_REGNUM, STRUCT_VALUE_INCOMING,
	EXPAND_BUILTIN_SAVEREGS, SETUP_INCOMING_VARARGS,
	STRICT_ARGUMENT_NAMING, PRETEND_OUTGOING_VARARGS_NAMED): Convert
	to hooks.
704

DJ Delorie committed
705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720
	* config/alpha/alpha.c (alpha_output_mi_thunk_osf): Pass function
	to aggregate_value_p.
	* config/arm/arm.c (arm_init_cumulative_args,
	arm_output_mi_thunk): Likewise.
	* config/i386/i386.c (ix86_return_pops_args, x86_this_parameter):
	Likewise.
	* config/mips/mips.c (mips_save_reg_p, mips_expand_prologue,
	mips_can_use_return_insn): Likewise.
	* config/rs6000/rs6000.c (rs6000_output_mi_thunk): Likewise.
	* config/s390/s390.c (s390_output_mi_thunk): Likewise.
	* config/sparc/sparc.c (sparc_output_mi_thunk): Pass function to
	aggregate_value_p.
	* config/story16/stormy16.c (xstormy16_asm_output_mi_thunk): Pass
	function to aggregate_value_p.
	* objc/objc-act.c (generate_struct_by_value_array): Pass NULL to
	aggregate_value_p.
721

DJ Delorie committed
722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762
	* config/sh/sh-protos.h (sh_builtin_saveregs): Remove.
	(sh_attr_renesas_p, sh_cfun_attr_renesas_p, sh_function_arg,
	sh_function_arg_advance, sh_pass_in_reg_p): New.  * config/sh/sh.c
	(sh_handle_renesas_attribute, sh_promote_prototypes,
	sh_struct_value_rtx, sh_return_in_memory, sh_builtin_saveregs,
	sh_setup_incoming_varargs, sh_strict_argument_naming,
	sh_pretend_outgoing_varargs_named): New decls.
	(targetm): Add new hooks.
	(calc_live_regs): Save MACL and MACH if the function has the
	renesas attribute.
	(sh_expand_prologue): Support renesas attribute.
	(sh_builtin_saveregs): Make static.
	(sh_build_va_list): Support renesas attribute.
	(sh_va_start): Likewise.
	(sh_va_arg): Likewise.
	(sh_promote_prototypes): New.
	(sh_function_arg): New, moved from sh.h.  Support renesas
	attribute.
	(sh_function_arg_advance): Likewise.
	(sh_return_in_memory): Likewise.
	(sh_strict_argument_naming): Likewise.
	(sh_pretend_outgoing_varargs_named): Likewise.
	(sh_struct_value_rtx): New.
	(sh_attribute): Add renesas attribute.
	(sh_handle_renesas_attribute): New.
	(sh_attr_renesas_p, sh_cfun_attr_renesas_p): New.
	(sh_ms_bitfield_layout_p): Support renesas attribute also.
	(sh_output_mi_thunk): Pass function to aggregate_value_p.  *
	config/sh/sh.h (TARGET_SWITCHES): Add -mrenesas as an alias for
	-mhitachi.
	(STRUCT_VALUE_REGNUM, STRUCT_VALUE, RETURN_IN_MEMORY): Moved to
	target hooks.
	(sh_args): Add renesas_abi flag.
	(INIT_CUMULATIVE_ARGS): Set it.  Pass fndecl to aggregate_value_p.
	(FUNCTION_ARG_ADVANCE, FUNCTION_ARG): Move to sh.c.
	(PASS_IN_REG_P): Support renesas attribute.  Pass DF and TF on the
	stack for the renesas abi.
	(STRICT_ARGUMENT_NAMING, PRETEND_OUTGOING_VARARGS_NAMED,
	SETUP_INCOMING_VARARGS, EXPAND_BUILTIN_SAVEREGS,
	PROMOTE_PROTOTYPES): Moved to sh.c.  * config/sh/sh.md (call): Set
	call cookie to indicate renesas calls.
763

764 765 766 767 768 769
2003-09-03  Mostafa Hagog  <mustafa@il.ibm.com>

	* gcse.c (replace_one_set): New function.
	(pre_insert_copy_insn): Change the order of copying
	to make copy propagation discover additional PRE opportunities.

770 771 772 773 774 775 776
2003-09-03  Roger Sayle  <roger@eyesopen.com>

	PR optimization/11700.
	* simplify-rtx.c (simplify_subreg): Check that the subreg offset
	of a hard register is representable before trying to simplify it
	using subreg_hard_regno.

777 778
2003-09-04  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>

779 780 781 782 783
	* configure.in (gcc_cv_ld_hidden): Disable unless using GNU ld.
	* configure: Regenerate.

2003-09-04  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>

784 785
	* intl.h (N_): Remove parentheses.

786 787 788 789 790 791 792 793 794 795
2003-09-03  Bernardo Innocenti  <bernie@develer.com>

	* config.gcc (m68k-*-linux*): Remove definition of LINUX_DEFAULT_ELF.
	* config/i370/linux.h (LINUX_DEFAULT_ELF): Remove unconditional
	definition and code blocks compiled when not defined.
	* config/i386/linux.h (LINUX_DEFAULT_ELF): Likewise.
	* config/i386/linux64.h (LINUX_DEFAULT_ELF): Likewise.
	* config/sparc/linux.h: (LINUX_DEFAULT_ELF): Likewise.
	* config/sparc/linux64.h: (LINUX_DEFAULT_ELF): Likewise.

796 797 798 799 800 801 802
2003-09-03  Jeff Sturm  <jsturm@one-point.com>

	* cgraphunit.c (visited_nodes): New static variable.
	(record_call_1): Use walk_tree with visited_nodes.
	(cgraph_create_edges): Use walk_tree with visited_nodes.
	Setup/teardown visited_nodes hashtable.

803 804 805 806 807 808 809 810 811 812 813 814
2003-09-03  Roger Sayle  <roger@eyesopen.com>

	* toplev.c (flag_rounding_math): New global variable.
	(f_options): Add to the list of language independent options.
	* flags.h (flag_rounding_math): Prototype here.
	(HONOR_SIGN_DEPENDENT_ROUNDING): Use flag_rounding_math instead.
	* common.opt (frounding-math): New common command line option.
	* opts.c (common_handle_option): Handle OPT_frounding_math.
	(set_fast_math_flags): -ffast-math clears flag_rounding_math.

	* doc/invoke.texi: Document this new command line option.

815 816 817 818
2003-09-03  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>

	* config/sol2.h (NO_IMPLICIT_EXTERN_C): Update comment.

819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843
Wed Sep  3 16:55:25 CEST 2003  Jan Hubicka  <jh@suse.cz>

	* Makefile.in (c-objc-common.o): Kill gt-c-objc-common.h dependency.
	* c-decl.c (finish_function):  Kill arguments, always use cgraph path.
	* c-objc-common.c: Kill include of gt-c-objc-common.h
	(expand_deferred_fns, deffer_fn): Kill function.
	(deferred_fns): Kill variable.
	(finish_cdtor): Update finish_function call.
	(c_objc_common_finish_file): Always call cgraph code.
	* c-parse.c: Regenerate.
	* c-parse.y: Regenerate.
	* c-tree.h (finish_function): Update prototype.
	* objc-acct.c (build_module_descriptor, finish_method_def):
	Update call of finish_function.
	* cgraphunit.c (cgraph_default_inline_p, cgraph_analyze_function): Add
	forward prototype.
	(cgraph_finalize_function): In non-unit-at-a-time mode analyze the
	function and assemble it if needed.
	(cgraph_finalize_compilation_unit): Do nothing in non-unit-at-a-time
	mode.
	(cgraph_optimize): Likewise.
	(cgraph_expand_function): In non-unit-at-a-time mode keep function body
	even when it has no inline callees.
	* c-parse.in: Update calls to finish_function.

Nick Clifton committed
844 845 846 847 848 849
2003-09-03  Nick Clifton  <nickc@redhat.com>

	* config/arm/arm.h: Handle TARGET_CPU_iwmmxt.
	Use #error to generate the message if TARGET_DEFAULT is not
	recognised.

850 851 852 853 854 855 856 857 858 859 860 861
2003-09-03  Richard Sandiford  <rsandifo@redhat.com>

	* config/mips/mips.h (MASK_UNUSED1): Remove.
	(MASK_XGOT, TARGET_XGOT): Define.
	(TARGET_SWITCHES): Add an entry for -mxgot.
	(ASM_SPEC): Map -mxgot to -xgot.
	* config/mips/mips.c (mips_symbol_insns): Use TARGET_XGOT to decide
	whether we're using a big-GOT sequences.
	(mips_legitimize_const_move, mips_expand_call): Likewise.
	(override_options): Revert 2003-01-09 change.
	* doc/invoke.texi: Document -mxgot.

862 863 864 865 866
2003-09-02  Jason Merrill  <jason@redhat.com>

	* config/sol2.h (NO_IMPLICIT_EXTERN_C): Define here.
	* config/sparc/sol2.h: Not here.

867 868 869 870 871 872 873
2003-09-02  Roger Sayle  <roger@eyesopen.com>

	* expr.c (expand_expr): The code following both_summands performs
	the same task as simplify_gen_binary.  Replace all gotos to
	both_summands with a call to simplify_gen_binary and delete the
	now unused label.

874 875 876 877 878
2003-09-02  Jason Merrill  <jason@redhat.com>

	PR c++/7327
	* config/sparc/sol2.h (NO_IMPLICIT_EXTERN_C): Define.

879 880 881 882 883 884
2003-09-02  Jeff Sturm  <jsturm@one-point.com>

	* cgraphunit.c (record_call_1): Use walk_tree_without_duplicates.
	(cgraph_optimize_function): Set current_function_decl to the
	fndecl we're integrating from.

885 886 887 888 889
2003-09-02  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>

	* builtins.def: Break out _Complex math functions into their
	own category.

890 891 892 893
2003-09-02  Andreas Jaeger  <aj@suse.de>

	* langhooks-def.h (LANG_HOOKS_RTL_EXPAND_STMT): Cast properly.

894 895 896 897 898
2003-09-02  Josef Zlomek  <zlomekj@suse.cz>

	* cfgbuild.c (compute_outgoing_frequencies): Use NOTE instead of
	finding the note again.

899 900 901 902
2003-09-02  Nathanael Nerode  <neroden@gcc.gnu.org>

	* config.gcc: Remove host-specific rewrites of target_alias.

903 904
2003-09-01  Mark Mitchell  <mark@codesourcery.com>

905 906
	* Makefile.in (genprogs): Fix typo.

907 908 909 910 911 912 913 914 915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 934 935 936 937 938 939 940 941 942 943 944 945 946 947 948 949
	* Makefile.in (gencheck.o): Remove build commands.
	(dummy-conditions.o): Likewise.
	(read-rtl.o): Likewise.
	(gensupport.o): Likewise.
	(genconfig$(build_exeext)): Remove rule.
	(genconfig.o): Remove build commands.
	(genflags$(build_exeext)): Remove rule.
	(genflags.o): Remove build commands.
	(gencodes$(build_exeext)): Remove rule.
	(gencodes.o): Remove build commands.
	(genconstants.o): Remove build commands.
	(genemit$(build_exeext)): Remove rule.
	(genemit.o): Remove build commands.
	(genrecog$(build_exeext)): Remove rule.
	(genrecog.o): Remove build commands.
	(genextract$(build_exeext)): Remove rule.
	(genextract.o): Remove build commands.
	(genpeep$(build_exeext)): Remove rule.
	(genpeep.o): Remove build commands.
	(genattr$(build_exeext)): Remove rule.
	(genattr.o): Remove build commands.
	(genprognames): New variable.
	(genprogs): Likewise.
	(genobjs): Likewise.
	(genprogs): New rule.
	(genobjs): Likewise.
	(genattrtab.o): Remove build commands.
	(genautomata.o): Likewise.
	(genoutput$(build_exeext)): Remove rule.
	(genoutput.o): Remove build commands.
	(gengenrtl.o): Likewise.
	(genpreds.o): Likewise.
	(gengtype.o): Likewise.
	(genconditions.o): Likewise.
	(gen-protos.o): Likewise.
	(scan.o): Likewise.
	(fix-header.o): Likewise.
	(scan-decls.o): Likewise.
	(check-g++): Combine with other check targets.
	(check-gcc): Likewise.
	(check-g77): Likewise.
	(check-objc): Likewise.

950 951
2003-09-01  Nathanael Nerode  <neroden@gcc.gnu.org>

952 953 954
	* config.gcc: Remove host-specific stuff which is unused here
	since the introduction of config.host.

955 956 957 958
	* doc/fragments.texi: Mention config.host.
	* doc/sourcebuild.texi: Mention config.host.  Give brief descriptions
	of config.build, config.host, and config.gcc.

959 960 961 962 963 964
2003-09-01  Zack Weinberg  <zack@codesourcery.com>

	* c-decl.c (pushdecl): Don't put variables on
	C_TYPE_INCOMPLETE_VARS of a type unless that type is itself
	incomplete.

965 966 967 968 969 970 971 972
2003-09-01  Nathanael Nerode  <neroden@gcc.gnu.org>

	* config.host: New file.
	* config.gcc: Remove some host-specific stuff and some
	logic needed only for repeated invocation.
	* configure.in: Use config.host.
	* configure: Regenerate.

973 974 975 976 977 978 979 980
2003-09-01  Josef Zlomek  <zlomekj@suse.cz>

	* c-typeck.c (build_binary_op): Kill BIT_ANDTC_EXPR.
	* convert.c (convert_to_integer): Kill BIT_ANDTC_EXPR.
	* fold-const.c (int_const_binop): Kill BIT_ANDTC_EXPR.
	(fold): Kill BIT_ANDTC_EXPR and label bit_and.
	* tree.def (BIT_ANDTC_EXPR): Kill.

981 982
2003-08-31  Nathanael Nerode  <neroden@gcc.gnu.org>

983 984 985
	* configure.in: Remove uses of "for x in .. ${foo}" idiom.
	* configure: Regenerate.

986 987 988 989 990 991 992 993 994 995 996 997
	* config.gcc:  Remove references to install_headers_dir, now unused
	since introduction of config.build.
	* config.gcc (i860-*-sysv4*): Don't set unused USG, SVR3 defines.

	* doc/fragments.texi, doc/sourcebuild.texi: Mention new file
	config.build.

	* config.build: New file.
	* config.gcc: Remove some build-specific stuff.
	* configure.in: Use config.build.
	* configure: Regnerate.

998 999 1000 1001 1002 1003 1004
2003-08-31  Steven Bosscher  <steven@gcc.gnu.org>
	    Roger Sayle  <roger@eyesopen.com>

	PR middle-end/11823
	* stmt.c (expand_end_case_type): Only use jump tables for dense
	switch statements when optimizing for size.

1005 1006
2003-08-31  Olivier Hainque  <hainque@act-europe.fr>

1007 1008
	* builtins.c (expand_builtin_setjmp): Use emit_jump to jump around
	the != 0 case, which ensures pending stack adjustments are flushed.
1009

1010 1011
2003-08-30  Zack Weinberg  <zack@codesourcery.com>

1012 1013 1014 1015 1016 1017 1018 1019 1020 1021 1022 1023 1024 1025 1026 1027 1028 1029 1030 1031 1032 1033 1034 1035
	* configure.frag: Delete file.
	* configure.in: Rename the substitution variables
	dep_host_xmake_file and dep_tmake_file to xmake_file and
	tmake_file respectively.  Do not expand $srcdir in the
	value of these; leave that for Make.  Introduce a new
	substitution varaible, all_lang_makefrags, which lists
	subdirectory Make-lang.in files; exclude these from
	all_lang_makefiles, which is now only for subdirectory
	outputs.  Do not invoke configure.frag.  Do not set nor
	AC_SUBST_FILE target_overrides, host_overrides, or
	language_fragments. Create build subdirectories in
	config.status extra commands.
	* configure: Regenerate.
	* Makefile.in: Update substitutions to match changes to
	configure.  Use include directives instead of @-insertions
	to read in host, target, and language fragments.
	(Makefile rule): Do not invoke configure.frag.  Do not copy
	config.status to config.run before executing it.  Set
	CONFIG_HEADERS and CONFIG_FILES so that only Makefile gets
	regenerated.
	(cstamp-h rule): Set CONFIG_FILES as well as CONFIG_HEADERS.

2003-08-30  Zack Weinberg  <zack@codesourcery.com>

1036 1037 1038 1039 1040 1041 1042 1043 1044 1045 1046
	* c-tree.h: Delete COMPARE_DIFFERENT_TU from enumeration.
	* c-typeck.c (same_translation_unit_p): New function.
	(comptypes): Use it instead of flags parameter to identify
	structure types from different translation units.
	* c-decl.c (duplicate_decls): Always call comptypes with
	COMPTYPE_STRICT flags argument.
	(c_reset_state): Set BLOCK_SUPERCONTEXT of the block formed
	to file_scope_decl.

2003-08-30  Zack Weinberg  <zack@codesourcery.com>

1047 1048 1049 1050 1051 1052 1053 1054
	* c-tree.h (C_TYPE_INCOMPLETE_VARS): New macro.
	* c-decl.c (struct c_scope): Remove "incomplete" field.
	(pushdecl): Attach variables with incomplete types to
	the TYPE_MAIN_VARIANT of the incomplete type in question.
	(finish_struct): Look at C_TYPE_INCOMPLETE_VARS for variables
	to complete, not at current_scope->incomplete.  All such
	variables do need completion.

1055 1056 1057 1058 1059 1060 1061 1062 1063 1064 1065 1066 1067 1068 1069 1070 1071 1072
2003-08-30  Richard Earnshaw  <rearnsha@arm.com>
	Nicolas Pitre <nico@cam.org>

	* arm/lib1funcs.asm (RETCOND): Delete.
	(RETLDM): New assembler macro.  Use it for returning with ldm/ldr.
	(ARM_LDIV0, THUMB_LDIV0): Collapse multiple definitions.
	(__ARM_ARCH__): Move here from ieee754-?f.S.
	(RET, RETc): Clean up definitions.
	(DIV_FUNC_END): Renamed from FUNC_END.  All uses changed.
	(FUNC_END): New macro that marks the end of any function.
	(ARM_FUNC_START): New macro that allows an assembler routine to be
	implemented in ARM code even if a Thumb-only build.
	Unconditionally include ieee754-?f.S.
	* arm/ieee754-df.S: Delete macros moved to lib1funcs.asm.
	Mark ends of functions.
	Split into separate conditionally-compiled units.
	Use RETLDM to return from routines.
	* arm/ieee754-sf.S: Similarly.
1073
	* t-arm-elf (LIB1ASMFUNCS): Remove _ieee754_dp and _ieee754_sp.
1074 1075 1076 1077
	Add _negdf2 _addsubdf3 _muldivdf3 _cmpdf2 _unorddf2 _fixdfsi
	_truncdfsf2 _negsf2 _addsubsf3 _muldivsf3 _cmpsf2 _unordsf2
	_fixsfsi and _fixunssfsi.

1078
	* arm/ieee754-df.S (__muldf3): Fix bug when result of a
1079
	multiplication underflows to zero.
1080
	(__adddf3): Fix bug when using VFP ordering on little-endian
1081 1082 1083 1084 1085
	processors.
	(__fixdfsi): Use rrx to extract the carry into a register instead of
	MRS instruction.  Optimize later use of result.
	* arm/ieee754-sf.S (__fixsfsi): Likewise.
	(__fixunssfsi): Use a better sequence for handling negative-or-zero.
1086

1087 1088
2003-08-29  Richard Henderson  <rth@redhat.com>

1089 1090 1091 1092 1093 1094 1095 1096 1097 1098 1099 1100 1101 1102 1103 1104 1105 1106 1107
	* tree-optimize.c: New file.
	* Makefile.in (OBJS-archive): Add tree-optimize.o.
	(tree-optimize.o): New.
	* c-decl.c (store_parm_decls): Use allocate_struct_function.
	(finish_function): Don't free_after_parsing or free_after_compilation.
	(set_save_expr_context): Move to tree-optimize.c.
	(c_expand_body_1): Use tree_rest_of_compilation.
	* c-lang.c (LANG_HOOKS_RTL_EXPAND_STMT): New.
	* objc/objc-lang.c (LANG_HOOKS_RTL_EXPAND_STMT): New.
	* c-objc-common.c (expand_deferred_fns): Don't emit unused inlines;
	iterate until closure.
	* langhooks-def.h (LANG_HOOKS_RTL_EXPAND_START,
	LANG_HOOKS_RTL_EXPAND_STMT, LANG_HOOKS_RTL_EXPAND_END): New.
	(LANG_HOOKS_RTL_EXPAND_INITIALIZER): New.
	* langhooks.h (struct lang_hooks_for_rtl_expansion): New.
	* toplev.h (tree_rest_of_compilation): Declare it.

2003-08-29  Richard Henderson  <rth@redhat.com>

1108 1109 1110 1111 1112 1113 1114 1115 1116
	* function.h (struct function): Add rtl_inline_init, saved_for_inline.
	* integrate.c (save_for_inline): Set saved_for_inline.
	* c-semantics.c (genrtl_scope_stmt): Check it.
	* toplev.c (wrapup_global_declarations): Check it.
	(rest_of_handle_inlining): Set and check rtl_inline_init.
	(rest_of_compilation): Remove out of date comment.

2003-08-29  Richard Henderson  <rth@redhat.com>

1117 1118 1119 1120 1121 1122
	* function.c (allocate_struct_function): New, split out of ...
	(prepare_function_start, init_function_start): ... here.
	* expr.c (init_expr): Use ggc_alloc_cleared.
	* stmt.c (init_stmt_for_function): Likewise.
	* tree.h (allocate_struct_function): Declare.

1123 1124
2003-08-29  Nathanael Nerode  <neroden@gcc.gnu.org>

1125 1126
	* config.gcc: Don't use negated character class in shell case
	clause.
1127

1128 1129
2003-08-29  Richard Henderson  <rth@redhat.com>

1130 1131 1132 1133 1134
	* function.h (struct function): Move function_frequency and
	max_jumptable_ents before start of bit field members.

2003-08-29  Richard Henderson  <rth@redhat.com>

1135 1136 1137 1138 1139
	* builtins.c (expand_builtin_constant_p): Check cse_not_expected here,
	(fold_builtin_constant_p) ... not here.

2003-08-29  Richard Henderson  <rth@redhat.com>

1140 1141 1142 1143
	* c-tree.h (C_DECL_FILE_SCOPE): Move ...
	* tree.h (DECL_FILE_SCOPE_P): ... here, and rename.
	* c-decl.c, c-objc-common.c, c-typeck.c: Update to match.

1144 1145
2003-08-29  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>

1146 1147 1148 1149 1150 1151 1152
	* builtins.def: Fix typos.
	(ATTR_MATHFN_FPROUNDING_STORE): New macro.
	(BUILT_IN_FREXP, BUILT_IN_FREXPF, BUILT_IN_FREXPL, BUILT_IN_MODF,
	BUILT_IN_MODFF, BUILT_IN_MODFL, BUILT_IN_REMQUO, BUILT_IN_REMQUOF,
	BUILT_IN_REMQUOL, BUILT_IN_SINCOS, BUILT_IN_SINCOSF,
	BUILT_IN_SINCOSL): Use ATTR_MATHFN_FPROUNDING_STORE.

1153 1154 1155
	* builtins.def (BUILT_IN_ERFC, BUILT_IN_ERFCF, BUILT_IN_ERFCL):
	Use ATTR_MATHFN_FPROUNDING_ERRNO.

1156 1157
2003-08-29  Nathanael Nerode  <neroden@gcc.gnu.org>

1158 1159
	* config.gcc (i386-*-vsta): Fix obvious bogosity.

1160 1161 1162 1163
	* fixinc/inclhack.def:  Remove special cases for unsupported
	PTX 1 and PTX 2 (including i[34567]86-sequent-sysv3).
	* fixinc/fixincl.x: Regenerate.

1164 1165 1166 1167 1168 1169 1170 1171 1172 1173 1174 1175 1176 1177 1178 1179 1180 1181 1182 1183
2003-08-29  Mark Mitchell  <mark@codesourcery.com>

	* Makefile.in (cpp.info): Just state dependencies.
	(gcc.info): Likewise.
	(gccint.info): Likewise.
	(gccinstall.info): Likewise.
	(cppinternals.info): Likewise.
	(cpp.dvi): Likewise.
	(gcc.dvi): Likewise.
	(gccint.dvi): Likewise.
	(gccinstall.dvi): Likewise.
	(cppinternals.dvi): Likewise.
	(gcov.1): Likewise.
	(cpp.1): Likewise.
	(gcc.1): Likewise.
	(gfdl.7): Likewise.
	(gpl.7): Likewise.
	(fsf-funding.7): Likewise.
	($(objdir)/%.info): New pattern rule.
	(%.dvi): Likewise.
1184

1185 1186 1187 1188 1189 1190 1191 1192 1193 1194
2003-08-29  Kelley Cook  <kelleycook@wideopenwest.com>

	* Makefile.in (restage1): Pass BOOT_CFLAGS to recursive make.
	(restage2): Likewise.
	(restage3): Likewise.
	(restage4): Likewise.
	(restageprofile): Likewise.
	(restagefeedback): Likewise.
	(bubblestrap): Likewise.

1195 1196 1197 1198 1199
2003-08-29  Nathanael Nerode  <neroden@gcc.gnu.org>

	* config.gcc: Narrow unsupported target match to avoid clobbering
	i?86-sequent-sysv4*.

1200 1201 1202 1203
2003-08-29  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>

	* builtins.c (mathfn_built_in): Handle new math builtins.

1204 1205 1206 1207 1208 1209 1210
2003-08-28  Per Bothner  <per@bothner.com>

	Fix (hopefully temporary) for breakage caused by my 08-21 patch.
	* cpplex.c (_cpp_get_fresh_line):  Check for null buffer.
	(_cpp_lex_buffer):  Likewise.
	* cpptrad.c (_cpp_read_logical_line_trad):  Likewise.

1211 1212 1213 1214 1215 1216 1217 1218 1219 1220 1221
2003-08-28  Ulrich Weigand  <uweigand@de.ibm.com>

	* config/s390/s390.md ("*mulsi3_sign"): New insn.
	("mulsidi3" expander, "mulsi_6432" insn): Remove, replace by ...
	("mulsidi3"): ... this new insn.
	("umulsidi3"): New insn.
	("divmoddi3", "divmodtidi3", "divmodtisi3"): Simplify by using
	mixed-mode matching constraints.
	("udivmodsi4", "udivmoddisi3"): New insns.
	("udivsi3", "umodsi3"): Use only in ESA/390 mode.

1222 1223
2003-08-28  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>

1224 1225 1226 1227 1228 1229 1230 1231 1232 1233 1234 1235 1236 1237 1238 1239 1240 1241 1242
	* builtin-types.def (BT_INT_PTR, BT_FLOAT_PTR, BT_DOUBLE_PTR,
	BT_LONGDOUBLE_PTR, BT_FN_FLOAT_FLOAT_FLOATPTR,
	BT_FN_DOUBLE_DOUBLE_DOUBLEPTR,
	BT_FN_LONGDOUBLE_LONGDOUBLE_LONGDOUBLEPTR,
	BT_FN_FLOAT_FLOAT_INTPTR, BT_FN_DOUBLE_DOUBLE_INTPTR,
	BT_FN_LONGDOUBLE_LONGDOUBLE_INTPTR,
	BT_FN_FLOAT_FLOAT_FLOAT_INTPTR, BT_FN_DOUBLE_DOUBLE_DOUBLE_INTPTR,
	BT_FN_LONGDOUBLE_LONGDOUBLE_LONGDOUBLE_INTPTR,
	BT_FN_VOID_FLOAT_FLOATPTR_FLOATPTR,
	BT_FN_VOID_DOUBLE_DOUBLEPTR_DOUBLEPTR,
	BT_FN_VOID_LONGDOUBLE_LONGDOUBLEPTR_LONGDOUBLEPTR): New.
	* builtins.def (BUILT_IN_FREXP, BUILT_IN_FREXPF, BUILT_IN_FREXPL,
	BUILT_IN_MODF, BUILT_IN_MODFF, BUILT_IN_MODFL, BUILT_IN_REMQUO,
	BUILT_IN_REMQUOF, BUILT_IN_REMQUOL, BUILT_IN_SINCOS,
	BUILT_IN_SINCOSF, BUILT_IN_SINCOSL): New.
	* tree.c: Assign new type_nodes.
	* tree.h (tree_index): Add TI_FLOAT_PTR_TYPE, TI_DOUBLE_PTR_TYPE,
	TI_LONG_DOUBLE_PTR_TYPE, TI_INTEGER_PTR_TYPE.
	(float_ptr_type_node, double_ptr_type_node,
1243 1244
	long_double_ptr_type_node, integer_ptr_type_node): New type_nodes.

1245 1246 1247 1248
	* doc/extend.texi: Document new builtins.

2003-08-28  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>

1249 1250
	* builtin-types.def (BT_FN_FLOAT_INT_FLOAT,
	BT_FN_DOUBLE_INT_DOUBLE, BT_FN_LONGDOUBLE_INT_LONGDOUBLE): New.
1251

1252 1253 1254 1255 1256 1257 1258 1259 1260 1261
	* builtins.def (BUILT_IN_ERF, BUILT_IN_ERFC, BUILT_IN_ERFCF,
	BUILT_IN_ERFCL, BUILT_IN_ERFF, BUILT_IN_ERFL, BUILT_IN_GAMMA,
	BUILT_IN_GAMMAF, BUILT_IN_GAMMAL, BUILT_IN_J0, BUILT_IN_J0F,
	BUILT_IN_J0L, BUILT_IN_J1, BUILT_IN_J1F, BUILT_IN_J1L,
	BUILT_IN_JN, BUILT_IN_JNF, BUILT_IN_JNL, BUILT_IN_LGAMMA,
	BUILT_IN_LGAMMAF, BUILT_IN_LGAMMAL, BUILT_IN_SIGNIFICAND,
	BUILT_IN_SIGNIFICANDF, BUILT_IN_SIGNIFICANDL, BUILT_IN_TGAMMA,
	BUILT_IN_TGAMMAF, BUILT_IN_TGAMMAL, BUILT_IN_Y0, BUILT_IN_Y0F,
	BUILT_IN_Y0L, BUILT_IN_Y1, BUILT_IN_Y1F, BUILT_IN_Y1L,
	BUILT_IN_YN, BUILT_IN_YNF, BUILT_IN_YNL): New.
1262

1263 1264
	* doc/extend.texi: Document new builtins.

1265 1266 1267
2003-08-28  Nathanael Nerode  <neroden@gcc.gnu.org>

	* fixinc/mkfixinc.sh: Remove special case code for unsupported
1268
	variants of i?86, powerpcle, and thumb.
1269
	* fixinc/mkfixinc.sh: Remove special case code for unsupported
1270 1271
	arm and hppa variants.

1272 1273 1274 1275 1276 1277 1278 1279 1280 1281 1282 1283 1284 1285 1286 1287 1288 1289 1290 1291 1292 1293 1294 1295 1296 1297 1298 1299 1300 1301 1302 1303 1304 1305 1306 1307 1308 1309 1310 1311 1312 1313 1314 1315 1316 1317 1318
2003-08-28  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>

	* builtin-types.def (BT_FN_INT_FLOAT, BT_FN_INT_DOUBLE,
	BT_FN_INT_LONGDOUBLE, BT_FN_LONG_FLOAT, BT_FN_LONG_DOUBLE,
	BT_FN_LONG_LONGDOUBLE, BT_FN_LONGLONG_FLOAT,
	BT_FN_LONGLONG_DOUBLE, BT_FN_LONGLONG_LONGDOUBLE,
	BT_FN_FLOAT_FLOAT_LONGDOUBLE, BT_FN_DOUBLE_DOUBLE_LONGDOUBLE,
	BT_FN_FLOAT_FLOAT_INT, BT_FN_DOUBLE_DOUBLE_INT,
	BT_FN_LONGDOUBLE_LONGDOUBLE_INT, BT_FN_FLOAT_FLOAT_LONG,
	BT_FN_DOUBLE_DOUBLE_LONG, BT_FN_LONGDOUBLE_LONGDOUBLE_LONG,
	BT_FN_FLOAT_FLOAT_FLOAT_FLOAT, BT_FN_DOUBLE_DOUBLE_DOUBLE_DOUBLE,
	BT_FN_LONGDOUBLE_LONGDOUBLE_LONGDOUBLE_LONGDOUBLE): New.

	* builtins.def (BUILT_IN_ACOS, BUILT_IN_ACOSF, BUILT_IN_ACOSH,
	BUILT_IN_ACOSHF, BUILT_IN_ACOSHL, BUILT_IN_ACOSL, BUILT_IN_ASIN,
	BUILT_IN_ASINF, BUILT_IN_ASINH, BUILT_IN_ASINHF, BUILT_IN_ASINHL,
	BUILT_IN_ASINL, BUILT_IN_ATANH, BUILT_IN_ATANHF, BUILT_IN_ATANHL,
	BUILT_IN_CBRT, BUILT_IN_CBRTF, BUILT_IN_CBRTL, BUILT_IN_COPYSIGN,
	BUILT_IN_COPYSIGNF, BUILT_IN_COPYSIGNL, BUILT_IN_COSH,
	BUILT_IN_COSHF, BUILT_IN_COSHL, BUILT_IN_DREM, BUILT_IN_DREMF,
	BUILT_IN_DREML, BUILT_IN_EXP10, BUILT_IN_EXP10F, BUILT_IN_EXP10L,
	BUILT_IN_EXP2, BUILT_IN_EXP2F, BUILT_IN_EXP2L, BUILT_IN_EXPM1,
	BUILT_IN_EXPM1F, BUILT_IN_EXPM1L, BUILT_IN_FDIM, BUILT_IN_FDIMF,
	BUILT_IN_FDIML, BUILT_IN_FMA, BUILT_IN_FMAF, BUILT_IN_FMAL,
	BUILT_IN_FMAX, BUILT_IN_FMAXF, BUILT_IN_FMAXL, BUILT_IN_FMIN,
	BUILT_IN_FMINF, BUILT_IN_FMINL, BUILT_IN_HYPOT, BUILT_IN_HYPOTF,
	BUILT_IN_HYPOTL, BUILT_IN_ILOGB, BUILT_IN_ILOGBF, BUILT_IN_ILOGBL,
	BUILT_IN_LDEXP, BUILT_IN_LDEXPF, BUILT_IN_LDEXPL, BUILT_IN_LLRINT,
	BUILT_IN_LLRINTF, BUILT_IN_LLRINTL, BUILT_IN_LLROUND,
	BUILT_IN_LLROUNDF, BUILT_IN_LLROUNDL, BUILT_IN_LOG10,
	BUILT_IN_LOG10F, BUILT_IN_LOG10L, BUILT_IN_LOG1P, BUILT_IN_LOG1PF,
	BUILT_IN_LOG1PL, BUILT_IN_LOG2, BUILT_IN_LOG2F, BUILT_IN_LOG2L,
	BUILT_IN_LOGB, BUILT_IN_LOGBF, BUILT_IN_LOGBL, BUILT_IN_LRINT,
	BUILT_IN_LRINTF, BUILT_IN_LRINTL, BUILT_IN_LROUND,
	BUILT_IN_LROUNDF, BUILT_IN_LROUNDL, BUILT_IN_NEXTAFTER,
	BUILT_IN_NEXTAFTERF, BUILT_IN_NEXTAFTERL, BUILT_IN_NEXTTOWARD,
	BUILT_IN_NEXTTOWARDF, BUILT_IN_NEXTTOWARDL, BUILT_IN_POW10,
	BUILT_IN_POW10F, BUILT_IN_POW10L, BUILT_IN_REMAINDER,
	BUILT_IN_REMAINDERF, BUILT_IN_REMAINDERL, BUILT_IN_RINT,
	BUILT_IN_RINTF, BUILT_IN_RINTL, BUILT_IN_SCALB, BUILT_IN_SCALBF,
	BUILT_IN_SCALBL, BUILT_IN_SCALBLN, BUILT_IN_SCALBLNF,
	BUILT_IN_SCALBLNL, BUILT_IN_SCALBN, BUILT_IN_SCALBNF,
	BUILT_IN_SCALBNL, BUILT_IN_SINH, BUILT_IN_SINHF, BUILT_IN_SINHL,
	BUILT_IN_TANH, BUILT_IN_TANHF, BUILT_IN_TANHL): New.

	* doc/extend.texi: Document new builtins.

1319 1320 1321 1322 1323 1324 1325 1326 1327 1328 1329 1330 1331 1332 1333 1334 1335 1336 1337 1338 1339 1340 1341
2003-08-28  Ulrich Weigand  <uweigand@de.ibm.com>

	* config/s390/s390.c (legitmate_constant_p): Use LARL on
	zSeries machines even in 31-bit addressing mode.
	(legitimate_reload_constant_p): Likewise.
	(legitimize_pic_address): Likewise.
	(legitimize_tls_address): Likewise.
	(s390_split_branches): Likewise.
	(s390_dump_pool): Likewise.
	(s390_mainpool_finish): Likewise.
	(s390_chunkify_start): Likewise.
	(s390_select_rtx_section): Likewise.
	* config/s390/s390.md ("doloop_si"): Likewise.
	("pool_start_31", "pool_end_31"): Likewise.
	("pool_start_64", "pool_end_64"): Likewise.
	("main_base_31_small", "main_base_31_large"): Likewise.
	("main_base_64"): Likewise.
	("reload_base_31", "reload_base_64"): Likewise.
	("*movsi_larl"): New insn.
	("cjump", "icjump"): Use long branches on zSeries machines.
	("jump"): Likewise.
	("call"): Use BRASL on zSeries machines.
	("call_value", "call_value_tls"): Likewise.
1342
	("brasl", "bras", "basr_64", "basr_31", "bas_64", "bas_31"): Remove
1343 1344
	and replace by ...
	("*bras", "*brasl", "*basr") ... these new insns.
1345
	("brasl_r", "bras_r", "basr_64_r", "basr_31_r", "bas_64_r",
1346 1347
	"bas_31_r"): Remove and replace by ...
	("*bras_r", "*brasl_r", "*basr_r") ... these new insns.
1348
	("brasl_tls", "bras_tls", "basr_64_tls", "basr_31_tls",
1349 1350 1351 1352 1353 1354 1355 1356 1357 1358 1359 1360
	"bas_64_tls", "bas_31_tls"): Remove and replace by ...
	("*bras_tls", "*brasl_tls", "*basr_tls") ... these new insns.
	("*return_si", "*return_di"): Remove and replace by ...
	("*return"): ... this new insn.
	("rotlsi3"): Allow on zSeries machines.

	* config/s390/s390.c (legitimize_reload_constant_p): Use
	LL/LH type instructions in z/Architecture mode.
	* config/s390/s390.md ("*movsi_lli"): Likewise.
	("*andsi3_ni", "*andhi3_ni", "*andqi3_ni"): Likewise.
	("*iorsi3_ni", "*iorhi3_ni", "*iorqi3_ni"): Likewise.
	("*extendqisi2"): Use LB in z/Architecture mode.
1361
	("*zero_extendqisi2_64", "*zero_extendqisi2_31"): Use LLGC in
1362
	z/Architecture mode.
1363
	("zero_extendqihi2", "*zero_extendqihi2_64", "*zero_extendqihi2_31"):
1364
	Likewise.
1365

1366 1367 1368 1369
	* config/s390/s390.md ("*tmdi_ext"): Allow in both 64-bit
	and 31-bit mode.
	("ptr_extend"): Allow only in 64-bit mode.

1370 1371 1372 1373 1374 1375 1376 1377
2003-08-27  Daniel Jacobowitz  <drow@mvista.com>

	* gcc.c (STANDARD_EXEC_PREFIX, STANDARD_STARTFILE_PREFIX)
	(TOOLDIR_BASE_PREFIX, STANDARD_BINDIR_PREFIX): Remove unnecessary
	definitions.
	(main): Only use standard_startfile_prefix if native.
	* doc/tm.texi (STANDARD_STARTFILE_PREFIX): Update.

1378 1379 1380 1381 1382 1383
2003-08-27  Per Bothner  <pbothner@apple.com>

	* cpperror.c (print_location):  Don't check for !pfile->buffer.  That
	test fails following my 08-21 change, and it seems unnecessary anyway.
	(cpp_error):  Likewise.

1384 1385 1386 1387
2003-08-27  Jason Merrill  <jason@redhat.com>

	* real.c (do_multiply): Initialize with memset.

1388 1389 1390 1391 1392
2003-08-27  Zdenek Dvorak  <rakdver@atrey.karlin.mff.cuni.cz>

	* gcov.c (typedef struct arc_info): New field cs_count.
	(accumulate_line_counts): Find cycles correctly.

1393 1394 1395 1396
2003-08-27  Ulrich Weigand  <uweigand@de.ibm.com>

	* config/s390/s390.c (struct machine_function): Remove member
	literal_pool_label.
1397
	(s390_optimize_prolog): Replace TEMP_REG argument with
1398
	TEMP_USED and BASE_USED.  Do not check get_pool_size ().
1399 1400
	(general_s_operand): Accept all immediates before reload if
	ALLOW_IMMEDIATE.  If not ALLOW_IMMEDIATE, reject literal pool
1401 1402 1403 1404 1405 1406
	references.
	(s390_output_symbolic_const): Remove UNSPEC_LTREL_OFFSET handling.
	(find_constant_pool_ref): Ignore UNSPECV_POOL_ENTRY insns.
	(s390_alloc_pool): New function.
	(s390_new_pool): Call it.
	(s390_dump_pool): Add REMOTE_LABEL argument.
1407
	(s390_chunkify_start): Add BASE_REG argument.  Do not check
1408
	get_pool_size ().
1409
	(s390_chunkify_finish): Add BASE_REG argument.  Adapt
1410 1411 1412 1413 1414 1415 1416
	s390_dump_pool call.
	(s390_pool_count, s390_nr_constants): Remove.
	(s390_output_constant_pool): Remove.
	(s390_mainpool_start): New function.
	(s390_mainpool_finish): New function.
	(s390_mainpool_cancel): New function.
	(s390_reorg): Implement main literal pool handling.
1417
	(s390_emit_prologue): Emit main_pool placeholder instead of
1418 1419 1420 1421 1422 1423 1424 1425
	literal_pool_31 / literal_pool_64 insns.
	* config/s390/s390.h (s390_pool_count, s390_nr_constants): Remove.
	(ASM_OUTPUT_POOL_PROLOGUE, ASM_OUTPUT_SPECIAL_POOL_ENTRY): Remove.
	* config/s390/s390.md (UNSPEC_MAIN_BASE): New symbolic constant.
	("main_base_31_small", "main_base_31_large"): New insns.
	("main_base_64",  "main_pool"): New insns.
	("literal_pool_31", "literal_pool_64"): Remove.

1426 1427 1428 1429 1430 1431 1432 1433
2003-08-27  Nathanael Nerode  <neroden@gcc.gnu.org>

	* fixinc/inclhack.def (ptx_netswap): New disabled fix, ported from
	fixinc.ptx.
	* fixinc/inclhack.def (undefine_null):  Don't generate \r characters.
	Prettify a little.
	* fixinc/fixincl.x: Regenerate.

Richard Earnshaw committed
1434 1435 1436 1437 1438 1439 1440 1441 1442 1443 1444 1445 1446 1447 1448
2003-08-27  Richard Earnshaw  <rearnsha@arm.com>

	* lib1funcs.asm (L_ieee754_sp): New.  Include ieee754-sf.S.
	(L_ieee754_dp): New.  Include ieee754-df.S.
	* arm/ieee754-sf.S: Rework to allow interworking, calling from Thumb,
	and compilation in apcs-26 mode.
	* arm/ieee754-df.S: Likewise.
	* t-arm-elf (DPBIT, FPBIT, fp-bit.c dp-bit.c): Delete rules
	(LIB1ASMFUNCS): Add _ieee754_sp and _ieee754_dp targets.

2003-08-27  Nicolas Pitre  <nico@cam.org>

	* arm/ieee754-sf.S: New.
	* arm/ieee754-df.S: New.

1449 1450 1451 1452 1453
2003-08-27  Jakub Jelinek  <jakub@redhat.com>

	* builtins.c (expand_builtin_expect_jump): Save pending_stack_adjust
	and restore it if returning NULL.

1454 1455 1456 1457 1458 1459 1460 1461 1462 1463 1464 1465 1466 1467 1468 1469 1470 1471 1472 1473 1474 1475 1476 1477 1478
2003-08-27  Richard Sandiford  <rsandifo@redhat.com>

	* calls.c (initialize_argument_information): If an argument has no
	stack space associated with it, and BLOCK_REG_PADDING is defined,
	use it to decide at which end the argument should be padded.
	* function.c (assign_parms): Allocate BLKmode stack slots.
	* config/mips/mips-protos.h (mips_pad_arg_upward): Declare.
	(mips_pad_reg_upward): Declare.
	* config/mips/mips.h (PAD_VARARGS_DOWN): Use FUNCTION_ARG_PADDING.
	(CUMULATIVE_ARGS): Remove num_adjusts and adjusts.
	(FUNCTION_ARG_PADDING): Use mips_pad_arg_upward.
	(BLOCK_REG_PADDING): Use mips_pad_reg_upward.
	* config/mips/mips.c (struct mips_arg_info): Remove struct_p.
	(mips_expand_call): Remove code for generating structure shifts.
	(mips_arg_info): Don't set struct_p.  Don't set fpr_p for non-float
	types unless using the EABI.
	(function_arg_advance): Don't generate shift instructions.
	(function_arg): Don't return them.  Don't short-circuit the
	check for double structure chunks for DFmode arguments.
	(mips_pad_arg_upward, mips_pad_reg_upward): New functions.
	(mips_expand_prologue): Remove code to emit structure shifts.
	* config/mips/irix6-libc-compat.c: Remove workarounds for buggy
	structure passing (inet_ntoa, inet_lnaof, inet_netof).  Update
	comments to say that only structure returns are a problem.

1479 1480
2003-08-26  Nathanael Nerode  <neroden@gcc.gnu.org>

1481 1482 1483 1484
	* fixinc/tests/base/string.h, fixinc/tests/base/sys/regset.h:
	Fix to match produced versions.
	* fixinc/inclhack.def (longlong_t): New disabled test, ported
	from fixinc.svr4.
1485 1486
	* fixinc/inclhack.def (ptx_pwd_h): New disabled fix, ported
	from fixinc.ptx.
1487 1488 1489
	* fixinc/inclhack.def (ptx_sys_mc_param_h): New disabled fix,
	ported from fixinc.ptx.

Per Bothner committed
1490 1491 1492 1493 1494 1495 1496 1497 1498 1499 1500
2003-08-26  Per Bothner  <pbothner@apple.com>

	* cpplib.h (struct cpp_token):  Change type of field line to fileline.
	(cpp_error_with_line):  Use fileline for appropriate parameter.
	* cpphash.h (struct cpp_macro):  Change type of field line to fileline.
	(struct cpp_reader):  Likewise for fields line and directive_line.
	(_cpp_begin_message):  Use fileline for appropriate parameter.
	* cpperror.c (print_location, _cpp_begin_message, cpp_error_with_line,
	cpp_error):  Use fileline for appropriate parameters and variables.
	(print_location):  New local lin, since it is not a fileline.

1501 1502 1503 1504 1505 1506 1507 1508
2003-08-26  Roger Sayle  <roger@eyesopen.com>

	PR middle-end/12002
	* tree.h (SCALAR_FLOAT_TYPE_P, COMPLEX_FLOAT_TYPE_P): New macros.
	(FLOAT_TYPE_P): Define in terms of these two new macros.
	* fold-const.c (fold <PLUS_EXPR>): Don't convert x+x into x*2.0
	for complex floating point types.

1509 1510 1511
2003-08-26  Ulrich Weigand  <uweigand@de.ibm.com>

	* config/s390/s390.c (emit_prologue): Don't check literal pool size.
1512
	* config/s390/s390.h (ASM_OUTPUT_SPECIAL_POOL_ENTRY): Call
1513 1514
	s390_output_pool_entry.

1515 1516
2003-08-26  Nathanael Nerode  <neroden@gcc.gnu.org>

1517 1518
	* fixinc/inclhack.def (svr4_preproc_lint_on,
	svr4_preproc_lint_off, svr4_preproc_machine): New disabled
1519 1520
	fixes, ported from fixinc.svr4.

1521 1522 1523 1524 1525 1526 1527 1528 1529 1530 1531 1532 1533 1534 1535 1536 1537 1538 1539 1540 1541 1542 1543 1544 1545 1546 1547 1548 1549 1550 1551
2003-08-26  Mark Mitchell  <mark@codesourcery.com>

	* doc/install.texi (Prerequisites): Mention GNU make requirement.

	* Makefile.in (AR_FOR_TARGET): Export it.
	(AR_CREATE_FOR_TARGET): Likewise.
	(AR_FLAGS_FOR_TARGET): Likewise.
	(AR_EXTRACT_FOR_TARGET): Likewise.
	(AWK): Likewise.
	(BUILD_PREFIX): Likewise.
	(BUILD_PREFIX_1): Likewise.
	(DESTDIR): Likewise.
	(GCC_FOR_TARGET): Likewise.
	(INCLUDES): Likewise.
	(INSTALL_DATA): Likewise.
	(LIB1ASMSRC): Likewise.
	(LIBGCC2_CFLAGS): Likewise.
	(MACHMODE_H): Likewise.
	(NM_FOR_TARGET): Likewise.
	(RANLIB_FOR_TARGET): Likewise.
	(libsubdir): Likewise.
	(slibdir): Likewise.
	(ORDINARY_FLAGS_TO_PASS): Remove stuff that we're
	exporting.
	(libgcc.a): Don't pass them here.
	(stmp-multilib): Or here.
	(install-libgcc): Or here.
	(install-multilib): Or here.
	(POSTSTAGE1_FLAGS_TO_PASS): Or here.
	(stage1_build): Or here.

1552 1553
2003-08-26  Andreas Krebbel <krebbel1@de.ibm.com>

1554 1555 1556 1557 1558
	* config/s390/s390.md ("*llgt_sisi", "*llgt_sisi_split", "*llgt_didi",
	"*llgt_didi_split", "*llgt_sidi", "*llgt_sidi_split"): New insns.

2003-08-26  Andreas Krebbel <krebbel1@de.ibm.com>

1559
	* config/s390/s390.md ("*fmadddf", "*fmsubdf",
1560 1561
	"*fmaddsf", "*fmsubsf"): New insns.

1562 1563
2003-08-26  Roger Sayle  <roger@eyesopen.com>

1564 1565 1566 1567 1568 1569 1570 1571
	* fold-const.c (fold <MULT_EXPR>): Optimize (C1/X)*C2 into
	(C1*C2)/X when unsafe math optimizations are allowed.
	(fold <RDIV_EXPR>): Optimize C1/(X*C2) into (C1/C2)/X with unsafe
	math optimizations.  Minor code clean-ups.  Recursively call
	fold when constructing sub-expressions.

2003-08-26  Roger Sayle  <roger@eyesopen.com>

1572 1573 1574 1575 1576 1577 1578 1579 1580
	* builtins.c (fold_builtin_bitop): New function to perform constant
	folding of ffs, clz, ctz, popcount and parity builtin functions
	and their long and long long variants (such as ffsl and ffsll).
	(fold_builtin): fold_builtin_bitop when appropriate.
	* simplify-rtx.c (simplify_unary_operation): Honor both
	CLZ_DEFINED_VALUE_AT_ZERO and CTZ_DEFINED_VALUE_AT_ZERO when
	evaluating clz and ctz at compile-time, for operands wider
	than HOST_WIDE_INT.

1581 1582
2003-08-26  Nathan Sidwell  <nathan@codesourcery.com>

1583 1584 1585 1586 1587 1588
	* builtins.c (build_function_call_expr): Don't set
	TREE_SIDE_EFFECTS here.
	* expr.c (emit_block_move_via_libcall): Likewise.
	(clear_storage_via_libcall): Likewise.
	* tree.c (build): Set TREE_SIDE_EFFECTS for non-const, non-pure
	CALL_EXPRs.
1589

1590 1591 1592
	* gcse.c (is_too_expensive): New function.
	(gcse_main, delete_null_pointer_checks, bypass_jumps): Use it.

1593 1594 1595 1596 1597 1598 1599 1600 1601 1602 1603 1604 1605 1606
2003-08-25  Zack Weinberg  <zack@codesourcery.com>

	* config.gcc (hppa*-*-hpux11*, ia64*-*-hpux*): Remove
	commented-out logic to use DCE threads (if present), add
	support for POSIX threads.
	* config/ia64/hpux.h: Define CPP_SPEC to set appropriate
	#defines for -pthread.  Add -lpthread to LIB_SPEC when
	-pthread.  In both cases take -mt as a synonym for -pthread
	for acc compatibility.
	Define GTHREAD_USE_WEAK to 0.
	* config/pa/pa-hpux11.h: Likewise for CPP_SPEC and LIB_SPEC.
	Remove old logic for DCE threads from LIB_SPEC.
	* config/pa/pa64-hpux.h: Define GTHREAD_USE_WEAK to 0.

1607 1608 1609 1610 1611 1612 1613
2003-08-25  Roger Sayle  <roger@eyesopen.com>

	* builtins.c (expand_builtin_mathfn):  Rearrange so that we only
	return 0 for invalid argument types.  Instead drop through to a
	call of expand_call at the bottom of function.  If op is SQRT,
	try attaching a SQRT rtx as the REQ_EQUAL note of the libcall.

1614 1615 1616 1617
2003-08-25  Richard Henderson  <rth@redhat.com>

	* config/ia64/ia64.c (ia64_expand_tls_address): Properly truncate
	result when op0 is SImode.
1618

1619 1620 1621 1622 1623 1624 1625
2003-08-25  Nathanael Nerode  <neroden@twcny.rr.com>

	* fixinc/inclhack.def (svr4_sighandler_type): New fix, ported
	from fixinc.svr4.
	* fixinc/fixincl.x: Regenerate.
	* fixinc/tests/base/sys/signal.h: Regenerate.

1626 1627
2003-08-25  Ulrich Weigand  <uweigand@de.ibm.com>

1628 1629 1630 1631 1632
	* combine.c (simplify_comparison): Re-enable widening of comparisons
	with non-paradoxical subregs of non-REG expressions.

2003-08-25  Ulrich Weigand  <uweigand@de.ibm.com>

1633 1634 1635 1636
	* combine.c (distribute_notes): Handle REG_ALWAYS_RETURN.

2003-08-25  Ulrich Weigand  <uweigand@de.ibm.com>

1637 1638
	* combine.c (combine_simplify_rtx): Fix RTL sharing bug.

1639 1640 1641 1642 1643 1644 1645 1646 1647 1648 1649 1650 1651 1652 1653 1654 1655 1656 1657 1658 1659 1660 1661 1662 1663 1664 1665 1666 1667 1668 1669 1670 1671 1672
2003-08-25  Gabriel Dos Reis  <gdr@integrable-solutions.net>

	* pretty-print.h (pp_maybe_newline_and_indent): New macro.
	* c-pretty-print.h (c_pretty_printer): Now typedef to the
	structure.  Be consistent with pretty-print.h abd cxx-pretty-print.h
	(struct c_pretty_print_info): Document.  Add new fields.
	(pp_type_specifier_seq): Rename from pp_c_type_specifier.
	(pp_direct_abstract_declarator): New macro.
	(pp_ptr_operator): Likewise.
	(pp_simple_type_specifier): Likewise.
	(pp_expression): Likewise.
	(pp_parameter_list): Rename from pp_parameter_declaration.
	* c-pretty-print.c (pp_c_whitespace): Now a function.
	(pp_c_left_paren): Likewise.
	(pp_c_right_paren): Likewise.
	(pp_c_dot): Likewise.
	(pp_c_ampersand): Likewise.
	(pp_c_arrow): Likewise.
	(pp_c_semicolon): Likewise.
	(pp_c_type_cast): New function.
	(pp_c_space_for_pointer_operator): Likewise.
	(pp_c_call_argument_list): Likewise.
	(pp_c_cv_qualifier): Adjust prototype.
	(pp_c_type_qualifier_list): Likewise.
	(pp_c_pointer): Likewise.  Handle REFERENCE_TYPE here.
	(pp_c_type_specifier): Rename from pp_c_simple_type_specifier.
	Adjust to follow standard grammar.
	(pp_c_specifier_qualifier_list): Adjusr prototype.  Handle
	REFERENCE_TYPE.  Tidy.
	(pp_c_parameter_type_list): Adjust prototype.  Tidy.
	(pp_c_parameter_declaration): Remove.
	(pp_c_abstract_declarator): Adjust prototype.
	(pp_c_direct_abstract_declarator): Likewise.
	(pp_c_type_id): Likewise.
1673
	(pp_c_storage_class_specifier): Likewise.
1674 1675 1676 1677 1678 1679 1680 1681 1682 1683 1684 1685 1686 1687 1688 1689 1690 1691 1692 1693 1694 1695 1696 1697 1698 1699 1700 1701 1702 1703 1704 1705 1706 1707 1708 1709 1710 1711 1712 1713 1714 1715 1716 1717 1718 1719
	(pp_c_function_specifier): Likewise.
	(pp_c_declaration_specifiers): Likewise.
	(pp_c_direct_declarator): Likewise.
	(pp_c_declarator): Likewise.
	(pp_c_declarator): Likewise.
	(pp_c_declaration): Likewise.
	(pp_c_attributes): Likewise.  Tidy.
	(pp_c_function_definition): Adjust prototype.
	(pp_c_char): Likewise.
	(pp_c_string_literal): Likewise.
	(pp_c_integer_constant): Likewise.
	(pp_c_character_constant): Likewise.
	(pp_c_bool_constant): Likewise.
	(pp_c_enumeration_constant): Likewise.
	(pp_c_floating_constant): Likewise.
	(pp_c_constant): Likewise.
	(pp_c_identifier): Likewise.
	(pp_c_primary_expression): Likewise.  Remove TARGET_EXPR case.  Tidy.
	(pp_c_initializer): Adjust prototype.
	(pp_c_init_declarator): Likewise.
	(pp_c_initializer_list): Likewise.
	(pp_c_id_expression): Likewise.
	(pp_c_postfix_expression): Likewise.
	(pp_c_expression_list): Likewise.
	(pp_c_unary_expression): Likewise.
	(pp_c_cast_expression): Likewise.
	(pp_c_multiplicative_expression): Likewise.
	(pp_c_additive_expression): Likewise.
	(pp_c_shift_expression): Likewise.
	(pp_c_relational_expression): Likewise.
	(pp_c_equality_expression): Likewise.
	(pp_c_and_expression): Likewise.
	(pp_c_exclusive_or_expression): Likewise.
	(pp_c_inclusive_or_expression): Likewise.
	(pp_c_logical_and_expression): Likewise.
	(pp_c_logical_or_expression): Likewise.
	(pp_c_conditional_expression): Likewise.
	(pp_c_assignment_expression): Likewise.
	(pp_c_expression): Likewise.  Tidy.
	(pp_c_statement): Likewise.  Document.
	(pp_c_pretty_printer_init): Adjust prototype. Tidy.

	* c-lang.c (c_initialize_diagnostics): Update.
	* c-common.h (strip_pointer_operator): Declare.
	* c-common.c (strip_pointer_operator): Define.

1720 1721 1722 1723 1724 1725 1726 1727 1728
2003-08-25  Mark Mitchell  <mark@codesourcery.com>

	PR c++/8795
	* tree.h (build_method_type_directly): Declare.
	* c-common.c (handle_vector_size_attributes): Handle METHOD_TYPEs.
	(vector_size_helper): Likewise.
	* tree.c (build_method_type_directly): New function.
	(build_method_type): Use it.

1729 1730 1731 1732 1733 1734
2003-08-24  Richard Henderson  <rth@redhat.com>

	* config/i386.i386.c (ix86_return_in_memory): Reformat.  Return true
	for 16-byte vector modes if sse not enabled; warn for abi change.
	(ix86_value_regno): Only return xmm0 for 16-byte vector types.

1735 1736 1737 1738
2003-08-24  Kazu Hirata  <kazu@cs.umass.edu>

	* rtlanal.c (may_trap_p): Simplify an integer comparison.

1739 1740 1741 1742 1743 1744 1745
2003-08-24  Nathanael Nerode  <neroden@gcc.gnu.org>

	* fixinc/inclhack.def (AAB_svr4_replace_byteorder):  Enhance
	comment.  Enable for DYNIX/ptx systems (when they switch to
	regular fixincludes).
	* fixinc/fixincl.x: Regenerate.

Jason Eckhardt committed
1746 1747 1748 1749 1750
2003-08-23  Jason Eckhardt  <jle@rice.edu>

	* config/i860/t-i860: New.
	* config.gcc (i860-*-sysv4*): Add t-i860 to tmake_file.

1751 1752 1753 1754 1755 1756 1757
2003-08-23  Jakub Jelinek  <jakub@redhat.com>

	* c-decl.c (pushdecl): Only put decls which finish_struct will do
	something about onto incomplete chain.
	(finish_struct): If not removing type from incomplete
	list, update prev.

1758 1759 1760 1761 1762 1763 1764 1765 1766 1767 1768 1769 1770 1771 1772 1773 1774 1775 1776 1777 1778
Wed Aug 20 12:08:55 CEST 2003  Jan Hubicka  <jh@suse.cz>

	PR target/11369
	* i386.c (ix86_expand_carry_flag_compare): Validate operand.

	PR target/11031
	* i386.c (const_0_to_3_operand, const_0_to_7_operand,
	const_0_to_15_operand, const_0_to_255_operand): New predicates.
	* i386.h (PREDICATE_CODES): Add these.
	* i386.c (pinsrw and pextrw patterns): Use them.

	PR target/10984
	* i386.c (ix86_expand_binop_builtin): Behave sanely for VOIDmodes.

	PR target/8869
	* expr.c (convert_modes): Deal properly with integer to vector
	constant conversion.

	PR target/8871
	* i386.md (zero_extendsidi2*): Add MMX and SSE alternatives.

1779 1780 1781 1782 1783 1784 1785 1786 1787
2003-08-23  Ulrich Weigand  <uweigand@de.ibm.com>

	* config/s390/s390.h (LOAD_EXTEND_OP): Remove.
	* config/s390/s390.md ("movhi"): New expander; old insn renamed to ...
	("*movhi"): ... this.
	("movqi", "*movqi"): Likewise.
	("movqi_64"): Remove.
	("*zero_extendhisi2_31"): Change predicate to s_operand.

1788 1789
2003-08-23  Dale Johannesen  <dalej@apple.com>
	* calls.c (emit_library_call_value_1): Fix obvious errors in
Dale Johannesen committed
1790
	arguments to emit_group_store.
1791

1792 1793 1794 1795 1796 1797 1798 1799
2003-08-23  Jason Eckhardt  <jle@rice.edu>

	* calls.c (emit_library_call_value_1): Remove code related
	to LIBGCC_NEEDS_DOUBLE.
	* config/stormy16/stormy16.h: Remove mention of LIBGCC_NEEDS_DOUBLE.
	* doc/tm.texi: Likewise.
	* system.h: Poison the LIBGCC_NEEDS_DOUBLE macro.

1800 1801
2003-08-23  Richard Sandiford  <rsandifo@redhat.com>

1802 1803 1804 1805
	* config/mips/linux64.h (STARTFILE_PREFIX_SPEC): Remove.

2003-08-23  Richard Sandiford  <rsandifo@redhat.com>

1806 1807 1808 1809
	* config/mips/mips.c (mips_setup_incoming_varargs): Handle o32 and o64
	as well.  Put memory references in the varargs alias set.
	(mips_expand_prologue): Remove varargs handling from here.

1810 1811 1812 1813 1814 1815 1816 1817
2003-08-23  Ulrich Weigand  <uweigand@de.ibm.com>

	* config/s390/s390.c (s390_expand_movstr, s390_expand_clrstr,
	s390_expand_cmpmem, s390_output_constant_pool, s390_build_va_list,
	s390_function_profiler, s390_output_mi_thunk): Use ISO C syntax
	for function pointer calls.
	* config/s390/s390.md ("*negdi2_31"): Likewise.

1818 1819 1820 1821
2003-08-23  Roger Sayle  <roger@eyesopen.com>

	* combine.c (apply_distributive_law): Correct comment.

1822 1823 1824 1825
2003-08-23  Jason Eckhardt  <jle@rice.edu>

	* config/i860/i860.h: Remove comment mentioning LIBGCC_NEEDS_DOUBLE.

1826 1827 1828 1829 1830 1831 1832 1833 1834 1835
2003-08-22  Jason Eckhardt  <jle@rice.edu>

	* config/i860/i860.c (i860_build_va_list): Create the va_decl
	declaration.  Document the va_list structure.
	(i860_va_start): Initialize the va_list structure.
	(i860_va_arg): Rewrite completely.
	* config/i860/i860.h (LIBGCC_NEEDS_DOUBLE): Don't define.
	* config/i860/varargs.asm: Do not allocate or initialize
	a va_list.  Return the address of the register save area.

1836 1837
2003-08-22  Kazu Hirata  <kazu@cs.umass.edu>

1838 1839 1840 1841 1842
	* config/iq2000/iq2000.c: Fix comment typos.
	* config/iq2000/iq2000.md: Likewise.

2003-08-22  Kazu Hirata  <kazu@cs.umass.edu>

1843 1844 1845 1846
	* config/iq2000/iq2000.c: Follow spelling conventions.
	* config/iq2000/iq2000.h: Likewise.
	* config/mn10300/mn10300.c: Likewise.

1847 1848
2003-08-22  Jason Eckhardt  <jle@rice.edu>

1849 1850 1851 1852 1853 1854 1855 1856 1857 1858
	* config/i860/i860.c (output_move_double): Don't set latehalf
	to zero for CONST_INT (since it could be, e.g., -1).

	* config/i860/i860.h (REMSI3_LIBCALL): Replace this macro...
	(MODSI3_LIBCALL): ...with this one.
	(UREMSI3_LIBCALL): Replace this macro...
	(UMODSI3_LIBCALL): ...with this one.

2003-08-22  Jason Eckhardt  <jle@rice.edu>

1859 1860 1861 1862 1863 1864 1865 1866 1867 1868 1869 1870 1871 1872 1873
	* config/i860/i860-protos.h (output_delay_insn): Remove prototype.
	(output_delayed_branch): Remove prototype.
	(single_insn_src_p): Remove prototype.
	* config/i860/i860.c (single_insn_src_p): Remove function.
	(output_delayed_branch): Remove function.
	(output_delay_insn): Remove function.
	(va_start): Remove unconditional test and dead code, re-format.
	Fix coding style and spelling problems in various comments.
	* config/i860/i860.md (UNSPECV_BLOCKAGE): Define constant...
	(blockage pattern): ...and use it here.
	(all define_peephole patterns related to delayed branches): Remove.
	Fix coding style and spelling problems in various comments.

2003-08-22  Jason Eckhardt  <jle@rice.edu>

1874 1875 1876 1877 1878 1879 1880 1881 1882 1883 1884 1885
	* config/i860/i860.c: Replace all occurrences of 'GNU CC' with 'GCC'.
	Remove all uses of the PARAMS macro.  Remove superflous prototypes.
	Convert all function definitions from traditional to ISO C90 syntax.
	* config/i860/i860-protos.h: Replace all occurrences of 'GNU CC'
	with 'GCC'.  Remove all uses of the PARAMS macro.
	* config/i860/i860.h: Replace all occurrences of 'GNU CC' with 'GCC'.
	* config/i860/i860.md: Likewise.
	* config/i860/sysv4.h: Likewise.
	* config/i860/varargs.asm: Likewise.

2003-08-22  Jason Eckhardt  <jle@rice.edu>

1886 1887 1888 1889 1890 1891 1892 1893 1894 1895 1896 1897 1898 1899 1900 1901 1902 1903 1904 1905 1906 1907 1908 1909 1910 1911 1912 1913 1914 1915 1916 1917 1918 1919 1920 1921 1922 1923 1924 1925 1926 1927 1928 1929
	* config/i860/i860-protos.h (i860_va_start): Remove 'stdarg_p'
	argument.
	(tdesc_section): Add prototype.
	Update copyright dates.
	* config/i860/i860.c: Include coretypes.h, tm.h, and toplev.h.
	(TARGET_ASM_FUNCTION_PROLOGUE): Move definition to end of file.
	(TARGET_ASM_FUNCTION_EPILOGUE): Likewise.
	(targetm): Likewise.
	(i860_output_function_prologue): Substitute HOST_WIDE_INT_PRINT_DEC
	for '%d' where necessary.
	(i860_va_start): Remove 'stdarg_p' argument.  Make conditional checks
	on 'stdarg_p' unconditional.  Divide current_function_args_info.ints
	by UNITS_PER_WORD when referencing (likewise for .floats).
	(I860_SVR4_VARARGS): Rename...
	(I860_SVR4_VA_LIST): ...to this.
	Call build() with 't' rather than 'field'.
	(i860_rtx_costs): New function.
	(TARGET_RTX_COSTS): Define.
	(i860_internal_label): New function.
	(TARGET_ASM_INTERNAL_LABEL): Define.
	(i860_file_start): New function.
	Update copyright dates.
	* config/i860/i860.h (CPP_PREDEFINES): Remove.
	(TARGET_CPU_CPP_BUILTINS): Define.
	(EXPAND_BUILTIN_VA_START): Remove 'stdarg' argument.
	(CONST_COSTS): Remove (and move code to i860_rtx_costs).
	(ASM_FILE_START): Remove.
	(ASM_FILE_START_1): Remove.
	(ASM_GLOBALIZE_LABEL): Remove.
	(ASM_OUTPUT_INTERNAL_LABEL): Remove.
	(ASM_OUTPUT_CASE_LABEL): Replace call of ASM_OUTPUT_INTERNAL_LABEL
	with targetm.asm_out.internal_label.
	Update copyright dates.
	* config/i860/sysv4.h (USER_LABEL_PREFIX): Define.
	(CPP_PREDEFINES): Remove.
	(TARGET_OS_CPP_BUILTINS): Define.
	(GLOBAL_ASM_OP): Define.
	(ASM_FILE_START): Remove.
	(TARGET_ASM_FILE_START_FILE_DIRECTIVE): Define.
	(TARGET_ASM_FILE_START): Define.
	Update copyright dates.

2003-08-22  Jason Eckhardt  <jle@rice.edu>

1930
	* gcc/config.gcc (i860-*-sysv4*): Add target.
1931 1932 1933 1934 1935 1936 1937 1938 1939 1940
	* config/i860/i860-protos.h: New.
	* config/i860/i860.c: New.
	* config/i860/i860.h: New.
	* config/i860/i860.md: New.
	* config/i860/sysv4.h: New.
	* config/i860/varargs.asm: New.
	* config/i860/x-sysv4: New.

2003-08-22  Jason Eckhardt  <jle@rice.edu>

1941 1942 1943 1944 1945 1946 1947 1948 1949 1950 1951 1952 1953 1954 1955 1956 1957 1958 1959 1960 1961 1962 1963 1964
	* config/pa/pa.c: Replace 'GNU CC' with 'GCC'.
	Remove all uses of PARAMS macro.
	Convert all function definitions to ISO C90 syntax.
	* config/pa/elf.h: Replace 'GNU CC' with 'GCC'.
	* config/pa/fptr.c: Likewise.
	* config/pa/lib2funcs.asm: Likewise.
	* config/pa/long_double.h: Likewise.
	* config/pa/milli64.S: Likewise.
	* config/pa/pa-64.h: Likewise.
	* config/pa/pa-hpux.h: Likewise.
	* config/pa/pa-hpux10.h: Likewise.
	* config/pa/pa-hpux11.h: Likewise.
	* config/pa/pa-linux.h: Likewise.
	* config/pa/pa-modes.def: Likewise.
	* config/pa/pa-osf.h: Likewise.
	* config/pa/pa-pro-end.h: Likewise.
	* config/pa/pa.md: Likewise.
	* config/pa/pa32-linux.h: Likewise.
	* config/pa/pa64-linux.h: Likewise.
	* config/pa/pa64-hpux.h: Likewise.
	* config/pa/pa64-regs.h: Likewise.
	* config/pa/quadlib.c: Likewise.
	* config/pa/rtems.h: Likewise.
	* config/pa/pa-protos.h: Replace 'GNU CC' with 'GCC' and remove
1965
	all uses of the PARAMS macro.
1966 1967 1968
	* config/pa/pa.h: Likewise.
	* config/pa/som.h: Likewise.

1969 1970 1971
	* config/iq2000/iq2000.c: Replace 'GNU CC' with 'GCC'.
	Remove all uses of PARAMS macro.
	Convert all function definitions to ISO C90 syntax.
1972
	* config/iq2000-protos.h: Replace 'GNU CC' with 'GCC'.
1973
	Remove all uses of PARAMS macro.
1974
	* config/iq2000.h: Remove all uses of PARAMS macro.
1975
	* config/iq2000/iq2000.md: Replace 'GNU CC' with 'GCC'.
1976

1977 1978 1979 1980 1981 1982
2003-08-23  Ulrich Weigand  <uweigand@de.ibm.com>

	* config/s390/s390-protos.h (s390_output_pool_entry): Declare.
	* config/s390/s390.c (gen_consttable): Remove.
	(s390_dump_pool): Use UNSPECV_POOL_ENTRY for pool entry insns.
	(s390_output_pool_entry): New function.
1983 1984
	* config/s390/s390.md (UNSPECV_POOL_QI, UNSPECV_POOL_HI,
	UNSPECV_POOL_SI, UNSPECV_POOL_DI, UNSPECV_POOL_TI,
1985 1986 1987 1988 1989 1990 1991 1992 1993 1994 1995 1996 1997 1998 1999
	UNSPECV_POOL_SF, UNSPECV_POOL_DF): Remove, replace by ...
	(UNSPECV_POOL_ENTRY): ... this new constant.
	("consttable_qi", "consttable_hi", "consttable_si", "consttable_di",
	"consttable_ti", "consttable_sf", "consttable_df"): Remove ...
	("*pool_entry"): ... and replace by this new insn.
	("literal_pool_31"): Do not emit anchor label if pool empty.

	* config/s390/s390.c (struct machine_function): Add save_return_addr_p.
	(s390_optimize_prolog): Save RETURN_REGNUM if save_return_addr_p.
	(s390_fixup_clobbered_return_reg): Remove.
	(s390_reorg): Don't call s390_fixup_clobbered_return_reg.
	(s390_return_addr_rtx): Always retrieve return address from save area
	slot.  Use save_return_addr_p to force slot to be filled.
	(s390_emit_prologue): Remove has_hard_reg_initial_val test.

2000 2001 2002 2003 2004 2005 2006 2007 2008
2003-08-22  Chris Demetriou  <cgd@broadcom.com>

	* config/mips/mips.h (MASK_FIX_SB1, TARGET_FIX_SB1): New defines.
	(TARGET_SWITCHES): Add -mfix-sb1 and -mno-fix-sb1.
	* config/mips/mips.md (divdf3, divsf3, sqrtdf2, sqrtsf2): Work
	around SB-1 errata if TARGET_FIX_SB1 is set.
	(recip.d insn, recip.s insn, rsqrt.d insn, rsqrt.s insn): Likewise.
	* doc/invoke.texi: Document MIPS -mfix-sb1 and -mno-fix-sb1.

2009 2010 2011 2012 2013
2003-08-22  Roger Sayle  <roger@eyesopen.com>

	* hashtable.c (ht_expand): Avoid calculating rehash for the common
	case that the first probe hits an empty hash table slot.

2014 2015
2003-08-22  Mark Mitchell  <mark@codesourcery.com>

2016 2017 2018 2019
	* config/ia64/hpux.h (SUPPORTS_INIT_PRIORITY): Define to 0.

2003-08-22  Mark Mitchell  <mark@codesourcery.com>

2020 2021 2022 2023 2024 2025
	* config/ia64/ia64.md (*ptr_extend_plus_1): Rename to ...
	(ptr_extend_plus_imm): ... this.
	* config/ia64/ia64.c (addp4_optimize_ok): Do not disable addp4
	optimization in C++.
	(ia64_output_mi_thunk): Support ILP32 mode.

2026
2003-08-22  Bernardo Innocenti  <bernie@develer.com>
2027 2028 2029 2030 2031

	* gcc/config/m68k/m68k.c (m68k_coff_asm_named_section): remove unused
	function.
	* gcc/config/m68k/m68k.c (-m68k_svr3_asm_out_constructor): likewise.

2032 2033 2034 2035 2036
2003-08-22  Kazu Hirata  <kazu@cs.umass.edu>

	* config/i386/i386.c (const_int_1_operand): Simplify an
	integer comparison.

2037 2038 2039 2040 2041
2003-08-22  Alan Modra  <amodra@bigpond.net.au>

	* config/fp-bit.c: Specify config/ dir for include of fp-bit.h.
	* config/rs6000/ppc64-fp.c: Likewise.

2042 2043
2003-08-22  Kazu Hirata  <kazu@cs.umass.edu>

2044 2045 2046 2047 2048 2049 2050 2051 2052
	* cfgcleanup.c: Fix comment typos.
	* emit-rtl.c: Likewise.
	* optabs.c: Likewise.
	* ra-build.c: Likewise.
	* rtlanal.c: Likewise.
	* tree.h: Likewise.

2003-08-22  Kazu Hirata  <kazu@cs.umass.edu>

2053 2054 2055 2056 2057 2058 2059 2060 2061 2062 2063 2064 2065 2066 2067 2068 2069
	* c-decl.c: Fix comment formatting.
	* cfgrtl.c: Likewise.
	* combine.c: Likewise.
	* convert.c: Likewise.
	* dominance.c: Likewise.
	* dwarf2out.c: Likewise.
	* dwarfout.c: Likewise.
	* expmed.c: Likewise.
	* fold-const.c: Likewise.
	* gcov.c: Likewise.
	* genattrtab.c: Likewise.
	* ggc-common.c: Likewise.
	* mips-tfile.c: Likewise.
	* regmove.c: Likewise.

2003-08-22  Kazu Hirata  <kazu@cs.umass.edu>

2070 2071 2072 2073 2074 2075 2076 2077
	* builtin-attrs.def: Fix comment formatting.
	* c-pretty-print.c: Likewise.
	* diagnostic.h: Likewise.
	* langhooks.h: Likewise.
	* recog.c: Likewise.
	* simplify-rtx.c: Likewise.
	* tree.def: Likewise.

2078 2079 2080 2081 2082
2003-08-22  Bernardo Innocenti  <bernie@develer.com>

	* config/m68k/m68k-protos.h: Convert to ISO C90.
	* config/m68k/m68k.c: Likewise.

2083
2003-08-21  Bernardo Innocenti  <bernie@develer.com>
2084 2085
	    Paul Dale  <pauli@snapgear.com>
	    Peter Barada <peter@baradas.org>
2086 2087 2088 2089

	* config/m68k/m68k.c (m68k_rtx_costs): Adjust mul/div costs for
	ColdFire cores.

2090 2091 2092 2093 2094 2095 2096 2097 2098 2099 2100 2101 2102 2103 2104 2105 2106 2107 2108 2109 2110 2111 2112 2113 2114 2115 2116 2117 2118 2119 2120 2121 2122 2123 2124 2125 2126 2127 2128 2129 2130 2131 2132 2133 2134 2135 2136 2137 2138 2139 2140
2003-08-21  Zack Weinberg  <zack@codesourcery.com>

	* Makefile.in (INCLUDES): Remove -I$(srcdir)/config.
	* config.gcc (*-*-openbsd): Don't set tm_file.
	(alpha*-*-openbsd, arm*-*-coff*, arm*-wince-pe*,
	arm-*-pe*, avr-*-*, h8300-*-rtems*, h8300-*-elf*,
	h8300-*-*, hppa*-*-osf*, hppa*-*-bsd*, hppa*-*-hpux*,
	i370-*-opened*, i370-*-mvs*, i370-*-linux*, i?86-*-openbsd*,
	i?86-*-lynxos, i?86-*-nto-qnx*, iq2000*-*-elf*, m68000-hp-hpux*,
	m68k-hp-hpux*, m68k-*-aout*, m68k-*-coff*, m68020-*-elf*,
	m68k-*-elf*, m68k*-*-netbsd*, m68k*-*-openbsd*, m68k-*-sysv4*,
	m68k-*-linux*, m68k-*-rtems*, mcore-*-pe*, mips*-*-netbsd*,
	mips*-*-openbsd*, rs6000-*-lynxos*, sh*-*-elf*, sh*-*-ka,
	sh-*-rtemself, sparc-*-openbsd*, strongarm-*-pe, vax-*-openbsd*,
	xscale-*-coff): Use explicit and complete lists of target headers
	to include.  Move definitions to tm_defines where appropriate.
	(hppa*-*-openbsd*, powerpc-*-openbsd*): Comment out stanza for
	not-yet-contributed configuration.

	* config/lynx.h, config/alpha/openbsd.h, config/arm/coff.h
	* config/avr/avr.h, config/frv/frv.h, config/h8300/elf.h
	* config/i370/linux.h, config/i370/mvs.h, config/i370/oe.h
	* config/i386/nto.h, config/iq2000/iq2000.h,
	* config/m68k/coff.h, config/m68k/hp310.h, config/m68k/hp320.h
	* config/m68k/linux.h, config/m68k/m68k-aout.h
	* config/m68k/m68k-none.h, config/m68k/m68kv4.h
	* config/m68k/netbsd.h, config/m68k/openbsd.h
	* config/m68k/sgs.h, config/mcore/mcore-pe.h,
	* config/mips/netbsd.h, config/mips/openbsd.h, config/pa/pa.h,
	* config/rs6000/lynx.h, config/sh/embed-elf.h, config/sparc/openbsd.h:
	Remove includes of other target config headers, and
	definitions of macros moved to tm_defines lists.  Add #undefs
	where now necessary to prevent redefinition warnings.

	* config/h8300/coff.h: New file split out of...
	* config/h8300/elf.h: ...here.
	* config/m68k/hp320base.h: New file split out of...
	* config/m68k/hp320.h: ...here.
	* config/rs6000/lynxbase.h: New file split out of...
	* config/rs6000/lynx.h: ...here.

	* config/m68k/hp310g.h, config/m68k/hp320g.h, config/m68k/hpux7.h
	* config/m68k/m68k-coff.h, config/mips/openbsd-be.h: Delete file.

	* config/sol2.h: Remove #if 0-ed #include of sys/mman.h.
	* config/m68k/m68kelf.h: Remove commented out #include of m68k/sgs.h.
	* config/mcore/mcore.h: Don't include hwint.h nor machmode.h.
	Remove unnecessary #ifndef.
	* config/s390/s390.h: Prefix #include of s390/fixdfdi.h
	[under IN_LIBGCC2] with config/.

2141
2003-08-21  Per Bothner  <pbothner@apple.com>
2142 2143 2144 2145 2146 2147

	* cppfiles.c (stack_file):  Correctly pass return_at_eof parameter
	to cpp_push_buffer.
	* cpplex.c (_cpp_get_fresh_line):  Don't buffer->prev - handled
	by return_at_eof check.  Always call _cpp_pop_buffer at end.

2148 2149 2150 2151 2152
2003-08-21  Kazu Hirata  <kazu@cs.umass.edu>

	PR target/11805
	* config/h8300/h8300.md (two anonymous patterns): Remove.

2153 2154 2155 2156 2157 2158
2003-08-21  Richard Sandiford  <rsandifo@redhat.com>

	* config/mips/mips.h (MUST_PASS_IN_STACK): Remove BLKmode clause.
	* config/mips/mips.c (function_arg_pass_by_reference): Never return
	true for n32 & n64.

2159 2160 2161 2162 2163
2003-08-21  Josef Zlomek  <zlomekj@suse.cz>

	* fold-const.c (fold): Fix bug in (A & C) == D where D & ~C != 0
	and similarly in (A | C) == D where C & ~D != 0.

Geoffrey Keating committed
2164 2165 2166 2167 2168 2169
2003-08-20  Geoffrey Keating  <geoffk@apple.com>

	PR 8180
	* configure.in: When testing with_libs and with_headers, treat
	'no' as unset.  Based on a patch by Dan Kegel <dank@kegel.com>.
	* configure: Regenerate.
2170

Geoffrey Keating committed
2171
2003-08-20  Peter Barada <peter@baradas.org>
2172 2173 2174

	* longlong.h (umul_ppmm): Add ColdFire support.

Geoffrey Keating committed
2175
2003-08-20  Peter Barada <peter@baradas.org>
2176
	    Bernardo Innocenti  <bernie@develer.com>
2177 2178 2179 2180 2181 2182 2183 2184 2185 2186 2187 2188

	* config/m68k/m68k-none.h: Introduce new ColdFire archs.
	* config/m68k/m68k.h: Likewise.
	* config/m68k/lb1sf68.asm: Rename __mcf5200__ to __mcoldfire__.
	* config/m68k/coff.h: Rename TARGET_5200 to TARGET_COLDFIRE.
	* config/m68k/linux.h: Likewise.
	* config/m68k/m68k.c: Likewise.
	* config/m68k/m68k.md: Likewise.
	* config/m68k/m68kelf.h: Likewise.
	* config/m68k/netbsd-elf.h: Likewise.
	* config/m68k/t-m68kelf: Add multilib targets for new ColdFire archs.

2189 2190 2191 2192 2193
2003-08-20  Bernardo Innocenti  <bernie@develer.com>

	* config/m68k/m68k.c: Strip away code depending on NO_ADDSUB_Q definition.
	* config/m68k/m68k.md: Likewise.

2194 2195 2196 2197 2198 2199 2200 2201 2202
2003-08-20  Mark Mitchell  <mark@codesourcery.com>

	PR java/11996
	Revert this change:
	2003-08-19  Mark Mitchell  <mark@codesourcery.com>
	* c-common.c (c_common_signed_or_unsigned_type): Correctly handle
	types with precisions other than those given by native machine
	modes.

2203 2204
2003-08-20  Gunther Nikl  <gni@gecko.de>

2205 2206 2207 2208 2209 2210 2211 2212 2213 2214
	* config/m68k/m68k.md (anonymous define_insn): remove obsolete code
	selected by FSGLMUL_USE_S and FSGLDIV_USE_S
	* config/m68k/m68k.c (output_move_himode): remove SGS_NO_LI check
	* config/m68k/m68k.md (anonymous define_insn): Likewise
	* config/m68k/m68k.md (anonymous define_insn): remove ISI_OV check
	* config/m68k/m68k.c (standard_68881_constant_p): remove obsolete
	code selected by NO_ASM_FMOVECR

2003-08-20  Gunther Nikl  <gni@gecko.de>

2215 2216 2217 2218 2219 2220 2221
	* config/m68k/m68k.c (output_move_const_into_data_reg,
	output_move_himode): unify MOTOROLA/MIT handling of moveq
	* config/m68k/m68k.md (movsi_const0, anonymous define_insn):
	Likewise

2003-08-20  Gunther Nikl  <gni@gecko.de>

2222 2223 2224 2225 2226
	* config/m68k/m68k.c (m68k_output_function_prologue): use %U in
	label name
	* config/m68k/m68k.c (m68k_output_function_epilogue): replace
	HOST_WIDE_INT_PRINT_DEC with %wd

2227 2228 2229 2230 2231
2003-08-20  Loren James Rittle  <ljrittle@acm.org>

	* config/i386/freebsd.h (ASM_OUTPUT_MAX_SKIP_ALIGN): Handle
	redefine warning.

2232 2233 2234 2235 2236 2237 2238
2003-08-20  Roger Sayle  <roger@eyesopen.com>

	PR middle-end/11984
	* fold-const.c (fold <PLUS_EXPR>): Check for integer constant
	operands before calling tree_int_cst_lt when performing associative
	transformations.

2239 2240 2241 2242 2243 2244 2245 2246 2247 2248
2003-08-20  Jason Merrill  <jason@redhat.com>

	* tree.h (IS_EXPR_CODE_CLASS): Also include 'r' and 's'.
	(EXPR_CHECK): Don't check for 'r' or 's' if we're
	checking IS_EXPR_CODE_CLASS.
	* calls.c (calls_function_1): Likewise.
	* fold-const.c (fold): Likewise.
	* tree.c (iterative_hash_expr): Likewise.
	* tree-inline.c (walk_tree, copy_tree_r): Likewise.

2249 2250 2251 2252 2253 2254
2003-08-20  Gunther Nikl  <gni@gecko.de>

	* config/m68k/m68k.c (m68k_output_mi_thunk): delete obsolete code
	depending on MOTOROLA_BSR
	* config/m68k/m68k.md (anonymous define_insn): Likewise

2255 2256
2003-08-20  Jason Merrill  <jason@redhat.com>

2257
	* builtins.c (expand_builtin_mathfn): Use get_callee_fndecl.
2258
	(expand_builtin_mathfn2, expand_builtin, builtin_mathfn_code,
2259 2260 2261 2262 2263
	fold_trunc_transparent_mathfn, fold_builtin): Likewise.
	* dojump.c (do_jump): Likewise.
	* fold-const.c (operand_equal_p, fold): Likewise.
	(tree_expr_nonnegative_p): Likewise.

2264 2265
	* stor-layout.c (do_type_align): Only copy DECL_USER_ALIGN from
	TYPE_USER_ALIGN for FIELD_DECLs.
2266

2267 2268 2269 2270
	* attribs.c (decl_attributes): Rebuild the function pointer type after
	changing the target type.
	* tree.c (get_qualified_type): Also check that the attributes match.

2271 2272 2273 2274 2275
2003-08-19  Matt Kraai  <kraai@alumni.cmu.edu>

	* Makefile.in (STAGESTUFF): Move cc1obj$(exeext) from here ...
	* objc/config-lang.in (stagestuff): ... to here.

2276 2277 2278 2279 2280 2281 2282 2283 2284
2003-08-19  Mark Mitchell  <mark@codesourcery.com>

	PR c++/11946
	* convert.c (convert_to_integer): Use CONVERT_EXPR (instead of
	NOP_EXPR) when necessary.
	* c-common.c (c_common_signed_or_unsigned_type): Correctly handle
	types with precisions other than those given by native machine
	modes.

2285 2286
2003-08-19  Geoffrey Keating  <geoffk@apple.com>

2287 2288 2289
	* cpppch.c (cpp_valid_state): Re-add warning about PCH not used
	because some macro is defined.

2290 2291 2292 2293 2294 2295 2296 2297 2298 2299
	* config/darwin.h (LINK_COMMAND_SPEC): Add -arch and -arch_only
	options.
	* config/i386/darwin.h (ASM_SPEC): New.
	(SUBTARGET_EXTRA_SPECS): New.
	* config/rs6000/darwin.h (ASM_SPEC): New.
	(SUBTARGET_EXTRA_SPECS): New.
	* configure.in: Don't set CROSS or SYSTEM_HEADER_DIR when building
	a cross-compiler between two different processors on Darwin.
	* configure: Regenerate.

2300 2301
2003-08-19  Kazu Hirata  <kazu@cs.umass.edu>

2302 2303 2304 2305 2306 2307 2308 2309 2310 2311 2312 2313 2314 2315 2316 2317 2318 2319 2320 2321 2322 2323
	* builtins.c: Fix comment typos.
	* c-common.c: Likewise.
	* c-decl.c: Likewise.
	* c-pretty-print.c: Likewise.
	* cfgbuild.c: Likewise.
	* cfglayout.c: Likewise.
	* cfgloopanal.c: Likewise.
	* cgraphunit.c: Likewise.
	* cppfiles.c: Likewise.
	* dwarfout.c: Likewise.
	* expr.c: Likewise.
	* fold-const.c: Likewise.
	* gcse.c: Likewise.
	* ggc-page.c: Likewise.
	* haifa-sched.c: Likewise.
	* pretty-print.c: Likewise.
	* tree.c: Likewise.
	* tree.h: Likewise.
	* value-prof.c: Likewise.

2003-08-19  Kazu Hirata  <kazu@cs.umass.edu>

2324 2325 2326 2327 2328
	* c-decl.c: Follow spelling conventions.
	* cppfiles.c: Likewise.

2003-08-19  Kazu Hirata  <kazu@cs.umass.edu>

2329 2330 2331 2332 2333 2334 2335 2336 2337 2338 2339 2340
	* c-common.c: Fix comment formatting.
	* c-common.h: Likewise.
	* c-decl.c: Likewise.
	* cppinit.c: Likewise.
	* cpplib.h: Likewise.
	* emit-rtl.c: Likewise.
	* input.h: Likewise.
	* line-map.h: Likewise.
	* opts.c: Likewise.
	* opts.h: Likewise.
	* simplify-rtx.c: Likewise.

2341 2342 2343 2344 2345 2346 2347 2348
2003-08-19  Daniel Jacobowitz  <drow@mvista.com>

	* unwind-c.c: Add libgcc-style exception.
	* unwind-dw2.c: Likewise.
	* unwind-pe.h: Likewise.
	* unwind-sjlj.c: Likewise.
	* unwind.inc: Likewise.

2349 2350 2351 2352 2353 2354 2355 2356 2357 2358 2359 2360 2361 2362 2363 2364 2365 2366 2367 2368 2369
2003-08-19  Andrew Pinski  <pinskia@physics.uc.edu>

	PR c/5582 PR c++/10538
	* langhooks-def.h (lhd_decl_uninit): Declare.
	(LANG_HOOKS_DECL_UNINIT): New macro.
	(LANG_HOOKS_INITIALIZER): Adjust.
	* langhooks.h (struct lang_hooks): Add new field
	decl_uninit.
	* langhooks.c (lhd_decl_uninit): Define.
	* c-common.c (c_decl_uninit_1): New function.
	(c_decl_uninit): New function.
	(warn_init_self): Define.
	* c-common.h (c_decl_uninit): Declare.
	(warn_init_self): Declare.
	* c.opt: Introduce -Winit-self.
	* c-opts.c (c_common_handle_options): Set warn_init_self.
	* c-lang.c (LANG_HOOKS_DECL_UNINIT): Define.
	* objc/objc-lang.c  (LANG_HOOKS_DECL_UNINIT): Define.
	* function.c (uninitialized_vars_warning): Call the language hook.
	* doc/invoke.texi: Document -Winit-self.

2370 2371 2372 2373 2374 2375 2376
2003-08-19  Chris Demetriou  <cgd@broadcom.com>

	* config/mips/mips.md: Adjust SI-mode "trap_if" instruction
	to use better predicates and constraints.  Define new
	instruction to handle "trap_if" with DI-mode arguments.
	(conditional_trap): FAIL if trap code is not 0.

2377 2378 2379 2380 2381 2382
2003-08-19  Andrew Pinski  <pinskia@physics.uc.edu>

	* config/i386/i386.c (legitimate_pic_address_disp_p): Change the
	strstr with $pb to a strcompare with "<pic base>"
	(ix86_output_addr_diff_elt): Output the real pic base.

2383 2384 2385 2386 2387 2388
2003-08-19  Gabriel Dos Reis  <gdr@integrable-solutions.net>

	* langhooks-def.h (LANG_HOOKS_INITIALIZE_DIAGNOSTICS): Fix spelling.
	(LANG_HOOKS_INITIALIZER): Correct.
	* c-lang.c: Likewise.

2389 2390 2391 2392 2393 2394 2395 2396 2397
2003-08-19  Jan Hubicka  <jh@suse.cz>

	* cgraph.c (cgraph_mark_needed_node): Call notice_global_symbol.
	(cgraph_varpool_mark_needed_node): Likewise.
	* cgraph.h (notice_global_symbol): Declare
	* varasm.c (notice_global_symbol): Break out from ...
	(assemble_start_function): ... here; update for variables.
	(assemble_variable): Use notice_global_symbol.

2398 2399
2003-08-19  Richard Sandiford  <rsandifo@redhat.com>

2400 2401 2402 2403 2404 2405
	* config/mips/mips.c (mips_va_arg): If EABI_FLOAT_VARARGS_P,
	expect SFmode and DFmode arguments to be passed in FPRs,
	regardless of the underlying type.

2003-08-19  Richard Sandiford  <rsandifo@redhat.com>

2406 2407 2408 2409
	PR target/11924
	* config/mips/mips.c (INTERNAL_SYMBOL_P): New macro.
	(mips_classify_symbol, m16_usym8_4, m16_usym5_4): Use it.

2410 2411 2412 2413 2414
2003-08-18  Matt Kraai  <kraai@alumni.cmu.edu>

	PR c/11207
	* c-typeck.c (set_init_index): Check for negative index.

2415 2416 2417 2418 2419 2420 2421 2422 2423 2424
2003-08-18  Bob Wilson  <bob.wilson@acm.org>

	* config/xtensa/crti.asm (_init, _fini): Add alternate code for new
	call0 ABI.
	* config/xtensa/crtn.asm (_init, _fini): Likewise.
	* config/xtensa/lib1funcs.asm (__mulsi3, __udivsi3, __divsi3,
	__umodsi3, __modsi3): Likewise.
	* config/xtensa/t-xtensa (crti.o, crtn.o): Add $(GCC_CFLAGS) and
	$(INCLUDES).

2425 2426 2427 2428
2003-08-18  Aldy Hernandez  <aldyh@redhat.com>

	* config/rs6000/spe.md ("*nabssf2_gpr"): New.

2429 2430
2003-08-18  Richard Sandiford  <rsandifo@redhat.com>

2431 2432 2433 2434 2435 2436
	* config/mips/mips.md: Quote C code in braces.  Remove use of
	fake const0_rtx operands.  Remove double backslashes.  Use \;.
	Remove workarounds for bogus warnings.

2003-08-18  Richard Sandiford  <rsandifo@redhat.com>

2437 2438 2439 2440 2441 2442 2443
	* config/mips/mips.md (muldf3, mulsf3): Don't call a gen_* function.
	(muldf3_internal, muldf3_r4300): Select based on TARGET_4300_MUL_FIX
	rather than TARGET_MIPS4300.
	(mulsf3_internal, mulsf3_r4300): Likewise.

2003-08-18  Richard Sandiford  <rsandifo@redhat.com>

2444 2445
	* config/mips/mips.md: Renumber unspecs.  Clean up comments.

2446 2447 2448 2449 2450 2451 2452 2453 2454 2455 2456
2003-08-17  Roger Sayle  <roger@eyesopen.com>

	* simplify-rtx.c (associative_constant_p): New function to test
	whether an RTX expression is an immediate constant.
	(simplify_associative_operation): New function to perform some
	reassociation optimizations of associative binary expressions.
	(simplify_binary_operation): Use simplify_associative_operation
	to simplify PLUS, MULT, AND, IOR, XOR, SMIN, SMAX, UMIN and UMAX.
	Floating point expressions are only reassociated when unsafe
	math optimizations are permitted.

2457 2458 2459 2460 2461 2462 2463 2464 2465 2466 2467 2468 2469 2470 2471 2472 2473
2003-08-17  Andreas Jaeger  <aj@suse.de>

	* config/alpha/alpha.md: Remove usage of PARAMS.

	* config/i386/cygwin.h: Convert K&R prototypes to ISO C90.
	* config/i386/i386-interix.h: Likewise.
	* config/i386/winnt.c: Likewise.
	* config/i386/cygming.h: Likewise.
	* config/i386/cygwin2.c: Likewise.
	* config/darwin.c: Likewise.
	* config/darwin-c.c: Likewise.
	* config/darwin-protos.h: Likewise.
	* config/darwin.h: Likewise.
	* config/s390/s390-protos.h: Likewise.
	* config/s390/s390.c: Likewise.
	* config/ia64/ia64.c: Likewse
	* config/ia64/ia64-protos.h: Likewise.
2474
	* config/ia64/ia64-c.c: Likewise.
2475

2476 2477
2003-08-16  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>

2478 2479
	* config/sparc/sparc.c: Convert to ISO C.

2480 2481 2482
	* config/sparc/sparc-protos.h: Don't use the PARAMS macro.
	* config/sparc/sparc.c: Likewise.

2483 2484 2485 2486 2487 2488
2003-08-16  Nathan Sidwell  <nathan@codesourcery.com>

	PR c++/11512
	* stmt.c (expand_expr_stmt_value): Don't warn about any void
	typed expression.

2489 2490 2491 2492 2493 2494 2495 2496 2497 2498 2499 2500 2501 2502 2503 2504 2505 2506 2507 2508 2509 2510 2511 2512 2513
2003-08-16  Jan Hubicka  <jh@suse.cz>

	* i386.c (ix86_fntype_regparm): Rename from ...
	(ix86_function_regparm): ... this one; add fastcall and local
	functions.
	(ix86_function_ok_for_sibcall): Update.
	(ix86_return_pops_args): Likewise.
	(init_cumulative_args): Likewise.
	(x86_can_output_mi_thunk): Likewise.
	(function_arg): Fix formating.
	(x86_this_parameter): Fix fastcall.
	(x86_output_mi_thunk): Likewise.

	* cgraph.c (cgraph_mark_needed_node): Do not mark functions without
	body as reachable; mark nested functions as needed too.
	(dump_cgraph): Do not output global.calls.
	* cgraph.h (cgraph_global_info): Kill.
	* cgraphunit.c (cgraph_finalize_function): Enqueue needed functions.
	(record_call_1): Speedup.
	(cgraph_analyze_function): Break out from ...; compute inlining
	parameters.
	(cgraph_finalize_compilation_unit): ... here.
	(cgraph_mark_inline): Kill computation of calls.
	(cgraph_decide_inlining): Do not compute most of initial values.

2514 2515 2516 2517 2518 2519 2520 2521 2522 2523 2524 2525 2526 2527
2003-08-14  Roger Sayle  <roger@eyesopen.com>

	* fold-const.c (negate_expr_p): MULT_EXPRs and RDIV_EXPRs are easy
	to negate if either operand is easy to negate, if we don't care
	about sign-dependent rounding.
	(negate_expr): Make the logic to negate a REAL_CST explicit.
	Attempt to negate a MULT_EXPR or RDIV_EXPR by negating an operand
	that's easy to negate, if we don't honor sign-dependent rounding.
	(fold <MULT_EXPR>): Optimize -A * B as A * -B if B is easy to
	negate, and the symmetric A * -B as -A * B if A is easy to negate.
	(fold <RDIV_EXPR>): Likewise, optimize -A/B and C/-D as A/-B and
	-C/D if B and C are cheap to negate.  Add an explicit rule to
	optimize X/-1.0 as -X when we don't care about signaling NaNs.

2528 2529 2530 2531 2532 2533 2534 2535 2536 2537 2538 2539 2540 2541 2542 2543 2544 2545 2546 2547 2548 2549
2003-08-14  Zack Weinberg  <zack@codesourcery.com>

	* Makefile.in (tm_file): Rename tm_include_list.
	(tm_p_file): Rename tm_p_include_list.
	(build_xm_file): Rename build_xm_include_list.
	(host_xm_file): Rename host_xm_include_list.
	(xm_file): Rename xm_include_list.
	(xm_file_list): Add to be substituted.
	(cs-config.h, cs-bconfig.h, cs-tconfig.h, cs-tm.h, cs-tm_p.h):
	Update to match.
	(bt-load.o): Add missing dependency on $(TM_H).
	* configure.in: Prefix value of EXTRA_MODES_FILE with config/.
	For each of tm_file, tm_p_file, xm_file, host_xm_file, and
	build_xm_file, generate both *_file_list and *_include_list
	values from it.  (xm_file_list was formerly not being generated.)
	In *_include_list, prefix the names of all headers found in
	$(srcdir)/config with config/.  In each loop, consider only
	the special case files that can actually appear in that list.
	AC_SUBST all *_file_list and all *_include_list variables; do
	not AC_SUBST the plain *_file variables.
	* configure: Regenerate.

2550 2551 2552 2553
2003-08-14  Zdenek Dvorak  <rakdver@atrey.karlin.mff.cuni.cz>

	* cfg.c (dump_edge_info): Add name of loop_exit edge flag.

2554 2555 2556 2557 2558 2559 2560 2561
2003-08-14  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>

	* pa.c (pa_adjust_insn_length): Delete adjustment for delay slot in
	direct calls.
	(attr_length_call): Include it here.  Improve length estimate for
	local calls.
	(output_call): Use targetm.binds_local_p.

2562 2563
2003-08-14  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>

2564 2565 2566
	* builtins.c (CASE_MATHFN): New helper macro.
	(mathfn_built_in): Simplify and sort.

2567 2568
	* protoize.c (substr): Delete, callers changed to `strstr'.

2569 2570 2571 2572 2573
2003-08-13  Zack Weinberg  <zack@codesourcery.com>

	* config.gcc (iq2000*-*-elf*): Don't set xm_file.
	* config/iq2000/xm-iq2000.h: Delete file.

2574 2575 2576 2577 2578
2003-08-13  Geoffrey Keating  <geoffk@apple.com>

	* gengtype.c (walk_type): Process a subobject before processing
	the pointer that points to the subobject.

2579 2580 2581 2582 2583 2584 2585 2586 2587
2003-08-13  Per Bothner  <pbothner@apple.com>

	* regclass.c (init_reg_modes):  Make non-static.
	Rename to init_reg_modes_once per new naming convention.
	(init_regs):  Don't call init_reg_modes here.
	* emit-rtl.c (init_emit_once):  Call init_reg_modes_once here instead.
	* rtl.h (init_reg_modes_once):  New declaration.
	* toplev.c (backend_init):  Call init_regs after init_emit_once.

2588 2589 2590 2591 2592
2003-08-13  Kaz Kojima  <kkojima@gcc.gnu.org>

	* config/sh/linux.h (DBX_REGISTER_NUMBER): Define so to map a
	special index for MD_FALLBACK_FRAME_STATE_FOR to itself.

2593 2594 2595 2596 2597
2003-08-13  J"orn Rennecke <joern.rennecke@superh.com>

	* sh.c (sh_get_pr_initial_val): Always wrap in unspec for TARGET_SH1.
	* sh.md (load_ra): Change insn predicate to TARGET_SH1.

2598 2599 2600 2601 2602
2003-08-13  Dale Johannesen  <dalej@apple.com>

	* config/rs6000/rs6000.md (ctrsi, ctrdi):  Reenable
	handling of decrement-and-branch farther than 32 bits.

2603 2604 2605 2606 2607 2608
2003-08-12  Kelley Cook  <kelleycook@wideopenwest.com>

	* configure.in (make_compare_target): Move test to ...
	* aclocal.m4 (gcc_AC_PROG_CMP_IGNORE_INITIAL): here.
	* configure: Regenerate.

2609 2610 2611 2612 2613 2614 2615
2003-08-12  Richard Sandiford  <rsandifo@redhat.com>

	* config/mips/iris6.h: Convert to C90 prototypes.
	* config/mips/irix6-libc-compat.c: Likewise.
	* config/mips/mips-protos.h: Likewise.
	* config/mips/mips.c: Likewise.

2616 2617 2618 2619 2620 2621 2622
2003-08-12  Nathanael Nerode  <neroden@gcc.gnu.org>

	fixinc/inclhack.def (svr4_krnl): Rename from svr4_kernel.  Enable
	for selected machines.  Comment heavily.
	fixinc/fixincl.x: Rebuild.
	fixinc/tests/base/fs/rfs/rf_cache.h: New file.

2623 2624 2625 2626 2627
2003-08-12  Richard Sandiford  <rsandifo@redhat.com>

	* config/mips/mips.h: Tweak various comments.
	* config/mips/mips.c: Likewise.

2628 2629 2630 2631 2632 2633 2634
2003-08-11  James E Wilson  <wilson@tuliptree.org>

	PR optimization/11319
	PR target/10021
	* alias.c (find_base_value, case REG): Return 0 not src if no base
	found.

2635 2636 2637 2638
2003-08-11  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>

	* gcse.c (gmalloc): Fix last change.

2639 2640
2003-08-11  Roger Sayle  <roger@eyesopen.com>

2641 2642 2643 2644 2645 2646 2647
	* simplify-rtx.c (simplify_binary_operation): Replace calls to
	gen_rtx_NEG and gen_rtx_NOT with calls to simplify_gen_unary,
	and calls to gen_rtx_PLUS, gen_rtx_MULT, gen_rtx_LSHIFTRT,
	gen_rtx_ASHIFT and gen_rtx_AND with calls to simplify_gen_binary.

2003-08-11  Roger Sayle  <roger@eyesopen.com>

2648 2649 2650 2651 2652 2653 2654 2655
	* expr.c (expand_expr): If an ABS_EXPR has a complex type, abort.
	* c-typeck.c (build_unary_op): COMPLEX_TYPE is not a valid
	typecode for an ABS_EXPR.

	* doc/c-tree.texi: Document ABS_EXPR.

2003-08-11  Roger Sayle  <roger@eyesopen.com>

2656 2657 2658
	* fold-const.c (fold): Optimize any associative floating point
	operator with -funsafe-math-optimizations, not just MULT_EXPR.

2659 2660 2661 2662 2663 2664 2665 2666
2003-08-11  Kaz Kojima  <kkojima@gcc.gnu.org>

	* config/sh/lib1funcs.asm (__udivdi3): Add .type and .size
	information in SHmedia case too.
	(__divdi3, __umoddi3, __moddi3, __init_trampoline, __ic_invalidate):
	Likewise.
	(__set_fpscr): Use an access via GOT for PIC case.

2667 2668
2003-08-11  Kelley Cook  <kelleycook@wideopenwest.com>

2669 2670 2671 2672 2673
	* configure.in (intermodule): Make switch test more portable.
	* configure: Regenerate.

2003-08-11  Kelley Cook  <kelleycook@wideopenwest.com>

2674 2675 2676
	* Makefile.in (cleanstrap): Pass BOOT_CFLAGS to bootstrap.
	(restrap): Likewise.

2677 2678
2003-08-11  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>

2679 2680 2681 2682 2683
	* gcse.c (gmalloc): Argument is a size_t.  Add ATTRIBUTE_MALLOC.
	(grealloc): Size argument is a size_t.
	(gcalloc): New function.  Use throughout in lieu of
	gmalloc/memset.

2684 2685 2686 2687 2688 2689 2690 2691 2692 2693
	* config/avr/avr.c (avr_init_once): Use xcalloc in lieu of
	xmalloc/memset.
	* config/ia64/ia64.c (ia64_reorg): Likewise.
	* conflict.c (conflict_graph_new): Likewise.
	* fixinc/fixincl.c (run_compiles): Likewise.
	* genattrtab.c (optimize_attrs): Likewise.
	* genrecog.c (new_decision): Likewise.
	* haifa-sched.c (schedule_block): Likewise.
	* hashtable.c (ht_create): Likewise.

2694 2695 2696 2697 2698 2699 2700 2701 2702 2703 2704
2003-08-11  Bob Wilson  <bob.wilson@acm.org>

	* config/xtensa/lib2funcs.S: Fix whitespace.
	* config/xtensa/xtensa.md (all insns and expanders): Use brace block
	syntax where appropriate.  Remove unnecessary backslash escapes.
	Reformat comments and fix some code formatting.
	(extendqisi2): Rearrange conditional.
	(*btrue, *bfalse, *ubtrue, *ubfalse, *bittrue, *bitfalse, *masktrue,
	*maskfalse, movsicc_internal0, movsfcc_internal0): Call abort instead
	of fatal_insn.

2705 2706 2707 2708 2709 2710 2711 2712 2713 2714
2003-08-11  Richard Sandiford  <rsandifo@redhat.com>

	* config/mips/mips.c: Various formatting fixes.
	(override_options): Resync -mtune handling with gas.
	(mips_issue_rate): Rearrange like mips_use_dfa_pipeline_interface.
	* config/mips/mips.h: More formatting fixes.
	(mips_abi): Move declaration.
	* config/mips/mips.md (exception_receiver): Add mode to
	unspec_volatile.

2715 2716 2717 2718 2719 2720
2003-08-11  Aldy Hernandez  <aldyh@redhat.com>

	* config/rs6000/rs6000.c (spe_init_builtins): Handle evsplati and
	evsplatfi here.
	(bdesc_1arg): Remove evsplati and evsplatfi.

2721 2722 2723 2724 2725
2003-08-11  J"orn Rennecke <joern.rennecke@superh.com>

	* dwarf2asm.c (dw2_output_indirect_constant_1): Take user_label_prefix
	into account.

2726 2727 2728 2729
2003-08-10  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>

	* builtins.c (expand_builtin_strcat): Optimize constant strings.

2730 2731 2732 2733 2734 2735 2736 2737 2738 2739 2740 2741 2742 2743 2744 2745 2746 2747 2748 2749 2750 2751 2752 2753 2754 2755 2756 2757 2758 2759 2760 2761 2762 2763 2764 2765 2766 2767 2768 2769 2770 2771 2772 2773 2774 2775 2776 2777 2778
2003-08-10  Gabriel Dos Reis  <gdr@integrable-solutions.net>

	* pretty-print.c (pp_base_indent): Rename from pp_indent.
	* c-pretty-print.h (pp_c_pretty_print_flag)s: New datatype.
	(struct c_pretty_print_info): Add more fields.
	(pp_c_left_paren): Move to c-pretty-print.c.
	(pp_c_right_paren): Likewise.
	(pp_c_left_brace): Likewise.
	(pp_c_right_brace): Likewise.
	(pp_c_left_bracket): Likewise.
	(pp_c_right_bracket): Likewise.
	(pp_c_declarator): Declare.
	(pp_c_direct_declarator): Likewise.
	(pp_c_specifier_qualifier_list): Likewise.
	(pp_c_type_id): Likewise.
	* c-pretty-print.c (pp_c_cv_qualifier): Change prootype. Rework..
	(pp_c_type_qualifier_list): New.
	(pp_c_pointer): Likewise.
	(pp_c_parameter_type_list): Likewise.
	(pp_c_function_definition): Likewise.
	(pp_c_id_expression): Likewise.
	(pp_c_simple_type_specifier): Tidy.
	(pp_c_unary_expression): Likewise.
	(pp_c_expression): Likewise.
	(pp_c_pretty_printer_init): Likewise.
	(pp_c_specifier_qualifier_list): Rework..
	(pp_c_abstract_declarator): Likewise.
	(pp_c_postfix_expression): Likewise.
	(pp_c_primary_expression): Likewise.
	(pp_c_cast_expression): Likewise.
	(pp_c_direct_abstract_declarator): Likewise.
	(pp_c_storage_class_specifier): Likewise.
	(pp_c_function_specifier): Likewise.
	(pp_c_declaration_specifiers): Likewise.
	(pp_c_direct_declarator): Likewise.
	(pp_c_declarator): Likewise.
	(pp_c_declaration): Likewise.
	(pp_c_statement): Likewise.
	(pp_c_integer_constant): Rename from pp_c_integer_literal.
	(pp_c_character_constant): Rename from pp_c_character_literal.
	(pp_c_bool_constant): Rename from pp_c_bool_literal.
	(pp_c_enumeration_constant): Rename from pp_c_enumerator.
	(pp_c_floating_constant): Rename from pp_c_real_literal.
	(pp_c_constant): Rename from pp_c_literal.
	* c-lang.c: Include diagnostic.h and c-pretty-print.h
	(LANG_HOOKS_INITIALIZE_DIAGNOSTITCS): Define.
	(c_initialize_diagnostics): New.
	* Makefile.in (c-lang.o): Update dependency.

2779 2780 2781 2782
2003-08-10  Nathan Sidwell  <nathan@codesourcery.com>

	* c-typeck.c (digest_init): Add conversion for VECTOR_TYPEs.

2783 2784
2003-08-10  Richard Sandiford  <rsandifo@redhat.com>

2785 2786 2787 2788 2789 2790 2791 2792
	* config/mips/mips.c (mips_no_mips16_string): Remove.
	(override_options): Don't handle -mips16 as part of -mipsN.
	* config/mips/mips.h (mips_no_mips16_string): Remove declaration.
	(TARGET_SWITCHES): Add -mips16 and -mno-mips16 entries.
	(TARGET_OPTIONS): Remove -mno-mips16.

2003-08-10  Richard Sandiford  <rsandifo@redhat.com>

2793 2794 2795 2796 2797 2798 2799 2800 2801 2802 2803 2804 2805 2806 2807 2808 2809 2810 2811 2812 2813 2814 2815 2816 2817 2818 2819 2820
	* config/mips/mips-protos.h (coprocessor_operand): Remove declaration.
	(coprocessor2_operand): Likewise.
	* config/mips/mips.c (STAB_CODE_TYPE): Remove.
	(lookup_name): Remove declaration.
	(abort_with_insn): Remove.  Replace all uses with fatal_insn.
	(mips16, mips_abicalls): Remove.
	(mips_char_to_class): Remove initialiser: all entries are NO_REGS.
	(arith32_operand, large_int, true_reg_or_0_operand): Remove.
	(coprocessor_operand, coprocessor2_operand): Remove.
	(override_options): Don't set mips16 or mips_abicalls.
	(print_operand): Don't expect SIGN_EXTEND operands.
	(mips_secondary_reload_class): Likewise.
	(mips_output_conditional_branch): Remove disabled long-branch code.
	* config/mips/mips.h (call_used_regs): Remove declaration.
	(may_call_alloca): Likewise.
	(mips_cpu_attr, mips_abicalls_type, mips_abicalls_attr): Remove.
	(mips_abicalls, mips16): Remove declarations.
	(ASM_FINAL_SPEC, LIB_SPEC): Remove.
	(CC1_SPEC): Remove outdated comment.
	(MIPS_VERSION, MACHINE_TYPE): Remove.
	(TARGET_VERSION_INTERNAL, TARGET_VERSION): Remove.
	(PC_REGNUM, STACK_POINTER_OFFSET): Remove disabled definitions.
	(STRUCT_VALUE_RETURN_REGNUM, STACK_DYNAMIC_OFFSET): Likewise.
	(PUSH_ROUNDING): Likewise.
	(ASSEMBLER_SCRATCH_REGNUM): Remove.
	* config/mips/mips.md: Replace mips_cpu_attr with mips_tune
	and mips16 with TARGET_MIPS16.

2821 2822
2003-08-09  Per Bothner  <pbothner@apple.com>

2823 2824 2825 2826 2827 2828 2829 2830 2831 2832 2833 2834
	* cppinit.c (cpp_read_main_file):  Split out source-independent
	initialization to separate function ...
	(cpp_post_options):  New function.
	* cppfiles.c (cpp_stack_file):  Rename public name to ...
	(_cpp_stack_file):  New internal function name.
	* cpplib.h:  Update accordingly.
	* cppinit.c:  (cpp_create_reader):  Initialize cpp_readers line here.
	(cpp_read_main_file):  Don't initialize line here.
	* c-opts.c (c_common_post_options):  Call cpp_post_options.
	(c_common_parse_file):  Call cpp_read_main_file, not cpp_stack_file.
	* fix-header.c (read_scan_file):  Call cpp_post_options.

2835 2836 2837 2838
2003-08-09  Per Bothner  <per@bothner.com>

	* c-decl.c (SCOPE_LIST_APPEND):  Remove bogus line continuation.

2839 2840 2841 2842
2003-08-09  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>

	* pa.c (pa_asm_output_mi_thunk): Fix typo.

2843 2844 2845 2846 2847
2003-08-09  Neil Booth  <neil@daikokuya.co.uk>

	PR preprocessor/11839
	* cppfiles.c (open_file): Handle ENOTDIR.

2848 2849 2850 2851 2852
2003-08-09  Richard Sandiford  <rsandifo@redhat.com>

	PR target/11699
	* config/mips/mips.c (override_options): Reject -mabi=eabi -mabicalls.

2853 2854 2855 2856 2857
2003-08-08  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>

	* pa.md (extzv, extv, insv): Fix operand limit checks.  Fail if
	source/destination is not a register operand.

2858 2859
2003-08-08  Richard Henderson  <rth@redhat.com>

2860 2861 2862 2863 2864 2865 2866 2867 2868 2869 2870 2871 2872 2873 2874 2875 2876 2877 2878
	PR target/11535
	* config/ia64/ia64.c (ia64_initial_elimination_offset): Remove
	RETURN_ADDRESS_POINTER_REGNUM.
	(ia64_expand_prologue): Don't frob it.
	(ia64_output_function_epilogue): Likewise.
	(ia64_return_addr_rtx): New.
	(ia64_split_return_addr_rtx): New.
	* config/ia64/ia64-protos.h: Update.
	* config/ia64/ia64.h (FIRST_PSEUDO_REGISTER): Decrement.
	(RETURN_ADDRESS_POINTER_REGNUM): Remove.
	(GENERAL_REGNO_P): Don't check it.
	(AR_*_REGNUM): Renumber.
	(FIXED_REGISTERS): Remove RETURN_ADDRESS_POINTER_REGNUM.
	(CALL_USED_REGISTERS, CALL_REALLY_USED_REGISTERS): Likewise.
	(REG_ALLOC_ORDER, REG_CLASS_CONTENTS): Likewise.
	(ELIMINABLE_REGS, REGISTER_NAMES): Likewise.
	(RETURN_ADDR_RTX): Use ia64_return_addr_rtx.
	* config/ia64/ia64.md (UNSPEC_RET_ADDR): New.
	(movdi_ret_addr): New.
2879

2880 2881 2882 2883
2003-08-08  Geoffrey Keating  <geoffk@apple.com>

	* config.gcc (powerpc-*-darwin*): Don't build a soft-float multilib.

2884 2885 2886 2887 2888 2889 2890 2891 2892 2893 2894
2003-08-08  Roger Sayle  <roger@eyesopen.com>

	* tree.h (get_identifier) Define a macro form of get_identifier
	that calls get_identifier_with_length when the string is constant.
	(get_identifier_with_length): Change type of second argument to
	size_t in prototype.
	* stringpool.c (get_identifier): Undefine the macro before giving
	the function definition.
	(get_identifier_with_length): Change  type of second argument to
	size_t in function definition.
	* hashtable.c (calc_hash): Change type of second argument to size_t.
2895
	(ht_lookup): Change type of third argument to size_t.  Reorganize
2896 2897 2898 2899
	to speed-up the cases where the hash table slot is empty, or the
	first probe matches (i.e. there isn't a collision).
	* hashtable.h (ht_lookup): Adjust function prototype.

2900 2901 2902 2903 2904 2905
2003-08-08  Bernardo Innocenti  <bernie@develer.com>

	PR target/9697
	PR target/11777
	* longlong.h (count_leading_zeros): Exclude on __mcpu32__.

2906 2907 2908 2909 2910 2911 2912 2913 2914 2915 2916 2917 2918 2919 2920 2921 2922
2003-08-08  Neil Booth  <neil@daikokuya.co.uk>

	* common.opt: Add debug switches.
	* flags.h (use_gnu_debug_info_extensions): Boolify.
	* opts.c (write_symbols, debug_info_level,
	use_gnu_debug_info_extensions): Move from toplev.c.
	(set_debug_level): New.
	(common_handle_options): Handle debug switches.
	(print_help): Display target options directly.
	* toplev.c (debug_hooks): Don't initialize.
	(write_symbols, debug_info_level,
	use_gnu_debug_info_extensions): Move to opts.c.
	(debug_args, display_help, decode_g_option): Remove.
	(process_options): Set no debug if level zero here,
	and no-debug-hooks.  Error here if impossible debug format selected.
	* toplev.h (display_help, decode_g_option): Remove.

2923 2924 2925 2926
2003-08-08  Richard Sandiford  <rsandifo@redhat.com>

	* tree.c (get_file_function_name_long): Fix size of alloca() area.

2927 2928 2929
2003-08-08  Kelley Cook  <kelleycook@wideopenwest.com>

	* configure.in (gcc_cv_prog_cmp_skip): Flipflop make_compare_target
2930
	and gcc_cv_prog_cmp_skip.
2931 2932
	* configure: Regenerate.

Stan Cox committed
2933 2934 2935 2936 2937 2938
2003-08-08  Stan Cox  <scox@redhat.com>

	* config/iq2000: New port.
	* config.gcc (iq2000-*-elf): Added.
	* doc/install.texi (Specific):  Add iq2000 description.

2939 2940
2003-08-08  Andreas Schwab  <schwab@suse.de>

Andreas Schwab committed
2941
	* configure.in (gcc_cv_as_ia64_ltoffx_ldxmov_relocs): Fix quoting
2942 2943 2944
	and insert missing empty argument.
	* configure: Regenerate.

2945 2946
2003-08-07  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>

2947 2948 2949 2950 2951 2952 2953
	* pa.c (update_total_code_bytes): Use new macro IN_NAMED_SECTION_P.
	(attr_length_millicode_call): Likewise.
	(attr_length_call): Likewise.  Revise some maximum insn lengths.
	(attr_length_indirect_call): Likewise.
	(output_call): Fix thinko that added extra nop.
	* pa.h (IN_NAMED_SECTION_P): Define.

2954 2955 2956 2957
	PR c++/11712
	* pa-hpux.h, pa-hpux10.h, pa-hpux11.h (TARGET_OS_CPP_BUILTINS): Define
	__STDC_EXT__ when using C++ dialect.

2958 2959
2003-08-07  J"orn Rennecke <joern.rennecke@superh.com>

2960 2961 2962 2963 2964 2965 2966 2967 2968 2969 2970 2971 2972 2973 2974
	* sh.c (calc_live_regs): If the return address pointer is live,
	force pr live.
	(sh5_schedule_saves): Exclude PR_MEDIA_REG from being a temp register
	for saves / restores.
	(sh_expand_epilogue): If sh_media_register_for_return returns a
	register number, flag the instructions that restores PR_MEDIA_REG
	as possibly dead.
	Remove dead update of offset.
	(sh_get_pr_initial_val): Use UNSPEC_RA if we don't know yet if
	we can use the result of get_hard_reg_initial_val.
	* sh.md (UNSPEC_RA): New constant.
	(movsi_i_lowpart+1): Changed into a define_insn_and_split, named:
	(load_ra).  Handle UNSPEC_RA.
	(sibcall_media): Use PR_MEDIA_REG.

2975 2976 2977 2978
	* sh.h (CALL_USED_REGISTERS): Include PR_REG and PR_MEDIA_REG.
	* sh.c (calc_live_regs): Use sh_pr_n_sets to determine if pr
	needs saving on SHmedia.

2979 2980 2981 2982
2003-08-07  Ulrich Weigand  <uweigand@de.ibm.com>

	* config/s390/s390.md: Replace all occurrences of \\t with \t.

2983 2984 2985 2986
2003-08-07  Richard Sandiford  <rsandifo@redhat.com>

	* local-alloc.c (combine_regs): Fix comment typo.

2987 2988 2989 2990 2991 2992 2993 2994
2003-08-06  Zack Weinberg  <zack@codesourcery.com>

	* c-decl.c (builtin_decls): Replace with first_builtin_decl
	and last_builtin_decl.
	(c_init_decl_processing): Initialize both.
	(c_reset_state): Iterate from first_builtin_decl to
	last_builtin_decl inclusive to reintroduce builtins.

2995 2996
2003-08-06  David Mosberger  <davidm@hpl.hp.com>

2997 2998 2999 3000 3001 3002 3003 3004 3005 3006 3007 3008 3009 3010 3011 3012 3013 3014 3015 3016 3017 3018 3019 3020
	* doc/extend.texi (Function Attributes): Document the IA-64 version
	of the "model" attribute.

	* config/ia64/ia64.h (SYMBOL_FLAG_SMALL_ADDR): New macro.
	(SYMBOL_REF_SMALL_ADDR_P): Ditto.
	(PREDICATE_CODES): Mention "small_addr_symbolic_operand".

	* config/ia64/ia64.c (ia64_handle_model_attribute): New function.
	(ia64_encode_section_info): Likewise.
	(ia64_attribute_table): Add "model" attribute.
	(TARGET_ENCODE_SECTION_INFO): Define.
	(small_addr_symbolic_operand): New function.
	(got_symbolic_operand): Return 0 for a symbolref to an object
	in the small address area.
	(enum ia64_addr_area): New type.
	(small_ident1): New variable.
	(small_ident2): Likewise.
	(init_idents): New function.
	(ia64_get_addr_area): Likewise.
	(ia64_encode_addr_area): Likewise.
	(ia64_encode_section_info): Likewise.
	(ia64_expand_load_address): For symbolic references to objects in
	the small-address-area, load the address via gen_rtx_SET() (which,
	eventually, will expand into "addl").
3021

3022 3023 3024
2003-08-06  Per Bothner  <pbothner@apple.com>

	* line-map.h (fileline):  New typedef.
3025
	(struct line_map, linemap_add, linemap_lookup):  Use it.
3026 3027 3028
	* input.h (struct location_s):  Comment notes that long-term we want
	to replace it by fileline.

3029 3030 3031 3032 3033 3034 3035 3036 3037 3038 3039 3040 3041 3042 3043 3044 3045 3046 3047 3048 3049
2003-08-06  J"orn Rennecke <joern.rennecke@superh.com>

	Fix SHcompact exception handling:
	* sh.c (sh_get_pr_initial_val): If PR is or miight be clobbered
	by the prologue, return a MEM with return_address_pointer_rtx
	as address.
	* sh.h (HARD_REGNO_MODE_OK): PR is OK for SImode.
	(RETURN_ADDR_OFFSET): Don't define.
	(SH_DBX_REGISTER_NUMBER): Use SHmedia numbers for SHmedia
	registers that are visible in compact mode.  Show that SHmedia
	registers still exist in compact mode, even if there are not
	readily accessible.
	(ASM_PREFERRED_EH_DATA_FORMAT): Supply DW_EH_PE_indirect
	if GLOBAL.  Use DW_EH_PE_textrel (nominally) for CODE,
	and DW_EH_PE_pcrel for pic data.
	(ASM_MAYBE_OUTPUT_ENCODED_ADDR_RTX): If DW_EH_PE_textrel,
	set SYMBOL_FLAG_FUNCTION in symbol, and actually use
	DW_EH_PE_pcrel / DW_EH_PE_absptr encoding.
	(ALLOCATE_INITIAL_VALUE): Put PR on stack if prologue clobbers it.
	* sh.md (movsi_media-1): New splitter.

3050 3051 3052 3053 3054 3055
2003-08-06  Graeme Peterson <gp@qnx.com>

	* config/i386/nto.h: New.
	* config/i386/t-nto: New.
	* config.gcc (i[34567]86-*-nto-qnx*): New.

3056 3057 3058 3059
2003-08-06  Phil Edwards  <pme@gcc.gnu.org>

	* doc/install.texi (*-*-solaris2*):  Refine configure instructions.

3060 3061 3062 3063 3064
2003-08-06  Alan Modra  <amodra@bigpond.net.au>

	* calls.c (load_register_parameters): Arrange for call_fusage to
	report the whole register as used when shifting to the msb.

3065 3066 3067 3068 3069
2003-08-05  Roger Sayle  <roger@eyesopen.com>

	* builtins.c (expand_builtin): When not optimizing, call the library
	function for all builtins that have library functions (except alloca).

3070 3071 3072 3073 3074 3075 3076 3077 3078 3079 3080 3081 3082 3083 3084 3085 3086 3087 3088 3089 3090 3091 3092 3093 3094
2003-08-05  Alexandre Oliva  <aoliva@redhat.com>

	* c.opt: Introduce -fworking-directory.
	* doc/cpp.texi, doc/invoke.texi, doc/cppopts.texi: Document it.
	* c-common.h (flag_working_directory): Declare.
	* c-common.c (flag_working_directory): Define.
	* c-opts.c (c_common_handle_options): Set it.
	(sanitize_cpp_opts): Set...
	* cpplib.h (struct cpp_options): ... working_directory option.
	(struct cpp_callbacks): Add dir_change.
	* cppinit.c (read_original_filename): Call...
	(read_original_directory): New.  Look for # 1 "directory//"
	and process it.
	(cpp_read_main_file): Call dir_change callback if working_directory
	option is set.
	* gcc.c (cpp_unique_options): Pass -g*.
	* c-lex.c (cb_dir_change): New.
	(init_c_lex): Set dir_change callback.
	* toplev.c (src_pwd): New static variable.
	(set_src_pwd, get_src_pwd): New functions.
	* toplev.h (get_src_pwd, set_src_pwd): Declare.
	* dbxout.c (dbxout_init): Call get_src_pwd() instead of getpwd().
	* dwarf2out.c (gen_compile_unit_die): Likewise.
	* dwarfout.c (output_compile_unit_die, dwarfout_init): Likewise.

3095 3096 3097 3098 3099 3100 3101 3102 3103 3104 3105 3106 3107 3108 3109 3110 3111 3112 3113 3114 3115 3116 3117 3118 3119 3120 3121 3122 3123 3124 3125 3126 3127 3128 3129
2003-08-05  Gabriel Dos Reis  <gdr@integrable-solutions.net>

	* pretty-print.h (pp_set_line_maximum_length): Make macro.
	(pp_set_prefix): Likewise.
	(pp_destroy_prefix): Likewise.
	(pp_remaining_character_count_for_line): Likewise.
	(pp_clear_output_area): Likewise.
	(pp_formatted_text): Likewise.
	(pp_last_position_in_text): Likewise.
	(pp_emit_prefix): Likewise.
	(pp_append_text): Likewise.
	(pp_flush): Likewise.
	(pp_format_text): Likewise.
	(pp_format_verbatim): Likewise.
	(pp_tree_identifier): Tidy.
	* pretty-print.c (pp_base_format_text): Rename from pp_format_text.
	(pp_base_format_verbatim): Rename from pp_format_verbatim.
	(pp_base_flush): Rename from pp_flush.
	(pp_base_set_line_maximum_length): Rename from
	pp_set_line_maximum_length.
	(pp_base_clear_output_area): Rename from pp_clear_output_area.
	(pp_base_set_prefix): Rename from pp_set_prefix.
	(pp_base_destroy_prefix): Rename from pp_destroy_prefix.
	(pp_base_emit_prefix): Rename from pp_emit_prefix.
	(pp_base_append_text): Rename from pp_append_text.
	(pp_base_formatted_text): Rename from pp_formatted_text.
	(pp_base_last_position_in_text): Rename from pp_last_position_in_text.
	(pp_base_remaining_character_count_for_line): Rename from
	pp_remaining_character_count_for_line.
	* diagnostic.h (diagnostic_format_decoder): Tidy.
	(diagnostic_flush_buffer): Likewise.
	* c-pretty-print.h: (pp_c_string_literal): Declare.
	(pp_c_real_literal): Likewise.
	(pp_c_integer_literal): Likewise.
	* c-pretty-print.c (pp_c_char): Use pp_string in lieu of
3130
	pp_identifier.
3131 3132 3133 3134 3135 3136 3137 3138 3139
	(pp_c_character_literal): Tidy.
	(pp_c_string_literal): Make public.
	(pp_c_bool_literal): Likewise.
	(pp_c_integer_literal): Likewise.
	(pp_c_real_literal): Likewise.

	* Makefile.in (C_PRETTY_PRINT_H): New variable.
	(c-pretty-print.o): Update dependence.

3140 3141 3142 3143 3144 3145
2003-08-05  Chris Demetriou  <cgd@broadcom.com>

	* config/mips/mips.md (fix_truncdfsi2_macro): Properly restore
	".set nomacro" state.
	(fix_truncsfsi2_macro): Likewise.

3146 3147 3148 3149 3150 3151 3152 3153 3154 3155 3156 3157 3158 3159 3160 3161 3162 3163 3164 3165 3166 3167 3168 3169 3170 3171 3172 3173 3174 3175 3176 3177 3178 3179 3180 3181 3182 3183 3184 3185 3186 3187
2003-08-05  Steven Bosscher  <steven@gcc.gnu.org>

	* tree.h (DID_INLINE_FUNC): Remove macro.
	(DECL_DECLARED_INLINE_P): Move from c-tree.h and cp/cp-tree.h,
	add tree check for FUNCTION_DECL.
	(DECL_ESTIMATED_INSNS): Move from c-common.h and java/java-tree.h.
	(struct tree_decl): Rename inlined_function_flag to
	declared_inline_flag.
	* c-common.h (c_lang_decl): Remove.
	(DECL_ESTIMATED_INSNS): Remove.
	* c-tree.h (struct lang_decl): Don't include c_lang_decl.
	(DECL_DECLARED_INLINE_P): Remove.
	* c-decl.c (grokdeclarator): Update comment.  With -finline-functions,
	do not reset DECL_DECLARED_INLINE_P.  Don't use DID_INLINE_FUNC.
	(finish_function): Make uninlinable a bool.  Fixup call to
	tree_inlinable_function_p() and fix some code style issues.
	* cgraph.h (disgread_inline_limits): Fix spelling: `disregard'.
	* cgraph.c (dump_cgraph): Likewise.
	* cgraphunit.c (cgraph_decide_inlining): Likewise
	(cgraph_finalize_compilation_unit): Likewise.
	Also update call to tree_inlinable_function_p().
	(cgraph_default_inline_p): Don't use DID_INLINE_FUNC.  Instead
	look at DECL_DECLARED_INLINE and reverse logic.
	* print-tree.c (print_node): Likewise.
	* toplev.c (rest_of_handle_inlining): Don't use DID_INLINE_FUNC.
	* tree-inline.h (tree_inlinable_function_p): Make a bool.  Update
	prototype.
	* tree-inline.c (inlinable_function_p): Split up in this function to
	check for basic inlining inhibiting conditions, and new
	limits_allow_inlining() function.  Warn if inlining is impossible
	because the inline candidate calls alloca or uses sjlj exceptions.
	(limits_allow_inlining): this new function to check if the inlining
	limits are satisfied.  Throttle from currfn_max_inline_insns, not from
	MAX_INLINE_INSNS_SINGLE.  The latter only makes sense if
	MAX_INLINE_INSNS_AUTO and MAX_INLINE_INSNS_SINGLE are equal.
	Update prototypes.
	(tree_inlinable_function_p): Make a bool.  Update call to
	inlinable_function_p
	(expand_call_inline): Use limits_allow_inlining() when not in
	unit-at-a-time mode to decide on inlining.  Don't use DID_INLINE_FUNC,
	instead see if the function was declared `inline'.

3188 3189 3190 3191
2003-08-05  Josef Zlomek  <zlomekj@suse.cz>

	* gcse.c (try_replace_reg): Fix updating of note.

3192 3193
2003-08-04  Roger Sayle  <roger@eyesopen.com>

3194 3195 3196 3197 3198 3199 3200
	PR middle-end/11771
	* fold-const.c (negate_expr_p <MINUS_EXPR>): Change to match the
	logic in negate_expr, i.e. we don't invert (A-B) for floating
	point types unless flag_unsafe_math_optimizations.

2003-08-04  Roger Sayle  <roger@eyesopen.com>

3201 3202 3203 3204 3205 3206 3207 3208
	* fold-const.c (fold <PLUS_EXPR>): Transform x+x into x*2.0.
	Optimize x*c+x and x+x*c into x*(c+1) and x*c1+x*c2 into x*(c1+c2)
	for floating point expressions with -ffast-math.
	(fold <MULT_EXPR>): Don't transform x*2.0 into x+x.
	* expmed.c (expand_mult): Wrap long line.  Expand x*2.0 as x+x.

2003-08-04  Roger Sayle  <roger@eyesopen.com>

3209 3210 3211 3212 3213 3214 3215 3216 3217 3218 3219 3220 3221 3222 3223 3224 3225 3226 3227 3228 3229 3230 3231 3232 3233 3234
	* c-common.c (flag_noniso_default_format_attributes): Delete.
	(built_in_attribute): Don't define/undefine DEF_FN_ATTR.
	(c_attrs_initialized): Delete.
	(c_common_nodes_and_builtins): Don't test c_attrs_initialized,
	always call c_init_attributes.
	(c_init_attributes): Don't define/undefine DEF_FN_ATTR.  Don't
	set c_attrs_initialized when done.
	(c_common_insert_default_attributes): Delete.
	* c-common.h (flag_noniso_default_format_attributes): Delete.
	(c_coomon_insert_default_attributes): Delete prototype.
	* c-opts.c (set_std_c89, set_std_c99, set_std_cxx98): Dont set
	flag_noniso_default_format_attributes.

	* c-decl.c (c_insert_default_attributes): Delete.
	* c-tree.h (c_insert_default_attributes): Delete prototype.

	* attribs.c (decl_attributes): Don't call insert_default_attributes
	langhook.  Update function description comment.
	* langhooks.h (lang_hooks): Remove insert_default_attributes field.
	* langhooks-def.h (LANG_HOOKS_INSERT_DEFAULT_ATTRIBUTES): Delete.
	* c-lang.c (LANG_HOOKS_INSERT_DEFAULT_ATTRIBUTES): Don't define.
	* system.h: Poison LANG_HOOKS_INSERT_DEFAULT_ATTRIBUTES macro.

	* objc/objc-lang.c (LANG_HOOKS_INSERT_DEFAULT_ATTRIBUTES): Don't
	define.

3235 3236 3237 3238 3239 3240
2003-08-04  Richard Sandiford  <rsandif@redhat.com>

	* config/mips/mips.c (override_options): Disable -G on targets that
	have no .section support.
	(mips_select_section): Use default_select_section for such targets.

3241 3242 3243 3244 3245 3246 3247
2003-08-04  Nathanael Nerode  <neroden@gcc.gnu.org>

	* fixinc/inclhack.def (svr4_undeclared_getrnge): Introduce and enable.
	* fixinc/inclhack.def (static_getrnge): Remove disabled hack.
	* fixinc/fixincl.x: Rebuild.
	* fixinc/tests/base/regexp.h: New test.

3248 3249 3250 3251 3252
2003-08-04  Alexandre Oliva  <aoliva@redhat.com>

	* c-ppoutput.c (cb_line_change): Don't skip line changing while
	parsing macro arguments in the top-level context.

3253 3254 3255 3256 3257
2003-08-04  Neil Booth  <neil@daikokuya.co.uk>

	* config.in: Remove HAVE_LSTAT.
	* configure, configure.in: Don't test for lstat.

3258 3259 3260 3261 3262 3263 3264
2003-08-03  Gabriel Dos Reis  <gdr@integrable-solutions.net>

	* opts.c (decode_options): Do language-specific initialization for
	the global diagnostic context.
	* langhooks-def.h (lhd_initialize_diagnostics): Declare.
	(LANG_HOOKS_INITIALIZE_DIAGNOSTITCS): New macro.
	(LANG_HOOKS_INITIALIZER): Adjust.
3265 3266
	* langhooks.h (struct lang_hooks): Add new field
	initialize_diagnostics.
3267 3268 3269 3270 3271 3272 3273 3274 3275 3276 3277 3278
	* langhooks.c (lhd_initialize_diagnostics): Define.

2003-08-03  Gabriel Dos Reis  <gdr@integrable-solutions.net>

	* pretty-print.h:   Adjust macro definitions.
	* pretty-print.c (pp_newline): Rename to pp_base_newline.
	(pp_character): Rename to pp_base_character.
	(pp_string): Rename to pp_base_string.
	* c-pretty-print.c (pp_buffer): Move to pretty-print.h
	(pp_newline):  Likewise.  Adjust.
	(pp_c_char): Adjust.

3279 3280 3281 3282 3283
2003-08-03  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>

	* builtins.def (BUILT_IN_ABS, BUILT_IN_IMAXABS, BUILT_IN_LABS,
	BUILT_IN_LLABS): Move to miscellaneous section.

3284
2003-08-03  Neil Booth  <neil@daikokuya.co.uk>
3285

Neil Booth committed
3286
	PR preprocessor/11534
3287 3288 3289
	* cppexp.c (parse_defined): Warn only if -pedantic.

2003-08-03  Neil Booth  <neil@daikokuya.co.uk>
3290 3291 3292

	* cppfiles.c (stack_file): Use file path.

3293 3294 3295 3296 3297 3298 3299 3300 3301 3302 3303 3304 3305 3306 3307 3308
2003-08-02  Roger Sayle  <roger@eyesopen.com>

	* builtin-types.def (BT_SSIZE): New primitive type.
	(BT_FN_INT_PTR_CONST_STRING_VALIST_ARG,
	BT_FN_STRING_CONST_STRING_CONST_STRING_INT,
	BT_FN_SIZE_STRING_SIZE_CONST_STRING_CONST_PTR,
	BT_FN_SSIZE_STRING_SIZE_CONST_STRING_VAR): New function types.
	* builtins.def (BUILT_IN_DCGETTEXT, BUILT_IN_DGETTEXT,
	BUILT_IN_FSCANF, BUILT_IN_GETTEXT, BUILT_IN_STRFMON,
	BUILT_IN_STRFTIME, BUILT_IN_VFPRINTF, BUILT_IN_VFSCANF): New builtins.
	* builtin-attrs.def: Remove DEF_FN_ATTR construct and the last
	few functions that define default attributes using it.
	* c-common.c (c_common_insert_default_attributes): Do nothing.

	* doc/extend.texi: Document these "new" builtins.

3309 3310 3311 3312 3313 3314 3315
2003-08-02  Kaz Kojima  <kkojima@gcc.gnu.org>

	* config/sh/linux.h (SUBTARGET_LINK_SPEC): Don't set rpath.
	(LIB_SPEC): Set -lpthread always when -pthread set.  Set -lieee
	when -mieee-fp set and -shared not set.
	(SH_FALLBACK_FRAME_FLOAT_STATE): Don't define for SH5.

3316 3317
2003-08-02  Neil Booth  <neil@daikokuya.co.uk>

3318 3319 3320 3321 3322 3323 3324 3325 3326 3327 3328 3329 3330
	* cppfiles.c (struct _cpp_file): Rename once_only_next to
	next_file.  Remove import and pragma_once, add once_only.
	(find_file): Add new file structures to the all_files list.
	(should_stack_file): Mark #import-ed files once-only, and
	don't stack them if the file has already been stacked.
	(_cp_mark_file_once_only): Simplify.
	* cpphash.h (struct cpp_reader): Rename once_only_files
	to all_files.  Rename saw_pragma_once to seen_once_only.
	(_cpp_mark_file_once_only): Update prototype.
	* cpplib.c (do_pragma_once): Update.

2003-08-02  Neil Booth  <neil@daikokuya.co.uk>

3331 3332 3333 3334 3335 3336 3337 3338 3339 3340 3341
	* cppfiles.c (ENOTDIR): Remove.
	(open_file_in_dir): Rename find_file_in_dir.  Handle errors
	other than ENOENT here.
	(once_only_file_p): Rename should_stack_file.
	(find_file, open_file_failed, read_file_guts): Report errors
	with full path name.
	(read_file): Move pch handling to should_stack_file.
	(should_stack_file): Handle PCH and once-only issues, and
	reading the file.
	(stack_file): Don't do file reads.

3342 3343 3344 3345 3346 3347
2003-08-02  Zdenek Dvorak  <rakdver@atrey.karlin.mff.cuni.cz>

	* libgcov.c (gcov_exit): Cleanup and fix.
	* profile.c (compute_value_histograms): Don't try to read profiles
	that are not present.

3348 3349
2003-08-02  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>

3350 3351
	* builtins.def: Categorize.

3352 3353 3354 3355
	* builtins.def (BUILT_IN_CABS, BUILT_IN_CABSF, BUILT_IN_CABSL):
	Mind fp rounding.
	(BUILT_IN_FFSL): Use DEF_EXT_LIB_BUILTIN.

3356 3357 3358 3359
2003-08-02  Andreas Tobler  <a.tobler@schweiz.ch>

	* config.gcc: Enable posix threads by default on darwin.

3360 3361 3362 3363 3364
2003-08-01  Jakub Jelinek  <jakub@redhat.com>

	* cfgcleanup.c (outgoing_edges_match): Check REG_EH_REGION notes
	even if nehedges1 is 0.

3365 3366 3367 3368 3369 3370 3371 3372 3373 3374 3375
2003-08-01  Nathanael Nerode  <neroden@gcc.gnu.org>

	* fixinc/fixfixes.c, fixinc/fixlib.c, fixinc/fixlib.h,
	fixinc/fixtests.c, fixinc/procopen.c, fixinc/server.c,
	fixinc/server.h, fixinc/fixincl.c: ANSIfy function prototypes
	and defintions.

	* fixinc/inclhack.def (broken_cabs): Make matching more generous.
	* fixinc/fixincl.x: Regenerate.
	* fixinc/tests/base/math.h: Regenerate to match test_text change.

3376 3377 3378 3379
2003-08-01  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>

	* ggc-common.c (gt_pch_restore): Case MAP_FAILED to void *.

3380 3381 3382 3383 3384
2003-08-01  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>

	* except.c (sjlj_emit_dispatch_table): Use ptr_mode, not Pmode,
	for accesses to exc_ptr.

3385 3386 3387 3388 3389 3390 3391 3392 3393 3394 3395 3396 3397 3398 3399 3400
2003-08-01  Geoffrey Keating  <geoffk@apple.com>

	* doc/sourcebuild.texi (Front End Directory): Don't make references
	to libsubdir, it's not part of the interface to frontends.
	* doc/install.texi (Configuration): Help users read faster by saying
	that GCC's configure options are the standard autoconf ones.
	Mention --libdir.  Update the default rules for finding the
	assembler.  Don't use libsubdir since we haven't said what it means.
	(Specific): In the Solaris 7 notes, update the place to put the
	assembler.
	* doc/invoke.texi: Update lib/gcc-lib to lib/gcc.
	* doc/cpp.texi (Search Path): Actually, the search path
	depends on libdir, which can relocate with cpp.
	* doc/tm.texi (Driver): Don't document STANDARD_EXEC_PREFIX, it's
	now a private interface between the Makefile and the driver.

3401 3402 3403 3404 3405 3406
2003-08-01  Richard Henderson  <rth@redhat.com>

	* system.h: Poison ASM_SIMPLIFY_DWARF_ADDR.

	* varasm.c (lookup_constant_def): New function.
	* rtl.h (lookup_constant_def): Declare it.
3407
	* dwarf2out.c (loc_descriptor_from_tree): Use it.
3408 3409
	Use targetm.delegitimize_address, not ASM_SIMPLIFY_DWARF_ADDR.

3410 3411 3412 3413 3414 3415 3416 3417 3418 3419 3420 3421 3422 3423 3424 3425 3426 3427 3428 3429 3430 3431 3432 3433 3434 3435 3436 3437 3438 3439 3440 3441 3442 3443 3444
2003-08-01  Zack Weinberg  <zack@codesourcery.com>

	* c-decl.c (gettags, pushdecl_function_level): Delete.
	(last_function_parm_vars): Rename last_function_parm_others.
	(current_function_parm_vars): Rename current_function_parm_others.
	(struct c_scope): Rewrite comment explaining this data structure.
	Add names_last, blocks_last, parms_last fields.  Rename
	incomplete_list to incomplete.
	(SCOPE_LIST_APPEND, SCOPE_LIST_CONCAT): New macros.
	(poplevel): Ignore second argument.  No need to nreverse
	anything.  Restructure such that each list is processed
	exactly once.  Use 'const location_t *locus' syntactic sugar
	variable where useful.  Issue unused variable warnings
	ourselves, do not rely on function.c.
	(insert_block, pushdecl, bind_label): Use SCOPE_LIST_APPEND.
	(pushdecl_top_level): Likewise.  Don't call duplicate_decls.
	(implicitly_declare): decl cannot be error_mark_node.
	(undeclared_variable): Manipulate scope structure directly.
	(c_make_fname_decl): Likewise.
	(getdecls, c_init_decl_processing): Fix comment.
	(mark_forward_parm_decls): Use SCOPE_LIST_CONCAT.  No need
	for 'last' variable.
	(grokparms): No need to nreverse parms list.
	(store_parm_decls_newstyle): Set up the parms_last and
	names_last fields of the new scope too.
	(store_parm_decls_oldstyle): Can assume DECL_WEAK is not set
	on parms to begin with; check this under ENABLE_CHECKING.  Set
	up parms_last.
	(check_for_loop_decls): Refer directly to current_scope->tags.
	Use consistent quote style in diagnostics.
	(c_write_global_declarations): The names list is not backward.

	* c-common.h: Don't prototype gettags.
	* c-parse.in: Call poplevel with second argument 0 always.

3445 3446
2003-08-01  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>

3447 3448 3449 3450
	* builtins.def: Resort builtins.

2003-08-01  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>

3451 3452 3453 3454 3455 3456 3457 3458 3459
	* builtins.def (DEF_GCC_BUILTIN, DEF_LIB_BUILTIN,
	DEF_EXT_LIB_BUILTIN, DEF_C99_BUILTIN, DEF_C99_C90RES_BUILTIN):
	Prepend "__builtin_" onto NAME with string concatenation.  Remove
	explicit "__builtin_" from each macro call.

	Reformat entire file.

2003-08-01  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>

3460 3461 3462
	* builtins.def (ATTR_MATHFN_ERRNO, ATTR_MATHFN_FPROUNDING,
	ATTR_MATHFN_FPROUNDING_ERRNO): New macros.  Use throughout.

3463
2003-08-01  Andreas Krebbel  <krebbel1@de.ibm.com>
3464 3465 3466 3467 3468 3469 3470 3471 3472

	* config/s390/s390.c (s390_select_ccmode): Do not attempt to use CCL,
	CCL1, or CCL2 modes with floating point operations.

	* config/s390/s390.md ("*addsf3_cc", "*addsf3_cconly", "*adddf3_cc",
	"*adddf3_cconly", "*subsf3_cc", "*subsf3_cconly", "*subdf3_cc",
	"*subdf3_cconly"): New insns.
	("*negabssi2", "*negabsdi2", "*negabsdf2", "*negabssf2"): Likewise.

3473 3474 3475 3476 3477 3478 3479 3480 3481 3482 3483 3484 3485 3486 3487 3488 3489 3490
2003-08-01  Neil Booth  <neil@daikokuya.co.uk>

	* Makefile.in: Refine dependencies.
	* c-opts.c (c_common_handle_option): Do nothing for -Wimport.
	* c.opt: Update help for -Wimport.
	* cppfiles.c: Include hashtab.h.  Update comments.
	(stack_file): Read the file before updating dependencies.
	(once_only_file_p): Be smarter about marking once-only files.
	(_cpp_mark_file_once_only): Correct the check for existence on
	the list.
	(open_file_failed): Use name not path, which is NULL.
	* cpphash.h: Don't include hashtab.h.
	(struct _cpp_file): Remove.
	(struct cpp_reader): Update.
	* cppinit.c (cpp_create_reader): Don't initialize warn_import.
	* cpplib.h (struct cpp_options): Remove warn_import.
	(cpp_simplify_path): Remove.

3491 3492 3493 3494 3495
2003-08-01  Nathan Sidwell  <nathan@codesourcery.com>

	PR c++/11295
	* doc/extend.texi (Statement Expressions): Document C++ semantics.

3496 3497 3498 3499
2003-07-31  SUGIOKA Toshinobu  <sugioka@itonet.co.jp>

	* config.gcc (sh-*-linux*): Do not override sh/t-linux with sh/t-le.

3500 3501 3502 3503 3504 3505
2003-07-31  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>

	* builtin-types.def: Use `LONGDOUBLE' instead of `LONG_DOUBLE'
	throughout.
	* builtins.def: Likewise.

3506 3507 3508 3509 3510 3511 3512 3513 3514 3515
2003-07-31  Jason Merrill  <jason@redhat.com>

	* Makefile.in (bubblestrap): Don't require a previous full
	bootstrap.

	* expr.c (mostly_zeros_p): No longer static.
	* tree.h: Declare it.
	* stmt.c (resolve_asm_operand_names): Don't copy the pattern
	unless we need to do substitutions.

3516 3517 3518 3519 3520 3521 3522 3523 3524 3525 3526 3527 3528
2003-07-31  Roger Sayle  <roger@eyesopen.com>

	* fold-const.c (fold <MULT_EXPR>): Optimize both x*pow(x,c) and
	pow(x,c)*x as pow(x,c+1) for constant values c.  Optimize x*x
	as pow(x,2.0) when the latter will be expanded back into x*x.
	(fold <RDIV_EXPR>): Optimize pow(x,c)/x as pow(x,c-1).
	* builtins.c (expand_builtin_pow): Ignore flag_errno_math as
	pow can never set errno when used with an integer exponent.
	Always use expand_powi when exponent is -1, 0, 1 or 2.
	(fold_builtin): Don't rewrite pow(x,2.0) as x*x nor pow(x,-2.0)
	as 1.0/(x*x).  This avoids unbounded recursion as we now prefer
	the pow forms of these expressions.

3529 3530 3531 3532 3533 3534 3535 3536 3537 3538 3539 3540 3541 3542 3543 3544 3545 3546 3547 3548 3549 3550 3551 3552 3553 3554 3555 3556
2003-07-31  Geoffrey Keating  <geoffk@apple.com>

	* Makefile.in (libexecdir): New.
	(libsubdir): Use gcc instead of gcc-lib.
	(libexecsubdir): New.
	(ORDINARY_FLAGS_TO_PASS): Add libexecsubdir.
	(DRIVER_DEFINES): Add STANDARD_LIBEXEC_PREFIX, use gcc instead of
	gcc-lib.
	(installdirs): Make libexecsubdir.
	(install-common): Put executables in libexecsubdir.
	(itoolsdir): Use libexecsubdir.
	(itoolsdatadir): New.
	(install-mkheaders): Separate data files and executables.
	(install-collect2): Put executables in libexecsubdir.
	(uninstall): Remove libexecsubdir.
	* mkheaders.in: Update for new arrangement of files.
	(libexecdir): New.
	(libexecsubdir): New.
	(itoolsdir): Use libexecsubdir.
	(itoolsdatadir): New.
	* gcc.c (gcc_libexec_prefix): New.
	(STANDARD_LIBEXEC_PREFIX): Use gcc instead of gcc-lib.
	(standard_exec_prefix_1): Use libexec.
	(standard_exec_prefix_2): New.
	(standard_libexec_prefix): New.
	(process_command): Update for new arrangement of files.  Compute
	gcc_libexec_prefix.  Update for change from gcc-lib to gcc.

3557 3558 3559 3560 3561 3562
2003-07-31  Nathanael Nerode  <neroden@gcc.gnu.org>

	* inclhack.def (stdio_va_list): Avoid bogus replacement which
	triggers on Interix.
	* fixincl.x: Regenerate.

3563 3564 3565 3566 3567
2003-07-31  Jakub Jelinek  <jakub@redhat.com>

	* config/i386/i386.c (legitimate_pic_address_disp_p): Disallow TLS
	SYMBOL_REFs not inside UNSPEC even in PLUS rtx.

3568 3569 3570 3571
2003-07-31  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>

	* dwarf2out.c (loc_descriptor_from_tree, case CONSTRUCTOR): New case.

3572 3573 3574 3575 3576 3577 3578 3579 3580 3581 3582 3583 3584 3585 3586 3587 3588 3589 3590
2003-07-31  Per Bothner  <pbothner@apple.com>

	* opts.c (in_fnames, num_in_fnames):  Moved here from c-opts.
	(add_input_filename):  New function.
	(handle_options):  Call add_input_filename directly instead of
	with a lang hook.
	* opts.h (in_fnames, num_in_fnames):  Moved here.
	(add_input_filename):  Declare.
	* c-decl.c:  Need to #include opts.h.
	* Makefile.in (c-decl.o):  Also depends on opts.h.
	* c-opts.c (in_fnames, num_in_fnames):  Moved to opts.c.
	(c_common_handle_filename):  Replaced by add_input_filename.
	* c-common.h (in_fnames, num_in_fnames, c_common_handle_filename):
	Remove.
	* langhooks.h (struct lang_hooks):  Remove handle_filename hook.
	* langhooks-def.h (LANG_HOOKS_HANDLE_FILENAME):  Remove macro.
	(LANG_HOOKS_INITIALIZER):  Remove use of LANG_HOOKS_HANDLE_FILENAME.
	* c-lang.c (LANG_HOOKS_HANDLE_FILENAME):  Remove macro.

3591 3592
2003-07-31  Zdenek Dvorak  <rakdver@atrey.karlin.mff.cuni.cz>

3593 3594 3595 3596 3597
	* combine.c (try_combine): Set JUMP_LABEL for newly created
	unconditional jump.

2003-07-31  Zdenek Dvorak  <rakdver@atrey.karlin.mff.cuni.cz>

3598 3599
	* fold-const.c (fold): Fold some comparisons of bit operations.

3600 3601 3602 3603 3604
Thu Jul 31 19:49:53 CEST 2003  Jan Hubicka  <jh@suse.cz>

	* cgraph.c (create_edge): Fix typo.
	* i386.c (pic_symbolic_operand): Reorder tests.

3605 3606 3607 3608 3609 3610
2003-07-31  Nathan Sidwell  <nathan@codesourcery.com>

	* doc/gcov.texi (Invoking Gcov): Describe output name mangling
	more fully.
	(Gcov Data Files): Update.

3611 3612
2003-07-31  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>

3613 3614 3615 3616 3617 3618 3619 3620 3621 3622 3623 3624 3625 3626 3627 3628 3629 3630 3631 3632 3633
	* config.gcc (alpha*-dec-osf[45]*): Enable POSIX thread support by
	default.

	* gthr-posix.c: New file.
	* gthr-posix.h: Define _REENTRANT if missing.
	Make _LIBOBJC #pragma weak visible with _LIBOBJC_WEAK.

	* config/alpha/t-osf4 (SHLIB_LINK): Hide dummy functions provided
	by gthr-posix.o.
	* config/alpha/t-osf-pthread: New file.

	* fixinc/inclhack.def (alpha_pthread): New fix.
	* fixinc/fixincl.x: Regenerate.
	* fixinc/tests/base/pthread.h [ALPHA_PTHREAD_CHECK]: New testcase.

	* doc/install.texi (alpha*-dec-osf*): Remove --enable-threads
	warning.
	Fixes PR bootstrap/9330.

2003-07-31  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>

3634 3635 3636 3637 3638
	* configure.in (gcc_cv_ld_hidden): Also disable on mips-sgi-irix5*
	without GNU ld.
	Update comment.
	* configure: Regenerate.

3639 3640
2003-07-31  Vladimir Makarov  <vmakarov@redhat.com>

3641 3642
	* sched-deps.c (sched_analyze_2): Prevent interblock move of CC0
	setter.
3643

3644 3645 3646 3647
2003-07-30  Roger Sayle  <roger@eyesopen.com>

	* builtins.def: Alphabetize.

3648 3649
2003-07-30  Matt Kraai  <kraai@alumni.cmu.edu>

3650 3651 3652 3653 3654 3655 3656 3657 3658
	* doc/c-tree.texi: Normalize spellings of "lowercase" and
	"uppercase".
	* doc/cpp.texi: Likewise.
	* doc/md.texi: Likewise.
	* doc/rtl.texi: Likewise.
	* doc/tm.texi: Likewise.

2003-07-30  Matt Kraai  <kraai@alumni.cmu.edu>

3659 3660 3661 3662
	* objc/Make-lang.in (objc.stage1, objc.stage2, objc.stage3)
	(objc.stage4, objc.stageprofile, objc.stagefeedback): Remove moves
	of cc1obj.

3663 3664 3665 3666 3667
2003-07-30  Chris Demetriou  <cgd@broadcom.com>

	* config/mips/mips.h (SIZE_TYPE, PTRDIFF_TYPE): Undef these
	macros before defining them.

3668 3669
2003-07-31  Ulrich Weigand  <uweigand@de.ibm.com>

3670
	* config/s390/s390.md (UNSPEC_ROUND, UNSPEC_SETHIGH,
3671 3672 3673 3674 3675 3676 3677 3678 3679
	UNSPECV_BLOCKAGE): New constants.
	("*sethighqisi", "*sethighhisi", "*sethiqidi_64", "*sethiqidi_31",
	"*extractqi", "*extracthi", "*extendqidi2" splitter, "*extendqisi2"
	splitter, "fix_truncdfdi2_ieee", "fix_truncdfsi2_ieee",
	"fix_truncsfdi2", "fix_truncsfsi2", "blockage"): Use them.

	(all insns and expanders): Write output control string as brace block
	where appropriate.  Remove \-escapes for doublequote characters.

3680 3681 3682 3683
Thu Jul 31 01:04:19 CEST 2003  Jan Hubicka  <jh@suse.cz>

	* gcse.c (insert_store): Fix typo in previous patch.

3684 3685 3686 3687
2003-07-30  Neil Booth  <neil@daikokuya.co.uk>

	* cppfiles.c (stack_file, open_file_failed): Use path for deps.

3688 3689 3690 3691
2003-07-30  Andi Kleen  <ak@muc.de>

	* loop.c (check_dbra_loop): Allow LTU in the loop condition.

3692 3693 3694 3695 3696 3697 3698 3699 3700 3701 3702 3703 3704 3705
2003-07-30  Zdenek Dvorak  <rakdver@atrey.karlin.mff.cuni.cz>

	* combine.c (distribute_notes): Cancel REG_VALUE_PROFILE notes.
	* gcov-io.h (GCOV_FIRST_VALUE_COUNTER, GCOV_LAST_VALUE_COUNTER,
	GCOV_N_VALUE_COUNTERS): New.
	* profile.c (compute_value_histograms): New static function.
	(branch_prob): Read back the value histograms.
	* rtl.c (reg_note_name): Add name for REG_VALUE_PROFILE note.
	* rtl.h (enum reg_note): Add REG_VALUE_PROFILE note.
	* value-prof.c: Add comment on reading the profile.
	* value-prof.h (COUNTER_FOR_HIST_TYPE, HIST_TYPE_FOR_COUNTER): New.
	* doc/invoke.texi (-fprofile-values): Document behavior with
	-fbranch-probabilities.

3706 3707 3708 3709
2003-07-30  David Edelsohn  <edelsohn@gnu.org>

	* longlong.h (PowerPC umul_ppmm): Do not test __vxworks__.

3710 3711 3712 3713 3714
2003-07-30  Ulrich Weigand  <uweigand@de.ibm.com>

	* config/s390/s390.h (EH_RETURN_HANDLER_RTX): Compute offset
	symbolically.

3715 3716 3717 3718 3719 3720 3721 3722 3723 3724 3725 3726 3727 3728 3729 3730 3731 3732 3733
Wed Jul 30 19:12:10 CEST 2003  Jan Hubicka  <jh@suse.cz>

	* gcse.c (insert_store): Ignore fake edges.

	* c-common.c (flag_vtable_gc): Kill.
	* c-common.g (flag_vtable_gc): Kill.
	* c-opts (c_common_handle_option): Kill.
	* c.opt (fvtable-gc): Kill.
	* final.c (final_scan_insn): Do not call assemble_vtable_entry.
	* output.h (assemble_vtable_entry, assemble_vtable_inherit): Kill.
	* varasm.c (assemble_vtable_entry, assemble_vtable_inherit): Kill.

	* invoke.texi (-ftable-gc): Kill documentation.

	* tree-inline.c (inlinable_function_p): Don't set DECL_UNINLINABLE
	just because function body is missing.

	* i386.c (pic_symbolic_operand): Properly detect RIP relative unspecs.

3734 3735 3736 3737
2003-07-30  Ranjit Mathew  <rmathew@hotmail.com>

	* unwind-sjlj.c: Fix typo in file description.

3738 3739 3740 3741 3742
2003-07-30  Alan Modra  <amodra@bigpond.net.au>

	* calls.c (load_register_parameters): When shifting reg sized values
	to the msb, move the value to a reg first.

3743 3744 3745 3746 3747 3748 3749
2003-07-29  Geoffrey Keating  <geoffk@apple.com>

	* cppfiles.c (stack_file): Leave filename as "" rather than "<stdin>".
	* line-map.h (linemap_add): Update comments.
	* line-map.c (linemap_add): Update comments, interpret zero-length
	filename as "<stdin>".

3750 3751 3752 3753
2003-07-29  Nathanael Nerode  <neroden@gcc.gnu.org>

	* mkinstalldirs: Import autoconf 2.57 / automake 1.7 version.

3754 3755 3756 3757 3758 3759 3760 3761 3762 3763 3764 3765 3766 3767 3768 3769 3770 3771 3772 3773 3774 3775 3776 3777 3778 3779 3780 3781 3782 3783 3784 3785 3786 3787 3788 3789 3790 3791 3792 3793
2003-07-29  Zack Weinberg  <zack@codesourcery.com>

	* c-decl.c (last_function_parm_vars, current_function_parm_vars):
	New static variables.
	(struct c_scope): Add parms and warned_forward_parm_decls
	fields; remove parm_order.
	(storedecls, storetags): Delete.
	(poplevel): Also clear bindings on the parms chain.
	(pushdecl): Handle forward declarations of parameters, and
	chain PARM_DECLs on the parms list, not the names list.
	(lookup_name_current_level): Check for PARM_DECLs on the parms
	list too.
	(push_parm_decl): Don't update parm_order.
	(clear_parm_order): Rename mark_forward_parm_decls.  Issue the
	warning, only once per parameter list, and set TREE_ASM_WRITTEN
	on the decls here.  Then move the forward decls to the names list.
	(grokparms): Set last_function_parm_vars.
	(get_parm_info): Don't use gettags or getdecls.  No need to
	extract non-parms from the parms list, or reorganize the parms
	list.  Feed nonparms back in the TREE_TYPE of the list node
	returned.  Issue only one error per parameter list for "void"
	appearing more than once in said parameter list.  Collapse
	parmlist_tags_warning into this function to avoid double scan
	of tags list.
	(start_function): Set current_function_parm_vars.
	(store_parm_decls_newstyle): Bypass pushdecl, manipulate scope
	directly.  Get non-parms from current_function_parm_vars; no
	need to extract them from the parms chain.  Properly bind tags
	in the new scope.
	(store_parm_decls_oldstyle): No need to extract non-parameters
	from the parms chain, nor to store them back afterward.  Move
	declaration to top of function, restructure code reordering
	DECL_ARGUMENTS.
	(store_parm_decls): No need to save and restore warn_shadow.
	* c-parse.in: Don't call parmlist_tags_warning nor
	clear_parm_order.  Call mark_forward_parm_decls when forward
	parm decls are encountered.
	* c-tree.h: Prototype mark_forward_parm_decls; not
	clear_parm_order or parmlist_tags_warning.

3794 3795 3796 3797 3798 3799 3800 3801 3802 3803 3804 3805 3806 3807 3808 3809 3810 3811 3812 3813 3814 3815 3816 3817 3818 3819 3820 3821 3822 3823 3824 3825 3826 3827
2003-07-29  Geoffrey Keating  <geoffk@apple.com>

	* c-common.c (allow_pch): Remove.
	* c-common.h (allow_pch): Remove.
	(c_common_no_more_pch): Declare.
	* c-lex.c (c_lex): Call c_common_no_more_pch when appropriate.
	* c-pch.c: Include hosthooks.h.
	(c_common_valid_pch): Don't check allow_pch.
	(c_common_read_pch): Clear valid_pch to prevent reading PCH files.
	(c_common_no_more_pch): New.
	* ggc-common.c: Include hosthooks.h.
	(gt_pch_save): Call gt_pch_get_address.
	(gt_pch_restore): Call gt_pch_use_address.
	* hooks.c (hook_voidp_size_t_null): New.
	(hook_bool_voidp_size_t_false): New.
	* hooks.h (hook_voidp_size_t_null): New.
	(hook_bool_voidp_size_t_false): New.
	* hosthooks-def.h (HOST_HOOKS_GT_PCH_GET_ADDRESS): New.
	(HOST_HOOKS_GT_PCH_USE_ADDRESS): New.
	(HOST_HOOKS_INITIALIZER): Add HOST_HOOKS_GT_PCH_GET_ADDRESS,
	HOST_HOOKS_GT_PCH_USE_ADDRESS.
	* hosthooks.h (struct host_hooks): Add gt_pch_get_address,
	gt_pch_use_address.
	* doc/hostconfig.texi (Host Common): Document
	HOST_HOOKS_GT_PCH_GET_ADDRESS, HOST_HOOKS_GT_PCH_USE_ADDRESS.
	* Makefile.in (c-pch.o): Depend on hosthooks.h.
	(ggc-common.o): Likewise.

	* config/rs6000/host-darwin.c (HOST_HOOKS_GT_PCH_GET_ADDRESS): Define.
	(HOST_HOOKS_GT_PCH_USE_ADDRESS): Define.
	(pch_address_space): New.
	(darwin_rs6000_gt_pch_get_address): New.
	(darwin_rs6000_gt_pch_use_address): New.

3828 3829
2003-07-29  Neil Booth  <neil@daikokuya.co.uk>

Neil Booth committed
3830 3831
	PR preprocessor/11569
	PR preprocessor/11649
3832 3833 3834 3835 3836 3837 3838 3839 3840 3841 3842 3843 3844 3845 3846 3847 3848 3849 3850 3851 3852 3853 3854 3855 3856 3857 3858 3859 3860 3861 3862 3863
	* Makefile.in (LIBCPP_DEPS): Add HASHTAB_H.
	* cppfiles.c: Completely rewritten.
	* c-incpath.c (free_path, remove_duplicates, heads, tails, add_path):
	struct cpp_path is now struct cpp_dir.
	(remove_duplicates): Don't simplify path names.
	* c-opts.c (c_common_parse_file): cpp_read_next_file renamed
	cpp_stack_file.
	* cpphash.h: Include hashtab.h.
	(_cpp_file): Declare.
	(struct cpp_buffer): struct include_file is now struct _cpp_file,
	and struct cpp_path is now struct cpp_dir.  Rename members.
	(struct cpp_reader): Similarly.  New members once_only_files,
	file_hash, file_hash_entries, quote_ignores_source_dir,
	no_search_path, saw_pragma_once.  Remove all_include_files and
	max_include_len.  Make some members bool.
	(_cpp_mark_only_only): Renamed from _cpp_never_reread.
	(_cpp_stack_file): Renamed from _cpp_read_file.
	(_cpp_stack_include): Renamed from _cpp_execute_include.
	(_cpp_init_files): Renamed from _cpp_init_includes.
	(_cpp_cleanup_files): Renamed from _cpp_cleanup_includes.
	* cppinit.c (cpp_create_reader): Initialize no_search_path.  Update.
	(cpp_read_next_file): Rename and move to cppfiles.c.
	(cpp_read_main_file): Update.
	* cpplib.c (run_directive): Update for renamed members.
	(do_include_common, _cpp_pop_buffer): Update.
	(do_import): Undeprecate #import.
	(do_pragma_once): Undeprecate.  Use _cpp_mark_file_once_only.
	* cpplib.h: Remove file_name_map_list.
	(cpp_options): Remove map_list.
	(cpp_dir): Rename from cpp_path.  New datatype for name_map.
	(cpp_set_include_chains, cpp_stack_file, cpp_included): Update.

3864 3865
2003-07-29  Phil Edwards  <pme@gcc.gnu.org>

3866 3867 3868 3869
	* Makefile.in:  Make stamp-objdir safe for parallel builds.

2003-07-29  Phil Edwards  <pme@gcc.gnu.org>

3870 3871 3872
	* Makefile.in (stmp-docobjdir):  New target; ensure $docobjdir exists.
	(info):  Depend on stmp-docobjdir.

Rainer Orth committed
3873 3874 3875 3876
2003-07-29  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>

	* configure: Regenerate.

3877 3878 3879 3880 3881 3882
Tue Jul 29 19:24:49 CEST 2003  Jan Hubicka  <jh@suse.cz>

	PR C++/11131
	* tree-inline.c (expand_call_inline): Always call inlinable_function_p
	in !unit-at-a-time mode.

3883 3884 3885 3886 3887
2003-07-28  Geoffrey Keating  <geoffk@apple.com>

	* c-decl.c (c_expand_body_1): Use C_DECL_FILE_SCOPE to detect
	main function.

3888 3889 3890 3891 3892 3893 3894 3895 3896 3897 3898
2003-07-28  Mark Mitchell  <mark@codesourcery.com>

	PR c++/11667
	* c-common.c (shorten_compare): Take into account differences
	between C and C++ representation for enumeration types.
	* tree.h (set_min_and_max_values_for_integral_type): Declare.
	* stor-layout.c (set_min_and_max_values_for_integral_type): New
	function, broken out from ...
	(fixup_signed_type): ... here and ...
	(fixup_unsigned_type): ... here.

3899 3900 3901 3902 3903 3904 3905 3906 3907 3908 3909 3910 3911 3912 3913
2003-07-28  Zack Weinberg  <zack@codesourcery.com>

	* c-decl.c: Update commentary, adjust blank lines throughout.
	(struct c_scope): Fix indentation.  Reorder members so
	outer-context pointers come first, booleans last.
	(duplicate_decls, define_label): Use a 'locus' variable for
	diagnostic locations in a few more places.
	(warn_if_shadowing): Un-split a conditional that fits on one line.
	(c_init_decl_processing): No need to clear current_scope and
	current_function_scope.
	(start_decl): Merge if/else if statements with same action.
	(push_parm_decl): Rename old_immediate_size_expand to use
	save_foo convention; save/restore around entire function.
	(grokdeclarator): Remove unnecessary braces.

3914 3915 3916 3917 3918 3919 3920 3921 3922 3923 3924 3925 3926 3927 3928 3929 3930
2003-07-28  Hans-Peter Nilsson  <hp@bitrange.com>
	    Michael Culbertson  <Michael.J.Culbertson@wheaton.edu>

	* c-parse.in (lineno_stmt_decl_or_labels_ending_decl): Also warn
	when warn_declaration_after_statement.  Call pedwarn_c90, not
	pedwarn.  Correct message: it's "ISO C90", not "ISO C89".
	* c-common.c (warn_declaration_after_statement): Define.
	* c-common.h (warn_declaration_after_statement): Declare.
	* c.opt (Wdeclaration-after-statement): New.
	* c-errors.c (pedwarn_c90): New function.
	* c-opts.c (c_common_handle_option) <case
	OPT_Wdeclaration_after_statement>: New.
	* c-tree.h (pedwarn_c90): Declare.
	* doc/invoke.texi (Option Summary): Document
	-Wdeclaration-after-statement.
	(Warning Options): Ditto.

3931 3932 3933 3934 3935
Mon Jul 28 20:13:06 CEST 2003  Jan Hubicka  <jh@suse.cz>

	* i386.md (memory attribute) Avoid accessing uninitialized memory
	for ishift1 type instructions.

3936 3937 3938 3939 3940 3941 3942 3943 3944 3945 3946 3947 3948 3949 3950 3951
2003-07-28  Jakub Jelinek  <jakub@redhat.com>

	* configure.in (--enable-checking): Add fold category.
	(ENABLE_FOLD_CHECKING): Define if requested.
	* configure: Rebuilt.
	* config.in: Rebuilt.
	* doc/install.texi: Document it.
	* fold-const.c: Include md5.h.
	[ENABLE_FOLD_CHECKING] (fold): Define to fold_1.
	[ENABLE_FOLD_CHECKING] (fold, fold_checksum_tree, fold_check_failed,
	print_fold_checksum): New functions.

	* fold-const.c (fold): Never modify argument passed to fold, instead
	change a copy and return it.
	* convert.c (convert_to_integer): Likewise.

3952 3953
2003-07-27  Nathanael Nerode  <neroden@gcc.gnu.org>

3954
	* fixinc/fixinc.svr4: Remove dead code.  Remove now-unnecessary
3955 3956 3957 3958 3959
	cleanup of junk after #else and #endif directives.  Collapse repeated
	clauses into for statment.

	* fixinc/fixincl.sh: GNU C -> GCC.  Add usage comment.

3960 3961
2003-07-27  Zack Weinberg  <zack@codesourcery.com>

3962 3963 3964 3965 3966 3967 3968 3969 3970
	* c-decl.c (struct c_scope): Remove keep_if_subblocks field.
	(keep_next_if_subblocks): Rename next_is_function_body.
	(pushlevel): Adjust commentary.  Always set ->keep on the
	outermost level of a function.  Don't set ->keep_if_subblocks.
	(poplevel): Adjust commentary.  Don't look at ->keep_if_subblocks.
	(store_parm_decls): Adjust to match.
	(finish_function): Adjust to match.
	Call poplevel with all three arguments zero.

3971 3972 3973 3974 3975 3976 3977 3978 3979 3980 3981
	* c-decl.c (store_parm_decls_newstyle, store_parm_decls_oldstyle):
	New functions split out of store_parm_decls.
	Avoid unnecessary work. Use local variables consistently.
	(store_parm_decls): Likewise.

	(finish_function): No need to set functionbody flag on call to
	poplevel.
	(struct language_function): Remove scope field.
	(c_push_function_context, c_pop_function_context): No need to
	save and restore current_scope.

3982 3983 3984 3985 3986
2003-07-27  Nathan Sidwell  <nathan@codesourcery.com>

	* doc/extend.texi (Deprecated Features): Implicit typename is
	gone. Default args on types is going.

3987 3988 3989 3990 3991 3992 3993
2003-07-26  J"orn Rennecke <joern.rennecke@superh.com>

	* Makefile.in (ifcvt.o): Depend on target.h
	* ifcvt.c (target.h): Include.
	(if_convert): Don't call mark_loop_exit_edges if we can't
	modify jumps.

3994 3995 3996 3997
2003-07-26  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>

	* doc/install.texi (Testing): Adjust required versions of DejaGnu.

3998 3999 4000 4001 4002
2003-07-26  Richard Henderson  <rth@redhat.com>

	PR inline-asm/11676
	* cse.c (count_reg_usage): Handle asm_operands properly.

4003 4004 4005 4006 4007 4008 4009 4010 4011 4012 4013 4014 4015 4016 4017 4018
2003-07-26  Roger Sayle  <roger@eyesopen.com>

	* builtins.def (DEF_FALLBACK_BUILTIN): Delete.
	(DEF_EXT_FALLBACK_BUILTIN): Delete.
	(BUILT_IN_BZERO, BUILT_IN_BCOPY, BUILT_IN_BCMP): Declare using
	the regular DEF_EXT_LIB_BUILTIN macro.
	(BUILT_IN_FPUTC, BUILT_IN_FPUTS, BUILT_IN_FWRITE): Declare using
	the regular DEF_LIB_BUILTIN macro.
	(BUILT_IN_PUTCHAR_UNLOCKED, BUILT_IN_PUTS_UNLOCKED,
	BUILT_IN_FPUTC_UNLOCKED, BUILT_IN_FPUTS_UNLOCKED,
	BUILT_IN_FWRITE_UNLOCKED): Declare using the regular
	DEF_EXT_LIB_BUILTIN macro.

	* c-decl.c (duplicate_decls): Remove code to handle builtin
	functions prototyped without an argument list.

4019 4020 4021 4022 4023
2003-07-26  Danny Smith  <dannysmith@users.sourceforge.net>

	* config/i386/winnt.c: Revert 2003-07-08 change.
	(i386_pe_section_type_flags): Remove error_with_decl here too.

4024 4025 4026 4027 4028 4029 4030
2003-07-26  Gabriel Dos Reis  <gdr@integrable-solutions.net>

	* config/arm/pe.c (arm_mark_dllimport): Don't use xxx_with_decl.
	* config/mcore/mcore.c (mcore_mark_dllimport): Likewise.
	* config/v850/v850.c (v850_handle_data_area_attribute): Likewise.
	(v850_handle_data_area_attribute): Likewise.

4031 4032
2003-07-26  Geoffrey Keating  <geoffk@apple.com>

4033
	* varasm.c (output_constant_def_contents): Use
4034 4035 4036 4037 4038 4039
	ASM_DECLARE_CONSTANT_NAME if defined.
	* doc/tm.texi (Label Output): Document ASM_DECLARE_CONSTANT_NAME.
	* config/darwin.h (ASM_DECLARE_OBJECT_NAME): Ensure zero-sized
	objects get at least one byte to prevent assembler problems.
	(ASM_DECLARE_CONSTANT_NAME): New.

4040 4041 4042
	* Makefile.in (libbackend.o): Remove options_.h.
	(mostlyclean): Likewise.

4043 4044
	* config/rs6000/rs6000.c (rs6000_output_function_epilogue): Don't
	insert a label at the end of an function under Mach-O.
4045 4046 4047

	* c-decl.c (c_static_assembler_name): Remove TREE_STATIC test.

4048 4049 4050 4051 4052 4053 4054 4055
2003-07-25  Aldy Hernandez  <aldyh@redhat.com>

	* config/rs6000/rs6000.c (is_ev64_opaque_type): Only check pointer
	equality.
	(spe_init_builtins): Declare __ev64_opaque__ as a builtin type.

	* config/rs6000/spe.h: Remove __ev64_opaque__ definition.

4056 4057 4058 4059 4060
2003-07-25  Gabriel Dos Reis  <gdr@integrable-solutions.net>

	* doc/passes.texi (Passes): Mention pretty-printing and
	diagnostic files.

4061 4062 4063 4064 4065 4066 4067
2003-07-25  Nathan Sidwell  <nathan@codesourcery.com>

	* doc/extend.texi (Function Attributes): GNU C++ does now allow
	unused parameter decls.
	(Attribute Syntax): GNU C++ does not allow label attributes to be
	after the ':'.

4068 4069
2003-07-25  Gabriel Dos Reis  <gdr@integrable-solutions.net>

4070 4071 4072 4073 4074 4075 4076 4077
	* objc/objc-act.c (objc_check_decl): Don't use xxx_with_decl.
	(objc_declare_class): Likewise.
	(error_with_ivar): Likewise.
	(start_class): Likewise.
	(warn_with_method): Likewise.

2003-07-25  Gabriel Dos Reis  <gdr@integrable-solutions.net>

4078
	Remove pedwarn_with_decl, warning_with_decl and error_with_decl
4079
	from GCC.
4080 4081 4082 4083 4084 4085 4086 4087 4088 4089 4090 4091 4092 4093 4094 4095 4096 4097 4098 4099 4100
	* calls.c (try_to_integrate): Don't use xxx_with_decl.
	(expand_call): Likewise.
	* dwarfout.c (output_reg_number): Likewise.
	* expr.c (expand_expr): Likewise.
	* function.c (assign_temp): Likewise.
	(uninitialized_vars_warning): Likewise.
	(setjmp_args_warning): Likewise.
	(expand_function_end): Likewise.
	* stmt.c (fixup_gotos): Likewise.
	(warn_about_unused_variables): Likewise.
	(expand_end_bindings): Likewise.
	* stor-layout.c (layout_decl): Likewise.
	(place_field): Likewise.
	* toplev.c (check_global_declarations): Likewise.
	(rest_of_handle_inlining): Likewise.
	(default_tree_printer): New function.
	(general_init): Initialize diagnostic machinery before routing
	signals to the ICE machinery.  Set default tree printer.
	* toplev.h (pedwarn_with_decl): Remove declaration.
	(warning_with_decl): Likewise.
	(error_with_decl): Likewise.
4101
	(pedwarn): Remove attribute for the time being.
4102 4103 4104 4105 4106 4107 4108 4109 4110 4111 4112 4113 4114 4115 4116 4117 4118 4119 4120 4121 4122 4123 4124 4125 4126 4127 4128 4129 4130 4131 4132 4133 4134 4135 4136 4137 4138 4139 4140 4141 4142 4143 4144 4145 4146 4147
	* tree-inline.c (expand_call_inline): Don't use xxx_with_decl.
	* varasm.c (named_section): Likewise.
	(make_decl_rtl): Likewise.
	(assemble_variable): Likewise.
	(merge_weak): Likewise.
	(declare_weak): Likewise.

	* diagnostic.h: Move non-diagnostic stuff into pretty-print.h.
	* diagnostic.c: Move non-diagnostic stuff into pretty-print.c.
	(format_with_decl): Remove.
	(diagnostic_for_decl): Likewise.
	(pedwarn_with_decl): Likewise.
	(warning_with_decl): Likewise.
	(error_with_decl): Likewise.
	(diagnostic_initialize): Adjust.
	(diagnostic_count_diagnostic): Likewise.
	(announce_function): Likewise.
	(lhd_print_error_function): Likewise.
	(diagnostic_report_current_module): Likewise.
	(default_diagnostic_starter): Likewise.
	(diagnostic_report_diagnostic): Likewise.
	(default_diagnostic_finalizer): Likewise.
	(verbatim): Likewise.
	(error): Likewise.
	(warning): Likewise.
	* opts.c (common_handle_option): Likewise.
	* pretty-print.c: New file.
	* c-pretty-print.h (pp_base): Override.
	* c-pretty-print.c: Adjust use of macros throughout.
	(pp_buffer): New macro.
	(pp_newline): Likewise.
	* c-objc-common.c (c_tree_printer): Adjust prototype. Tidy.
	* Makefile.in (DIAGNOSTIC_H): New variable.
	(c-errors.o): Use it.
	(c-objc-common.o): Likewise.
	(c-common.o): Likewise.
	(c-opts.o): Likewise.
	(c-format.o): Likewise.
	(diagnostic.o): Likewise.
	(opts.o): Likewise.
	(toplev.o): Likewise.
	(rtl-error.o): Likewise.
	(dwarf2out.o): Likewise.
	(jump.o): Likewise.
	(pretty-print.o): New rule.

4148 4149 4150 4151 4152 4153 4154 4155 4156 4157 4158 4159 4160 4161 4162 4163 4164 4165 4166 4167 4168 4169 4170 4171 4172 4173 4174 4175 4176 4177 4178 4179 4180 4181 4182 4183 4184
2003-07-24  Roger Sayle  <roger@eyesopen.com>

	* builtins.def (BUILT_IN_PRINTF, BUILT_IN_FPRINTF): Changed from
	front-end builtins to normal builtins, using DEF_LIB_BUILTIN.
	(BUILT_IN_PRINTF_UNLOCKED, BUILT_IN_FPRINTF_UNLOCKED): Changed
	from front-end to normal builtins, using DEF_EXT_LIB_BUILTIN.
	(DEF_FRONT_END_LIB_BUILTIN): Delete.
	(DEF_EXT_FRONT_END_LIB_BUILTIN): Delete.
	(BUILT_IN_FWRITE_UNLOCKED): Wrap long line.

	* builtins.c (build_string_literal): New function to construct
	a char* pointer to a string literal.
	(expand_builtin_fputs): Change 2nd argument from "int ignore" to
	"rtx target" to be consistent with other expand_builtin_* functions.
	Change 3rd argument from "int unlocked" to "bool unlocked".
	(expand_builtin_printf): Rewrite of c_expand_builtin_printf from
	c-common.c to avoid front-end dependencies.  Optimize printf("")
	as a no-op when the result isn't required.  Handle embedded NULs
	in format string.
	(expand_builtin_fprintf): A rewrite of c_expand_builtin_fprintf
	from c-common.c to avoid front-end dependencies.  Likewise, optimize
	fprintf(fp,"") as a no-op when the result isn't required, evaluating
	fp for side-effects.  Handle embedded NULs in format string.
	(expand_builtin_sprintf): Fix typo.
	(expand_builtin): Don't expand BUILT_IN_FPRINT{,_UNLOCKED} when not
	optimizing.  Adjust calls of expand_builtin_fputs to match the API
	change. Expand BUILT_IN_PRINTF and BUILT_IN_PRINTF_UNLOCKED using
	expand_builtin_printf.  Likewise, expand BUILT_IN_FPRINTF_UNLOCKED
	and BUILT_IN_FPRINTF using expand_builtin_fprintf.

	* c-common.c (is_valid_printf_arglist): Delete.
	(c_expand_builtin): Delete.
	(c_expand_builtin_printf): Moved to builtins.c. Delete.
	(c_expand_builtin_fprintf): Moved to builtins.c.  Delete.
	(c_expand_expr): No longer treat CALL_EXPRs specially.
	(CALLED_AS_BUILT_IN): Delete.

4185 4186 4187 4188 4189
2003-07-24  Zdenek Dvorak  <rakdver@atrey.karlin.mff.cuni.cz>

	PR optimization/11631
	* gcse.c (store_motion): Connect infinite loops to exit.

4190 4191 4192 4193 4194 4195 4196 4197 4198 4199 4200 4201 4202 4203
2003-07-24  Jason Merrill  <jason@redhat.com>

	* tree.h (boolean_type_node): Move from C/C++/Java frontends.
	(boolean_true_node, boolean_false_node): Likewise.
	(enum tree_index): Add TI_BOOLEAN_{TYPE,FALSE,TRUE}.
	* tree.c (build_common_tree_nodes): Init boolean_type_node.
	(build_common_tree_nodes_2): Init boolean_{true,false}_node.
	* stor-layout.c (set_sizetype): Handle an early BOOLEAN_TYPE.
	* c-common.h (truthvalue_type_node): Renamed from boolean_type_node.
	(truthvalue_true_node): Renamed from boolean_true_node.
	(truthvalue_false_node): Renamed from boolean_false_node.
	* c-decl.c: Just set truthvalue_* to integer_*.
	* c-*.[ch]: s/boolean/truthvalue/.  s/c_bool/boolean/.

4204 4205 4206 4207 4208 4209 4210 4211 4212
2003-07-24  Roger Sayle  <roger@eyesopen.com>

	* c-decl.c (match_builtin_function_types): New subroutine of
	duplicate_decls to test whether a redeclaration of a builtin
	function is suitably close, i.e. the return type and all of
	the argument types have the same modes as the builtin expects.
	(duplicate_decls): Fuzzy type matching for builtin functions
	moved to match_builtin_function_types.

4213 4214 4215 4216 4217
2003-07-24  Zdenek Dvorak  <rakdver@atrey.karlin.mff.cuni.cz>

	* cfgloopmanip.c (duplicate_loop_to_header_edge): Update irreducible
	flag correctly.

4218 4219 4220 4221 4222 4223 4224 4225 4226 4227 4228 4229
2003-07-24  Zack Weinberg  <zack@codesourcery.com>

	* c-decl.c: Search-and-replace change 'binding level' to
	'scope' in commentary.
	(struct binding_level): Now struct c_scope.
	(current_binding_level): Now current_scope.
	(free_binding_level): Now scope_freelist.
	(current_function_level): Now current_function_scope.
	(global_binding_level): Now global_scope.
	(make_binding_level): Now make_scope.
	(pop_binding_level): Now pop_scope.

4230 4231 4232 4233
2003-07-24  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>

	* configure.in (libgcc_visibility): Add missing whitespace.

4234 4235 4236 4237
2003-07-24  Richard Henderson  <rth@redhat.com>

	* libgcc-std.ver (GCC_3.3.1): Export __gcc_personality_sj0,
	__gcc_personality_v0.
4238

4239 4240 4241 4242
2003-07-24  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>

	* Makefile.in: Replace pwd by ${PWD_COMMAND}.

4243 4244 4245 4246 4247
2003-07-24  Nathan Sidwell  <nathan@codesourcery.com>

	* doc/invoke.texi (-fprofile-arcs, -ftest-coverage): Update
	documentation missed from my 2003-07-09 patch.

4248 4249 4250 4251 4252 4253
2003-07-24  Nathanael Nerode  <neroden@gcc.gnu.org>

	* aclocal.m4 (_gcc_COMPUTE_GAS_VERSION): Set patch level to 0 if
	it's not provided.
	* configure: Rebuild.

4254 4255 4256 4257 4258 4259
2003-07-24  Steven Bosscher  <steven@gcc.gnu.org>

	PR c/10602
	* c-typeck.c (type_lists_compatible_p): Do not compare
	arguments if one of them is an error_mark_node

4260 4261 4262 4263 4264
2003-07-24  Alan Modra  <amodra@bigpond.net.au>

	* config/rs6000/rs6000.c (rs6000_emit_prologue): Save fp regs inline
	if current_function_calls_eh_return.

4265 4266 4267 4268
2003-07-23  Mark Mitchell  <mark@codesourcery.com>

	* doc/c-tree.texi (OFFSET_TYPE): Update description.

4269 4270 4271 4272 4273 4274
2003-07-23  Bob Wilson  <bob.wilson@acm.org>

	* config/xtensa/crti.asm (_init, _fini): Increase frame size to 64.
	* config/xtensa/lib1funcs.asm (__mulsi3, __udivsi3, __divsi3,
	__umodsi3, __modsi3): Increase frame size to 32.

4275 4276 4277 4278 4279
2003-07-23  Geoffrey Keating  <geoffk@apple.com>

	* config/rs6000/host-darwin.c: ANSIfy, update comment for sigaltstack
	prototype.

4280 4281
2003-07-23  Mark Mitchell  <mark@codesourcery.com>

4282 4283
	* doc/c-tree.texi (Types): Update documentation for OFFSET_TYPE.

4284 4285 4286
	PR optimization/10679
	* tree-inline.c (inlinable_function_p): Honor MIN_INLINE_INSNS.

4287 4288 4289 4290 4291
2003-07-23  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>

	PR target/11607 and PR target/11516
	* pa.md (extzv, extv, insv): Revert latter half of last patch.

4292 4293 4294 4295 4296
2003-07-22  Mark Mitchell  <mark@codesourcery.com>

	* fold-const.c (force_fit_type): Handle OFFSET_TYPE.
	* varasam.c (output_constant): Likewise.

4297 4298 4299 4300 4301 4302 4303 4304 4305 4306 4307 4308 4309 4310 4311 4312 4313 4314 4315 4316 4317 4318 4319 4320
2003-07-22  Kazu Hirata  <kazu@cs.umass.edu>

	* alias.c: Fix comment formatting.
	* c-common.c: Likewise.
	* c-decl.c: Likewise.
	* c-opts.c: Likewise.
	* combine.c: Likewise.
	* cpplib.c: Likewise.
	* diagnostic.c: Likewise.
	* dojump.c: Likewise.
	* final.c: Likewise.
	* fold-const.c: Likewise.
	* gcc.c: Likewise.
	* gcse.c: Likewise.
	* ggc-page.c: Likewise.
	* jump.c: Likewise.
	* loop.c: Likewise.
	* mips-tfile.c: Likewise.
	* recog.c: Likewise.
	* regclass.c: Likewise.
	* regmove.c: Likewise.
	* tree.c: Likewise.
	* tree.h: Likewise.

4321 4322
2003-07-22  Per Bothner  <pbothner@apple.com>

4323 4324 4325 4326 4327
	* line-map.c (add_line_map):  Handle invalid LEAVE request.
	Fixes PR preprocessor/11361.

2003-07-22  Per Bothner  <pbothner@apple.com>

4328 4329 4330
	* diagnostic.c.(diagnostic_report_current_module):  Update to match
	2003-06-05 changes to push_srcloc and pop_srcloc.

4331 4332 4333 4334
2003-07-22  Wolfgang Bangerth  <bangerth@dealii.org>

	* doc/trouble.texi: Better document two-stage name lookup.

4335 4336 4337 4338 4339 4340 4341 4342 4343 4344 4345
2003-07-22  Eric Christopher <echristo@redhat.com>

	* config/s390.c (s390_valid_pointer_mode): New.
	(TARGET_VALID_POINTER_MODE): Use.
	(s390_emit_prologue): Add tpf profiling hooks.
	(s390_emit_epilogue): Ditto.
	* config/s390.h (MASK_TPF): New.
	(TARGET_TPF): Use.
	(POINTERS_EXTEND_UNSIGNED): Define.
	* config/s390.md (ptr_extend): New pattern.

4346 4347 4348 4349 4350 4351 4352 4353 4354 4355 4356 4357 4358 4359
2003-07-22  Zack Weinberg  <zack@codesourcery.com>

	* hashtable.c (approx_sqrt): Make static.
	* hashtable.h: Don't prototype approx_sqrt.
	* line-map.c (init_line_maps): Rename linemap_init.
	(free_line_maps): Rename linemap_free.
	(add_line_map): Rename linemap_add.
	(lookup_line): Rename linemap_lookup.
	(print_containing_files): Rename linemap_print_containing_files.
	* linemap.h: Update to match.

	* cpperror.c, cppinit.c, cpplib.c, cppmacro.c: Update calls to
	linemap routines to use new names.

4360 4361 4362 4363 4364
2003-07-16  Nathan Sidwell  <nathan@codesourcery.com>

	* c-common.c (handle_packed_attribute): Don't pack a struct via a
	typedef. Propagate packedness from a main variant.

4365 4366 4367 4368
2003-07-22  Nathanael Nerode  <neroden@gcc.gnu.org>

	* Makefile.in (install-common): Add dependency on installdirs.

4369 4370 4371 4372 4373
2003-07-21  Alexandre Oliva  <aoliva@redhat.com>

	* c-common.c (c_common_type_for_mode): Return integer types for
	pointer modes.

4374 4375
2003-07-22  Geoffrey Keating  <geoffk@apple.com>

4376 4377 4378 4379 4380 4381 4382
	* c-decl.c (start_decl): Don't call maybe_apply_pragma_weak here.
	(finish_decl): Call maybe_apply_pragma_weak here.
	(grokdeclarator): Check that DECL_ASSEMBLER_NAME isn't set before
	TREE_PUBLIC and TREE_STATIC are decided.
	(start_function): Move call to maybe_apply_pragma_weak.  Check that
	DECL_ASSEMBLER_NAME isn't set too early.

4383 4384 4385
	* cpplex.c (_cpp_process_line_notes): Mention option name in
	trigraphs warning.

4386 4387 4388 4389 4390 4391 4392 4393 4394 4395
2003-07-22  Kazu Hirata  <kazu@cs.umass.edu>

	* combine.c (if_then_else_cond): Simplify the comparison of
	rtx against -1, 0, and 1.
	* loop.c (check_dbra_loop): Likewise.
	* optabs.c (emit_conditional_move): Likewise.
	(emit_conditional_add): Likewise.
	* config/i386/i386.md (*movsi_or): Likewise.
	(*movdi_or_rex6): Likewise.

4396 4397 4398 4399
Tue Jul 22 00:42:12 CEST 2003  Jan Hubicka  <jh@suse.cz>

	* cgraphunit.c (cgraph_finalize_compilation_unit): Remove redundant if.

4400 4401 4402 4403 4404
2003-07-21  Neil Booth  <neil@daikokuya.co.uk>

	* cppfiles.c (open_file_pch): Don't put unused entries in the
	splay tree.  Remove dead code.

4405 4406
2003-07-21  Geoffrey Keating  <geoffk@apple.com>

4407 4408 4409 4410 4411 4412 4413 4414 4415 4416 4417
	* c-common.h (num_in_fnames): Declare.
	(c_static_assembler_name): Move from here...
	* c-tree.h (c_static_assembler_name): ... to here.
	* c-opts.c: Don't include langhooks-def.h.
	(c_static_assembler_name): Move to c-decl.c.
	(num_in_fnames): Make externally visible.
	* c-decl.c: Include langhooks-def.h.
	(c_static_assembler_name): Move from c-opts.c.
	* Makefile.in (c-decl.o): Add $(LANGHOOKS_DEF_H).
	(c-opts.o): Remove $(LANGHOOKS_DEF_H).

4418 4419 4420
	* c-pragma.c (maybe_apply_pragma_weak): Don't get DECL_ASSEMBLER_NAME
	when it's not needed.

4421 4422 4423 4424 4425 4426
2003-07-21  Jakub Jelinek  <jakub@redhat.com>

	* config/rs6000/rs6000.h (machine_function): Add ra_need_lr.
	* config/rs6000/rs6000.c (rs6000_return_addr): Set it.
	(rs6000_emit_prologue): Save FPRs inline if set.

4427 4428 4429 4430
2003-07-21  H.J. Lu <hongjiu.lu@intel.com>

	* config/ia64/ia64.md (prefetch): Support predicate.

4431 4432 4433 4434 4435 4436
2003-07-21  Josef Zlomek  <zlomekj@suse.cz>

	* cfgcleanup.c (merge_blocks_move_successor_nojumps): Use tablejump_p.
	* rtlanal.c (tablejump_p): Use next_active_insn for finding the jump
	table.

4437 4438
2003-07-17  Eric Botcazou  <ebotcazou@libertysurf.fr>

4439
	PR optimization/11536
4440 4441 4442 4443
	* unroll.c (loop_iterations): Do not replace a register holding
	the final value by its equivalent before the loop if it is not
	invariant.

4444 4445 4446 4447
2003-07-21  Dave Fluri  <dave.fluri@onlink.net>

	* doc/extend.texi: Fixes to spelling, grammar, and diction.

4448 4449 4450 4451 4452
2003-07-21  Ben Elliston  <bje@wasabisystems.com>

	* doc/invoke.texi (Optimize Options): Replace "it's" with "its".
	(V850 Options): Spelling fixes.

4453 4454
2003-07-20  Lisa M. Goldstein  <opus@gnu.org>

4455
	* doc/invoke.texi: Fixes to style, grammar and diction.
4456

4457 4458 4459 4460 4461 4462
2003-07-20  Roger Sayle  <roger@eyesopen.com>

	* builtins.def (BUILT_IN_ALLOCA): Remove "#if SMALL_STACK" form.
	* system.h (SMALL_STACK): Poison obsolete target macro.
	* doc/tm.texi (SMALL_STACK): Remove target macro documentation.

4463 4464 4465 4466 4467
2003-07-20  Phil Edwards  <pme@gcc.gnu.org>

	* configure.in:  Cache the results of testing for cmp's capabilities.
	* configure:  Regenerate.

4468 4469 4470 4471 4472 4473
2003-07-20  Mark Mitchell  <mark@codesourcery.com>

	PR debug/11279
	* dwarf2out.c (gen_enumeration_type_die): Remember that
	enumerators can be unsigned.

4474 4475 4476 4477 4478 4479 4480 4481 4482 4483 4484 4485 4486 4487 4488 4489 4490 4491 4492 4493 4494 4495 4496 4497 4498 4499 4500 4501 4502 4503 4504 4505 4506 4507 4508 4509 4510 4511 4512 4513 4514 4515 4516
2003-07-19  Zack Weinberg  <zack@codesourcery.com>

	* c-decl.c (named_labels, shadowed_labels, label_level_chain)
	(push_label_level, pop_label_level): Kill.
	(struct binding_level): Rename level_chain to outer.
	Add outer_function field.  Change parm_flag, function_body,
	keep, keep_if_subblocks to 1-bit bitfields of type bool.
	(current_function_level): New variable.
	(keep_next_level_flag, keep_next_if_subblocks): Change type to bool.
	(keep_next_level, declare_parm_level, warn_if_shadowing):
	Update to match.
	(struct language_function): Kill named_labels, shadowed_labels fields.
	(c_init_decl_processing, start_function, c_push__function_context)
	(c_pop_function_context): No need to muck with named_labels nor
	shadowed_labels.

	(make_binding_level): No need to clear the structure here.
	(pop_binding_level): Always operate on current_binding_level.
	Update current_function_level if necessary.
	(pushlevel): Don't clear named_labels.  Update current_function_level
	if necessary.  Use "true" and "false" where appropriate.
	(poplevel): Diagnose labels defined but not used, or vice
	versa, and clear out label-meanings leaving scope, while
	walking down the decls list, for all binding levels.
	Handle LABEL_DECLs appearing in the shadowed list.
	pop_binding_level takes no arguments.
	(pushdecl_function_level): Use current_function_level.

	(make_label, bind_label): New static functions.
	(declare_label): New exported function.
	(lookup_label, define_label): Rewritten for new data structure.
	(shadow_label): Kill.

	* c-tree.h: Prototype declare_label; don't prototype
	push_label_level, pop_label_level, nor shadow_label.
	* c-parse.in: Remove all calls to push_label_level and
	pop_label_level.  Use declare_label for __label__ decls.

	* doc/extend.texi: Clarify that __label__ can be used to
	declare labels with local scope in any nested block, not
	just statement expressions.  Cross-reference nested functions
	section from local labels section.

4517 4518 4519 4520
2003-07-19  Zdenek Dvorak  <rakdver@atrey.karlin.mff.cuni.cz>

	* sched-rgn.c (find_rgns): Initialize current_edge correctly.

4521 4522 4523 4524
2003-07-19  Phil Edwards  <pme@gcc.gnu.org>

	* doc/makefile.texi (restrap, profiledbootstrap):  Document targets.

4525 4526 4527 4528 4529
2003-07-19  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>

	* fixinc/fixfixes.c fixinc/fixincl.c fixinc/fixlib.c
	fixinc/server.c objc/objc-act.c: Remove unnecessary casts.

4530 4531
2003-07-19  Ulrich Weigand  <uweigand@de.ibm.com>

4532
	* config/s390/s390.c (legitimize_pic_address): Access local symbols
4533 4534 4535 4536 4537 4538 4539
	relative to the GOT instead of relative to the literal pool base.
	(s390_output_symbolic_const): Handle new GOT-relative accesses.
	* config/s390/s390.md ("call"): Access local functions and PLT stubs
	relative to the GOT instead of relative to the literal pool base.
	("call_value"): Likewise.
	("call_value_tls"): Likewise.

4540
	* config/s390/s390.c (s390_chunkify_start): Remove pool anchor
4541 4542 4543 4544 4545 4546 4547 4548 4549 4550 4551 4552 4553 4554 4555 4556 4557 4558
	reloading.  Support LTREL_BASE / LTREL_OFFSET construct.
	(s390_chunkify_finish): Likewise.
	(s390_chunkify_cancel): Likewise.
	(s390_reorg): Adapt caller.
	(find_base_register_in_addr,
	find_base_register_ref, replace_base_register_ref): Delete.
	(find_ltrel_base, replace_ltrel_base): New functions.
	(find_constant_pool_ref): Handle LTREL_BASE unspecs.
	(s390_decompose_address): Handle LTREL_BASE unspecs.  Optimize
	base vs. index register usage.
	(struct constant_pool): Remove 'anchor'.
	(s390_add_anchor): Delete.
	(s390_dump_pool): Remove anchor handling.
	* config/s390/s390.md ("reload_anchor"): Remove.

	* config/s390/s390.c (s390_split_branches): Use LTREL_BASE/OFFSET.
	(s390_load_got): New function.  Use LTREL_BASE/OFFSET.
	(s390_emit_prologue): Use it.
4559 4560
	* config/s390/s390.md ("builtin_longjmp", "builtin_setjmp_setup",
	"builtin_setjmp_receiver"): Cleanup.  Use s390_load_got.  Do not
4561 4562 4563
	hard-code register 14.
	* config/s390/s390-protos.h (s390_load_got): Declare.

4564
	* config/s390/s390.c (NR_C_MODES, constant_modes, gen_consttable):
4565 4566 4567 4568 4569 4570 4571 4572 4573 4574 4575 4576 4577 4578 4579
	Support TImode constants.
	* config/s390/s390.md ("consttable_ti"): New.
	("consttable_si", "consttable_di"): Handle TLS symbols correctly.

	* config/s390/s390.md (UNSPEC_LTREL_OFFSET, UNSPEC_LTREL_BASE,
	UNSPEC_GOTENT, UNSPEC_GOT, UNSPEC_GOTOFF, UNSPEC_PLT, UNSPEC_PLTOFF,
	UNSPEC_RELOAD_BASE, UNSPECV_POOL, UNSPECV_POOL_START, UNSPECV_POOL_END,
	UNSPECV_POOL_QI, UNSPECV_POOL_HI, UNSPECV_POOL_SI, UNSPECV_POOL_DI,
	UNSPECV_POOL_TI, UNSPECV_POOL_SF, UNSPECV_POOL_DF, UNSPECV_MAIN_POOL):
	New symbolic constants.
	("consttable_qi", "consttable_hi", "consttable_si", "consttable_di",
	"consttable_sf", "consttable_df", "pool_start_31", "pool_end_31",
	"pool_start_64", "pool_end_64", "reload_base_31", "reload_base_64",
	"pool", "literal_pool_31", "literal_pool_64"): Cleanup.  Use
	symbolic UNSPEC values.
4580
	* config/s390/s390.c (larl_operand, s390_short_displacement,
4581 4582 4583 4584 4585
	bras_sym_operand, s390_cannot_force_const_mem,
	s390_delegitimize_address, s390_decompose_address,
	legitimize_pic_address, s390_output_symbolic_const,
	s390_function_profiler): Use symbolic UNSPEC values.

4586 4587 4588 4589 4590 4591 4592 4593 4594 4595 4596 4597 4598 4599 4600 4601 4602 4603 4604 4605 4606 4607 4608 4609
2003-07-19  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>

	* alias.c alloc-pool.c bitmap.c bitmap.h bt-load.c builtins.c
	c-common.c c-decl.c c-incpath.c c-lex.c c-opts.c c-parse.in
	c-pragma.c c-typeck.c calls.c cfg.c cfganal.c cfgloop.c cfgrtl.c
	collect2.c combine.c conflict.c coverage.c cppexp.c cppfiles.c
	cpphash.c cppinit.c cpplex.c cpplib.c cppmacro.c cppspec.c
	cpptrad.c cse.c cselib.c dbxout.c defaults.h df.c dominance.c
	dwarf2out.c dwarfout.c emit-rtl.c except.c expmed.c expr.c final.c
	fix-header.c flow.c fold-const.c function.c gcc.c gccspec.c gcov.c
	gcse.c genattr.c genattrtab.c genautomata.c genconditions.c
	genemit.c genextract.c genoutput.c genrecog.c gensupport.c
	ggc-page.c ggc-simple.c global.c graph.c haifa-sched.c hashtable.c
	integrate.c jump.c langhooks.c lcm.c line-map.c local-alloc.c
	loop.c mips-tdump.c mips-tfile.c mkdeps.c optabs.c params.c
	postreload.c prefix.c print-tree.c protoize.c ra-build.c
	ra-colorize.c ra-rewrite.c ra.c recog.c reg-stack.c regclass.c
	regmove.c regrename.c reload.c reload1.c reorg.c resource.c
	sbitmap.c sched-deps.c sched-rgn.c sched-vis.c sdbout.c
	simplify-rtx.c ssa-ccp.c ssa.c stmt.c stor-layout.c timevar.c
	tlink.c toplev.c tree-dump.c tree.c unroll.c unwind-dw2-fde.c
	varasm.c varray.c vmsdbgout.c xcoffout.c: Remove unnecessary
	casts.

4610 4611
2003-07-19  Gabriel Dos Reis  <gdr@integrable-solutions.net>

4612 4613 4614 4615 4616
	* c-pragma.c (apply_pragma_weak): Don't use warning_with_decl.
	* toplev.h (warning): Remove attribute.

2003-07-19  Gabriel Dos Reis  <gdr@integrable-solutions.net>

4617 4618 4619 4620 4621 4622 4623 4624 4625 4626 4627 4628 4629 4630 4631 4632 4633 4634
	* c-decl.c (c_finish_incomplete_decl): Don't use xxx_with_decl.
	(pop_label_level): Likewise.
	(duplicate_decls): Likewise.
	(implicitly_declare): Likewise.
	(shadow_label): Likewise.
	(start_decl): Likewise.
	(finish_decl): Likewise.
	(grokdeclarator): Likewise.
	(get_parm_info): Likewise.
	(detect_field_duplicates): Likewise.
	(finish_struct): Likewise.
	(start_function): Likewise.
	(store_parm_decls): Likewise.
	(finish_function): Likewise.
	(c_expand_body_1): Likewise.
	(check_for_loop_decls): Likewise.
	(merge_translation_unit_decls): Likewise.

4635 4636 4637 4638 4639 4640 4641 4642 4643 4644 4645 4646 4647 4648 4649 4650
2003-07-19  Neil Booth  <neil@daikokuya.co.uk>

	* common.opt:  Document --param.
	* opts.c (columns, undocumented_msg): New.
	(print_help): Get number of columns from environment.  Print
	--param help.  Tweak newline handling.
	(print_param_help): New.
	(print_filtered_help): Better handling of duplicates.  Complain
	about undocumented switches.
	(print_switch): New.
	(wrap_help): Improve wrapping, use COLUMNS.
	* opts.sh: Ignore comments in records.
	* params.def: Fix typos and remove trailing periods.
	* toplev.c (display_help): Don't dump --param help.
	* doc/sourcebuild.texi: Update.

4651 4652
2003-07-18  Richard Henderson  <rth@redhat.com>

David S. Miller committed
4653
	PR target/11556
4654 4655 4656 4657
	* optabs.c (prepare_operand): Fail gracefully instead of abort
	if the predicate doesn't satisfy.
	(gen_cond_trap): Allow prepare_operand to fail.

4658 4659 4660 4661 4662 4663 4664 4665 4666 4667 4668 4669
2003-07-19  Gabriel Dos Reis  <gdr@integrable-solutions.net>

	* c-common.c: Don't undefine GCC_DIAG_STYLE.
	(fname_decl): Don't use xxx_with_decl.
	(c_add_case_label): Likewise.
	(handle_section_attribute): Likewise.
	(handle_alias_attribute): Likewise.
	(handle_no_instrument_function_attribute): Likewise.
	(handle_no_limit_stack_attribute): Likewise.
	* c-objc-common.c (c_tree_printer): Print IDENTIFIER_NODEs.
	* c-format.c (gcc_cdiag_char_table): Add '%E' format-specifier.

4670 4671 4672 4673 4674 4675 4676 4677 4678 4679
2003-07-19  Zdenek Dvorak  <rakdver@atrey.karlin.mff.cuni.cz>

	* Makefile.in (ifcvt.o): Add cfgloop.h.
	* basic-block.h (EDGE_LOOP_EXIT): New flag.
	* cfgrtl.c (rtl_verify_flow_info_1): Handle it correctly.
	* ifcvt.c: Include cfgloop.h.
	(mark_loop_exit_edges): New static function.
	(if_convert): Call it.
	(find_if_header): Ignore branches out of loops.

4680 4681
2003-07-18  Kazu Hirata  <kazu@cs.umass.edu>

4682
	* combine.c (simplify_comparison): Don't share rtx when converting
4683 4684
	(ne (and (not X) 1) 0) to (eq (and X 1) 0).

4685 4686 4687 4688 4689 4690 4691
2003-07-18  David Edelsohn  <edelsohn@gnu.org>

	* config/rs6000/aix.h (AGGREGATE_PADDING_FIXED): Define.
	(AGGREGATES_PAD_UPWARD_ALWAYS): Define.
	(MUST_PASS_IN_STACK): Define.
	(BLOCK_REG_PADDING): Define.

4692 4693 4694 4695 4696
2003-07-18  Richard Henderson  <rth@redhat.com>

	* cfgrtl.c (force_nonfallthru_and_redirect): Use tablejump_p
	to skip the addr_vec.

4697 4698 4699 4700 4701
Fri Jul 18 15:22:28 2003  Alexandre Oliva  <aoliva@redhat.com>

	* combine.c (combinable_i3pat): Don't forbid occurrences of
	i2dest or i1dest in inner_dest if inner_dest is a mem.

4702 4703 4704 4705
Fri Jul 18 17:05:57 CEST 2003  Jan Hubicka  <jh@suse.cz>

	* cgraph.c (cgraph_remove_node): Clear the hash table slot.

4706 4707 4708 4709 4710 4711
2003-07-17  Jakub Jelinek  <jakub@redhat.com>

	PR target/11087
	* loop.c (basic_induction_var): Check if convert_modes emitted any
	instructions. Remove them and return 0 if so.

4712 4713 4714 4715 4716 4717 4718
2003-07-18  Eric Botcazou  <ebotcazou@libertysurf.fr>

	PR optimization/11083
	* toplev.c (rest_of_handle_addresof): Rename into
	rest_of_handle_addressof.  Delete unreachable blocks
	if dead edges were purged after the addressof pass.

4719 4720 4721 4722 4723 4724 4725
2003-07-18  Neil Booth  <neil@daikokuya.co.uk>

	* Makefile.in, configure, configure.in: Remove handling of
	lang-options.h and options_.h.
	* toplev.c (struct lang_opt, documented_lang_options): Remove.
	(display_help): Don't use documented_lang_options.

4726 4727 4728 4729 4730 4731 4732 4733 4734 4735 4736 4737
2003-07-17  Zack Weinberg  <zack@codesourcery.com>

	* c-decl.c (pushdecl_function_level): Make static, return nothing.
	(kept_level_p): Fold into poplevel.
	(undeclared_variable): Moved here from c-typeck.c.  Export.
	* c-tree.h (KEEP_YES, KEEP_NO, KEEP_MAYBE): New #defines.
	(undeclared_variable): Prototype here.  Don't prototype
	kept_level_p nor pushdecl_function_level.
	* c-parse.in: Change first argument to poplevel from
	"kept_level_p()" to "KEEP_MAYBE".
	* c-typeck.c (undeclared_variable): Moved to c-decl.c.

4738 4739 4740 4741 4742
2003-07-17  Roger Sayle  <roger@eyesopen.com>

	* simplify-rtx.c (simplify_rtx): Use simplify_gen_binary to swap
	commutative operands instead of modifying the RTL in-place.

4743 4744 4745 4746 4747 4748
2003-07-17  Mark Mitchell  <mark@codesourcery.com>

	PR optimization/11557
	* calls.c (flags_from_decl_or_type): Do not set ECF_LIBCALL_BLOCK
	unless we know which function is being called.

4749 4750
2003-07-17  Roger Sayle  <roger@eyesopen.com>

4751 4752 4753 4754 4755
	* cse.c (fold_rtx): Use swap_commutative_operands_p to determine
	whether to reorder the operands of a commutative binary operator.

2003-07-17  Roger Sayle  <roger@eyesopen.com>

4756 4757 4758 4759 4760 4761 4762 4763 4764 4765 4766 4767 4768 4769 4770
	* fold-const.c (const_binop): Avoid performing the FP operation at
	compile-time, if either operand is NaN and we honor signaling NaNs,
	or if we're dividing by zero and either flag_trapping_math is set
	or the desired mode doesn't support infinities.
	(fold_initializer): New function to fold an expression ignoring any
	potential run-time exceptions or traps.
	* tree.h (fold_initializer): Prototype here.
	* c-typeck.c (build_binary_op): Move to the end of the file so
	that intializer_stack is in scope.  If constructing an initializer,
	i.e. when initializer_stack is not NULL, use fold_initializer to
	fold expressions.
	* simplify-rtx.c (simplify_binary_operation): Likewise, avoid
	performing FP operations at compile-time, if they would raise an
	exception at run-time.

4771 4772
2003-07-17  Geoffrey Keating  <geoffk@apple.com>

4773 4774 4775 4776 4777 4778 4779 4780 4781 4782 4783 4784 4785 4786 4787 4788 4789
	PR 11498
	* Makefile.in (c-opts.o): Add $(LANGHOOKS_DEF_H).
	(langhooks.o): Add $(GGC_H), gt-langhooks.h.
	(GTFILES): Add langhooks.c.
	(gt-langhooks.h): New.
	* c-common.h (c_static_assembler_name): Prototype.
	* c-lang.c (LANG_HOOKS_SET_DECL_ASSEMBLER_NAME): Define.
	* objc/objc-lang.c (LANG_HOOKS_SET_DECL_ASSEMBLER_NAME): Define.
	* c-opts.c: Include langhooks-def.h.
	(c_static_assembler_name): New.
	* langhooks.c: Include ggc.h.  Include gt-langhooks.h.
	(var_labelno): New.
	(lhd_set_decl_assembler_name): Give static objects with context
	unique names.
	* varasm.c (var_labelno): Delete.
	(make_decl_rtl): Don't change the assembler name once it's set.

4790 4791 4792 4793 4794 4795
	* c-opts.c (this_input_filename): New.
	(finish_options): Take new parameter, name of file being compiled.
	Update callers.  Set this_input_filename.
	(push_command_line_include): Use this_input_filename not
	main_input_filename.

4796 4797 4798 4799 4800 4801
2003-07-17  Neil Booth  <neil@daikokuya.co.uk>

	* Makefile.in: Depend .pot generation on options.c.
	* po/exgettext: Add an extra_files variable containing additional
	files to scan.

4802 4803
2003-07-17  Zack Weinberg  <zack@codesourcery.com>

4804 4805 4806
	* objc/objc-lang.c: Override LANG_HOOKS_WRITE_GLOBALS to
	c_write_global_declarations.

4807 4808 4809 4810 4811 4812 4813 4814 4815 4816 4817 4818 4819 4820 4821 4822 4823 4824
	* c-decl.c: Fix typos in several comments.  Remove all
	#if 0 blocks; reindent as needed.  Remove unused argument
	to declare_parm_level; all callers changed.
	* c-parse.in: Update calls to declare_parm_level.  Avoid
	issuing a double warning in some circumstances.
	* c-typeck.c: Update calls to declare_parm_level.
	* c-tree.h: Update prototype of declare_parm_level.

	* c-pragma.c (apply_pragma_weak): Don't complain about a
	redundant #pragma weak.

	* objc/objc-act.c (forward_declare_categories,
	build_selector_reference_decl, build_class_reference_decl,
	build_objc_string_decl, synth_forward_declarations,
	build_protocol_reference): Set TREE_PUBLIC on synthetic
	forward decl to 0, consistent with eventual definition.
	Correct comments to match.

4825 4826 4827 4828
	* fixinc/inclhack.def (solaris_mutex_init_2): Escape braces
	in regexp that don't form a range expression.
	* fixinc/fixincl.def: Regenerate.

4829 4830
2003-07-17  Richard Henderson  <rth@redhat.com>

4831 4832 4833 4834
	PR target/10907
	* config/ia64/ia64.c (ia64_epilogue_uses): GP is live at end
	even with !TARGET_CONST_GP.
	(ia64_function_ok_for_sibcall): Reject non-local functions.
4835

4836 4837 4838 4839 4840 4841 4842 4843 4844 4845 4846 4847
2003-07-17  Steven Bosscher  <steven@gcc.gnu.org>

	* c-common.c (c_estimate_num_insns_1): Don't handle
	METHOD_CALL_EXPR.
	* expr.c (safe_from_p): Likewise.
	* gengtype.c (adjust_field_tree_exp): Likewise.
	* stmt.c (warn_if_unused_value): Likewise
	* tree.c (first_rtl_op): Likewise.
	* tree.def: Don't define METHOD_CALL_EXPR.
	* java/lang.c (java_estimate_num_insns_1): Don't handle
	METHOD_CALL_EXPR.

4848 4849 4850 4851 4852 4853 4854
2003-07-17  Eric Botcazou  <ebotcazou@libertysurf.fr>

	PR other/11466
	* doc/invoke.texi (SPARC Options): Document "-mlittle-endian"
	and its restrictions for the SPARC64 port.
	Move the entry of "-mimpure-text" before that of "-mv8".

4855
2003-07-17  Eric Botcazou <ebotcazou@libertysurf.fr>
4856
	    Phil Edwards <phil@jaj.com>
4857 4858 4859 4860 4861 4862

	* doc/install.texi (*-*-solaris2*): Document the step-by-step
	procedure to bootstrap and install.
	Document the preference for the legacy Sun tools in /usr/bin
	over the POSIX tools in /usr/xpg4/bin for the build process.

4863 4864 4865 4866 4867 4868 4869 4870 4871 4872
2003-07-17  Neil Booth  <neil@daikokuya.co.uk>

	* c.opt: Document Uncodumented; use it.  Document ObjC options.
	* opts.c (print_filtered_help): Skip undocumented switches.
	* opts.h (CL_UNDOCUMENTED): New.
	* opts.sh: Handle Undocumented.
	* toplev.c (documented_lang_options): Prevent its becoming empty.
objc:
	* lang-options.h: Remove.

4873 4874 4875 4876 4877 4878 4879 4880
2003-07-16  Ulrich Weigand  <uweigand@de.ibm.com>

	* loop.c (check_ext_dependent_givs): Pass const struct loop *
	instead of struct loop_info * as argument.  Accept BIVs with
	increment +/- 1 provided there is a friendly exit test against
	a loop-invariant value.
	(strength_reduce): Adapt call to check_ext_dependent_givs.

4881 4882 4883 4884 4885 4886 4887 4888 4889 4890 4891 4892 4893 4894 4895 4896 4897 4898 4899 4900 4901 4902 4903 4904 4905 4906 4907 4908 4909 4910 4911 4912 4913 4914 4915 4916 4917 4918 4919 4920 4921
2003-07-16  J"orn Rennecke <joern.rennecke@superh.com>
	    Con Bradley <con.bradley@superh.com>

	* sh-protos.h (sh_get_pr_initial_val): Declare.
	* sh.c (regno_reg_class): Make its elements type enum reg_class.
	(output_stack_adjust): Remove emit_fn argument.  Add epilogue_p
	and live_regs_mask arguments.  Changed all callers.
	(save_schedule_s): New structure.
	(save_schedule): New typedef.
	(scavenge_reg, sh5_schedule_saves, sh5_schedule_saves): New functions.
	(calc_live_regs): For TARGET_SHMEDIA, use leaf_function_p.
	In interrupts handlers, also save registers that are usually
	partially saved, and make sure there is at least one general purpose
	register saved if a target register needs saving.
	Add casts in comparisons to avoid warnings.
	(sh_media_register_for_return): return -1 for interrupt handlers.
	(MAX_SAVED_REGS, MAX_TEMPS): New defines.
	(sh_expand_prologue): Use sh5_schedule_saves.  Check that any temp
	registers used are available.
	Set RTX_FRAME_RELATED_P where appropriate.
	Add an REG_FRAME_RELATED_EXPR for r0 + offset addressing.
	(sh_expand_epilogue, sh_set_return_address): Use sh5_schedule_saves.
	(initial_elimination_offset): Likewise.
	* sh.h (DWARF_CIE_DATA_ALIGNMENT): Set to -4.
	(LOCAL_ALIGNMENT, GENERAL_REGISTER_P): Add casts to avoid warnings.
	(FP_REGISTER_P): Add casts to fix broken handling of unsigned REGNO.
	(XD_REGISTER_P, TARGET_REGISTER_P): Likewise.
	(HARD_REGNO_CALL_PART_CLOBBERED): Also yield nonzero for r15,
	and for target registers.
	(RETURN_IN_MEMORY): Add parentheses to avoid warnings.
	(regno_reg_class): Make its elements type enum reg_class.
	(CONSTRAINT_LEN): Don't use isdigit.
	(FUNCTION_ARG_REGNO_P): Add casts to avoid warnings.
	(FUNCTION_ARG): Add parentheses to avoid warnings.
	(RETURN_ADDR_RTX): Use sh_get_pr_initial_val.
	(RETURN_ADDR_OFFSET): Define to -1 for TARGET_SH5.
	(SH_DBX_REGISTER_NUMBER): Add casts to avoid warnings.
	(EH_RETURN_DATA_REGNO): Use unsigned constants to avoid warnings.
	* sh.md (xordi3+1): Remove unused variable regno.
	(return_media): Check that tr0 is available before using it.

4922 4923 4924 4925
2003-07-16  Neil Booth  <neil@daikokuya.co.uk>

	* c.opt: Document more options.

4926 4927
2003-07-16  Roger Sayle  <roger@eyesopen.com>

4928 4929 4930 4931 4932
	* combine.c (subst): Also handle (subreg (const_double ...)) case
	if created by a substitution, by using the original inner mode.

2003-07-16  Roger Sayle  <roger@eyesopen.com>

4933 4934 4935 4936
	* simplify-rtx.c (simplify_replace_rtx): Convert constant comparisons
	to MODE_FLOAT constants if FLOAT_STORE_FLAG_VALUE is defined.
	(simplify_rtx): Likewise.  Simplify (lo_sum (high X) X) as X.

4937
2003-07-16  Andrew Pinski  <pinskia@physics.uc.edu>
4938

4939
	* doc/install.texi (--without-headers): New.
Andrew Pinski committed
4940 4941 4942 4943 4944 4945 4946 4947

	Partial Fix PR/10129
	* config/darwin.c (machopic_function_base_name): Only Return "<pic base>".
	(machopic_output_function_base_name): New; print the true pic label.
	(machopic_classify_ident): Pic Base is always a defined data.
	* config/darwin.h (ASM_OUTPUT_LABELREF): Support the pic base label.
	* config/darwin-proto.h (machopic_output_function_base_name): Prototype.

4948 4949 4950
	* gcse.c (gcse_constant_p): COMPARE of the same registers is a constant
	if they are not floating point registers.

4951 4952 4953 4954 4955 4956 4957 4958 4959 4960 4961 4962 4963 4964 4965 4966 4967 4968
	PR c/10962
	* ggc.h: Add header guards.
	* c-decl.c (finish_struct): Sort fields if
	number greater than 15 and there are no
	anonymous structs/unions.
	* c-common.h: Include ggc.h.
	(sorted_fields_type): New struct.
	(field_decl_cmp): New prototype.
	(resort_sorted_fields): New prototype.
	(DECL_DECLARES_TYPE_NON_TEMPLATE_P): New macro.
	* c-tree.h: (lang_type): Use pointer to sorted_fields_type
	as s, removing other fields.
	* c-typeck.c (lookup_field): Use s in lang_type.
	These were mostly moved from cp/class.c:
	* c-common.c (field_decl_cmp): New static function.
	(field_decl_cmp): New function.
	(resort_sorted_fields): New function.

4969 4970 4971 4972 4973
2003-07-16  Geoffrey Keating  <geoffk@apple.com>

	* config/darwin.c (machopic_select_section): Use decl_readonly_section
	to do most of the work.

4974 4975 4976 4977
2003-07-16  Hans-Peter Nilsson  <hp@bitrange.com>

	* config/mmix/mmix-protos.h: Convert prototypes to ISO C90.
	* config/mmix/mmix.c: Convert functions to ISO C90.
4978
	(mmix_eh_return_handler_rtx, mmix_output_shifted_value): Tweak
4979 4980 4981
	formatting.
	(mmix_get_hard_reg_initial_val): Tweak section head comment.

4982 4983 4984 4985
2003-07-16  J"orn Rennecke <joern.rennecke@superh.com>

	* c-pragma.h (HANDLE_PRAGMA_WEAK): Always define to SUPPORTS_WEAK.

4986 4987 4988 4989 4990 4991 4992 4993 4994 4995 4996 4997 4998 4999 5000 5001 5002 5003 5004
2003-07-16  Jakub Jelinek  <jakub@redhat.com>

	* unwind-dw2.c (MD_FROB_UPDATE_CONTEXT): Define.
	(uw_update_context_1): Use it.
	* config/rs6000/rs6000.c (insn_after_throw): Remove.
	(rs6000_aix_emit_builtin_unwind_init): Save $r2 to its location
	in parent frame if _Unwind_* called directly instead of through
	.plt.
	(rs6000_emit_eh_toc_restore): Remove.
	(rs6000_emit_prologue): Update stack pointer before doing any saving
	if current_function_calls_eh_return.  Generate unwind info for $r2.
	(rs6000_emit_epilogue): Restore stack pointer after doing all
	restoring if current_function_calls_eh_return.  Restore $r2.
	* config/rs6000/rs6000-protos.h (rs6000_emit_eh_toc_restore): Remove.
	* config/rs6000/rs6000.md (eh_return): Remove call to
	rs6000_emit_eh_toc_restore.
	* config/rs6000/linux64.h (MD_FROB_UPDATE_CONTEXT): Define.
	* config/rs6000/aix.h (MD_FROB_UPDATE_CONTEXT): Define.

5005 5006 5007 5008 5009 5010
2003-07-15  Jakub Jelinek  <jakub@redhat.com>

	* expr.c (emit_block_move): Don't move anything if size is const 0.
	(clear_storage): Test against const0_rtx instead of comparing INTVAL
	against 0.

5011 5012 5013 5014 5015
2003-07-15  David S. Miller  <davem@redhat.com>

	* config/sparc/sparc.c (sparc_nonflat_function_epilogue): Only
	emit nop if the last real insn is CALL_INSN.

5016 5017
2003-07-16  Danny Smith  <dannysmith@users.sourceforge.net>

5018 5019 5020 5021 5022 5023
	* config/i386/xm-mingw32.h (HOST_BIT_BUCKET): Define
	as "nul".
	* config/i386/xm-mingw32.h: Change GNU CC to GCC.

2003-07-16  Danny Smith  <dannysmith@users.sourceforge.net>

5024 5025 5026 5027 5028 5029 5030
	* config/i386/winnt.c (associated_type): Artificial methods are not
	affected by the import/export status of their class unless they are
	COMDAT.
	(i386_pe_dllimport_p): Do not mark artificial methods as dllimport.

	* config/i386/winnt.c: Fix GCC copyright comment.

5031 5032 5033 5034 5035 5036 5037 5038
2003-07-16  Gabriel Dos Reis  <gcc@integrable-solutions.net>

	PR c++/11531
	* diagnostic.c (diagnostic_report_diagnostic): Don't ICE if we're
	not recursing on hard error.
	(diagnostic_for_decl): Likewise.
	* diagnostic.def: Rearrange.

5039 5040 5041 5042 5043 5044 5045 5046 5047 5048 5049 5050 5051 5052 5053 5054 5055 5056 5057 5058 5059
2003-07-15  J"orn Rennecke <joern.rennecke@superh.com>

	* dwarf2out.c (expand_builtin_init_dwarf_reg_sizes):
	If DWARF_FRAME_RETURN_COLUMN doesn't have a register mode, use Pmode.

2003-07-15  J"orn Rennecke <joern.rennecke@superh.com>
	    Richard Henderson  <rth@redhat.com>

	* unwind-dw2.c (_Unwind_GetGR): Use dwarf_reg_size_table
	to decide if to access a _Unwind_Ptr or a _Unwind_Word.
	(_Unwind_SetGR): Likewise.
	(_Unwind_GetPtr, _Unwind_SetSpColumn): New functions.
	(Unwind_SpTmp): New typedef.
	(uw_update_context_1): Use _Unwind_SetSpColumn and _Unwind_GetPtr.
	(uw_update_context): Use _Unwind_GetPtr.
	(init_dwarf_reg_size_table): Move above uw_init_context_1.
	(uw_init_context_1): Initialize dwarf_reg_size_table if necessary.
	Use _Unwind_SetSpColumn.
	(uw_install_context_1): Don't initialize dwarf_reg_size_table.
	Use _Unwind_GetPtr.

5060 5061 5062 5063 5064
2003-07-15  Neil Booth  <neil@daikokuya.co.uk>

	* c.opt: Document more options.
	* toplev.c (documented_lang_options): Remove all local help strings.

5065 5066 5067 5068 5069 5070
2003-07-15  Mark Mitchell  <mark@codesourcery.com>

	PR debug/11473
	* dbxout.c (dbxout_type): Use TYPE_SIZE to determine the sizes of
	base classes.

5071 5072 5073 5074 5075 5076 5077
2003-07-15  Kazu Hirata  <kazu@cs.umass.edu>

	PR target/10795
	* config/i386/i386.c (ix86_expand_carry_flag_compare): Don't
	swap comparison operands if doing so would generate an
	unrecognizable insn.

5078 5079 5080 5081 5082 5083 5084 5085 5086 5087 5088 5089 5090 5091 5092 5093 5094 5095 5096 5097
2003-07-15  Eric Botcazou  <ebotcazou@libertysurf.fr>

	PR optimization/11320
	* sched-int.h (struct deps) [reg_conditional_sets]: New field.
	(struct sched_info) [compute_jump_reg_dependencies]: New prototype.
	* sched-deps.c (sched_analyze_insn) [JUMP_INSN]: Update call to
	current_sched_info->compute_jump_reg_dependencies. Record which
	registers are used and which registers are set by the jump.
	Clear deps->reg_conditional_sets after a barrier.
	Set deps->reg_conditional_sets if the insn is a COND_EXEC.
	Clear deps->reg_conditional_sets if the insn is not a COND_EXEC.
	(init_deps): Initialize reg_conditional_sets.
	(free_deps): Clear reg_conditional_sets.
	* sched-ebb.c (compute_jump_reg_dependencies): New prototype.
	Mark registers live on entry of the fallthrough block and conditionally
	set as set by the jump. Mark registers live on entry of non-fallthrough
	blocks as used by the jump.
	* sched-rgn.c (compute_jump_reg_dependencies): New prototype.
	Mark new parameters as unused.

5098 5099
2003-07-15  Richard Sandiford  <rsandifo@redhat.com>

5100 5101 5102 5103
	* doc/invoke.texi: Resync MIPS -march documentation.

2003-07-15  Richard Sandiford  <rsandifo@redhat.com>

5104 5105 5106 5107 5108 5109 5110 5111 5112 5113 5114 5115
	* config/mips/mips.h (PROCESSOR_R9000): New processor_type.
	(TARGET_MIPS9000, TUNE_MIPS9000): New macros.
	(GENERATE_MULT3_SI): True for TARGET_MIPS9000.
	* config/mips/mips.c (mips_cpu_info_table): Add rm9000 entry.
	(mips_rtx_costs): Adjust integer multiplication costs for the rm9000.
	(mips_issue_rate): Handle PROCESSOR_R9000.
	(mips_use_dfa_pipeline_interface): Likewise.
	* config/mips/9000.md: New file.
	* config/mips/mips.md: Include it.
	(define_attr cpu): Add r9000.
	(mulsi3_mult3): Use "mul" for rm9000 code.

5116 5117 5118 5119 5120 5121 5122 5123 5124 5125 5126 5127 5128 5129
2003-07-15  Stan Cox  <scox@redhat.com>

	* config/mips/mips.h (PROCESSOR_R7000): New processor_type.
	(TARGET_MIPS7000, TUNE_MIPS7000): New macros.
	(GENERATE_MULT3_SI): True for TARGET_MIPS7000.
	* config/mips/mips.c (mips_cpu_info_table): Add rm7000 entry.
	(mips_rtx_costs): Adjust integer multiplication costs for the rm7000.
	(mips_issue_rate): Handle PROCESSOR_R7000.
	(mips_use_dfa_pipeline_interface): Likewise.
	* config/mips/7000.md: New file.
	* config/mips/mips.md: Include it.
	(define_attr cpu): Add r7000.
	(mulsi3_mult3): Use "mul" for rm7000 code.

5130 5131 5132 5133 5134 5135 5136 5137 5138 5139
2003-07-15  Richard Sandiford  <rsandifo@redhat.com>

	* config/mips/mips.md (define_attr type): Add condmove.  Use it for
	the conditional move patterns.
	* config/mips/5400.md (ir_vr54_move): Rename to ir_vr54_condmove.
	Check for condmove type.
	(ir_vr54_arith): Add move type.
	* config/mips/5500.md (ir_vr55_move, ir_vr55_arith): Likewise.
	* config/mips/sr71k.md (ir_sr70_move, ir_sr70_arith): Likewise.

5140 5141 5142 5143 5144 5145 5146 5147 5148
2003-07-15  Neil Booth  <neil@daikokuya.co.uk>

	* c-opts.c (print_help): Remove.
	(c_common_handle_option): Don't handle --help.
	* c.opt: Document some options.
	(--help): Remove.
	* opts.c (print_filtered_help): New.
	(print_help): Use it.

5149 5150
2003-07-14  Geoffrey Keating  <geoffk@apple.com>

5151 5152 5153 5154 5155
	* c-common.c (c_common_type_for_mode): Handle V4DFmode.
	* tree.c: (build_common_tree_nodes_2): Likewise.
	* tree.h (enum tree_index): Add TI_V4DF_TYPE.
	(V4DF_type_node): New.

5156 5157 5158 5159
	* c-opts.c (push_command_line_include): Don't free deferred_opts,
	we'll need it.
	(finish_options): Reset init_cursor.

5160 5161 5162 5163 5164 5165 5166 5167
2003-07-15  Kazu Hirata  <kazu@cs.umass.edu>

	* expr.c (expand_assignment): Remove an unused argument
	SUGGEST_REG.
	* expr.h: Update the prototype.
	* function.c: Update the callers.
	* stmt.c: Likewise.

5168 5169 5170 5171 5172 5173
2003-07-14  Mark Mitchell  <mark@codesourcery.com>

	PR debug/11098
	* integrate.c (copy_decl_for_inlining): Do not mark copied decls
	as DECL_ABSTRACT.

5174 5175 5176 5177 5178 5179 5180
2003-07-14  Nathanael Nerode  <neroden@gcc.gnu.org>

	* fixinc/inclhack.def (avoid_bool_define, avoid_bool_type): Bypass
	with __cplusplus, not "we must use the C++ compiler's type"
	* fixinc/inclhack.def (void_null): Note that Interix needs this.
	* fixinc/fixincl.x: Regenerate.

5181 5182
2003-07-14  Geoffrey Keating  <geoffk@apple.com>

5183 5184 5185 5186 5187 5188 5189 5190
	* unwind-dw2-fde-darwin.c (live_image_destructor): Get seen_objects
	and unseen_objects from the global data before calling
	__deregister_frame_info_bases.
	(examine_objects): Insert objects into the seen_objects list,
	not unseen_objects.
	(_Unwind_Find_FDE): Always unlock the global object lists, even if
	we couldn't allocate a data structure to put in it.

5191 5192 5193 5194 5195 5196
	* objc/objc-act.h (CLASS_SUPER_NAME): Add a little typechecking.
	(TYPE_PROTOCOL_LIST): Share use of type.context with C frontend.
	(SET_TYPE_PROTOCOL_LIST): New.
	* objc/objc-act.c (get_static_reference): Use SET_TYPE_PROTOCOL_LIST.
	(get_object_reference): Likewise.

5197 5198 5199 5200 5201 5202 5203 5204 5205
Mon Jul 14 23:14:28 CEST 2003  Jan Hubicka  <jh@suse.cz>

	* cfglayout.c (locator_file): Break out from ....
	(insn_file): ... here.
	(locator_line): Break out from ....
	(insn_line): ... here.
	* rtl.h (locator_file, locator_line): Declare.
	(final_start_function): Set proper line/file info.

5206 5207 5208 5209 5210
2003-07-14  Gabriel Dos Reis  <gdr@integrable-solutions.net>

	* c-pretty-print.c (pp_c_unary_expression): A CONVERT_EXPR is
	handled by pp_c_cast_expression.

5211 5212
2003-07-14  Richard Sandiford  <rsandifo@redhat.com>

5213 5214 5215 5216 5217 5218 5219 5220 5221 5222 5223 5224
	* config/mips/mips.c (mips_expand_prologue): Use a single insn to
	allocate 32768 bytes of stack.  Use addition rather than subtraction
	when a single insn is enough.
	* config/mips/mips.md: Remove insns and splitters for subtracting
	constants.
	(subsi3): Only accept register operands.
	(subsi3_internal): Likewise.  Use for TARGET_MIPS16 as well.
	(subdi3_internal_3, subsi3_internal_2): Likewise.
	(casesi): Use expand_binop to subtract the lower bound.

2003-07-14  Richard Sandiford  <rsandifo@redhat.com>

5225 5226 5227 5228 5229
	* config/mips/mips.c (mips_in_small_data_p): Don't handle
	TARGET_MIPS16 specially.

2003-07-14  Richard Sandiford  <rsandifo@redhat.com>

5230 5231 5232 5233 5234 5235
	* config/mips/elf.h (ASM_OUTPUT_ALIGNED_BSS): Use
	mips_output_aligned_bss.
	* config/mips/linux.h: Likewise.
	* config/mips/mips-protos.h (mips_output_aligned_bss): Declare.
	* config/mips/mips.c (mips_output_aligned_bss): New function.

5236 5237 5238
	* config/mips/elf.h (DBX_DEBUGGING_INFO): Delete.
	* config/mips/elf64.h: Likewise.

5239 5240 5241 5242 5243 5244 5245 5246 5247 5248 5249 5250 5251
	* config/mips/elf.h (ASM_DECLARE_OBJECT_NAME): Use
	mips_declare_object_name.
	(ASM_FINISH_DECLARE_OBJECT): Likewise mips_finish_declare_object.
	* config/mips/elf64.h: As for elf.h.
	* config/mips/iris6.h: Likewise.
	* config/mips/linux.h (ASM_DECLARE_OBJECT_NAME): As for elf.h.
	* config/mips/mips.h (ASM_DECLARE_OBJECT_NAME): Remove unnecessary
	do...while (0) block.
	* config/mips/mips-protos.h (mips_declare_object_name): Declare.
	(mips_finish_declare_object): Declare.
	* config/mips/mips.c (mips_declare_object_name): New function.
	(mips_finish_declare_object): New function.

5252 5253 5254
	* config/mips/elf.h (SBSS_SECTION_ASM_OP): Delete.
	* config/mips/linux.h: Likewise.

5255 5256 5257 5258 5259 5260 5261 5262 5263
	* config/mips/mips.c (inside_function): Delete.
	(file_in_function_warning, ignore_line_number): Delete.
	(mips_output_filename): Don't warn about changing filenames within
	a function.
	(mips_output_lineno): Update accordingly.
	(mips_output_function_prologue): Don't reset the deleted variables.
	* config/mips/mips.h (inside_function): Delete.
	(file_in_function_warning, ignore_line_number): Delete.

5264 5265 5266 5267 5268 5269 5270 5271
	* config/mips/elf.h (OBJECT_FORMAT_COFF, EXTENDED_COFF): Remove undefs.
	* config/mips/elf64.h: Likewise.
	* config/mips/openbsd.h: Likewise.
	* config/mips/iris5.h (OBJECT_FORMAT_COFF): Remove undefs.
	* config/mips/linux.h: Likewise.
	* config/mips/mips.h (OBJECT_FORMAT_COFF, EXTENDED_COFF): Delete.
	(CODE_MASK, MIPS_IS_STAB, MIPS_MARK_STAB, MIPS_UNMARK_STAB): Delete.

5272 5273 5274 5275 5276 5277 5278 5279 5280 5281 5282 5283
	* config.gcc (mips-sgi-irix6*o32, mips-sgi-irix5*): Add mips/sdb.h
	to the list of include files when using gas.
	(mips*el-*-openbsd*, mips*-*-openbsd*): Add mips/sdb.h unconditionally.
	* config/mips/elf.h: Remove #undef SDB_DEBUGGING_INFO.
	* config/mips/elf64.h: Likewise.
	* config/mips/iris5.h: Likewise.
	* config/mips/linux.h: Likewise.
	* config/mips/iris5gas.h (SDB_DEBUGGING_INFO): Remove definition.
	* config/mips/mips.h (PREFERRED_DEBUGGING_TYPE): Likewise.
	(SDB_DEBUGGING_INFO, sdb*, SDB_ALLOW_*, PUT_SDB*): Move to...
	* config/mips/sdb.h: ...this new file.

Nathanael Nerode committed
5284 5285 5286 5287 5288 5289 5290 5291 5292 5293
2003-07-14  Douglas Rupp  <rupp@gnat.com>

	* fixinc/server.c (server_setup): Don't use non-POSIX NULL first
	argument to getcwd; use fixed buffer instead.

2003-07-14  Nathanael Nerode  <neroden@gcc.gnu.org>

	* fixinc/mkfixinc.sh: Treat OpenBSD normally.
	* fixinc/fixinc.wrap: Delete.

5294 5295 5296 5297 5298 5299 5300 5301 5302 5303 5304 5305 5306 5307 5308 5309 5310 5311 5312 5313 5314 5315
2003-07-14  Dan Nicolaescu  <dann@ics.uci.edu>

	* ggc-page.c (extra_order_size_table): Insns have 9 slots. Regs
	don't have 2.

2003-07-14  Dan Nicolaescu  <dann@ics.uci.edu>

	* ggc-page.c (struct globals): Add new fields to keep track of the
	total allocated memory and overhead.
	(ggc_print_statistics): Print them.
	(ggc_alloc): Keep track of the total allocated memory and the
	overhead.

	* tree.c (dump_tree_statistics): Increase spacing.
	(enum tree_node_kind): Move to ...
	* tree.h (enum tree_node_kind): ... here.
	(tree_node_counts, tree_node_sizes): Declare.

2003-07-14  James A. Morrison  <ja2morri@student.math.uwaterloo.ca>

	* doc/include/texinfo.tex: Upgrade to texinfo 4.6.

5316 5317 5318 5319 5320 5321
2003-07-14  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>

	PR optimization/11440
	* gcse.c (try_replace_reg): Don't attach notes to ZERO_EXTRACT or
	SIGN_EXTRACT SETs.

5322 5323 5324 5325 5326 5327 5328 5329 5330 5331 5332 5333 5334 5335 5336 5337 5338 5339 5340 5341 5342 5343 5344 5345 5346 5347 5348 5349 5350 5351 5352 5353 5354 5355 5356 5357
2003-07-14  Alan Modra  <amodra@bigpond.net.au>

	* doc/tm.texi (BLOCK_REG_PADDING): Describe.
	* expr.h (struct locate_and_pad_arg_data): Add where_pad.
	(emit_group_load, emit_group_store): Adjust declarations.
	Remove most occurrences of #ifdef TREE_CODE.
	* expr.c (emit_group_load): Add "type" param, and use
	BLOCK_REG_PADDING to determine need for a shift.  Optimize non-
	aligned accesses if !SLOW_UNALIGNED_ACCESS.
	(emit_group_store): Likewise.
	(emit_push_insn, expand_assignment, store_expr, expand_expr): Adjust
	emit_group_load and emit_group_store calls.
	* calls.c (store_unaligned_arguments_into_pseudos): Tidy.  Use
	BLOCK_REG_PADDING to determine whether we need endian_correction.
	(load_register_parameters): Localize vars.  Handle shifting of
	small values to the correct end of regs.  Adjust emit_group_load
	call.
	(expand_call, emit_library_call_value_1): Adjust emit_group_load
	and emit_group_store calls.
	* function.c (assign_parms): Set mem alignment for stack slots.
	Adjust emit_group_store call.  Store values at the "wrong" end
	of regs to the stack.  Use BLOCK_REG_PADDING.
	(locate_and_pad_parm): Save where_pad.
	(expand_function_end): Adjust emit_group_load call.
	* stmt.c (expand_value_return): Adjust emit_group_load call.
	* Makefile.in (calls.o): Depend on $(OPTABS_H).
	* config/rs6000/linux64.h (TARGET_LITTLE_ENDIAN): Redefine as 0.
	(AGGREGATE_PADDING_FIXED, AGGREGATES_PAD_UPWARD_ALWAYS): Define.
	(MUST_PASS_IN_STACK): Define.
	(BLOCK_REG_PADDING): Define.
	* config/rs6000/rs6000.h (struct rs6000_args): Remove orig_nargs.
	(PAD_VARARGS_DOWN): Define in terms of FUNCTION_ARG_PADDING.
	* config/rs6000/rs6000.c (init_cumulative_args): Don't set orig_nargs.
	(function_arg_padding): !AGGREGATE_PADDING_FIXED compatibility code.
	Act on AGGREGATES_PAD_UPWARD_ALWAYS.

5358 5359 5360 5361
2003-07-13  Aaron W. LaFramboise  <awlaframboise@aol.com>

	* config/i386/gthr-win32.c (__GTHREAD_HIDE_WIN32API): Define to 1.

5362 5363 5364 5365 5366
2003-07-13  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>

	* expr.c (expand_expr, case COMPONENT_REF): If reg, copy OP0 to MEM
	both if OFFSET specified and if result BLKmode for ARRAY_RANGE_REF.

5367 5368 5369 5370 5371
2003-07-13  Nathanael Nerode  <neroden@gcc.gnu.org>

	PR other/11123
	* toplev.c: Don't cut off option names.

5372 5373 5374 5375 5376
2003-07-13  Andreas Jaeger  <aj@suse.de>

	* c-decl.c (link_hash_hash): Avoid warning about casting pointer
	to integer of different size.

5377 5378 5379 5380 5381
2003-07-13  Kazu Hirata  <kazu@cs.umass.edu>

	* combine.c (simplify_comparison): Convert (ne (and (not X) 1) 0)
	to (eq (and X 1) 0).

5382 5383 5384 5385
2003-07-13  Andreas Jaeger  <aj@suse.de>

	* config.gcc: Add pmmintrin.h for x86_64-*-*.

5386 5387 5388 5389 5390 5391 5392 5393 5394 5395 5396 5397 5398 5399 5400 5401 5402 5403 5404 5405 5406 5407
2003-07-13  Zack Weinberg  <zack@codesourcery.com>

	* Makefile.in (LIBCPP_DEPS): Remove coretypes.h and $(TM_H).
	(hashtable.o, line-map.o, mkdeps.o): Likewise, from dependency
	list.  Move these all together down by cpplib.

	* cpplib.h: Don't refer to MAX_WCHAR_TYPE_SIZE when determining
	definition of CPPCHAR_SIGNED_T.

	* cppcharset.c, cpperror.c, cppexp.c, cppfiles.c, cpphash.c, cppinit.c
	* cpplex.c, cpplib.c, cppmacro.c, cpppch.c, cpptrad.c, hashtable.c
	* line-map.c, mkdeps.c: Don't include coretypes.h or tm.h.

	* cpphash.c (_cpp_init_hashtable): Don't use gcc_obstack_init.
	* cppinit.c (cpp_create_reader): Likewise.

	* cpphash.h (scan_out_logical_line): Rename _cpp_scan_out_logical_line.
	* cpptrad.c: Likewise.  All callers changed.
	* cpplib.c: All callers changed.
	* c-ppoutput.c: Replace 'uchar' with 'unsigned char' throughout.
	* hashtable.h: Define GTY(x) to nothing here too.

5408 5409 5410 5411 5412
2003-07-13  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>

	* stor-layout.c (compute_record_mode): Remove very obsolete test
	that forces BLKmode for records with fields crossing word boundary.

5413 5414 5415 5416
2003-07-13  Zack Weinberg  <zack@codesourcery.com>

	* Makefile.in: Remove orphan reference to acconfig.h.

5417 5418 5419 5420
2003-07-13  Andreas Jaeger  <aj@suse.de>

	* cgraphunit.c: Convert prototypes to ISO C90.

5421 5422 5423 5424 5425 5426
2003-07-13  Nathanael Nerode  <neroden@gcc.gnu.org>

	* fixinc/inclhack.def (avoid_wchar_t_type): Use __cplusplus bypass
	(for OpenBSD).
	* fixinc/fixincl.x: Rebuild.

5427 5428 5429 5430 5431 5432
2003-07-12  Zack Weinberg  <zack@codesourcery.com>

	* configure.in: Always define HAVE_AS_GOTOFF_IN_DATA for
	i?86-*-*.  Use correct name of cache variable.
	* configure: Regenerate.

5433 5434
2003-07-12  Kazu Hirata  <kazu@cs.umass.edu>

5435 5436 5437 5438 5439 5440 5441 5442 5443 5444
	* config/alpha/alpha.c: Fix comment typos.
	* config/alpha/alpha.md: Likewise.
	* config/arm/arm.c: Likewise.
	* config/arm/arm.md: Likewise.
	* config/arm/lib1funcs.asm: Likewise.
	* config/avr/avr.md: Likewise.
	* config/arm/README-interworking: Fix typos.

2003-07-12  Kazu Hirata  <kazu@cs.umass.edu>

5445 5446 5447 5448 5449 5450 5451 5452 5453
	* c-format.c: Fix comment formatting.
	* c-typeck.c: Likewise.
	* coverage.c: Likewise.
	* cppcharset.c: Likewise.
	* cpplib.c: Likewise.
	* dbxout.c: Likewise.
	* gcov-io.h: Likewise.
	* toplev.c: Likewise.

5454 5455
2003-07-12  Nathanael Nerode  <neroden@gcc.gnu.org>

5456
	* fixinc/inclhack.def (alpha_sbrk): Note that OpenBSD needs this
5457 5458
	fix.

5459 5460 5461 5462 5463 5464 5465 5466 5467 5468 5469 5470 5471 5472 5473 5474
2003-07-12  Zack Weinberg  <zack@codesourcery.com>

	* aclocal.m4 (gcc_AC_CHECK_TYPE): Clone of AC_CHECK_TYPE,
	uses three-argument AC_DEFINE so no acconfig.h entries are
	needed.
	(_gcc_COMPUTE_GAS_VERSION): Also provide gcc_cv_gas_vers
	which contains the GAS version number as a scaled integer.
	(gcc_GAS_VERSION_GTE_IFELSE): Use gcc_cv_gas_vers.  Add
	ability to check for ELF assembler.
	(gcc_GAS_CHECK_FEATURE): New macro.
	* configure.in: Use gcc_AC_CHECK_TYPE.  Rewrite all
	assembler feature checks using gcc_GAS_CHECK_FEATURE.
	Use three-argument AC_DEFINE everywhere.
	* acconfig.h: Deleted.
	* config.in, configure: Regenerate.

5475 5476
2003-07-12  Nathanael Nerode  <neroden@gcc.gnu.org>

5477 5478
	* fixinc/inclhack.def (struct_sockaddr): Avoid "fixing" sockaddr_in
	(on OpenBSD).
5479
	* fixinc/fixincl.x: Regenerate.
5480

5481 5482
	* fixinc/inclhack.def (gnu_types): Improve comment.

5483 5484 5485 5486 5487 5488 5489 5490 5491 5492 5493 5494
2003-07-12  Andreas Jaeger  <aj@suse.de>

	* fp-test.c (main): Use ISO C90 prototype.

	* version.c: Remove unneded include of ansidecl.h.

	* cgraph.h: Convert prototypes to ISO C90.
	* cgraph.c: Likewise.
	* fix-header.c: Likewise.
	* ra.h: Likewise.
	* protoize.c: Likewise.

5495 5496 5497 5498 5499
Sat Jul 12 06:09:38 CEST 2003  Jan Hubicka  <jh@suse.cz>

	* cgraphunit.c (cgraph_inlined_into, cgraph_inlined_calees): Fix
	warning.

5500 5501 5502 5503 5504 5505 5506 5507 5508 5509 5510 5511 5512 5513 5514 5515 5516 5517 5518 5519 5520 5521 5522 5523 5524 5525 5526 5527 5528
Sat Jul 12 03:06:01 CEST 2003  Jan Hubicka  <jh@suse.cz>
			       Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>

	* cgraph.c (cgraph_max_uid): New global variable.
	(cgraph_node): Set uid field.
	(create_edge): Keep inline flags consistent.
	(dump_cgraph): Dump more info.
	* cgraph.h (struct cgraph_local_info): Remove inline_many and
	can_inline_once; add inlinable, disgread_inline_limits, and self_insn
	(struct cgraph_global_info): Add insns, calls, cloned_times,
	will_be_output.
	(struct cgraph_node): Add uid.
	(struct cgraph_edge): Add inline_call.
	(cgraph_max_uid, cgraph_inline_p): Declare.
	* cgraph.c: Include params.h and fibheap.h
	(cgraph_mark_functions_to_inline_once): Kill.
	(INSNS_PER_CALL): New constant.
	(ncalls_inlined, nfunctions_inlined, initial_insns, overall_insns): New
	static variables.
	(cgraph_finalize_function): Do not analyze inlining.
	(cgraph_finalize_compilation_unit): Set inlining attributes.
	(cgraph_mark_functions_to_output): More consistency checks.
	(cgraph_optimize_function): Set current_function_decl to NULL.
	(cgraph_expand_function): Use new inline flags.
	(cgraph_postorder): Expand from cgraph_expand_functions.
	(INLINED_TIMES, SET_INLINED_TIMES): New macros.
	(cgraph_inlined_into, cgraph_inlined_callees,
	cgraph_estimate_size_after_inlining, cgraph_estimate_growth,
	cgraph_mark_inline, cgraph_check_inline_limits,
5529
	cgraph_default_inline_p, cgraph_decide_inling_of_small_functions,
5530 5531 5532 5533 5534 5535 5536 5537
	cgraph_decide_inlining, cgraph_inline_p): New functions.
	* params.def (PARAM_LARGE_FUNCTION_INSNS, PARAM_LARGE_FUNCTION_GROWTH,
	PARAM_INLINE_UNIT_GROWTH): New parameters.
	* tree-inline.c (struct inline_data): New field current_decl.
	(expand_call_inline): Avoid forward declarations; use
	inlinable_function_p.
	(optimize_inline_calls): Set id.current_decl.

5538 5539 5540 5541 5542 5543
2003-07-11  Andrew Pinski  <pinskia@physics.uc.edu>

	* configure.in: Remove wrongly added definition of
	local_prefix.
	* configure: Regenerate.

5544 5545 5546 5547
2003-07-11  Dan Nicolaescu  <dann@ics.uci.edu>

	* rtl.def (NOTE): Do not use padding.

Dara Hazeghi committed
5548 5549 5550 5551
2003-07-11  Dara Hazeghi  <dhazeghi@yahoo.com>

	* doc/install.tex: Update required binutils for i?86-*-linux*

5552 5553 5554 5555
2003-07-11  Richard Henderson  <rth@redhat.com>

	* Makefile.in (stage1_build): Force OBJS-onestep=OBJS.

5556 5557 5558 5559 5560
2003-07-11  Mark Mitchell  <mark@codesourcery.com>

	* varasm.c (make_decl_rtl): Treat decls with a DECL_CONTEXT of
	TRANSLATION_UNIT_DECL as top_level.

5561 5562 5563 5564 5565 5566 5567 5568 5569 5570 5571 5572 5573 5574 5575 5576 5577 5578 5579 5580
2003-07-11  Jakub Jelinek  <jakub@redhat.com>

	* optabs.c (prepare_cmp_insn): Try cmpmemM first if it exists,
	then fall back to cmpstrM.
	* builtins.c (expand_builtin_memcmp): Likewise.
	* config/s390/s390-protos.h (s390_expand_cmpstr): Rename to...
	(s390_expand_cmpmem): ... this.
	* config/s390/s390.md (cmpmemdi, cmpmemsi, cmpmem_short_64,
	cmpmem_short_31, cmpmem_long_64, cmpmem_long_31): Renamed
	from cmpstr* patterns.  Rename call to s390_expand_cmpstr
	to s390_expand_cmpmem.
	* config/s390/s390.c (s390_expand_cmpstr): Rename to...
	(s390_expand_cmpstr): ... this.  Rename cmpstr* instructions
	to cmpmem*.
	* config/i370/i370.md (cmpmemsi, cmpmemsi_1): Renamed from
	cmpstr* patterns.
	* doc/md.texi (cmpstrM): Describe as String compare insn, not
	Block compare insn.
	(cmpmemM): Add.

5581 5582 5583 5584 5585 5586 5587
2003-07-11  Loren James Rittle  <ljrittle@acm.org>

	* config/i386/freebsd.h (SET_ASM_OP): Remove.
	(SUBTARGET_OVERRIDE_OPTIONS): Handle TARGET_64BIT case.
	(ASM_COMMENT_START, ASM_APP_ON, ASM_APP_OFF, DBX_REGISTER_NUMBER
	 MCOUNT_NAME, SIZE_TYPE, PTRDIFF_TYPE, WCHAR_TYPE_SIZE): Whitespace.

5588 5589 5590 5591 5592 5593 5594
2003-07-11  Richard Henderson  <rth@redhat.com>

	* function.c (assign_parms): Don't recombine complex args if
	fnargs is unchanged from orig_fnargs.
	(split_complex_args): Return args without complex before copying.
	Re-layout the modified parameters.

5595 5596 5597 5598 5599 5600 5601 5602
2003-07-11  J"orn Rennecke <joern.rennecke@superh.com>

	* regclass.c (choose_hard_reg_mode): Add third argument.
	Changed all callers.
	* rtl.h (choose_hard_reg_mode): Update declaration.
	* dwarf2out.c (expand_builtin_init_dwarf_reg_sizes):
	Take HARD_REGNO_CALL_PART_CLOBBERED into account.

Geoffrey Keating committed
5603 5604 5605 5606 5607
2003-07-11  Geoffrey Keating  <geoffk@apple.com>

	* c-decl.c (finish_decl): Handle 'used' here...
	* cgraphunit.c (cgraph_finalize_function): ... and here ...
	* c-common.c: (handle_used_attribute): ... not here.
5608

Geoffrey Keating committed
5609 5610 5611 5612 5613 5614 5615 5616 5617
	* configure.in (onstep): Support --enable-intermodule.
	* Makefile.in (OBJS-common): New.
	(OBJS-md): New.
	(OBJS-archive): New.
	(OBJS): Build from OBJS-common, OBJS-md, OBJS-archive.
	(OBJS-onestep): New.
	(libbackend.a): Support @onestep@.
	(libbackend.o): New.
	* configure: Regenerate.
5618

Geoffrey Keating committed
5619 5620 5621 5622 5623 5624 5625 5626 5627 5628 5629 5630 5631 5632 5633 5634 5635 5636 5637 5638 5639 5640 5641 5642 5643 5644 5645 5646 5647 5648 5649 5650 5651 5652 5653 5654 5655 5656 5657 5658 5659 5660 5661 5662 5663 5664 5665 5666 5667 5668 5669 5670 5671 5672 5673 5674 5675 5676 5677 5678 5679 5680 5681 5682 5683 5684 5685 5686 5687 5688 5689 5690 5691 5692 5693
	* c-common.h (c_reset_state): New prototype.
	(c_parse_file): New prototype.
	(finish_file): Move prototype from c-tree.h.
	* c-decl.c: Include <hashtab.h>.
	(builtin_decls): New.
	(current_file_decl): New.
	(duplicate_decls): Add extra parameter. Change all callers.  Don't
	output duplicate common symbols.
	(link_hash_hash): New.
	(link_hash_eq): New.
	(poplevel): Handle popping of the top level.
	(warn_if_shadowing): Handle TRANSLATION_UNIT_DECL.
	(pushdecl): Set DECL_CONTEXT to TRANSLATION_UNIT_DECL if appropriate.
	(pushdecl_top_level): Likewise.
	(redeclaration_error_message): Handle TRANSLATION_UNIT_DECL.
	(c_init_decl_processing): Create TRANSLATION_UNIT_DECL.
	(finish_decl): Handle TRANSLATION_UNIT_DECL.
	(merge_translation_unit_decls): New.
	(c_write_global_declarations): New.
	(c_reset_state): New.
	(implicitly_declare): Handle TRANSLATION_UNIT_DECL.
	* c-lang.c (LANG_HOOKS_WRITE_GLOBALS): New.
	* c-objc-common.c (c_cannot_inline_tree_fn): Handle
	TRANSLATION_UNIT_DECL.
	(c_objc_common_finish_file): Call merge_translation_unit_decls.
	* c-opts.c (in_fnames): Rename from in_fname.
	(c_common_decode_option): Handle multiple input filenames.
	(c_common_post_options): Likewise.
	(c_common_parse_file): Likewise; also, call c_parse_file rather than
	yyparse.
	* c-parse.in: Move cleanup code to c_parse_file.
	(free_parser_stacks): Move contents to c_parse_file.
	(c_parse_file): New.
	* c-tree.h (union lang_tree_node): Chain along TYPE_NEXT_VARIANT
	for integer types.
	(C_DECL_FILE_SCOPE): New.
	(finish_file): Move prototype to c-common.h.
	(merge_translation_unit_decls): New prototype.
	(comptypes): Add extra parameter to prototype.
	(c_write_global_declarations): New prototype.
	* c-typeck.c (tagged_types_tu_compatible_p): New.
	(function_types_compatible_p): Add extra parameter, change all callers.
	(type_lists_compatible_p): Likewise.
	(comptypes): Likewise.
	(struct tagged_tu_seen): New.
	(tagged_tu_seen_base): New.
	(build_unary_op): Handle TRANSLATION_UNIT_DECL.
	(c_mark_addressable): Remove #if 0 code.
	* calls.c (special_function_p): Handle TRANSLATION_UNIT_DECL, add
	comment explaining why it shouldn't have to.
	* cgraph.h (struct cgraph_node): Add chain_next and chain_prev GTY
	options.
	* cppinit.c (cpp_read_next_file): New.
	(cpp_read_main_file): Use it.
	* cpplib.c (undefine_macros): New.
	(cpp_undef_all): New.
	* cpplib.h (cpp_read_next_file): Prototype.
	(cpp_undef_all): Prototype.
	* langhooks-def.h (write_global_declarations): Remove prototype.
	* toplev.h (write_global_declarations): Add prototype.
	* tree.c (decl_type_context): Use switch statement, handle
	TRANSLATION_UNIT_DECL.
	* tree.def: Update documentation for TRANSLATION_UNIT_DECL.
	(TRANSLATION_UNIT_DECL): New kind of tree.
	* tree.h: Update documentation for TRANSLATION_UNIT_DECL.
	* Makefile.in (c-decl.o): Add $(HASHTAB_H) to dependencies.
	* doc/invoke.texi: Make attempt to document new functionality.

	2003-05-19  Per Bothner <bothner@apple.com>

	* gcc.c (combine_inputs): New.
	(process_command): Set combine_inputs.
	(do_spec_1): Handle combine_inputs.
	(main): Likewise.

5694 5695 5696 5697 5698 5699
2003-07-10  James E Wilson  <wilson@tuliptree.org>

	PR optimization/9745
	* loop.c (loop_iv_add_mult_emit_before): Call loop_regs_update before
	loop_insn_emit_before.
	(loop_iv_add_mult_sink, loop_iv_add_mult_hoist): Likewise.
5700

5701 5702 5703 5704 5705 5706 5707 5708 5709
2003-07-10  Zack Weinberg  <zack@codesourcery.com>

	* cppcharset.c: Fix comment.
	(iconv_close [!HAVE_ICONV]): #define to (void)0 to prevent warning.
	(EILSEQ): #define to EINVAL if not already defined.
	(convert_using_iconv): #if out when !HAVE_ICONV.
	(init_iconv_desc): Handle !HAVE_ICONV here...
	(cpp_init_iconv): ...not here.

5710 5711 5712 5713 5714 5715 5716
2003-07-11  Neil Booth  <neil@daikokuya.co.uk>

	* common.opt: More --help messages.
	* opts.c (print_help): Use puts().
	* toplev.c (f_options): Remove help text.
	(display_help): Don't dump f_options.

5717 5718 5719 5720 5721 5722
2003-07-11  Nathanael Nerode  <neroden@gcc.gnu.org>

	* fixinc/mkfixinc.sh: Drop reference to unsupported alpha-*-interix*.
	Move i?86-*-interix* to the don't-fix list.
	* fixinc/fixinc.interix: Delete with extreme prejudice.

5723 5724 5725 5726 5727
2003-07-10  Dara Hazeghi  <dhazeghi@yahoo.com>

	PR bootstrap/10758
	* doc/install.texi: Document requirements for ia64-*-hpux* target.

5728 5729 5730 5731
2003-07-10  Roger Sayle  <roger@eyesopen.com>

	* config/ia64/hpux.h (TARGET_C99_FUNCTIONS): Define.

5732 5733 5734 5735 5736 5737 5738 5739 5740 5741 5742 5743 5744 5745 5746 5747 5748 5749 5750 5751 5752 5753 5754 5755 5756 5757 5758
2003-07-10  Zack Weinberg  <zack@codesourcery.com>

	* cppcharset.c (one_utf8_to_cppchar, one_cppchar_to_utf8,
	one_utf8_to_utf32, one_utf32_to_utf8, one_utf8_to_utf16,
	one_utf16_to_utf8, conversion_loop, convert_utf8_utf16,
	convert_utf8_utf32, convert_utf16_utf8,	convert_utf32_utf8,
	convert_no_conversion, convert_using_iconv): New functions.
	(APPLY_CONVERSION): New macro.
	(struct conversion, conversion_tab): New data structure.
	(init_iconv_desc): Check conversion_tab for a custom conversion
	primitive before trying to use iconv.
	(convert_cset): Deleted.
	(cpp_init_iconv): Use UTF- terminology, not UCS-.
	(_cpp_destroy_iconv): Update to match.
	(_cpp_valid_ucn): We don't need iconv to implement UCNs.
	(convert_ucn): Use one_cppchar_to_utf8 and APPLY_CONVERSION.
	(convert_escape, cpp_interpret_string): Use APPLY_CONVERSION.
	(_cpp_interpret_string_notranslate): New function, moved here
	from cpplib.c.

	* cpphash.h (convert_f, struct cset_converter): New types.
	(struct cpp_reader): narrow_cset_desc and wide_cset_desc
	are now struct cset_converter, not bare iconv_t.
	Update prototypes.
	* cpplib.c (interpret_string_notranslate): Moved to cppcharset.c;
	all callers changed.

Kelley Cook committed
5759
2003-07-10  Kelley Cook  <kelleycook@wideopenwest.com>
5760

Kelley Cook committed
5761 5762 5763 5764
	* Makefile.in (options.h): Depend on Makefile.  Add move-if-change
	to opts.sh command line.
	* opts.sh: Write to temporary files with a move-if-change at the end.

Kazu Hirata committed
5765
2003-07-10  Denis Chertykov  <denisc@overta.ru>
5766
	    Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
5767 5768 5769 5770

	* combine.c (gen_binary): Handle the CLOBBER rtx and
	don't build a binary operation with it.

5771 5772 5773 5774 5775 5776
2003-07-10  Zdenek Dvorak  <rakdver@atrey.karlin.mff.cuni.cz>

	* gcse.c (load_kills_store, find_loads, store_killed_in_insn,
	store_killed_after, store_killed_before): Keep track of the correct
	dependency function to use.

5777 5778 5779 5780
2003-07-10  Steven Bosscher  <steven@gcc.gnu.org>
	* toplev.c (do_compile): Don't try to open dump files before
	lang_dependent_init initializes dump_base_name.

5781 5782 5783 5784 5785 5786 5787
2003-07-10  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>

	* config/arm/arm.c (arm_init_iwmmxt_builtins, arm_expand_builtin):
	Use ARRAY_SIZE.
	* config/frv/frv.c (frv_expand_builtin): Likewise.
	* config/sh/sh.c (sh_media_init_builtins): Likewise.

5788 5789 5790 5791 5792 5793
2003-07-09  Mark Mitchell  <mark@codesourcery.com>

	PR c++/10032
	* doc/invoke.texi (C++ Dialect Options): Change documentation of
	-fpermissive.

5794 5795 5796 5797
2003-07-10  J"orn Rennecke <joern.rennecke@superh.com>

	* tm.texi (RETURN_ADDR_OFFSET): Document.

5798 5799 5800 5801 5802 5803 5804 5805 5806 5807 5808 5809 5810 5811 5812 5813 5814 5815 5816 5817 5818 5819 5820 5821 5822 5823 5824 5825 5826 5827 5828 5829 5830
2003-07-10  Nathan Sidwell  <nathan@codesourcery.com>

	* gcov-io.h: Update documentation.
	(GCOV_UNSIGNED2STRING): New.
	(GCOV_TAG_FUNCTION_LENGTH, GCOV_TAG_BLOCKS_LENGTH,
	GCOV_TAG_ARCS_LENGTH, GCOV_TAG_COUNTER_LENGTH,
	GCOV_TAG_SUMMARY_LENGTH): Adjust.
	(GCOV_TAG_BLOCKS_NUM, GCOV_TAG_ARCS_NUM,
	GCOV_TAG_COUNTER_NUM): New.
	(GCOV_BLOCK_SIZE): Number of words.
	(gcov_var): Adjust buffer type.
	* gcov-io.c (gcov_write_bytes, gcov_read_bytes): Rename to ...
	(gcov_write_words, gcov_read_words): ... here. Take a 4-byte word
	count, not byte count.
	(gcov_open): Adjust overread init.
	(gcov_allocate, gcov_write_unsigned, gcov_write_counter,
	gcov_write_string, gcov_write_tag, gcov_write_length,
	gcov_write_tag_length): Adjust.
	(gcov_read_unsigned, gcov_read_counter, gcov_read_string): Adjust.
	(gcov_sync, gcov_seek): Adjust.
	* gcov-dump.c (print_usage): Show gcc version only.
	(dump_file): Use GCOV_UNSIGNED2STRING.
	(tag_blocks, tag_arcs, tag_counters): Use GCOV_TAG_*_NUM macros.
	* gcov.c (print_version): Show gcc version only.
	(read_graph_file): Use GCOV_UNSIGNED2STRING. Use
	GCOV_TAG_*_NUM macros.
	(read_count_file): Use GCOV_UNSIGNED2STRING. Use
	GCOV_TAG_COUNTER_LENGTH.
	* coverage.c (read_counts_file): Use GCOV_UNSIGNED2STRING.
	Use GCOV_TAG_COUNTER_NUM.
	* libgcov.c (gcov_version): Use GCOV_UNSIGNED2STRING.
	(__gcov_merge_single, __gcov_merge_delta): Use GCOV_CHECK.

5831 5832 5833 5834
2003-07-10  Andreas Schwab  <schwab@suse.de>

	* gcov-dump.c (dump_file): Fix missing address operator.

5835 5836
2003-07-10  Kazu Hirata  <kazu@cs.umass.edu>

5837 5838 5839 5840 5841 5842 5843 5844
	PR c/11449
	* fold-const.c (sign_bit_p): Return EXP if VAL is the sign bit
	of HOST_WIDE_INT.
	(fold_single_bit_test): If sign_bit_p() fails, assume that the
	bit being tested is not a sign bit.

2003-07-10  Kazu Hirata  <kazu@cs.umass.edu>

5845 5846
	* config/h8300/h8300.md (a peephole2): New.

Alexandre Oliva committed
5847 5848 5849 5850 5851 5852 5853 5854 5855 5856 5857 5858 5859 5860 5861 5862 5863 5864 5865 5866 5867 5868 5869 5870 5871 5872 5873 5874
2003-07-10  Alexandre Oliva  <aoliva@redhat.com>

	2001-12-13  Alexandre Oliva  <aoliva@redhat.com>
	* config/mn10300/linux.h (LINK_SPEC): Rename the dynamic linker
	from ld-linux.so.2 to ld.so.1.
	2001-11-18  Alexandre Oliva  <aoliva@redhat.com>
	* config/mn10300/linux.h (LINK_SPEC): -lpthread, not -lthread.
	* config/mn10300/linux.h (LINK_SPEC): Don't handle -Wl,-rpath
	nor -Wl,-rpath-link.
	(LIB_SPEC): Add -rpath-link if !static.
	2001-08-22  Alexandre Oliva  <aoliva@redhat.com>
	* config/mn10300/mn10300.c (mn10300_protect_label): New
	variable.
	* config/mn10300/linux.h (PRINT_OPERAND,
	PRINT_OPERAND_ADDRESS): Set it during their execution.
	(ASM_OUTPUT_LABELREF): Output `+' before symbol name if
	mn10300_protect_label is set.
	* config/mn10300/linux.h (LINK_SPEC): Recognize -Wl,-rpath and
	-Wl,-rpath-link.
	(LIB_SPEC, STARTFILE_SPEC): Define.
	2001-05-11  Alexandre Oliva  <aoliva@redhat.com>
	* config/mn10300/t-linux (dp-bit.c, fp-bit.c): Don't define
	FLOAT_BIT_ORDER_MISMATCH.
	2001-05-09  Alexandre Oliva  <aoliva@redhat.com>
	* config.gcc (am33_2.0-*-linux*): Added.
	* config/mn10300/linux.h: New.
	* config/mn10300/t-linux: New.

5875 5876 5877 5878
2003-07-10  Andreas Jaeger  <aj@suse.de>

	* fold-const.c: Properly wrap prototypes.

5879 5880
2003-07-09  Alexandre Oliva  <aoliva@redhat.com>

Alexandre Oliva committed
5881 5882 5883 5884 5885 5886 5887 5888 5889 5890 5891 5892 5893 5894 5895 5896 5897 5898 5899 5900 5901 5902 5903 5904 5905 5906 5907 5908 5909 5910 5911 5912 5913 5914 5915 5916 5917 5918 5919 5920 5921 5922 5923 5924 5925 5926 5927 5928 5929 5930 5931 5932 5933 5934 5935 5936 5937 5938 5939 5940 5941 5942 5943 5944 5945 5946 5947 5948 5949
	2003-06-16  Alexandre Oliva  <aoliva@redhat.com>
	* config/mn10300/mn10300.c (mn10300_unspec_int_label_counter):
	Moved from...
	* config/mn10300/mn10300.md (GOTaddr2picreg): ... here.
	* config/mn10300/mn10300.h: GTY-declare it.
	2003-06-11  Alexandre Oliva  <aoliva@redhat.com>
	* config/mn10300/mn10300.c (mn10300_encode_section_info): Fix
	prototype.  Use incoming RTL argument.
	2002-12-12  Alexandre Oliva  <aoliva@redhat.com>
	* config/mn10300/mn10300.md (int_label): Move C statements...
	(GOTaddr2picreg): ... here.
	2002-08-15  Alexandre Oliva  <aoliva@redhat.com>
	* config/mn10300/mn10300.h (ENCODE_SECTION_INFO): Move...
	* config/mn10300/mn10300.c (mn10300_encode_section_info):
	... here.  New function.
	(TARGET_ENCODE_SECTION_INFO): Define to it.
	2001-11-04  Alexandre Oliva  <aoliva@redhat.com>
	* config/mn10300/mn10300.md (builtin_setjmp_receiver): Fix typo in
	pattern name.
	(mn10300_loadPC): Define as insn splittable after reload.
	2001-05-13  Alexandre Oliva  <aoliva@redhat.com>
	* config/sh/mn10300.h (JUMP_TABLES_IN_TEXT_SECTION): Let them
	be defined in .rodata even in PIC, now that the assembler
	supports that.
	2001-05-09  Alexandre Oliva  <aoliva@redhat.com>
	* config/mn10300/mn10300.h (GOT_SYMBOL_NAME): Don't let the
	symbol take an underscore prefix.
	2001-04-14  Alexandre Oliva  <aoliva@redhat.com>
	* config/mn10300/mn10300-protos.h (legitimate_pic_operand_p,
	legitimize_pic_address): Declare.
	* config/mn10300/mn10300.h (CONDITIONAL_REGISTER_USAGE): Mark
	the PIC register as fixed.
	(EXTRA_CONSTRAINT): Match UNSPEC_PLT and UNSPEC_PIC for 'S'.
	(GO_IF_LEGITIMATE_ADDRESS): Require legitimate_pic_operand for
	PIC.
	(LEGITIMATE_PIC_OPERAND_P): Define.
	(PIC_OFFSET_TABLE_REGNUM): Define.
	(GOT_SYMBOL_NAME): Define.
	(SYMBOLIC_CONST_P): Define.
	(ENCODE_SECTION_INFO): Use SYMBOL_REF_FLAG to mark local
	symbols.
	(MN10300_GLOBAL_P): Test it.
	(OUTPUT_ADDR_CONST_EXTRA): Handle PIC-related unspecs.
	(JUMP_TABLES_IN_TEXT_SECTION): Enable for PIC.
	* config/mn10300/mn10300.c (print_operand): Handle unspec.
	(expand_prologue): Set PIC register.
	(call_address_operand): Don't match SYMBOL_REFs in PIC.
	(legitimize_address): Call legitimize_pic_address.
	(legitimize_pic_address): New fn.
	(legitimate_pic_operand_p): New fn.
	* config/mn10300/mn10300.md (PIC_REG, SP_REG): New constants.
	(UNSPEC_INT_LABEL, UNSPEC_PIC, UNSPEC_GOT, UNSPEC_GOTOFF,
	UNSPEC_PLT): New constants.
	(pop_pic_reg): New insn.
	(movsi): Adjust non-PIC addresses.
	(builtin_setjmp_receiver): Restore the PIC register.
	(casesi): New insn.
	(call): Adjust non-PIC addresses.
	(int_label, GOTaddr2picreg): New expands.
	(am33_loadPC): New insn.
	(mn10300_loadPC): New expand.
	(call_next_insn): New insn.
	(add_GOT_to_pic_reg): New expand.
	(symGOT2reg, symGOT2reg_i): New expands.
	(symGOTOFF2reg, symGOTOFF2reg_i): New expands.
	(sym2PIC, sym2PLT): New expands.

2003-07-09  Alexandre Oliva  <aoliva@redhat.com>

5950 5951 5952 5953 5954 5955 5956 5957 5958 5959 5960 5961 5962 5963 5964 5965 5966 5967 5968 5969 5970 5971 5972 5973 5974 5975 5976 5977 5978 5979 5980 5981 5982 5983 5984 5985 5986 5987 5988 5989 5990 5991 5992 5993 5994 5995 5996 5997 5998 5999 6000 6001 6002 6003 6004 6005 6006 6007 6008 6009 6010 6011 6012 6013 6014 6015 6016 6017 6018 6019 6020 6021 6022 6023 6024 6025 6026 6027 6028 6029 6030 6031 6032 6033 6034 6035 6036 6037 6038 6039 6040 6041 6042 6043 6044 6045 6046 6047 6048 6049 6050 6051 6052 6053 6054 6055 6056 6057 6058 6059 6060 6061 6062 6063
	* config/mn10300/mn10300.h (PREDICATE_CODES): Define.
	2001-05-01  Alexandre Oliva  <aoliva@redhat.com>
	* config/mn10300/mn10300.md (sqrtsf2): flag_fast_math was renamed
	to flag_unsafe_math_optimizations.
	2001-04-14  Alexandre Oliva  <aoliva@redhat.com>
	* config/mn10300/mn10300.c (expand_prologue): Mark
	FP-register-saving insns as frame-related.
	2001-02-13  Alexandre Oliva  <aoliva@redhat.com>
	* config/mn10300/mn10300.c
	(mn10300_get_live_callee_saved_regs): Don't search past
	LAST_EXTENDED_REGNUM.
	(mn10300_gen_multiple_store, store_multiple_operation): Likewise.
	* config/mn10300/mn10300.md: Remove excessive line breaks from
	`@' output patterns that were accounted as additional
	alternatives.
	* config/mn10300/mn10300.md, config/mn10300/mn10300.c:
	Re-introduce changes accidentally removed in Richard Sandiford's
	2000-12-05's patch.
	* config/mn10300/t-mn10300 (MULTILIB_OPTIONS, MULTILIB_DIRNAMES):
	Re-instate am33-2 lost in merge from net GCC.
	2000-08-26  Alexandre Oliva  <aoliva@redhat.com>
	* config/mn10300/mn10300.h (DBX_REGISTER_NUMBER): Added
	floating-point registers.
	2000-08-07  Alexandre Oliva  <aoliva@redhat.com>
	* config/mn10300/mn10300.md (movdf): Revert some am33-specific
	pessimizations that had gone in on 2000-05-08.
	2000-06-28  Graham Stott  <grahams@cygnus.co.uk>
	* config/mn10300/mn10300.h (REG_CLASS_CONTENTS): Fix typo.
	2000-06-22  Graham Stott  <grahams@cygnus.co.uk>
	* config/mn10300/mn10300.md (movqi): Use nonimmediate_operand for
	operand 0.
	* (movhi): Likewise.
	* (movsi): Likewise.
	* (movsf): Likewise.
	* (movdi): Likewise.
	* (movdf): Likewise.
	Wed May 24 13:16:09 2000  Alexandre Oliva  <aoliva@cygnus.com>
	* config/mn10300/mn10300.c (fp_regs_to_save): New function.
	(can_use_return_insn, initial_offset): Add fp_regs_to_save.
	(expand_prologue, expand_epilogue): Save and restore FP regs.
	2000-05-20  Alexandre Oliva  <aoliva@cygnus.com>
	* config/mn10300/mn10300.md (movdi, movdf): 64-bit clean-up.
	2000-05-13  Alexandre Oliva  <aoliva@cygnus.com>
	* config/mn10300/mn10300.md (abssf2, negsf2, rsqrtsf2, addsf3,
	subsf3, mulsf3, divsf3, fmaddsf4, fmsubsf4, fnmaddsf4, fnmsubsf4):
	Do not clobber cc0.
	2000-05-12  Alexandre Oliva  <aoliva@cygnus.com>
	* config/mn10300/mn10300.md (abssf2, negsf2, rsqrtsf2):
	Discourage the two-argument, longer opcodes.
	(addsf3, subsf3, mulsf3, divsf3): Likewise for three-argument
	ones.
	* config/mn10300/mn10300.h (struct mn10300_cc_status_mdep): New.
	(CC_STATUS_MDEP, CC_STATUS_MDEP_INIT): Define.
	* config/mn10300/mn10300.md (cmpsf): New pattern.
	(branch): Test mdep.fpCC and output fbCC.
	* config/mn10300/mn10300.c (print_operand): Output conditions.
	(notice_cc_update): Recognize fcmp and set mdep.fpCC.
	2000-05-10  Alexandre Oliva  <aoliva@cygnus.com>
	* config/mn10300/mn10300.md (movsf, movdf, addsf3, subsf3,
	mulsf3, divsf3): Use the `F' constraint for FP values.
	* config/mn10300/mn10300.c (const_1f_operand): New function.
	* config/mn10300/mn10300-protos.h (const_1f_operand): Declare.
	* config/mn10300/mn10300.md (sqrtsf2): New expand.
	(rsqrtsf2): New insn.
	2000-05-09  Alexandre Oliva  <aoliva@cygnus.com>
	* config/mn10300/mn10300.md (movdf): Oops, I missed it in my
	previous check-in.
	2000-05-08  Alexandre Oliva  <aoliva@cygnus.com>
	* config/mn10300/mn10300.md (abssf2, negdf2): On
	TARGET_AM33_2, expand to...
	(abssf2_am33_2, negdf2_am33_2): New insns.
	(addsf3, subsf3, mulsf3, divsf3): Likewise.
	(fmaddsf4, fmsubsf4, fnmaddsf4, fnmsubsf4): Likewise.
	* config/mn10300/mn10300.md (movqi, movhi, movsi, movsf,
	movdi, movdf): Added FP regs.
	* invoke.texi (-mam33-2, -mno-am33-2): Document.
	2000-04-29  Alexandre Oliva  <aoliva@cygnus.com>
	* config/mn10300/mn10300.h (FIRST_FP_REGNUM, LAST_FP_REGNUM):
	New macros.
	(REGNO_AM33_2_FP_P): Renamed to...
	(REGNO_FP_P): Redefine in terms of FIRST_* and LAST_*.
	(CONDITIONAL_REGISTER_USAGE, REGNO_REG_CLASS): Likewise.
	2000-04-27  Alexandre Oliva  <aoliva@cygnus.com>
	* config/mn10300/mn10300.h (REG_CLASS_CONTENTS): Remove FP
	regs from GENERAL_REGS.
	2000-04-27  Alexandre Oliva  <aoliva@cygnus.com>
	* config/mn10300/mn10300.h (REGNO_AM33_2_FP_P): New macro.
	* config/mn10300/mn10300.c (mn10300_address_cost): Added FP_REGS.
	* config/mn10300/mn10300.h (REGISTER_MOVE_COST): Added FP_REGS.
	2000-04-23  Alexandre Oliva  <aoliva@cygnus.com>
	* config/mn10300/mn10300.h (CLASS_CANNOT_CHANGE_SIZE): Defined
	as FP_REGS.
	2000-04-21  Alexandre Oliva  <aoliva@cygnus.com>
	* config/mn10300/mn10300.h (OK_FOR_Q): New macro.
	(EXTRA_CONSTRAINT): Added OK_FOR_Q.
	* config/mn10300/mn10300.c (secondary_reload_class): Adjust.
	* config/mn10300/mn10300.c (print_operand): Support `D' for doubles.
	* config/mn10300/mn10300.h (FIRST_PSEUDO_REGISTER): Adjust.
	(FIXED_REGISTERS, CALL_USED_REGISTERS, REG_ALLOC_ORDER): Added
	AM33/2.0 floating-point registers.
	(CONDITIONAL_REGISTER_USAGE): Adjust.
	(enum reg_class, REG_CLASS_NAMES): Added FP_REGS and FP_ACC_REGS.
	(REG_CLASS_CONTENTS, REGNO_REG_CLASS): Adjust.
	(REG_CLASS_FROM_LETTER): Added `f' and `A'.
	(REGISTER_NAMES, ADDITIONAL_REGISTER_NAMES): Adjust.
	* config/mn10300/t-mn10300 (MULTILIB_OPTIONS): Added am33-2.
	(MULTILIB_DIRNAMES): Likewise.
	* config/mn10300/mn10300.h (CPP_SPEC): Define `__AM33__=2' and
	`__AM33_2__' when `-mam33-2' is given.
	(TARGET_AM33_2): Define.
	(TARGET_SWITCHES): Adjust.
	* config/mn10300/mn10300.c (asm_file_start): Print `.am33_2'
	when appropriate.

6064 6065 6066 6067
2003-07-09  Matt Kraai  <kraai@alumni.cmu.edu>

	* doc/install.texi: Add missing @.

6068 6069 6070 6071
2003-07-09  Bob Wilson  <bob.wilson@acm.org>

	* config/xtensa/xtensa.h (CRT_CALL_STATIC_FUNCTION): Define.

6072 6073 6074 6075 6076
2003-07-09  Aldy Hernandez  <aldyh@redhat.com>

	PR/11144
	* config/i386/i386.c (ix86_function_arg_boundary): Remove abort.

6077 6078
2003-07-09  Nathanael Nerode  <neroden@gcc.gnu.org>

6079
	PR bootstrap/11043
6080
	* config/arc/t-arc: Replace bogus references to "x-crtinit.o",
6081 6082
	"x-crtfini.o" with "crtinit.o", "crtfini.o".

6083 6084 6085
	* fixinc/inclhack.def (limits_ifndefs): Add select test.
	* fixinc/fixincl.x: Rebuild.

6086 6087 6088
	* fixinc/inclhack.def (math_exception):  Improve bypass and comment.
	* fixinc/fixincl.x: Rebuild.

6089 6090 6091 6092 6093
2003-07-09  Hans-Peter Nilsson  <hp@bitrange.com>

	* doc/install.texi (Configuration): Document the valgrind option
	to --enable-checking.

6094 6095 6096 6097
Wed Jul  9 16:16:30 CEST 2003  Jan Hubicka  <jh@suse.cz>

	* objc-lang.c (LANG_HOOKS_TREE_INLINING_ESTIMATE_NUM_INSNS): New.

6098 6099 6100 6101
2003-07-09  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>

	* c-lex.c (cb_ident): Cast cstr.text to const char *.

6102 6103
2003-07-09  Nathan Sidwell  <nathan@codesourcery.com>

6104 6105 6106 6107 6108 6109 6110 6111 6112 6113 6114 6115 6116 6117 6118 6119 6120 6121 6122 6123 6124 6125 6126 6127 6128 6129 6130 6131 6132 6133 6134 6135 6136 6137 6138
	* gcov-io.h: Update documentation.
	(GCOV_GRAPH_SUFFIX, GCOV_GRAPH_MAGIC): Rename to GCOV_NOTE_SUFFIX,
	GCOV_NOTE_MAGIC.
	(GCOV_DATA_SUFFIX, GCOV_NOTE_SUFFIX): Update.
	(GCOV_DATA_MAGIC, GCOV_NOTE_MAGIC): Make non-palindromic.
	(struct gcov_var): Change buffer's type. Add endian flag.
	(gcov_open): Remove mode in libgcov.
	(gcov_magic): Prototype.
	* gcov-io.c (from_file): New.
	(gcov_open): Clear endian flag.
	(gcov_magic): New.
	(gcov_write_bytes, gcov_read_bytes): Return gcov_unsigned_t
	pointers.
	(gcov_write_unsigned, gcov_write_counter, gcov_write_string,
	gcov_write_tag, gcov_write_length, gcov_write_tag_length): Update.
	(gcov_read_unsigned, gcov_read_counter, gcov_read_string): Update.
	* gcov-iov.c (main): Correct cast.
	* coverage.c (read_counts_file): Use gcov_magic. Remove endianness
	conversion.
	(gcov_begin_output): Use GCOV_NOTE_MAGIC.
	(coverage_init): Use GCOV_NOTE_SUFFIX.
	* libgcov.c (gcov_version_mismatch): Remove endianness conversion.
	Rename to gcov_version, and return flag.
	(gcov_exit): Use gcov_version.
	(__gcov_init): Use gcov_version.
	* Makefile.in (coverageexts): Update.
	* gcov.c (print_version): Remove endianness conversion.
	(create_file_names): Use GCOV_NOTE_SUFFIX.
	(read_graph_file): Use gcov_magic.
	(read_count_file): Likewise.
	* gcov-dump.c (dump_file): Remove endianness conversion, use
	gcov_magic.

2003-07-09  Nathan Sidwell  <nathan@codesourcery.com>

6139 6140 6141 6142 6143
	* configure.in (BUILD_PREFIX, BUILD_PREFIX_1): Set if enable
	coverage is on.
	* configure: Regenerated.
	* Makefile.in (ALL_CFLAGS): Correct its comment.

6144 6145 6146 6147 6148
2003-07-08  Mark Mitchell  <mark@codesourcery.com>

	* fold-const.c (make_range): Do not access operand 1 for a
	zero-operand operator.

6149 6150 6151 6152 6153 6154
2003-07-09  Neil Booth  <neil@daikokuya.co.uk>

	* toplev.c (warn_dummy, W_options): Die.
	(display_help): Don't print W_options.
	* common.opt: Add W_options help from toplev.c.

6155 6156 6157 6158 6159
2003-07-09  Andreas Jaeger  <aj@suse.de>

	* opts.c (wrap_help): Only pass int arguments as arguments to
	printf's '*' modifier.  Change argument of function.

6160 6161 6162 6163
2003-07-08  Matt Kraai  <kraai@alumni.cmu.edu>

	* doc/invoke.texi: Fix misspelling of "@item".

6164 6165 6166 6167 6168
2003-07-08  Kazu Hirata  <kazu@cs.umass.edu>

	* config/i386/i386.md: Remove an old comment about
	NOTICE_UPDATE_CC.

6169 6170 6171 6172 6173 6174 6175 6176 6177 6178 6179 6180 6181 6182 6183 6184 6185 6186 6187
Wed Jul  9 03:00:10 CEST 2003  Jan Hubicka  <jh@suse.cz>

	* cgraph.c (cgraph_node_name): New function.
	(dump_cgraph): Use it.
	* cgraph.h (cgraph_dump_file): Declare.
	(cgraph_node_name): Declare.
	* cgraphunit.c: Include timevar.h
	(cgraph_finalize_compilation_unit): Use timevar; reorganize dumps.
	(cgraph_optimize_function): Use TV_INTEGRATION.
	(cgraph_mark_local_functions): reorganize dumps.
	(cgraph_mark_functions_to_inline_once): Likewise.
	(cgraph_optimize): Likewise; use timevar.
	* timevar.def (TV_CGRAPH, TV_CGRAPHOPT): New.
	* toplev.c (dump_file_index): Add DFI_cgraph.
	(dump_file_info): Likewise.
	(cgraph_dump_file): New global variable.
	(do_compile): Open and close cgraph dump.
	* invoke.texi (-d): Document new flag; renumber.

6188 6189 6190 6191 6192 6193 6194
2003-07-08  Roger Sayle  <roger@eyesopen.com>

	PR c/11370
	* calls.c (emit_call_1): Don't bother popping the arguments off of
	the stack after a noreturn function call;  The adjustment is dead.
	(expand_call): Likewise.

6195 6196 6197 6198 6199
2003-07-08  Geoffrey Keating  <geoffk@apple.com>

	* expr.c (MOVE_MAX_PIECES): Move from here...
	* defaults.h (MOVE_MAX_PIECES): ... to here.

6200 6201 6202 6203
2003-07-08  Matt Kraai  <kraai@alumni.cmu.edu>

	* Makefile.in (stage1-start): Handle an empty SUBDIRS.

6204 6205
2003-07-08  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>

6206 6207 6208 6209 6210 6211 6212 6213 6214 6215 6216 6217 6218 6219
	* genattr.c (internal_dfa_insn_code): Don't prototype.
	* genattrtab.c (attr_desc): Add `static_p' field.
	(expand_units): Make blockage range and ready cost functions
	static.
	(write_attr_get): Don't add extern prototypes in C file.  Mark
	static functions as appropriate.
	(find_attr, make_internal_attr): Initialize static_p.
	* genattrtab.h (ATTR_STATIC): New macro.
	* genautomata.c (output_internal_reset_func): Mark output function
	as inline.
	(make_internal_dfa_insn_code_attr): Mark output function as static.

2003-07-08  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>

6220 6221 6222 6223 6224
	* genattrtab.h: Add new macros for attr `special' flags.
	* genattrtab.c (attr_desc): Reorder/resize fields better.
	Use attr `special' macros in all calls to make_internal_attr.
	* genautomata.c: Likewise.

6225 6226 6227 6228 6229 6230 6231 6232 6233 6234 6235 6236 6237 6238 6239 6240 6241 6242 6243 6244 6245 6246 6247 6248 6249
Wed Jul  9 02:25:39 CEST 2003  Jan Hubicka  <jh@suse.cz>

	* c-common.c (c_estimate_num_insns_1): New static function.
	(c_estimate_num_insns): New global function.
	* c-common.h (DECL_NUM_STMTS): Rename to...
	(DECL_ESTIMATED_INSNS): ... this.
	(c_estimate_num_insns): Declare.
	* c-decl.c (duplicate_decls): Use DECL_ESTIMATED_INSNS.
	* c-lang.c (LANG_HOOKS_TREE_INLINING_ESTIMATE_NUM_INSNS): New.
	* c-semantics.c (add_stmt): Do not account statements.
	* langhooks-def.h (LANG_HOOKS_TREE_INLINING_ESTIMATE_NUM_INSNS):
	New.
	* langhooks.h (lang_hooks_for_tree_inlining): Add
	estimate_num_insns
	* params.def (max-inline-insns-auto, max-inline-insns-auto): set
	to 100.
	(max-inline-insns): set to 300.
	(min-inline-insns): set to 10.
	* tree-inline.c (struct inline_data): Rename inlined_stmts to
	inlined-insns.
	(INSNS_PER_STMT): Kill.
	(inlinable_function_p): Compute and store body size.
	(expand_call_inline): Likewise.
	(optimize_inline_calls): Likewise.

6250 6251 6252 6253 6254 6255
2003-07-08  James E Wilson  <wilson@tuliptree.org>

	PR target/10021
	* emit-rtl.c (set_mem_attribute_minus_bitpos): When handle ARRAY_REF,
	loop over new variable t2 instead of t.

6256 6257 6258 6259 6260 6261
2003-07-08  Danny Smith  <dannysmith@users.sourceforge.net>

	PR bootstrap/11455
	* config/i386/winnt.c: Replace use of error(), warning() with
	error_with_decl(), warning_with_decl(),  throughout.

6262 6263 6264 6265
2003-07-08  Neil Booth  <neil@daikokuya.co.uk>

	* opts.c (wrap_help): Use unsigned int, not size_t.

6266 6267 6268 6269 6270
2003-07-08  Stephane Carrez  <stcarrez@nerim.fr>

	* config/m68hc11/m68hc11.h (HAVE_AS_DWARF2_DEBUG_LINE): Don't define
	as .file/.loc directives are incompatible with linker relaxation.

6271 6272 6273 6274 6275 6276 6277 6278 6279 6280
2003-07-08  Zack Weinberg  <zack@codesourcery.com>

	* Makefile.in (fixinc.sh): Remove gnu-regex.[ch] from dependencies.
	* fixinc/Makefile.in: Remove all references to gnu-regex.[och].
	* fixinc/fixfixes.c, fixinc/fixincl.c, fixinc/fixlib.c
	* fixinc/fixtests.c: Use xregexec not regexec, xregcomp not regcomp.
	* fixinc/fixlib.h: Include xregex.h not gnu-regex.h.
	* fixinc/inclhack.def (hpux10_cpp_pow_inline, hpux11_cpp_pow_inline):
	Escape { and } characters which are not part of range expressions.
	* fixinc/fixincl.x: Regenerate.
Zack Weinberg committed
6281
	* fixinc/gnu-regex.c, fixinc/gnu-regex.h: Delete file.
6282

6283 6284 6285 6286 6287 6288 6289 6290 6291
2003-07-08  Steven Bosscher  <steven@gcc.gnu.org>

	PR c/1687
	* tree-inline.c (find_alloca_call): Use
	walk_tree_without_duplicates, instead of walk_tree.
	(find_builtin_longjmp_call): Likewise.
	* c-objc-common.c (c_cannot_inline_fn): Likewise.
	* c-semantics.c (find_reachable_label): Likewise.

6292 6293 6294 6295 6296 6297 6298 6299
2003-07-08  Jakub Jelinek  <jakub@redhat.com>

	PR c/11420
	* config/i386/i386.c (ix86_check_movabs): New function.
	* config/i386/i386-protos.h (ix86_check_movabs): New prototype.
	* config/i386/i386.md (movabs[shqd]i_1_rex64): Kill broken alternative.
	(movabs[shqd]i_[12]_rex64): Add ix86_check_movabs check to conditions.

6300 6301 6302 6303
2003-07-08  Chris Demetriou  <cgd@broadcom.com>

	* Makefile.in (install-po): Cope with empty CATALOGS.

6304 6305 6306 6307 6308 6309 6310 6311 6312 6313 6314 6315 6316 6317 6318 6319 6320 6321 6322 6323 6324 6325 6326 6327 6328 6329 6330 6331 6332 6333 6334 6335 6336 6337 6338 6339
2003-07-08  Richard Sandiford  <rsandifo@redhat.com>

	* config/mips/elf64.h (TARGET_ASM_UNIQUE_SECTION): Delete.
	(EXTRA_SECTIONS, EXTRA_SECTION_FUNCTIONS): Delete.
	(SECTION_FUNCTION_TEMPLATE): Delete.
	* config/mips/elf.h: As for elf64.h.
	(ASM_OUTPUT_ALIGNED_BSS): Use named_section rather than sbss_section.
	* config/mips/linux.h: As for elf.h
	* config/mips/iris6gld.h (TARGET_ASM_UNIQUE_SECTION): Delete.
	* config/mips/iris6.h (EXTRA_SECTIONS): Delete.
	(EXTRA_SECTION_FUNCTIONS): Remove sdata_section.  Remove the handling
	of in_sdata from current_section_name and current_section_flags.
	* config/mips/iris6gld.h (TARGET_ASM_UNIQUE_SECTION): Delete.
	* config/mips/mips.h (sdata_section, sbss_section): Remove prototypes.
	(MASK_GP_OPT, TARGET_GP_OPT): Delete.
	(MASK_NO_FUSED_MADD): Use MASK_GP_OPT's old value.
	(TARGET_SWITCHES): Neuter gpOPT, gpopt, no-gpOPT and no-gpopt.
	(SMALL_DATA_SECTION, EXTRA_SECTIONS, EXTRA_SECTION_FUNCTIONS): Remove.
	* config/mips/mips.c (TARGET_IN_SMALL_DATA_P): Override.
	(TARGET_SECTION_TYPE_FLAGS): Override if TARGET_IRIX6.
	(mips_classify_symbol): Use SYMBOL_REF_SMALL_P.
	(override_options): Remove setting of MASK_GPOPT.
	(mips_output_external): Use mips_in_small_data_p to check whether a
	symbol needs an .extern directive.  Don't emit such directives for
	TARGET_EXPLICIT_RELOCS.
	(mips_declare_object): Update accordingly.
	(mips_select_rtx_section): Call named_section rather than
	SMALL_DATA_SECTION.
	(mips_select_section): Use default_elf_section_section for everything
	except .text string constants.
	(mips_in_small_data_p): New function.
	(mips_encode_section_info): Remove small data handling.
	(mips_unique_section): Delete.
	(iris6_section_type_flags): New function.
	* doc/tm.texi: Remove documentation of -mgpopt and -mhalf-pic.

6340 6341 6342 6343 6344 6345
2003-07-08  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>

	PR Target/11453
	* pa.md: Disparage all mtsar constraints.
	(extzv, extv, insv): Don't fail on length of {32|64}.

6346 6347 6348 6349 6350 6351 6352 6353
2003-07-08  Zack Weinberg  <zack@codesourcery.com>

	* system.h: Poison MAP_CHARACTER.
	* config/i370/i370-protos.h (mvs_map_char): Delete.
	* config/i370/i370.c (ascebc, ebcasc, mvs_map_char): Delete.
	* config/i370/i370.h (MAP_CHARACTER): Delete definition.
	(ASM_OUTPUT_ASCII): Don't use MAP_CHARACTER.

6354 6355 6356 6357
2003-07-08  Danny Smith  <dannysmith@users.sourceforge.net>

	* toplev.c (randomize): Correct call to time().

6358 6359 6360 6361 6362
2003-07-08  Jakub Jelinek  <jakub@redhat.com>

	* unroll.c (reg_dead_after_loop): Check for reg in REG_EQUAL and
	REG_EQUIV notes as well.

6363 6364 6365 6366
2003-07-08  Kazu Hirata  <kazu@cs.umass.edu>

	* doc/md.texi: Fix the description of addmodecc.

6367 6368 6369 6370 6371 6372 6373 6374 6375 6376 6377 6378 6379 6380 6381 6382 6383 6384 6385 6386 6387 6388 6389 6390
2003-07-07  Zack Weinberg  <zack@codesourcery.com>

	* Makefile.in (top_builddir): Set to "..", not ".".
	(INTLLIBS, INTLDEPS): Delete.
	(LIBINTL, LIBINTL_DEP, LIBICONV_DEP): New variables to be substituted.
	(LIBDEPS): Add $(LIBICONV_DEP).
	(LIBS): Take out $(INTLLIBS), add $(LIBINTL) and $(LIBICONV).
	(INCLUDES): Replace -I../intl with @INCINTL@.
	($(top_builddir)/intl/libintl.a): Delete rule.
	(stage2-start, stage3-start, stage4-start, stageprofile-start,
	stagefeedback-start): Use $$ for variable to be evaluated by
	shell, not make.
	* acconfig.h (ENABLE_NLS, HAVE_CATGETS, HAVE_GETTEXT,
	HAVE_LC_MESSAGES, HAVE_STPCPY): Delete.
	* aclocal.m4: sinclude ../config/progtest.m4.  Add
	contents of lcmessage.m4 from gettext distro.
	* configure.in: Check for wchar.h and setlocale.  Set
	LIBICONV_DEP to the empty string and substitute it.
	Call AM_LC_MESSAGES.  Delete AC_ARG_ENABLE for --enable-nls;
	this is handled elsewhere.  Use ZW_GNU_GETTEXT_SISTER_DIR,
	not CY_GNU_GETTEXT.  Clear $LIBICONV if its text is included
	in $LIBINTL, to avoid linking it twice.
	* configure, config.in: Regenerate.

6391 6392 6393 6394 6395
2003-07-08  Nathanael Nerode  <neroden@gcc.gnu.org>

	* fixinc/mkfixinc.sh: Remove winnt support.
	* fixinc/fixinc.winnt: Delete with extreme prejudice.

Neil Booth committed
6396 6397 6398 6399 6400 6401 6402 6403 6404 6405 6406 6407 6408 6409 6410
2003-07-08  Neil Booth  <neil@daikokuya.co.uk>

	* Makefile.in: Update.
	* c-opts.c (c_common_handle_option): opt_text now contains the '-'.
	* c.opt: Update documentation.
	* common.opt: Add some help text.
	* opts.c: Include intl.h.
	(wrap_help, print_help): New.
	(find_opt, handle_option, common_handle_option): opt_text now
	contains the '-'.  Use print_help to output help.
	* opts.h (struct cl_option): New member "help".
	* opts.sh: Update to handle help text output and to prepend
	options with '-'.
	* toplev.c (display_help): Remove some help text.

6411 6412 6413 6414 6415 6416 6417 6418 6419 6420 6421 6422 6423 6424 6425 6426 6427
2003-07-07  David Edelsohn  <edelsohn@gnu.org>
	    Fariborz Jahanian  <fjahanian@apple.com>

	* configure.in: Test for PowerPC mfcr field support in assembler.
	* config.in, configure: Regenderated.

	* config/rs6000/power4.md: Add mfcrf reservation.
	* config/rs6000/rs6000-protos.h (mfcr_operation): Declare.
	* config/rs6000/rs6000.c (mfcr_operation): Define.
	(print_operand): Add 'Q' case for mfcrf.
	* config/rs6000/rs6000.h (TARGET_MFCRF): New.
	* config/rs6000/rs6000.md (attribute "type"): Add mfcrf.
	(movcc_internal1): Emit optional field operand for mfcr and set
	"type" attribute appropriately.
	(mfcr SCC): Likewise.
	(movesi_from_cr_one): New.

6428 6429 6430 6431
2003-07-07  Roger Sayle  <roger@eyesopen.com>

	* config/i386/i386.md: Correct check-in of incorrect version.

6432 6433 6434 6435 6436 6437 6438 6439 6440
2003-07-07  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>

	* bitmap.c (debug_bitmap_file): Merge uses of HOST_PTR_PRINTF with
	adjacent stdio calls.
	* c-decl.c (c_print_identifier): Likewise.
	* mips-tfile.c (write_varray, write_object, allocate_cluster): Likewise.
	* print-rtl.c (print_rtx): Likewise.
	* print-tree.c (print_node_brief, print_node): Likewise.
	* system.h (HOST_PTR_PRINTF): Ensure we have a literal string.
6441

6442 6443 6444
	* configure.in (AC_COMPILE_CHECK_SIZEOF): Check for `void *'.
	* config.in, configure: Regenerated.

6445 6446 6447 6448 6449 6450 6451 6452 6453
2003-07-07  Roger Sayle  <roger@eyesopen.com>

	PR target/10979
	* config/i386/i386.md (atan2df3, atan2sf3, atan2xf3, atan2tf3):
	Changed to define_expand patterns that copy operand[1] to prevent
	it from being clobbered before emitting an atan2?f3_1 insn.
	(atan2df3_1, atan2sf3_1, atan2xf_1, atan2tf3_1): New define_insn
	patterns that actually specify the behaviour of x87's FPATAN.

6454 6455 6456 6457 6458 6459 6460
2003-07-07  Jakub Jelinek  <jakub@redhat.com>

	* config/rs6000/rs6000.c (rs6000_output_mi_thunk): Remove bogus
	clearing of SYMBOL_FLAG_LOCAL bit.
	If vcall_offset fits into signed 16-bit immediate, use
	one instruction for both addition and load.

6461 6462 6463 6464 6465
2003-07-07  Neil Booth  <neil@daikokuya.co.uk>

	* opts.c (common_handle_option): Correct handling of the
	-falign- switches that do and don't take an argument.

6466 6467 6468 6469 6470 6471
2003-07-07  Kazu Hirata  <kazu@cs.umass.edu>

	* config/h8300/h8300.md (pushqi1_h8300hs): Revert my patch
	today.
	(pushhi1_h8300hs): Likewise.

6472 6473 6474 6475 6476 6477 6478 6479 6480 6481 6482 6483 6484
2003-07-07  Andreas Jaeger  <aj@suse.de>

	* genextract.c: Convert remaining prototypes to ISO C90.

	* cpplex.c (_cpp_free_buff): Convert prototype to ISO C90.
	* fold-const.c (fold_single_bit_test): Likewise.
	* diagnostic.c (default_diagnostic_finalizer): Likewise.
	* cfgrtl.c (rtl_redirect_edge_and_branch): Likewise.

	* gengtype.c (write_array): Generate ISO C90 prototypes.

	* genflags.c (gen_proto): Generate ISO C90 prototypes.

6485 6486 6487 6488 6489 6490 6491 6492 6493 6494 6495 6496
2003-07-07  Roger Sayle  <roger@eyesopen.com>

	PR optimization/11059
	* expr.c (can_store_by_pieces): Return true if length is zero.
	(store_by_pieces): If length is zero and endp is two, abort,
	othwerise, if length is zero and endp is not two, return "to".
	(clear_by_pieces): Do nothing if length is zero.
	(clear_storage): Do nothing if length is zero.
	(store_constructor): Simplify code when size is zero, or the
	target has already been cleared.  This avoids emitting a
	blockage instruction when initializing empty structures.

6497 6498 6499 6500 6501
2003-07-07  Andreas Jaeger  <aj@suse.de>

	* mips-tfile.c: Convert prototypes to ISO C90.
	* mips-tdump.c: Convert prototypes to ISO C90.

6502 6503 6504 6505 6506 6507 6508 6509 6510 6511 6512 6513 6514 6515 6516 6517 6518 6519 6520 6521 6522 6523 6524
2003-07-07  Nathan Sidwell  <nathan@codesourcery.com>

	* rtl.h (emit_line_note): Take a location_t.
	(emit_line_note_force): Remove.
	(set_file_and_line_for_statement): Take a location_t.
	* tree.g (emit_line_note): Take a location_t.
	* emit-rtl.c (emit_line_note): Take a location_t.
	(emit_line_note_force): Remove.
	* function.c (init_function_start): Adjust emit_line_note call.
	(expand_function_end): Use force_next_line_note, not
	emit_line_note_force.
	* c-parse.in (maybe_type_qual): Adjust emit_line_note calls.
	* c-semantics.c (genrtl_do_pushlevel, genrtl_goto_stmt,
	genrtl_expr_stmt_value, genrtl_decl_stmt, genrtl_if_stmt,
	genrtl_while_stmt, genrtl_do_stmt_1, genrtl_return_stmt,
	genrtl_for_stmt, genrtl_break_stmt, genrtl_continue_stmt,
	genrtl_continue_stmt, genrtl_switch_stmt,
	genrtl_asm_stmt): Likewise.
	* expr.c (expand_expr): Likewise.
	* integrate.c (expand_inline_function): Likewise.
	* stmt.c (set_file_and_line_for_stmt): Take a location_t.
	(expand_decl_init): Adjust emit_line_note call.

Dale Johannesen committed
6525 6526
2003-07-07  Dale Johannesen  <dalej@apple.com>

6527
	* config/rs6000/darwin-tramp.asm:  Fix trampolines.  PR 10900.
Dale Johannesen committed
6528

6529 6530 6531 6532 6533
2003-07-07  Andreas Jaeger  <aj@suse.de>

	* config/i386/i386-protos.h: Convert prototypes to ISO C90.
	* config/i386/i386.c: Likewise.

6534 6535
2003-07-07  Kazu Hirata  <kazu@cs.umass.edu>

6536 6537 6538 6539 6540
	* config/h8300/h8300.md: Use gen_int_mode instead of
	GEN_INT (trunc_int_for_mode (...)).

2003-07-07  Kazu Hirata  <kazu@cs.umass.edu>

6541 6542 6543 6544
	* config/h8300/h8300.md (pushqi1_h8300hs): Optimize by pushing
	2 bytes and then subtract 2 from the stack pointer.
	(pushhi1_h8300hs): Likewise.

6545 6546 6547 6548 6549 6550 6551 6552 6553 6554
2003-07-07  Nathan Sidwell  <nathan@codesourcery.com>

	* configure.in (enable_coverage): Remove -DSELF_COVERAGE, add
	-frandom-seed.
	* configure: Regenerated.
	* Makefile.in: Remove extraneous comment.
	* toplev.c (randomize): Protect against potential multiple calls.
	* doc/invoke.texi (-frandom-seed): Document use for in coverage
	files.

6555
2003-07-07  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
6556
	    Eric Botcazou  <ebotcazou@libertysurf.fr>
6557 6558 6559 6560 6561

	PR optimization/11198
	* alias.c (objects_must_conflict_p): Return 1 if the types have
	the same alias set, not if the alias sets only conflict.

6562 6563 6564 6565 6566 6567
2003-07-07  Andrew Pinski  <pinskia@physics.uc.edu>

	* cppcharset.c (ICONV_CONST): Define iff !HAVE_ICONV.
	(convert_cset): Change inbuf to type ICONV_CONST char.
	* Makefile.in (LIBS): Add LIBICONV.

6568 6569 6570 6571 6572 6573 6574 6575
	* doc/invoke.texi (-falign-functions): Document that
	when n is zero then a machine-dependent default is used.
	(-falign-labels): Document that when n is zero then a
	machine-dependent default is used and that -falign-labels =1
	is equivalent to -fno-align-labels.
	(-falign-loops): Likewise.
	(-falign-jumps): Likewise.

Art Haas committed
6576 6577 6578 6579 6580
2003-07-06  Art Haas  <ahaas@airmail.net>

	* f/global.c (ffeglobal_type_string_): Fix obsolete GCC array
	initializer syntax.

6581 6582 6583 6584 6585 6586 6587 6588 6589 6590 6591 6592 6593
2003-07-06  James E Wilson  <wilson@tuliptree.org>

	PR optimization/9812
	* rtl.h (mem_for_const_double): Delete prototype.
	* varasm.c (mem_for_const_double): Delete function.
	* config/m68k/hp320.h, config/m68k/linux.h, config/m68k/m68kelf.h,
	config/m68k/m68kv4.h, config/m68k/netbsd-elf.h
	(LEGITIMATE_PIC_OPERAND_P): Delete duplicate definitions.
	* config/m68k/m68k.h (LEGITIMATE_CONSTANT_P): Disallow XFmode.
	(LEGITIMATE_PIC_OPERAND_P): Delete CONST_DOUBLE tests.
	* config/m68k/m68k.md (movxf): Add reload_in_progress guard.  Add
	comment about confused support for XFmode constants.

6594 6595 6596 6597
Mon Jul  7 02:03:56 CEST 2003  Jan Hubicka  <jh@suse.cz>

	* cfglayout.c (fixup_reorder_chain): Call delete_dead_jumptables.

6598 6599 6600 6601 6602 6603 6604 6605 6606 6607 6608 6609 6610 6611 6612 6613 6614 6615 6616
2003-07-06  Kazu Hirata  <kazu@cs.umass.edu>

	* config/h8300/h8300.c: Fix comment typos.
	* config/h8300/h8300.md: Likewise.
	* config/i386/athlon.md: Likewise.
	* config/i386/i386.c: Likewise.
	* config/i386/pentium.md: Likewise.
	* config/ia64/ia64.c: Likewise.
	* config/ia64/itanium1.md: Likewise.
	* config/ia64/itanium2.md: Likewise.
	* config/m32r/m32r.md: Likewise.
	* config/m68hc11/m68hc11.c: Likewise.
	* config/mcore/mcore.c: Likewise.
	* config/mips/sr71k.md: Likewise.
	* config/mips/t-iris5-as: Likewise.
	* config/mmix/mmix.h: Likewise.
	* config/ns32k/ns32k.h: Likewise.
	* config/ns32k/NOTES: Fix a typo.

6617 6618
2003-07-06  Andreas Jaeger  <aj@suse.de>

6619 6620 6621 6622 6623 6624
	* stmt.c: Convert remaining prototypes to ISO C90.
	* cfglayout.c: Likewise.
	* dbxout.c: Likewise.
	* gcc.c: Likewise.
	* genemit.c: Likewise.

6625 6626 6627 6628 6629 6630 6631 6632 6633 6634 6635 6636 6637 6638
	* basic-block.h: Convert prototypes to ISO C90.
	* c-parse.in: Likewise.
	* c-pragma.h: Likewise.
	* c-typeck.c: Likewise.
	* cfghooks.h: Likewise.
	* cfgloopanal.c: Likewise.
	* dbxout.h: Likewise.
	* debug.h: Likewise.
	* dwarf2asm.h: Likewise.
	* gcov.c: Likewise.
	* gengtype-lex.l: Likewise.
	* sched-int.h: Likewise.
	* timevar.c: Likewise.

6639 6640
2003-07-06  Neil Booth  <neil@daikokuya.co.uk>

6641 6642 6643 6644 6645 6646 6647 6648 6649 6650 6651 6652 6653 6654 6655 6656 6657 6658 6659 6660 6661 6662 6663 6664 6665
	* c-common.h (c_comon_handle_filename,
	c_common_missing_arguement): New.
	* c-lang.c (LANG_HOOKS_HANDLE_FILENAME,
	LANG_HOOKS_MISSING_ARGUMENT): New.
	* c-opts.c (missing_arg): Rename c_common_missing_argument,
	update to be an appropriate langhook.
	(c_common_handle_option): Don't handle filenames.
	(c_common_handle_filename): New.
	* hooks.c (hook_void_constcharptr,
	hook_bool_constcharptr_size_t_false): New.
	* hooks.h (hook_void_constcharptr,
	hook_bool_constcharptr_size_t_false): New.
	* langhooks-def.h (LANG_HOOKS_HANDLE_FILENAME,
	LANG_HOOKS_MISSING_ARGUMENT): New.
	(LANG_HOOKS_INITIALIZER): Update.
	* langhooks.h (struct lang_hooks): Add handle_filename and
	missing_argument.
	* opts.c (handle_option): Don't handle filenames here, but ...
	(handle_options): ... here.
	(common_handle_option): Don't handle missing arguments here.
	* objc/objc-lang.c (LANG_HOOKS_HANDLE_FILENAME,
	LANG_HOOKS_MISSING_ARGUMENT): New.

2003-07-06  Neil Booth  <neil@daikokuya.co.uk>

6666 6667 6668 6669 6670 6671 6672 6673 6674 6675 6676 6677
	* Makfile.in: Remove traces of mbchar.
	* c-parse.in (MULTIBYTE_CHARS): Remove.
	* config.in (MULTIBYTE_CHARS): Remove.
	* configure: Remove --enable-mbchar.
	* configure.in: Remove --enable-mbchar.
	* mbchar.c, mbchar.h: Remove.
	* system.h: Poison MULTIBYTE_CHARS.
	* config/linux-aout.h (MULTIBYTE_CHARS): Remove.
	* config/linux.h (MULTIBYTE_CHARS): Remove.
	* config/svr4.h (MULTIBYTE_CHARS): Remove.
	* config/sparc/linux.h (MULTIBYTE_CHARS): Remove.

6678 6679
2003-07-06  Andreas Jaeger  <aj@suse.de>

6680 6681 6682
	* varray.c (varray_check_failed): Fix typo.

	* unroll.c: Convert prototypes to ISO C90.
6683 6684 6685 6686 6687 6688 6689
	* varasm.c: Likewise.
	* varray.c: Likewise.
	* varray.h: Likewise.
	* vmsdbgout.c: Likewise.
	* xcoffout.c: Likewise.
	* xcoffout.h: Likewise.

6690
2003-07-06  Nathan Sidwell  <nathan@codesourcery.com>
6691 6692 6693 6694 6695 6696 6697 6698 6699 6700 6701 6702 6703 6704 6705 6706

	* gcov-io.h: Add a local time stamp.
	(struct gcov_info): Add stamp field.
	(gcov_truncate): New.
	* coverage.c (read_counts_file): Skip the stamp.
	(coverage_begin_output): Write the stamp.
	(build_gcov_info): Declare and init the stamp.
	(coverage_finish): Only unlink data file, if stamp is zero.
	* gcov-dump.c (dump_file): Dump the stamp.
	* gcov.c (bbg_stamp): New.
	(release_structures): Clear bbg_stamp.
	(read_graph_file): Read stamp.
	(read_count_file): Check stamp.
	* libgcov.c (gcov_exit): Check stamp and truncate if needed.

2003-07-06  Nathan Sidwell  <nathan@codesourcery.com>
6707

6708 6709 6710 6711 6712 6713 6714 6715 6716 6717 6718 6719 6720
	* tree.h (default_flag_random_seed): Remove.
	* toplev.h (local_tick): Declare.
	* tree.c (flag_random_seed, default_flag_random_seed): Move to
	toplev.c.
	(append_random_chars): Don't call default_flag_random_seed.
	* toplev.c (flag_random_seed): Define here. Set local_tick.
	(local_tick): Define.
	(randomize): New, moved from tree.c.
	(print_switch_values): Adjust.
	(toplev_main): Call randomize.

2003-07-06  Nathan Sidwell  <nathan@codesourcery.com>

6721 6722 6723 6724 6725
	* tree.h (crc32_string): Declare.
	* tree.c (append_random_chars): Remove.
	(crc32_string): New.
	(get_file_function_name_long): Use crc32_string here.

6726 6727 6728 6729 6730 6731 6732 6733 6734 6735 6736 6737 6738 6739 6740 6741 6742 6743 6744 6745 6746 6747
2003-07-06  Andreas Jaeger  <aj@suse.de>

	* gcc.c: Convert prototypes to ISO C90.
	* gcc.h: Likewise.
	* gcov-dump.c: Likewise.
	* gcov-iov.c: Likewise.
	* gcse.c: Likewise.
	* genattrtab.h: Likewise.
	* ggc.h: Likewise.
	* global.c: Likewise.
	* graph.c: Likewise.
	* graph.h: Likewise.
	* hosthooks.h: Likewise.
	* hooks.h: Likewise.
	* hooks.c: Likewise.
	* hashtable.h: Likewise.
	* hashtable.c: Likewise.
	* haifa-sched.c: Likewise.
	* integrate.h: Likewise.
	* integrate.c: Likewise.
	* input.h: Likewise.
	* ifcvt.c: Likewise.
Andreas Jaeger committed
6748
	* jump.c: Likewise.
6749 6750 6751 6752 6753 6754 6755 6756 6757 6758 6759 6760 6761 6762 6763 6764 6765 6766 6767 6768 6769 6770 6771 6772 6773 6774 6775 6776 6777 6778 6779 6780 6781 6782 6783 6784 6785 6786 6787 6788 6789 6790 6791 6792 6793 6794
	* langhooks-def.h: Likewise.  Add extern to prototypes.
	* langhooks.c: Likewise.
	* langhooks.h: Likewise.
	* lcm.c: Likewise.
	* local-alloc.c: Likewise.
	* loop-init.c: Likewise.
	* loop-unroll.c: Likewise.
	* loop-unswitch.c: Likewise.
	* loop.c: Likewise.
	* loop.h: Likewise. Add extern to prototypes.
	* machmode.h: Likewise.
	* main.c: Likewise.
	* mbchar.c: Likewise.
	* mbchar.h: Likewise.
	* mkdeps.c: Likewise.
	* mkdeps.h: Likewise.
	* optabs.c: Likewise.
	* optabs.h: Likewise.
	* output.h: Likewise.
	* gccspec.c: Likwise.
	* postreload.c: Likewise.
	* prefix.c: Likewise.
	* prefix.h: Likewise.
	* print-rtl.c: Likewise.
	* print-tree.c: Likewise.
	* profile.c: Likewise.
	* read-rtl.c: Likewise.
	* real.c: Likewise.
	* real.h: Likewise.
	* recog.c: Likewise.
	* recog.h: Likewise.
	* reg-stack.c: Likewise.
	* regclass.c: Likewise.
	* regmove.c: Likewise.
	* regrename.c: Likewise.
	* regs.h: Likewise.
	* reload.c: Likewise.
	* reload.h: Likewise.
	* reload1.c: Likewise.
	* reorg.c: Likewise.
	* resource.c: Likewise.
	* resource.h: Likewise.
	* rtl-error.c: Likewise.
	* rtl.c: Likewise.
	* rtl.h: Likewise.
	* rtlanal.c: Likewise.
6795 6796 6797 6798 6799 6800 6801 6802 6803 6804 6805 6806 6807 6808 6809 6810 6811 6812 6813 6814 6815 6816 6817 6818 6819 6820 6821 6822 6823 6824
	* sbitmap.c: Likewise.
	* sbitmap.h: Likewise.
	* scan-decls.c: Likewise.
	* scan.c: Likewise.
	* sched-deps.c: Likewise.
	* sched-ebb.c: Likewise.
	* sched-int.h: Likewise.
	* sched-rgn.c: Likewise.
	* sched-vis.c: Likewise.
	* sibcall.c: Likewise.
	* simplify-rtx.c: Likewise.
	* sreal.c: Likewise.
	* sreal.h: Likewise.
	* ssa-ccp.c: Likewise.
	* ssa-dce.c: Likewise.
	* ssa.c: Likewise.
	* ssa.h: Likewise.
	* stack.h: Likewise.
	* stmt.c: Likewise.
	* stor-layout.c: Likewise.
	* stringpool.c: Likewise.
	* target.h: Likewise.
	* timevar.c: Likewise.
	* timevar.h: Likewise.
	* tlink.c: Likewise.
	* tracer.c: Likewise.
	* tree-inline.c: Likewise.
	* tree-inline.h: Likewise.
	* tree.c: Likewise.
	* tree.h: Likewise.
6825

6826 6827 6828 6829 6830
2003-07-05  Kazu Hirata  <kazu@cs.umass.edu>

	* combine.c (nonzero_bits1): Fix a warning.

2003-07-05  Kazu Hirata  <kazu@cs.umass.edu>
6831 6832 6833 6834

	* config/h8300/h8300.c (compute_mov_length): Correct the
	length of loading CONST0_RTX (SFmode).

6835 6836 6837 6838 6839 6840 6841
2003-07-05  Nathan Sidwell  <nathan@codesourcery.com>

	* toplev.c (output_clean_symbol_name): Remove.
	* toplev.h (output_clean_symbol_name): Remove.
	* config/alpha/alpha.c (unicosmk_output_module_name): Use
	lbasename & clean_symbol_name.

6842 6843
2003-07-05  Kazu Hirata  <kazu@cs.umass.edu>

6844 6845 6846 6847 6848 6849 6850
	* ggc.h: Follow spelling conventions.
	* config/i386/i386.c: Likewise.
	* config/i386/winnt.c: Likewise.
	* config/rs6000/rs6000.c: Likewise.

2003-07-05  Kazu Hirata  <kazu@cs.umass.edu>

6851 6852 6853 6854 6855 6856 6857 6858 6859 6860 6861 6862 6863 6864 6865 6866 6867 6868 6869 6870 6871 6872 6873 6874 6875 6876 6877 6878 6879 6880 6881 6882
	* bt-load.c: Fix comment typos.
	* c-incpath.c: Likewise.
	* cfg.c: Likewise.
	* cfgcleanup.c: Likewise.
	* cfgloop.h: Likewise.
	* cfgloopmanip.c: Likewise.
	* cfgrtl.c: Likewise.
	* diagnostic.h: Likewise.
	* dwarfout.c: Likewise.
	* emit-rtl.c: Likewise.
	* et-forest.c: Likewise.
	* et-forest.h: Likewise.
	* expr.c: Likewise.
	* gcse.c: Likewise.
	* genattr.c: Likewise.
	* jump.c: Likewise.
	* langhooks.h: Likewise.
	* local-alloc.c: Likewise.
	* loop-unroll.c: Likewise.
	* loop-unswitch.c: Likewise.
	* ra-build.c: Likewise.
	* regclass.c: Likewise.
	* regmove.c: Likewise.
	* rtl.def: Likewise.
	* rtlanal.c: Likewise.
	* sched-ebb.c: Likewise.
	* sched-rgn.c: Likewise.
	* simplify-rtx.c: Likewise.
	* ssa.c: Likewise.
	* tracer.c: Likewise.
	* tree.c: Likewise.

6883 6884 6885 6886 6887
2003-07-05  Zack Weinberg  <zack@codesourcery.com>

	* cppcharset.c: Use the correct return type for the fallback iconv
	macro.

6888 6889 6890 6891 6892 6893
Sat Jul  5 16:18:53 CEST 2003  Zdenek Dvorak  <rakdver@atrey.karlin.mff.cuni.cz>

	Blame to Jan Hubicka  <jh@suse.cz>
	* cfglayout.c (record_effective_endpoints): Split insns before
	first basic block correctly.

6894 6895
2003-07-05  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>

6896
	* expr.c (expand_expr, case COMPONENT_REF): When seeing if should use
6897 6898 6899
	bitfield operations, use STRICT_ALIGNMENT, not SLOW_UNALIGNED_ACCESS
	if EXPAND_CONST_ADDRESS or EXPAND_INITIALIZER.

6900 6901 6902 6903 6904 6905 6906 6907
2003-07-05  Andreas Jaeger  <aj@suse.de>

	* genattrtab.c (write_attr_get): Revert part of last patch to
	always write out a prototype.

	* genemit.c (gen_split): Readd lost unused attributes in last
	patch.

6908 6909 6910 6911 6912
2003-07-05  Zdenek Dvorak  <rakdver@atrey.karlin.mff.cuni.cz>

	* cfgloopmanip.c (force_single_succ_latches): Force latch to be
	different from header.

6913 6914 6915 6916 6917
2003-07-05  Andreas Schwab  <schwab@suse.de>

	* config/m68k/m68k.c: Remove code protected by CRDS.
	* config/m68k/m68k.md: Likewise.

6918 6919 6920 6921 6922 6923 6924 6925
2003-07-05  Neil Booth  <neil@daikokuya.co.uk>

	PR driver/11417
	* c-opts.c (permit_fortran_options): New.
	(c_common_init_options): Accept fortran front end options if
	it looks like we might be preprocessing Fortran.
	(c_common_handle_option): Don't reject switch if permit_fotran_options.

6926 6927 6928 6929 6930 6931 6932 6933 6934 6935 6936 6937 6938 6939 6940
2003-07-05  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>

	* genattr.c (internal_dfa_insn_code): Output prototype.
	* genattrtab.c: Don't output unnecessary decls, output in ISO C.
	* genautomata.c: Likewise.
	* genconditions.c: Likewise.
	* genemit.c: Likewise.
	* genextract.c: Likewise.
	* gengenrtl.c: Likewise.
	* gengtype.c: Likewise.
	* genopinit.c: Likewise.
	* genoutput.c: Likewise.
	* genpeep.c: Likewise.
	* genrecog.c: Likewise.

6941 6942 6943 6944 6945 6946 6947 6948 6949 6950 6951 6952 6953 6954 6955 6956 6957 6958 6959 6960 6961 6962 6963 6964 6965 6966 6967 6968 6969 6970 6971 6972 6973 6974 6975 6976 6977 6978 6979 6980 6981 6982 6983 6984 6985 6986 6987 6988 6989 6990 6991 6992 6993 6994 6995 6996 6997 6998 6999 7000 7001 7002 7003 7004 7005 7006 7007 7008 7009 7010 7011 7012 7013 7014 7015 7016 7017 7018 7019 7020 7021 7022 7023 7024 7025
2003-07-04  Zack Weinberg  <zack@codesourcery.com>

	* cpplib.h (CPP_AT_NAME, CPP_OBJC_STRING): New token types.
	(struct cpp_options): Add narrow_charset, wide_charset,
	bytes_big_endian fields.  Remove EBCDIC field.
	(cpp_init_iconv, cpp_interpret_string): New external interfaces.

	* cpphash.h: Include <iconv.h> if we have it, otherwise
	provide a dummy definition of iconv_t.
	(struct cpp_reader): Add narrow_cset_desc and wide_cset_desc fields.
	(_cpp_valid_ucn): Update prototype.
	(_cpp_destroy_iconv): New prototype.

	* doc/cpp.texi: Document character set handling.
	* doc/cppopts.texi: Document -fexec-charset= and -fexec-wide-charset=.
	* doc/extend.texi: Delete entire section on multiline strings.
	Rewrite section on __FUNCTION__ etc now that these are
	variables in C.

	* cppucnid.tab, cppucnid.pl: New files.
	* cppucnid.h: New generated file.
	* cppcharset.c: Include cppucnid.h.  Lots of commentary added.
	(iconv_open, iconv, iconv_close): Provide dummy definitions
	if !HAVE_ICONV.
	(SOURCE_CHARSET, struct strbuf, init_iconv_desc, cpp_init_iconv,
	_cpp_destroy_iconv, convert_cset, width_to_mask, convert_ucn,
	emit_numeric_escape, convert_hex, convert_oct, convert_escape,
	cpp_interpret_string, narrow_str_to_charconst,
	wide_str_to_charconst): New.
	(ucn_valid_in_identifier): Use a binary search through the
	ucnranges table defined in cppucnid.h, not a long chain of if
	statements.
	(_cpp_valid_ucn): Add a limit pointer.  Downgrade "universal
	character names are only valid in C++ and C99" to a warning.
	Issue the "meaning of \[uU] is different in traditional C"
	warning here.  Take care not to let iconv see an invalid UCS
	value if we get a malformed UCN.  Issue an error if we don't
	have iconv.
	(cpp_interpret_charconst): Moved here from cpplex.c.  Use
	cpp_interpret_string to do the heavy lifting.

	* cppinit.c (cpp_create_reader): Initialize bytes_big_endian,
	narrow_charset, wide_charset fields of options structure.
	(cpp_destroy): Call _cpp_destroy_iconv.
	* cpplex.c (forms_identifier_p): Adjust call to _cpp_valid_ucn.
	(maybe_read_ucn, hex_digit_value, cpp_parse_escape): Delete.
	(cpp_interpret_charconst): Moved to cppcharset.c.
	* cpplib.c (dequote_string): Delete.
	(interpret_string_notranslate): New.
	(do_line, do_linemarker): Use interpret_string_notranslate.

	* Makefile.in (cppcharset.o): Depend on cppucnid.h.

	* c-common.c (fname_string, combine_strings): Delete.
	* c-common.h (fname_string, combine_strings): Delete prototypes.
	* c-lex.c (ignore_escape_flag): Delete.
	(cb_ident): Use cpp_interpret_string, not lex_string.
	(get_nonpadding_token): New function.
	(c_lex): Handle Objective-C @-prefixed identifiers and strings here.
	Adjust calls to lex_string.  Don't write *value twice.
	(lex_string): Now handles string constant concatenation.
	Most of the work handed off to cpp_interpret_string.
	Call fix_string_type here.
	* c-parse.in (STRING_FUNC_NAME, VAR_FUNC_NAME): Replace with
	FUNC_NAME, throughout.
	(OBJC_STRING): New token type.
	(primary:STRING): No need to call fix_string_type here.
	(primary:objc_string): Make that OBJC_STRING.
	(objc_string nonterminal): Delete.
	(yylexname): Delete code to handle fake string constants.
	(yylexstring): Delete entirely.
	(_yylex): Handle CPP_AT_NAME and CPP_OBJC_STRING.  No need
	to handle CPP_ATSIGN.

	* c.opt (-fexec-charset=, -fwide-exec-charset=): New options.
	* c-opts.c (missing_arg, c_common_handle_option): Handle
	OPT_fexec_charset_ and OPT_fwide_exec_charset_.
	(c_common_init): Set cpp_opts->bytes_big_endian, not
	cpp_opts->EBCDIC.  Call cpp_init_iconv.
	(print_help): Document -fexec-charset= and -fexec-wide-charset=.
	(TARGET_EBCDIC): Delete default definition.

	* objc/objc-act.c (build_objc_string_object): No need to
	handle string constant concatenation.

Kazu Hirata committed
7026 7027
2003-07-04  Kazu Hirata  <kazu@cs.umass.edu>

Kazu Hirata committed
7028 7029 7030 7031 7032 7033
	* doc/install.texi: Fix typos.
	* doc/invoke.texi: Likewise.
	* doc/tm.texi: Likewise.

2003-07-04  Kazu Hirata  <kazu@cs.umass.edu>

Kazu Hirata committed
7034 7035 7036 7037 7038 7039 7040 7041 7042 7043 7044 7045
	* config/pa/fptr.c: Fix comment typos.
	* config/pa/pa-64.h: Likewise.
	* config/pa/pa.c: Likewise.
	* config/pa/pa.h: Likewise.
	* config/rs6000/603.md: Likewise.
	* config/rs6000/7xx.md: Likewise.
	* config/rs6000/darwin.h: Likewise.
	* config/rs6000/freebsd.h: Likewise.
	* config/rs6000/rs6000.c: Likewise.
	* config/rs6000/rs6000.md: Likewise.
	* config/rs6000/spe.h: Likewise.

7046 7047 7048 7049 7050 7051 7052 7053 7054 7055 7056 7057 7058
2003-07-04  Ulrich Weigand  <uweigand@de.ibm.com>

	* config/s390/2064.md: Change GNU CC to GCC.
	* config/s390/2084.md: Likewise.
	* config/s390/fixdfdi.h: Likewise.
	* config/s390/linux.h: Likewise.
	* config/s390/s390-modes.def: Likewise.
	* config/s390/s390-protos.h: Likewise.
	* config/s390/s390.c: Likewise.
	* config/s390/s390.h: Likewise.
	* config/s390/s390.md: Likewise.
	* config/s390/s390x.h: Likewise.

7059 7060
2003-07-04  Jeff Law  <law@redhat.com>

7061
	PR c/11428
7062 7063 7064 7065 7066
	* expr.c (do_store_flag): Pass in the correct result type
	when calling fold_single_bit_test.
	* fold-const.c (fold_single_bit_test): Use result_type for the
	result when folding a sign bit test.

7067 7068 7069 7070
2003-07-04  Neil Booth  <neil@daikokuya.co.uk>

	* opts.c (common_handle_options): Negate sense of -falign- switches.

7071 7072
2003-07-04  H.J. Lu <hongjiu.lu@intel.com>

H.J. Lu committed
7073
	* Makefile.in: Replace PWD with PWD_COMMAND.
7074

7075 7076 7077 7078 7079 7080
2003-07-04  Zdenek Dvorak  <rakdver@atrey.karlin.mff.cuni.cz>

	* cfgloopanal.c (count_strange_loop_iterations): New static function.
	(constant_iterations, count_loop_iterations, simple_loop_exit_p):
	Handle strange loops.

7081 7082 7083 7084 7085
2003-07-04  Toon Moene  <toon@moene.indiv.nluug.nl>

	* install.texi: Even the g77 manpage is derived from
	the full g77 manual.

7086 7087 7088 7089 7090 7091 7092 7093 7094 7095 7096 7097 7098 7099
2003-07-04  Zack Weinberg  <zack@codesourcery.com>

	* ABOUT-NLS: Delete.
	* intl: Delete entire directory.
	* aclocal.m4: Include ../config/gettext.m4.  Delete
	AC_ISC_POSIX, AM_LANGINFO_CODESET, jm_GLIBC21, AM_LC_MESSAGES,
	AM_PATH_PROG_WITH_TEST, AM_WITH_NLS, and AM_GNU_GETTEXT.
	* configure.in: Use CY_GNU_GETTEXT, not AM_GNU_GETTEXT.
	Remove intl/Makefile from all_outputs.
	* configure, config.in: Regenerate.
	* Makefile.in: Expunge all references to intl subdirectory.
	Add -I../intl to INCLUDES.
	* intl.h: Include libintl.h if and only if ENABLE_NLS is defined.

7100 7101 7102 7103 7104
2003-07-04  Roger Sayle  <roger@eyesopen.com>

	* config/rs6000/aix51.h (TARGET_C99_FUNCTIONS): Define.
	* config/rs6000/aix52.h (TARGET_C99_FUNCTIONS): Likewise.

7105 7106 7107 7108 7109 7110 7111 7112 7113 7114 7115 7116 7117 7118 7119 7120 7121 7122 7123 7124 7125 7126
2003-07-04  Danny Smith  <dannysmith@users.sourceforge.net>

	PR c++/5287, PR c++/7910, PR c++/11021
	* config/i386/winnt.c (ix86_handle_dll_attribute): Don't add
	dllimport attribute if function is defined at declaration, but
	report error instead. Likewise for dllimport'd variable
	definitions.  Set implicit TREE_PUBLIC for dllimport'd variables
	declared within functions, Report error if dllimport or dllexport
	symbol is not global.
	(i386_pe_dllimport_p): Ignore dllimport attribute of functions
	if defined after declaration or if inlined. Don't allow definition
	of static data members of C++ classes. Don't dllimport virtual
	methods.
	(i386_pe_mark_dllexport): Warn about inconsistent dll attributes.
	(i386_pe_mark_dllimport): Remove unnecessary checks.
	(i386_pe_encode_section_info): Warn if the dllimport attribute
	and symbol prefix have been instantiated and then overridden.

	* doc/extend.texi: Document dllimport and dllexport attributes.

	* config/i386/winnt.c (i386_pe_output_labelref): Fix indents.

Uwe Stieber committed
7127 7128 7129 7130 7131
2003-07-03 Uwe Stieber <uwe@kaos-group.de>

	* config/kaos.h (CPP_PREDEFINES): Delete.
	(TARGET_OS_CPP_BUILTINS): New.

7132 7133 7134 7135 7136 7137 7138 7139 7140 7141 7142 7143 7144
2003-07-03  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>

	* c-aux-info.c: Include toplev.h after c-tree.h.
	* c-common.c: Likewise.
	(GCC_DIAG_STYLE): Undef.
	* c-semantics.c (GCC_DIAG_STYLE): Define.
	* c-tree.h (GCC_DIAG_STYLE): Likewise.
	* diagnostic.h (inform): Move prototype to toplev.h.
	* jump.c: Include diagnostic.h before toplev.h.
	* toplev.h (GCC_DIAG_STYLE, ATTRIBUTE_GCC_DIAG): Define.
	(warning, error, fatal_error, pedwarn, sorry, inform,
	error_for_asm, warning_for_asm): Mark with ATTRIBUTE_GCC_CXXDIAG.

7145 7146 7147 7148 7149 7150 7151 7152 7153 7154 7155 7156
2003-07-03  Zdenek Dvorak  <rakdver@atrey.karlin.mff.cuni.cz>

	* cfglayout.c (cfg_layout_duplicate_bb): Do not update frequencies
	at all if edge is not specified.
	(can_copy_bbs_p, copy_bbs): New.
	* cfglayout.h (can_copy_bbs_p, copy_bbs): Declare.
	* cfgloop.c (get_loop_body): Comment more precisely.
	* cfgloopmanip.c (copy_bbs, record_exit_edges): Removed.
	(scale_bbs_frequencies): Fix comment typo.
	(can_duplicate_loop_p): Use can_copy_bbs_p.
	(duplicate_loop_to_header_edge): Simplify by using copy_bbs.

7157 7158 7159 7160
2003-07-03  Devang Patel <dpatel@apple.com>

	* c-opts.c (c_common_parse_file): Remove extra
	debug_hooks->start_source_file call.
7161

7162 7163 7164 7165 7166 7167 7168 7169 7170 7171 7172 7173 7174 7175 7176 7177 7178 7179 7180 7181
2003-07-03  Roger Sayle  <roger@eyesopen.com>

	* real.c (real_trunc, real_floor, real_ceil): New functions
	to implement trunc, floor and ceil respectively.
	* real.h (real_trunc, real_floor, real_ceil): Prototype here.
	* builtins.c (integer_valued_real_p): New function to test if
	a floating point expression has an integer valued result.
	(fold_trunc_transparent_mathfn): Optimize foo(foo(x)) as
	foo(x) where foo is an integer rounding function.  Similarly,
	optimize foo(bar(x)) as bar(x), and foo((double)(int)x) as
	(double)(int)x when both foo and bar are integer rounding
	functions and we don't need to honor errno.
	(fold_builtin_trunc, fold_builtin_floor, fold_builtin_ceil):
	New functions to fold trunc, floor and ceil.
	(fold_builtin): Use fold_builtin_trunc to fold BUILT_IN_TRUNC*,
	fold_builtin_floor to fold BUILT_IN_FLOOR* and fold_builtin_ceil
	to fold BUILT_IN_CEIL*.
	* fold-const.c (tree_expr_nonnegative_p): Handle FLOAT_EXPR and
	the remaining integer rounding functions.

7182 7183 7184 7185 7186 7187
2003-07-03  Eric Botcazou  <ebotcazou@libertysurf.fr>

	* config/sparc/sparc.c (function_arg_partial_nregs): Use
	SPARC_INT_ARG_MAX to determine where to split unnamed
	complex FP arguments.

7188 7189 7190 7191 7192 7193 7194 7195 7196 7197 7198 7199 7200 7201 7202 7203 7204 7205 7206 7207 7208 7209 7210 7211 7212 7213 7214 7215 7216 7217 7218 7219 7220 7221 7222 7223 7224 7225 7226 7227 7228 7229 7230 7231 7232 7233 7234 7235 7236 7237 7238 7239 7240 7241 7242 7243 7244 7245 7246 7247 7248 7249 7250 7251 7252 7253 7254 7255 7256 7257 7258 7259 7260 7261 7262 7263
Thu Jul  3 20:36:47 CEST 2003  Jan Hubicka  <jh@suse.cz>

	* basic-block.h (create_basic_block, merge_blocks_nomove): Kill.
	* cfgcleanup.c (merge_blocks): Rename to merge_blocks_move.
	(merge_blocks_move_predecessor_nojumps,
	 merge_blocks_move_successor_nojumps): Use merge_blocks.
	(try_optimize_cfg): Use merge_blocks_move.
	* cfgrtl.c (create_basic_block): Rename to rtl_create_basic_block.
	(merge_blocks_nomove): Rename to rtl_merge_blocks.
	(cfg_layout_create_basic_block): New.
	(rtl_can_merge_blocks): New.
	(cfg_layout_split_block): Do not alloc aux by hand.
	* cfghooks.h (cfg_hooks): Add create_basic_block, can_merge_blocks_p,
	merge_blocks.
	(create_basic_block, can_merge_blocks_p, merge_blocks): New macros.
	* cfglayout.c (cfg_layout_duplicate_bb): Do not allocate aux by hand.
	* cfgloopmanip.c (loop_split_edge_with): Likewise.
	* ifcvt.c (merge_if_block): Use merge_blocks_nomove.

	* basic-block.h (basic_block_def): Add field 'rbi'.
	* bb-reorder.c (find_traces, rotate_loop, mark_bb_visited,
	find_traces_1_round, copy_bb, connect_traces): Update use of rbi.
	* cfg.c (entry_exit_blocks): Add new field.
	* cfglayout.c: Include alloc-pool.h;
	(cfg_layout_pool): New.
	(record_effective_endpoints, fixup_reorder_chain,
	fixup_fallthru_exit_predecessor, cfg_layout_duplicate_bb): Update use
	of rbi.
	(cfg_layout_initialize_rbi): New function.
	(cfg_layout_initialize): Use it.
	(cfg_layout_finalize): Clear rbi fields.
	* cfglayout.h (RBI): Kill.
	(cfg_layout_initialize_rbi): Declare.
	* cfgloopmanip.c (copy_bbs): Use rbi.
	(record_exit_edges): Likewise.
	(duplicate_loop_to_header_edge): Likewise.
	* cfgrtl.c (cfg_layout_create_basic_block): Use
	cfg_layout_initialize_rbi.
	(cfg_layout_split_block): Use rbi.
	(cfg_layout_delete_block): Likewise.
	* loop-init.c (loop_optimizer_finalize): Likewise.
	* loop-unswitch.c (unswitch_loop): Likewise.
	* tracer.c (seen, tail_duplicate, layout_superblocks): Likewise.

	* cfgrtl.c: Update comments.
	(try_redirect_by_replacing_jump): New argument.
	(redirect_branch_edge): Break out from ...
	(rtl_redirect_edge_and_branch): ... this one.
	(update_cfg_after_block_merging): Break out from ...
	(rtl_merge_blocks): ... this one.
	(cfg_layout_split_edge): New.
	(cfg_layout_merge_blocks): New.
	(cfg_layout_can_merge_blocks_p): New.
	(cfg_layout_redirect_edge_and_branch): Reorganize.
	(cfg_layout_rtl_cfg_hooks): Fill in.
	(cfg_layout_delete_block): Kill barriers.
	* cfganal.c (can_fallthru): Deal with exit blocks
	* cfglayout.c (cfg_layout_function_header): New function
	(record_effective_endpoints): Record function header.
	(fixup_reorder_chain): Fixup dead jumptables; place header

	* basic-block.h (CLEANUP_CFGLAYOUT): New flag.
	* bb-reorder.c (cfg_layout_initialize): Update call.
	* cfgcleanup.c (try_optimize_cfg): Supress optimizations of fallthru
	edges in cfglayout mode.
	* cfglayout.c (cleanup_unconditional_jumps): Kill.
	(cfg_layout_initialize): Kill agrument loops; use cfgcleanup.
	* cfglayout.h (cfg_layout_initialize): Update prototype.
	* cfgloop.h (CP_INSIDE_CFGLAYOUT): Kill.
	* cfgloopmanip.c (loop_split_edge_with): Use split_edge.
	* flow.c (propagate_block): Do not crash when basic block ends
	by first insn in the chain.
	* loop-init.c (loop_optimizer_init):  First enter cfglayout mode; later
	do loop discovery.
	* tracer.c (tracer): Update call of cfg_layout_initialize.

7264 7265 7266 7267 7268
2003-07-03  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>

	* Makefile.in: Use dependency variables in lieu of explicit
	files throughout.

7269 7270 7271 7272 7273
2003-07-03  Steven Bosscher  <steven@gcc.gnu.org>

	* rtl.h (ECF_*, flags_from_decl_or_type): Move from here...
	* tree.h: ...to here.

7274 7275 7276 7277 7278 7279 7280 7281 7282 7283 7284 7285 7286 7287 7288 7289
2003-07-03  Kazu Hirata  <kazu@cs.umass.edu>

	* config/s390/2064.md: Fix comment typos.
	* config/s390/2084.md: Likewise.
	* config/s390/s390.c: Likewise.
	* config/s390/s390.md: Likewise.
	* config/sh/sh.c: Likewise.
	* config/sh/sh.h: Likewise.
	* config/sh/sh.md: Likewise.
	* config/sparc/sparc.c: Likewise.
	* config/sparc/sparc.h: Likewise.
	* config/sparc/sparc.md: Likewise.
	* config/stormy16/stormy16.c: Likewise.
	* config/stormy16/stormy16.h: Likewise.
	* config/stormy16/stormy-abi: Fix a typo.

7290 7291 7292 7293
2003-07-03  Kelley Cook  <kelleycook@wideopenwest.org>

	* Makefile.in (ifcvt.o): Depend on OPTABS_H.

7294 7295 7296 7297
2003-07-03  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>

	* config/mips/mips.h (save_argv): Delete.

7298 7299 7300 7301 7302 7303
2003-07-03  Roger Sayle  <roger@eyesopen.com>

	PR target/10700
	* fold-const.c (extract_muldiv_1): There's nothing that can be done
	if the expression is a SAVE_EXPR.

Kazu Hirata committed
7304 7305 7306 7307 7308 7309 7310 7311 7312 7313 7314 7315 7316 7317 7318
2003-07-03  Kazu Hirata  <kazu@cs.umass.edu>

	* config/m32r/m32r.c: Fix comment typos.
	* config/m68hc11/m68hc11.c: Likewise.
	* config/m68hc11/m68hc11.h: Likewise.
	* config/m68k/m68k.c: Likewise.
	* config/mcore/mcore.c: Likewise.
	* config/mcore/mcore.h: Likewise.
	* config/mcore/mcore.md: Likewise.
	* config/mips/mips.c: Likewise.
	* config/mips/mips.h: Likewise.
	* config/mips/mips.md: Likewise.
	* config/mips/netbsd.h: Likewise.
	* config/mn10300/mn10300.c: Likewise.

7319 7320 7321 7322 7323
2003-07-03  Andreas Schwab  <schwab@suse.de>

	* dbxout.c (pending_bincls): Move decl down inside
	DBX_DEBUGGING_INFO || XCOFF_DEBUGGING_INFO section.

7324 7325 7326 7327 7328
2003-07-02  Nathan Sidwell  <nathan@codesourcery.com>

	* rtl.h (NOTE_DATA): Refer to whole union.
	* emit-rtl.c (emit_note): Use memset to clear NOTE_DATA.

7329 7330 7331 7332 7333 7334 7335
2003-07-03  Eric Botcazou  <ebotcazou@libertysurf.fr>

	PR optimization/11381
	* simplify-rtx.c (simplify_relational_operation): Check that
	two equal operands have no side-effects before simplifying
	the comparison.

7336 7337 7338 7339 7340 7341 7342 7343 7344 7345 7346
2003-07-02  Jeff Law  <law@redhat.com>

	* expr.c (do_store_flag): Remove special case folding for
	single bit tests.  Instead call back into the commonized folder
	routine.
	* fold-const.c (fold_single_bit_test): New function, mostly
	extracted from do_store_flag, with an additional case extracted
	from fold.
	(fold): Call fold_single_bit_test appropriately.
	* tree.h (fold_single_bit_test): Prototype.

7347 7348 7349 7350 7351 7352 7353 7354 7355 7356 7357 7358 7359 7360 7361 7362 7363 7364 7365 7366
2003-07-02  Zack Weinberg  <zack@codesourcery.com>

	* system.h: Include filenames.h.
	(IS_DIR_SEPARATOR, IS_ABSOLUTE_PATHNAME): Don't define.
	(DIR_SEPARATOR, DIR_SEPARATOR_2): If not already defined,
	define based on HAVE_DOS_BASED_FILE_SYSTEM.
	* config/i386/xm-cygwin.h, config/i386/xm-djgpp.h
	* config/i386/xm-mingw32.h: Don't define
	HAVE_DOS_BASED_FILE_SYSTEM,
	DIR_SEPARATOR, or DIR_SEPARATOR_2.
	* doc/hostconfig.texi: Update to match.

	* cppfiles.c, gcc.c, gensupport.c, protoize.c,
	config/i386/cygwin.h:
	Use IS_ABSOLUTE_PATH throughout.
	* gcc.c (DIR_UP): Delete, unused.
	* protoize.c (IS_SAME_PATH): Define in terms of
	FILENAME_CMP.
	(is_abspath): Delete.

7367 7368 7369 7370 7371 7372 7373 7374 7375
2003-07-02  Kazu Hirata  <kazu@cs.umass.edu>

	* config/i386/emmintrin.h: Fix comment typos.
	* config/i386/i386.c: Likewise.
	* config/i386/i386.h: Likewise.
	* config/i386/sco5.h: Likewise.
	* config/ia64/ia64.c: Likewise.
	* config/ia64/itanium2.md: Likewise.

7376 7377 7378 7379 7380 7381 7382
2003-07-02  H.J. Lu  <hongjiu.lu@intel.com>

	* dbxout.c (pending_bincls): Replace DBX_USE_BINCLS with
	DBX_USE_BINCL.
	(emit_bincl_stab): Same.
	(emit_pending_bincls): Same.

7383 7384 7385 7386 7387 7388 7389 7390 7391 7392
2003-07-02  Kazu Hirata  <kazu@cs.umass.edu>

	* config/h8300/h8300.c (compute_mov_length): Fix the length of
	loading CONST0_RTX (SFmode).
	* config/h8300/h8300.h (CONST_DOUBLE_OK_FOR_LETTER_P): Change
	'G' to CONST0_RTX (SFmode).
	* config/h8300/h8300.md (movsf_h8300): Change the first
	constraint to 'G'.
	(movsf_h8300h): Likewise.

7393 7394 7395 7396 7397 7398 7399 7400 7401 7402 7403 7404 7405 7406 7407 7408 7409 7410 7411 7412 7413 7414 7415 7416
2003-07-02  Neil Booth  <neil@daikokuya.co.uk>

	* c-common.h (c_common_init_options): New prototype.
	* c-opts.c (deferred_size): Remove.
	(defer_opt): Array is now pre-allocated.
	(c_common_init_options): Pre-allocate deferred_opts.  Make
	lang_flags unsigned.
	(push_command_line_options): Free deferred_opts.
	* hooks.c (hook_uint_uint_constcharptrptr_0): New.
	* hooks.h (hook_uint_uint_constcharptrptr_0): New.
	* langhooks-def.h (LANG_HOOKS_INIT_OPTIONS): Update.
	* langhooks.h (struct lang_hooks): New prototype for init_options.
	* main.c (main): Cast argv.
	* opts.c (handle_option, handle_options): Update prototypes.
	(decode_options): save_argc, save_argv are not global.  Constify.
	* opts.h (decode_options): New prototype.
	* toplev.c (general_init): New protoype.
	(save_argv): Make static.
	(save_argc): Remove.
	(print_switch_values, general_init): Constify.
	(toplev_main): Save argv.
	* toplev.h (toplev_main): Update prototype.
	(save_argc, save_argv): Remove.

7417 7418 7419 7420 7421 7422
2003-07-02  David Edelsohn  <edelsohn@gnu.org>

	* dbxout.c (pending_bincls): Guard with DBX_USE_BINCLS.
	(emit_bincl_stab): Same.
	(emit_pending_bincls): Same.

7423 7424 7425 7426 7427
2003-07-02  Nathan Sidwell  <nathan@codesourcery.com>

	PR c++/11072
	* ginclude/stddef.h (offsetof): Remove cast to 'char &'. Explain why.

7428 7429 7430 7431
2003-07-02  Andreas Schwab  <schwab@suse.de>

	* dbxout.c (pending_bincls): Only define if DBX_DEBUGGING_INFO.

7432 7433 7434 7435 7436 7437 7438 7439 7440 7441
2003-07-02  Eric Botcazou  <ebotcazou@libertysurf.fr>

	PR optimization/11210
	* expr.c (handled_component_p) [NOP_EXPR]: Add ??? note
	about the behaviour with regard to bitfields.
	* fold-const (decode_field_reference): Record outermost type in
	case the expression is a NOP. Strip all NOPs. Set the signedness
	to that of the outermost type (if any) when the bitsize is equal
	to the size of the type.

7442 7443
2003-07-02  Richard Sandiford  <rsandifo@redhat.com>

7444 7445 7446 7447 7448 7449
	* config/mips/mips.md (addsi3): Remove workaround for adds of -32768.
	(addsi3_internal, adddi3, adddi3_internal_2): Likewise.
	(adddi3_internal_3, addsi3_internal_2): Likewise.

2003-07-02  Richard Sandiford  <rsandifo@redhat.com>

7450 7451 7452 7453 7454 7455 7456 7457 7458 7459 7460 7461 7462 7463 7464 7465 7466 7467 7468 7469 7470 7471 7472 7473 7474 7475 7476 7477 7478 7479 7480 7481 7482
	* config/mips/mips.c (machine_function): Add new fields:
	ignore_hazard_length_p and all_noreorder_p.
	(mips_flag_delayed_branch): New variable.
	(override_options): Treat '/' as an operand punctuation character.
	Set up mips_flag_delayed_branch.
	(print_operand): Handle '/'.
	(mips_output_function_prologue): Put the whole function in
	.set noreorder and .set nomacro if all_noreorder_p is true.
	(mips_output_function_epilogue): End the noreorder/nomacro sequence.
	(mips16_optimize_gp): Remove "first insn" parameter.
	(mips16_lay_out_constants): New function, split out from mips_reorg.
	(mips_avoid_hazard, mips_avoid_hazards): New functions.
	(mips_reorg): For mips16 code, call mips16_lay_out_constant
	and (optionally) mips16_optimize.  If TARGET_EXPLICIT_RELOCS,
	do delayed-branch scheduling followed by hazard detection.
	(mips_adjust_insn_length): Only account for hazards if
	!ignore_hazard_length_p.
	(mips_output_load_label): Add a nop to the o32 sequence if
	the target suffers from load delays.
	(mips_output_conditional_branch): Add %/ to the end of branches.
	(mips_output_division): Fill the branch delay slot with %#.
	* config/mips/mips.md: Remove redundant '%*' from mips16 branch
	instructions.  End all other %* branches with %/.
	(ffssi2, ffsdi2): Fix lengths.
	(truncdisi2, truncdihi2, truncdiqi2): Add store attributes.
	(fix_truncdfsi2_macro): Turn off .set nomacro if appropriate.
	(fix_truncsfsi2_macro): Likewise.
	(mov_lwl): Set hazard to "none".
	(ashldi3_internal): Fill the branch delay slot with %#.
	(ashrdi3_internal, lshrdi3_internal): Likewise.
	(exception_receiver): Explicitly set $28.
	(hazard_nop): New pattern.

7483 7484 7485 7486 7487
Wed Jul  2 08:12:36 CEST 2003  Jan Hubicka  <jh@suse.cz>

	* cgraphunit.c (cgraph_finalize_unit): Set current_function_decl
	before calling tree_inlinable_function_p.

7488 7489
2003-07-02  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>

7490 7491 7492 7493 7494 7495 7496 7497 7498
	* fixinc/inclhack.def (irix_stdio_va_list): Apply to IRIX 6.5
	<internal/stdio_core.h> too.
	(stdio_va_list): Apply to IRIX 6.5 <internal/stdio_core.h> and
	<internal/wchar_core.h> too.
	Substitute va_list uses in inline definition.
	* fixinc/fixincl.x: Regenerate.

2003-07-02  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>

7499 7500 7501 7502 7503 7504
	* config/mips/iris5.h (SET_FILE_NUMBER): Moved here from iris3.h.
	Undef before redefinition.
	(LABEL_AFTER_LOC): Likewise.
	(DEFAULT_SIGNED_CHAR): Likewise.
	(ASM_OUTPUT_ASCII): Moved here from iris4.h.
	Fix IRIX spelling.
7505

7506 7507 7508 7509 7510 7511 7512 7513 7514 7515 7516
	* config/mips/iris3.h: Remove, unused.
	* config/mips/iris4.h: Likewise.

	* config/mips/mips.h (STACK_ARGS_ADJUST): Remove, unused.

	* config/mips/iris5.h (TARGET_DEFAULT): Move ...
	* config.gcc (mips-sgi-irix6*o32, mips-sgi-irix5*): ... here to
	target_cpu_default.

	* config/mips/iris5.h: Move explicit includes ...
	* config.gcc (mips-sgi-irix6*o32, mips-sgi-irix5*): ... here.
7517

7518 7519 7520 7521 7522 7523 7524 7525 7526 7527
	* config/mips/iris6.h (MIPS_ISA_DEFAULT, MIPS_ABI_DEFAULT): Move ...
	* config.gcc (mips-sgi-irix6*, mips-sgi-irix5cross64): ... here to
	tm_defines.

	* config/mips/iris6.h (TARGET_DEFAULT): Move ...
	* config.gcc (mips-sgi-irix6*, mips-sgi-irix5cross64): ... here to
	target_cpu_default.

	* config/mips/iris6.h: Fix IRIX spelling.
	(MULTILIB_DEFAULTS): Undef before redefinition.
7528

7529 7530 7531
	* config/mips/iris6.h: Move explicit includes ...
	* config.gcc (mips-sgi-irix6*, mips-sgi-irix5cross64): ... here.

7532 7533 7534 7535 7536 7537 7538 7539 7540
Wed Jul  2 02:16:48 CEST 2003  Jan Hubicka  <jh@suse.cz>

	* cgraph.c (cgraph_mark_needed_node, cgraph_varpool_mark_needed_node,
	cgraph_varpool_finalize_decl, cgraph_varpool_assemble_pending_decls):
	Use next_needed field instead of aux to maintain the queue.
	* cgraph.h (cgraph_node): Add next_needed.
	(cgraph_varpool_node): Add next_needed; remove aux.
	* cgraphunit.c (cgraph_finalize_compilation_unit): Use next_needed.

7541 7542 7543 7544 7545 7546 7547
Wed Jul  2 02:12:51 CEST 2003  Jan Hubicka  <jh@suse.cz>

	* cgraphunit.c (cgraph_finalize_function): Set finalized.
	(cgraph_finalize_function): Do not examine inlinablility.
	(cgraph_finalize_compilation_unit): Do it here.
	* cgraph.h (cgraph_local_info): Add finalized field.

7548 7549 7550 7551 7552
2003-07-02  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>

	* ggc-common.c (gt_pch_save): Cast MAP_FAILED to void *.
	(gt_pch_restore): Likewise.

7553 7554 7555 7556 7557 7558 7559 7560 7561 7562 7563 7564
2003-07-01  Kazu Hirata  <kazu@cs.umass.edu>

	* config/alpha/alpha.c: Fix comment typos.
	* config/alpha/elf.h: Likewise.
	* config/arm/arm.c: Likewise.
	* config/arm/arm.h: Likewise.
	* config/arm/arm.md: Likewise.
	* config/arm/t-arm-coff: Likewise.
	* config/arm/t-strongarm-pe: Likewise.
	* config/arm/xscale-elf.h: Likewise.
	* config/avr/avr.h: Likewise.

7565 7566 7567 7568
2003-07-01  Jeff Law  <law@redhat.com>

	* stmt.c (any_pending_cleanups): Remove another redundant test.

7569 7570 7571 7572 7573 7574
2003-07-01  David Edelsohn  <edelsohn@gnu.org>
	    J"orn Rennecke <joern.rennecke@superh.com>

	* config/rs6000/rs6000.md (ctr{s,d}i_internal?): Add earlyclobber
	for MEM case.

7575 7576 7577 7578
2003-07-01  Devang Patel  <dpatel@apple.com>

	* dbxout.c (DBXOUT_DECR_NESTING): Emit pending bincls, if required.
	(binclstatus): New.
7579
	(struct dbx_file): New members - bincl_status, pending_bincl_name and
7580 7581 7582 7583 7584 7585 7586
	prev.
	(pending_bincls): New.
	(dbxout_init): Initialize new dbx_file members.
	(dbxout_start_source_file): Same.
	(emit_bincl_stab): New function.
	(emit_pending_bincls): Same.
	(emit_pending_bincls_if_required): Same.
7587
	(dbxout_end_source_file): Emit EINCL stab only if BINCL is  already
7588 7589 7590 7591 7592 7593 7594 7595 7596 7597
	processed.
	(dbxout_begin_block): Emit pending BINCL stabs.
	(dbxout_end_block): Same.
	(dbxout_function_decl): Same.
	(dbxout_continue): Same.
	(dbxout_type): Same.
	(dbxout_class_name_qualifiers): Same.
	(dbxout_symbol): Same.
	(dbxout_symbol_location): Same.
	(dbxout_parms): Same.
7598

7599 7600 7601 7602 7603
2003-07-01  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>

	* c-semantics.c (genrtl_case_label): Fix format specifier bug.
	* cfgrtl.c (rtl_verify_flow_info_1): Likewise.

Andreas Jaeger committed
7604 7605 7606 7607 7608 7609
2003-07-01  Andreas Jaeger  <aj@suse.de>

	* fold-const.c: Convert prototypes to ISO C90.
	* function.c: Likewise.
	* function.h: Likewise.

7610 7611
2003-07-01  Kazu Hirata  <kazu@cs.umass.edu>

Kazu Hirata committed
7612 7613 7614 7615 7616 7617 7618 7619
	* doc/contrib.texi: Fix typos.
	* doc/invoke.texi: Likewise.
	* doc/passes.texi: Likewise.
	* doc/sourcebuild.texi: Likewise.
	* doc/tm.texi: Likewise.

2003-07-01  Kazu Hirata  <kazu@cs.umass.edu>

7620 7621 7622 7623 7624 7625 7626 7627 7628 7629 7630 7631 7632 7633 7634 7635 7636 7637 7638 7639 7640 7641 7642 7643 7644 7645 7646 7647 7648 7649 7650 7651 7652 7653 7654 7655 7656 7657 7658 7659 7660 7661 7662 7663 7664 7665 7666 7667 7668 7669
	* basic-block.h: Fix comment typos.
	* bb-reorder.c: Likewise.
	* c-format.c: Likewise.
	* cfgcleanup.c: Likewise.
	* cfghooks.h: Likewise.
	* cfgloop.c: Likewise.
	* cfgloopmanip.c: Likewise.
	* cfgrtl.c: Likewise.
	* cgraph.h: Likewise.
	* cgraphunit.c: Likewise.
	* combine.c: Likewise.
	* convert.c: Likewise.
	* dbxout.c: Likewise.
	* df.c: Likewise.
	* df.h: Likewise.
	* diagnostic.c: Likewise.
	* dwarf2out.c: Likewise.
	* et-forest.h: Likewise.
	* flow.c: Likewise.
	* fold-const.c: Likewise.
	* function.h: Likewise.
	* gcov-io.h: Likewise.
	* gcov.c: Likewise.
	* gcse.c: Likewise.
	* genautomata.c: Likewise.
	* ggc-common.c: Likewise.
	* ggc-page.c: Likewise.
	* loop-unroll.c: Likewise.
	* loop-unswitch.c: Likewise.
	* loop.c: Likewise.
	* mips-tfile.c: Likewise.
	* optabs.c: Likewise.
	* ra-build.c: Likewise.
	* ra-colorize.c: Likewise.
	* ra-rewrite.c: Likewise.
	* ra.h: Likewise.
	* regmove.c: Likewise.
	* reload.c: Likewise.
	* rtlanal.c: Likewise.
	* sched-ebb.c: Likewise.
	* sched-int.h: Likewise.
	* sched-vis.c: Likewise.
	* sreal.c: Likewise.
	* ssa-ccp.c: Likewise.
	* ssa.c: Likewise.
	* toplev.c: Likewise.
	* tree-inline.c: Likewise.
	* value-prof.c: Likewise.
	* value-prof.h: Likewise.

7670
2003-07-01  Nathan Sidwell  <nathan@codesourcery.com>
7671 7672 7673 7674 7675 7676 7677 7678 7679 7680 7681 7682 7683 7684 7685 7686 7687

	* rtl.h (emit_line_note_after): Remove.
	(emit_note_copy_after, emit_note_copy): New.
	* emit-rtl.c (reorder_insns_with_line_notes): Replace
	emit_line_note_after with emit_note_copy_after.
	(emit_insn_after_with_line_notes): Likewise.
	(emit_line_note_after): Kill.
	(emit_note_copy_after): New.
	(emit_note_copy): New.
	* function.c (emit_return_into_block): Use emit_note_copy_after.
	(thread_prologue_and_epilogue_insns): Likewise.
	* integrate.c (expand_inline_function): Use emit_note_copy.
	(copy_insn_list): Likewise.
	* unroll.c (copy_loop_body): Likewise.
	* cfglayout.c (duplicate_insn_chain): Likewise.

2003-07-01  Nathan Sidwell  <nathan@codesourcery.com>
7688 7689 7690 7691 7692 7693 7694 7695 7696 7697

	* c-tree.h (define_label): Replace filename and lineno arguments
	with a location_t.
	* c-decl.c (poplevel): Adjust define_label call.
	(pop_label_level): Likewise.
	(define_label): Replace filename and lineno arguments with a
	location_t.
	(store_parm_decls): Use DECL_SOURCE_LOCATION.
	* c-parse.in (label): Adjust define_label call.

7698 7699 7700 7701 7702 7703 7704 7705
2003-07-01  Neil Booth  <neil@daikokuya.co.uk>

	* config/sol2.h, config/alpha/alpha.h, config/alpha/linux.h,
	config/i386/i386-interix.h, config/ia64/hpux.h, config/mips/iris6.h,
	config/mips/linux.h, config/mips/mips.h, config/pa/pa-hpux.h,
	config/pa/pa-hpux10.h, config/pa/pa-hpux11.h, config/pa/pa-pro-end.h,
	config/pa/pa.h, config/pa/rtems.h: Use c_dialect_ macros.

7706 7707 7708 7709 7710 7711 7712 7713
2003-07-01  Andreas Jaeger  <aj@suse.de>

	* final.c: Convert prototypes to ISO C90.
	* flow.c: Likewise.
	* flags.h: Likewise.
	* gcov-io.c: Likewise.
	* gcov-io.h: Likewise.

Kazu Hirata committed
7714
See ChangeLog.9 for earlier changes.