Commit Graph

83421 Commits

Author SHA1 Message Date
Paolo Carlini e74392f0a8 re PR c++/33464 (Broken diagnostic: 'trait_expr' not supported by dump_expr)
/cp
2007-09-18  Paolo Carlini  <pcarlini@suse.de>

	PR c++/33464
	* cxx-pretty-print.c (pp_cxx_trait_expression): Add.
	(pp_cxx_primary_expression): Use it.
	* cxx-pretty-print.h (pp_cxx_trait_expression): Declare.
	* error.c (dump_expr): Use it.

/testsuite
2007-09-18  Paolo Carlini  <pcarlini@suse.de>

	PR c++/33464
	* g++.dg/ext/is_class_error.C: Rename to is_class_error1.C.
	* g++.dg/ext/is_class_error2.C: New.

From-SVN: r128578
2007-09-18 14:35:42 +00:00
Rask Ingemann Lambertsen e2972de537 re PR target/33388 (fr30: ICE: RTL check: expected code 'reg', have 'subreg' in rhs_regno, at rtl.h:983)
PR target/33388
	PR target/33397
	* config/fr30/fr30.md (addsi3): Check REG_P() before calling REGNO().
	(addsi_small_int): Likewise.
	(addsi_big_int): Use rtx_equal_p() instead of REGNO() comparison.
	(one_cmplsi2): Likewise.
	(negsi2): Delete.
	(enter_func): Expand insn using hard_frame_pointer_rtx and
	stack_pointer_rtx.
	(*enter_func): New.
	* config/fr30/fr30.c (fr30_expand_prologue): Check for
	hard_frame_pointer_rtx instead of using REGNO() check.
	Properly sign extend GEN_INT() argument.

From-SVN: r128577
2007-09-18 13:24:44 +00:00
Roman Zippel da398bb590 m68k.c (override_options): Remove USE_GAS, use %.
* config/m68k/m68k.c (override_options): Remove USE_GAS,
	use %. syntax.
	(output_dbcc_and_branch, output_scc_di): Replace all jbcc
	alternatives with just jcc.
	* config/m68k/m68k.md (addsi_lshrsi_31, beq0_di, bne0_di,
	bge0_di, blt0_di, bgtu, bltu, bgeu, bleu, bgtu_rev,
	bltu_rev, bgeu_rev, bleu_rev, jump, dbne_hi, dbne_si,
	dbge_hi, dbge_si): Likewise.

From-SVN: r128576
2007-09-18 12:11:49 +00:00
Roman Zippel 09e21d09bd m68k.md (beq, [...]): Replace all fbcc with fjcc.
* config/m68k/m68k.md (beq, bne, bgt, blt, bge, ble, bordered,
	bunordered, buneq, bunge, bungt, bunle, bunlt, bltgt, beq_rev,
	bne_rev, bgt_rev, blt_rev, bge_rev, ble_rev, bordered_rev,
	bunordered_rev, buneq_rev, bunge_rev, bungt_rev, bunle_rev,
	bunlt_rev, bltgt_rev): Replace all fbcc with fjcc.

From-SVN: r128575
2007-09-18 12:08:00 +00:00
Maxim Kuvyrkov 8c5c99dc22 m68k-devices.def (51qe): New device.
* config/m68k/m68k-devices.def (51qe): New device.
	* config/m68k/m68k.c (FL_FOR_isa_c): Remove division unit.  Add it
	to all uses of FL_FOR_isa_c for compatibility.
	(all_microarchs): Add cfv1 microarchitecture.
	(m68k_handle_option): Handle m51qe option.
	* config/m68k/m68k.h (TARGET_CPU_CPP_BUILTINS): Handle 51QE.
	(TUNE_CFV1): New macro.
	(enum uarch_type): Add ucfv1.
	* doc/invoke.texi: Document 51qe device and cfv1 microarchitecture.

From-SVN: r128574
2007-09-18 11:40:04 +00:00
Richard Guenther efe9e82926 re PR c++/31863 (g++-4.1: out of memory with -O1/-O2)
2007-09-18  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/31863
	* tree-ssa-structalias.c (create_variable_info_for): Always
	free the fieldstack.

From-SVN: r128573
2007-09-18 11:22:47 +00:00
Dorit Nuzman c55f4e7c19 * opts.c (decode_options): Enable vectorization under -O3.
From-SVN: r128572
2007-09-18 11:13:35 +00:00
Richard Guenther fe4fefa0e0 re PR tree-optimization/33340 (ICE: SSA corruption with -O (FRE))
2007-09-18  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/33340
	* tree-ssa-sccvn.c (set_ssa_val_to): Do not set values to
	SSA_NAMEs that occur in abnormal PHI nodes.

	* g++.dg/torture/pr33340.C: New testcase.

From-SVN: r128571
2007-09-18 08:46:23 +00:00
Tobias Burnus 4a96582796 re PR fortran/33231 (Reject for -std=f* calls to elementar functions where array and scalar are mixed)
2007-09-18  Tobias Burnus  <burnus@net-b.de>

	PR fortran/33231
	* resolve.c (resolve_elemental_actual): Check for conformance
	of intent out/inout dummies.

2007-09-18  Tobias Burnus  <burnus@net-b.de>

	PR fortran/33231
	* gfortran.dg/elemental_optional_args_1.f90: Make valid Fortran.
	* gfortran.dg/elemental_subroutine_1.f90: Ditto.
	* gfortran.dg/elemental_subroutine_5.f90: New.

From-SVN: r128570
2007-09-18 08:34:30 +02:00
Kaveh R. Ghazi 0e01499666 tree-cfg.c (is_ctrl_altering_stmt, [...]): Don't use const_get_call_expr_in.
* tree-cfg.c (is_ctrl_altering_stmt, tree_block_ends_with_call_p):
	Don't use const_get_call_expr_in.
	* tree-gimple.c (const_get_call_expr_in): Delete.
	* tree-gimple.h (const_get_call_expr_in): Likewise.

From-SVN: r128569
2007-09-18 03:25:06 +00:00
GCC Administrator e49e06d8d0 Daily bump.
From-SVN: r128567
2007-09-18 00:17:07 +00:00
Richard Sandiford 3763219571 target-supports.exp (check_profiling_available): Extend mips*-*-elf check to mips*-*-elf*.
gcc/testsuite/
	* lib/target-supports.exp (check_profiling_available): Extend
	mips*-*-elf check to mips*-*-elf*.

From-SVN: r128564
2007-09-17 23:44:00 +00:00
Richard Sandiford c9b69ba258 df-scan.c (df_notes_rescan): Do nothing if the instruction does not yet have a basic block.
gcc/
	* df-scan.c (df_notes_rescan): Do nothing if the instruction does
	not yet have a basic block.
	* dse.c (find_shift_sequence): Don't set DF_NO_INSN_RESCAN.

From-SVN: r128563
2007-09-17 23:41:36 +00:00
Richard Sandiford a765d68e75 mips.c (mips_file_start): Add ".previous" directives to both ".section"s.
gcc/
	* config/mips/mips.c (mips_file_start): Add ".previous" directives
	to both ".section"s.

From-SVN: r128562
2007-09-17 23:11:25 +00:00
Andreas Schwab 4fe7e75560 configure.ac: Raise minimum makeinfo version to 4.6.
* configure.ac: Raise minimum makeinfo version to 4.6.
	* configure: Regenerate.

From-SVN: r128561
2007-09-17 22:44:27 +00:00
Richard Sandiford f5678792a3 mips.c (mips_output_mi_thunk): Use mips_function_ok_for_sibcall and const_call_insn_operand to determine if...
gcc/
	* config/mips/mips.c (mips_output_mi_thunk): Use
	mips_function_ok_for_sibcall and const_call_insn_operand
	to determine if a direct sibcall is allowed.  Use
	mips_classify_symbol to determine a global pointer is needed.

From-SVN: r128560
2007-09-17 22:29:59 +00:00
Richard Sandiford ec49e31c8f mips.md (*clear_upper32): Use "W" as the memory operand.
gcc/
	* config/mips/mips.md (*clear_upper32): Use "W" as the memory operand.

From-SVN: r128559
2007-09-17 22:26:19 +00:00
Chao-ying Fu 8d2a9e0ee2 fixed-obj.mk: New file to support fine-grain fixed-point functions.
* fixed-obj.mk: New file to support fine-grain fixed-point functions.
	* Makefile.in (fixed_point): Define.
	Check if fixed_point is yes to build support functions.
	* configure.ac: Check for fixed_point support.
	* configure: Regenerated.
	* gen-fixed.sh: New file to generate lists of fixed-point labels,
	funcs, modes, from, to.

Co-Authored-By: Nigel Stephens <nigel@mips.com>

From-SVN: r128557
2007-09-17 22:18:13 +00:00
Chao-ying Fu 154e4a0a8d fixed-bit.h: New file.
* config/fixed-bit.h: New file.
	* config/fixed-bit.c: New file.
	* doc/libgcc.texi (Fixed-point fractional library routines): New node.

Co-Authored-By: Nigel Stephens <nigel@mips.com>

From-SVN: r128556
2007-09-17 22:12:54 +00:00
Jakub Jelinek 9cef5f55ff c-format.h (format_kind_info): Add alloc_char field.
* c-format.h (format_kind_info): Add alloc_char field.
	* c-format.c (scanf_flag_specs): Add 'm'.
	(scanf_flag_pairs): Add 'a', 'm' pair.
	(scan_char_table): Allow 'm' modifier for c, s, [, C and S.
	(format_types_orig): Add alloc_char fields.
	(check_format_info_main): Rename aflag to alloc_flag.
	Handle fki->alloc_char. modifier after width and before length
	modifiers.  Move FMT_FLAG_SCANF_A_KLUDGE handling before
	length modifiers as well.
	* config/sol2-c.c (solaris_format_types): Add alloc_char field.

	* gcc.dg/format/c90-scanf-5.c: New test.
	* gcc.dg/format/c99-scanf-4.c: New test.
	* gcc.dg/format/ext-7.c: New test.
	* gcc.dg/format/ext-8.c: New test.

From-SVN: r128555
2007-09-18 00:07:46 +02:00
Jakub Jelinek abc2dd3c9e re PR middle-end/33423 (internal compiler error: in expand_expr_real_1, at expr.c:8670)
PR middle-end/33423
	* builtins.c (expand_builtin_memory_chk): Handle COMPOUND_EXPRs
	returned by build_call_expr.

	* gcc.c-torture/compile/20070915-1.c: New test.

From-SVN: r128554
2007-09-18 00:05:40 +02:00
Eric Botcazou 93a85f02f1 tree-sra.c (maybe_lookup_element_for_expr): Return NULL for variable-sized records too.
* tree-sra.c (maybe_lookup_element_for_expr) <COMPONENT_REF>: Return
	NULL for variable-sized records too.
	(sra_walk_expr) <COMPONENT_REF>: Stop at variable-sized records too.

From-SVN: r128553
2007-09-17 18:47:15 +00:00
Tom Tromey 14f874333a c-decl.c (pushdecl): Don't set DECL_LANG_SPECIFIC.
* c-decl.c (pushdecl): Don't set DECL_LANG_SPECIFIC.
	(c_builtin_function): Likewise.
	(grokdeclarator): Likewise.

From-SVN: r128552
2007-09-17 18:01:01 +00:00
Tom Tromey be661bcec2 defineclass.cc (MAJOR_1_6): New define.
* defineclass.cc (MAJOR_1_6): New define.
	(MINOR_1_6): Likewise.
	(_Jv_ClassReader::parse): Handle 1.6 bytecode.

From-SVN: r128551
2007-09-17 16:30:46 +00:00
Tobias Burnus a08a5751bb re PR fortran/33106 (Access of components of public entities of private types wrongly allowed)
2007-09-17  Tobias Burnus  <burnus@net-b.de>

	PR fortran/33106
	* resolve.c (resolve_symbol): Reject public variable of
	private derived-types for Fortran 95.

2007-09-17  Tobias Burnus  <burnus@net-b.de>

	PR fortran/33106
	* gfortran.dg/private_type_9.f90: New.

From-SVN: r128550
2007-09-17 17:55:22 +02:00
Zdenek Dvorak 90b1c344ce re PR rtl-optimization/26449 (ICE in loop invariant motion)
PR rtl-optimization/26449
	* loop-invariant.c (move_invariant_reg): Do not use force_operand.
	(seq_insns_valid_p): Removed.

From-SVN: r128549
2007-09-17 15:38:48 +00:00
Eric Botcazou 6e87281146 tree-nomudflap.c (gate_mudflap): New static function.
* tree-nomudflap.c (gate_mudflap): New static function.
	(pass_mudflap_1): Use it as gate function.
	(pass_mudflap_2): Likewise.

From-SVN: r128548
2007-09-17 15:15:16 +00:00
Jan Hubicka 346d392350 re PR middle-end/33348 (gfortran.dg/g77/19990826-3.f fails at -O1)
PR middle-end/33348
	PR target/33406
	* loop-invariant.c (move_invariant_reg): Unshare sequence.

From-SVN: r128547
2007-09-17 15:12:10 +00:00
Eric Botcazou 8eedd0292f Remove superfluous line.
From-SVN: r128546
2007-09-17 14:47:27 +00:00
Johannes Singler a3e6b31a0f for_each.h: Fixed comment/doxygen markup typos.
2007-09-17  Johannes Singler  <singler@ira.uka.de>

        * include/parallel/for_each.h: Fixed comment/doxygen markup typos.
        * include/parallel/base.h: Same.
        * include/parallel/numeric: Same.
        * include/parallel/quicksort.h: Same.
        * include/parallel/compiletime_settings.h: Same.
        * include/parallel/random_shuffle.h: Same.
        * include/parallel/balanced_quicksort.h: Same.
        * include/parallel/tree.h: Same.
        * include/parallel/settings.h: Same.
        * include/parallel/search.h: Same.
        * include/parallel/partition.h: Same.
        * include/parallel/partial_sum.h: Same.

From-SVN: r128545
2007-09-17 12:58:07 +00:00
Johannes Singler d483feaa84 2007-09-17 Johannes Singler <singler@ira.uka.de>
* MAINTAINERS (write-after-approval) add myself

From-SVN: r128544
2007-09-17 12:38:26 +00:00
Francois-Xavier Coudert 8e4aec95cc re PR middle-end/33449 (ICE for fortran code with -O2 -ftree-vectorize)
PR middle-end/33449
	* gfortran.dg/pr33449.f90: New test.

From-SVN: r128543
2007-09-17 10:42:29 +00:00
Paolo Carlini fd735b6a2e type_traitsfwd.h (aligned_storage): Remove declaration.
2007-09-17  Paolo Carlini  <pcarlini@suse.de>

	* include/tr1_impl/type_traitsfwd.h (aligned_storage): Remove
	declaration.
	* include/tr1_impl/type_traits (aligned_storage): Remove.
	* include/std/type_traits (aligned_storage, __aligned_storage_msa):
	Add.
	* include/tr1/type_traits (aligned_storage): Add.
	* testsuite/20_util/aligned_storage/value.cc: New.
	* testsuite/20_util/aligned_storage/requirements/
	explicit_instantiation.cc: Likewise.
	* testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust
	dg-error lines.
	* testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
	Likewise.

From-SVN: r128542
2007-09-17 10:18:51 +00:00
Tobias Burnus 0ab7816b23 resolve.c (resolve_fl_procedure): Allow private dummies for Fortran 2003.
2007-09-17  Tobias Burnus  <burnus@net-b.de>

	* resolve.c (resolve_fl_procedure): Allow private dummies
	for Fortran 2003.

2007-09-17  Tobias Burnus  <burnus@net-b.de>

	* gfortran.dg/interface_15.f90: Compile with -std=f95.
	* gfortran.dg/private_type_1.f90: Ditto
	* gfortran.dg/interface_18.f90: New.
	* gfortran.dg/private_type_8.f90: New.

From-SVN: r128541
2007-09-17 12:12:06 +02:00
Francois-Xavier Coudert dfcf0b12d1 trans-types.c (gfc_get_desc_dim_type): Do not to try emit debug info.
* trans-types.c (gfc_get_desc_dim_type): Do not to try
	emit debug info.
	(gfc_get_array_descriptor_base): Likewise.
	(gfc_get_mixed_entry_union): Likewise
	(gfc_get_derived_type): Set decl location for fields and
	derived type itself.

From-SVN: r128540
2007-09-17 10:03:12 +00:00
Victor Kaplansky 42cbdeac68 re PR tree-optimization/33319 (g++.dg/tree-ssa/pr27549.C ICE with vectorization)
PR tree-optimization/33319
        * tree-vect-analyze.c (vect_same_range_drs): New.
        (vect_vfa_range_equal): New.
        (vect_is_duplicate_ddr): Removed.
        (vect_mark_for_runtime_alias_test): Do not perform marking when
        optimizing for size or max_param for alias checking is zero.
        Move the function before vect_analyze_data_ref_dependence.
        (vect_analyze_data_ref_dependence): Add call to
        vect_mark_for_runtime_alias_test in two cases when dependence
        is not clear.
        (vect_analyze_data_ref_dependences): Do not call to
        vect_mark_for_runtime_alias_test.
        (vect_prune_runtime_alias_test_list): New.
        (vect_analyze_loop): Add call to vect_prune_runtime_alias_test_list.
        * tree-vect-transform.c (vect_estimate_min_profitable_iters):
        Update vec_outside_cost.
        (vect_vfa_segment_size): More compact code, use TYPE_SIZE_UNIT.
        (vect_create_cond_for_alias_checks): Build the base address of data
        reference from DR_GROUP_FIRST_DR.
        (vect_loop_versioning): New.
        (vect_transform_loop): Add a call to vect_loop_versioning.
        Remove factored out code.

From-SVN: r128539
2007-09-17 09:37:31 +00:00
Eric Botcazou 2adde4ffdc decl.c (gnat_to_gnu_entity): Make again the type of an object covered by 13.3(19) volatile.
* decl.c (gnat_to_gnu_entity) <object>: Make again the type of an
	object covered by 13.3(19) volatile.

From-SVN: r128538
2007-09-17 06:29:32 +00:00
John David Anglin b62a2e1534 re PR middle-end/33273 (FAIL: 27_io/basic_istream/ignore/char/1.cc (test for excess errors))
PR middle-end/33273
	* expr.c (store_expr): Call adjust_address to change mode of dest_mem
	to BLKmode.

From-SVN: r128537
2007-09-17 02:13:23 +00:00
GCC Administrator 9317b6af4e Daily bump.
From-SVN: r128535
2007-09-17 00:17:22 +00:00
Paolo Carlini 1f9e358abb type_traits (aligned_storage): Implement in the neat and general way.
2007-09-16  Paolo Carlini  <pcarlini@suse.de>
	    Douglas Gregor  <doug.gregor@gmail.com>

	* include/tr1_impl/type_traits (aligned_storage): Implement
	in the neat and general way.

Co-Authored-By: Douglas Gregor <doug.gregor@gmail.com>

From-SVN: r128532
2007-09-16 23:59:34 +00:00
Paolo Carlini 57711cd1b3 re PR c++/33124 (C++ frontend should not warn about new a[0] in template context)
/cp
2007-09-16  Paolo Carlini  <pcarlini@suse.de>

	PR c++/33124
	* init.c (build_new): Remove warning for zero-element
	allocations.

/testsuite
2007-09-16  Paolo Carlini  <pcarlini@suse.de>

	PR c++/33124
	* g++.dg/warn/new1.C: Adjust.
	* g++.dg/torture/str_empty.C: Likewise.

From-SVN: r128531
2007-09-16 22:54:12 +00:00
Richard Sandiford 348eea5f00 dse.c (find_shift_sequence): Allow word as well as subword shifts.
gcc/
	* dse.c (find_shift_sequence): Allow word as well as subword shifts.
	Do the tentative shift expansion with the DF_NO_INSN_RESCAN flag set.
	Fix the call to insn_rtx_cost.  Skip access sizes that require a
	real truncation of the store register.  Use convert_move instead
	of gen_lowpart when narrowing the result.
	(replace_read): Use convert_move instead of gen_lowpart when
	narrowing the store rhs.

gcc/testsuite/
	* gcc.target/mips/dse-1.c: New test.

From-SVN: r128530
2007-09-16 21:02:54 +00:00
Nathan Sidwell 0ee3f0a892 re PR c++/32756 (wrong ambiguous overload error?)
cp/
	PR c++/32756
	* call.c (maybe_handle_implicit_object): Set this_p, clear
	rvaluedness_matches_p.
	(compare_ics): Do not compare rvaluedness matching when one of the
	operands is an implicit object.

	testsuite/
	PR c++/32756
	* g++.dg/overload/operator3.C: New.

From-SVN: r128528
2007-09-16 17:26:42 +00:00
Richard Sandiford ce616dd5ac Fix typo.
From-SVN: r128526
2007-09-16 09:46:44 +00:00
Richard Sandiford 7ed67b7aba mips.md (SHORT): Fix long line.
gcc/
	* config/mips/mips.md (SHORT): Fix long line.
	(SUBDI): New mode iterator.  Extend the shift-and-truncate insns
	to QImode and HImoe.

gcc/testsuite/
	* gcc.target/mips/truncate-1.c: New test.

From-SVN: r128525
2007-09-16 09:45:36 +00:00
Richard Sandiford 0dc3178264 mips.h (POINTERS_EXTEND_UNSIGNED): Define.
gcc/
	* config/mips/mips.h (POINTERS_EXTEND_UNSIGNED): Define.

From-SVN: r128524
2007-09-16 09:23:31 +00:00
Paul Thomas 1d6b7f396a re PR fortran/29396 (segfault with character pointer association)
2007-09-16  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/29396
	PR fortran/29606
	PR fortran/30625
	PR fortran/30871
	* trans.h : Add extra argument to gfc_build_array_ref. Rename
	gfc_conv_aliased_arg to gfc_conv_subref_array_arg.  Move
	prototype of is_aliased_array to gfortran.h and rename it
	gfc_is_subref_array.  Add field span to lang_decl, add a new
	decl lang specific flag accessed by GFC_DECL_SUBREF_ARRAY_P
	and a new type flag GFC_DECL_SUBREF_ARRAY_P.
	* trans.c (gfc_build_array_ref): Add the new argument, decl.
	If this is a subreference array pointer, use the lang_decl
	field 'span' to calculate the offset in bytes and use pointer
	arithmetic to address the element.
	* trans-array.c (gfc_conv_scalarized_array_ref,
	gfc_conv_array_ref): Add the backend declaration as the third
	field, if it is likely to be a subreference array pointer.
	(gfc_conv_descriptor_dimension, gfc_trans_array_ctor_element,
	gfc_trans_array_constructor_element, structure_alloc_comps,
	gfc_conv_array_index_offset): For all other references to
	gfc_build_array_ref, set the third argument to NULL.
	(gfc_get_dataptr_offset): New function.
	(gfc_conv_expr_descriptor): If the rhs of a pointer assignment
	is a subreference array, then calculate the offset to the
	subreference of the first element and set the descriptor data
	pointer to this, using gfc_get_dataptr_offset.
	trans-expr.c (gfc_get_expr_charlen): Use the expression for the
	character length for a character subreference.
	(gfc_conv_substring, gfc_conv_subref_array_arg): Add NULL for
	third argument in call to gfc_build_array_ref.
	(gfc_conv_aliased_arg): Rename to gfc_conv_subref_array_arg.
	(is_aliased_array): Remove.
	(gfc_conv_function_call): Change reference to is_aliased_array
	to gfc_is_subref_array and reference to gfc_conv_aliased_arg to
	gfc_conv_subref_array_arg.
	(gfc_trans_pointer_assignment): Add the array element length to
	the lang_decl 'span' field.
	* gfortran.h : Add subref_array_pointer to symbol_attribute and
	add the prototype for gfc_is_subref_array.
	* trans-stmt.c : Add NULL for third argument in all references
	to gfc_build_array_ref.
	* expr.c (gfc_is_subref_array): Renamed is_aliased_array.
	If this is a subreference array pointer, return true.
	(gfc_check_pointer_assign): If the rhs is a subreference array,
	set the lhs subreference_array_pointer attribute.
	* trans-decl.c (gfc_get_symbol_decl): Allocate the lang_decl
	field if the symbol is a subreference array pointer and set an
	initial value of zero for the 'span' field.
	* trans-io.c (set_internal_unit): Refer to is_subref_array and
	gfc_conv_subref_array_arg.
	(nml_get_addr_expr): Add NULL third argument to
	gfc_build_array_ref. 
	(gfc_trans_transfer): Use the scalarizer for a subreference
	array.

2007-09-16  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/29396
	PR fortran/29606
	PR fortran/30625
	PR fortran/30871
	* gfortran.dg/subref_array_pointer_1.f90: New test.
	* gfortran.dg/subref_array_pointer_2.f90: New test.

From-SVN: r128523
2007-09-16 09:17:49 +00:00
GCC Administrator 1b95f1f634 Daily bump.
From-SVN: r128521
2007-09-16 00:16:57 +00:00
H.J. Lu de5889efdc * gfortran.dg/nint_2.f90: Correct last change.
From-SVN: r128518
2007-09-16 00:12:51 +00:00
Zdenek Dvorak 5f40b3cbe2 tree-parloops.c: New file.
* tree-parloops.c: New file.
	* tree-ssa-operands.h (free_stmt_operands): Declare.
	* tree-ssa-loop-manip.c (split_loop_exit_edge): Return the new basic
	block.
	* tree-pass.h (pass_parallelize_loops): Declare.
	* omp-low.c (expand_omp_parallel, expand_omp_for): Update SSA form for
	virtual operands.
	(build_omp_regions_1): Allow analysing just a single OMP region and
	its subregions.
	( build_omp_regions_root, omp_expand_local): New functions.
	(build_omp_regions): Add argument to build_omp_regions_1 call.
	* builtins.def (DEF_GOMP_BUILTIN): Initialize OMP builtins when
	autoparallelization is run.
	* timevar.def (TV_TREE_PARALLELIZE_LOOPS): New.
	* tree-ssa-loop.c (gate_tree_parallelize_loops, tree_parallelize_loops,
	pass_parallelize_loops): New.
	* common.opt (ftree-parallelize-loops): New.
	* tree-flow.h (omp_expand_local, tree_duplicate_sese_tail,
	parallelize_loops): Declare.
	(add_phi_args_after_copy, split_loop_exit_edge): Declaration changed.
	* Makefile.in (tree-parloops.o): Added.
	* tree-cfg.c (add_phi_args_after_copy_edge, tree_duplicate_sese_tail):
	New functions.
	(add_phi_args_after_copy_bb): Use add_phi_args_after_copy_edge.
	(add_phi_args_after_copy): Call add_phi_args_after_copy_edge for
	one extra edge as well.
	(tree_duplicate_sese_region): Add argument to add_phi_args_after_copy.
	Use VEC_free to free doms vector.
	(move_block_to_fn): Update loop info. Remove phi nodes for virtual
	operands.  Recompute operand caches in the new function.
	(move_sese_region_to_fn): Update loop info.
	* passes.c (init_optimization_passes): Add pass_parallelize_loops.
	* tree-ssa-operands.c (free_stmt_operands): New function.

	* doc/passes.texi: Document autoparallelization.
	* doc/invoke.texi (-ftree-parallelize-loops): New option.

	* gcc.dg/tree-ssa/parallelization-1.c: New test.

From-SVN: r128517
2007-09-15 21:53:45 +00:00