Commit Graph

65 Commits

Author SHA1 Message Date
Jakub Jelinek
c18c98c0ad re PR middle-end/36106 (#pragma omp atomic issues with floating point types)
PR middle-end/36106
	* omp-low.c (expand_omp_atomic_pipeline): Load value using the
	integral type rather than floating point, then VIEW_CONVERT_EXPR
	to the floating point type.

	* testsuite/libgomp.c/atomic-5.c: New test.
	* testsuite/libgomp.c/atomic-6.c: New test.
	* testsuite/libgomp.c/autopar-1.c: New test.

From-SVN: r135027
2008-05-07 09:28:14 +02:00
Ralf Wildenhues
6d26724a16 libgomp/
* acinclude.m4 (LIBGOMP_CHECK_SYNC_BUILTINS)
	(LIBGOMP_CHECK_ATTRIBUTE_VISIBILITY)
	(LIBGOMP_CHECK_ATTRIBUTE_DLLEXPORT)
	(LIBGOMP_CHECK_ATTRIBUTE_ALIAS): Fix cache variable names.
	* configure: Regenerate.
	* Makefile.in, testsuite/Makefile.in: Likewise.

libstdc++-v3/
	* acinclude.m4 (GLIBCXX_CHECK_SETRLIMIT, GLIBCXX_ENABLE_C99)
	(GLIBCXX_CHECK_C99_TR1, GLIBCXX_CHECK_RANDOM_TR1)
	(GLIBCXX_ENABLE_VISIBILITY): Fix cache variable names.
	(GLIBCXX_CHECK_SYSTEM_ERROR): Likewise.  Factorize.
	* configure: Regenerate.

libgfortran/
	* acinclude.m4 (LIBGFOR_CHECK_ATTRIBUTE_VISIBILITY)
	(LIBGFOR_CHECK_ATTRIBUTE_DLLEXPORT)
	(LIBGFOR_CHECK_ATTRIBUTE_ALIAS, LIBGFOR_CHECK_SYNC_FETCH_AND_ADD)
	(LIBGFOR_GTHREAD_WEAK, LIBGFOR_CHECK_UNLINK_OPEN_FILE)
	(LIBGFOR_CHECK_CRLF, LIBGFOR_CHECK_FOR_BROKEN_ISFINITE)
	(LIBGFOR_CHECK_FOR_BROKEN_ISNAN)
	(LIBGFOR_CHECK_FOR_BROKEN_FPCLASSIFY, LIBGFOR_CHECK_WORKING_STAT)
	(LIBGFOR_CHECK_FPSETMASK, LIBGFOR_CHECK_MINGW_SNPRINTF):
	Fix cache variable names.
	* configure, Makefile.in: Regenerate.

From-SVN: r134531
2008-04-21 20:55:19 +00:00
Jakub Jelinek
8119fc9307 re PR middle-end/35611 (FAIL: libgomp.c/omp-nested-1.c execution test)
PR middle-end/35611
	* gimplify.c (gimplify_expr): Gimplify second operand of
	OMP_ATOMIC_LOAD.

	* testsuite/libgomp.c/atomic-4.c: New test.

From-SVN: r133309
2008-03-18 13:21:02 +01:00
Jakub Jelinek
9e7759638a re PR libgomp/35625 (schedule(guided) loops forever if ((end - start) % incr) != 0)
PR libgomp/35625
	* iter.c (gomp_iter_guided_next_locked): If q > n, set end to ws->end.
	(gomp_iter_guided_next): Likewise.
	* testsuite/libgomp.c/pr35625.c: New test.

From-SVN: r133306
2008-03-18 10:54:21 +01:00
Ralf Wildenhues
38d24731e9 configure.ac: m4_include config/proginstall.m4.
2008-03-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>

        * configure.ac: m4_include config/proginstall.m4.
        * configure: Regenerate.

config/
2008-03-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>

        * proginstall.m4: New file, with fixed AC_PROG_INSTALL.

libjava/
2008-03-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>

        * Makefile.am (install-data-local): Rewrite to be more efficient,
        using awk, and `install' with multiple files at once.  Do not gather
        more than 50 files in one go to avoid hitting command line limits.
        (install_data_local_split): New variable.
        * aclocal.m4: Regenerate.
        * configure: Likewise.
        * Makefile.in: Likewise.
        * gcj/Makefile.in: Likewise.
        * include/Makefile.in: Likewise.
        * testsuite/Makefile.in: Likewise.

boehm-gc/
2008-03-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>

        * aclocal.m4: Regenerate.
        * configure: Likewise.
        * Makefile.in: Likewise.
        * include/Makefile.in: Likewise.

libffi/
2008-03-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>

        * aclocal.m4: Regenerate.
        * configure: Likewise.
        * Makefile.in: Likewise.
        * include/Makefile.in: Likewise.
        * testsuite/Makefile.in: Likewise.

libgfortran/
2008-03-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>

        * aclocal.m4: Regenerate.
        * configure: Likewise.
        * Makefile.in: Likewise.

libgomp/
2008-03-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>

        * aclocal.m4: Regenerate.
        * configure: Likewise.
        * Makefile.in: Likewise.
        * testsuite/Makefile.in: Likewise.

libmudflap/
2008-03-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>

        * aclocal.m4: Regenerate.
        * configure: Likewise.
        * Makefile.in: Likewise.
        * testsuite/Makefile.in: Likewise.

libssp/
2008-03-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>

        * aclocal.m4: Regenerate.
        * configure: Likewise.
        * Makefile.in: Likewise.
libssp/
2008-03-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>

        * aclocal.m4: Regenerate.
        * configure: Likewise.
        * Makefile.in: Likewise.

libstdc++-v3/
2008-03-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>

        * aclocal.m4: Regenerate.
        * configure: Likewise.
        * Makefile.in: Likewise.
        * doc/Makefile.in: Likewise.
        * include/Makefile.in: Likewise.
        * libmath/Makefile.in: Likewise.
        * libsupc++/Makefile.in: Likewise.
        * po/Makefile.in: Likewise.
        * src/Makefile.in: Likewise.
        * testsuite/Makefile.in: Likewise.

zlib/
2008-03-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>

        * aclocal.m4: Regenerate.
        * configure: Likewise.
        * Makefile.in: Likewise.

From-SVN: r133269
2008-03-16 08:19:08 +00:00
Jakub Jelinek
d0fb20beb1 re PR middle-end/35185 (ICE using openmp with g++-4.2)
PR middle-end/35185
	* omp-low.c (lower_regimplify, init_tmp_var, save_tmp_var): Removed.
	(lower_omp_2): New function.
	(lower_omp_1, lower_omp): Rewritten.

	* testsuite/libgomp.c++/pr35185.C: New test.

From-SVN: r133162
2008-03-13 10:26:25 +01:00
Jakub Jelinek
7c8f7639c5 re PR middle-end/35549 (Invalid use of copy-in/out for shared vars in nested parallels)
PR middle-end/35549
	* omp-low.c (maybe_lookup_decl): Constify first argument.
	(use_pointer_for_field): Change last argument from bool to
	omp_context *.  Disallow shared copy-in/out in nested
	parallel if decl is shared in outer parallel too.
	(build_outer_var_ref, scan_sharing_clauses,
	lower_rec_input_clauses, lower_copyprivate_clauses,
	lower_send_clauses, lower_send_shared_vars): Adjust callers.

	* testsuite/libgomp.c/pr35549.c: New test.

From-SVN: r133136
2008-03-12 10:55:48 +01:00
Jakub Jelinek
251923f5e4 gimplify.c (goa_lhs_expr_p): Allow different ADDR_EXPR nodes for the same VAR_DECL.
* gimplify.c (goa_lhs_expr_p): Allow different ADDR_EXPR nodes
	for the same VAR_DECL.

	* testsuite/libgomp.c/atomic-3.c: New test.

From-SVN: r132977
2008-03-06 18:28:54 +01:00
François-Xavier Coudert
f489fba128 re PR fortran/33197 (Fortran 2008: math functions)
PR fortran/33197

gcc/fortran/
	* intrinsic.c (add_functions): Modify intrinsics ACOSH, ASINH,
	ATANH, ERF, ERFC and GAMMA. Add intrinsics BESSEL_{J,Y}{0,1,N},
	ERFC_SCALED, LOG_GAMMA and HYPOT.
	* intrinsic.h (gfc_check_hypot, gfc_simplify_hypot,
	gfc_resolve_hypot): New prototypes.
	* mathbuiltins.def: Add HYPOT builtin. Make complex versions of
	ACOSH, ASINH and ATANH available.
	* gfortran.h (GFC_ISYM_ERFC_SCALED, GFC_ISYM_HYPOT): New values.
	* lang.opt: Add -std=f2008 option.
	* libgfortran.h: Define GFC_STD_F2008.
	* lang-specs.h: Add .f08 and .F08 file suffixes.
	* iresolve.c (gfc_resolve_hypot): New function.
	* parse.c (parse_contained): Allow empty CONTAINS for Fortran 2008.
	* check.c (gfc_check_hypot): New function.
	* trans-intrinsic.c (gfc_intrinsic_map): Define ERFC_SCALE builtin.
	* options.c (set_default_std_flags): Allow Fortran 2008 by default.
	(form_from_filename): Add .f08 suffix.
	(gfc_handle_option): Handle -std=f2008 option.
	* simplify.c (gfc_simplify_hypot): New function.
	* gfortran.texi: Document Fortran 2008 status and file extensions.
	* intrinsic.texi: Document new BESSEL_{J,Y}{0,1,N} intrinsics,
	as well as HYPOT and ERFC_SCALED. Update documentation of ERF,
	ERFC, GAMMA, LGAMMA, ASINH, ACOSH and ATANH.
	* invoke.texi: Document the new -std=f2008 option.

libgomp/
	* testsuite/libgomp.fortran/fortran.exp: Add .f08 and
	.F08 file suffixes.

gcc/testsuite/
	* gfortran.dg/gomp/gomp.exp: Add .f08 and .F08 file suffixes.
	* gfortran.dg/dg.exp: Likewise.
	* gfortran.dg/vect/vect.exp: Likewise.
	* gfortran.fortran-torture/execute/execute.exp: Likewise.
	* gfortran.fortran-torture/compile/compile.exp: Likewise.
	* gfortran.dg/gamma_1.f90: Also check log_gamma.
	* gfortran.dg/invalid_contains_1.f90: Remove warning about
	empty CONTAINS.
	* gfortran.dg/gamma_2.f90: Add a few error messages.
	* gfortran.dg/invalid_contains_2.f90: Remove warning about
	empty CONTAINS.
	* gfortran.dg/gamma_3.f90: Adjust error message.
	* gfortran.dg/gamma_4.f90: Test for log_gamma instead of lgamma.
	* gfortran.dg/bind_c_usage_9.f03: Adjust error messages.
	* gfortran.dg/bessel_1.f90: New test.
	* gfortran.dg/recursive_check_3.f90: Remove warnings.
	* gfortran.dg/besxy.f90: Also check for new F2008 intrinsics.
	* gfortran.dg/derived_function_interface_1.f90: Remove warning.
	* gfortran.dg/contains_empty_1.f03: New test.
	* gfortran.dg/erfc_scaled_1.f90: New test.
	* gfortran.dg/hypot_1.f90: New test.
	* gfortran.dg/contains_empty_2.f03: New test.

libgfortran/
	* intrinsics/erfc_scaled_inc.c: New file.
	* intrinsics/erfc_scaled.c: New file.
	* gfortran.map (GFORTRAN_1.0): Add _gfortran_erfc_scaled_r*.
	* Makefile.am: Add intrinsics/erfc_scaled.c.
	* config.h.in: Regenerate.
	* configure: Regenerate.
	* Makefile.in: Regenerate.

From-SVN: r132846
2008-03-03 23:46:20 +00:00
Peter O'Gorman
a1b25e49f8 re PR libgomp/33131 (libgomp/env.c:60: warning: implicit declaration of function 'strncasecmp')
2008-03-03  Peter O'Gorman  <pogma@thewrittenword.com>

	PR libgomp/33131
	* configure.ac: Add ACX_HEADER_STRING.
	* env.c: Include strings.h.
	* aclocal.m4: Regenerate.
	* config.h.in: Regenerate.
	* configure: Regenerate.
	* Makefile.in: Regenerate.
	* testsuite/Makefile.in: Regenerate.

From-SVN: r132844
2008-03-03 22:35:13 +00:00
Jakub Jelinek
ac84c0623d re PR middle-end/35196 (lastprivate broken for static non-ordered loops)
PR middle-end/35196
	* omp-low.c (expand_omp_for_generic): Don't initialize fd->v
	in entry_bb.
	(expand_omp_for_static_nochunk): Initialize fd->v in seq_start_bb
	rather than in entry_bb.

	* testsuite/libgomp.c/pr35196.c: New test.

From-SVN: r132351
2008-02-15 18:42:25 +01:00
Jakub Jelinek
6837b3b895 re PR middle-end/35130 (OpenMP: Private variable passed to subroutine)
PR middle-end/35130
	* tree-nested.c (convert_call_expr): Put FRAME.* vars into
	OMP_CLAUSE_SHARED rather than OMP_CLAUSE_FIRSTPRIVATE clause.

	* testsuite/libgomp.fortran/pr35130.f90: New test.
	* testsuite/libgomp.c/pr35130.c: New test.

From-SVN: r132349
2008-02-15 18:36:43 +01:00
Jakub Jelinek
c256730cef re PR middle-end/33880 (ICE: in extract_omp_for_data, at omp-low.c:162)
PR middle-end/33880
	* tree-nested.c (walk_omp_for): New function.
	(convert_nonlocal_reference, convert_local_reference): Call
	walk_omp_for on OMP_FOR.
	(convert_call_expr): Call walk_body on OMP_FOR's
	OMP_FOR_PRE_INIT_BODY.

	* testsuite/libgomp.c/pr33880.c: New test.
	* testsuite/libgomp.fortran/pr33880.f90: New test.

From-SVN: r131825
2008-01-25 13:54:42 +01:00
Jakub Jelinek
5259c81310 re PR c++/34513 (static variable not found for C++ OpenMP)
PR c++/34513
	* parser.c (cp_parser_omp_parallel): For non-combined parallel
	call cp_parser_statement rather than
	cp_parser_already_scoped_statement.

	* testsuite/libgomp.c/pr34513.c: New test.
	* testsuite/libgomp.c++/pr34513.C: New test.

From-SVN: r131059
2007-12-19 13:58:32 +01:00
Jack Howarth
ae8d887945 re PR target/32765 (Testsuite failures due to undefined symbol ___emutls_get_address)
2007-12-17  Jack Howarth  <howarth@bromo.med.uc.edu>

	PR target/32765
	* testsuite/libgomp.fortran/crayptr2.f90: Move dg-options for darwin.

From-SVN: r131012
2007-12-17 19:30:08 +00:00
Jakub Jelinek
d2dda7fed0 omp-low.c (lookup_decl_in_outer_ctx): Allow calling this with !ctx->is_nested.
* omp-low.c (lookup_decl_in_outer_ctx): Allow calling this
	with !ctx->is_nested.
	(maybe_lookup_decl_in_outer_ctx): Look up in outer contexts
	even if !ctx->is_nested.
	(lower_copyprivate_clauses, lower_send_clauses,
	lower_send_shared_vars): Call lookup_decl_in_outer_ctx
	unconditionally.

	* testsuite/libgomp.c/private-1.c: New test.

From-SVN: r130590
2007-12-04 00:06:55 +01:00
Jakub Jelinek
78e4746337 re PR fortran/34020 (Bogus codegen for openmp atomics w/ indirects operands on IPF)
PR fortran/34020
	* gimplify.c (goa_lhs_expr_p): Inside INDIRECT_REF handle unshared
	nops.

	* testsuite/libgomp.fortran/pr34020.f90: New test.

From-SVN: r130069
2007-11-10 08:51:55 +01:00
Jakub Jelinek
239371f9c7 re PR c++/33894 (pragma omp atomic broken)
PR c++/33894
	* cp-tree.h: Update comment - TYPE_LANG_FLAG_0 is not
	OMP_ATOMIC_DEPENDENT_P in OMP_ATOMIC.
	* pt.c (tsubst_expr): Assert OMP_ATOMIC_DEPENDENT_P.
	* semantics.c (finish_omp_atomic): Revert most of the
	2007-02-05 changes, just keep the new representation of
	OMP_ATOMIC_DEPENDENT_P OMP_ATOMIC.

	* testsuite/libgomp.c++/atomic-1.C: New test.

From-SVN: r129919
2007-11-06 09:26:50 +01:00
Jakub Jelinek
98a5fa9468 re PR libgomp/33275 (Transient libgomp.fortran/omp_parse3.f90 -O0 failure)
PR libgomp/33275
	* testsuite/libgomp.fortran/omp_parse3.f90 (test_threadprivate):
	Make x and y integers rather than (implicit) reals.  Add private (j)
	clause to the last omp parallel.

From-SVN: r129631
2007-10-25 22:25:12 +02:00
Jakub Jelinek
bd69daef03 openmp_stack.f90: Removed.
* gfortran.dg/openmp_stack.f90: Removed.

	* testsuite/libgomp.fortran/stack.f90: New test.

From-SVN: r128863
2007-09-28 15:22:18 +02:00
Uros Bizjak
b3172cabd2 cpuid.h: New file.
* gcc/config/i386/cpuid.h: New file.
	* gcc/config/i386/driver-i386.c: Include cpuid.h.
	(describe_cache): Shrink size and line strings to 100 bytes.
	(detect_caches_amd): Return "" for unsupported max_ext_level.
	Use __cpuid function.
	(detect_caches_intel): Return "" for unsupported max_level.
	Use __cpuid function.
	(host_detect_local_cpu): Change feature flag variables to
	unsigned int.  Initialize only extended feature flag variables.
	Use __get_cpuid_max to determine max supported cpuid level.
	Use __cpuid function to determine supported features.  Fix
	calculation of family id.  Remove is_amd and check signature
	directly.  Check for Geode signature.  Handle family 4 id.
	[PROCESSOR_GENERIC32]: New default for unknown family id. Move
	cpu discovery code to other part of the function.
	[PROCESSOR_PENTIUM, PROCESSOR_K6, PROCESSOR_ATHLON]: Do not tune
	for sub-architecture.
	[PROCESSOR_PENTIUMPRO]: Simplify cpu discovery code.
	[PROCESSOR_K8]: Add k8-sse3 architecture.
	[PROCESSOR_GENERIC64]: Remove.
	* gcc/config/i386/x-i386 (driver-i386.o): Depend on cpuid.h.
	* gcc/config/i386/crtfastmath.c: Include cpuid.h.  Use __get_cpuid
	to check for SSE and FXSAVE support.
	* gcc/config/i386/t-crtfm (crtfastmath.o): Depend on cpuid.h.
	Add -minline-all-stringops.
	* gcc/config.gcc (i[34567]86-*-*): Add cpuid.h to extra_headers.
	(x86_64-*-*): Ditto.

testsuite/ChangeLog:

	* gcc.dg/i386-cpuid.h: Remove.
	* gcc.target/i386/mmx-check.h: Include cpuid.h.  Use __get_cpuid.
	* gcc.target/i386/sse-check.h: Ditto.
	* gcc.target/i386/sse2-check.h: Ditto.
	* gcc.target/i386/sse3-check.h: Ditto.
	* gcc.target/i386/ssse3-check.h: Ditto.
	* gcc.target/i386/sse4_1-check.h: Ditto.
	* gcc.target/i386/sse4_2-check.h: Ditto.
	* gcc.target/i386/sse4a-check.h: Ditto.
	* gcc.dg/torture/pr16104-1.c: Ditto.
	* gcc.target/i386/mmx-4.c: Do not use NOINLINE.
	* gcc.target/i386/sse-6.c: Ditto.
	* gcc.target/i386/sse-7.c: Ditto.
	* g++.dg/other/i386-1.C: Include cpuid.h.
	(main): New function.  Use __get_cpuid to check target fetaures.

libgomp/ChangeLog:

	* testsuite/libgomp.c/atomic-1.c: Include cpuid.h for i386 targets.
	(main): Use __get_cpuid to get i386 target fetaures.
	* testsuite/libgomp.c/atomic-2.c: Include cpuid.h for x86_64 targets.
	(main): Use __get_cpuid to get x86_64 target fetaures.

From-SVN: r128141
2007-09-05 19:43:01 +02:00
Jack Howarth
6da1739222 re PR target/32765 (Testsuite failures due to undefined symbol ___emutls_get_address)
PR target/32765
	* testsuite/libgomp.fortran/pr32550.f90: Use -static-libgcc on Darwin.
	* testsuite/libgomp.fortran/crayptr2.f90: Likwise.

From-SVN: r127514
2007-08-15 13:11:40 +00:00
Jakub Jelinek
e1c8221962 re PR fortran/32550 (openmp: COPYPRIVATE of pointer variables fails)
PR fortran/32550
	* trans.h (GFC_POINTER_TYPE_P): Define.
	* trans-types.c (gfc_sym_type): Set it for types on attr->sym.pointer.
	* trans-openmp.c (gfc_omp_privatize_by_reference): Return false
	if GFC_POINTER_TYPE_P is set on the type.

	* testsuite/libgomp.fortran/pr32550.f90: New test.
	* testsuite/libgomp.fortran/crayptr2.f90: New test.

From-SVN: r126583
2007-07-12 14:16:54 +02:00
Tobias Burnus
5349080dd3 re PR fortran/32359 (incorrect error: Threadprivate isn't SAVEd (implicit save attribute undefined))
gcc/fortran/
2007-07-05  Daniel Franke  <franke.daniel@gmail.com>
	    Tobias Burnus  <burnus@net-b.de>

	PR fortran/32359
	* gfortran.h (symbol_attribute): Change save attribute into an enum.
	* decl.c (add_init_expr_to_sym): Set it to SAVE_IMPLICIT.
	* symbol.c (gfc_add_save): Check for SAVE_EXPLICIT.
	* resolve.c (resolve_fl_variable): Check for SAVE_EXPLICIT.
	(resolve_symbol): Allow OMP threadprivate with
	initialization SAVEd and save_all variable.
	* trans-decl.c (gfc_finish_var_decl): Remove obsolete sym->value check.


libgomp/
2007-07-05  Tobias Burnus  <burnus@net-b.de>

	PR fortran/32359
	* testsuite/libgomp.fortran/pr32359.f90: New.

gcc/testsuite/
2007-07-05  Tobias Burnus  <burnus@net-b.de>

	PR fortran/32359
	* gfortran.dg/module_md5_1.f90: Update MD5 number.

From-SVN: r126366
2007-07-05 14:51:51 +02:00
Jakub Jelinek
4f9c450c2f re PR libgomp/32468 (number of threads in a parallel region depends on number of SECTIONs and MAX_THREADS)
PR libgomp/32468
	* sections.c (GOMP_parallel_sections_start): Only decrease
	number of threads to COUNT if dyn_var is true.
	* testsuite/libgomp.c/pr32468.c: New test.

From-SVN: r126224
2007-07-02 21:19:28 +02:00
Jakub Jelinek
64964499f4 re PR middle-end/32362 (ICE: in lookup_decl_in_outer_ctx, at omp-low.c:1508)
PR middle-end/32362
	* omp-low.c (lookup_decl_in_outer_ctx): Don't ICE if t is NULL,
	but decl is a global var, instead return decl.
	* gimplify.c (gimplify_adjust_omp_clauses_1): Add shared clauses
	even for is_global_var decls, if they are private in some outer
	context.

	* testsuite/libgomp.c/pr32362-1.c: New test.
	* testsuite/libgomp.c/pr32362-2.c: New test.
	* testsuite/libgomp.c/pr32362-3.c: New test.

From-SVN: r125917
2007-06-21 14:11:00 +02:00
Steve Ellcey
1cf3d07da6 ltmain.sh: Update from ToT Libtool.
* ltmain.sh: Update from ToT Libtool.
        * libtool.m4: Update from ToT Libtool.
        * ltsugar.m4: New. Update from ToT Libtool.
        * ltversion.m4: New. Update from ToT Libtool.
        * ltoptions.m4: New. Update from ToT Libtool.
        * ltconfig: Remove.
        * ltcf-c.sh: Remove.
        * ltcf-cxx.sh: Remove.
        * ltcf-gcj.sh: Remove.
	* Regenerate all subdirs

From-SVN: r125032
2007-05-24 16:37:27 +00:00
John David Anglin
dd56fe7c23 re PR testsuite/31369 (100's of new libgomp fails)
PR testsuite/31369
	* testsuite/libgomp.c++/c++.exp: Don't use concat when setting
	ld_library_path.
	* testsuite/libgomp.fortran/fortran.exp: Likewise.

From-SVN: r123638
2007-04-07 15:10:06 +00:00
Andreas Tobler
1850744bdd libgomp.exp (libgomp_init): Add -shared-libgcc for *-*-darwin*.
2007-03-23  Andreas Tobler  <a.tobler@schweiz.org>

	* testsuite/lib/libgomp.exp (libgomp_init): Add -shared-libgcc for
	*-*-darwin*.
	* testsuite/libgomp.c++/c++.exp: Look for shared libstdc++ library
	and use it if found.

From-SVN: r123162
2007-03-23 20:25:19 +01:00
Uros Bizjak
516f1ed8ca default.exp: New file.
* testsuite/config/default.exp: New file.
	* testsuite/lib/libgomp.exp: New file.
	* testsuite/lib/libgomp.dg (load_gcc_lib, libgomp_init,
	libgomp_target_compile, libgomp_option_help, libgomp_option_proc,
	load_lib *, load_gcc_lib *): Move to libgomp.exp.
	(libgomp_load): Remove.
	* testsuite/lib/libgomp.exp (libgomp_init): Compute
	always_ld_library_path, not ld_library_path.  Set additional_flags
	to -march=i486 for ilp32 x86_64-*-* and i386-*-* targets.
	(target_compile): Do not call libgomp_init.  Append lang_library_path
	and lang_link_flags to options.
	* testsuite/libgomp.c/c.exp: Set DEFAULT_FLAGS to -O2.  Set
	ld_library_path from always_ld_library_path.  Set LD_LIBRARY_PATH
	here.
	* testsuite/libgomp.c++/c++.exp: Set ld_library_path from
	always_ld_library_path.  Set LD_LIBRARY_PATH here.
	* testsuite/libgomp.fortran/fortran.exp: Ditto.
	* testsuite/libgomp.c/atomic-1.c: Set dg-options to
	"-O2 -march=pentium" for ilp32 x86 targets. Simplify check for
	CX8 flag.
	* testsuite/libgomp.c/atomic-2.c: Set dg-options to "-O2 -mcx16" for
	lp64 x86 targets. Do not check for SSE3 bit. Do not define bit_SSE3.
	* testsuite/libgomp.c/pr29947-1.c: Remove default dg-options.
	* testsuite/libgomp.c/pr29947-1.c: Ditto.
	* testsuite/libgomp.c/atomic-10.c: Ditto.

From-SVN: r123125
2007-03-22 08:00:08 +01:00
Jakub Jelinek
2ada56f5a0 a.22.8.f90: Add dg-final cleanup-modules line.
* testsuite/libgomp.fortran/appendix-a/a.22.8.f90: Add
	dg-final cleanup-modules line.
	* testsuite/libgomp.fortran/appendix-a/a.40.1.f90: Likewise.
	* testsuite/libgomp.fortran/appendix-a/a.31.5.f90: Likewise.
	* testsuite/libgomp.fortran/appendix-a/a.31.4.f90: Likewise.
	* testsuite/libgomp.fortran/threadprivate2.f90: Likewise.
	* testsuite/libgomp.fortran/reduction5.f90: Likewise.
	* testsuite/libgomp.fortran/threadprivate3.f90: Likewise.
	* testsuite/libgomp.fortran/threadprivate1.f90: Likewise.

From-SVN: r123116
2007-03-21 20:43:14 +01:00
Jakub Jelinek
e02a048f46 re PR c++/30703 (ICE Segmentation fault on using OpenMP)
PR c++/30703
	* gimplify.c (gimplify_scan_omp_clauses): Remove special casing
	of INDIRECT_REF <RESULT_DECL>.

	* cp-gimplify.c (cp_genericize_r): Don't dereference invisiref
	parameters and result decls in omp clauses.
	(cxx_omp_privatize_by_reference): Pass also invisiref PARM_DECLs
	by reference.

	* testsuite/libgomp.c++/pr30703.C: New test.

From-SVN: r121688
2007-02-07 13:16:22 +01:00
Daniel Franke
748b9d7c08 re PR libgomp/30546 (build fail in libgomp when building from SVN because makeinfo is missing)
2007-01-31  Daniel Franke <franke.daniel@gmail.com>

        PR libgomp/30546
        * configure.ac: Add check for makeinfo
        * Makefile.am: Redefined target libgomp.info, build libgomp.info only
        if an appropiate version of makeinfo is found.
        * aclocal.m4: Regenerated.
        * configure: Regenerated.
        * Makefile.in: Regenerated.
        * testsuite/Makefile.in: Regenerated.

From-SVN: r121440
2007-01-31 16:30:16 -05:00
Tobias Burnus
7befd5d26a lang-specs.h: Add support for .f03 and .F03 extensions.
fortran/
2007-01-26  Tobias Burnus  <burnus@net-b.de>

	* lang-specs.h: Add support for .f03 and .F03 extensions.
	* gfortran.texi: Document .f03 extension.
	* options.c (form_from_filename): Recognize .f03.

testsuite/
2007-01-26  Tobias Burnus  <burnus@net-b.de>

        * gfortran.dg/gomp/gomp.exp: Support .f03 extension.
        * gfortran.dg/vect/vect.exp: Ditto.
        * gfortran.dg/dg.exp: Ditto.
        * gfortran.fortran-torture/execute/execute.exp: Ditto.
        * gfortran.fortran-torture/compile/compile.exp: Ditto.

libgomp/
2007-01-26  Tobias Burnus  <burnus@net-b.de>

	* testsuite/libgomp.fortran/fortran.exp: Support .f03 extension.

From-SVN: r121201
2007-01-26 09:35:19 +01:00
Jakub Jelinek
4288fea212 re PR middle-end/30494 (ICE with VLA and openmp)
PR middle-end/30494
	* gimplify.c (omp_add_variable): Don't call omp_notice_variable
	on TYPE_SIZE_UNIT for GOVD_LOCAL VLAs.

	* gcc.dg/gomp/pr30494.c: New test.
	* g++.dg/gomp/pr30494.C: New test.

	* testsuite/libgomp.c/pr30494.c: New test.

From-SVN: r121132
2007-01-24 21:56:45 +01:00
Daniel Franke
3721b9e1ee re PR libgomp/28209 (None of the GOMP_* environment variables are documented)
2006-12-21  Daniel Franke  <franke.daniel@gmail.com>

	PR libgomp/28209
	* libgomp.texi: New file.
	* configure.ac: Add --enable-generated-files-in-srcdir option.
	* Makefile.am: Add info, dvi, pdf, html targets. On request, copy
	files to srcdir.
	* Makefile.in: Regenerated.
	* config.h.in: Regenerated.
	* testsuite/Makefile.in: Regenerated.
	* NOTES: Removed.

From-SVN: r120122
2006-12-21 17:29:08 -05:00
Jakub Jelinek
22568cc62c re PR middle-end/29947 (OpenMP parallel for fails for reversed loop range)
PR libgomp/29947
	* omp-low.c (expand_omp_for_static_nochunk,
	expand_omp_for_static_chunk): Do all arithmetics in signed rather than
	unsigned type.

	* loop.c (gomp_loop_init): Make parameters signed.  Set ws->end to
	start if there shouldn't be any loop iterations.
	(gomp_loop_ordered_static_start): Remove start == end test.
	* testsuite/libgomp.c/pr29947-1.c: New test.
	* testsuite/libgomp.c/pr29947-2.c: New test.

From-SVN: r119485
2006-12-04 11:26:00 +01:00
Jakub Jelinek
a7a53ca582 re PR fortran/29629 (ICE on OpenMP-enabled program (gfc_conv_variable, at fortran/trans-expr.c:404))
PR fortran/29629
	* trans-openmp.c (gfc_trans_omp_array_reduction): Set attr.flavor
	of init_val_sym and outer_sym to FL_VARIABLE.

	* testsuite/libgomp.fortran/pr29629.f90: New test.

From-SVN: r118134
2006-10-29 11:27:39 +01:00
Danny Smith
b50019f0aa barrier-1.c: Change timestamp tests from '<' to '<='.
* testsuite/libgomp.c/barrier-1.c: Change timestamp tests from
	'<' to '<='.

From-SVN: r117491
2006-10-06 08:32:33 +00:00
Jakub Jelinek
a70ad3bb3e re PR middle-end/25261 ([gomp] Nested function calls in #pragma omp parallel blocks)
PR middle-end/25261
	PR middle-end/28790
	* tree-nested.c (struct nesting_info): Added static_chain_added.
	(convert_call_expr): Set static_chain_added when adding static
	chain.  Handle OMP_PARALLEL and OMP_SECTION.

	* gcc.dg/gomp/nestedfn-1.c: New test.

	* testsuite/libgomp.c/nestedfn-4.c: New test.
	* testsuite/libgomp.c/nestedfn-5.c: New test.
	* testsuite/libgomp.fortran/nestedfn3.f90: New test.

From-SVN: r117235
2006-09-26 20:10:58 +02:00
Jakub Jelinek
9b9e4cd6a9 re PR fortran/29097 (!$ include 'omp_lib.h' does not work)
PR fortran/29097
	* scanner.c (include_line): Handle conditional include.

	* testsuite/libgomp.fortran/condinc1.f: New test.
	* testsuite/libgomp.fortran/condinc2.f: New test.
	* testsuite/libgomp.fortran/condinc3.f90: New test.
	* testsuite/libgomp.fortran/condinc4.f90: New test.
	* testsuite/libgomp.fortran/condinc1.inc: New file.

From-SVN: r117234
2006-09-26 20:06:55 +02:00
Steven G. Kargl
38371be988 reduction3.f90: Change -2147483648 to -huge(i)-1 to avoid overflow.
2006-09-08  Steven G. Kargl  <kargl@gcc.gnu.org>

	* testsuite/libgomp.fortran/reduction3.f90: Change
	-2147483648 to -huge(i)-1 to avoid overflow.
	* testsuite/libgomp.fortran/reduction4.f90: Change
	Z'ffffffff' to not(0) to avoid overflow.

From-SVN: r116786
2006-09-08 20:57:55 +00:00
Jakub Jelinek
742fae059b re PR fortran/28390 (Broken !$omp parallel do lastprivate(iterationvar))
PR fortran/28390
	* trans-openmp.c (gfc_trans_omp_do): Look for LASTPRIVATE in
	code->exp.omp_clauses rather than in the 3rd function argument.

	* testsuite/libgomp.fortran/pr28390.f: New test.

From-SVN: r115504
2006-07-16 22:19:27 +02:00
Jakub Jelinek
cd75853e1d re PR fortran/27916 (Problem with allocatable arrays inside OpenMP do loop)
PR fortran/27916
	* trans-openmp.c (gfc_omp_clause_default_ctor): New function.
	* trans.h (gfc_omp_clause_default_ctor): New prototype.
	* f95-lang.c (LANG_HOOKS_OMP_CLAUSE_DEFAULT_CTOR): Define.

	* testsuite/libgomp.fortran/pr27916-1.f90: New test.
	* testsuite/libgomp.fortran/pr27916-2.f90: New test.

From-SVN: r114520
2006-06-09 23:18:42 +02:00
John David Anglin
e962c46b20 re PR libgomp/27612 (Tests use __sync_lock_test_and_set_4')
PR libgomp/27612
	* testsuite/libgomp.c/sections-1.c: Require sync_int_long.
	* testsuite/libgomp.c/critical-1.c: Likewise.
	* testsuite/libgomp.c/loop-1.c: Likewise.
	* testsuite/libgomp.c/loop-2.c: Likewise.
	* testsuite/libgomp.c/single-1.c: Likewise.
	* testsuite/libgomp.c/ordered-1.c: Likewise.
	* testsuite/libgomp.c/ordered-2.c: Likewise.

From-SVN: r113988
2006-05-22 19:10:45 +00:00
Jakub Jelinek
eeb1d9e08e re PR middle-end/27416 (ICE on invalid firstprivate/lastprivate)
PR middle-end/27416
	* omp-low.c (build_outer_var_ref): If VAR is reference in orphaned
	construct, return *VAR.

	* libgomp.fortran/pr27416-1.f90: New test.

From-SVN: r113788
2006-05-15 11:59:30 +02:00
Jakub Jelinek
693d710f2a re PR fortran/27395 (Problem with arrays in the OpenMP REDUCTION clause in Fortran)
PR fortran/27395
	* gimplify.c (gimplify_scan_omp_clauses): Compare OMP_CLAUSE_CODE
	rather than TREE_CODE to OMP_CLAUSE_REDUCTION.  Set also GOVD_SEEN
	bit for OMP_CLAUSE_REDUCTION_PLACEHOLDER.

	* testsuite/libgomp.fortran/pr27395-1.f90: New test.
	* testsuite/libgomp.fortran/pr27395-2.f90: New test.

From-SVN: r113494
2006-05-03 14:51:33 +02:00
Jakub Jelinek
8ca5b2a2d4 re PR c++/26943 ([gomp] firstprivate + lastprivate uses inefficient barrier)
PR c++/26943
	* omp-low.c (maybe_lookup_decl_in_outer_ctx): New function.
	(build_outer_var_ref): Use maybe_lookup_decl_in_outer_ctx
	to find if var will be a global variable even in the nested context.
	(omp_copy_decl): Only check for global variable at the end, it might
	be overridden in outer contexts.
	(scan_sharing_clauses): For global variables don't create a field.
	(lower_rec_input_clauses): Do nothing for global shared variables.
	Emit a barrier at the end of ILIST if there were any decls in both
	firstprivate and lastprivate clauses.
	(lower_send_clauses): Do nothing for global variables except for
	COPYIN.

	* testsuite/libgomp.c/pr26943-1.c: New test.
	* testsuite/libgomp.c/pr26943-2.c: New test.
	* testsuite/libgomp.c/pr26943-3.c: New test.
	* testsuite/libgomp.c/pr26943-4.c: New test.
	* testsuite/libgomp.c++/pr27337.C: Remove barrier.
	* testsuite/libgomp.c++/pr26943.C: New test.

From-SVN: r113483
2006-05-02 22:03:38 +02:00
Jakub Jelinek
077b0dfbfe re PR middle-end/27337 (OpenMP ICE in expand_expr_real_1 at expr.c:6814)
PR middle-end/27337
	* gimplify.c (gimplify_scan_omp_clauses): Handle INDIRECT_REF
	around RESULT_DECL for result passed by reference.
	(gimplify_expr): Call omp_notice_variable when RESULT_DECL is seen.
	* omp-low.c (use_pointer_for_field): Don't look at
	DECL_HAS_VALUE_EXPR_P for RESULT_DECLs.
	(scan_omp_1): Call remap_decl on RESULT_DECLs.
	(lower_rec_input_clauses): Don't allocate VLA memory for the second
	time or var for passing by reference for
	OMP_CLAUSE_LASTPRIVATE_FIRSTPRIVATE clauses.  Allow creation of
	TREE_ADDRESSABLE variables when passing by reference.

	* omp-low.c (dump_omp_region): Fix output formatting.
cp/
	* cp-gimplify.c (cxx_omp_privatize_by_reference): New function.
	* cp-tree.h (cxx_omp_privatize_by_reference): New prototype.
	* cp-objcp-common.h (LANG_HOOKS_OMP_PRIVATIZE_BY_REFERENCE): Define.
testsuite/
	* g++.dg/gomp/pr27337-1.C: New test.
	* g++.dg/gomp/pr27337-2.C: New test.
libgomp/
	* testsuite/libgomp.c++/pr27337.C: New test.

From-SVN: r113456
2006-05-02 12:44:55 +02:00
Jakub Jelinek
91b6c26dd2 re PR c/26171 (#pragma omp threadprivate requires -funit-at-a-time)
PR c/26171
	* cgraph.c (cgraph_varpool_finalize_decl): Don't call
	cgraph_varpool_assemble_pending_decls if -fopenmp, unless
	cgraph_global_info_ready.

	* testsuite/libgomp.c/pr26171.c: New test.

From-SVN: r113271
2006-04-26 10:26:06 +02:00