Commit Graph

59 Commits

Author SHA1 Message Date
Geoffrey Keating bc0f348e10 Index: ChangeLog
2005-05-31  Geoffrey Keating  <geoffk@geoffk.org>

	* config/rs6000/rs6000.md (sync_boolcshort_internal): New.
	* config/rs6000/rs6000.c (rs6000_emit_sync): Shift count must
	be complemented for big-endian.  Mask for AND must be rotated,
	not shifted.  Handle short operands with NOT on the memory
	operation.

Index: testsuite/ChangeLog
2005-05-31  Geoffrey Keating  <geoffk@geoffk.org>

	* lib/target-supports.exp
	(check_effective_target_sync_char_short): New.
	* gcc.dg/sync-2.c: New.

From-SVN: r100515
2005-06-02 21:45:57 +00:00
Richard Henderson 2b5bf0e27e sse.md (mulv4si3): New.
* config/i386/sse.md (mulv4si3): New.

        * lib/target-supports.exp (check_effective_target_vect_int_mul): Add
        i?86 and x86_64.

From-SVN: r99811
2005-05-16 21:33:42 -07:00
David Billinghurst cea02b6e7e re PR libstdc++/21526 (libstdc++-v3 testsuite hangs on cygwin)
2005-05-16  David Billinghurst <David.Billinghurst@riotinto.com>

	PR libstdc++/21526
	* lib/target-supports.exp (check_mkfifo_available):
	Return 0 for cygwin as mkfifo support incomplete on platform.
	Fix typos in comments.

From-SVN: r99757
2005-05-16 00:51:38 +00:00
Mark Mitchell 34f4edf8ec testsuite_hooks.cc (try_mkfifo): Remove.
* testsuite/testsuite_hooks.cc (try_mkfifo): Remove.
	* testsuite/testsuite_hooks.h (try_mkfifo): Likewise.
	* testsuite/27_io/basic_filebuf/close/char/4879.cc: Use
	dg-require-fork and dg-require-mkfifo.  Replace try_mkfifo with
	mkfifo.
	* testsuite/27_io/basic_filebuf/close/char/9964.cc: Likewise.
	* testsuite/27_io/basic_filebuf/imbue/char/13171-2.cc: Likewise.
	* testsuite/27_io/basic_filebuf/imbue/char/13582-2.cc: Likewise.
	* testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-2.cc:
	Likewise.
	* testsuite/27_io/basic_filebuf/imbue/wchar_t/14975-2.cc:
	Likewise.
	* testsuite/27_io/basic_filebuf/open/char/9507.cc: Likewise.
	* testsuite/27_io/basic_filebuf/showmanyc/char/9533-1.cc:
	Likewise.
	* testsuite/27_io/basic_filebuf/underflow/char/10097.cc: Likewise.
	* testsuite/27_io/objects/char/7.cc: Likewise.
	* testsuite/27_io/objects/char/9661-1.cc: Likewise.
	* testsuite/27_io/objects/wchar_t/7.cc: Likewise.
	* testsuite/27_io/objects/wchar_t/9661-1.cc: Likewise.

	* lib/target-supports-dg.exp (dg-require-fork): New function.
	(dg-require-mkfifo): Likewise.
	* lib/target-supports.exp (check_function_available): New
	function.
	(check_fork_available): Likewise.
	(check_mkfifo_available): Likewise.

From-SVN: r99325
2005-05-06 17:03:10 +00:00
Paul Brook 0d341a6ae1 arm-g2.c: Use effective-target arm32.
2005-05-05  Paul Brook  <paul@codesourcery.com>

	* gcc.dg/arm-g2.c: Use effective-target arm32.
	* gcc.dg/arm-mmx-1.c: Ditto.
	* gcc.dg/arm-scd42-2.c: Ditto.
	* gcc.dg/arm-vfp1.c: Ditto.
	* lib/target-supports.exp (check_effective_target_arm32): New
	function.

From-SVN: r99269
2005-05-05 15:12:01 +00:00
Bob Wilson dd2778f346 target-supports.exp (check_profiling_available): Return false for xtensa-*-elf.
* lib/target-supports.exp (check_profiling_available): Return
	false for xtensa-*-elf.

From-SVN: r98950
2005-04-29 00:06:26 +00:00
Geoffrey Keating 915167f5a5 Index: ChangeLog
2005-04-21  Geoffrey Keating  <geoffk@apple.com>

	* config/rs6000/rs6000-protos.h (rs6000_emit_sync): New.
	* config/rs6000/rs6000.c (rs6000_emit_vector_compare): Use
	gen_rtx_* not gen_rtx_fmt_*.
	(rs6000_emit_vector_select): Likewise.
	(rs6000_emit_sync): New.
	* config/rs6000/rs6000.md (GPR, INT, INT1): New mode macros.
	(larx, stcx, cmp): New mode substitutions.
	(UNSPEC_SYNC, UNSPEC_SYNC_OP, UNSPEC_SYNC_SWAP, UNSPEC_LWSYNC,
	UNSPEC_ISYNC): New constants.
	(rlwinm): Give name.
	(memory_barrier, isync, lwsync): New insns.
	(sync_compare_and_swap<mode>, sync_lock_test_and_set<mode>): New insn.
	(sync_lock_release<mode>): New expander.
	(sync_add<mode>, sync_sub<mode>, sync_ior<mode>, sync_and<mode>,
	sync_xor<mode>, sync_nand<mode>, sync_old_add<mode>,
	sync_old_sub<mode>, sync_old_ior<mode>, sync_old_and<mode>,
	sync_old_xor<mode>, sync_old_nand<mode>, sync_new_add<mode>,
	sync_new_sub<mode>, sync_new_ior<mode>, sync_new_and<mode>,
	sync_new_xor<mode>, sync_new_nand<mode>): New expanders.
	(sync_add<mode>_internal, sync_addshort_internal,
	sync_sub<mode>_internal, sync_andsi_internal, sync_anddi_internal,
	sync_boolsi_internal, sync_booldi_internal, sync_boolc<mode>_internal,
	sync_boolc<mode>_internal2, sync_boolcc<mode>_internal): New insns.

	* doc/md.texi (Standard Names): sync_compare_and_swap's operand 0
	is the memory before, not after, the operation.  Clarify
	barrier requirements.

Index: testsuite/ChangeLog
2005-04-21  Geoffrey Keating  <geoffk@apple.com>

	* lib/target-supports.exp (check_effective_target_sync_int_long):
	Add powerpc*.

From-SVN: r98527
2005-04-21 21:13:41 +00:00
Richard Henderson f12b785df3 builtins.c (expand_builtin_sync_operation): Revert last change.
* builtins.c (expand_builtin_sync_operation): Revert last change.
        * optabs.c (expand_bool_compare_and_swap): Compare vs old value,
        not vs new value.
        (expand_compare_and_swap_loop): Likewise.
        (expand_sync_operation): Remove fallback from NAND to AND; invert
        memory operand when expanding from cmpxchg.
        (expand_sync_fetch_operation): Likewise.
        * doc/extend.texi (Atomic Builtins): Fix docs for nand and
        compare-and-swap.

        * config/alpha/alpha.c (alpha_split_atomic_op): Invert memory operand
        when implementing NAND.  Fix double-add for AFTER.
        * config/alpha/sync.md (sync_nand<I48MODE>): Invert memory operand.
        (sync_old_nand<I48MODE>, sync_new_nand<I48MODE>): Likewise.
        (sync_compare_and_swap<I48MODE>): Fix compare vs zero.  Return old
        memory value.
        (sync_lock_test_and_set<I48MODE>): Remove extra label and last
        memory barrier.

        * config/i386/sync.md (sync_compare_and_swap<IMODE>): Fix pattern
        to return old memory value.
        (sync_compare_and_swap_cc<IMODE>): Likewise.

        * config/ia64/ia64.c (ia64_dependencies_evaluation_hook): Early
        return pre-reload.  Don't consider output or anti dependencies.
        * config/ia64/sync.md (IMODE): New.
        (modesuffix): Add QI and HI.
        (memory_barrier): Simplify expansion.
        (sync_compare_and_swap<IMODE>): Use IMODE, not I48MODE.
        (cmpxchg_acq_<IMODE>): Likewise.
        (sync_lock_test_and_set<IMODE>): Likewise.
        (sync_lock_release<IMODE>): Likewise.

From-SVN: r98436
2005-04-19 21:54:11 -07:00
Devang Patel a45f6936f4 atlivec.md (mulv4si3): New pattern.
* config/rs6000/atlivec.md (mulv4si3): New pattern.

        * gcc.dg/vect/vect-11.c: Require effective target vect_int_mult.
        * gcc.dg/vect/vect-11a.c: New.
        * gcc.dg/vect/vect-none.c: Update.
        * lib/target-supports.exp (check_effective_target_vect_int_mult): New.

From-SVN: r98323
2005-04-18 08:50:53 -07:00
Richard Henderson ae46a07ab2 i386.c (ix86_expand_sse_cmp): Split out from ...
* config/i386/i386.c (ix86_expand_sse_cmp): Split out from ...
        (ix86_expand_sse_movcc): ... here.  Take cmp as a pre-computed
        register.
        (ix86_expand_fp_movcc): Update to match.
        (ix86_expand_fp_vcond, ix86_expand_int_vcond): New.
        * config/i386/i386-protos.h: Update.
        * config/i386/sse.md (vcondv4sf, vcondv2df): New.
        (vcond<SSEMODE124>, vcondu<SSEMODE12>): New.

        * lib/target-supports.exp (check_effective_target_vect_condition):
        Add ia64, i?86, and x86_64.

From-SVN: r98146
2005-04-14 10:46:08 -07:00
Devang Patel b52485c631 tree-data-ref.c (build_classic_dist_vector, [...]): Make externally visible.
* tree-data-ref.c (build_classic_dist_vector,
         compute_subscript_distance): Make externally visible.
         * tree-data-ref.h (build_classic_dist_vector,
         compute_subscript_distance): Same.
         * tree-vect-analyze.c (vect_analyze_data_ref_dependence):
         Check distance vector against vectorization factor.
         (vect_analyze_loop): Determine vectorizaion factor before
         analyzing data dependences.
         * tree-vectorizer.c (loops_num): Make it externally visible and
         rename ...
         * tree-vectorizer.c (vect_loops_num): ... new name.
         * tree-vectorizer.h  (vect_loops_num): New.

         * tree-vect-analyze.c (vect_analyze_operations): Check
         vectorizable codition.
         * tree-vect-transform.c (vect_is_simple_cond): New function.
         (vectorizable_condition): New function.
         (vect_transform_stmt): Handle condition_vec_info_type.
         * tree-vectorizer.h (enum stmt_vec_info_type): Add
         condition_vec_info_type.
         (vectorizable_condition): New.

         * lib/target-supports.exp (check_effective_target_vect_condition): New.
         * gcc.dg/vect/vect-ifcvt-1.c: New test.
         * gcc.dg/vect/vect-ifcvt-2.c: New test.
         * gcc.dg/vect/vect-ifcvt-3.c: New test.
         * gcc.dg/vect/vect-ifcvt-4.c: New test.
         * gcc.dg/vect/vect-ifcvt-5.c: New test.
         * gcc.dg/vect/vect-ifcvt-6.c: New test.
         * gcc.dg/vect/vect-ifcvt-7.c: New test.
         * gcc.dg/vect/vect-none.c: Now one loop is vectorized.

         * gcc.dg/vect/vect-dv-1.c: New test.
         * gcc.dg/vect/vect-dv-2.c: New test.

From-SVN: r97999
2005-04-11 18:35:54 -07:00
Hans-Peter Nilsson b6e3f5722e target-supports.exp (get_compiler_messages): Support optional arguments, the fourth being compiler options.
* lib/target-supports.exp (get_compiler_messages): Support
	optional arguments, the fourth being compiler options.
	(check_effective_target_fpic): New proc.
	* gcc.dg/20050321-2.c: Restrict to target fpic.

From-SVN: r97763
2005-04-06 23:27:11 +00:00
Devang Patel 3e0de9d188 altivec.md (altivec_vsr<VI_char>): Rename to ..
* config/rs600/altivec.md (altivec_vsr<VI_char>): Rename to ..
         (lhsr<mode>3): ... new name.
         (altivec_vsra<VI_char>): Rename to ..
         (ashr<mode>3): ... new name.
         * config/rs6000/rs6000.c (builtin_description): Rename shift
         operations.

         testsuite:
         * lib/target-supports.exp (check_effective_target_vect_shif): New.
         * gcc.dg/vect/vect-shift-1.c: New test.

From-SVN: r97636
2005-04-05 09:33:29 -07:00
Geoffrey Keating d3d9a67f7e pragma-override1.C: Mark as requiring 'internal' visibility.
* g++.dg/ext/visibility/pragma-override1.C: Mark as requiring
	'internal' visibility.
	* g++.dg/ext/visibility/pragma-override2.C: Likewise.
	* g++.dg/ext/visibility/visibility-7.C: Mark as requiring
	'protected' visibility.
	* gcc.dg/visibility-7.c: Likewise.
	* lib/target-supports.exp (check_visibility_available): Take
	a parameter, the kind of visibility to check for.
	* lib/target-supports-dg.exp (dg-require-visibility): Pass parameter
	to check_visibility_available.

From-SVN: r97031
2005-03-25 02:21:01 +00:00
Mark Mitchell 0b3deaafeb target-supports.exp (check_iconv_available): Default libiconv to -liconv, if there is no definition.
* lib/target-supports.exp (check_iconv_available): Default
	libiconv to -liconv, if there is no definition.

	* testsuite/lib/libstdc++.exp (libstdc++_init): Improve handling
	of compilers not in the build directory.
	(libstdc++_wchar_t): New variable.
	(libstdc++_threads): Likewise.
	(libstdc++_test_objs): Likewise.
	(v3_target_compile): Use libstdc++_test_objs.
	(v3-list-tests): Remove.
	(listdc++_build_support): New function.
	* testsuite/libstdc++-dg/normal.exp: Rework to dynamically
	generate list of tests.

From-SVN: r96934
2005-03-23 16:45:45 +00:00
Janis Johnson 3562bc34e8 target-supports.exp (check_vmx_hw_available): Use -maltivec for darwin.
* lib/target-supports.exp (check_vmx_hw_available): Use -maltivec for
        darwin.

Co-Authored-By: Dorit Naishlos <dorit@il.ibm.com>

From-SVN: r96527
2005-03-15 18:41:19 +00:00
Ben Elliston 11289ef979 vlad.exp: Remove trailing semicolons.
* consistency.vlad/vlad.exp: Remove trailing semicolons.
	* g++.dg/gcov/gcov.exp: Likewise.
	* gcc.c-torture/execute/ieee/ieee.exp: Likewise.
	* gcc.target/xstormy16/xstormy16.exp: Likewise.
	* lib/c-torture.exp: Likewise.
	* lib/fortran-torture.exp: Likewise.
	* lib/g++.exp: Likewise.
	* lib/gcc-defs.exp: Likewise.
	* lib/gcc-dg.exp: Likewise.
	* lib/gcc.exp: Likewise.
	* lib/gcov.exp: Likewise.
	* lib/gfortran.exp: Likewise.
	* lib/mike-g++.exp: Likewise.
	* lib/mike-gcc.exp: Likewise.
	* lib/objc-torture.exp: Likewise.
	* lib/objc.exp: Likewise.
	* lib/profopt.exp: Likewise.
	* lib/target-libpath.exp: Likewise.
	* lib/target-supports.exp: Likewise.
	* lib/treelang.exp: Likewise.
	* lib/wrapper.exp: Likewise.

From-SVN: r96132
2005-03-09 09:10:34 +11:00
John David Anglin 6731e86da0 file-format.exp (gcc_target_object_format): Add check for som format and hardcode object formats on hppa*-*-hpux*.
* lib/file-format.exp (gcc_target_object_format): Add check for som
        format and hardcode object formats on hppa*-*-hpux*.
	* lib/target-supports.exp (check_weak_available): Add check for som
	object format.  Always return 0 on hppa*-*-hpux10*.
	* gcc.dg/titype-1.c, gcc.dg/uninit-C.c: Don't use TImode if __hppa__
	is defined.
	* objc.dg/stabs-1.m: hppa*64*-*-* doesn't have stabs.

From-SVN: r95982
2005-03-06 18:26:53 +00:00
Uros Bizjak 74231b0f2c * lib/target-supports.exp (check_iconv_available): Fix comment.
From-SVN: r95927
2005-03-05 11:08:31 +01:00
Janis Johnson 56afd7aae3 target-supports.exp (check_effective_target_broken_cplxf_arg): New.
* lib/target-supports.exp (check_effective_target_broken_cplxf_arg):
	New.

From-SVN: r94900
2005-02-11 22:34:57 +00:00
Janis Johnson 635b0f2a72 target-supports.exp (current_target_name): New.
* lib/target-supports.exp (current_target_name): New.
	(check_effective_target_ilp32, check_effective_target_lp64):
	Cache the result to use as long as the current target, with
	multilib flags, remains the same.

From-SVN: r94168
2005-01-24 18:24:02 +00:00
Richard Henderson ef719a44ef emmintrin.h (_mm_cvtsi128_si32): Move earlier.
* config/i386/emmintrin.h (_mm_cvtsi128_si32): Move earlier.
	(_mm_cvtsi128_si64x): Likewise.
	(_mm_srl_epi64, _mm_srl_epi32, _mm_srl_epi16, _mm_sra_epi32,
	_mm_sra_epi16, _mm_sll_epi64, _mm_sll_epi32, _mm_sll_epi16): Use
	the _mm_{srl,sll}i_foo counterpart, and _mm_cvtsi128_si32.
	* config/i386/i386-modes.def: Add V16HI, V32QI, V4DF, V8SF.
	* config/i386/i386-protos.h: Update.
	* config/i386/i386.c (print_operand): Add 'H'.
	(ix86_fixup_binary_operands): Split out from ...
	(ix86_expand_binary_operator): ... here.
	(ix86_fixup_binary_operands_no_copy): New.
	(ix86_expand_fp_absneg_operator): Handle vector mode results.
	(bdesc_2arg): Update names for sse{,2,3}_ prefixes.
	(ix86_init_mmx_sse_builtins): Remove *maskncmp* special cases.
	(safe_vector_operand): Use CONST0_RTX.
	(ix86_expand_binop_builtin): Use ix86_fixup_binary_operands.
	(ix86_expand_builtin): Merge CODE_FOR_sse2_maskmovdqu_rex64 and
	CODE_FOR_sse2_maskmovdqu.  Special case SSE version of MASKMOVDQU
	expansion.  Update names for sse{,2,3}_ prefixes.  Remove *maskncmp*
	special cases.
	* config/i386/i386.h (IX86_BUILTIN_CMPNGTSS): New.
	(IX86_BUILTIN_CMPNGESS): New.
	* config/i386/i386.md (UNSPEC_FIX_NOTRUNC): New.
	(attr type): Add sselog1.
	(attr unit, attr memory): Handle it.
	(movti, movti_internal, movti_rex64): Move near other integer moves.
	(movtf, movtf_internal): Move near other fp moves.
	(SSEMODE, SSEMODEI, vec_setv2df, vec_extractv2df, vec_initv2df,
	vec_setv4sf, vec_extractv4sf, vec_initv4sf, movv4sf, movv4sf_internal,
	movv2df, movv2df_internal, mov<SSEMODEI>, mov<SSEMODEI>_internal,
	movmisalign<SSEMODE>, sse_movups_1, sse_movmskps, sse_movntv4sf,
	sse_movhlps, sse_movlhps, sse_storehps, sse_loadhps, sse_storelps,
	sse_loadlps, sse_loadss, sse_loadss_1, sse_movss, sse_storess,
	sse_shufps, addv4sf3, vmaddv4sf3, subv4sf3, vmsubv4sf3, negv4sf2,
	mulv4sf3, vmmulv4sf3, divv4sf3, vmdivv4sf3, rcpv4sf2, vmrcpv4sf2,
	rsqrtv4sf2, vmrsqrtv4sf2, sqrtv4sf2, vmsqrtv4sf2, sse_andv4sf3,
	sse_nandv4sf3, sse_iorv4sf3, sse_xorv4sf3, sse2_andv2df3,
	sse2_nandv2df3, sse2_iorv2df3, sse2_xorv2df3, sse2_andv2di3,
	sse2_nandv2di3, sse2_iorv2di3, sse2_xorv2di3, maskcmpv4sf3,
	vmmaskcmpv4sf3, sse_comi, sse_ucomi, sse_unpckhps, sse_unpcklps,
	smaxv4sf3, vmsmaxv4sf3, sminv4sf3, vmsminv4sf3, cvtpi2ps, cvtps2pi,
	cvttps2pi, cvtsi2ss, cvtsi2ssq, cvtss2si, cvtss2siq, cvttss2si,
	cvttss2siq, addv2df3, vmaddv2df3, subv2df3, vmsubv2df3, mulv2df3,
	vmmulv2df3, divv2df3, vmdivv2df3, smaxv2df3, vmsmaxv2df3, sminv2df3,
	vmsminv2df3, sqrtv2df2, vmsqrtv2df2, maskcmpv2df3, vmmaskcmpv2df3,
	sse2_comi, sse2_ucomi, sse2_movmskpd, sse2_pmovmskb, sse2_maskmovdqu,
	sse2_maskmovdqu_rex64, sse2_movntv2df, sse2_movntv2di, sse2_movntsi,
	cvtdq2ps, cvtps2dq, cvttps2dq, cvtdq2pd, cvtpd2dq, cvttpd2dq,
	cvtpd2pi, cvttpd2pi, cvtpi2pd, cvtsd2si, cvtsd2siq, cvttsd2si,
	cvttsd2siq, cvtsi2sd, cvtsi2sdq, cvtsd2ss, cvtss2sd, cvtpd2ps,
	cvtps2pd, addv16qi3, addv8hi3, addv4si3, addv2di3, ssaddv16qi3,
	ssaddv8hi3, usaddv16qi3, usaddv8hi3, subv16qi3, subv8hi3, subv4si3,
	subv2di3, sssubv16qi3, sssubv8hi3, ussubv16qi3, ussubv8hi3, mulv8hi3,
	smulv8hi3_highpart, umulv8hi3_highpart, sse2_umulsidi3,
	sse2_umulv2siv2di3, sse2_pmaddwd, sse2_uavgv16qi3, sse2_uavgv8hi3,
	sse2_psadbw, sse2_pinsrw, sse2_pextrw, sse2_pshufd, sse2_pshuflw,
	sse2_pshufhw, eqv16qi3, eqv8hi3, eqv4si3, gtv16qi3, gtv8hi3,
	gtv4si3, umaxv16qi3, smaxv8hi3, uminv16qi3, sminv8hi3, ashrv8hi3,
	ashrv4si3, lshrv8hi3, lshrv4si3, lshrv2di3, ashlv8hi3, ashlv4si3,
	ashlv2di3, sse2_ashlti3, sse2_lshrti3, sse2_unpckhpd, sse2_unpcklpd,
	sse2_packsswb, sse2_packssdw, sse2_packuswb, sse2_punpckhbw,
	sse2_punpckhwd, sse2_punpckhdq, sse2_punpcklbw, sse2_punpcklwd,
	sse2_punpckldq, sse2_punpcklqdq, sse2_punpckhqdq, sse2_movupd,
	sse2_movdqu, sse2_movdq2q, sse2_movdq2q_rex64, sse2_movq2dq,
	sse2_movq2dq_rex64, sse2_loadd, sse2_stored, sse2_storehpd,
	sse2_loadhpd, sse2_storelpd, sse2_loadlpd, sse2_movsd, sse2_loadsd,
	sse2_loadsd_1, sse2_storesd, sse2_shufpd, sse2_clflush, sse2_mfence,
	mfence_insn, sse2_lfence, lfence_insn, mwait, monitor, addsubv4sf3,
	addsubv2df3, haddv4sf3, haddv2df3, hsubv4sf3, hsubv2df3, movshdup,
	movsldup, lddqu, loadddup, movddup): Move to sse.md.  Any with
	non-optabs meanings renamed with an "sse{,2,3}_" prefix at the
	same time.
	(SSEPUSH, push<SSEPUSH>): Remove.
	(MMXPUSH, push<MMXPUSH>): Remove.
	(sse_movaps, sse_movaps_1, sse_movups): Remove.
	(sse2_movapd, sse2_movdqa, sse2_movq): Remove.
	(sse2_andti3, sse2_nandti3, sse2_iorti3, sse2_xorti3): Remove.
	(sse_clrv4sf, sse_clrv2df, sse2_clrti): Remove.
	(maskncmpv4sf3, vmmaskncmpv4sf3): Remove.
	(maskncmpv2df3, vmmaskncmpv2df3): Remove.
	(ashrv8hi3_ti, ashrv4si3_ti, lshrv8hi3_ti, lshrv4si3_ti): Remove.
	(lshrv2di3_ti, ashlv8hi3_ti, ashlv4si3_ti, ashlv2di3_ti): Remove.
	* config/i386/athlon.md (athlon_sselog_load): Handle sselog1.
	(athlon_sselog_load_k8, athlon_sselog, athlon_sselog_k8): Likewise.
	* config/i386/ppro.md (ppro_sse_div_V4SF_load): Fix memory attr.
	(ppro_sse_log_V4SF_load): Similarly.  Handle sselog1.
	(ppro_sse_log_V4SF): Handle sselog1.
	* config/i386/predicates.md (const_0_to_1_operand): New.
	(const_0_to_255_mul_8_operand): New.
	(const_1_to_31_operand): Rename from const_int_1_31_operand.
	(const_2_to_3_operand, const_4_to_7_operand): New.
	* config/i386/sse.md: New file.
	(SSEMODE12, SSEMODE24, SSEMODE124, SSEMODE248, ssevecsize): New.
	(sse_movups): Rename from sse_movups_1.
	(sse_loadlss): Rename from sse_loadss_1.
	(andv4sf3, iorv4sf3, xorv4sf3, andv2df3): Remove the sse prefix
	from the name.
	(negv4sf2): Use ix86_expand_fp_absneg_operator.
	(absv4sf2, negv2df, absv2df): New.
	(addv4sf3): Add expander to call ix86_fixup_binary_operands_no_copy.
	(subv4sf3, mulv4sf3, divv4sf3, smaxv4sf3, sminv4sf3, andv4sf3,
	iorv4sf3, xorv4sf3, addv2df3, subv2df3, mulv2df3, divv2df3,
	smaxv2df3, sminv2df3, andv2df3, iorv2df3, xorv2df3, mulv8hi3,
	umaxv16qi3, smaxv8hi3, uminv16qi3, sminv8hi3): Likewise.
	(sse3_addsubv4sf3): Model correctly.
	sse3_haddv4sf3, sse3_hsubv4sf3, sse3_addsubv2df3, sse3_haddv2df3,
	sse3_hsubv2df3, sse2_ashlti3, sse2_lshrti3): Likewise.
	(sse_movhlps): Model with vec_select+vec_concat.
	(sse_movlhps, sse_unpckhps, sse_unpcklps, sse3_movshdup,
	sse3_movsldup, sse_shufps, sse_shufps_1, sse2_unpckhpd, sse3_movddup,
	sse2_unpcklpd, sse2_shufpd, sse2_shufpd_1, sse2_punpckhbw,
	sse2_punpcklbw, sse2_punpckhwd, sse2_punpcklwd, sse2_punpckhdq,
	sse2_punpckldq, sse2_punpckhqdq, sse2_punpcklqdq, sse2_pshufd,
	sse2_pshufd_1, sse2_pshuflw, sse2_pshuflw_1, sse2_pshufhw,
	sse2_pshufhw_1): Likewise.
	(neg<SSEMODEI>2, one_cmpl<SSEMODEI>2): New.
	(add<SSEMODEI>3, sse2_ssadd<SSEMODE12>3, sse2_usadd<SSEMODE12>3,
	sub<SSEMODEI>3, sse2_sssub<SSEMODE12>3, sse2_ussub<SSEMODE12>3,
	ashr<SSEMODE24>3, lshr<SSEMODE248>3, sse2_eq<SSEMODE124>3,
	sse2_gt<SSEMODDE124>3, and<SSEMODEI>3, sse_nand<SSEMODEI>3,
	ior<SSEMODEI>3, xor<SSEMODEI>3): Macroize from existing patterns.
	(addv4sf3, sse_vmaddv4sf3, mulv4sf3, sse_vmmulv4sf3, smaxv4sf3,
	sse_vmsmaxv4sf3, sminv4sf3, sse_vmsminv4sf3, addv2df3, sse2_vmaddv2df3,
	mulv2df3, sse2_vmmulv2df3, smaxv2df3, sse2_vmsmaxv2df3, sminv2df3,
	sse2_vmsminv2df3, umaxv16qi3, smaxv8hi3, uminv16qi3
	sminv8hi3): Mark commutative
	operands.  Use ix86_binary_operator_ok.
	(sse_unpckhps, sse_unpcklps, sse2_packsswb, sse2_packssdw,
	sse2_packuswb, sse2_punpckhbw, sse2_punpcklbw, sse2_punpckhwd,
	sse2_punpcklwd, sse2_punpckhdq, sse2_punpckldq, sse2_punpckhqdq,
	sse2_punpcklqdq): Allow operand2 in memory.
	(sse_movhlps, sse_movlhps, sse2_unpckhpd, sse2_unpcklpd
	sse2_movsd): Add memory alternatives.
	(sse_storelps): Turn expander into an insn; split after reload.
	(sse_storess, sse2_loadhpd, sse2_loadlpd): Add non-xmm inputs.
	(sse2_storehpd, sse2_storelpd): Add non-xmm outputs.

From-SVN: r93101
2005-01-08 16:51:31 -08:00
Richard Henderson f61134e88b ia64.c (TARGET_VECTOR_MODE_SUPPORTED_P): New.
* config/ia64/ia64.c (TARGET_VECTOR_MODE_SUPPORTED_P): New.
        (ia64_const_ok_for_letter_p): New.
        (ia64_const_double_ok_for_letter_p): New.
        (ia64_extra_constraint): New.
        (ia64_expand_vecint_compare): New.
        (ia64_expand_vcondu_v2si): New.
        (ia64_expand_vecint_cmov): New.
        (ia64_expand_vecint_minmax): New.
        (ia64_print_operand): Add 'v'.
        (ia64_preferred_reload_class): New.
        (ia64_vector_mode_supported_p): New.
        * config/ia64/ia64.h (UNITS_PER_SIMD_WORD): New.
        (PREFERRED_RELOAD_CLASS): Move to function.
        (CONST_OK_FOR_LETTER_P): Move to function.
        (CONST_DOUBLE_OK_FOR_LETTER_P): Move to function.
        (CONSTRAINT_OK_FOR_Q, CONSTRAINT_OK_FOR_R): Remove.
        (CONSTRAINT_OK_FOR_S, CONSTRAINT_OK_FOR_T): Remove.
        (EXTRA_CONSTRAINT): Move to function.
        * config/ia64/ia64.md: Include vect.md.
        (itanium_class): Add mmalua.
        (type): Handle it.
        * config/ia64/itanium1.md (1_mmalua): New.  Add it to bypasses.
        (1b_mmalua): New.
        * config/ia64/itanium2.md (2_mmalua, 2b_mmalua): Similarly.
        * config/ia64/predicates.md (gr_reg_or_0_operand): Accept any
        CONST0_RTX.
        (const_int_2bit_operand): New.
        (fr_reg_or_0_operand): New.
        * config/ia64/ia64-modes.def: Add vector modes.
        * config/ia64/ia64-protos.h: Update.
        * config/ia64/vect.md: New file.

        * gcc.dg/vect/vect.exp: Enable for ia64.
        * lib/target-supports.exp (check_effective_target_vect_int): Likewise.
        (check_effective_target_vect_float): Likewise.
        (check_effective_target_vect_no_align): Likewise.
        * gcc.dg/vect/vect-30.c: XFAIL for vect_no_align.
        * gcc.dg/vect/vect-8.c: Likewise.

From-SVN: r92862
2005-01-03 11:59:13 -08:00
Richard Henderson 798e3fe5a0 target-supports.exp (check_effective_target_vect_no_bitwise): Remove Alpha.
* lib/target-supports.exp (check_effective_target_vect_no_bitwise):
	Remove Alpha.

From-SVN: r92614
2004-12-25 19:57:04 -08:00
Richard Henderson 3e8aba3481 target-supports.exp (check_effective_target_vect_no_align): Remove i?86 and x86-64.
* lib/target-supports.exp (check_effective_target_vect_no_align):
        Remove i?86 and x86-64.

From-SVN: r92544
2004-12-23 02:25:45 -08:00
Janis Johnson eeea13c2cd target-supports.exp (check_effective_target_vect_no_max, [...]): New.
* lib/target-supports.exp
	(check_effective_target_vect_no_max,
	check_effective_target_vect_no_bitwise,
	check_effective_target_vect_no_align): New.
	* gcc.dg/vect/vect-13.c: Use them.
	* gcc.dg/vect/vect-17.c: Ditto.
	* gcc.dg/vect/vect-18.c: Ditto.
	* gcc.dg/vect/vect-19.c: Ditto.
	* gcc.dg/vect/vect-20.c: Ditto.
	* gcc.dg/vect/vect-27.c: Ditto.
	* gcc.dg/vect/vect-29.c: Ditto.
	* gcc.dg/vect/vect-44.c: Ditto.
	* gcc.dg/vect/vect-48.c: Ditto.
	* gcc.dg/vect/vect-50.c: Ditto.
	* gcc.dg/vect/vect-52.c: Ditto.
	* gcc.dg/vect/vect-54.c: Ditto.
	* gcc.dg/vect/vect-56.c: Ditto.
	* gcc.dg/vect/vect-58.c: Ditto.
	* gcc.dg/vect/vect-60.c: Ditto.
	* gcc.dg/vect/vect-72.c: Ditto.
	* gcc.dg/vect/vect-80.c: Ditto.

From-SVN: r92466
2004-12-21 18:03:31 +00:00
Richard Henderson 8138dfe456 target-supports.exp (check_gc_sections_available): Disable for alpha and ia64.
* lib/target-supports.exp (check_gc_sections_available): Disable
        for alpha and ia64.

From-SVN: r91730
2004-12-04 10:01:09 -08:00
Janis Johnson 810838e767 gcc-dg.exp (dg-process-target): Wrapper for dg function to handle effective-target-keyword.
* lib/gcc-dg.exp (dg-process-target): Wrapper for dg function to
	handle effective-target-keyword.
	(dg-skip-if): Support effective-target keyword as target list.
	(dg-xfail-if): Ditto.
	* lib/target-supports.exp (is-effective-target-keyword): New proc.

From-SVN: r91592
2004-12-02 00:05:15 +00:00
Janis Johnson 688977080c * lib/target-supports.exp (is-effective-target): Simplify.
From-SVN: r91541
2004-11-30 21:30:27 +00:00
Janis Johnson f470b1e5b7 target-supports.exp (check_effective_target_vect_long): Fix for powerpc64-*-*.
* lib/target-supports.exp (check_effective_target_vect_long):
	Fix for powerpc64-*-*.

From-SVN: r91540
2004-11-30 21:19:49 +00:00
Richard Henderson 31589ec609 pr18425.c: Use effective target vect_long.
* gcc.dg/vect/pr18425.c: Use effective target vect_long.
        * gcc.dg/vect/vect-13.c, gcc.dg/vect/vect-17.c, gcc.dg/vect/vect-18.c,
        gcc.dg/vect/vect-19.c, gcc.dg/vect/vect-20.c, gcc.dg/vect/vect-48a.c,
        gcc.dg/vect/vect-56a.c, gcc.dg/vect/vect-7.c, gcc.dg/vect/vect-77.c,
        gcc.dg/vect/vect-77a.c, gcc.dg/vect/vect-78.c, gcc.dg/vect/vect-86.c,
        gcc.dg/vect/vect-87.c, gcc.dg/vect/vect-88.c: XFAIL for alpha.

        * gcc.dg/vect/vect.exp: Add check for alpha.
        * lib/target-supports.exp (check_alpha_max_hw_available): New.
        (check_effective_target_vect_int): Enable for alpha.
        (check_effective_target_vect_long): New.
        (is-effective-target): Add it.

From-SVN: r91105
2004-11-23 14:03:31 -08:00
Mark Mitchell 79c70e5a6c target-supports.exp (check_visibility_available): Really test the compiler.
2004-11-19  Mark Mitchell  <mark@codesourcery.com>
            Joseph Myers  <joseph@codesourcery.com>

	* lib/target-supports.exp (check_visibility_available): Really
	test the compiler.

Co-Authored-By: Joseph Myers <joseph@codesourcery.com>

From-SVN: r90937
2004-11-19 19:59:10 +00:00
Janis Johnson 07d05ffdac target-supports.exp (check_effective_target_vect_int): New
* lib/target-supports.exp (check_effective_target_vect_int): New
	(check_effective_target_vect_float): New
	(check_effective_target_vect_double): New.
	(is-effective-target): Support new effective targets keywords.
	* gcc.dg/vect/vect.exp: Set target-dependent vector flags and
	default action for dg-do.
	* gcc.dg/vect/pr16105.c: Use new support.
	* gcc.dg/vect/pr18400.c: Ditto.
	* gcc.dg/vect/pr18425.c: Ditto.
	* gcc.dg/vect/vect-1.c: Ditto.
	* gcc.dg/vect/vect-10.c: Ditto.
	* gcc.dg/vect/vect-11.c: Ditto.
	* gcc.dg/vect/vect-12.c: Ditto.
	* gcc.dg/vect/vect-13.c: Ditto.
	* gcc.dg/vect/vect-14.c: Ditto.
	* gcc.dg/vect/vect-15.c: Ditto.
	* gcc.dg/vect/vect-16.c: Ditto.
	* gcc.dg/vect/vect-17.c: Ditto.
	* gcc.dg/vect/vect-18.c: Ditto.
	* gcc.dg/vect/vect-19.c: Ditto.
	* gcc.dg/vect/vect-2.c: Ditto.
	* gcc.dg/vect/vect-20.c: Ditto.
	* gcc.dg/vect/vect-21.c: Ditto.
	* gcc.dg/vect/vect-22.c: Ditto.
	* gcc.dg/vect/vect-23.c: Ditto.
	* gcc.dg/vect/vect-24.c: Ditto.
	* gcc.dg/vect/vect-25.c: Ditto.
	* gcc.dg/vect/vect-26.c: Ditto.
	* gcc.dg/vect/vect-27.c: Ditto.
	* gcc.dg/vect/vect-27a.c: Ditto.
	* gcc.dg/vect/vect-28.c: Ditto.
	* gcc.dg/vect/vect-29.c: Ditto.
	* gcc.dg/vect/vect-29a.c: Ditto.
	* gcc.dg/vect/vect-3.c: Ditto.
	* gcc.dg/vect/vect-30.c: Ditto.
	* gcc.dg/vect/vect-31.c: Ditto.
	* gcc.dg/vect/vect-32.c: Ditto.
	* gcc.dg/vect/vect-33.c: Ditto.
	* gcc.dg/vect/vect-34.c: Ditto.
	* gcc.dg/vect/vect-35.c: Ditto.
	* gcc.dg/vect/vect-36.c: Ditto.
	* gcc.dg/vect/vect-37.c: Ditto.
	* gcc.dg/vect/vect-38.c: Ditto.
	* gcc.dg/vect/vect-4.c: Ditto.
	* gcc.dg/vect/vect-40.c: Ditto.
	* gcc.dg/vect/vect-41.c: Ditto.
	* gcc.dg/vect/vect-42.c: Ditto.
	* gcc.dg/vect/vect-43.c: Ditto.
	* gcc.dg/vect/vect-44.c: Ditto.
	* gcc.dg/vect/vect-45.c: Ditto.
	* gcc.dg/vect/vect-46.c: Ditto.
	* gcc.dg/vect/vect-47.c: Ditto.
	* gcc.dg/vect/vect-48.c: Ditto.
	* gcc.dg/vect/vect-48a.c: Ditto.
	* gcc.dg/vect/vect-49.c: Ditto.
	* gcc.dg/vect/vect-5.c: Ditto.
	* gcc.dg/vect/vect-50.c: Ditto.
	* gcc.dg/vect/vect-51.c: Ditto.
	* gcc.dg/vect/vect-52.c: Ditto.
	* gcc.dg/vect/vect-53.c: Ditto.
	* gcc.dg/vect/vect-54.c: Ditto.
	* gcc.dg/vect/vect-55.c: Ditto.
	* gcc.dg/vect/vect-56.c: Ditto.
	* gcc.dg/vect/vect-56a.c: Ditto.
	* gcc.dg/vect/vect-57.c: Ditto.
	* gcc.dg/vect/vect-58.c: Ditto.
	* gcc.dg/vect/vect-59.c: Ditto.
	* gcc.dg/vect/vect-6.c: Ditto.
	* gcc.dg/vect/vect-60.c: Ditto.
	* gcc.dg/vect/vect-61.c: Ditto.
	* gcc.dg/vect/vect-62.c: Ditto.
	* gcc.dg/vect/vect-63.c: Ditto.
	* gcc.dg/vect/vect-64.c: Ditto.
	* gcc.dg/vect/vect-65.c: Ditto.
	* gcc.dg/vect/vect-66.c: Ditto.
	* gcc.dg/vect/vect-67.c: Ditto.
	* gcc.dg/vect/vect-68.c: Ditto.
	* gcc.dg/vect/vect-69.c: Ditto.
	* gcc.dg/vect/vect-7.c: Ditto.
	* gcc.dg/vect/vect-72.c: Ditto.
	* gcc.dg/vect/vect-72a.c: Ditto.
	* gcc.dg/vect/vect-73.c: Ditto.
	* gcc.dg/vect/vect-74.c: Ditto.
	* gcc.dg/vect/vect-75.c: Ditto.
	* gcc.dg/vect/vect-76.c: Ditto.
	* gcc.dg/vect/vect-77.c: Ditto.
	* gcc.dg/vect/vect-77a.c: Ditto.
	* gcc.dg/vect/vect-78.c: Ditto.
	* gcc.dg/vect/vect-79.c: Ditto.
	* gcc.dg/vect/vect-8.c: Ditto.
	* gcc.dg/vect/vect-80.c: Ditto.
	* gcc.dg/vect/vect-82.c: Ditto.
	* gcc.dg/vect/vect-82_64.c: Ditto.
	* gcc.dg/vect/vect-83.c: Ditto.
	* gcc.dg/vect/vect-83_64.c: Ditto.
	* gcc.dg/vect/vect-9.c: Ditto.
	* gcc.dg/vect/vect-all.c: Ditto.
	* gcc.dg/vect/vect-none.c: Ditto.

Co-Authored-By: Aldy Hernandez <aldyh@redhat.com>

From-SVN: r90831
2004-11-17 23:47:21 +00:00
Janis Johnson b6dc500c52 target-supports.exp (get-compiler_messages): New.
* lib/target-supports.exp (get-compiler_messages): New.
	(check_named_sections_available): Use it.
	(check_effective_target_ilp32): New.
	(check_effective_target_lp64): New.
	(is-effective-target): New.
	* lib/gcc-dg.exp (dg-require-effective-target): New.

Co-Authored-By: Richard Sandiford <rsandifo@redhat.com>

From-SVN: r90515
2004-11-12 01:11:01 +00:00
Aaron W. LaFramboise c37780f572 re PR target/18106 (Weak symbols are unimplemented on Windows)
PR target/18106
	* config/i386/cygming.h
	[HAVE_GAS_WEAK] (ASM_WEAKEN_LABEL): Macro defined.

	* lib/target-supports.exp (check_weak_available): Support
	Windows.

From-SVN: r90164
2004-11-05 22:28:10 -06:00
Andrew Pinski d533f1cb17 visibility-[1-9a].c: Change to use scan-hidden instead of scan-assembler.
2004-10-28  Andrew Pinski  <pinskia@physics.uc.edu>

        * gcc.dg/visibility-[1-9a].c: Change to use scan-hidden instead of
        scan-assembler.
        * lib/scanasm.exp (hidden-scan-for): New proc.
        (scan-hidden): Use hidden-scan-for instead of constructing the scan
        string.
        (scan-not-hidden): Likewise.
        * lib/target-supports.exp (check_visibility_available): mach-o is
        support too.

From-SVN: r89793
2004-10-28 16:38:47 -07:00
Geoffrey Keating 98f61f572f typeof-2.c: Needs aliases as well as weak.
* gcc.dg/weak/typeof-2.c: Needs aliases as well as weak.
	* gcc.dg/weak/weak-3.c: Likewise.
	* gcc.dg/weak/weak-5.c: Likewise.
	* gcc.dg/weak/weak-9.c: Likewise.
	* lib/file-format.exp (gcc_target_object_format): Darwin has Mach-O.
	* lib/target-supports.exp (check_weak_available): Mach-O does weak.

From-SVN: r89723
2004-10-28 00:16:57 +00:00
Jan Beulich 61fec9ffac configure.in: Remove target-libstdc++-v3 from noconfigdirs for *-*-netware...
/
        * configure.in: Remove target-libstdc++-v3 from noconfigdirs for
        *-*-netware, but add target-libmudflap.
        Consolidate *-*-netware targets (of which really only i?86 exists)
        into a single entry.
        * configure: Likewise.
gcc/
        * config.gcc: Resurrect NetWare as a target. Handle special case of
        Novell linker to be used (specified through --with-ld=) and threading
        model of either Posix (default) or NKS.
        * config/i386/i386.c (ix86_return_pops_args): Conditionalize popping
        of incoming hidden argument on KEEP_AGGREGATE_RETURN_POINTER.
        * config/i386/i386.h (KEEP_AGGREGATE_RETURN_POINTER): New.
        * config/i386/netware.c, config/i386/netware.h: New.
        * config/i386/nwld.c, config/i386/nwld.h: New.
        * config/i386/netware-crt0.c: New.
        * config/i386/netware-libgcc.c: New.
        * config/i386/netware-libgcc.def: New.
        * config/i386/netware-libgcc.exp: New.
        * config/i386/t-netware, config/i386/t-nwld: New.
        * gthr-nks.h: New.
        * doc/install.texi: Document NKS threading model.
gcc/cp/
        * g++spec.c (MATH_LIBRARY_PROFILE): Default to MATH_LIBRARY rather
        than "-lm".
gcc/testsuite/
        * g++.dg/abi/bitfield5.C: Use -mno-ms-bitfields.
        * g++.old-deja/g++.jason/thunk2.C: xfail for NetWare.
        * g++.old-deja/g++.law/profile1.C: xfail for NetWare.
        * g++.old-deja/g++.other/store-expr1.C: xfail for NetWare.
        * gcc.c-torture/compile/20001109-1.c: xfail for NetWare.
        * gcc.c-torture/compile/20001109-2.c: xfail for NetWare.
        * gcc.c-torture/execute/multi-ix.c: Use __builtin_bzero rather than
        the non-portable bzero.
        * gcc.dg/20010912-1.c: xfail for NetWare.
        * gcc.dg/20020426-2.c: xfail for NetWare.
        * gcc.dg/20021014-1.c: xfail for NetWare.
        * gcc.dg/20021018-1.c: xfail for NetWare.
        * gcc.dg/20030213-1.c: xfail for NetWare.
        * gcc.dg/20030225-1.c: xfail for NetWare.
        * gcc.dg/20030708-1.c: xfail for NetWare.
        * gcc.dg/builtins-config.h: Also exclude NetWare.
        * gcc.dg/format/format.h: Define restrict only if not already defined.
        * gcc.dg/nest.c: xfail for NetWare.
        * gcc.dg/special/gcsec-1.c: Don't pass -static for NetWare.
        * lib/target-supports.exp (check_visibility_available): Exclude
        NetWare.
fixincludes/
        * inclhack.def: Suppress exception_structure and math_exception
        for NetWare headers.
        * fixincl.x: Regenerate.
libstdc++-v3/
        * crossconfig.m4: Add NetWare as a target.
        * configure: Regenerate.

From-SVN: r87040
2004-09-03 11:10:08 -07:00
Mark Mitchell 2e32707b47 target-supports.exp (check_profiling_available): Return false for arm*-*-symbianelf* and arm*-*-eabi*.
* lib/target-supports.exp (check_profiling_available): Return
	false for arm*-*-symbianelf* and arm*-*-eabi*.

From-SVN: r86286
2004-08-19 22:29:11 +00:00
Graham Stott 0fb4f4b86a target-supports.exp (check_iconv_available): Fix fallout from 2004-05-28 patch.
* lib/target-supports.exp (check_iconv_available): Fix fallout
	from 2004-05-28 patch.

From-SVN: r82460
2004-05-30 17:51:46 +00:00
Janis Johnson 763ee179ed target-supports.exp (check_vmx_hw_available): New.
2004-05-28  Janis Johnson  <janis187@us.ibm.com>

	* lib/target-supports.exp (check_vmx_hw_available): New.
	* gcc.dg/vmx/vmx.exp: Use it to determine default action.

From-SVN: r82390
2004-05-28 22:31:44 +00:00
Janis Johnson 8dc84ef1bf target-supports.exp (check_alias_available, [...]): Use unique names for temporary files.
2004-05-28  Janis Johnson  <janis187@us.ibm.com>

	* lib/target-supports.exp (check_alias_available,
	check_iconv_available, check_named_sections_available): Use
	unique names for temporary files.

From-SVN: r82388
2004-05-28 22:28:22 +00:00
Aldy Hernandez 9aba2a72db target-supports.exp (check_profiling_available): Assume profiling is not available on powerpc-eabi targets.
* lib/target-supports.exp (check_profiling_available): Assume
	profiling is not available on powerpc-eabi targets.

From-SVN: r80989
2004-04-21 23:23:33 +00:00
Richard Sandiford a49877d87f target-supports.exp (check_profiling_available): Assume profiling isn't available for mips*-*-elf targets.
* lib/target-supports.exp (check_profiling_available): Assume profiling
	isn't available for mips*-*-elf targets.

From-SVN: r80715
2004-04-15 09:50:46 +00:00
Zack Weinberg ab37d57e9c target-supports.exp (check_named_sections_available): New.
* lib/target-supports.exp (check_named_sections_available): New.
	* lib/gcc-dg.exp (dg-require-named-sections): New.
	* lib/prune.exp (prune_gcc_output): Incorporate prunes from
	old-deja.exp.  Also prune error-count message from HP linker.
	* g++.old-deja/old-deja.exp (g++-dg-prune): Delete.

	* g++.dg/init/init-ref4.C: Use dg-require-weak.
	* g++.old-deja/g++.pt/static3.C: Likewise.
	* g++.dg/parse/attr-ctor1.C: Use dg-require-named-sections.

From-SVN: r80572
2004-04-09 22:24:29 +00:00
Eric Christopher 5340bbea5a Makefile.in (site.exp): Add libiconv variable definition.
2004-03-08  Eric Christopher  <echristo@redhat.com>

	* Makefile.in (site.exp): Add libiconv variable definition.

2004-03-08  Eric Christopher  <echristo@redhat.com>

	* * lib/target-supports.exp: Enable libiconv in test
	compilation.  Fix up error checking.

From-SVN: r79148
2004-03-09 01:53:28 +00:00
Eric Christopher 2152660651 target-supports.exp (check-iconv-available): New function.
2004-02-26  Eric Christopher  <echristo@redhat.com>

	* lib/target-supports.exp (check-iconv-available): New function.
	* lib/gcc-dg.exp (dg-require-iconv): New function.
	Use above.
        * gcc.dg/charset: New directory.
        * gcc.dg/charset/charset.exp: New file.
        * gcc.dg/charset/asm1.c: Ditto.
        * gcc.dg/charset/asm2.c: Ditto.
        * gcc.dg/charset/asm3.c: Ditto.
        * gcc.dg/charset/asm4.c: Ditto.
        * gcc.dg/charset/asm5.c: Ditto.
        * gcc.dg/charset/attribute1.c: Ditto.
        * gcc.dg/charset/attribute2.c: Ditto.
        * gcc.dg/charset/string1.c: Ditto.
        * g++.dg/charset: New directory.
        * g++.dg/dg.exp: Add here. Special options.
        * g++.dg/charset/charset.exp: New file.
        * g++.dg/charset/asm1.c: Ditto.
        * g++.dg/charset/asm2.c: Ditto.
        * g++.dg/charset/asm3.c: Ditto.
        * g++.dg/charset/asm4.c: Ditto.
        * g++.dg/charset/attribute1.c: Ditto.
        * g++.dg/charset/attribute2.c: Ditto.
        * g++.dg/charset/extern1.cc: Ditto.
        * g++.dg/charset/extern2.cc: Ditto.
        * g++.dg/charset/string1.c: Ditto.

2004-02-26  Eric Christopher  <echristo@redhat.com>

	* c-lex.c (c_lex_string_translate): New variable.
	(lex_string): Use to determine string translation.
	* c-pragma.h: Prototype.
	* c-parse.in (start_string_translation): New. Set above.
	(stop_string_translation): Ditto.
	(attribute, attribute_list, asm_def, asm_stmt,
	asm_operand): Use above functions.
	* cp/parser.c (cp_parser_declaration): Translate strings
	unless token is RID_EXTERN. Set c_lex_string_translate
	for recursive use.
	(cp_parser_asm_definition): Only translate argument strings
	to asms.
	(cp_parser_asm_operand_list): Ditto.
	(cp_parser_attribute_list): Do not translate attribute strings.

From-SVN: r78548
2004-02-27 02:01:10 +00:00
Kaveh R. Ghazi 54a478708e target-supports.exp (check_alias_available): Don't mangle function `g' in test program.
* lib/target-supports.exp (check_alias_available): Don't mangle
	function `g' in test program.

From-SVN: r78208
2004-02-21 03:02:32 +00:00
Kaveh R. Ghazi 0d856ba2d2 target-supports.exp (check_profiling_available): Check argument to determine whether we support a profiling type.
* lib/target-supports.exp (check_profiling_available): Check
	argument to determine whether we support a profiling type.
	* lib/gcc-dg.exp (dg-require-profiling): Pass argument to
	check_profiling_available.
	* g++.dg/bprob/bprob.exp: Likewise
	* g77.dg/bprob/bprob.exp: Likewise.
	* gcc.misc-tests/bprob.exp: Likewise.
	* g++.old-deja/g++.law/profile1.C: Pass profiling type to
	dg-require-profiling and delete expected error handling.
	* gcc.dg/20021014-1.c: Likewise.
	* gcc.dg/nest.c: Likewise.

From-SVN: r78206
2004-02-21 02:58:24 +00:00
Mark Mitchell bfa21a28ea file-format.exp (gcc_target_object_format): Use ${tool}_target_compile, not gcc_target_compile.
* lib/file-format.exp (gcc_target_object_format): Use
	${tool}_target_compile, not gcc_target_compile.
	* lib/target-supports.exp (check_alias_available): Likewise.
	(check_gc_sections_available): Likewise.
	* g++.dg/ext/attrib10.C: Use dg-require-alias.
	* g++.old-deja/g++.ext/attrib5.C: Use dg-require-weak and
	dg-require-alias.

From-SVN: r77295
2004-02-05 05:09:38 +00:00