summaryrefslogtreecommitdiff
path: root/libgomp
Commit message (Collapse)AuthorAgeFilesLines
* re PR middle-end/43570 (OpenMP: Invalid read of size 1 ↵Jakub Jelinek2010-04-212-0/+259
| | | | | | | | | | | | | | | (libgomp.fortran/vla6.f90)) PR middle-end/43570 * omp-low.c (scan_sharing_clauses): Don't scan_omp_op OMP_CLAUSE_DECL for OMP_CLAUSE_COPYPRIVATE. (lower_copyprivate_clauses): Use private var in outer context instead of original var. Make sure the types are correct for VLAs. * testsuite/libgomp.fortran/vla8.f90: New test. From-SVN: r158594
* re PR libgomp/43706 (scheduling two threads on one core leads to starvation)Jakub Jelinek2010-04-203-21/+27
| | | | | | | | | | | PR libgomp/43706 * config/linux/affinity.c (gomp_init_affinity): Decrease gomp_available_cpus if affinity mask confines the process to fewer CPUs. * config/linux/proc.c (get_num_procs): If gomp_cpu_affinity is non-NULL, just return gomp_available_cpus. From-SVN: r158565
* re PR libgomp/43569 (libgomp: Conditional jump or move depends on ↵Jakub Jelinek2010-04-202-2/+23
| | | | | | | | | uninitialised value) PR libgomp/43569 * sections.c (gomp_sections_init): Initialize ws->mode. From-SVN: r158564
* acinclude.m4 (LIBGOMP_CHECK_SYNC_BUILTINS): Remove set but not unused bar ↵Uros Bizjak2010-04-143-2/+8
| | | | | | | | | | variable. * acinclude.m4 (LIBGOMP_CHECK_SYNC_BUILTINS): Remove set but not unused bar variable. * configure: Regenerate. From-SVN: r158344
* Update to Automake 1.11.1.Ralf Wildenhues2010-04-024-12/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | gcc/: PR other/43620 * doc/install.texi (Prerequisites): Bump Automake version to 1.11.1. * aclocal.m4: Regenerate. lto-plugin/: * Makefile.in: Regenerate. * aclocal.m4: Regenerate. intl/: * aclocal.m4: Regenerate. boehm-gc/: * Makefile.in: Regenerate. * aclocal.m4: Regenerate. * include/Makefile.in: Regenerate. fixincludes/: * aclocal.m4: Regenerate. libcpp/: * aclocal.m4: Regenerate. libdecnumber/: * aclocal.m4: Regenerate. libffi/: * Makefile.in: Regenerate. * aclocal.m4: Regenerate. * include/Makefile.in: Regenerate. * man/Makefile.in: Regenerate. * testsuite/Makefile.in: Regenerate. libgfortran/: * Makefile.in: Regenerate. * aclocal.m4: Regenerate. libgomp/: * Makefile.in: Regenerate. * aclocal.m4: Regenerate. * testsuite/Makefile.in: Regenerate. libjava/classpath/: * HACKING: Update required Automake version. * Makefile.in: Regenerate. * aclocal.m4: Regenerate. * doc/Makefile.in: Regenerate. * doc/api/Makefile.in: Regenerate. * examples/Makefile.in: Regenerate. * external/Makefile.in: Regenerate. * external/jsr166/Makefile.in: Regenerate. * external/relaxngDatatype/Makefile.in: Regenerate. * external/sax/Makefile.in: Regenerate. * external/w3c_dom/Makefile.in: Regenerate. * include/Makefile.in: Regenerate. * lib/Makefile.in: Regenerate. * native/Makefile.in: Regenerate. * native/fdlibm/Makefile.in: Regenerate. * native/jawt/Makefile.in: Regenerate. * native/jni/Makefile.in: Regenerate. * native/jni/classpath/Makefile.in: Regenerate. * native/jni/gconf-peer/Makefile.in: Regenerate. * native/jni/gstreamer-peer/Makefile.in: Regenerate. * native/jni/gtk-peer/Makefile.in: Regenerate. * native/jni/java-io/Makefile.in: Regenerate. * native/jni/java-lang/Makefile.in: Regenerate. * native/jni/java-math/Makefile.in: Regenerate. * native/jni/java-net/Makefile.in: Regenerate. * native/jni/java-nio/Makefile.in: Regenerate. * native/jni/java-util/Makefile.in: Regenerate. * native/jni/midi-alsa/Makefile.in: Regenerate. * native/jni/midi-dssi/Makefile.in: Regenerate. * native/jni/native-lib/Makefile.in: Regenerate. * native/jni/qt-peer/Makefile.in: Regenerate. * native/jni/xmlj/Makefile.in: Regenerate. * native/plugin/Makefile.in: Regenerate. * resource/Makefile.in: Regenerate. * scripts/Makefile.in: Regenerate. * tools/Makefile.in: Regenerate. libjava/: * Makefile.in: Regenerate. * aclocal.m4: Regenerate. * configure: Regenerate. * gcj/Makefile.in: Regenerate. * include/Makefile.in: Regenerate. * testsuite/Makefile.in: Regenerate. libjava/libltdl/: * Makefile.in: Regenerate. * aclocal.m4: Regenerate. libmudflap/: * Makefile.in: Regenerate. * aclocal.m4: Regenerate. * testsuite/Makefile.in: Regenerate. libobjc/: * aclocal.m4: Regenerate. libssp/: * Makefile.in: Regenerate. * aclocal.m4: Regenerate. libstdc++-v3/: * Makefile.in: Regenerate. * aclocal.m4: Regenerate. * doc/Makefile.in: Regenerate. * include/Makefile.in: Regenerate. * libsupc++/Makefile.in: Regenerate. * po/Makefile.in: Regenerate. * python/Makefile.in: Regenerate. * src/Makefile.in: Regenerate. * testsuite/Makefile.in: Regenerate. zlib/: * Makefile.in: Regenerate. * aclocal.m4: Regenerate. From-SVN: r157949
* re PR libgomp/42942 (OpenMP omp_set_max_active_levels(0) isn't resetting value)Jakub Jelinek2010-03-223-7/+81
| | | | | | | | | | | | PR libgomp/42942 * env.c (parse_unsigned_long): Add ALLOW_ZERO argument. (initialize_env): Adjust callers. (omp_set_max_active_levels): Set gomp_max_active_levels_var even when the argument is 0. * testsuite/libgomp.c/pr42942.c: New test. From-SVN: r157635
* Add ChangeLog entries.Sebastian Pop2010-03-081-0/+7
| | | | From-SVN: r157292
* Add forgotten ChangeLog entries.Tobias Grosser2010-03-081-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Eric pointed out that my ChangeLog was incorrect. As I forgot to commit it at all, here the corrected ChangeLogs for the last commit. gcc/ 2010-03-05 Tobias Grosser <grosser@fim.uni-passau.de> Ramakrishna Upadrasta <Ramakrishna.Upadrasta@inria.fr> * graphite-clast-to-gimple.c (clast_to_gcc_expression): Also handle conversions from pointer to integers. (gcc_type_for_cloog_iv): Choose the smalles signed integer as an induction variable, to be able to work with code generated by CLooG. * graphite-sese-to-poly.c (scop_ivs_can_be_represented): New. (build_poly_scop): Bail out if we cannot codegen a loop. gcc/testsuite/ 2010-03-05 Tobias Grosser <grosser@fim.uni-passau.de> * gcc.dg/graphite/id-18.c: New. * gcc.dg/graphite/run-id-pr42644.c: New. libgomp/ 2010-03-05 Tobias Grosser <grosser@fim.uni-passau.de> * testsuite/libgomp.graphite/force-parallel-1.c: Adjust. * testsuite/libgomp.graphite/force-parallel-2.c: Adjust. From-SVN: r157287
* Fix type problems in loop ivs.Tobias Grosser2010-03-082-2/+2
| | | | | | | | | | | | | | | | | | | | | Fix pr42644. Fix pr42130 (dealII). 2010-03-03 Tobias Grosser <grosser@fim.uni-passau.de> * gcc/graphite-clast-to-gimple.c (clast_to_gcc_expression): Also handle conversions from pointer to integers. (gcc_type_for_cloog_iv): Choose the smalles signed integer as an induction variable, to be able to work with code generated by CLooG. * gcc/graphite-sese-to-poly.c (scop_ivs_can_be_represented): New. (build_poly_scop): Bail out if we cannot codegen a loop. * gcc/testsuite/gcc.dg/graphite/id-18.c: New. * gcc/testsuite/gcc.dg/graphite/run-id-pr42644.c: New. * libgomp/testsuite/libgomp.graphite/force-parallel-1.c: Adjust. * libgomp/testsuite/libgomp.graphite/force-parallel-2.c: Adjust. From-SVN: r157286
* Fix PR42988: handle unknown_dependence.Sebastian Pop2010-02-073-1/+6
| | | | | | | | | | | | | | | 2010-02-07 Sebastian Pop <sebastian.pop@amd.com> PR middle-end/42988 * graphite-dependences.c (dependence_polyhedron): Set PDDR_KIND to unknown_dependence. (graphite_legal_transform_dr): Handle the unknown_dependence. (graphite_carried_dependence_level_k): Same. * testsuite/libgomp.graphite/force-parallel-5.c: Un-XFAILed. * testsuite/libgomp.graphite/pr41118.c: Renamed from pr4118. From-SVN: r156582
* task-1.C: Renamed err to e.Rainer Orth2010-01-293-6/+11
| | | | | | | * testsuite/libgomp.c++/task-1.C: Renamed err to e. * testsuite/libgomp.c++/task-6.C: Likewise. From-SVN: r156354
* configure.tgt (*-*-hpux*): Add -frandom-seed flag.Steve Ellcey2010-01-282-3/+17
| | | | | | | | 2010-01-28 Steve Ellcey <sje@cup.hp.com> * configure.tgt (*-*-hpux*): Add -frandom-seed flag. From-SVN: r156334
* configure.ac: Test for executability of _the first word_ of GFORTRAN.Paolo Bonzini2010-01-263-2/+9
| | | | | | | | | 2010-01-26 Paolo Bonzini <bonzini@gnu.org> * configure.ac: Test for executability of _the first word_ of GFORTRAN. * configure: Regenerate. From-SVN: r156264
* re PR fortran/42866 (ICE for REDUCTION with ALLOCATABLE array as variable on ↵Jakub Jelinek2010-01-262-0/+22
| | | | | | | | | | | | SECTIONS) PR fortran/42866 * omp-low.c (expand_omp_sections): Only use single_pred if l2_bb is single_pred_p. * testsuite/libgomp.fortran/allocatable5.f90: New test. From-SVN: r156235
* configure.ac: Test for executability of GFORTRAN.Paolo Bonzini2010-01-263-2/+15
| | | | | | | | | 2010-01-20 Paolo Bonzini <bonzini@gnu.org> * configure.ac: Test for executability of GFORTRAN. * configure: Regenerate. From-SVN: r156232
* stdint.m4 (GCC_HEADER_STDINT): Don't typedef uint8_t etc.Rainer Orth2010-01-052-0/+48
| | | | | | | | | | | | | | | | | | | | config: * stdint.m4 (GCC_HEADER_STDINT): Don't typedef uint8_t etc. if corresponding macros already exist. libdecnumber: * configure: Regenerate. libgfortran: * configure: Regenerate. libgomp: * configure: Regenerate. libstdc++-v3: * configure: Regenerate. From-SVN: r155648
* Make 's' atomicH.J. Lu2010-01-042-0/+6
| | | | | | | | | 2010-01-04 H.J. Lu <hongjiu.lu@intel.com> PR libgomp/42602 * libgomp.fortran/recursion1.f90 (sub): Make 's' atomic. From-SVN: r155615
* re PR testsuite/42583 (FAIL: gfortran.dg/gomp/recursion1.f90: gfortran: ↵Richard Guenther2010-01-032-0/+31
| | | | | | | | | | | | | | libgomp.spec: No such file or directory) 2010-01-03 Richard Guenther <rguenther@suse.de> PR testsuite/42583 * gfortran.dg/gomp/recursion1.f90: Remove. libgomp/ * testsuite/libgomp.fortran/recursion1.f90: New testcase. From-SVN: r155597
* Add missing testcases.Sebastian Pop2009-12-232-0/+23
| | | | | | | | | | | | | | | | | | | | | | | | 2009-12-23 Sebastian Pop <sebpop@gmail.com> * g++.dg/graphite/id-1.C: New. * g++.dg/graphite/pr41305.C: New. * gcc.dg/graphite/id-16.c: New. * gcc.dg/graphite/interchange-10.c: New. * gcc.dg/graphite/interchange-11.c: New. * gcc.dg/graphite/interchange-mvt.c: New. * gcc.dg/graphite/pr40281.c: New. * gcc.dg/graphite/run-id-2.c: New. * gcc.dg/graphite/scop-dsyr2k.c: New. * gcc.dg/graphite/scop-dsyrk.c: New. * gcc.dg/graphite/scop-mvt.c: New. * gcc.dg/graphite/scop-sor.c: New. * gfortran.dg/graphite/id-18.f90: New. * gfortran.dg/graphite/interchange-3.f90: New. * gfortran.dg/graphite/pr42050.f90: New. * testsuite/libgomp.graphite/pr4118.c: New. From-SVN: r155424
* crayptr2.f90: Remove forced static linkage for darwin...Iain Sandoe2009-12-223-2/+8
| | | | | | | | | | 2009-12-22 Iain Sandoe <iain.sandoe@sandoe-acoustics.co.uk> * testsuite/libgomp.fortran/crayptr2.f90: Remove forced static linkage for darwin, protect the test with require-effective-target tls_runtime. * testsuite/libgomp.fortran/pr32550.f90: Ditto. From-SVN: r155409
* re PR target/41605 (Static linking of libgcc/libgfortran/libstdc++ can cause ↵Iain Sandoe2009-12-222-0/+9
| | | | | | | | | | | | | | | | | | | | | | | | inconsistent symbol resolution.) 2009-12-22 Iain Sandoe <iain.sandoe@sandoe-acoustics.co.uk> gcc/ PR target/41605 * lib/g++.exp: Provide -B options to allow for link spec %s substitutions for static libraries. libstdc++-v3/ PR target/41605 * testsuite/libstdc++-abi/abi.exp: Provide -B options to allow for link spec %s substitutions for static libraries. * testsuite/lib/libstdc++.exp: Ditto libgomp/ PR target/41605 * testsuite/lib/libgomp.exp: Provide -B options to allow for link spec %s substitutions for static libraries. From-SVN: r155408
* re PR testsuite/42135 (FAIL: libgomp.graphite/force-parallel-2.c execution test)Jack Howarth2009-12-182-2/+7
| | | | | | | | | | | Fix PR42135. 2009-12-18 Jack Howarth <howarth@bromo.med.uc.edu> PR testsuite/42135 * libgomp.graphite/force-parallel-2.c: Reduce array size. From-SVN: r155337
* Sync from git Libtool and regenerate.Ralf Wildenhues2009-12-054-761/+758
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | /: PR target/38384 PR bootstrap/40972 * libtool.m4: Sync from git Libtool. * ltoptions.m4: Likewise. * ltversion.m4: Likewise. * lt~obsolete.m4: Likewise. * ltmain.sh: Likewise. boehm-gc/: * Makefile.in: Regenerate. * configure: Regenerate. * include/Makefile.in: Regenerate. fixincludes/: * configure: Regenerate. gcc/: * configure: Regenerate. libffi/: * Makefile.in: Regenerate. * configure: Regenerate. * include/Makefile.in: Regenerate. * man/Makefile.in: Regenerate. * testsuite/Makefile.in: Regenerate. libgfortran/: * Makefile.in: Regenerate. * configure: Regenerate. libgomp/: * Makefile.in: Regenerate. * configure: Regenerate. * testsuite/Makefile.in: Regenerate. libjava/classpath/: * Makefile.in: Regenerate. * configure: Regenerate. * doc/Makefile.in: Regenerate. * doc/api/Makefile.in: Regenerate. * examples/Makefile.in: Regenerate. * external/Makefile.in: Regenerate. * external/jsr166/Makefile.in: Regenerate. * external/relaxngDatatype/Makefile.in: Regenerate. * external/sax/Makefile.in: Regenerate. * external/w3c_dom/Makefile.in: Regenerate. * include/Makefile.in: Regenerate. * lib/Makefile.in: Regenerate. * native/Makefile.in: Regenerate. * native/fdlibm/Makefile.in: Regenerate. * native/jawt/Makefile.in: Regenerate. * native/jni/Makefile.in: Regenerate. * native/jni/classpath/Makefile.in: Regenerate. * native/jni/gconf-peer/Makefile.in: Regenerate. * native/jni/gstreamer-peer/Makefile.in: Regenerate. * native/jni/gtk-peer/Makefile.in: Regenerate. * native/jni/java-io/Makefile.in: Regenerate. * native/jni/java-lang/Makefile.in: Regenerate. * native/jni/java-math/Makefile.in: Regenerate. * native/jni/java-net/Makefile.in: Regenerate. * native/jni/java-nio/Makefile.in: Regenerate. * native/jni/java-util/Makefile.in: Regenerate. * native/jni/midi-alsa/Makefile.in: Regenerate. * native/jni/midi-dssi/Makefile.in: Regenerate. * native/jni/native-lib/Makefile.in: Regenerate. * native/jni/qt-peer/Makefile.in: Regenerate. * native/jni/xmlj/Makefile.in: Regenerate. * native/plugin/Makefile.in: Regenerate. * resource/Makefile.in: Regenerate. * scripts/Makefile.in: Regenerate. * tools/Makefile.in: Regenerate. libjava/: * Makefile.in: Regenerate. * configure: Regenerate. * gcj/Makefile.in: Regenerate. * include/Makefile.in: Regenerate. * testsuite/Makefile.in: Regenerate. libmudflap/: * Makefile.in: Regenerate. * configure: Regenerate. * testsuite/Makefile.in: Regenerate. libobjc/: * configure: Regenerate. libssp/: * Makefile.in: Regenerate. * configure: Regenerate. libstdc++-v3/: * Makefile.in: Regenerate. * configure: Regenerate. * doc/Makefile.in: Regenerate. * include/Makefile.in: Regenerate. * libsupc++/Makefile.in: Regenerate. * po/Makefile.in: Regenerate. * python/Makefile.in: Regenerate. * src/Makefile.in: Regenerate. * testsuite/Makefile.in: Regenerate. lto-plugin/: * configure: Regenerate. * Makefile.in: Regenerate. zlib/: * Makefile.in: Regenerate. * configure: Regenerate. From-SVN: r155012
* libgomp.exp (libgomp_init): Add host-dependent settings for LC_ALL and LANG.Dave Korn2009-11-302-0/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | libgomp/ChangeLog 2009-11-30 Dave Korn <dave.korn.cygwin@gmail.com> * testsuite/lib/libgomp.exp (libgomp_init): Add host-dependent settings for LC_ALL and LANG. gcc/testsuite/ChangeLog 2009-11-30 Dave Korn <dave.korn.cygwin@gmail.com> * lib/g++.exp (g++_init): Add host-dependent settings for LC_ALL and LANG. * lib/gcc-dg.exp: Likewise. * lib/options.exp: Likewise. * lib/objc.exp (objc_init): Likewise. * lib/gfortran.exp (gfortran_init): Likewise. libjava/ChangeLog 2009-11-30 Dave Korn <dave.korn.cygwin@gmail.com> * testsuite/lib/libjava.exp (libjava_init): Add host-dependent settings for LC_ALL and LANG. From-SVN: r154854
* re PR fortran/42162 (OpenMP: ICE: tree check in omp_add_variable, at ↵Jakub Jelinek2009-11-252-1/+59
| | | | | | | | | | | | gimplify.c:5282) PR fortran/42162 * trans-openmp.c (gfc_trans_omp_do): When dovar isn't a VAR_DECL, don't use simple loop and handle clauses properly. * testsuite/libgomp.fortran/pr42162.f90: New test. From-SVN: r154654
* ChangeLog.graphite: New.Sebastian Pop2009-11-252-1/+9
| | | | | | | | | | 2009-10-09 Sebastian Pop <sebastian.pop@amd.com> * ChangeLog.graphite: New. * testsuite/libgomp.graphite/graphite.exp (PARALLEL_CFLAGS): Add -fno-loop-block. From-SVN: r154571
* re PR tree-optimization/41118 (Wrong dependence analysis in graphite for ↵Li Feng2009-11-251-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | unrestricted pointers) 2009-09-17 Li Feng <nemokingdom@gmail.com> PR middle-end/41118 * graphite-dependences.c (poly_drs_may_alias_p): Adjust definition. (pddr_original_scattering): Make sure 2 pdr2 in the same base object set. (graphite_carried_dependence_level_k): Ditto. * graphite-poly.c (new_poly_dr): Add init of PDR_BASE_OBJECT_SET. * graphite-poly.h (struct poly_dr): Add member dr_base_object_set. (new_poly_dr): Adjust declaration. * graphite-sese-to-poly.c (free_data_refs_aux): New. (free_gimple_bb): Added free_data_refs_aux. (build_poly_dr): Add dr_base_object_set. (partition_drs_to_sets): New. (dr_same_base_object_p): New. (build_alias_set_for_drs): New. (build_base_object_set_for_drs): New. (build_scop_drs): Add build_base_obj_set_for_drs. * graphite-sese-to-poly.h: Added #define for alias set number index and base object set index. * libgomp/testsuite/libgomp.graphite/force-parallel-6.c: Refine tests. * libgomp/testsuite/libgomp.graphite/pr4118.c: New. From-SVN: r154549
* re PR middle-end/42029 (ICE with complex data type and openmp for reduction ↵Jakub Jelinek2009-11-132-0/+24
| | | | | | | | | | | | clause) PR middle-end/42029 * gimplify.c (gimplify_omp_atomic): Set DECL_GIMPLE_REG_P on tmp_load if needed. * libgomp.c/pr42029.c: New test. From-SVN: r154161
* Fix nitsEric Botcazou2009-10-271-0/+4
| | | | From-SVN: r153586
* re PR libstdc++/38923 (symbol versioning disabled due to non-portable sed ↵Jakub Jelinek2009-10-263-2/+8
| | | | | | | | | | | | | | | script) PR libstdc++/38923 * acinclude.m4 (GLIBCXX_CHECK_LINKER_FEATURES): Avoid using too many *s. Accept ld version without text in ()s. * configure: Regenerated. * acinclude.m4 (LIBGOMP_CHECK_LINKER_FEATURES): Avoid using too many *s. Accept ld version without text in ()s. * configure: Regenerated. From-SVN: r153570
* cfgloopmanip.c (duplicate_subloops): Export.Razya Ladelsky2009-10-221-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2009-10-22 Razya Ladelsky <razya@il.ibm.com> * cfgloopmanip.c (duplicate_subloops): Export. * tree-parloops.c (loop_parallel_p): Dump if loop is innermost. (transform_to_exit_first_loop): Duplicate bbs starting from header up to loop->latch instead of exit->src. Initialize control variable to the correct number of iterations. (gather_scalar_reductions): Do not register double reductions. (parallelize_loops): Dump which loop is tested. Indicate whether the parallelized loop is inner or not. Remove the innermost-loop requirement. * cfgloop.h (duplicate_subloops): Export. * tree-cfg.c (add_phi_args_after_redirect): New function. (gimple_duplicate_sese_tail): Remove the no-subloops constraint. Call duplicate_subloops. Update number of iterations at the exit condition. Don't redirect nexits always to the loop exit. Redirect copied edges from latch to the loop exit. * testsuite/libgomp.graphite/force-parallel-2.c: Adjust scan. * testsuite/gcc.dg/autopar/outer-1.c: New testcase. * testsuite/gcc.dg/autopar/outer-2.c: New testcase. * testsuite/gcc.dg/autopar/outer-3.c: New testcase. * testsuite/gcc.dg/autopar/outer-4.c: New testcase. * testsuite/gcc.dg/autopar/outer-5.c: New testcase. * testsuite/gcc.dg/autopar/outer-6.c: New testcase. From-SVN: r153457
* Fix libgomp without --enable-languages=fortran.Ralf Wildenhues2009-10-173-8/+25
| | | | | | | | | | libgomp/: PR libgomp/41418 * configure.ac: Set FC to "no" if $GFORTRAN starts with "no" or a hyphen (happens with fortran language disabled). * configure: Regenerate. From-SVN: r152931
* sed and head portability fixes in ld version check.Ralf Wildenhues2009-09-303-4/+11
| | | | | | | | | | | | | | | | | libstdc++-v3/: PR libstdc++/38923 * acinclude.m4 (GLIBCXX_CHECK_LINKER_FEATURES): Avoid 'head', use sed script portable to Solaris /bin/sed for extracting ld version. * configure: Regenerate. libgomp/: * acinclude.m4 (LIBGOMP_CHECK_LINKER_FEATURES): Avoid 'head', use sed script portable to Solaris /bin/sed for extracting ld version. * configure: Regenerate. From-SVN: r152315
* graphite-sese-to-poly.c (pdr_add_data_dimensions): Add bounds only for ↵Alexander Monakov2009-09-172-0/+17
| | | | | | | | | | | | | | | ARRAY_REFs. 2009-09-17 Alexander Monakov <amonakov@ispras.ru> gcc: * graphite-sese-to-poly.c (pdr_add_data_dimensions): Add bounds only for ARRAY_REFs. Use array_ref_{low,up}_bound to determine bounds. libgomp: * testsuite/libgomp.graphite/bounds.c: New test. From-SVN: r151802
* Override all per-target *_LINK variables correctly.Ralf Wildenhues2009-09-113-3/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | boehm-gc/: * Makefile.am (libgcjgc_la_LINK, gctest_LINK): New. (gctest_LDADD): Depend on libgcjgc.la instead of ./libgcjgc.la, so that library dependency resolution works with portable make. * Makefile.in: Regenerate. libgfortran/: * Makefile.am (libgfortranbegin_la_LINK): New. * Makefile.in: Regenerate. libgomp/: * Makefile.am (libgomp_la_LINK): New. * Makefile.in: Regenerate. libjava/: * Makefile.am (libgij_la_LINK, libjvm_la_LINK): New. * Makefile.in: Regenerate. libstdc++-v3/: * src/Makefile.am (libstdc___la_LINK): New. * src/Makefile.in: Regenerate. From-SVN: r151627
* Update AC_PREREQ entries to 2.64Ralf Wildenhues2009-08-242-1/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | /: * configure.ac (AC_PREREQ): Bump to 2.64. intl/: * configure.ac (AC_PREREQ): Bump to 2.64. libdecnumber/: * configure.ac (AC_PREREQ): Bump to 2.64. libiberty/: * configure.ac (AC_PREREQ): Bump to 2.64. libjava/classpath/: * configure.ac (AC_PREREQ): Bump to 2.64. libjava/: * configure.ac (AC_PREREQ): Bump to 2.64. libjava/libltdl/: * configure.ac (AC_PREREQ): Bump to 2.64. Remove FIXME. libssp/: * configure.ac (AC_PREREQ): Bump to 2.64. libobjc/: * configure.ac (AC_PREREQ): Bump to 2.64. libstdc++-v3/: * configure.ac (AC_PREREQ): Bump to 2.64. libada/: * configure.ac (AC_PREREQ): Bump to 2.64. libgcc/: * configure.ac (AC_PREREQ): Bump to 2.64. libgfortran/: * configure.ac (AC_PREREQ): Bump to 2.64. boehm-gc/: * configure.ac (AC_PREREQ): Bump to 2.64. gnattools/: * configure.ac (AC_PREREQ): Bump to 2.64. gcc/: * configure.ac (AC_PREREQ): Bump to 2.64. fixincludes/: * configure.ac (AC_PREREQ): Bump to 2.64. libmudflap/: * configure.ac (AC_PREREQ): Bump to 2.64. zlib/: * configure.ac (AC_PREREQ): Bump to 2.64. libffi/: * configure.ac (AC_PREREQ): Bump to 2.64. libcpp/: * configure.ac (AC_PREREQ): Bump to 2.64. libgomp/: * configure.ac (AC_PREREQ): Bump to 2.64. From-SVN: r151059
* Cleanups after the update to Autoconf 2.64, Automake 1.11.Ralf Wildenhues2009-08-223-28/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | /: * configure.ac: Remove --with-datarootdir, --with-docdir, --with-pdfdir, --with-htmldir switches. * configure: Regenerate. gcc/: * configure.ac: Remove --with-datarootdir, --with-docdir, --with-htmldir switches. No need to call AC_SUBST for datarootdir, docdir, htmldir any more. * configure: Regenerate. * doc/install.texi (Configuration): Document --datarootdir, --docdir, --htmldir, --pdfdir; update documentation for --infodir, --mandir. (Prerequisites): Bump Autoconf version to 2.64, Automake to 1.11, M4 to 1.4.6. libgfortran/: * Makefile.am (install-html, install-pdf): Remove. * Makefile.in: Regenerate. libjava/classpath/: * doc/cp-hacking.texinfo (Needed Tools and Libraries): Bump Autoconf version to 2.64, Automake to 1.11, M4 to 1.4.6. libjava/: * HACKING: Use aclocal-1.11 and autoconf-2.64 in example. * Makefile.am (install-html, install-pdf): Remove. * Makefile.in: Regenerate. libstdc++-v3/: * doc/xml/manual/build_hacking.xml: Use tools from Autoconf 2.64 and Automake 1.11 in examples; update link to Autoconf manual page about quadrigraphs. * Makefile.am (install-html, install-pdf): Remove. * Makefile.in: Regenerate. libssp/: * Makefile.am (install-html, install-pdf): Remove. * Makefile.in: Regenerate. boehm-gc/: * Makefile.am (install-html, install-pdf): Remove. * Makefile.in: Regenerate. libmudflap/: * Makefile.am (install-html, install-pdf): Remove. * Makefile.in: Regenerate. zlib/: * Makefile.am (install-html, install-pdf, html): Remove. * Makefile.in: Regenerate. libffi/: * Makefile.am (install-html, install-pdf): Remove. * Makefile.in: Regenerate. libgomp/: * Makefile.am (install-html, install-pdf): Remove. * Makefile.in: Regenerate. From-SVN: r151015
* Regenerate tree using Autoconf 2.64 and Automake 1.11.Ralf Wildenhues2009-08-226-11786/+6488
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | config/: * override.m4 (_GCC_AUTOCONF_VERSION): Bump to 2.64. : * configure: Regenerate. intl/: * aclocal.m4: Regenerate. * configure: Regenerate. * config.h.in: Regenerate. libiberty/: * config.in: Regenerate. * configure: Regenerate. boehm-gc/: * Makefile.in: Regenerate. * aclocal.m4: Regenerate. * configure: Regenerate. * include/Makefile.in: Regenerate. * include/gc_config.h.in: Regenerate. fixincludes/: * aclocal.m4: Regenerate. * configure: Regenerate. * config.h.in: Regenerate. gcc/: * aclocal.m4: Regenerate. * config.in: Regenerate. * configure: Regenerate. libgcc/: * configure: Regenerate. gnattools/: * configure: Regenerate. libada/: * configure: Regenerate. libcpp/: * aclocal.m4: Regenerate. * config.in: Regenerate. * configure: Regenerate. libdecnumber/: * aclocal.m4: Regenerate. * configure: Regenerate. * config.in: Regenerate. libffi/: * Makefile.in: Regenerate. * aclocal.m4: Regenerate. * configure: Regenerate. * fficonfig.h.in: Regenerate. * include/Makefile.in: Regenerate. * man/Makefile.in: Regenerate. * testsuite/Makefile.in: Regenerate. libgfortran/: * Makefile.in: Regenerate. * aclocal.m4: Regenerate. * config.h.in: Regenerate. * configure: Regenerate. libgomp/: * Makefile.in: Regenerate. * aclocal.m4: Regenerate. * config.h.in: Regenerate. * configure: Regenerate. * testsuite/Makefile.in: Regenerate. libjava/classpath/: * Makefile.in: Regenerate. * aclocal.m4: Regenerate. * configure: Regenerate. * doc/Makefile.in: Regenerate. * doc/api/Makefile.in: Regenerate. * examples/Makefile.in: Regenerate. * external/Makefile.in: Regenerate. * external/jsr166/Makefile.in: Regenerate. * external/relaxngDatatype/Makefile.in: Regenerate. * external/sax/Makefile.in: Regenerate. * external/w3c_dom/Makefile.in: Regenerate. * include/Makefile.in: Regenerate. * include/config.h.in: Regenerate. * lib/Makefile.in: Regenerate. * native/Makefile.in: Regenerate. * native/fdlibm/Makefile.in: Regenerate. * native/jawt/Makefile.in: Regenerate. * native/jni/Makefile.in: Regenerate. * native/jni/classpath/Makefile.in: Regenerate. * native/jni/gconf-peer/Makefile.in: Regenerate. * native/jni/gstreamer-peer/Makefile.in: Regenerate. * native/jni/gtk-peer/Makefile.in: Regenerate. * native/jni/java-io/Makefile.in: Regenerate. * native/jni/java-lang/Makefile.in: Regenerate. * native/jni/java-math/Makefile.in: Regenerate. * native/jni/java-net/Makefile.in: Regenerate. * native/jni/java-nio/Makefile.in: Regenerate. * native/jni/java-util/Makefile.in: Regenerate. * native/jni/midi-alsa/Makefile.in: Regenerate. * native/jni/midi-dssi/Makefile.in: Regenerate. * native/jni/native-lib/Makefile.in: Regenerate. * native/jni/qt-peer/Makefile.in: Regenerate. * native/jni/xmlj/Makefile.in: Regenerate. * native/plugin/Makefile.in: Regenerate. * resource/Makefile.in: Regenerate. * scripts/Makefile.in: Regenerate. * tools/Makefile.in: Regenerate. libjava/: * Makefile.in: Regenerate. * aclocal.m4: Regenerate. * configure: Regenerate. * gcj/Makefile.in: Regenerate. * include/Makefile.in: Regenerate. * include/config.h.in: Regenerate. * testsuite/Makefile.in: Regenerate. libjava/libltdl/: * Makefile.in: Regenerate. * aclocal.m4: Regenerate. * config-h.in: Regenerate. * configure: Regenerate. libmudflap/: * Makefile.in: Regenerate. * aclocal.m4: Regenerate. * config.h.in: Regenerate. * configure: Regenerate. * testsuite/Makefile.in: Regenerate. libobjc/: * aclocal.m4: Regenerate. * configure: Regenerate. * config.h.in: Regenerate. libssp/: * Makefile.in: Regenerate. * aclocal.m4: Regenerate. * config.h.in: Regenerate. * configure: Regenerate. libstdc++-v3/: * Makefile.in: Regenerate. * acinclude.m4: Regenerate. * aclocal.m4: Regenerate. * config.h.in: Regenerate. * configure: Regenerate. * doc/Makefile.in: Regenerate. * include/Makefile.in: Regenerate. * libsupc++/Makefile.in: Regenerate. * po/Makefile.in: Regenerate. * python/Makefile.in: Regenerate. * src/Makefile.in: Regenerate. * testsuite/Makefile.in: Regenerate. zlib/: * Makefile.in: Regenerate. * aclocal.m4: Regenerate. * configure: Regenerate. From-SVN: r151014
* LIBTOOLFLAGS, and *_LINK fixes for Automake 1.11Ralf Wildenhues2009-08-223-4/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | boehm-gc/: * Makefile.am (LTCOMPILE, LTLINK): Add $(AM_LIBTOOLFLAGS) and $(LIBTOOLFLAGS). * Makefile.in: Regenerate. libgfortran/: * Makefile.am (libgfortran_la_LINK): Add $(libgfortran_la_LDFLAGS). * Makefile.in: Regenerate. libjava/: * Makefile.am (libgcj_la_LINK, libgcj_tools_la_LINK) (lib_gnu_awt_xlib_la_LINK, libgcj_bc_la_LINK, jv_convert_LINK) (gcj_dbtool_LINK, gc_analyze_LINK, gij_LINK, ecjx_LINK) (gappletviewer_LINK, gjarsigner_LINK, gkeytool_LINK) (gjar_LINK, gjavah_LINK, gcjh_LINK, gnative2ascii_LINK) (gorbd_LINK, grmid_LINK, gserialver_LINK, gtnameserv_LINK) (grmic_LINK, grmiregistry_LINK, gjdoc_LINK): Add $(gjdoc_LDFLAGS). (GCJLINK, LIBLINK, CXXLINK): Add $(LIBTOOLFLAGS). * Makefile.in: Regenerate. libstdc++-v3/: * libsupc++/Makefile.am (LTCOMPILE, LTCXXCOMPILE, CXXLINK): Add $(LIBTOOLFLAGS). * libsupc++/Makefile.in: Regenerate. * src/Makefile.am (LTCXXCOMPILE, CXXLINK): Add $(AM_LIBTOOLFLAGS) and $(LIBTOOLFLAGS). * src/Makefile.in: Regenerate. libgomp/: * Makefile.am (LINK): Add $(AM_LIBTOOLFLAGS) and $(LIBTOOLFLAGS). * Makefile.in: Regenerate. libobjc/: * Makefile.in (LIBTOOL): Add $(LIBTOOLFLAGS). From-SVN: r151013
* Makefile.am (libgomp_la_LDFLAGS): Add -bindir flag.Dave Korn2009-08-203-3/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | libgomp/ChangeLog: * Makefile.am (libgomp_la_LDFLAGS): Add -bindir flag. * Makefile.in: Regenerate. ChangeLog: * ltmain.sh (func_normal_abspath): New function. (func_relative_path): Likewise. (func_mode_help): Document new -bindir option for link mode. (func_mode_link): Add new -bindir option, and use it to place output DLL if specified. libgfortran/ChangeLog: * Makefile.am (LTLDFLAGS): Add -bindir flag. * Makefile.in: Regenerate. libssp/ChangeLog: * Makefile.am (libssp_la_LDFLAGS): Add -bindir flag. * Makefile.in: Regenerate. libjava/libltdl/ChangeLog: * Makefile.am (libltdl_la_LDFLAGS): Add -bindir flag. * Makefile.in: Regenerate. libjava/classpath/ChangeLog: * ltmain.sh (func_normal_abspath): New function. (func_relative_path): Likewise. (func_mode_help): Document new -bindir option for link mode. (func_mode_link): Add new -bindir option, and use it to place output DLL if specified. From-SVN: r150960
* re PR fortran/41102 (Ease error checking of included files located in the ↵Tobias Burnus2009-08-192-8/+14
| | | | | | | | | | | SYSTEM_INCLUDE_DIR/ending in .h) 2009-08-19 Tobias Burnus <burnus@net-b.de> PR fortran/41102 omp_lib.h.in: Fix -std=f95 errors. From-SVN: r150931
* graphite_autopar: Move to libgomp testsuite.David Edelsohn2009-08-1411-0/+404
| | | | | | | | | | | | gcc/testsuite/ * gcc.dg/graphite/graphite_autopar: Move to libgomp testsuite. libgomp/ * testsuite/libgomp.graphite: Move from gcc.dg/graphite. * testsuite/libgomp.graphite/graphite_autopar.exp: Delete. * testsuite/libgomp.graphite/graphite.exp: New. From-SVN: r150755
* fortran.exp: Add flags in case of shared only build.Andreas Tobler2009-08-052-1/+15
| | | | | | | | | 2009-08-05 Andreas Tobler <a.tobler@schweiz.org> * testsuite/libgomp.fortran/fortran.exp: Add flags in case of shared only build. From-SVN: r150495
* mutex.h (gomp_mutex_unlock): Add comment about needed memory barrier semantics.David Daney2009-08-043-0/+43
| | | | | | | | | | 2009-08-04 David Daney <ddaney@caviumnetworks.com> * config/linux/mutex.h (gomp_mutex_unlock): Add comment about needed memory barrier semantics. * config/linux/mips/mutex.h: New file. From-SVN: r150463
* extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Do not expand for Autoconf 2.62 or ↵Ralf Wildenhues2009-07-302-1/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | newer. config/ * extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Do not expand for Autoconf 2.62 or newer. * tls.m4 (GCC_CHECK_TLS): Fix m4 quotation. * no-executables.m4 (_AC_COMPILER_EXEEXT): Fix m4 quotation. * override.m4 (m4_copy_force, m4_rename_force): Provide macros if not defined. (AC_PREREQ): Use m4_copy_force. boehm-gc/ * configure.ac (_AC_ARG_VAR_PRECIOUS): Use m4_rename_force. libada/ * configure.ac (_AC_ARG_VAR_PRECIOUS): Use m4_rename_force. libffi/ * configure.ac (_AC_ARG_VAR_PRECIOUS): Use m4_rename_force. libgfortran/ * configure.ac (_AC_ARG_VAR_PRECIOUS): Use m4_rename_force. libgomp/ * configure.ac (_AC_ARG_VAR_PRECIOUS): Use m4_rename_force. libjava/ * configure.ac (_AC_ARG_VAR_PRECIOUS): Use m4_rename_force. libmudflap/ * configure.ac (_AC_ARG_VAR_PRECIOUS): Use m4_rename_force. libobjc/ * configure.ac (_AC_ARG_VAR_PRECIOUS): Use m4_rename_force. libssp/ * configure.ac (_AC_ARG_VAR_PRECIOUS): Use m4_rename_force. zlib/ * configure.ac (_AC_ARG_VAR_PRECIOUS): Use m4_rename_force. libstdc++-v3/ * acinclude.m4 (GLIBCXX_CONFIGURE): Use m4_rename_force. From-SVN: r150269
* tls.m4 (GCC_CHECK_TLS): Also test TLS in a shared library when cross-compiling.Joseph Myers2009-07-172-0/+84
| | | | | | | | | | | | | | | | | | | | config: * tls.m4 (GCC_CHECK_TLS): Also test TLS in a shared library when cross-compiling. libgomp: * configure: Regenerate. libjava: * configure: Regenerate. libmudflap: * configure: Regenerate. libstdc++-v3: * configure: Regenerate. From-SVN: r149725
* re PR testsuite/40699 (All sparcv9 libjava execution tests fail on Solaris ↵Richard Sandiford2009-07-115-14/+52
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 11/SPARC) gcc/testsuite/ PR testsuite/40699 PR testsuite/40707 PR testsuite/40709 * lib/gcc-defs.exp, lib/target-libpath.exp, lib/objc.exp, lib/gfortran.exp, lib/g++.exp, lib/obj-c++.exp, lib/c-torture.exp, lib/gcc-dg.exp, lib/gnat.exp, g++.dg/compat/compat.exp, g++.dg/compat/struct-layout-1.exp: Revert 2009-06-30 commit. libstdc++-v3/ PR testsuite/40699 PR testsuite/40707 PR testsuite/40709 * testsuite/lib/libstdc++.exp: Revert 2009-06-30 commit. libjava/ PR testsuite/40699 PR testsuite/40707 PR testsuite/40709 * testsuite/lib/libjava.exp: Revert 2009-06-30 commit. libgomp/ PR testsuite/40699 PR testsuite/40707 PR testsuite/40709 * testsuite/lib/libgomp.exp: Revert 2009-07-02 and 2009-06-30 commits. * testsuite/libgomp.c/c.exp, testsuite/libgomp.c++/c++.exp, testsuite/libgomp.fortran/fortran.exp: Revert 2009-06-30 commits. libffi/ PR testsuite/40699 PR testsuite/40707 PR testsuite/40709 * testsuite/lib/libffi-dg.exp: Revert 2009-07-02, 2009-07-01 and 2009-06-30 commits. libmudflap/ PR testsuite/40699 PR testsuite/40707 PR testsuite/40709 * testsuite/lib/libmudflap.exp: Revert 2009-06-30 commit. From-SVN: r149508
* libgomp.exp (libgomp_init): Use the ALWAYS_CFLAGS options when choosing a ↵Richard Sandiford2009-07-022-3/+15
| | | | | | | | | | multilib. libgomp/ * testsuite/lib/libgomp.exp (libgomp_init): Use the ALWAYS_CFLAGS options when choosing a multilib. From-SVN: r149195
* gcc-defs.exp (gcc-set-multilib-library-path): Delete.Richard Sandiford2009-06-305-42/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | gcc/testsuite/ * lib/gcc-defs.exp (gcc-set-multilib-library-path): Delete. * lib/target-libpath.exp (ld_library_path_vars): New variable. (init_ld_library_path_env_vars): New function, replacing the orig_*_saved assignments. Call it after defining it. (set_ld_library_path_env_vars): Rewrite to use ld_library_path_vars. (restore_ld_library_path_env_vars): Likewise. (add_path, find_libgcc_s): New functions. * lib/objc.exp (objc_init): Use find_libgcc_s instead of gcc-set-multilib-library-path. (objc_target_compile): Don't add "." to ld_library_path. Use add_path. * lib/gfortran.exp (gfortran_link_flags): Don't add "." to ld_library_path. Use add_path. Use find_libgcc_s instead of gcc-set-multilib-library-path. * lib/g++.exp (g++_link_flags): Likewise. * lib/obj-c++.exp (obj-c++_link_flags): Likewise. * lib/c-torture.exp: Do not manipulate ld_library_path at the top level; do it... (c-torture-execute): ...here instead. Use $ld_library_path_multilib to tell when this needs to happen. Use find_libgcc_s instead of gcc-set-multilib-library-path. * lib/gcc-dg.exp: Likewise. * lib/gnat.exp (gnat_target_compile): Don't add "." to ld_library_path. * g++.dg/compat/compat.exp (alt_ld_library_path): Don't add "." unless it is in $ALT_LD_LIBRARY_PATH. * g++.dg/compat/struct-layout-1.exp (alt_ld_library_path): Likewise. libffi/ * testsuite/lib/libffi-dg.exp (libffi-init): Don't add "." to ld_library_path. Use add_path. Add just find_libgcc_s to ld_library_path, not every libgcc multilib directory. libgomp/ * testsuite/lib/libgomp.exp (libgomp_init): Don't add "." to ld_library_path. Use add_path. Add just find_libgcc_s to ld_library_path, not every libgcc multilib directory. * testsuite/libgomp.c/c.exp (ld_library_path): Don't call gcc-set-multilib-library-path; rely on $always_ld_library_path instead. * testsuite/libgomp.c++/c++.exp (ld_library_path): Likewise. Use add_path. * testsuite/libgomp.fortran/fortran.exp (ld_library_path): Likewise. libjava/ * testsuite/lib/libjava.exp (libjava_init): Just add find_libgcc_s to libjava_libgcc_s_path, rather than every libgcc multilib directory. (libjava_arguments): Explain why we add "." to ld_library_path. (gcj_invoke, exec_gij, libjava_invoke): Use add_path. libmudflap/ * testsuite/lib/libmudflap.exp (libmudflap-init): Don't add "." to ld_library_path. Use add_path. Add just find_libgcc_s to ld_library_path, not every libgcc multilib directory. libstdc++-v3/ * testsuite/lib/libstdc++.exp (libstdc++_init): Don't add "." to ld_library_path. Use add_path. Add just find_libgcc_s to ld_library_path, not every libgcc multilib directory. From-SVN: r149113
* Makefile.am (LTLDFLAGS): Define.Nathan Froyd2009-06-093-2/+14
| | | | | | | | * Makefile.am (LTLDFLAGS): Define. (LINK): Define. * Makefile.in: Regenerate. From-SVN: r148311