Commit Graph

17814 Commits

Author SHA1 Message Date
Uros Bizjak 8c2b2faee5 * config/i386/i386.h (PUSH_ROUNDING): Redefine using UNITS_PER_WORD.
From-SVN: r164328
2010-09-16 08:34:12 +02:00
Jason Merrill da9bc840f6 semantics.c (finish_id_expression): Diagnose use of function parms in evaluated context outside function body.
* semantics.c (finish_id_expression): Diagnose use of function
	parms in evaluated context outside function body.

From-SVN: r164322
2010-09-15 19:55:49 -04:00
Jason Merrill 441b624e3d * decl2.c (grokbitfield): Diagnose non-integral width.
From-SVN: r164321
2010-09-15 19:55:43 -04:00
Eric Botcazou 9fa07b131e re PR rtl-optimization/45593 (segfault with -Os)
PR rtl-optimization/45593
	* reorg.c (relax_delay_slots): Use emit_copy_of_insn_after to re-emit
	insns that were in delay slots as stand-alone insns.

From-SVN: r164318
2010-09-15 22:48:00 +00:00
Martin Jambor 1faab08daf re PR middle-end/45644 (450.soplex in SPEC CPU 2006 is miscompiled)
2010-09-15  Martin Jambor  <mjambor@suse.cz>

	PR middle-end/45644
	* tree-sra.c (create_access): Check for bit-fields directly.

	* testsuite/gcc.dg/ipa/pr45644.c: New test.

From-SVN: r164313
2010-09-15 17:59:27 +02:00
Jakub Jelinek cc99c5fefc re PR tree-optimization/45633 (internal compiler error: verify_stmts failed)
PR tree-optimization/45633
	* tree-cfg.c (verify_gimple_assign_binary): Allow
	MINUS_EXPR with lhs and rhs1 pointer vector and
	rhs2 sizetype vector.
	* expr.c (expand_expr_real_2) <case PLUS_EXPR>: For pointer
	or vector pointer use TER to optimize pointer subtraction.

	* gcc.dg/vect/pr45633.c: New test.

From-SVN: r164312
2010-09-15 17:42:41 +02:00
Janus Weil edd2b56ab9 re PR fortran/45577 (Bogus(?) "... type incompatible with source-expr ..." error)
2010-09-15  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/45577
	* resolve.c (resolve_allocate_expr): Do default initialization via
	EXEC_INIT_ASSIGN.


2010-09-15  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/45577
	* gfortran.dg/allocate_derived_4.f90: New.

From-SVN: r164305
2010-09-15 15:50:15 +02:00
Tejas Belagod 0f38f22947 neon.md (vec_pack_trunc_<mode>): Instruction pattern for vmovn.
gcc/

2010-09-15  Tejas Belagod  <tejas.belagod@arm.com>

        * config/arm/neon.md (vec_pack_trunc_<mode>): Instruction
        pattern for vmovn. Expansion in case of non 
        -mvectorize-with-neon-quad.
        (neon_vec_pack_trunc_<mode>): Instruction pattern for vmovn for
        non- -mvectorize-with-neon-quad case.
        (move_lo_quad_<mode>): New expansion to vmov into low part.
        (move_hi_quad_<mode>): New expansion to vmov into high part.
        (move_lo_quad_v4si): Refactor to move_lo_quad_<mode> expansion.
        (move_lo_quad_v4sf): Likewise.
        (move_lo_quad_v8hi): Likewise.
        (neon_move_lo_quad_<mode>): Instruction pattern for vmov into
        low part.
        (neon_move_hi_quad_<mode>): Instruction pattern for vmov into
        high part.
        * config/arm/iterators.md (ANY128): New mode iterator.
        (V_narrow_pack): New mode attribute.
        (V_HALF): Add attribute.
        (V_DOUBLE): Add attribute.
        (V_mode_nunits): Add attribute.

gcc/testsuite

2010-09-15  Tejas Belagod  <tejas.belagod@arm.com>

        * lib/target-supports.exp
        (check_effective_target_vect_pack_trunc): Set vect_pack_trunc
        supported flag to true for neon.

From-SVN: r164302
2010-09-15 12:18:07 +01:00
Paolo Carlini 6809f4b50e re PR c++/45665 (ICE: tree check: expected class 'type', have 'exceptional' (error_mark) in grokdeclarator, at cp/decl.c:8797 on invalid code)
/cp
2010-09-15  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/45665
	* decl.c (grokdeclarator): Check build_memfn_type return value
	for error_mark_node.

/testsuite
2010-09-15  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/45665
	* g++.dg/template/crash103.C: New.

From-SVN: r164299
2010-09-15 09:06:32 +00:00
Nicola Pero 0f185d6eb2 In gcc/testsuite/:
2010-09-15  Nicola Pero  <nicola.pero@meta-innovation.com>

        Merge from 'apple/trunk' branch on FSF servers.

        2006-03-09 Fariborz Jahanian <fjahanian@apple.com>

        Radar 4457381
        * objc.dg/msg-in-protocol.m: New.
        * obj-c++.dg/msg-in-protocol.mm: New.

        2006-02-07  Fariborz Jahanian <fjahanian@apple.com>

        Radar 4219590
        * objc.dg/break-in-ifstmt.m: New.
        
        2005-08-22  Ziemowit Laski  <zlaski@apple.com>

        Radar 4174166
        * obj-c++.dg/comp-types-13.mm: New.
        * objc.dg/comp-types-12.m: New.

        2005-08-22  Ziemowit Laski  <zlaski@apple.com>

        Radar 4216500
        * obj-c++.dg/proto-lossage-7.mm: New.
        * objc.dg/proto-lossage-7.m: New.

In gcc/objc/:
        
2010-09-15  Nicola Pero  <nicola.pero@meta-innovation.com>

        Merge from 'apple/trunk' branch on FSF servers.

        2006-03-09 Fariborz Jahanian <fjahanian@apple.com>

        Radar 4457381
        * objc/objc-act.c (objc_finish_message_expr): Look for message in
        @class's protocol list.

        2006-02-07  Fariborz Jahanian <fjahanian@apple.com>

        Radar 4219590
        * objc/objc-act.c (objc_start_method_definition): Initialize
        break/continue labels.

        2005-08-22  Ziemowit Laski  <zlaski@apple.com>

        Radar 4174166
        * objc-act.c (objc_compare_types): Compare function
        pointers; indicate success if the right-hand side has
        a return type that is covariant, and the argument types
        contravariant, with those of the left side.

        2005-08-22  Ziemowit Laski  <zlaski@apple.com>

        Radar 4216500
        * objc-act.c (objc_get_protocol_qualified_type): When looking
        at a typedef, retrieve the precise type it describes (rather
        than merely looking up a class by name).

From-SVN: r164290
2010-09-15 00:08:59 +00:00
Jan Hubicka 8780c9cbac funcspec-1.c: Remove static keywords to prevent folding.
* gcc.target/i386/funcspec-1.c: Remove static keywords to prevent
	folding.

From-SVN: r164283
2010-09-14 16:33:16 +00:00
Jan Hubicka 92df1544e9 fast-math-pr38968.f90: Add common to prevent folding.
* gfortran.dg/vect/fast-math-pr38968.f90: Add common to prevent
	folding.

From-SVN: r164282
2010-09-14 16:27:15 +00:00
Jakub Jelinek 4359dc2a31 re PR middle-end/45567 (__builtin_popcountl ICEs with -ftree-ter)
PR middle-end/45567
	* builtins.c (expand_builtin_interclass_mathfn, expand_builtin_cexpi,
	expand_builtin_powi): Remove subtarget argument, pass NULL_RTX instead.
	(expand_builtin): Adjust caller.
	(expand_builtin_unop): Only use subtarget if it has the right mode.

	* gcc.dg/pr45567.c: New test.

From-SVN: r164274
2010-09-14 12:11:11 +02:00
Jakub Jelinek 4a6e5cc885 re PR debug/45660 (ICE in dwarf2out_finish)
PR debug/45660
	* dwarf2out.c (gen_decl_die): Call gen_type_die for origin before
	gen_type_die for function/method return type.

	* g++.dg/debug/pr45660.C: New test.

From-SVN: r164271
2010-09-14 11:48:04 +02:00
Ira Rosen 5a2c198638 re PR tree-optimization/45470 (ICE: verify_flow_info failed: BB 2 can not throw but has an EH edge with -ftree-vectorize -fnon-call-exceptions)
PR tree-optimization/45470
	* tree-vect-data-refs.c (vect_analyze_data_refs): Fail if a statement
	can throw an exception.
	* tree-vect-stmts.c (vectorizable_call): Likewise.

From-SVN: r164270
2010-09-14 09:21:15 +00:00
Jack Howarth 2f78283b38 re PR target/42070 (FAIL: g++.dg/tree-prof/partition1.C compilation, -O3 -g -fprofile-use)
2010-09-10  Jack Howarth <howarth@bromo.med.uc.edu>

	PR target/42070
	* gcc/testsuite/lib/profopt.exp: Prune warnings on execname2 compile.
	* gcc/testsuite/lib/prune.exp: Prune "can't add line info" warnings.

From-SVN: r164269
2010-09-14 07:40:44 +00:00
Jerry DeLisle 927b02e5f8 re PR fortran/45532 (gfortran namelist read error)
2010-09-14  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR libfortran/45532
	* gfortran.dg/namelist_64.f90: New test.

From-SVN: r164267
2010-09-14 04:39:13 +00:00
Olivier Hainque 10d58e6b56 Fix accidental mishap on testcase.
From-SVN: r164259
2010-09-13 21:44:26 +00:00
Jakub Jelinek ef3be7da31 re PR rtl-optimization/45617 (optimize bit shift+compare at RTL level)
PR rtl-optimization/45617
	* combine.c (simplify_comparison): Optimize (X >> N) {>,>=,<,<=} C
	even if low N bits of X aren't known to be zero.

	* gcc.target/i386/pr45617.c: New test.

From-SVN: r164257
2010-09-13 23:00:03 +02:00
Dave Korn fa0921fcd0 volatile-2.c: Allow underscores before symbols.
* gcc.target/i386/volatile-2.c: Allow underscores before symbols.

From-SVN: r164256
2010-09-13 19:41:12 +00:00
H.J. Lu e72eba8584 Disable double precision vectorizer for Atom.
gcc/

2010-09-13  H.J. Lu  <hongjiu.lu@intel.com>

	* config/i386/i386-protos.h (ix86_units_per_simd_word): New.

	* config/i386/i386.c (initial_ix86_tune_features): Add
	X86_TUNE_VECTORIZE_DOUBLE.
	(ix86_units_per_simd_word): New.

	* config/i386/i386.h (ix86_tune_indices): Add
	X86_TUNE_VECTORIZE_DOUBLE.
	(TARGET_VECTORIZE_DOUBLE): New.
	(UNITS_PER_SIMD_WORD): Defined with ix86_units_per_simd_word.

gcc/testsuite/

2010-09-13  H.J. Lu  <hongjiu.lu@intel.com>

	* gcc.target/i386/fma4-256-vector.c: Add -mtune=generic.
	* gcc.target/i386/fma4-vector.c: Likewise.
	* gcc.target/i386/vectorize2.c: Likewise.
	* gcc.target/i386/vectorize4.c: Likewise.
	* gcc.target/i386/vectorize5.c: Likewise.
	* gcc.target/i386/vectorize6.c: Likewise.
	* gcc.target/i386/vectorize8.c: Likewise.

	* gcc.target/i386/vect-double-1.c: New.
	* gcc.target/i386/vect-double-1a.c: Likewise.
	* gcc.target/i386/vect-double-2.c: Likewise.
	* gcc.target/i386/vect-double-2a.c: Likewise.

	* lib/target-supports.exp (check_effective_target_vect_double):
	Set et_vect_double_saved to 0 when tuning for Atom.

From-SVN: r164255
2010-09-13 12:33:52 -07:00
Jan Hubicka e196b22163 tree.c (build_zero_cst): New.
* tree.c (build_zero_cst): New.
	* tree.h (build_zero_cst): Declare.
	* tree-ssa-ccp.c (get_constant_value): Accept general operands.
	(get_base_constructor): Break out from ...
	(fold_const_aggregate_ref): Here; handle empty constructors.

	* gcc.dg/torture/pr23821.c: Drop static keyword.
	* gcc.dg/tree-ssa/loop-19.c: Likewise.
	* gcc.dg/tree-ssa/foldconst-4.c: New.

From-SVN: r164250
2010-09-13 16:37:06 +00:00
Marcus Shawcroft e88290aca7 arm.md: (define_attr "conds"): Update comment.
2010-09-13  Marcus Shawcroft  <marcus.shawcroft@arm.com>

        * config/arm/arm.md: (define_attr "conds"): Update comment.
	* config/arm/sync.md (arm_sync_compare_and_swapsi): Change 
          conds attribute to clob.
          (arm_sync_compare_and_swapsi): Likewise.
	  (arm_sync_compare_and_swap<mode>): Likewise.
	  (arm_sync_lock_test_and_setsi): Likewise.
	  (arm_sync_lock_test_and_set<mode>): Likewise.
	  (arm_sync_new_<sync_optab>si): Likewise.
	  (arm_sync_new_nandsi): Likewise.
	  (arm_sync_new_<sync_optab><mode>): Likewise.
	  (arm_sync_new_nand<mode>): Likewise.
	  (arm_sync_old_<sync_optab>si): Likewise.
	  (arm_sync_old_nandsi): Likewise.
	  (arm_sync_old_<sync_optab><mode>): Likewise.
	  (arm_sync_old_nand<mode>): Likewise.

2010-09-13  Marcus Shawcroft  <marcus.shawcroft@arm.com>

	* gcc.target/arm/sync-1.c: New.

From-SVN: r164247
2010-09-13 15:06:26 +00:00
Olivier Hainque 2f434b97f1 fwprop.c (forward_propagate_and_simplify): Only attach a REG_EQUAL note to an insn if the destination is a register.
* fwprop.c (forward_propagate_and_simplify): Only attach a
        REG_EQUAL note to an insn if the destination is a register.
        * gcse.c (try_replace_reg): Likewise.

        testsuite/
        * gnat.dg/memtrap.adb: New test.

From-SVN: r164245
2010-09-13 14:18:31 +00:00
Francois-Xavier Coudert 616f12900d * gfortran.dg/promotion.f90: Fix options.
From-SVN: r164215
2010-09-11 16:34:01 +00:00
Rodrigo Rivas Costa f9132eb797 Implement range-based for-statements.
* cp-tree.def (RANGE_FOR_STMT): New.
	* cp-tree.h (RANGE_FOR_DECL, RANGE_FOR_EXPR, RANGE_FOR_BODY): New.
	(cp_convert_range_for): Declare.
	* pt.c (tsubst_expr): Add RANGE_FOR_STMT.
	(tsubst_copy_and_build): perform_koenig_lookup takes extra argument.
	* semantics.c (begin_range_for_stmt): New.
	(finish_range_for_decl): New.
	(finish_for_stmt): Accept also RANGE_FOR_STMT.
	(perform_koenig_lookup): Add extra argument include_std.
	* parser.c (cp_parser_c_for): New with code from
	cp_parser_iteration_statement().
	(cp_parser_range_for): New.
	(cp_convert_range_for): New.
	(cp_parser_iteration_statement): Add range-for support.
	(cp_parser_condition): Adjust comment.
	(cp_parser_postfix_expression): perform_koenig_lookup takes extra
	argument.
	* dump.c (cp_dump_tree): Add RANGE_FOR_STMT.
	* cxx-pretty-print.c: Likewise.
	* lex.c (cxx_init): Likewise.
	* name-lookup.c (lookup_function_nonclass): Add extra argument
	include_std.
	(lookup_arg_dependent): Likewise.
	* name-lookup.h: Likewise.

From-SVN: r164211
2010-09-11 01:20:08 -04:00
Mikael Morin 712efae143 gfortran.h (gfc_expr): Remove inline_noncopying_intrinsic attribute.
2010-09-11  Mikael Morin  <mikael@gcc.gnu.org>

	* gfortran.h (gfc_expr): Remove inline_noncopying_intrinsic attribute.
	* dependency.c (gfc_check_dependency): Don't depend on
	expr's inline_noncopying_intrinsic_attribute.
	* dependency.c (gfc_check_argument_var_dependency,
	gfc_check_argument_dependency): Ditto. Recursively check dependency
	as NOT_ELEMENTAL in the non-copying (=transpose) case.
	* trans-intrinsic.c (gfc_conv_intrinsic_function): Ditto.
	* resolve.c (find_noncopying_intrinsics): Remove.
	(resolve_function, resolve_call): Remove call to
	find_noncopying_intrinsics.

	* trans-array.c (gfc_conv_array_transpose): Remove.
	(gfc_walk_subexpr): Make non-static. Move prototype...
	* trans-array.h (gfc_walk_subexpr): ... here.
	* trans-intrinsic.c (gfc_conv_intrinsic_function): Update transpose
	handling.
	(walk_inline_intrinsic_transpose, walk_inline_intrinsic_function,
	gfc_inline_intrinsic_function_p): New.
	(gfc_is_intrinsic_libcall): Return early in inline intrinsic case.
	Remove transpose from the libcall list.
	(gfc_walk_intrinsic_function): Special case inline intrinsic.
	* trans.h (gfc_inline_intrinsic_function_p): New prototype.

2010-09-11  Mikael Morin  <mikael@gcc.gnu.org>

	* gfortran.dg/inline_transpose_1.f90: Update temporary's locations
	and counts. Check that transpose is not called.
	* gfortran.dg/transpose_2.f90: Update error message.

From-SVN: r164205
2010-09-10 23:38:54 +00:00
Rodrigo Rivas Costa bc2c4cb45e re PR c++/43824 (C++0x feature "inline namespace" enabled under -std=c++98; no warnings)
PR c++/43824
	* error.c (maybe_warn_cpp0x): Add new warning
	CPP0X_INLINE_NAMESPACES.
	* parser.c (cp_parser_namespace_definition): Likewise.
	* cp-tree.h (cpp0x_warn_str): Likewise.

From-SVN: r164201
2010-09-10 14:28:59 -04:00
H.J. Lu 9096633797 Check that result of string folding is of integral type.
gcc/

2010-09-10  H.J. Lu  <hongjiu.lu@intel.com>

	PR middle-end/45634
	* tree-ssa-ccp.c (fold_const_aggregate_ref): Check that result
	of string folding is of integral type.

gcc/testsuite/

2010-09-10  H.J. Lu  <hongjiu.lu@intel.com>

	PR middle-end/45634
	* gfortran.fortran-torture/compile/pr45634.f90: New.

From-SVN: r164183
2010-09-10 07:44:20 -07:00
Nicola Pero 1c732eb722 * objc.dg/fobjc-exceptions.m: New test.
From-SVN: r164152
2010-09-10 09:54:54 +00:00
Jan Hubicka eafedef383 re PR tree-optimization/45605 (Missed devirtualization)
PR tree-optimization/45605
	* cp/class.c (build_vtbl_initializer): Avoid wrong type conversion in ADDR_EXPR

From-SVN: r164148
2010-09-10 09:42:20 +00:00
Uros Bizjak 2b74262bfc * ChangeLog: Remove SVN conflict marks.
From-SVN: r164144
2010-09-10 11:05:52 +02:00
Martin Jambor d242d0634c re PR tree-optimization/44972 (ICE: in load_assign_lhs_subreplacements, at tree-sra.c:2475)
2010-09-10  Martin Jambor  <mjambor@suse.cz>

	PR tree-optimization/44972
	* tree-sra.c: Include toplev.h.
	(build_ref_for_offset): Entirely reimplemented.
	(build_ref_for_model): New function.
	(build_user_friendly_ref_for_offset): New function.
	(analyze_access_subtree): Removed build_ref_for_offset check.
	(propagate_subaccesses_across_link): Likewise.
	(create_artificial_child_access): Use
	build_user_friendly_ref_for_offset.
	(propagate_subaccesses_across_link): Likewise.
	(ref_expr_for_all_replacements_p): Removed.
	(generate_subtree_copies): Updated comment.  Use build_ref_for_model.
	(sra_modify_expr): Use build_ref_for_model.
	(load_assign_lhs_subreplacements): Likewise.
	(sra_modify_assign): Removed ref_expr_for_all_replacements_p checks,
	checks for return values of build_ref_for_offset.
	* ipa-cp.c (ipcp_lattice_from_jfunc): No need to check return value of
	build_ref_for_offset.
	* ipa-prop.h: Include gimple.h
	* ipa-prop.c (ipa_compute_jump_functions): Update to look for MEM_REFs.
	(ipa_analyze_indirect_call_uses): Update comment.
	* Makefile.in (tree-sra.o): Add $(GIMPLE_H) to dependencies.
	(IPA_PROP_H): Likewise.

	* testsuite/gcc.dg/ipa/ipa-sra-1.c: Adjust scanning expressions.
	* testsuite/gcc.dg/tree-ssa/pr45144.c: Likewise.
	* testsuite/gcc.dg/tree-ssa/forwprop-5.c: Likewise and scan optimzed
	dump instead.
        * testsuite/g++.dg/torture/pr44972.C: New test.

From-SVN: r164136
2010-09-10 01:38:23 +02:00
Martin Jambor fffe1e4064 re PR tree-optimization/44972 (ICE: in load_assign_lhs_subreplacements, at tree-sra.c:2475)
2010-09-10  Martin Jambor  <mjambor@suse.cz>

	PR tree-optimization/44972
	* ipa-prop.c (ipa_modify_call_arguments): Build MEM_REF instead of
	calling build_ref_for_offset.

	* testsuite/g++.dg/torture/pr34850.C: Remove expected warning.

From-SVN: r164135
2010-09-10 01:28:27 +02:00
Steven G. Kargl 26865ab4e8 dummy_optional_arg.f90: New test.
2010-09-09  Steven G. Kargl  <kargl@gcc.gnu.org>

	* gfortran.dg/dummy_optional_arg.f90: New test.

2010-09-09  Steven G. Kargl  <kargl@gcc.gnu.org>

	* fortran/expr.c (check_inquiry): OPTIONAL attribute is not allowed
	for dummy argument that appears in a specification statement.

From-SVN: r164120
2010-09-09 18:52:11 +00:00
Jan Hubicka 54e34c358a tree-ssa-ccp.c (fold_const_aggregate_ref): Check that result of string folding is of integral type.
* tree-ssa-ccp.c (fold_const_aggregate_ref): Check that result of
	string folding is of integral type.
	* fortran.fortran-torture/compile/pr45598.f90: New test.

From-SVN: r164111
2010-09-09 15:07:21 +00:00
Nathan Sidwell ba885ec559 configure.ac (gnu_indirect_function): New test.
* configure.ac (gnu_indirect_function): New test.
	* configure: Rebuilt.
	* config.in (HAVE_GAS_INDIRECT_FUNCTION): New.
	* defaults.h (IFUNC_ASM_TYPE): Provide default.

	* doc/extend.texi (Function Attributes): Document ifunc.
	* varasm.c (do_assemble_alias): Deal with ifuncs too.

	c-family/
	* c-common.c (handle_alias_ifunc_attribute): New, broken out of	...
	(handle_alias_attribute): ... here.
	(handle_ifunc_attribute): New.

	testsuite/
	* lib/target-supports-dg.exp (dg-require-ifunc): New.
	* lib/target-supports.exp (check_ifunc_available): New.
	* gcc.dg/attr-ifunc-1.c: New.
	* gcc.dg/attr-ifunc-2.c: New.
	* gcc.dg/attr-ifunc-3.c: New.
	* gcc.dg/attr-ifunc-4.c: New.
	* gcc.dg/attr-ifunc-5.c: New.
	* testsuite/g++.dg/ext/attr-ifunc-1.C
	* testsuite/g++.dg/ext/attr-ifunc-2.C
	* testsuite/g++.dg/ext/attr-ifunc-3.C
	* testsuite/g++.dg/ext/attr-ifunc-4.C

From-SVN: r164110
2010-09-09 14:12:57 +00:00
Vladimir Makarov b100151b6d re PR middle-end/40386 (wrong code generation for several SPEC CPU2000 benchmarks (lucas, mgrid, face, applu, apsi) with -O1 -fno-ira-share-spill-slots)
2010-09-09  Vladimir Makarov  <vmakarov@redhat.com>

	PR middle-end/40386
	* ira.c (pseudo_for_reload_consideration_p): Don't use
	flag_ira_share_spill_slots.

2010-09-09  Vladimir Makarov  <vmakarov@redhat.com>

	PR middle-end/40386
	* gcc.c-torture/execute/{pr40386.c,pr40386.x}: New testcase.

From-SVN: r164100
2010-09-09 13:51:25 +00:00
Mikael Morin d09b9f672b trans-array.c (gfc_conv_array_transpose): Change generated descriptor name
2010-09-09  Mikael Morin  <mikael@gcc.gnu.org>

	* trans-array.c (gfc_conv_array_transpose): Change generated descriptor
	name

2010-09-09  Mikael Morin  <mikael@gcc.gnu.org>

	* gfortran.dg/inline_transpose_1.f90: New test.

From-SVN: r164087
2010-09-09 12:56:12 +00:00
Jakub Jelinek e8e399c334 re PR c++/45588 (unused-but-set-variable false trigger building gold)
PR c++/45588
	* pt.c (tsubst) <case INTEGER_TYPE>: Call mark_rvalue_use
	before calling fold_decl_constant_value.

	* g++.dg/warn/Wunused-var-15.C: New test.

From-SVN: r164051
2010-09-09 08:50:56 +02:00
John David Anglin f5b281c0ed Wunused-var-12.c: Add -fno-common to options on 32-bit hppa*-*-hpux*.
* c-c++-common/Wunused-var-12.c: Add -fno-common to options on 32-bit
	hppa*-*-hpux*.

From-SVN: r164044
2010-09-09 01:54:21 +00:00
Nicola Pero 5c0b0c75a9 Fixed typo in ChangeLog date in one of my last commits
From-SVN: r164025
2010-09-08 21:04:34 +00:00
Nicola Pero 2023bba815 throw-nil.m: New test.
* objc/execute/exceptions/throw-nil.m: New test.
	* objc/execute/exceptions/handler-1.m: Updated to use the new
	objc_set_uncaught_exception_handler() function.
	* objc/execute/exceptions/matcher-1.m: New test.

From-SVN: r164024
2010-09-08 21:03:51 +00:00
Francois-Xavier Coudert 88a95a119b re PR fortran/38282 (Bit intrinsics: ILEN and IBCHNG)
PR fortran/38282

	* intrinsic.c (add_functions): Add B{G,L}{E,T}, DSHIFT{L,R},
	MASK{L,R}, MERGE_BITS and SHIFT{A,L,R}.
	* gfortran.h: Define ISYM values for above intrinsics.
	* intrinsic.h (gfc_check_bge_bgt_ble_blt, gfc_check_dshift,
	gfc_check_mask, gfc_check_merge_bits, gfc_check_shift,
	gfc_simplify_bge, gfc_simplify_bgt, gfc_simplify_ble,
	gfc_simplify_blt, gfc_simplify_dshiftl, gfc_simplify_dshiftr,
	gfc_simplify_lshift, gfc_simplify_maskl, gfc_simplify_maskr,
	gfc_simplify_merge_bits, gfc_simplify_rshift,
	gfc_simplify_shifta, gfc_simplify_shiftl, gfc_simplify_shiftr,
	gfc_resolve_dshift, gfc_resolve_mask, gfc_resolve_merge_bits,
	gfc_resolve_shift): New prototypes.
	* iresolve.c (gfc_resolve_dshift, gfc_resolve_mask,
	gfc_resolve_merge_bits, gfc_resolve_shift): New functions.
	* check.c (gfc_check_bge_bgt_ble_blt, gfc_check_dshift,
	gfc_check_mask, gfc_check_merge_bits, gfc_check_shift): New
	functions.
	* trans-intrinsic.c (gfc_conv_intrinsic_dshift,
	gfc_conv_intrinsic_bitcomp, gfc_conv_intrinsic_shift,
	gfc_conv_intrinsic_merge_bits, gfc_conv_intrinsic_mask): New
	functions.
	(gfc_conv_intrinsic_function): Call above static functions.
	* intrinsic.texi: Document new intrinsics.
	* simplify.c (gfc_simplify_bge, gfc_simplify_bgt, gfc_simplify_ble,
        gfc_simplify_blt, gfc_simplify_dshiftl, gfc_simplify_dshiftr,
        gfc_simplify_lshift, gfc_simplify_maskl, gfc_simplify_maskr,
        gfc_simplify_merge_bits, gfc_simplify_rshift, 
        gfc_simplify_shifta, gfc_simplify_shiftl, gfc_simplify_shiftr):
	New functions.

	* gfortran.dg/bit_comparison_1.F90: New test.
	* gfortran.dg/leadz_trailz_3.f90: New test.
	* gfortran.dg/masklr_2.F90: New test.
	* gfortran.dg/shiftalr_1.F90: New test.
	* gfortran.dg/merge_bits_2.F90: New test.
	* gfortran.dg/dshift_2.F90: New test.
	* gfortran.dg/bit_comparison_2.F90: New test.
	* gfortran.dg/masklr_1.F90: New test.
	* gfortran.dg/merge_bits_1.F90: New test.
	* gfortran.dg/dshift_1.F90: New test.
	* gfortran.dg/shiftalr_2.F90: New test.

From-SVN: r164021
2010-09-08 19:35:35 +00:00
Nicola Pero bd72fc7cd4 type-stream-1.m: Replaced with a test that tests that functions from objc/typedstream.h are...
* objc.dg/type-stream-1.m: Replaced with a test that tests that
        functions from objc/typedstream.h are deprecated.

From-SVN: r164016
2010-09-08 18:03:25 +00:00
Rainer Orth 0fa3d59471 sourcebuild.texi (Effective-Target Keywords): Document run_expensive_tests.
gcc:
	* doc/sourcebuild.texi (Effective-Target Keywords): Document
	run_expensive_tests.

	gcc/testsuite:
	* lib/target-supports.exp
	(check_effective_target_run_expensive_tests): New proc.
	* gcc.c-torture/compile/limits-fnargs.c: Use
	dg-require-effective-target run_expensive_tests.

From-SVN: r164012
2010-09-08 17:50:41 +00:00
Jakub Jelinek 7602cb87c6 re PR fortran/45597 (ICE: in gfc_trans_cycle, at fortran/trans-stmt.c:4320)
PR fortran/45597
	* trans-openmp.c (gfc_trans_omp_do): Store exit/cycle labels on code
	instead of code->block.

	* gfortran.dg/gomp/pr45597.f90: New test.

From-SVN: r164005
2010-09-08 18:47:16 +02:00
Jakub Jelinek 9c2934f4d9 re PR fortran/45595 (segfault on omp collapse)
PR fortran/45595
	* openmp.c (resolve_omp_do): Report not enough do loops for
	collapse even if block->next is NULL.

	* gfortran.dg/gomp/pr45595.f90: New test.

From-SVN: r164004
2010-09-08 18:46:13 +02:00
Michael Matz 42a3beeb9a * c-c++-common/uninit-17.c: Adjust.
From-SVN: r164002
2010-09-08 14:29:13 +00:00
Michael Matz a855b1b189 re PR tree-optimization/43430 (Missed vectorization: "stmt not supported: cond_expr")
PR tree-optimization/43430
	* tree-vect-stmts.c (vectorizable_condition): Support multiple
	copies for conditional statements if it's not part of a reduction.

testsuite/
	PR tree-optimization/43430
	* gcc.dg/vect/pr43430-2.c: New test.

From-SVN: r163999
2010-09-08 12:40:24 +00:00