Commit Graph

69015 Commits

Author SHA1 Message Date
Bernd Schmidt 21956c07ad bfin.h (ASM_OUTPUT_ALIGN): Gas now emulates the behavior of the native assembler in VDSP.
* config/bfin/bfin.h (ASM_OUTPUT_ALIGN): Gas now emulates the
	behavior of the native assembler in VDSP. So change accordingly.

From-SVN: r100753
2005-06-08 09:40:42 +00:00
Bernd Schmidt 5fcead21e3 bfin.h (enum bfin_builtins): New.
* config/bfin/bfin.h (enum bfin_builtins): New.
	* config/bfin/bfin.md (UNSPEC_VOLATILE_CSYNC, UNSPEC_VOLATILE_SSYNC):
	New constants.
	(csync, ssync): New insn patterns.
	* config/bfin/bfin.c (bfin_init_builtins, bfin_expand_builtin):
	New functions.
	(def_builtin): New macro.
	(TARGET_INIT_BUILTINS, TARGET_EXPAND_BUILTIN): Define.

From-SVN: r100752
2005-06-08 09:25:11 +00:00
Andreas Schwab 71bc2a839d MAINTAINERS: Move myself from 'Write After Approval' to 'CPU Port Maintainers' section as...
* MAINTAINERS: Move myself from 'Write After Approval' to
	'CPU Port Maintainers' section as m68k maintainer.

From-SVN: r100751
2005-06-08 09:15:21 +00:00
Bernd Schmidt 26a3eab7b0 bfin.c (bfin_return_in_memory): Simplify; return everything larger than 8 bytes in memory.
* config/bfin/bfin.c (bfin_return_in_memory): Simplify; return
	everything larger than 8 bytes in memory.

From-SVN: r100750
2005-06-08 08:53:59 +00:00
Sebastian Pop 79ebd55c85 tree-data-ref.c (compute_estimated_nb_iterations, [...]): Fixed to use chrec_contains_undetermined to test the values of...
* tree-data-ref.c (compute_estimated_nb_iterations,
	analyze_array_indexes, compute_overlap_steps_for_affine_1_2,
	analyze_subscript_affine_affine, find_data_references_in_loop):
	Fixed to use chrec_contains_undetermined to test the values of
	loop->estimated_nb_iterations.
	* tree-ssa-loop-niter.c (estimate_numbers_of_iterations_loop):
	Compute the estimation only when loop->estimated_nb_iterations
	has not yet been initialized.
	(convert_step_widening, scev_probably_wraps_p): Add a call to
	estimate_numbers_of_iterations_loop.
	* tree-vrp.c (execute_vrp): Don't call estimate_numbers_of_iterations.

From-SVN: r100749
2005-06-08 08:47:05 +00:00
Eric Botcazou 216448c75d re PR debug/21946 (Invalid DWARF2 debug info emitted)
PR debug/21946
	* dwarf2out.c (add_loc_descr_op_piece): Move to the
	DWARF2_DEBUGGING_INFO section.

From-SVN: r100748
2005-06-08 07:48:16 +00:00
Richard Henderson 9f3b845245 re PR target/21721 (fails to assemble, Use of p0 is not valid in this context)
PR target/21721
        * config/ia64/ia64.c (emit_predicate_relation_info): Skip p0.

From-SVN: r100745
2005-06-08 00:26:58 -07:00
Eric Botcazou 34cbdf6704 * gcc.dg/tls/debug-1.c: New test.
From-SVN: r100743
2005-06-08 05:07:30 +00:00
Eric Botcazou fdbe66f28c re PR debug/21889 (Native Solaris assembler cannot grok DTP-relative debug symbols)
PR target/21889
	* target.h (gcc_target) <asm_out>: New field output_dwarf_dtprel.
	* target-def.h (TARGET_ASM_OUTPUT_DWARF_DTPREL): New macro.
	(TARGET_ASM_OUT): Add it.
	* doc/tm.texi (Debugging Info): Document it.
	* dwarf2out.c (output_loc_operands) <INTERNAL_DW_OP_tls_addr>:
	Test it instead of ASM_OUTPUT_DWARF_DTPREL.
	(loc_descriptor_from_tree_1) <VAR_DECL>: Likewise.
	* system.h: Poison ASM_OUTPUT_DWARF_DTPREL.
	* config/frv/frv-protos.h (frv_output_dwarf_dtprel): Delete.
	* config/frv/frv.c (frv_output_dwarf_dtprel): Make static and unused.
	(gen_inlined_tls_plt): Remove unused variable MEM.
	(TARGET_ASM_OUTPUT_DWARF_DTPREL): Define to frv_output_dwarf_dtprel.
	* config/frv/frv.h (ASM_OUTPUT_DWARF_DTPREL): Delete.
	* config/i386/i386-protos.h (i386_output_dwarf_dtprel): Delete.
	* config/i386/i386.c (i386_output_dwarf_dtprel): Make static and
	unused.
	(TARGET_ASM_OUTPUT_DWARF_DTPREL): Define to i386_output_dwarf_dtprel.
	* config/i386/i386.h (ASM_OUTPUT_DWARF_DTPREL): Delete.
	* config/ia64/ia64-protos.h (ia64_output_dwarf_dtprel): Delete.
	* config/ia64/ia64.c (ia64_output_dwarf_dtprel): Make static and
	unused.
	(TARGET_ASM_OUTPUT_DWARF_DTPREL): Define to ia64_output_dwarf_dtprel.
	* config/ia64/ia64.h (ASM_OUTPUT_DWARF_DTPREL): Delete.
	* config/rs6000/rs6000-protos.h (rs6000_output_dwarf_dtprel): Delete.
	* config/rs6000/rs6000.c (rs6000_output_dwarf_dtprel): Make static and
	unused.
	(TARGET_ASM_OUTPUT_DWARF_DTPREL): Define to rs6000_output_dwarf_dtprel
	* config/rs6000/rs6000.h (ASM_OUTPUT_DWARF_DTPREL): Delete.
	* config/s390/s390-protos.h (s390_output_dwarf_dtprel): Delete.
	* config/s390/s390.c (s390_output_dwarf_dtprel): Make static and
	unused.
	(TARGET_ASM_OUTPUT_DWARF_DTPREL): Define to s390_output_dwarf_dtprel.
	* config/s390/s390.h (ASM_OUTPUT_DWARF_DTPREL): Delete.
	* config/sparc/sol2-gas.h (TARGET_SUN_TLS): Define to 0.
	(TARGET_GNU_TLS): Define to 1.
	* config/sparc/sparc-protos.h (sparc_output_dwarf_dtprel): Delete.
	* config/sparc/sparc.c (sparc_output_dwarf_dtprel): Make static and
	unused.
	(TARGET_ASM_OUTPUT_DWARF_DTPREL): Define to sparc_output_dwarf_dtprel
	if TARGET_GNU_TLS only.
	* config/sparc/sparc.h (ASM_OUTPUT_DWARF_DTPREL): Delete.

	* config.gcc (sparc64-*-solaris2*): Include tm-dwarf2.h last.
	(sparc-*-solaris2*): Likewise on Solaris 7 and up.

From-SVN: r100742
2005-06-08 05:05:45 +00:00
Dale Johannesen 4280a26f32 movq.c: New.
2005-06-07  Dale Johannesen  <dalej@apple.com>

	* gcc.target/i386/movq.c:  New.

From-SVN: r100741
2005-06-08 03:24:28 +00:00
Dale Johannesen f66eb2afb5 i386.md (movqi_1): Fix case where source is memory and destination EDI.
2005-06-07  Dale Johannesen  <dalej@apple.com>

        * config/i386/i386.md (movqi_1):  Fix case where source
        is memory and destination EDI.

From-SVN: r100740
2005-06-08 03:22:15 +00:00
Kazu Hirata e79df5ce29 * config/c4x/c4x.h (PREDICATE_CODES): Remove mem_operand.
From-SVN: r100738
2005-06-08 02:31:24 +00:00
Eric Christopher f1c9d07dc5 system.h: Poison EXTRA_CC_MODES.
2005-06-07  Eric Christopher  <echristo@redhat.com>

	* system.h: Poison EXTRA_CC_MODES.
	* config/frv/frv.h (SELECT_CC_MODE): Rewrite comment.
	* config/ia64/ia64.h (SELECT_CC_MODE): Ditto.
	* doc/md.texi (Jump Patterns): Replace reference to
	EXTRA_CC_MODES with machine-modes.def.
	* doc/rtl.texi (Machine Modes): Ditto.

From-SVN: r100737
2005-06-08 00:28:41 +00:00
GCC Administrator e9cff73d49 Daily bump.
[[Split portion of a mixed commit.]]

From-SVN: r100735.2
2005-06-08 00:16:24 +00:00
Richard Henderson 60ff97f497 varasm.c (initialize_cold_section_name): Fix alloca buffer overflow.
* varasm.c (initialize_cold_section_name): Fix alloca buffer overflow.
        (assemble_start_function): Fix strcmp confusion.

From-SVN: r100733
2005-06-07 17:15:53 -07:00
Uros Bizjak ff680eb128 i386.h (enum ix86_entity): New.
2005-06-07  Uros Bizjak  <uros@kss-loka.si>

	* config/i386/i386.h (enum ix86_entity): New.
	(enum ix86_stack_slot): New.
	(OPTIMIZE_MODE_SWITCHING): Redefine to use
	ix86_optimize_mode_switching[] array.
	(NUM_MODES_FOR_MODE_SWITCHING): Redefine for 4 entities.
	(MODE_NEEDED): Use ix86_mode_needed() function.
	(EMIT_MODE_SET): Redefine for changed emit_i387_cw_initialization ()
	function.
	(struct machine_function): Use optimize_mode_switching[] array.

	* config/i386/i386.c (MAX_386_STACK_LOCALS): Remove.
	(ix86_mode_needed): New function.
	(emit_i387_cw_initialization): Cleanup. Use mode to calculate
	correct stack positions for stored control words.
	(assign_386_stack_local): Use enum ix86_stack_slot. Change assert.
	(ix86_expand_builtin) [IX86_BUILTIN_LDMXCSR]: Change constant to
	SLOT_TEMP.
	[IX86_BUILTIN_STMXCSR]: Same.

	* config/i386/i386-protos.h (assign_stack_local): Change prototype.
	(emit_i387_cw_initialization): Change prototype.
	(ix86_mode_needed): New prototype.

	* config/i386/i386.md (i387_cw attribute): Change order of elements.
	(truncdfsf2, truncxfsf2, truncxfdf2, fix_trunc<mode>_fisttp_i387_1)
	(*fix_trunc<mode>_i387_1, lrint<mode>2, *fist<mode>2_floor_1)
	(*fist<mode>2_ceil_1): Change constant in call to
	assign_386_stack_local to SLOT_TEMP.
	(*fix_trunc<mode>_i387_1): Change constant in call to
	assign_386_stack_local to SLOT_CW_STORED and SLOT_CW_TRUNC.
	Use new ix86_optimize_mode_switching[] array.
	(frndintxf2_floor, *fist<mode>2_floor_1): Change constants in call to
	assign_386_stack_local to SLOT_CW_STORED and SLOT_CW_FLOOR.
	Use new ix86_optimize_mode_switching[] array.
	(frndintxf2_ceil, *fist<mode>2_ceil_1):  Change constants in call to
	assign_386_stack_local to SLOT_CW_STORED and SLOT_CW_CEIL.
	Use new ix86_optimize_mode_switching[] array.
	(frndintxf2_trunc): Change constants in call to
	assign_386_stack_local to SLOT_CW_STORED and SLOT_CW_TRUNC.
	Use new ix86_optimize_mode_switching[] array.
	(frndintxf2_mask_pm): Change constants in call to
	assign_386_stack_local to SLOT_CW_STORED and SLOT_CW_MASK_PM.
	Use new ix86_optimize_mode_switching[] array.

	(define_peephole2): Change constant from 17 to FLAGS_REG;

From-SVN: r100732
2005-06-07 23:58:55 +00:00
Richard Henderson 3b009185b3 re PR rtl-optimization/21528 (Boost shared_ptr_test.cpp fails with -O3)
PR rtl-opt/21528
        * rtlanal.c (reg_overlap_mentioned_p) <MEM>: Handle 'E' formats.

From-SVN: r100730
2005-06-07 16:45:06 -07:00
Dale Johannesen e4cd04f442 20050607-1.c: New.
2005-06-07  Dale Johannesen  <dalej@apple.com>

        * gcc.dg/20050607-1.c:  New.

From-SVN: r100729
2005-06-07 23:36:52 +00:00
Dale Johannesen 022a817430 tree-nested.c (finalize_nesting_tree_1): Disable warn_padded around layout_type call.
2005-06-07  Dale Johannesen  <dalej@apple.com>

        * tree-nested.c (finalize_nesting_tree_1):  Disable
        warn_padded around layout_type call.

From-SVN: r100728
2005-06-07 23:35:58 +00:00
Zdenek Dvorak e2cf9dd1a9 tree-ssa-loop-ivopts.c (rewrite_use_outer): Unshare the expression before emiting it.
* tree-ssa-loop-ivopts.c (rewrite_use_outer): Unshare the expression
	before emiting it.

From-SVN: r100727
2005-06-07 22:44:56 +00:00
Eric Christopher e0073ed785 predicates.md: Revert previous patch.
2005-06-07  Eric Christopher  <echristo@redhat.com>

        * config/mips/predicates.md: Revert previous patch.

From-SVN: r100726
2005-06-07 22:17:31 +00:00
Jakub Jelinek 145357a492 re PR middle-end/21850 (misscompiling comparision from vector to integer)
PR middle-end/21850
	* tree.c (get_unwidened): Stop at NOP_EXPR/CONVERT_EXPR that convert
	from vector types.

	* gcc.c-torture/execute/20050607-1.c: New test.

From-SVN: r100725
2005-06-07 23:45:07 +02:00
Jakub Jelinek 75829da2a9 cpplib.pot: Regenerate.
* cpplib.pot: Regenerate.

	* gcc.pot: Regenerate.

From-SVN: r100724
2005-06-07 23:34:55 +02:00
David Ayers 348a344520 archive.c, [...]: Include hash.h.
2005-06-07  David Ayers  <d.ayers@inode.at>

	* archive.c, init.c, selector.c: Include hash.h.
	* archive.c, class.c, encoding.c, gc.c, hash.c, hash_compat.c,
	init.c, misc.c, nil_method.c, objects.c, sarray.c, selector.c,
	sendmsg.c, thr-dce.c, thr-decosf1.c, thr-irix.c, thr-mach.c,
	thr-objc.c, thr-os2.c, thr-posix.c, thr-pthreads.c, thr-rtems.c,
	thr-single.c, thr-solaris.c, thr-vxworks.c, thr-win32.c, thr.c:
	Include Objective-C headers with quotes and objc/ directory
	prefix.

From-SVN: r100723
2005-06-07 21:04:19 +00:00
Diego Novillo a4233c29b7 tree-ssa-threadupdate.c (struct thread_stats_d): Declare.
* tree-ssa-threadupdate.c (struct thread_stats_d): Declare.
	(thread_stats): New local variable.
	(redirect_edges): Increment count of threaded edges.
	(thread_through_all_blocks): Initialize thread_stats.
	Display number of threaded jumps if TDF_STATS is enabled.

From-SVN: r100722
2005-06-07 17:01:14 -04:00
Thomas Koenig ae740ccecd re PR libfortran/21926 ([4.0 only] matmul does not deal with non-packed result)
2005-06-07  Thomas Koenig  <Thomas.Koenig@online.de>

	PR libfortran/21926
	* m4/matmul.m4:  Correct zeroing of result for non-packed
	arrays with lowest stride is one.
	* generated/matmul_c4.c:  Regenerated.
	* generated/matmul_c8.c:  Regenerated.
	* generated/matmul_i4.c:  Regenerated.
	* generated/matmul_i8.c:  Regenerated.
	* generated/matmul_r4.c:  Regenerated.
	* generated/matmul_r8.c:  Regenerated.

2005-06-07  Thomas Koenig  <Thomas.Koenig@online.de>

	PR libfortran/21926
	* gfortran.fortran-torture/execute/intrinsic_matmul.f90:
	Test case where the return array has lowest stride one,
	but isn't packed.

From-SVN: r100721
2005-06-07 20:46:17 +00:00
Kazu Hirata 108267cd56 sbitmap.h (sbitmap_iter_init): Consistently treat bit_num as the current bit index with no modulo.
* sbitmap.h (sbitmap_iter_init): Consistently treat bit_num as
	the current bit index with no modulo.

From-SVN: r100720
2005-06-07 20:45:08 +00:00
Sebastian Pop e699ee2475 * 20050423-1.c: Testcase for PR tree-optimization/20742.
From-SVN: r100719
2005-06-07 19:54:23 +00:00
Sebastian Pop 1e8552ebb2 Fixes PR 18403 and meta PR 21861.
* Makefile.in (tree-chrec.o): Depend on CFGLOOP_H and TREE_FLOW_H.
	* tree-chrec.c: Include cfgloop.h and tree-flow.h.
	(evolution_function_is_invariant_rec_p,
	evolution_function_is_invariant_p): New.
	(chrec_convert): Use an extra parameter AT_STMT for refining the
	information that is passed down to convert_step.  Integrate the
	code that was in count_ev_in_wider_type.
	* tree-chrec.h (count_ev_in_wider_type): Removed.
	(chrec_convert): Modify its declaration.
	(evolution_function_is_invariant_p): Declared.
	(evolution_function_is_affine_p): Use evolution_function_is_invariant_p.
	* tree-flow.h (can_count_iv_in_wider_type): Renamed convert_step.
	(scev_probably_wraps_p): Declared.
	* tree-scalar-evolution.c (count_ev_in_wider_type): Removed.
	(follow_ssa_edge_in_rhs, interpret_rhs_modify_expr):
	Use an extra parameter AT_STMT for refining the information that is
	passed down to convert_step.
	(follow_ssa_edge_inner_loop_phi, follow_ssa_edge,
	analyze_scalar_evolution_1): Initialize AT_STMT with the current
	analyzed statement.
	(instantiate_parameters_1): Don't know yet how to initialize AT_STMT.
	* tree-ssa-loop-ivopts.c (idx_find_step): Update the use of
	can_count_iv_in_wider_type to use convert_step.
	* tree-ssa-loop-niter.c (can_count_iv_in_wider_type_bound): Move
	code that is independent of the loop over the known iteration
	bounds to convert_step_widening, the rest is moved to
	proved_non_wrapping_p.
	(scev_probably_wraps_p): New.
	(can_count_iv_in_wider_type): Renamed convert_step.
	* tree-vrp.c (adjust_range_with_scev): Take an extra AT_STMT parameter.
	Use scev_probably_wraps_p for computing init_is_max.
	(vrp_visit_assignment): Pass the current analyzed statement to
	adjust_range_with_scev.
	(execute_vrp): Call estimate_numbers_of_iterations for refining the
	information provided by scev analyzer.

testsuite:

	* testsuite/gcc.dg/vect/vect-77.c: Remove xfail from lp64.
	* testsuite/gcc.dg/vect/vect-78.c: Same.

From-SVN: r100718
2005-06-07 19:51:25 +00:00
Adrian Straetling 89a590b340 target-supports.exp (check_effective_target_sync_int_long): Add s390 and s390x targets.
2005-06-07  Adrian Straetling  <straetling@de.ibm.com>

	* lib/target-supports.exp (check_effective_target_sync_int_long):
	Add s390 and s390x targets.

From-SVN: r100717
2005-06-07 19:27:01 +00:00
Eric Christopher f11480cc82 predicates.md (sleu_operand): Use IN_RANGE to specify range of operand.
2005-06-07  Eric Christopher  <echristo@redhat.com>

	* config/mips/predicates.md (sleu_operand): Use
	IN_RANGE to specify range of operand.

From-SVN: r100716
2005-06-07 19:09:34 +00:00
Nathan Sidwell ce3116ffc5 missed entry
missed entry
       * cp-tree.def (DEFAULT_ARG): Adjust documentation.
	* cp-tree.h (DEFARG_INSTANTIATIONS): New.
	(struct tree_default_arg): Add instantiations member.
	* parser.c (cp_parser_late_parsing_default_args): Adjust to use a
	VEC.
	* pt.c (tsubst_arg_types): Likewise.

From-SVN: r100715
2005-06-07 17:46:02 +00:00
Steven Bosscher 75b80166a2 re PR tree-optimization/21847 (misscompiling of the following java code)
PR tree-optimization/21847
	* tree-ssa-dce.c (mark_stmt_if_obviously_necessary): With
	-fnon-call-exceptions, also mark statements inherently
	necessary if they may throw.

From-SVN: r100714
2005-06-07 16:54:16 +00:00
Benjamin Kosnik 225962a09b acinclude.m4 (GLIBCXX_ENABLE_C99): Use C++ compiler for complex tests.
2005-06-07  Benjamin Kosnik  <bkoz@redhat.com>

	* acinclude.m4 (GLIBCXX_ENABLE_C99): Use C++ compiler for complex
	tests.
	* configure: Regenerated.

From-SVN: r100713
2005-06-07 16:52:32 +00:00
Adrian Straetling e0374221d9 s390.md: ("UNSPECV_MB", "UNSPECV_CAS"): New constants.
2005-06-07  Adrian Straetling  <straetling@de.ibm.com>

gcc/ChangeLog:
	* config/s390/s390.md: ("UNSPECV_MB", "UNSPECV_CAS"): New constants.
	("type"): Add "sem" to 'type' attribute.
	("memory_barrier", "*memory_barrier", "sync_compare_and_swapdi",
	"sync_compare_and_swapsi", "sync_compare_and_swap_ccdi",
	"sync_compare_and_swap_ccsi", "*sync_compare_and_swap_ccdi",
	"*sync_compare_and_swap_ccsi"): New patterns.
	* config/s390/2064.md: ("z_sem"): New insn_reservation.
	* config/s390/2084.md: ("x_sem"): New insn_reservation.
	* config/s390/s390.c: (s390_compare_emitted): New global variable.
	(s390_emit_compare): Do not emit comparison again after cas.
	* config/s390/s390.h (s390_compare_emitted): Declare.

libstdc++/ChangeLog:
	* config/cpu/s390/atomicity.h: (__exchange_and_add,
	__atomic_add): Use the builtins for atomic memory operations.

From-SVN: r100711
2005-06-07 16:35:27 +00:00
Kazu Hirata b6e7e9af04 sbitmap.h (sbitmap_iterator, [...]): New.
* sbitmap.h (sbitmap_iterator, sbitmap_iter_init,
	sbitmap_iter_cond, sbitmap_iter_next): New.
	* bt-load.c, cfganal.c, combine.c, ddg.c, flow.c,
	modulo-sched.c, sbitmap.c, sched-rgn.c, tree-into-ssa.c,
	tree-outof-ssa.c, tree-ssa-alias.c, tree-ssa-live.c: Update
	uses of EXECUTE_IF_SET_IN_SBITMAP to the new style.

From-SVN: r100709
2005-06-07 14:30:25 +00:00
Zdenek Dvorak ac1826887e tree-ssa-address.c: New file.
* tree-ssa-address.c: New file.
	* Makefile.in (tree-ssa-address.o): Add.
	* expr.c (expand_expr_real_1): Do not handle REF_ORIGINAL on
	INDIRECT_REFs.  Handle TARGET_MEM_REFs.
	* tree-eh.c (tree_could_trap_p): Handle TARGET_MEM_REFs.
	* tree-flow.h (struct mem_address): New.
	(struct affine_tree_combination): Moved from tree-ssa-loop-ivopts.c.
	(create_mem_ref, addr_for_mem_ref, get_address_description,
	maybe_fold_tmr, multiplier_allowed_in_address_p,
	multiply_by_cost):  Declare.
	* tree-mudflap.c (mf_xform_derefs_1): Handle TARGET_MEM_REFs.
	* tree-pretty-print.c (dump_generic_node): Ditto.
	* tree-ssa-loop-im.c (for_each_index): Ditto.
	* tree-ssa-loop-ivopts.c (may_be_unaligned_p,
	find_interesting_uses_address): Ditto.
	(rewrite_address_base, build_addr_strip_iref): Removed.
	(struct affine_tree_combination): Moved to tree-flow.h.
	(get_ref_tag, copy_ref_info): New functions.
	(rewrite_use_address): Produce TARGET_MEM_REFs.
	(tree_ssa_iv_optimize): Do not call update_ssa
	and rewrite_into_loop_closed_ssa.
	(tree_to_aff_combination): Use build_fold_addr_expr instead of
	build_addr_strip_iref.
	(unshare_aff_combination): New function.
	(fold_affine_sum): Removed.
	(get_computation_at): Use get_computation_aff.  Unshare the result.
	(get_computation_aff, multiplier_allowed_in_address_p): New function.
	(multiply_by_cost): Exported.
	(get_address_cost): Use multiplier_allowed_in_address_p.
	* tree-ssa-operands.c (get_tmr_operands): New function.
	(get_expr_operands): Handle TARGET_MEM_REFs.
	* tree.c (copy_node_stat): Copy annotations for TARGET_MEM_REFs.
	(build): Handle 7 arguments.
	(build7_stat): New function.
	* tree.def (TARGET_MEM_DEF): New.
	* tree.h (REF_ORIGINAL): Removed.
	(TMR_SYMBOL, TMR_BASE, TMR_INDEX, TMR_STEP, TMR_OFFSET, TMR_ORIGINAL,
	TMR_TAG, build7): New macros.
	(build7_stat, tree_mem_ref_addr, copy_mem_ref_info): Declare.
	* tree-ssa-ccp.c (fold_stmt_r): Call maybe_fold_tmr.
	* doc/c-tree.texi: Document TARGET_MEM_REF.
	* doc/tree-ssa.texi: Add TARGET_MEM_REF to gimple grammar.

	* gcc.dg/tree-ssa/loop-2.c: Update outcome.
	* gcc.dg/tree-ssa/loop-3.c: Update outcome.
	* gcc.dg/tree-ssa/loop-4.c: Update outcome.
	* gcc.dg/tree-ssa/loop-9.c: New test.

From-SVN: r100708
2005-06-07 12:01:47 +00:00
Nathan Sidwell 01ea1ea826 cp-tree.def (DEFAULT_ARG): Adjust documentation.
* cp-tree.def (DEFAULT_ARG): Adjust documentation.
	* cp-tree.h (DEFARG_INSTANTIATIONS): New.
	(struct tree_default_arg): Add instantiations member.
	* parser.c (cp_parser_late_parsing_default_args): Adjust to use a
	VEC.
	* pt.c (tsubst_arg_types): Likewise.

From-SVN: r100707
2005-06-07 11:56:11 +00:00
Jakub Jelinek c938250d71 re PR debug/21946 (Invalid DWARF2 debug info emitted)
PR debug/21946
	* dwarf2out.c (add_loc_descr_op_piece): New function.
	(multiple_reg_loc_descriptor, concat_loc_descriptor,
	loc_descriptor): Use it.
	* var-tracking.c: Include regs.h and expr.h.
	(emit_note_insn_var_location): Skip over pieces where offset
	is smaller than previous offset plus previous piece mode size.
	Optimize adjacent hard registers or memory locations.
	* Makefile.in (var-tracking.o): Depend on $(REGS_H) and $(EXPR_H).

From-SVN: r100706
2005-06-07 12:17:34 +02:00
Richard Guenther 2214de3042 c-typeck.c (c_finish_if_stmt): Use void_type_node as type for COND_EXPR.
2005-06-07  Richard Guenther  <rguenth@gcc.gnu.org>

	* c-typeck.c (c_finish_if_stmt): Use void_type_node as type
	for COND_EXPR.
	* gimplify.c (gimplify_cond_expr): No need to fix up the
	type of COND_EXPRs.

From-SVN: r100705
2005-06-07 10:10:22 +00:00
Richard Guenther e000442782 tree-ssa.c (tree_ssa_useless_type_conversion_1): Fix comments.
2005-06-07  Richard Guenther  <rguenth@gcc.gnu.org>

	* tree-ssa.c (tree_ssa_useless_type_conversion_1): Fix
	comments.

From-SVN: r100704
2005-06-07 10:05:09 +00:00
Hans-Peter Nilsson 789ec6199a configure.in: Enable target-libffi again for *-*-linux* and *-*-elf.
* configure.in <cris-*, crisv32-*>: Enable target-libffi again for
	*-*-linux* and *-*-elf.
	* configure: Regenerate.

From-SVN: r100703
2005-06-07 09:32:14 +00:00
Nathan Sidwell efb169b09d parser.c (cp_parser_late_parsing_default_args): Fix overeager assert in previous patch.
cp:
	* parser.c (cp_parser_late_parsing_default_args): Fix overeager
	assert in previous patch.
testsuite:
	* g++.dg/parse/defarg10.C: New.

From-SVN: r100702
2005-06-07 08:45:32 +00:00
Geoffrey Keating f8ed6473e7 host-darwin.c (segv_handler): Widen the possible 'stwux' instructions that are considered to be stack decrements.
* config/rs6000/host-darwin.c (segv_handler): Widen the possible
	'stwux' instructions that are considered to be stack decrements.

From-SVN: r100701
2005-06-07 08:23:43 +00:00
Geoffrey Keating dd79bb7eb7 rtlanal.c (subreg_offset_representable_p): Handle objects with holes.
* rtlanal.c (subreg_offset_representable_p): Handle objects
	with holes.

From-SVN: r100700
2005-06-07 08:18:15 +00:00
Hans-Peter Nilsson bd127a7515 btest-gcc.sh: Add support for option --add-passes-despite-regression.
* btest-gcc.sh: Add support for option
	--add-passes-despite-regression.

From-SVN: r100699
2005-06-07 07:42:22 +00:00
Jerry DeLisle ce677da7bc ChangeLog: Fix date on last commit.
2005-06-07  Jerry DeLisle <jvdelisle@verizon.net>

	* ChangeLog: Fix date on last commit.

From-SVN: r100698
2005-06-07 07:27:20 +00:00
Jerry DeLisle 3435a71e72 intrinsic.texi: Add documentation for dcmplx...
2005-06-03  Jerry DeLisle <jvdelisle@verizon.net>

	* intrinsic.texi: Add documentation for	dcmplx, digits,
	dim, idim, ddim, dot_product, dprod, dreal, and dtime.

From-SVN: r100697
2005-06-07 06:56:58 +00:00
Paolo Carlini 17e2915c27 PR libstdc++/21770 (cont: __gnu_debug::string)
2005-06-06  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/21770 (cont: __gnu_debug::string)
	* include/debug/string: Use _Base typedefs for pointer, const_pointer,
	reference, const_reference, size_type, difference_type.
	* testsuite/21_strings/basic_string/2.cc: New.

From-SVN: r100693
2005-06-07 02:55:06 +00:00
Paolo Carlini 09952accc4 PR libstdc++/21770 (cont: debug-mode)
2005-06-06  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/21770 (cont: debug-mode)
	* include/debug/deque: Use _Base typedefs for pointer, const_pointer,
	reference, const_reference.
	* include/debug/list: Likewise.
	* include/debug/map.h: Likewise.
	* include/debug/multimap.h: Likewise.
	* include/debug/multiset.h: Likewise.
	* include/debug/set.h: Likewise.
	* include/debug/vector: Likewise.

From-SVN: r100692
2005-06-07 02:23:44 +00:00