Commit Graph

390 Commits

Author SHA1 Message Date
Ben Elliston
7ff0eaf679 gcc-dg.exp (gcc-dg-prune): Return "::unsupported::memory full" if the linker on spu-*-* warns about...
* lib/gcc-dg.exp (gcc-dg-prune): Return "::unsupported::memory
	full" if the linker on spu-*-* warns about exceeding local store.

	And revert this patch:
	* lib/gcc-defs.exp (${tool}_check_compile): xfail test cases that
	fail to link due to relocation overflows on spu-*-*.

From-SVN: r120134
2006-12-22 12:05:07 +11:00
Dorit Nuzman
c882a2c238 spu.md (vec_widen_umult_hi_v8hi): New.
* config/spu/spu.md (vec_widen_umult_hi_v8hi): New.
        (vec_widen_umult_lo_v8hi, vec_widen_smult_hi_v8hi): New.
        (vec_widen_smult_lo_v8hi): New.
        * config/spu/spu.c (TARGET_VECTORIZE_BUILTIN_MUL_WIDEN_EVEN): Defined.
        (TARGET_VECTORIZE_BUILTIN_MUL_WIDEN_ODD): Defined.
        (spu_builtin_mul_widen_even, spu_builtin_mul_widen_odd): New.

From-SVN: r120073
2006-12-20 14:07:38 +00:00
Janis Johnson
bceed4d671 gfortran-dg.exp: Don't include fortran-torture.exp.
* lib/gfortran-dg.exp: Don't include fortran-torture.exp.
	* lib/fortran-torture.exp: Include target-supports.exp.

From-SVN: r119950
2006-12-15 23:31:41 +00:00
John David Anglin
8f3fc4aa8d re PR testsuite/30179 (FAIL: gcc.c-torture/execute/mode-dependent-address.c compilation, -O0)
PR testsuite/30179
	PR testsuite/30180
	* gcc.dg/builtin-bswap-1.c: Require stdint_types.
	* gcc.dg/builtin-bswap-2.c: Likewise.
	* gcc.dg/builtin-bswap-3.c: Likewise.
	* gcc.dg/builtin-bswap-4.c: Likewise.
	* lib/target-supports.exp (check_effective_target_stdint_types): New.
	* cc.c-torture/execute/mode-dependent-address.x: New file.

From-SVN: r119945
2006-12-15 21:41:58 +00:00
John David Anglin
60784de8d1 target-supports.exp (check_weak_available): Use istarget "hppa*-*-hpux10*" instead of regexp.
* lib/target-supports.exp (check_weak_available): Use istarget
	"hppa*-*-hpux10*" instead of regexp.
	(check_cxa_atexit_available): Likewise.

From-SVN: r119861
2006-12-14 16:13:59 +00:00
Dorit Nuzman
bbea461bd9 spu.c (TARGET_VECTORIZE_BUILTIN_MASK_FOR_LOAD): Defined.
* spu.c (TARGET_VECTORIZE_BUILTIN_MASK_FOR_LOAD): Defined.
        (spu_init_builtins): Mark the SPU_MASK_FOR_LOAD builtin decl as read
        only.
        (spu_expand_builtin_1): Handle the SPU_MASK_FOR_LOAD builtin.
        (spu_builtin_mask_for_load): New.
        * spu-builtins.def (SPU_MASK_FOR_LOAD): Define new builtin.
        * spu.md (UNSPEC_SPU_REALIGN_LOAD, UNSPEC_SPU_MASK_FOR_LOAD):New.
        (vec_realign_load_<mode>, spu_lvsr): New.


Co-Authored-By: Trevor Smigiel <Trevor_Smigiel@playstation.sony.com>

From-SVN: r119857
2006-12-14 12:11:38 +00:00
John David Anglin
c53fa1740a re PR testsuite/30157 (cxa_atexit check doesn't work)
PR testsuite/30157
	* lib/target-supports.exp (check_cxa_atexit_available): Return false
	for target "hppa.*hpux10".

From-SVN: r119842
2006-12-13 18:47:04 +00:00
Tobias Schlüter
ad7082e3d9 trans-expr.c (gfc_conv_substring): Check for empty substring.
fortran/
* trans-expr.c (gfc_conv_substring): Check for empty substring.
testsuite/
* lib/fortran-torture.exp: Update copyright years.  Remove
obsolete comment.  Test -ftree-vectorize where it makes sense.
* lib/gfortran-dg.exp: Update copyright years.  Use settings
from fortran-torture.exp.
* gfortran.dg/char_transpose_1.f90,
gfortran.dg/char_spread_1.f90, gfortran.dg/g77/dnrm2.f,
gfortran.dg/dependent_decls_1.f90: Fixout-of-bound errors.
* gfortran.dg/enum_10.f90, gfortran.dg/mixed_io_1.f90:  Add
'-w' to dg-options.

From-SVN: r119797
2006-12-12 21:59:21 +01:00
Richard Sandiford
fb027ec88c gcc-dg.exp (${tool}_load): Fix invocation of saved_${tool}_load.
gcc/testsuite/
	* lib/gcc-dg.exp (${tool}_load): Fix invocation of
	saved_${tool}_load.

From-SVN: r119795
2006-12-12 20:12:28 +00:00
Manuel López-Ibáñez
4efc447f98 2006-12-08 Manuel Lopez-Ibanez <manu@gcc.gnu.org>
* lib/target-supports.exp
	(check_effective_target_large_long_double): New.  
	* gcc.dg/Wconversion-real.c : Use it.  
	* gcc.dg/Wconversion-integer.c : Fix for targets where char is
	unsigned.

From-SVN: r119662
2006-12-08 18:14:21 +00:00
Dorit Nuzman
0f6909b963 vect.exp: Enable tests to run on spu.
* g++.dg/vect/vect.exp: Enable tests to run on spu.
        * gcc.dg/vect/vect.exp: Enable tests to run on spu.
        * gcc.dg/vect/no-section-anchors-vect-69.c: Reduce array size.
        * gcc.dg/vect/vect-70.c: Reduce array size.
        * gcc.dg/vect/fast-math-vect-reduc-7.c: Xfail for
        vect_no_compaer_double targets.
        * lib/target-supports.exp: Add spu to vect_no_align, no_vect_int_max,
        vect_float, vect_double, and vect_int.

	* config/spu/spu.md (smaxv4sf3, sminv4sf3): New.

From-SVN: r119469
2006-12-03 20:05:31 +00:00
Ben Elliston
df69b58cd5 gcc-defs.exp (${tool}_check_compile): xfail test cases that fail to link due to relocation overflows on spu-*-*.
* lib/gcc-defs.exp (${tool}_check_compile): xfail test cases that
	fail to link due to relocation overflows on spu-*-*.

From-SVN: r119270
2006-11-28 13:14:26 +11:00
Ira Rosen
98b44b0eea c-tree.texi: Document new tree codes.
* doc/c-tree.texi: Document new tree codes.
        * doc/md.texi: Document new optabs.
        * tree-pretty-print.c (dump_generic_node): Handle print of new tree
        codes.
        * optabs.c (optab_for_tree_code, init_optabs): Handle new optabs.
        * optabs.h (optab_index): Add new.
        (vec_extract_even_optab, vec_extract_odd_optab,
        vec_interleave_high_optab, vec_interleave_low_optab): New optabs.
        * genopinit.c (vec_extract_even_optab, vec_extract_odd_optab,
        vec_interleave_high_optab, vec_interleave_low_optab): Initialize
        new optabs.
        * expr.c (expand_expr_real_1): Add implementation for new tree codes.
        * tree-vectorizer.c (new_stmt_vec_info): Initialize new fields.
        * tree-vectorizer.h (stmt_vec_info): Add new fields for interleaving
        along with macros for their access.
        * tree-data-ref.h (first_location_in_loop, data_reference): Update
        comment.
        * tree-vect-analyze.c (toplev.h): Include.
        (vect_determine_vectorization_factor): Fix indentation.
        (vect_insert_into_interleaving_chain,
        vect_update_interleaving_chain, vect_equal_offsets): New functions.
        (vect_analyze_data_ref_dependence): Add argument for interleaving
        check. Check for interleaving if it's true.
        (vect_check_dependences): New function.
        (vect_analyze_data_ref_dependences): Call vect_check_dependences for
        every ddr. Call vect_analyze_data_ref_dependence with new argument.
        (vect_update_misalignment_for_peel): Update for interleaving.
        (vect_verify_datarefs_alignment): Check only first data-ref for
        interleaving.
        (vect_enhance_data_refs_alignment): Update for interleaving. Check
        only first data-ref for interleaving.
        (vect_analyze_data_ref_access): Check interleaving, update
        interleaving data.
        (vect_analyze_data_refs): Call compute_data_dependences_for_loop
        with different parameters.
        * tree.def (VEC_EXTRACT_EVEN_EXPR, VEC_EXTRACT_ODD_EXPR,
        VEC_INTERLEAVE_HIGH_EXPR, VEC_INTERLEAVE_LOW_EXPR): New tree codes.
        * tree-inline.c (estimate_num_insns_1): Add cases for new codes.
        * tree-vect-transform.c (vect_create_addr_base_for_vector_ref):
        Update step in case of interleaving.
        (vect_strided_store_supported, vect_permute_store_chain): New
        functions.
        (vectorizable_store): Handle strided stores.
        (vect_strided_load_supported, vect_permute_load_chain,
        vect_transform_strided_load): New functions.
        (vectorizable_load): Handle strided loads.
        (vect_transform_stmt): Add argument. Handle strided stores. Check
        that vectorized stmt exists for patterns.
        (vect_gen_niters_for_prolog_loop): Update calculation for
        interleaving.
        (vect_transform_loop): Remove stmt_vec_info for strided stores after
        whole chain vectorization.
        * config/rs6000/altivec.md (UNSPEC_EXTEVEN, UNSPEC_EXTODD,
        UNSPEC_INTERHI, UNSPEC_INTERLO): New constants.
        (vpkuhum_nomode, vpkuwum_nomode, vec_extract_even<mode>,
        vec_extract_odd<mode>, altivec_vmrghsf, altivec_vmrglsf,
        vec_interleave_high<mode>, vec_interleave_low<mode>): Implement.

From-SVN: r119088
2006-11-22 08:46:03 +00:00
Brooks Moses
12c7896669 re PR fortran/29702 (RFE: Column number in error messages.)
PR fortran/29702
* fortran/error.c (show_loci): Move column-offset calculation to
show_locus.
(show_locus): Remove blank lines before "Included in"
lines, clean up code, calculate column-offsets, print
column number is error-header lines as appropriate.
(error_integer): (new function) Print integer to error
buffer.
(error_print): Use error_integer, avoid possible buffer
overflows from buggy error formats.
* testsuite/lib/gfortran-dg.exp (gfortran-dg-test): Ignore column
numbers in error message headers.

From-SVN: r118843
2006-11-14 20:00:35 -08:00
Carlos O'Donell
f4c0a30368 gcc.c: Organize search path variables into $prefix relative, and well-known native.
gcc/

2006-11-13  Carlos O'Donell  <carlos@codesourcery.com>
	    Mark Mitchell  <mark@codesourcery.com>

	* gcc.c: Organize search path variables into $prefix relative,
	and well-known native. Add comments.
	(add_sysrooted_prefix): Add comment.
	(process_command): If !gcc_exec_prefix add $prefix based paths.
	If *cross_compile == '0', add native well-known paths.
	Assert tooldir_base_prefix is always relative.
	(main): If print_search_dirs, and if gcc_exec_prefix is set,
	use this value for 'install:' path.
	* Makefile.in: Add GCC_EXEC_PREFIX to generated site.exp.

gcc/testsuite/

2006-11-13  Carlos O'Donell  <carlos@codesourcery.com>

	* lib/c-torture.exp: Use target-libpath.exp.
	* lib/target-libpath.exp (set_ld_library_path_env_vars): If present,
	set GCC_EXEC_PREFIX env var from global variable of same name.


Co-Authored-By: Mark Mitchell <mark@codesourcery.com>

From-SVN: r118765
2006-11-13 17:25:59 +00:00
Uros Bizjak
0e9dac9e16 re PR tree-optimization/29777 (missed optimization: model missing widen_mult* idioms for SSE)
PR target/29777
	* config/i386/sse.md (smulv8hi3_highpart): Change from define_insn
	to define_expand.
	(umulv8hi3_highpart): Ditto.
	(vec_widen_smult_hi_v8hi): New expander.
	(vec_widen_smult_lo_v8hi): Ditto.

testsuite/ChangeLog:

	PR target/29777
        * lib/target-supports.exp (vect_widen_mult_hi_to_si): Add i?86-*-*
	and x86_64-*-* targets.

From-SVN: r118649
2006-11-10 09:45:47 +01:00
Dorit Nuzman
89d67ccabb [multiple changes]
2006-11-08  Dorit Nuzman  <dorit@il.ibm.com>

        * tree-vect-analyze.c (vect_mark_relevant, vect_stmt_relevant_p): Take
        enum argument instead of bool.
        (vect_analyze_operations): Call vectorizable_type_promotion.
        * tree-vectorizer.h (type_promotion_vec_info_type): New enum
        stmt_vec_info_type value.
        (supportable_widening_operation, vectorizable_type_promotion): New
        function declarations.
        * tree-vect-transform.c (vect_gen_widened_results_half): New function.
        (vectorizable_type_promotion): New function.
        (vect_transform_stmt): Call vectorizable_type_promotion.
        * tree-vect-analyze.c (supportable_widening_operation): New function.
        * tree-vect-patterns.c (vect_recog_dot_prod_pattern):
        Add implementation.
        * tree-vect-generic.c (expand_vector_operations_1): Consider correct
        mode.

        * tree.def (VEC_WIDEN_MULT_HI_EXPR, VEC_WIDEN_MULT_LO_EXPR):
        (VEC_UNPACK_HI_EXPR, VEC_UNPACK_LO_EXPR): New tree-codes.
        * tree-inline.c (estimate_num_insns_1): Add cases for above new
        tree-codes.
        * tree-pretty-print.c (dump_generic_node, op_prio): Likewise.
        * expr.c (expand_expr_real_1): Likewise.
        * optabs.c (optab_for_tree_code): Likewise.
        (init_optabs): Initialize new optabs.
        * genopinit.c (vec_widen_umult_hi_optab, vec_widen_smult_hi_optab,
        vec_widen_smult_hi_optab, vec_widen_smult_lo_optab,
        vec_unpacks_hi_optab, vec_unpacks_lo_optab, vec_unpacku_hi_optab,
        vec_unpacku_lo_optab): Initialize new optabs.
        * optabs.h (OTI_vec_widen_umult_hi, OTI_vec_widen_umult_lo):
        (OTI_vec_widen_smult_h, OTI_vec_widen_smult_lo, OTI_vec_unpacks_hi,
        OTI_vec_unpacks_lo, OTI_vec_unpacku_hi, OTI_vec_unpacku_lo): New
        optab indices.
        (vec_widen_umult_hi_optab, vec_widen_umult_lo_optab):
        (vec_widen_smult_hi_optab, vec_widen_smult_lo_optab):
        (vec_unpacks_hi_optab, vec_unpacku_hi_optab, vec_unpacks_lo_optab):
        (vec_unpacku_lo_optab): New optabs.
        * doc/md.texi (vec_unpacks_hi, vec_unpacks_lo, vec_unpacku_hi):
        (vec_unpacku_lo, vec_widen_umult_hi, vec_widen_umult_lo):
        (vec_widen_smult_hi, vec_widen_smult_lo): New.
        * doc/c-tree.texi (VEC_LSHIFT_EXPR, VEC_RSHIFT_EXPR):
        (VEC_WIDEN_MULT_HI_EXPR, VEC_WIDEN_MULT_LO_EXPR, VEC_UNPACK_HI_EXPR):
        (VEC_UNPACK_LO_EXPR, VEC_PACK_MOD_EXPR, VEC_PACK_SAT_EXPR): New.

        * config/rs6000/altivec.md (UNSPEC_VMULWHUB, UNSPEC_VMULWLUB):
        (UNSPEC_VMULWHSB, UNSPEC_VMULWLSB, UNSPEC_VMULWHUH, UNSPEC_VMULWLUH):
        (UNSPEC_VMULWHSH, UNSPEC_VMULWLSH): New.
        (UNSPEC_VPERMSI, UNSPEC_VPERMHI): New.
        (vec_vperm_v8hiv4si, vec_vperm_v16qiv8hi): New patterns used to
        implement the unsigned unpacking patterns.
        (vec_unpacks_hi_v16qi, vec_unpacks_hi_v8hi, vec_unpacks_lo_v16qi):
        (vec_unpacks_lo_v8hi): New signed unpacking patterns.
        (vec_unpacku_hi_v16qi, vec_unpacku_hi_v8hi, vec_unpacku_lo_v16qi):
        (vec_unpacku_lo_v8hi): New unsigned unpacking patterns.
        (vec_widen_umult_hi_v16qi, vec_widen_umult_lo_v16qi):
        (vec_widen_smult_hi_v16qi, vec_widen_smult_lo_v16qi):
        (vec_widen_umult_hi_v8hi, vec_widen_umult_lo_v8hi):
        (vec_widen_smult_hi_v8hi, vec_widen_smult_lo_v8hi): New widening
        multiplication patterns.

        * target.h (builtin_mul_widen_even, builtin_mul_widen_odd): New.
        * target-def.h (TARGET_VECTORIZE_BUILTIN_MUL_WIDEN_EVEN):
        (TARGET_VECTORIZE_BUILTIN_MUL_WIDEN_ODD): New.
        * config/rs6000/rs6000.c (rs6000_builtin_mul_widen_even): New.
        (rs6000_builtin_mul_widen_odd): New.
        (TARGET_VECTORIZE_BUILTIN_MUL_WIDEN_EVEN): Defined.
        (TARGET_VECTORIZE_BUILTIN_MUL_WIDEN_ODD): Defined.
        * tree-vectorizer.h (enum vect_relevant): New enum type.
        (_stmt_vec_info): Field relevant chaned from bool to enum
        vect_relevant.
        (STMT_VINFO_RELEVANT_P): Updated.
        (STMT_VINFO_RELEVANT): New.
        * tree-vectorizer.c (new_stmt_vec_info): Use STMT_VINFO_RELEVANT
        instead of STMT_VINFO_RELEVANT_P.
        * tree-vect-analyze.c (vect_mark_relevant, vect_stmt_relevant_p):
        Replace calls to STMT_VINFO_RELEVANT_P with STMT_VINFO_RELEVANT,
        and boolean variable with enum vect_relevant.
        (vect_mark_stmts_to_be_vectorized): Likewise + update documentation.
        * doc/tm.texi (TARGET_VECTORIZE_BUILTIN_MUL_WIDEN_EVEN): New.
        (TARGET_VECTORIZE_BUILTIN_MUL_WIDEN_ODD): New.

        2006-11-08  Richard Henderson  <rth@redhat.com>

        * config/i386/sse.md (vec_widen_umult_hi_v8hi,
        vec_widen_umult_lo_v8hi): New.
        (vec_widen_smult_hi_v4si, vec_widen_smult_lo_v4si,
        vec_widen_umult_hi_v4si, vec_widen_umult_lo_v4si): New.

        * config/i386/i386.c (ix86_expand_sse_unpack): New.
        * config/i386/i386-protos.h (ix86_expand_sse_unpack): New.
        * config/i386/sse.md (vec_unpacku_hi_v16qi, vec_unpacks_hi_v16qi,
        vec_unpacku_lo_v16qi, vec_unpacks_lo_v16qi, vec_unpacku_hi_v8hi,
        vec_unpacks_hi_v8hi, vec_unpacku_lo_v8hi, vec_unpacks_lo_v8hi,
        vec_unpacku_hi_v4si, vec_unpacks_hi_v4si, vec_unpacku_lo_v4si,
        vec_unpacks_lo_v4si): New.

        2006-11-08  Dorit Nuzman  <dorit@il.ibm.com>

        * tree-vect-transform.c (vectorizable_type_demotion): New function.
        (vect_transform_stmt): Add case for type_demotion_vec_info_type.
        (vect_analyze_operations): Call vectorizable_type_demotion.
        * tree-vectorizer.h (type_demotion_vec_info_type): New enum
        stmt_vec_info_type value.
        (vectorizable_type_demotion): New function declaration.
        * tree-vect-generic.c (expand_vector_operations_1): Consider correct
        mode.

        * tree.def (VEC_PACK_MOD_EXPR, VEC_PACK_SAT_EXPR): New tree-codes.
        * expr.c (expand_expr_real_1): Add case for VEC_PACK_MOD_EXPR and
        VEC_PACK_SAT_EXPR.
        * tree-iniline.c (estimate_num_insns_1): Likewise.
        * tree-pretty-print.c (dump_generic_node, op_prio): Likewise.
        * optabs.c (optab_for_tree_code): Likewise.

        * optabs.c (expand_binop): In case of vec_pack_*_optabs the mode
        compared against the predicate of the result is not 'mode' (the input
        to the function) but a mode with half the size of 'mode'.
        (init_optab): Initialize new optabs.
        * optabs.h (OTI_vec_pack_mod, OTI_vec_pack_ssat, OTI_vec_pack_usat):
        New optab indices.
        (vec_pack_mod_optab, vec_pack_ssat_optab,  vec_pack_usat_optab): New
        optabs.
        * genopinit.c (vec_pack_mod_optab, vec_pack_ssat_optab):
        (vec_pack_usat_optab): Initialize new optabs.
        * doc/md.texi (vec_pack_mod, vec_pack_ssat, vec_pack_usat): New.
        * config/rs6000/altivec.md (vec_pack_mod_v8hi, vec_pack_mod_v4si): New.

        2006-11-08  Richard Henderson  <rth@redehat.com>

        * config/i386/sse.md (vec_pack_mod_v8hi, vec_pack_mod_v4si):
        (vec_pack_mod_v2di, vec_interleave_highv16qi, vec_interleave_lowv16qi):
        (vec_interleave_highv8hi, vec_interleave_lowv8hi):
        (vec_interleave_highv4si, vec_interleave_lowv4si):
        (vec_interleave_highv2di, vec_interleave_lowv2di): New.

        2006-11-08  Dorit Nuzman  <dorit@il.ibm.com>

        * tree-vect-transform.c (vectorizable_reduction): Support multiple
        datatypes.
        (vect_transform_stmt): Removed redundant code.

        2006-11-08  Dorit Nuzman  <dorit@il.ibm.com>

        * tree-vect-transform.c (vectorizable_operation): Support multiple
        datatypes.

        2006-11-08  Dorit Nuzman  <dorit@il.ibm.com>

        * tree-vect-transform.c (vect_align_data_ref): Removed.
        (vect_create_data_ref_ptr): Added additional argument - ptr_incr.
        Updated function documentation. Return the increment stmt in ptr_incr.
        (bump_vector_ptr): New function.
        (vect_get_vec_def_for_stmt_copy): New function.
        (vect_finish_stmt_generation): Create a stmt_info to newly created
        vector stmts.
        (vect_setup_realignment): Call vect_create_data_ref_ptr with additional
        argument.
        (vectorizable_reduction, vectorizable_assignment): Not supported yet if
        VF is greater than the number of elements that can fit in one vector
        word.
        (vectorizable_operation, vectorizable_condition): Likewise.
        (vectorizable_store, vectorizable_load): Support the case that the VF
        is greater than the number of elements that can fit in one vector word.
        (vect_transform_loop): Don't fail in case of multiple data-types.
        * tree-vect-analyze.c (vect_determine_vectorization_factor): Don't fail
        in case of multiple data-types; the smallest type determines the VF.
        (vect_analyze_data_ref_dependence): Don't record datarefs as same_align
        if they are of different sizes.
        (vect_update_misalignment_for_peel): Compare misalignments in terms of
        number of elements rather than number of bytes.
        (vect_enhance_data_refs_alignment): Fix/Add dump printouts.
        (vect_can_advance_ivs_p): Fix a dump printout

From-SVN: r118577
2006-11-08 07:32:44 +00:00
Janis Johnson
d6682e2189 sourcebuild.texi (Test Directives): Add output-exists and output-exists-not.
gcc/

2006-11-06  Janis Johnson  <janis187@us.ibm.com>

	* gcc/doc/sourcebuild.texi (Test Directives): Add output-exists
	and output-exists-not.

gcc/testsuite/

2006-11-06  Janis Johnson  <janis187@us.ibm.com
	    Bernhard Fischer  <aldot@gcc.gnu.org>

	* lib/gcc-dg.exp (output-exists): New proc.
	(output-exists-not): New proc.
	* gcc.test-framework/test-framework.awk: Support new directives.
	* gcc.test-framework/dg-outexistsnot-exp-F.c: New test.
	* gcc.test-framework/dg-outexistsnot-exp-P.c: New test.
	* gcc.test-framework/dg-outexists-exp-F.c: New test.
	* gcc.test-framework/dg-outexists-exp-XP.c: New test.
	* gcc.test-framework/dg-outexistsnot-exp-XF.c: New test.
	* gcc.test-framework/dg-outexists-exp-P.c: New test.

From-SVN: r118531
2006-11-07 00:08:32 +00:00
Brooks Moses
cb60c134e2 error.c (show_locus): Add trailing colon in error messages.
* fortran/error.c (show_locus): Add trailing colon in error messages.
(error_print): Avoid leading space in error lines.
* testsuite/lib/gfortran-dg.exp (gfortran-dg-test): Adjust pattern
for matching error messages.

From-SVN: r118491
2006-11-04 16:28:08 -08:00
Brooks Moses
5d7de335d7 error.c (show_locus): Remove "In file" from error messages.
* fortran/error.c (show_locus): Remove "In file" from error messages.
* testsuite/lib/gfortran-dg.exp (gfortran-dg-test): Remove expected "In file" from error 
messages.

From-SVN: r118450
2006-11-02 21:07:59 -08:00
Joseph Myers
c03b92063a target-supports.exp (get_compiler_messages): Append options as a single list element.
2006-10-31  Joseph Myers  <joseph@codesourcery.com>
            Richard Sandiford  <richard@codesourcery.com>

	* lib/target-supports.exp (get_compiler_messages): Append options
	as a single list element.
	(check_effective_target_arm_vfp_ok): New.
	* gcc.dg/arm-vfp1.c: Use arm_vfp_ok.

Co-Authored-By: Richard Sandiford <richard@codesourcery.com>

From-SVN: r118334
2006-10-31 19:58:21 +00:00
Joseph Myers
709e1a1a8a default.exp (${tool}_target_compile): Use v3_target_compile.
libstdc++-v3:
	* testsuite/config/default.exp (${tool}_target_compile): Use
	v3_target_compile.

gcc/testsuite:
	* lib/target-supports.exp (check_function_available): Declare
	function before calling.

From-SVN: r118182
2006-10-30 14:03:05 +00:00
Kazu Hirata
ec4178c957 20020118-1.c, [...]: Fix comment typos.
* gcc.c-torture/execute/20020118-1.c,
	gcc.c-torture/execute/builtins/strlen.c,
	gcc.c-torture/execute/pr23135.c, lib/fortran-torture.exp: Fix
	comment typos.

From-SVN: r118132
2006-10-29 04:43:45 +00:00
Richard Henderson
a98d4769d5 Revert emutls patch.
From-SVN: r117578
2006-10-09 09:27:14 -07:00
Joseph Myers
e87a56b45d * lib/target-supports.exp
(check_effective_target_vect_cmdline_needed): Handle i?86-*-* the
	same as x86_64-*-*; check for LP64.

From-SVN: r117477
2006-10-06 01:47:35 +01:00
Richard Henderson
e701a32a98 Makefile.in (libgcc.mk, [...]): Add emutls.c.
gcc/
        * Makefile.in (libgcc.mk, LIBGCC_DEPS): Add emutls.c.
        * builtin-types.def (BT_WORD): Make unsigned.
        (BT_FN_VOID_PTR_WORD_WORD_PTR): New.
        * builtins.def (BUILT_IN_EMUTLS_GET_ADDRESS): New.
        (BUILT_IN_EMUTLS_REGISTER_COMMON): New.
        * c-decl.c (grokdeclarator): Don't error if !have_tls.
        * c-parser.c (c_parser_omp_threadprivate): Likewise.
        * cgraph.c (decide_is_variable_needed): Look at force_output.
        Recurse for emulated tls.
        * cgraphunit.c (cgraph_varpool_remove_unreferenced_decls): Remove
        checks redundant with decide_is_variable_needed.
        (cgraph_build_static_cdtor): Do cgraph_varpool_assemble_pending_decls.
        * dwarf2out.c (loc_descriptor_from_tree_1): Don't do anything for
        emulated tls.
        * expr.c (emutls_var_address): New.
        (expand_expr_real_1): Expand emulated tls.
        (expand_expr_addr_expr_1): Likewise.
        * libgcc-std.ver: Add __emutls_get_address, __emutls_register_common.
        * output.h (emutls_finish): Declare.
        * toplev.c (compile_file): Call it.
        * tree-ssa-address.c (gen_addr_rtx): Check for const-ness of the
        address before wrapping in CONST.
        * varasm.c (emutls_htab, emutls_object_type): New.
        (EMUTLS_VAR_PREFIX, EMUTLS_TMPL_PREFIX): New.
        (get_emutls_object_name, get_emutls_object_type): New.
        (get_emutls_init_templ_addr, emutls_decl): New.
        (emutls_common_1, emutls_finish): New.
        (assemble_variable): When emulating tls, swap decls; generate
        constructor for the emutls objects.
        (do_assemble_alias): When emulating tls, swap decl and target name.
        (default_encode_section_info): Don't add SYMBOL_FLAG_TLS_SHIFT
        for emulated tls.
        * emutls.c: New file.
        * config/sparc/sol2.h (ASM_DECLARE_OBJECT_NAME): Only emit
        tls_object for real tls.

gcc/cp/
        * decl.c (grokvardecl): Don't error if !have_tls.
        (grokdeclarator): Likewise.
        * parser.c (cp_parser_omp_threadprivate): Likewise.

gcc/fortran/
        * f95-lang.c (gfc_init_builtin_functions): Add __emutls_get_address
        and __emutls_register_common.
        * openmp.c (gfc_match_omp_threadprivate): Don't error if !have_tls.
        * trans-common.c (build_common_decl): Don't check have_tls.
        * trans-decl.c (gfc_finish_var_decl): Likewise.
        * types.def (BT_WORD, BT_FN_PTR_PTR): New.
        (BT_FN_VOID_PTR_WORD_WORD_PTR): New.

gcc/testsuite/
        * lib/target-supports.exp (check_effective_target_tls): Redefine
        to mean non-emulated tls.
        * gcc.dg/tls/alias-1.c: Remove tls requirement.
        * gcc.dg/tls/asm-1.c, gcc.dg/tls/debug-1.c, gcc.dg/tls/diag-1.c,
        gcc.dg/tls/diag-2.c, gcc.dg/tls/diag-3.c, gcc.dg/tls/diag-4.c,
        gcc.dg/tls/diag-5.c, gcc.dg/tls/init-1.c, gcc.dg/tls/nonpic-1.c,
        gcc.dg/tls/opt-10.c, gcc.dg/tls/opt-5.c, gcc.dg/tls/opt-6.c,
        gcc.dg/tls/opt-8.c, gcc.dg/tls/opt-9.c, gcc.dg/tls/pic-1.c,
        gcc.dg/tls/struct-1.c, gcc.dg/tls/trivial.c: Likewise.

From-SVN: r117440
2006-10-04 14:09:20 -07:00
Ben Elliston
9b1f6e91a1 target-supports.exp (check_effective_target_tls): Compile test stubs using ${tool}_target_compile, not just target_compile.
* lib/target-supports.exp (check_effective_target_tls): Compile
	test stubs using ${tool}_target_compile, not just target_compile.
	(check_effective_target_tls_runtime): Likewise.

From-SVN: r117041
2006-09-19 08:40:59 +10:00
Kazu Hirata
f63fc0d933 c-torture.exp (c-torture-compile, [...]): Treat $srcdir as a literal.
* lib/c-torture.exp (c-torture-compile, c-torture-execute):
	Treat $srcdir as a literal.
	* lib/fortran-torture.exp (fortran-torture-compile,
	fortran-torture-execute): Likewise.
	* lib/objc-torture.exp (objc-torture-compile,
	objc-torture-execute): Likewise.
	* lib/profopt.exp (profopt-execute): Likewise.

From-SVN: r116894
2006-09-12 17:12:49 +00:00
Dorit Nuzman
0be79f24f8 re PR middle-end/27770 (wrong code in spec tests for -ftree-vectorize -maltivec)
PR tree-optimization/27770
        * tree-vectorizer.h (get_vectype_for_scalar_type): Function
        declaration removed (moved to tree-flow.h).
        (vect_can_force_dr_alignment_p): Likewise.
        * tree-flow.h (get_vectype_for_scalar_type): New function declaration
        (moved from tree-vectorizer.h).
        (vect_can_force_dr_alignment_p): Likewise.
        * tree-vectorizer.c (vect_print_dump_info): Allow calling this function
        from outside the vectorizer - in particular from cgraph stage.
        * tree-vect-analyze.c (vect_compute_data_ref_alignment): Don't increase
        the alignment of global arrays when -fsection-anchors is enabled.
        * cgraphunit.c (cgraph_increase_alignment): New function.
        (cgraph_optimize): Call cgraph_increase_alignment.

From-SVN: r115910
2006-08-03 20:35:05 +00:00
Daniel Jacobowitz
19450f2b21 re PR debug/28063 (Dwarf no longer uses merged strings for DW_AT_comp_dir)
gcc/
	PR debug/28063
	* dwarf2out.c (prune_unused_types_prune): Move call to
	prune_unused_types_update_strings to cover the parent DIE also.
gcc/testuite/
	PR debug/28063
	* gcc.dg/debug/dwarf2/dwarf-merge.c: New test.
	* lib/target-supports.exp (get_compiler_messages): Add WANT_OUTPUT.
	Optionally return assembly text.  Update callers.
	(check_no_compiler_messages): Update verbose messages.
	(check_no_messages_and_pattern): New.
	(check_effective_target_string_merging): New.

From-SVN: r115874
2006-08-02 13:31:56 +00:00
Daniel Jacobowitz
6193b8b7ed re PR debug/23336 (enum constants not visible to gdb because of -feliminate-unused-debug-types)
gcc/
	PR debug/23336
	* c-typeck.c (build_external_type): Mark used enum types.
	* dwarf2out.c (dwarf2out_abstract_function): Save and restore
	cfun also.
	(gen_subprogram_die): Whitespace fix.
gcc/cp/
	PR debug/23336
	* pt.c (tsubst_copy_and_build): Mark used enum types.
	* semantics.c (finish_id_expression): Likewise.
gcc/testsuite/
	PR debug/23336
	* lib/gcc-dg.exp (gcc-dg-debug-runtest): Suppress new tests
	at -g1.
	* gcc.dg/debug/enum-1.c, g++.dg/debug/enum-1.C,
	g++.dg/debug/enum-2.C: New.

From-SVN: r115853
2006-08-01 14:23:58 +00:00
Janis Johnson
263108e10f sourcebuild.texi (Test Directives): Document dg-shouldfail.
gcc:

	* doc/sourcebuild.texi (Test Directives): Document dg-shouldfail.

gcc/testsuite:

	* lib/gcc-dg.exp (tool_load): Wrapper to support shouldfail tests.
	(dg-test): Support shouldfail tests.
	* lib/target-supports-dg.exp (dg-shouldfail): New.
	* gcc.test-framework/test-framework.awk: Handle shouldfail tests.
	* gcc.test-framework/dg-do-run-sf-exp-F.c: New test.
	* gcc.test-framework/dg-do-run-sf-exp-P.c: New test.
	* gcc.test-framework/dg-do-run-sft-exp-F.c: New test.
	* gcc.test-framework/dg-do-run-sft-exp-P.c: New test.
	* gcc.test-framework/dg-dox-run-sf-exp-XF.c: New test.
	* gcc.test-framework/dg-dox-run-sf-exp-XP.c: New test.

From-SVN: r115424
2006-07-13 22:58:07 +00:00
James A. Morrison
663230c4c2 re PR ada/18692 (Ada should have a dg testsuite)
PR ada/18692
	* lib/gnat.exp: New file.
	* lib/gnat-dg.exp: Likewise.
	* gnat.dg: New directory.
	* gnat.dg/dg.exp: New driver.
	* gnat.dg/specs: New directory.
	* gnat.dg/specs/specs.exp: New driver.
	* gnat.dg/style: New directory.
	* gnat.dg/style/style.exp: New driver.


Co-Authored-By: Eric Botcazou <ebotcazou@adacore.com>

From-SVN: r114805
2006-06-20 06:20:37 +00:00
Matthew Sachs
2094534c2b target-supports-dg.exp (check-flags): Include TOOL_OPTIONS in the list of compiler flags...
* lib/target-supports-dg.exp (check-flags): Include TOOL_OPTIONS in
the list of compiler flags; this causes those flags to be checked
for things like dg-skip-if.

From-SVN: r114597
2006-06-13 01:12:51 +00:00
Janis Johnson
6edf8a5229 gcc-dg.exp (gcc-dg-test-1): Detect and report ICE.
* lib/gcc-dg.exp (gcc-dg-test-1): Detect and report ICE.
	* lib/gcc-defs.exp (tool_check_compile): Ditto.
	* lib/fortran-torture.exp (fortran-torture-compile,
	fortran-torture-execute): Ditto.

From-SVN: r114445
2006-06-06 19:16:14 +00:00
Steve Ellcey
294f1ce368 target-supports.exp (is-effective-target): Add cxa_atexit.
* lib/target-supports.exp (is-effective-target): Add cxa_atexit.
	(is-effective-target-keyword): Ditto.

From-SVN: r114320
2006-06-01 23:21:14 +00:00
Richard Sandiford
e9b1e82867 Fix $prop argument in last delta.
From-SVN: r113932
2006-05-20 14:40:59 +00:00
Richard Sandiford
245f0e1c6d target-supports.exp (check_effective_target_mpaired_single): New function.
gcc/testsuite
	* lib/target-supports.exp (check_effective_target_mpaired_single):
	New function.
	* gcc.dg/vect/vect.exp: Use it to check for compatible mipsisa64-elf
	multilibs.
	* g++.dg/vect/vect.exp: Likewise.

From-SVN: r113930
2006-05-20 14:33:58 +00:00
Steve Ellcey
38ccd98ad2 target-supports.dg (check_cxa_atexit_available): Change v3_target_compile to ${tool}_target_compile.
* lib/target-supports.dg (check_cxa_atexit_available): Change
	v3_target_compile to ${tool}_target_compile.

From-SVN: r113729
2006-05-12 19:52:34 +00:00
Jason Merrill
a33259d0bd * lib/scanasm.exp (scan-not-hidden): Fix typo.
From-SVN: r113714
2006-05-11 17:49:35 -04:00
Joseph Myers
1dbf8c2405 target-supports.exp (check_effective_target_powerpc_fprs, [...]): New.
* lib/target-supports.exp (check_effective_target_powerpc_fprs,
	check_effective_target_powerpc_altivec_ok): New.
	* g++.dg/eh/simd-2.C, g++.dg/ext/altivec-1.C,
	g++.dg/ext/altivec-10.C, g++.dg/ext/altivec-11.C,
	g++.dg/ext/altivec-12.C, g++.dg/ext/altivec-13.C,
	g++.dg/ext/altivec-2.C, g++.dg/ext/altivec-3.C,
	g++.dg/ext/altivec-4.C, g++.dg/ext/altivec-5.C,
	g++.dg/ext/altivec-6.C, g++.dg/ext/altivec-7.C,
	g++.dg/ext/altivec-8.C, g++.dg/ext/altivec-9.C,
	g++.dg/ext/altivec-types-1.C, g++.dg/ext/altivec-types-2.C,
	g++.dg/ext/altivec-types-3.C, g++.dg/ext/altivec-types-4.C,
	gcc.dg/dfp/altivec-types.c, gcc.dg/simd-3.c,
	gcc.dg/vect/vect-82_64.c, gcc.dg/vect/vect-83_64.c,
	gcc.dg/vmx/vmx.exp, gcc.target/powerpc/980827-1.c,
	gcc.target/powerpc/altivec-1.c, gcc.target/powerpc/altivec-10.c,
	gcc.target/powerpc/altivec-11.c, gcc.target/powerpc/altivec-12.c,
	gcc.target/powerpc/altivec-13.c, gcc.target/powerpc/altivec-14.c,
	gcc.target/powerpc/altivec-15.c, gcc.target/powerpc/altivec-16.c,
	gcc.target/powerpc/altivec-17.c, gcc.target/powerpc/altivec-18.c,
	gcc.target/powerpc/altivec-19.c, gcc.target/powerpc/altivec-2.c,
	gcc.target/powerpc/altivec-21.c, gcc.target/powerpc/altivec-22.c,
	gcc.target/powerpc/altivec-3.c, gcc.target/powerpc/altivec-4.c,
	gcc.target/powerpc/altivec-5.c, gcc.target/powerpc/altivec-6.c,
	gcc.target/powerpc/altivec-7.c, gcc.target/powerpc/altivec-8.c,
	gcc.target/powerpc/altivec-9.c,
	gcc.target/powerpc/altivec-consts.c,
	gcc.target/powerpc/altivec-pr22085.c,
	gcc.target/powerpc/altivec-splat.c,
	gcc.target/powerpc/altivec-types-1.c,
	gcc.target/powerpc/altivec-types-2.c,
	gcc.target/powerpc/altivec-types-3.c,
	gcc.target/powerpc/altivec-types-4.c,
	gcc.target/powerpc/altivec-varargs-1.c,
	gcc.target/powerpc/altivec-vec-merge.c,
	gcc.target/powerpc/ppc-vector-memcpy.c,
	gcc.target/powerpc/ppc-vector-memset.c,
	gcc.target/powerpc/ppc64-abi-2.c, gcc.target/powerpc/pr16155.c,
	gcc.target/powerpc/pr16286.c, gcc.target/powerpc/pr27158.c: Use
	these effective targets.
	* gcc.dg/vmx/pr27006.c: Add missing close brace.
	* gcc.dg/20020103-1.c: XFAIL on powerpc*-*-*.

From-SVN: r113709
2006-05-11 20:56:21 +01:00
Janis Johnson
65c3758b85 target-supports-dg.exp (check-flags): New.
* lib/target-supports-dg.exp (check-flags): New.
	(dg-skip-if): Move flag checks.

From-SVN: r113686
2006-05-10 22:13:39 +00:00
Steve Ellcey
21f638b9b0 target-supports-dg.exp (dg-require-cxa-atexit): New.
* lib/target-supports-dg.exp (dg-require-cxa-atexit): New.
	* lib/target-supports.dg (check_cxa_atexit_available): New.

From-SVN: r113684
2006-05-10 21:55:34 +00:00
DJ Delorie
a239aa95dc target-supports.exp (check_effective_target_int32plus): New.
* lib/target-supports.exp (check_effective_target_int32plus): New.
(check_effective_target_ptr32plus): New.
(check_effective_target_size32plus): New.
(check_effective_target_int16): New.
(check_profiling_available): Add m32c to the list of unsupported targets.

* gcc.c-torture/compile/20000804-1.c: Skip m32c also.
* gcc.c-torture/compile/20001226-1.c: Skip m32c due to small
memory size.
* gcc.c-torture/compile/20010327-1.c: Skip m32c due to non-SI
pointers.
* gcc.c-torture/compile/20020604-1.c: Skip m32c due to small
size_t.
* gcc.c-torture/compile/20050303-1.c: Require >=32 bit integers
and size_t.
* gcc.c-torture/compile/980506-1.c: Require >=32 bit size_t.
* gcc.c-torture/execute/20020404-1.x: Check for any 16 bit target,
not just xstormy16.  Skip m32c due to weird pointer size.
* gcc.c-torture/execute/20021024-1.x: Check for any 16 bit target,
not just xstormy16.
* gcc.c-torture/execute/shiftdi.x: Check for any 16 bit target,
not just xstormy16.
* gcc.dg/20020312-2.c: Add m32c support.
* gcc.dg/20040622-2.c: Require >=32 bit pointers.
* gcc.dg/20050321-1.c: XFail m32c due to incorrect malloc prototype
in test.
* gcc.dg/20050321-2.c: Require >=32 bit integers.
* gcc.dg/asm-1.c: Skip if int and short are the same size.
* gcc.dg/fold-mod-1.c: Require >=32 bit integers.
* gcc.dg/fold-overflow-1.c: Skip m32c due to small const types in asm.
* gcc.dg/format/bitfld-1.c: Require >=32 bit integers due to printf formats
* gcc.dg/init-string-2.c: Require >=32 bit integers.
* gcc.dg/max-1.c: Skip m32c in r8c or m16c mode due to small pointers.
* gcc.dg/noncompile/920923-1.c: Skip small-int message for int16 hosts.
* gcc.dg/pch/struct-1.c: Require >= 32 bit integers.
* gcc.dg/pr14796-2.c: Require >=32 bit integers.
* gcc.dg/pr17112-1.c: Require >=32 bit integers.
* gcc.dg/pr18241-1.c: XFail m32c due to incorrect memset prototype
in test.
* gcc.dg/pr18241-2.c: XFail m32c due to incorrect memset prototype
in test.
* gcc.dg/pr19340.c: Skip m32c due to lack of scheduling.
* gcc.dg/pr23049.c: Require >=32 bit integers.
* gcc.dg/torture/pr26565.c: Skip m32c as everything is already packed.
* gcc.dg/torture/pr26587.c: Require >=32 bit integers.
* gcc.dg/torture/pr26630.c: Require >=32 bit integers.
* gcc.dg/tree-ssa/loop-10.c: Require >=32 bit integers.
* gcc.dg/tree-ssa/loop-2.c: Require >=32 bit size_t.
* gcc.dg/tree-ssa/loop-4.c: Require >=32 bit size_t.
* gcc.dg/tree-ssa/ltrans-1.c: Require >=32 bit size_t.
* gcc.dg/tree-ssa/ltrans-2.c: Require >=32 bit size_t.
* gcc.dg/tree-ssa/ltrans-3.c: Require >=32 bit size_t.
* gcc.dg/tree-ssa/ltrans-4.c: Require >=32 bit size_t.
* gcc.dg/tree-ssa/pr14341.c: Require >=32 bit integers.
* gcc.dg/tree-ssa/pr23382.c: XFail m32c due to incorrect malloc
prototype in test.
* gcc.dg/tree-ssa/pr24627.c: Require >=32 bit integers.
* gcc.dg/tree-ssa/pr26180.c: Require >=32 bit integers.
* gcc.dg/tree-ssa/vrp14.c: Require >=32 bit integers.
* gcc.dg/tree-ssa/vrp21.c: Require >=32 bit integers.
* gcc.dg/tree-ssa/vrp22.c: Require >=32 bit integers.

* gcc.c-torture/execute/20040629-1.x: New.  Require >16 bit integers.
* gcc.c-torture/execute/20040703-1.x: Likewise.
* gcc.c-torture/execute/20040705-1.x: Likewise.
* gcc.c-torture/execute/20040705-2.x: Likewise.
* gcc.c-torture/execute/20040709-1.x: Likewise.
* gcc.c-torture/execute/20040709-2.x: Likewise.
* gcc.c-torture/execute/20040811-1.x: Likewise.
* gcc.c-torture/execute/20050316-1.x: Likewise.
* gcc.c-torture/execute/bitfld-4.x: Likewise.
* gcc.c-torture/execute/pr19689.x: Likewise.
* gcc.c-torture/execute/pr7284-1.x: Likewise.
* gcc.c-torture/execute/usmul.x: Likewise.
* gcc.c-torture/execute/vrp-5.x: Likewise.
* gcc.c-torture/execute/vrp-6.x: Likewise.
* gcc.dg/debug/20041023-1.s: Likewise.

From-SVN: r112934
2006-04-13 19:14:25 -04:00
Matthias Klose
615baed708 libjava.exp (libjava_init): Recognize multilib directory names containing underscores.
gcc/testsuite:
2006-04-10  Matthias Klose  <doko@debian.org>

	* testsuite/lib/libjava.exp (libjava_init): Recognize multilib
	directory names containing underscores.

libffi:
2006-04-10  Matthias Klose  <doko@debian.org>

	* testsuite/lib/libjava.exp (libjava_init): Recognize multilib
	directory names containing underscores.

libgomp:
2006-04-10  Matthias Klose  <doko@debian.org>

	* testsuite/lib/libjava.exp (libjava_init): Recognize multilib
	directory names containing underscores.

libjava:
2006-04-10  Matthias Klose  <doko@debian.org>

	* testsuite/lib/libjava.exp (libjava_init): Recognize multilib
	directory names containing underscores.

libmudflap:
2006-04-10  Matthias Klose  <doko@debian.org>

	* testsuite/lib/libjava.exp (libjava_init): Recognize multilib
	directory names containing underscores.

libstdc++:
2006-04-10  Matthias Klose  <doko@debian.org>

	* testsuite/lib/libjava.exp (libjava_init): Recognize multilib
	directory names containing underscores.

From-SVN: r112833
2006-04-10 21:34:19 +00:00
Janis Johnson
b09940e914 gcc-dg.exp (cleanup-modules): New proc.
* lib/gcc-dg.exp (cleanup-modules): New proc.
	* gfortran.dg/allocatable_function_1.f90,
	gfortran.dg/allocate_char_star_scalar_1.f90,
	gfortran.dg/assumed_charlen_function_1.f90,
	gfortran.dg/assumed_dummy_1.f90,
	gfortran.dg/assumed_shape_ranks_1.f90,
	gfortran.dg/assumed_shape_ranks_2.f90,
	gfortran.dg/assumed_size_dt_dummy.f90,
	gfortran.dg/auto_char_dummy_array_1.f90,
	gfortran.dg/auto_char_len_3.f90,
	gfortran.dg/automatic_module_variable.f90,
	gfortran.dg/bad_automatic_objects_1.f90,
	gfortran.dg/char_array_constructor.f90,
	gfortran.dg/char_array_structure_constructor.f90,
	gfortran.dg/char_result_11.f90, gfortran.dg/char_result_9.f90,
	gfortran.dg/contained_1.f90, gfortran.dg/convert_1.f90,
	gfortran.dg/cray_pointers_5.f90, gfortran.dg/data_constraints_1.f90,
	gfortran.dg/default_initialization.f90, gfortran.dg/der_charlen_1.f90,
	gfortran.dg/der_io_2.f90, gfortran.dg/der_io_3.f90,
	gfortran.dg/derived_pointer_recursion.f90,
	gfortran.dg/derived_recursion.f90, gfortran.dg/der_pointer_1.f90,
	gfortran.dg/der_pointer_3.f90, gfortran.dg/der_pointer_4.f90,
	gfortran.dg/dummy_functions_1.f90,
	gfortran.dg/elemental_initializer_1.f90,
	gfortran.dg/elemental_non_intrinsic_dummy_1.f90,
	gfortran.dg/elemental_pointer_1.f90,
	gfortran.dg/elemental_subroutine_1.f90,
	gfortran.dg/elemental_subroutine_2.f90, gfortran.dg/entry_1.f90,
	gfortran.dg/entry_3.f90, gfortran.dg/enum_10.f90,
	gfortran.dg/equiv_constraint_3.f90, gfortran.dg/func_derived_1.f90,
	gfortran.dg/func_derived_2.f90, gfortran.dg/func_derived_3.f90,
	gfortran.dg/generic_1.f90, gfortran.dg/generic_2.f90,
	gfortran.dg/generic_3.f90, gfortran.dg/generic_4.f90,
	gfortran.dg/global_references_1.f90,
	gfortran.dg/host_used_types_1.f90, gfortran.dg/implicit_1.f90,
	gfortran.dg/implicit_2.f90, gfortran.dg/implicit_actual.f90,
	gfortran.dg/initialization_1.f90, gfortran.dg/int_1.f90,
	gfortran.dg/intent_used_1.f90, gfortran.dg/interface_1.f90,
	gfortran.dg/interface_2.f90, gfortran.dg/internal_references_2.f90,
	gfortran.dg/io_constraints_1.f90, gfortran.dg/io_constraints_2.f90,
	gfortran.dg/large_integer_kind_1.f90,
	gfortran.dg/large_real_kind_1.f90,
	gfortran.dg/module_blank_common.f90, gfortran.dg/module_commons_1.f90,
	gfortran.dg/module_double_reuse.f90,
	gfortran.dg/module_equivalence_1.f90,
	gfortran.dg/module_interface_1.f90,
	gfortran.dg/module_parameter_array_refs_1.f90,
	gfortran.dg/named_interface.f90, gfortran.dg/namelist_14.f90,
	gfortran.dg/namelist_15.f90, gfortran.dg/namelist_1.f90,
	gfortran.dg/namelist_4.f90, gfortran.dg/namelist_use.f90,
	gfortran.dg/namelist_use_only.f90, gfortran.dg/nested_modules_1.f90,
	gfortran.dg/nested_modules_2.f90, gfortran.dg/nested_modules_3.f90,
	gfortran.dg/nested_modules_4.f90, gfortran.dg/nested_modules_5.f90,
	gfortran.dg/parens_5.f90, gfortran.dg/parent_result_ref_4.f90,
	gfortran.dg/pr15164.f90, gfortran.dg/pr16861.f90,
	gfortran.dg/pr17615.f90, gfortran.dg/pr19926.f90,
	gfortran.dg/pr21177.f90, gfortran.dg/pr26246_1.f90,
	gfortran.dg/private_type_1.f90, gfortran.dg/private_type_2.f90,
	gfortran.dg/private_type_3.f90, gfortran.dg/private_type_4.f90,
	gfortran.dg/procedure_lvalue.f90, gfortran.dg/pure_byref_3.f90,
	gfortran.dg/same_name_1.f90,
	gfortran.dg/sibling_dummy_procedure_1.f90,
	gfortran.dg/sibling_dummy_procedure_2.f90,
	gfortran.dg/sibling_dummy_procedure_3.f90,
	gfortran.dg/substr_1.f90, gfortran.dg/substring_equivalence.f90,
	gfortran.dg/use_allocated_1.f90, gfortran.dg/used_dummy_types_1.f90,
	gfortran.dg/used_dummy_types_2.f90,
	gfortran.dg/used_dummy_types_3.f90,
	gfortran.dg/used_dummy_types_4.f90,
	gfortran.dg/used_dummy_types_5.f90,
	gfortran.dg/used_interface_ref.f90, gfortran.dg/used_types_1.f90,
	gfortran.dg/userdef_operator_1.f90: Use it.

From-SVN: r112264
2006-03-21 23:50:37 +00:00
Richard Sandiford
8ce1ac69de target-supports.exp (check_no_compiler_messages): New procedure.
* lib/target-supports.exp (check_no_compiler_messages): New procedure.
	(check_visibility_available): Use it.
	(check_effective_target_default_packed): Likewise.
	(check_effective_target_pcc_bitfield_type_matters): Likewise.
	(check_effective_target_fopenmp): Likewise.
	(check_effective_target_freorder): Likewise.
	(check_effective_target_fpic): Likewise.
	(check_named_sections_available): Likewise.
	(check_effective_target_ilp32): Likewise.
	(check_effective_target_lp64): Likewise.

From-SVN: r112232
2006-03-20 23:22:13 +00:00
Paul Brook
e3860a7d0d target-supports.exp (check_profiling_available): Add m68k-*-elf.
2006-03-03  Paul Brook  <paul@codesourcery.com>

	* gcc/testsuite/lib/target-supports.exp (check_profiling_available):
	Add m68k-*-elf.

From-SVN: r111681
2006-03-03 17:42:50 +00:00
Victor Kaplansky
4035f24587 re PR testsuite/25918 (gcc.dg/vect/vect-reduc-dot-s16.c scan-tree-dump-times vectorized 1 loops 1 and gcc.dg/vect/vect-reduc-pattern-2.c scan-tree-dump-times vectorized 2 loops 1 fail)
testsuite/
2006-02-16  Victor Kaplansky  <victork@il.ibm.com>

	PR tree-opt/25918
	* lib/target-supports.exp
	(check_effective_target_vect_short_mult): New.
	(check_effective_target_vect_char_mult): New.
	(check_effective_target_vect_widen_sum_qi_to_si): New.
	(check_effective_target_vect_widen_sum_qi_to_hi): New.
	(check_effective_target_vect_widen_sum_hi_to_si): New.
	* gcc.dg/vect/vect-reduc-dot-s16.c: Remove, split into
	vect-reduc-dot-s16a.c and vect-reduc-dot-s16b.c
	* vect-reduc-dot-s16a.c: New, split from vect-reduc-dot-s16.c.
	* vect-reduc-dot-s16b.c: New, split from vect-reduc-dot-s16.c.
	* gcc.dg/vect/vect-reduc-pattern-2.c: Remove, split into
	vect-reduc-pattern-2a.c, vect-reduc-pattern-2b.c and
	vect-reduc-pattern-2c.c
	* gcc.dg/vect/vect-reduc-pattern-1.c: Remove, split into
	vect-reduc-pattern-1a.c, vect-reduc-pattern-1b.c and
	vect-reduc-pattern-1c.c

From-SVN: r111135
2006-02-16 09:59:00 +00:00
Josh Conner
4c553323a6 re PR target/25376 (section attribute doesn't work on darwin)
PR target/25376
* varasm.c (function_section): Check for section name before
calling select_section on targets that define
USE_SELECT_SECTION_FOR_FUNCTIONS.  On other targets, use
unlikely_text_section instead of hot_function_section if
first_function_block_is_cold.
* gcc.dg/pr25376.c: New test.

* gcc.c-torture/compile/pr23237.c: Only compile test -- don't
assemble.
* lib/target-supports.exp (check_named_sections_available):
Only compile named-sections test -- don't assemble.

From-SVN: r110917
2006-02-13 18:12:17 +00:00