Commit Graph

61689 Commits

Author SHA1 Message Date
Diego Novillo
dad975d22d pr17252.c: Fix thinko.
* gcc.c-torture/execute/pr17252.c: Fix thinko.  Don't
	dereference garbage pointers.

From-SVN: r87545
2004-09-15 08:09:55 -04:00
Alan Modra
43e7c6a4d4 linux-unwind.h (struct gcc_pt_regs): Extend to include ccr.
* config/rs6000/linux-unwind.h (struct gcc_pt_regs): Extend to
	include ccr.
	(ppc_fallback_frame_state): Save location of CR.

From-SVN: r87543
2004-09-15 21:13:31 +09:30
Nathan Sidwell
69862840f8 * search.c (get_pure_virtuals): Remove unused variables.
From-SVN: r87542
2004-09-15 11:01:46 +00:00
Nathan Sidwell
16ae29f1e6 cp-tree.h (struct lang_decl_flags): Remove needs_final_overrider.
* cp-tree.h (struct lang_decl_flags): Remove
	needs_final_overrider.
	(DECL_NEEDS_FINAL_OVERRIDER_P): Remove.
	* decl.c (duplicate_decls): Do not copy DECL_NEEDS_FINAL_OVERRIDER_P.
	* class.c (finish_struct_bits): Correct comment about
	CLASSTYPE_PURE_VIRTUALS.
	* search.c (get_pure_virtuals): Remove useless loop.

From-SVN: r87541
2004-09-15 09:43:52 +00:00
Jakub Jelinek
a45f71f537 expr.c (string_constant): Handle also read-only variables initialized to string literals.
* expr.c (string_constant): Handle also read-only variables
	initialized to string literals.

	* gcc.c-torture/execute/builtins/strlen-3.c: New test.
	* gcc.c-torture/execute/builtins/strlen-3-lib.c: New.

From-SVN: r87540
2004-09-15 11:05:03 +02:00
Jakub Jelinek
9a520f4073 builtins.c (expand_builtin_memmove): Optimize memmove (x, y, 1) into memcpy (x, y, 1) if memcpy can be expanded inline.
* builtins.c (expand_builtin_memmove): Optimize memmove (x, y, 1)
	into memcpy (x, y, 1) if memcpy can be expanded inline.

	* gcc.c-torture/execute/builtins/memmove.c (main_test): Formatting.
	* gcc.c-torture/execute/builtins/memmove-2.c: New test.
	* gcc.c-torture/execute/builtins/memmove-2-lib.c: New.

From-SVN: r87539
2004-09-15 10:19:39 +02:00
Zdenek Dvorak
b1d16eff57 re PR tree-optimization/17468 (Java garbage collector miscompiled at -O1 and higher)
PR tree-optimization/17468
	* tree-ssa.c (verify_use, verify_phi_args, verify_ssa):  Verify that
	definition inside a block precede uses.
	* tree-tailcall.c (adjust_return_value): Emit statements in the
	correct order.

From-SVN: r87538
2004-09-15 07:51:33 +00:00
Richard Sandiford
3657919271 * config/mips/mips.h (POINTERS_EXTEND_UNSIGNED): Delete.
From-SVN: r87537
2004-09-15 06:27:25 +00:00
Eric Botcazou
7c2f2b41c2 * doc/install.texi (sparc-sun-solaris2*): Properly format warning.
From-SVN: r87533
2004-09-15 05:36:05 +00:00
Jeff Law
48732f23bb tree-ssa-dom.c (avail_exprs_stack): New global varray.
* tree-ssa-dom.c (avail_exprs_stack): New global varray.
        (struct dom_walk_block_data): Remove avail_exprs member.
        (tree_ssa_dominator_optimize): Initialize avail_exprs_stack.
        (lookup_avail_expr): No longer need to pass in address of
        the block local available exprs stack.  All callers changed.
        (simplify_cond_and_lookup_avail_expr): Similarly.
        (simplify_switch_and_lookup_avail_expr): Similarly.
        (get_eq_expr_value, record_cond): Likewise.
        (record_dominating_conditions): Likewise.
        (update_rhs_and_lookup_avail_expr): Likewise.
        (record_equivalences_from_stmt): Likewise.
        (dom_opt_initialize_block_local_data): No longer test state of
        block local avail_exprs.
        (dom_opt_initialize_block): Mark unwind point in the global
        avail_expr stack.
        (remove_expressions_from_table): Update to unwind to the
        most recent unwind marker in the global avail_expr stack.
        All callers changed.
        (dom_opt_finalize_block): Mark unwind point in the global
        avail_expr stack as needed.
        (record_cond): Push elements into the global avail_exprs stack.

From-SVN: r87532
2004-09-14 22:38:04 -06:00
Jeff Law
a5c965c17e tree-dfa.c (free_df_for_stmt): No longer static.
* tree-dfa.c (free_df_for_stmt): No longer static.
	(free_df): Update comments.
	* tree-flow.h (free_df_for_stmt): Prototype.
	* tree-ssa-dse.c (dse_optimize_stmt): Call free_df_for_stmt.  Also
	call release_defs.

From-SVN: r87531
2004-09-14 22:12:18 -06:00
Mark Mitchell
bb5ecf2959 re PR c++/17324 (Error: symbol `bRKNS0_IT_SD_EE' is already defined)
PR c++/17324
	* mangle.c (partially_mangled_name): New variable.
	(partially_mangled_name_len): Likewise.
	(save_partially_mangled_name): New function.
	(restore_partially_mangled_name): Likewise.
	(write_encoding): Save and restore partially mangled names around
	calls to get_mostly_instantiated_function_type.
	(write_unqualified_name): Likewise.

	PR c++/17324
	* g++.dg/template/mangle1.C: New test.

From-SVN: r87530
2004-09-15 03:22:19 +00:00
Diego Novillo
391f9afbd2 re PR tree-optimization/17252 (not marking char types as aliasing anything)
PR tree-optimization/17252
	* tree-ssa-alias.c (may_alias_p): Don't assume that a
	pointer may not point to itself when using relaxed
	aliasing rules.

testsuite/ChangeLog

	PR tree-optimization/17252
	* gcc.c-torture/execute/pr17252.c: New test.

From-SVN: r87529
2004-09-14 22:58:28 -04:00
Richard Henderson
67f2362044 re PR middle-end/17397 (gimplify ICE)
PR middle-end/17397
	* gimplify.c (gimplify_addr_expr): Don't inadvertently change types
	while folding <ADDR_EXPR <INDIRECT_REF X>>.

From-SVN: r87528
2004-09-14 19:09:05 -07:00
Andrew Pinski
5ffcd77909 pointer-reference-alias.C: New test.
2004-09-14  Andrew Pinski  <apinski@apple.com>

        * g++.dg/tree-ssa/pointer-reference-alias.C: New test.

2004-09-14  Andrew Pinski  <apinski@apple.com>

        * tree-ssa-copy.c (may_propagate_copy): Don't check the aliasing
        sets of the pointers but the aliasing sets of what they point to.

From-SVN: r87527
2004-09-14 18:18:01 -07:00
GCC Administrator
798e5365d4 Daily bump.
From-SVN: r87523
2004-09-15 00:16:20 +00:00
Roger Sayle
f6ae6c51df re PR rtl-optimization/9771 ([x86] wrong ebp optimisation)
PR rtl-optimization/9771
	* regclass.c (CALL_REALLY_USED_REGNO_P): New macro to eliminate
	conditional compilation in init_reg_sets_1.
	(init_reg_sets_1): Let global_regs[i] take priority over the frame
	(but not stack) pointer exceptions to regs_invalidated_by_call.
	(globalize_reg): Globalizing a fixed register may need to update
	regs_invalidated_by_call.

	* gcc.dg/pr9771-1.c: New test case.

From-SVN: r87516
2004-09-14 22:52:41 +00:00
Diego Novillo
1810f6edaa re PR tree-optimization/15262 ([tree-ssa] Alias analyzer cannot handle addressable fields)
PR tree-optimization/15262
	* tree-dfa.c (dump_variable): Also print the type of the
	variable.
	* tree-ssa-alias.c (compute_flow_insensitive_aliasing): If two
	memory tags are of conflicting alias sets but have no aliased
	symbols in common, add one tag to the alias set of the other.
	(setup_pointers_and_addressables): Remove hack to deal with
	programs with no aliased symbols.
	(may_alias_p): Don't special case aggregate types.


testsuite/ChangeLog

	PR tree-optimization/15262
	* gcc.c-torture/execute/pr15262-1.c: New test.
	* gcc.c-torture/execute/pr15262-2.c: New test.

From-SVN: r87515
2004-09-14 18:45:54 -04:00
Joseph Myers
0e6d31fb86 re PR c/15498 (typo in gcc manual: non-existing locale example en_UK, should be en_GB)
PR c/15498
	* doc/invoke.texi (Environment Variables): Correct example locale.

From-SVN: r87513
2004-09-14 23:30:38 +01:00
H.J. Lu
fc9051dd43 re PR libffi/17465 (Testsuite in libffi overrides LD_LIBRARY_PATH)
2004-09-14  H.J. Lu  <hongjiu.lu@intel.com>

	PR libgcj/17465
	* testsuite/lib/libffi-dg.exp: Don't use global ld_library_path.
	Set up LD_LIBRARY_PATH, SHLIB_PATH, LD_LIBRARYN32_PATH,
	LD_LIBRARY64_PATH, LD_LIBRARY_PATH_32, LD_LIBRARY_PATH_64 and
	DYLD_LIBRARY_PATH.

From-SVN: r87511
2004-09-14 14:16:29 -07:00
Joseph Myers
807ab1f2aa be.po, [...]: Update.
* be.po, ca.po, da.po, de.po, el.po, es.po, fr.po, ja.po, nl.po,
	sv.po, tr.po: Update.
	* gcc.pot: Regenerate.

From-SVN: r87507
2004-09-14 21:31:30 +01:00
Jan Hubicka
ab3b679505 * cfg.c (expunge_block): Revert previous change adding ggc_free call.
From-SVN: r87506
2004-09-14 20:09:47 +00:00
Richard Henderson
72826319ff natPosixProcess.cc (waitForSignal): Ignore return value of sigsuspend.
* java/lang/natPosixProcess.cc (waitForSignal): Ignore return
        value of sigsuspend.

From-SVN: r87505
2004-09-14 13:09:31 -07:00
Mark Mitchell
0393a68af0 * config.gcc: Do not build a shared libgcc for arm-none-eabi.
From-SVN: r87504
2004-09-14 19:58:49 +00:00
Mark Mitchell
0c0f840919 config.gcc: Do not build a shared libgcc for arm-none-eabi.
* config.gcc: Do not build a shared libgcc for arm-none-eabi.

[[Split portion of a mixed commit.]]

From-SVN: r87503.2
2004-09-14 19:58:43 +00:00
Nathan Myers
d176806941 fstream.tcc (xsgetn): Slightly tweak the recent fix for 11722...
2004-09-14  Nathan Myers  <ncm@cantrip.org>

	* include/bits/fstream.tcc (xsgetn): Slightly tweak the recent fix
	for 11722: copy can replace move; the common case is __avail == 0.

From-SVN: r87501
2004-09-14 19:11:46 +00:00
Joseph Myers
3b53cddc38 c-tree.h (struct c_declspecs): Add const_p, volatile_p and restrict_p.
* c-tree.h (struct c_declspecs): Add const_p, volatile_p and
	restrict_p.
	(struct c_declarator): Change u.array.quals and pointer_quals to
	int.  Add u.array.attrs.
	(quals_from_declspecs): New.
	* c-decl.c (quals_from_declspecs): New.
	(shadow_tag_warned): Give more specific message for useless type
	qualifiers.
	(build_array_declarator, set_array_declarator_inner,
	grokdeclarator, make_pointer_declarator, build_null_declspecs,
	declspecs_add_qual): Update for changed structures.

testsuite:
	* gcc.dg/declspec-12.c: New test.

From-SVN: r87500
2004-09-14 19:59:38 +01:00
Paolo Carlini
67dd4a9377 cpp_type_traits.h: Rename __is_trivially_copyable to __is_scalar...
2004-09-14  Paolo Carlini  <pcarlini@suse.de>

	* include/bits/cpp_type_traits.h: Rename __is_trivially_copyable
	to __is_scalar, more clear and consistent with "tr1" naming.
	* include/bits/stl_algobase.h: Update consistently throughout.

From-SVN: r87497
2004-09-14 18:35:21 +00:00
Jeff Law
a6e1aa26d9 tree-ssa-dom.c (stmts_to_rescan): Move from a block-local varray to a global varray.
* tree-ssa-dom.c (stmts_to_rescan): Move from a block-local varray
        to a global varray.
        (tree_ssa_dominator_optimize): Allocate stmts_to_rescan.
        (dom_opt_initialize_block_local_data): No longer test stmts_to_rescan's
        state.
        (dom_opt_finalize_block): Update due to change in scope of
        stmts_to_rescan.
        (optimize_stmt): Similarly.

From-SVN: r87494
2004-09-14 09:15:34 -06:00
Kazu Hirata
13795658b5 data.c, [...]: Fix comment typos.
* data.c, decl.c, f95-lang.c, gfortran.h, match.c,
	trans-array.c, trans-common.c, trans-expr.c,
	trans-intrinsic.c, trans-stmt.c, trans-types.c, trans.h: Fix
	comment typos.  Follow spelling conventions.

From-SVN: r87492
2004-09-14 12:37:28 +00:00
Nathan Sidwell
98ddffc1c1 * pt.c (unify): Replace gcc_unreachable with gcc_assert.
From-SVN: r87491
2004-09-14 12:35:28 +00:00
Kazu Hirata
8e3c61c577 cgraph.h, [...]: Fix comment typos.
* cgraph.h, cgraphunit.c, fold-const.c, lambda-mat.c,
	lambda.h, profile.c, tree-optimize.c, tree-sra.c, vec.h: Fix
	comment typos.  Follow spelling conventions.

From-SVN: r87490
2004-09-14 12:21:44 +00:00
Kazu Hirata
0e40b5f29a darwin-c.c, [...]: Follow spelling conventions.
* config/darwin-c.c, config/alpha/alpha.c, config/i386/i386.c,
	config/i386/predicates.md, config/sparc/sparc.c: Follow
	spelling conventions.

From-SVN: r87489
2004-09-14 10:46:00 +00:00
Bud Davis
8121b89976 pr17090.f90: Add directives to test.
2004-09-14  Bud Davis  <bdavis9659@comcast.net>

        * gfortran.dg/pr17090.f90: Add directives to test.

From-SVN: r87488
2004-09-14 09:47:09 +00:00
Zdenek Dvorak
113d659afd Makefile.in (loop-unroll.o): Add HASHTAB_H and RECOG_H dependency.
* Makefile.in (loop-unroll.o): Add HASHTAB_H and RECOG_H dependency.
	* basic-block.h (struct reorder_block_def): Add copy_number field.
	* cfgloop.h (biv_p): Declare.
	* cfgloopmanip.c (duplicate_loop_to_header_edge): Set copy_number.
	* common.opt (fsplit-ivs-in-unroller): New flag.
	* loop-iv.c (biv_p): New function.
	* loop-unroll.c: Include hashtab.h and recog.h.
	(struct iv_to_split, struct split_ivs_info): New types.
	(analyze_ivs_to_split, si_info_start_duplication, split_ivs_in_copies,
	free_si_info, si_info_hash, si_info_eq, analyze_iv_to_split_insn,
	determine_split_iv_delta, get_ivts_expr, allocate_basic_variable,
	insert_base_initialization, split_iv): New functions.
	(peel_loop_completely, unroll_loop_constant_iterations,
	unroll_loop_runtime_iterations, peel_loop_simple, unroll_loop_stupid):
	Use them.
	* doc/invoke.texi (-fsplit-ivs-in-unroller): Document.

Co-Authored-By: Steven Bosscher <stevenb@suse.de>

From-SVN: r87487
2004-09-14 08:05:46 +00:00
Zdenek Dvorak
d840495b15 tree-cfg.c (thread_jumps): Update dominators correctly in case destination of threaded edge dominates its...
* tree-cfg.c (thread_jumps): Update dominators correctly in
	case destination of threaded edge dominates its source.

From-SVN: r87486
2004-09-14 07:49:04 +00:00
Zdenek Dvorak
c94583fe55 unroll.c: Removed.
* unroll.c: Removed.
	* loop.h: Removed.
	* Makefile.in (LOOP_H, unroll.o): Removed.
	(toplev.o, passes.o, stmt.o, integrate.o, loop.o): Remove LOOP_H
	dependency.
	* alias.c (init_alias_analysis): Remove flag_old_unroll_loops
	reference.
	* cfgloop.h (LOOP_PREFETCH, loop_optimize): Moved from loop.h.
	* common.opt (fold-unroll-loops, fold-unroll-all-loops): Removed.
	* loop.c: Do not include loop.h.
	(LOOP_INFO, LOOP_MOVABLES, LOOP_REGS, LOOP_IVS, INSN_LUID,
	REGNO_FIRST_LUID, REGNO_LAST_LUID, enum g_types, struct induction,
	struct iv_class, enum iv_mode, struct iv, REG_IV_TYPE, REG_IV_INFO,
	REG_IV_CLASS, struct loop_ivs, struct loop_mem_info, struct loop_reg,
	struct loop_regs, struct loop_movables, struct loop_info): Moved
	from loop.h.
	(back_branch_in_range_p, fold_rtx_mult_add, biv_total_increment,
	reg_dead_after_loop, final_biv_value, loop_find_equiv_value,
	find_common_reg_term, loop_iterations, final_giv_value): Moved
	from unroll.c.
	(uid_luid, uid_loop, max_uid_for_loop, max_reg_before_loop,
	loop_dump_stream, for_each_insn_in_loop, express_from,
	extend_value_for_giv, loop_iv_add_mult_emit_before,
	loop_iv_add_mult_sink, loop_iv_add_mult_hoist,
	loop_insn_first_p, get_condition_for_loop,
	loop_insn_emit_before, loop_insn_hoist,
	loop_insn_sink): Made static.
	(loop_invariant_p): Made static.  Removed flag_old_unroll_loops
	reference.
	(strength_reduce): Do not call unroller.
	(record_giv): Do not initialize unrolled field.
	(prescan_loop): Do not set loop_info->preconditioned.
	* passes.c: Do not include loop.h.
	(rest_of_handle_loop_optimize): Do not call unroller.
	* predict.c: Do not include loop.h.
	* rtl.h (NOTE_PRECONDITIONED): Removed.
	* stmt.c: Do not include loop.h.
	* toplev.c: Do not include loop.h.
	(process_options): Do not handle flag_old_unroll_loops.

	* doc/invoke.texi (fold-unroll-loops, fold-unroll-all-loops):
	Documentation removed.
	* doc/passes.texi (unroll.c, loop.h): Documentation removed.

From-SVN: r87485
2004-09-14 07:43:08 +00:00
Nathan Sidwell
032618223b Makefile.in (STAGE1_CHECKING): New variable.
* Makefile.in (STAGE1_CHECKING): New variable.
	(stage1_build): Use it.
	* tree-ssa.c (verify_ssa): Preserve state of dominance
	information.

From-SVN: r87484
2004-09-14 07:20:05 +00:00
Mark Mitchell
a52eb3bc7c re PR c++/16162 (Rejects valid member-template-definition)
PR c++/16162
	* parser.c (cp_parser_id_expression): Correct value for
	is_declarator.
	(cp_parser_nested_name_specifier_opt): Look through typenames as
	necessary.
	(cp_parser_template_name): Honor check_dependency_p.

	PR c++/16162
	* g++.dg/template/decl2.C: New test.

From-SVN: r87483
2004-09-14 05:44:39 +00:00
Uros Bizjak
869d095e24 i386.c (output_fp_compare): Add generation of ftst instruction.
* config/i386/i386.c (output_fp_compare): Add generation
	of ftst instruction.
	* config/i386/i386.md (*cmpfp_0_sf, cmpfp_0_df, cmpfp_0_xf):
	Use output_fp_compare () function.
	(cmpfp_i, *cmpfp_i_sse, *cmpfp_i_sse_only): Fix insn constraint.
	(fix_truncdi_memory): Remove operands[5] copy.

From-SVN: r87482
2004-09-14 07:21:51 +02:00
Kazu Hirata
19525b57d1 m32r.md, [...]: Fix comment typos.
* config/m32r/m32r.md, config/m68k/m68kelf.h,
	config/mcore/mcore.md, config/rs6000/linux64.h,
	config/rs6000/rs6000.c, config/sparc/sparc.c: Fix comment
	typos.

From-SVN: r87481
2004-09-14 04:05:40 +00:00
James E Wilson
a140c081d1 Fix gen-proto (fixproto) build failure.
* Makefile.in (GEN_PROTOS_OBJS): Add $(BUILD_ERRORS).
* gen-protos.c: Include errors.h.
(progname): Delete.

From-SVN: r87480
2004-09-13 20:45:46 -07:00
Loren J. Rittle
c630383379 * tests/base/sys/cdefs.h: Update for new test.
From-SVN: r87479
2004-09-14 03:41:10 +00:00
Loren J. Rittle
28785ddedf inclhack.def (freebsd_gcc4_breakage): Add.
* inclhack.def (freebsd_gcc4_breakage): Add.
	* fixincl.x: Regenerate.

From-SVN: r87478
2004-09-14 02:45:08 +00:00
Tom Tromey
4a2dd6fe83 re PR java/17216 (ICE in 3.5, error in 3.4.1 when compiling .class->.o)
PR java/17216:
	* class.c (layout_class_method): Put synthetic methods into the
	vtable.

From-SVN: r87477
2004-09-14 01:50:12 +00:00
DJ Delorie
f45c31ea1a Spacing bug.
From-SVN: r87476
2004-09-13 21:14:58 -04:00
Aaron W. LaFramboise
ff06bf4bd0 * libiberty.h (basename): Prototype for __MINGW32__.
From-SVN: r87475
2004-09-13 21:12:49 -04:00
Bud Davis
c72477d6a6 re PR libfortran/17090 (Runtime I/O error)
2004-09-13  Bud Davis  <bdavis9659@comcast.net>

        PR fortran/17090

        * io/list_read.c (list_formatted_read): Handle trailing spaces
        at end of line.


2004-09-13  Bud Davis  <bdavis9659@comcast.net>

        PR fortran/17090
        * gfortran.dg/pr17090.f90: New test.

From-SVN: r87474
2004-09-14 00:56:46 +00:00
Jan Hubicka
b6acab32f1 Makefile.in (predict.o): Depend on tree-scalar-evolution.h
* Makefile.in (predict.o): Depend on tree-scalar-evolution.h
	* predict.c: Include tree-scalar-evolution.h and cfgloop.h
	(predict_loops): Use number_of_iterations_exit to predict
	number of iterations on trees.

From-SVN: r87473
2004-09-14 00:52:41 +00:00
Kenneth Zadeck
fa9be75f70 Had wrong date on my the entry.
From-SVN: r87469
2004-09-14 00:40:06 +00:00