aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorUlrich Weigand <Ulrich.Weigand@de.ibm.com>2010-05-18 07:58:36 +0000
committerUlrich Weigand <Ulrich.Weigand@de.ibm.com>2010-05-18 07:58:36 +0000
commit47a1fbc84b859f76b667981823142c1d9db0a1d9 (patch)
tree1498312fa2d4548df4eb68430cb1ac244ff3b530
parent6fe542eedfca85788635c35f69d56cb7aef39da0 (diff)
Update to gcc-4_4-branch revision 159486.cell-4_4-branch
git-svn-id: https://gcc.gnu.org/svn/gcc/branches/cell-4_4-branch@159526 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--ChangeLog4
-rw-r--r--ChangeLog.cell4
-rw-r--r--boehm-gc/ChangeLog4
-rw-r--r--config/ChangeLog4
-rw-r--r--contrib/ChangeLog4
-rw-r--r--contrib/reghunt/ChangeLog4
-rw-r--r--contrib/regression/ChangeLog4
-rw-r--r--fixincludes/ChangeLog4
-rw-r--r--gcc/BASE-VER2
-rw-r--r--gcc/ChangeLog206
-rw-r--r--gcc/DATESTAMP2
-rw-r--r--gcc/ada/ChangeLog4
-rw-r--r--gcc/alias.c39
-rw-r--r--gcc/c-common.c8
-rw-r--r--gcc/c-omp.c14
-rw-r--r--gcc/config/i386/gmon-sol2.c4
-rw-r--r--gcc/config/i386/i386.c10
-rw-r--r--gcc/config/pa/hpux-unwind.h1
-rw-r--r--gcc/config/pa/linux-unwind.h1
-rw-r--r--gcc/config/rs6000/rs6000.c68
-rw-r--r--gcc/config/s390/s390.c16
-rw-r--r--gcc/config/sh/sh.c17
-rw-r--r--gcc/cp/ChangeLog4
-rw-r--r--gcc/doc/invoke.texi3
-rw-r--r--gcc/doc/standards.texi2
-rw-r--r--gcc/fortran/ChangeLog42
-rw-r--r--gcc/fortran/f95-lang.c3
-rw-r--r--gcc/fortran/gfortran.texi38
-rw-r--r--gcc/fortran/interface.c4
-rw-r--r--gcc/fortran/intrinsic.c2
-rw-r--r--gcc/fortran/openmp.c31
-rw-r--r--gcc/fortran/trans-openmp.c12
-rw-r--r--gcc/gimplify.c59
-rw-r--r--gcc/ipa-type-escape.c9
-rw-r--r--gcc/java/ChangeLog4
-rw-r--r--gcc/objc/ChangeLog4
-rw-r--r--gcc/objcp/ChangeLog4
-rw-r--r--gcc/omp-low.c26
-rw-r--r--gcc/params.def5
-rw-r--r--gcc/po/ChangeLog4
-rw-r--r--gcc/reginfo.c2
-rw-r--r--gcc/testsuite/ChangeLog122
-rwxr-xr-xgcc/testsuite/ada/acats/run_acats19
-rw-r--r--gcc/testsuite/g++.dg/ext/attrib39.C9
-rw-r--r--gcc/testsuite/g++.dg/vect/pr43771.cc14
-rw-r--r--gcc/testsuite/g++.old-deja/g++.oliva/ChangeLog4
-rw-r--r--gcc/testsuite/gcc.c-torture/compile/pr42956.c33
-rw-r--r--gcc/testsuite/gcc.c-torture/compile/pr43186.c15
-rw-r--r--gcc/testsuite/gcc.c-torture/compile/pr43614.c27
-rw-r--r--gcc/testsuite/gcc.c-torture/execute/20100430-1.c51
-rw-r--r--gcc/testsuite/gcc.c-torture/execute/pr43560.c28
-rw-r--r--gcc/testsuite/gcc.c-torture/execute/pr43629.c13
-rw-r--r--gcc/testsuite/gcc.dg/gomp/pr44085.c27
-rw-r--r--gcc/testsuite/gcc.dg/pr43643.c24
-rw-r--r--gcc/testsuite/gcc.dg/torture/pr43560.c34
-rw-r--r--gcc/testsuite/gcc.target/i386/pr43662.c24
-rw-r--r--gcc/testsuite/gcc.target/i386/pr43668.c10
-rw-r--r--gcc/testsuite/gcc.target/i386/pr43671.c27
-rw-r--r--gcc/testsuite/gcc.target/sh/pr43417.c36
-rw-r--r--gcc/testsuite/gfortran.dg/actual_array_interface_2.f9013
-rw-r--r--gcc/testsuite/gfortran.dg/gomp/pr43337.f9030
-rw-r--r--gcc/testsuite/gfortran.dg/gomp/pr43836.f9010
-rw-r--r--gcc/testsuite/gfortran.dg/gomp/pr44036-1.f9024
-rw-r--r--gcc/testsuite/gfortran.dg/gomp/pr44036-2.f9017
-rw-r--r--gcc/testsuite/gfortran.dg/gomp/pr44036-3.f9013
-rw-r--r--gcc/testsuite/gfortran.dg/gomp/pr44085.f9025
-rw-r--r--gcc/testsuite/gfortran.dg/gomp/sharing-2.f9012
-rw-r--r--gcc/testsuite/gnat.dg/rep_clause5.adb39
-rw-r--r--gcc/testsuite/gnat.dg/rep_clause5.ads12
-rw-r--r--gcc/testsuite/gnat.dg/rep_clause5_pkg.ads383
-rw-r--r--gcc/tree-nested.c6
-rw-r--r--gcc/tree-sra.c6
-rw-r--r--gcc/tree-ssa-address.c2
-rw-r--r--gcc/tree-ssa-ccp.c17
-rw-r--r--gcc/tree-ssa-loop-im.c39
-rw-r--r--gcc/tree-ssa-loop-ivcanon.c4
-rw-r--r--gcc/tree-ssa-loop-ivopts.c26
-rw-r--r--gcc/tree-ssa-operands.c3
-rw-r--r--gcc/tree-vect-analyze.c4
-rw-r--r--gcc/tree.c6
-rw-r--r--gnattools/ChangeLog4
-rw-r--r--include/ChangeLog4
-rw-r--r--intl/ChangeLog4
-rw-r--r--libada/ChangeLog4
-rw-r--r--libcpp/ChangeLog4
-rw-r--r--libcpp/po/ChangeLog4
-rw-r--r--libdecnumber/ChangeLog4
-rw-r--r--libffi/ChangeLog10
-rw-r--r--libffi/Makefile.in200
-rw-r--r--libffi/configure.ac2
-rw-r--r--libgcc/ChangeLog17
-rw-r--r--libgcc/config/i386/t-sol210
-rw-r--r--libgcc/config/libbid/ChangeLog4
-rw-r--r--libgfortran/ChangeLog10
-rw-r--r--libgfortran/Makefile.in669
-rw-r--r--libgfortran/configure.ac2
-rw-r--r--libgomp/ChangeLog31
-rw-r--r--libgomp/Makefile.in193
-rw-r--r--libgomp/config/linux/affinity.c17
-rw-r--r--libgomp/config/linux/proc.c24
-rw-r--r--libgomp/configure.ac2
-rw-r--r--libgomp/sections.c20
-rw-r--r--libgomp/testsuite/libgomp.c++/pr43893.C125
-rw-r--r--libgomp/testsuite/libgomp.c/pr43893.c61
-rw-r--r--libgomp/testsuite/libgomp.fortran/vla8.f90254
-rw-r--r--libiberty/ChangeLog4
-rw-r--r--libjava/ChangeLog30
-rw-r--r--libjava/Makefile.in279
-rw-r--r--libjava/classpath/ChangeLog10
-rw-r--r--libjava/classpath/Makefile.in204
-rw-r--r--libjava/classpath/configure.ac2
-rwxr-xr-xlibjava/configure58
-rw-r--r--libjava/configure.ac17
-rw-r--r--libjava/include/hppa-signal.h75
-rw-r--r--libjava/include/pa-signal.h22
-rw-r--r--libjava/libltdl/ChangeLog10
-rw-r--r--libjava/libltdl/Makefile.am2
-rw-r--r--libjava/libltdl/Makefile.in162
-rw-r--r--libmudflap/ChangeLog10
-rw-r--r--libmudflap/Makefile.in189
-rw-r--r--libmudflap/configure.ac2
-rw-r--r--libobjc/ChangeLog4
-rw-r--r--libssp/ChangeLog10
-rw-r--r--libssp/Makefile.in182
-rw-r--r--libssp/configure.ac2
-rw-r--r--libstdc++-v3/ChangeLog28
-rw-r--r--libstdc++-v3/Makefile.in188
-rw-r--r--libstdc++-v3/configure.ac2
-rw-r--r--libstdc++-v3/include/bits/basic_string.h29
-rw-r--r--libstdc++-v3/include/bits/basic_string.tcc23
-rw-r--r--libstdc++-v3/testsuite/26_numerics/headers/cmath/c99_classification_macros_c.cc4
-rw-r--r--maintainer-scripts/ChangeLog4
-rw-r--r--zlib/ChangeLog4
133 files changed, 2770 insertions, 2355 deletions
diff --git a/ChangeLog b/ChangeLog
index 102d38a7879..0ca0276f15e 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2010-04-29 Release Manager
+
+ * GCC 4.4.4 released.
+
2010-01-21 Release Manager
* GCC 4.4.3 released.
diff --git a/ChangeLog.cell b/ChangeLog.cell
index fc002fce1a2..173e3e707bd 100644
--- a/ChangeLog.cell
+++ b/ChangeLog.cell
@@ -1,3 +1,7 @@
+2010-05-17 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
+
+ Update to gcc-4_4-branch revision 159486.
+
2010-04-07 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
Update to gcc-4_4-branch revision 158036.
diff --git a/boehm-gc/ChangeLog b/boehm-gc/ChangeLog
index 68a846fa6ec..210c61ca6f2 100644
--- a/boehm-gc/ChangeLog
+++ b/boehm-gc/ChangeLog
@@ -1,3 +1,7 @@
+2010-04-29 Release Manager
+
+ * GCC 4.4.4 released.
+
2010-01-21 Release Manager
* GCC 4.4.3 released.
diff --git a/config/ChangeLog b/config/ChangeLog
index e6878458f3a..daba5b31084 100644
--- a/config/ChangeLog
+++ b/config/ChangeLog
@@ -1,3 +1,7 @@
+2010-04-29 Release Manager
+
+ * GCC 4.4.4 released.
+
2010-01-21 Release Manager
* GCC 4.4.3 released.
diff --git a/contrib/ChangeLog b/contrib/ChangeLog
index 687fd66fa9f..2bb10e265ba 100644
--- a/contrib/ChangeLog
+++ b/contrib/ChangeLog
@@ -1,3 +1,7 @@
+2010-04-29 Release Manager
+
+ * GCC 4.4.4 released.
+
2010-01-21 Release Manager
* GCC 4.4.3 released.
diff --git a/contrib/reghunt/ChangeLog b/contrib/reghunt/ChangeLog
index 8b68c0216a0..07db46c34c7 100644
--- a/contrib/reghunt/ChangeLog
+++ b/contrib/reghunt/ChangeLog
@@ -1,3 +1,7 @@
+2010-04-29 Release Manager
+
+ * GCC 4.4.4 released.
+
2010-01-21 Release Manager
* GCC 4.4.3 released.
diff --git a/contrib/regression/ChangeLog b/contrib/regression/ChangeLog
index 07833f6755e..3c4b010b311 100644
--- a/contrib/regression/ChangeLog
+++ b/contrib/regression/ChangeLog
@@ -1,3 +1,7 @@
+2010-04-29 Release Manager
+
+ * GCC 4.4.4 released.
+
2010-01-21 Release Manager
* GCC 4.4.3 released.
diff --git a/fixincludes/ChangeLog b/fixincludes/ChangeLog
index 7b78a687c5b..17c97e349aa 100644
--- a/fixincludes/ChangeLog
+++ b/fixincludes/ChangeLog
@@ -1,3 +1,7 @@
+2010-04-29 Release Manager
+
+ * GCC 4.4.4 released.
+
2010-01-21 Release Manager
* GCC 4.4.3 released.
diff --git a/gcc/BASE-VER b/gcc/BASE-VER
index cbe06cdbfc2..fa1ba0458a1 100644
--- a/gcc/BASE-VER
+++ b/gcc/BASE-VER
@@ -1 +1 @@
-4.4.4
+4.4.5
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index cf06d7737cb..ebb48d554eb 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,209 @@
+2010-05-17 Alan Modra <amodra@gmail.com>
+
+ * config/rs6000/rs6000.c (rs6000_emit_allocate_stack): Delete
+ unnecessary prototype. Replace copy_r12 and copy_r11 flag params
+ with copy_reg rtx param.
+ (rs6000_emit_prologue): Update rs6000_emit_allocate_stack calls.
+ Correct cases where code for ABI_V4 did not initialise the reg
+ used to access frame. Also leave frame_reg_rtx as sp for large
+ frames that save no regs.
+
+2010-05-12 Jakub Jelinek <jakub@redhat.com>
+
+ PR middle-end/44085
+ * gimplify.c (enum omp_region_type): Add ORT_UNTIED_TASK,
+ change value of ORT_TASK.
+ (new_omp_context): Handle ORT_UNTIED_TASK like ORT_TASK.
+ (omp_notice_threadprivate_variable): New function.
+ (omp_notice_variable): Call it for threadprivate variables.
+ If enclosing ctx is a task, print enclosing task rather than
+ enclosing parallel. Handle ORT_UNTIED_TASK like ORT_TASK.
+ (gimplify_omp_task): Pass ORT_UNTIED_TASK instead of ORT_TASK
+ if task has untied clause.
+
+2010-05-07 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
+
+ PR documentation/44016
+ * doc/standards.texi (Standards): Link to unversioned
+ cxx0x_status.html page.
+
+2010-05-05 Kaz Kojima <kkojima@gcc.gnu.org>
+
+ Backport from mainline:
+ 2010-04-22 Kaz Kojima <kkojima@gcc.gnu.org>
+
+ PR target/43744
+ * config/sh/sh.c (find_barrier): Don't emit a constant pool
+ in the middle of insns for casesi_worker_2.
+
+2010-05-05 Jason Merrill <jason@redhat.com>
+
+ PR debug/43370
+ * c-common.c (handle_aligned_attribute): Respect
+ ATTR_FLAG_TYPE_IN_PLACE.
+
+2010-05-04 H.J. Lu <hongjiu.lu@intel.com>
+
+ Backport from mainline
+ 2010-05-04 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR middle-end/43671
+ * alias.c (true_dependence): Handle the same VALUE in x and mem.
+ (canon_true_dependence): Likewise.
+ (write_dependence_p): Likewise.
+
+2010-05-02 Uros Bizjak <ubizjak@gmail.com>
+
+ * config/i386/i386.c (ix86_target_string): Output 'flags', not 'isa',
+ when processing flag options.
+
+2010-04-30 Eric Botcazou <ebotcazou@adacore.com>
+
+ * tree-ssa-loop-ivopts.c (may_be_unaligned_p): Check the alignment of
+ the variable part of the offset as well. Use highest_pow2_factor for
+ all alignment checks.
+
+2010-04-30 Jakub Jelinek <jakub@redhat.com>
+
+ PR c/43893
+ * c-omp.c (c_finish_omp_for): Handle also EQ_EXPR.
+
+2010-04-29 Jakub Jelinek <jakub@redhat.com>
+
+ * BASE-VER: Set to 4.4.5.
+ * DEV-PHASE: Set to prerelease.
+
+2010-04-29 Release Manager
+
+ * GCC 4.4.4 released.
+
+2010-04-21 Jakub Jelinek <jakub@redhat.com>
+
+ 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.
+
+2010-04-20 Jakub Jelinek <jakub@redhat.com>
+
+ PR middle-end/43337
+ * tree-nested.c (convert_nonlocal_omp_clauses): OMP_CLAUSE_PRIVATE
+ with non-local decl doesn't need chain.
+
+2010-04-19 Jie Zhang <jie@codesourcery.com>
+
+ PR target/43662
+ * reginfo.c (reinit_regs): Set caller_save_initialized_p
+ to false.
+
+2010-04-19 Ira Rosen <irar@il.ibm.com>
+
+ PR tree-optimization/43771
+ * tree-vect-analyze.c (vect_supported_load_permutation_p): Check
+ that load permutation doesn't have gaps.
+
+2010-04-18 Eric Botcazou <ebotcazou@adacore.com>
+
+ PR tree-optimization/43769
+ * tree-sra.c (bitfield_overlaps_p): If the length of the element is
+ self-referential, try to compute an upper bound.
+
+2010-04-08 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ Backport from mainline:
+ 2009-12-05 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ PR ada/41912
+ * pa/linux-unwind.h (pa32_fallback_frame_state): Set fs->signal_frame
+ for signal frames.
+ * pa/hpux-unwind.h (pa32_fallback_frame_state): Likewise.
+
+2010-04-08 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
+
+ PR target/43643
+ * config/i386/gmon-sol2.c [__x86_64__]: Properly restore %rcx.
+
+2010-04-08 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
+
+ Backport from mainline:
+ 2010-03-22 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
+
+ PR target/38085
+ * config/i386/i386.c (x86_function_profiler)
+ [!NO_PROFILE_COUNTERS]: Fix typo.
+ * config/i386/gmon-sol2.c (_mcleanup) [__x86_64__]: Use call
+ instead of callq.
+
+2010-04-08 Richard Guenther <rguenther@suse.de>
+
+ PR middle-end/42956
+ * gimplify.c (gimple_fold_indirect_ref): Avoid generating
+ new ARRAY_REFs on variable size element or minimal index arrays.
+ * tree-ssa-loop-ivopts.c (find_interesting_uses_address): Use
+ gimple_fold_indirect_ref.
+
+2010-04-08 Wolfgang Gellerich <gellerich@de.ibm.com>
+
+ * config/s390/s390.c (override_options): Adjust the z10
+ defaults for max-unroll-times, max-completely-peeled-insns
+ and max-completely-peel-times.
+
+2010-04-08 Wolfgang Gellerich <gellerich@de.ibm.com>
+
+ * config/s390/s390.c (override_options): Set
+ default of max-pending-list-length to 256
+
+2010-04-08 Jakub Jelinek <jakub@redhat.com>
+
+ Backport from mainline:
+ 2010-03-29 Richard Guenther <rguenther@suse.de>
+
+ PR tree-optimization/43560
+ * tree-ssa-loop-im.c (ref_always_accessed_p): Add store_p
+ parameter.
+ (can_sm_ref_p): Treat stores to readonly locations as
+ trapping.
+
+ 2010-04-01 Richard Guenther <rguenther@suse.de>
+
+ PR tree-optimization/43607
+ * ipa-type-escape.c (check_call): Do not access non-existing
+ arguments.
+
+ 2010-04-01 Richard Guenther <rguenther@suse.de>
+
+ PR middle-end/43614
+ * tree-ssa-address.c (copy_mem_ref_info): Copy TREE_SIDE_EFFECTS
+ and TREE_THIS_VOLATILE.
+ (copy_ref_info): Likewise.
+ * tree-ssa-operands.c (get_tmr_operands): Check TREE_THIS_VOLATILE.
+ * tree.c (build7_stat): Ignore side-effects of all but arg5
+ for TARGET_MEM_REF. Set TREE_THIS_VOLATILE from arg5 of
+ TARGET_MEM_REF.
+
+2010-04-08 Richard Guenther <rguenther@suse.de>
+
+ PR tree-optimization/43186
+ * params.def (PARAM_MAX_UNROLL_ITERATIONS): New param.
+ * doc/invoke.texi (max-completely-peel-loop-nest-depth): Document.
+ * tree-ssa-loop-ivcanon.c (tree_unroll_loops_completely): Limit
+ unroller iterations.
+
+2010-04-07 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR target/43668
+ * config/i386/i386.c (setup_incoming_varargs_64): Align stack to
+ 16byte for FP register save area.
+
+2010-04-07 Richard Guenther <rguenther@suse.de>
+
+ PR tree-optimization/43629
+ * tree-ssa-ccp.c (likely_value): Properly look for constant
+ values. Reset all_undefined_operands if we have seen a
+ constant value.
+
2010-04-06 Jakub Jelinek <jakub@redhat.com>
PR target/43638
diff --git a/gcc/DATESTAMP b/gcc/DATESTAMP
index aa7db7710b9..761d57aedd2 100644
--- a/gcc/DATESTAMP
+++ b/gcc/DATESTAMP
@@ -1 +1 @@
-20100407
+20100517
diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog
index aa8baacd138..0ff5fb6d611 100644
--- a/gcc/ada/ChangeLog
+++ b/gcc/ada/ChangeLog
@@ -1,3 +1,7 @@
+2010-04-29 Release Manager
+
+ * GCC 4.4.4 released.
+
2010-02-27 Eric Botcazou <ebotcazou@adacore.com>
PR ada/42253
diff --git a/gcc/alias.c b/gcc/alias.c
index 69c8aa984c1..61ccc3db33e 100644
--- a/gcc/alias.c
+++ b/gcc/alias.c
@@ -2249,8 +2249,18 @@ true_dependence (const_rtx mem, enum machine_mode mem_mode, const_rtx x,
if (mem_mode == VOIDmode)
mem_mode = GET_MODE (mem);
- x_addr = get_addr (XEXP (x, 0));
- mem_addr = get_addr (XEXP (mem, 0));
+ x_addr = XEXP (x, 0);
+ mem_addr = XEXP (mem, 0);
+ if (!((GET_CODE (x_addr) == VALUE
+ && GET_CODE (mem_addr) != VALUE
+ && reg_mentioned_p (x_addr, mem_addr))
+ || (GET_CODE (x_addr) != VALUE
+ && GET_CODE (mem_addr) == VALUE
+ && reg_mentioned_p (mem_addr, x_addr))))
+ {
+ x_addr = get_addr (x_addr);
+ mem_addr = get_addr (mem_addr);
+ }
base = find_base_term (x_addr);
if (base && (GET_CODE (base) == LABEL_REF
@@ -2328,7 +2338,16 @@ canon_true_dependence (const_rtx mem, enum machine_mode mem_mode, rtx mem_addr,
return 1;
if (! x_addr)
- x_addr = get_addr (XEXP (x, 0));
+ {
+ x_addr = XEXP (x, 0);
+ if (!((GET_CODE (x_addr) == VALUE
+ && GET_CODE (mem_addr) != VALUE
+ && reg_mentioned_p (x_addr, mem_addr))
+ || (GET_CODE (x_addr) != VALUE
+ && GET_CODE (mem_addr) == VALUE
+ && reg_mentioned_p (mem_addr, x_addr))))
+ x_addr = get_addr (x_addr);
+ }
if (! base_alias_check (x_addr, mem_addr, GET_MODE (x), mem_mode))
return 0;
@@ -2394,8 +2413,18 @@ write_dependence_p (const_rtx mem, const_rtx x, int writep)
if (MEM_ADDR_SPACE (mem) != MEM_ADDR_SPACE (x))
return 1;
- x_addr = get_addr (XEXP (x, 0));
- mem_addr = get_addr (XEXP (mem, 0));
+ x_addr = XEXP (x, 0);
+ mem_addr = XEXP (mem, 0);
+ if (!((GET_CODE (x_addr) == VALUE
+ && GET_CODE (mem_addr) != VALUE
+ && reg_mentioned_p (x_addr, mem_addr))
+ || (GET_CODE (x_addr) != VALUE
+ && GET_CODE (mem_addr) == VALUE
+ && reg_mentioned_p (mem_addr, x_addr))))
+ {
+ x_addr = get_addr (x_addr);
+ mem_addr = get_addr (mem_addr);
+ }
if (! writep)
{
diff --git a/gcc/c-common.c b/gcc/c-common.c
index 2482cab85b7..2ec98cd7744 100644
--- a/gcc/c-common.c
+++ b/gcc/c-common.c
@@ -5976,10 +5976,12 @@ handle_aligned_attribute (tree *node, tree ARG_UNUSED (name), tree args,
}
else if (is_type)
{
+ if ((flags & (int) ATTR_FLAG_TYPE_IN_PLACE))
+ /* OK, modify the type in place. */;
/* If we have a TYPE_DECL, then copy the type, so that we
don't accidentally modify a builtin type. See pushdecl. */
- if (decl && TREE_TYPE (decl) != error_mark_node
- && DECL_ORIGINAL_TYPE (decl) == NULL_TREE)
+ else if (decl && TREE_TYPE (decl) != error_mark_node
+ && DECL_ORIGINAL_TYPE (decl) == NULL_TREE)
{
tree tt = TREE_TYPE (decl);
*type = build_variant_type_copy (*type);
@@ -5988,7 +5990,7 @@ handle_aligned_attribute (tree *node, tree ARG_UNUSED (name), tree args,
TREE_USED (*type) = TREE_USED (decl);
TREE_TYPE (decl) = *type;
}
- else if (!(flags & (int) ATTR_FLAG_TYPE_IN_PLACE))
+ else
*type = build_variant_type_copy (*type);
TYPE_ALIGN (*type) = (1 << i) * BITS_PER_UNIT;
diff --git a/gcc/c-omp.c b/gcc/c-omp.c
index 33f0a83e1a8..183ff36b105 100644
--- a/gcc/c-omp.c
+++ b/gcc/c-omp.c
@@ -1,7 +1,7 @@
/* This file contains routines to construct GNU OpenMP constructs,
called from parsing in the C and C++ front ends.
- Copyright (C) 2005, 2007, 2008, 2009 Free Software Foundation, Inc.
+ Copyright (C) 2005, 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
Contributed by Richard Henderson <rth@redhat.com>,
Diego Novillo <dnovillo@redhat.com>.
@@ -281,7 +281,8 @@ c_finish_omp_for (location_t locus, tree declv, tree initv, tree condv,
|| TREE_CODE (cond) == LE_EXPR
|| TREE_CODE (cond) == GT_EXPR
|| TREE_CODE (cond) == GE_EXPR
- || TREE_CODE (cond) == NE_EXPR)
+ || TREE_CODE (cond) == NE_EXPR
+ || TREE_CODE (cond) == EQ_EXPR)
{
tree op0 = TREE_OPERAND (cond, 0);
tree op1 = TREE_OPERAND (cond, 1);
@@ -326,18 +327,21 @@ c_finish_omp_for (location_t locus, tree declv, tree initv, tree condv,
cond_ok = true;
}
- if (TREE_CODE (cond) == NE_EXPR)
+ if (TREE_CODE (cond) == NE_EXPR
+ || TREE_CODE (cond) == EQ_EXPR)
{
if (!INTEGRAL_TYPE_P (TREE_TYPE (decl)))
cond_ok = false;
else if (operand_equal_p (TREE_OPERAND (cond, 1),
TYPE_MIN_VALUE (TREE_TYPE (decl)),
0))
- TREE_SET_CODE (cond, GT_EXPR);
+ TREE_SET_CODE (cond, TREE_CODE (cond) == NE_EXPR
+ ? GT_EXPR : LE_EXPR);
else if (operand_equal_p (TREE_OPERAND (cond, 1),
TYPE_MAX_VALUE (TREE_TYPE (decl)),
0))
- TREE_SET_CODE (cond, LT_EXPR);
+ TREE_SET_CODE (cond, TREE_CODE (cond) == NE_EXPR
+ ? LT_EXPR : GE_EXPR);
else
cond_ok = false;
}
diff --git a/gcc/config/i386/gmon-sol2.c b/gcc/config/i386/gmon-sol2.c
index d20762156a6..fb813a12d25 100644
--- a/gcc/config/i386/gmon-sol2.c
+++ b/gcc/config/i386/gmon-sol2.c
@@ -268,14 +268,14 @@ asm(".globl _mcount\n"
FROMPCINDEX (via the frame pointer. */
"\tmovq\t0x38(%rsp),%rdi\n"
"\tmovq\t0x8(%rbp),%rsi\n"
- "\tcallq\tinternal_mcount\n"
+ "\tcall\tinternal_mcount\n"
/* Restore the saved registers. */
"\tmovq\t0x30(%rsp),%r9\n"
"\tmovq\t0x28(%rsp),%r8\n"
"\tmovq\t0x20(%rsp),%rdi\n"
"\tmovq\t0x18(%rsp),%rsi\n"
"\tmovq\t0x10(%rsp),%rdx\n"
- "\tmovq\t0x08(%rsp),%rdx\n"
+ "\tmovq\t0x08(%rsp),%rcx\n"
"\tmovq\t(%rsp),%rax\n"
"\taddq\t$0x38,%rsp\n"
"\tretq\n"
diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c
index ccc6668d6da..2fbf1ebb5b4 100644
--- a/gcc/config/i386/i386.c
+++ b/gcc/config/i386/i386.c
@@ -1,6 +1,6 @@
/* Subroutines used for code generation on IA-32.
Copyright (C) 1988, 1992, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001,
- 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009
+ 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
Free Software Foundation, Inc.
This file is part of GCC.
@@ -2358,7 +2358,7 @@ ix86_target_string (int isa, int flags, const char *arch, const char *tune,
if (flags && add_nl_p)
{
opts[num++][0] = target_other;
- sprintf (target_other, "(other flags: 0x%x)", isa);
+ sprintf (target_other, "(other flags: 0x%x)", flags);
}
/* Add -fpmath= option. */
@@ -6588,6 +6588,10 @@ setup_incoming_varargs_64 (CUMULATIVE_ARGS *cum)
if (ix86_varargs_fpr_size)
{
+ /* Stack must be aligned to 16byte for FP register save area. */
+ if (crtl->stack_alignment_needed < 128)
+ crtl->stack_alignment_needed = 128;
+
/* Now emit code to save SSE registers. The AX parameter contains number
of SSE parameter registers used to call this function. We use
sse_prologue_save insn template that produces computed jump across
@@ -26833,7 +26837,7 @@ x86_function_profiler (FILE *file, int labelno ATTRIBUTE_UNUSED)
if (TARGET_64BIT)
{
#ifndef NO_PROFILE_COUNTERS
- fprintf (file, "\tleaq\t%sP%d@(%%rip),%%r11\n", LPREFIX, labelno);
+ fprintf (file, "\tleaq\t%sP%d(%%rip),%%r11\n", LPREFIX, labelno);
#endif
if (DEFAULT_ABI == SYSV_ABI && flag_pic)
diff --git a/gcc/config/pa/hpux-unwind.h b/gcc/config/pa/hpux-unwind.h
index cfce90be6ba..92061ec3677 100644
--- a/gcc/config/pa/hpux-unwind.h
+++ b/gcc/config/pa/hpux-unwind.h
@@ -351,6 +351,7 @@ pa_fallback_frame_state (struct _Unwind_Context *context,
fs->retaddr_column = DWARF_ALT_FRAME_RETURN_COLUMN;
UPDATE_FS_FOR_PC (fs, DWARF_ALT_FRAME_RETURN_COLUMN);
+ fs->signal_frame = 1;
return _URC_NO_REASON;
}
diff --git a/gcc/config/pa/linux-unwind.h b/gcc/config/pa/linux-unwind.h
index 733f772c1c7..a0560e97445 100644
--- a/gcc/config/pa/linux-unwind.h
+++ b/gcc/config/pa/linux-unwind.h
@@ -135,6 +135,7 @@ pa32_fallback_frame_state (struct _Unwind_Context *context,
fs->regs.reg[DWARF_ALT_FRAME_RETURN_COLUMN].loc.offset
= (long) &sc->sc_iaoq[0] - new_cfa;
fs->retaddr_column = DWARF_ALT_FRAME_RETURN_COLUMN;
+ fs->signal_frame = 1;
return _URC_NO_REASON;
}
#endif /* inhibit_libc */
diff --git a/gcc/config/rs6000/rs6000.c b/gcc/config/rs6000/rs6000.c
index 5e6f30183a9..05d03823b2d 100644
--- a/gcc/config/rs6000/rs6000.c
+++ b/gcc/config/rs6000/rs6000.c
@@ -759,7 +759,6 @@ static bool spe_func_has_64bit_regs_p (void);
static void emit_frame_save (rtx, rtx, enum machine_mode, unsigned int,
int, HOST_WIDE_INT);
static rtx gen_frame_mem_offset (enum machine_mode, rtx, int);
-static void rs6000_emit_allocate_stack (HOST_WIDE_INT, int, int);
static unsigned rs6000_hash_constant (rtx);
static unsigned toc_hash_function (const void *);
static int toc_hash_eq (const void *, const void *);
@@ -15548,13 +15547,11 @@ rs6000_emit_stack_tie (void)
}
/* Emit the correct code for allocating stack space, as insns.
- If COPY_R12, make sure a copy of the old frame is left in r12.
- If COPY_R11, make sure a copy of the old frame is left in r11,
- in preference to r12 if COPY_R12.
+ If COPY_REG, make sure a copy of the old frame is left there.
The generated code may use hard register 0 as a temporary. */
static void
-rs6000_emit_allocate_stack (HOST_WIDE_INT size, int copy_r12, int copy_r11)
+rs6000_emit_allocate_stack (HOST_WIDE_INT size, rtx copy_reg)
{
rtx insn;
rtx stack_reg = gen_rtx_REG (Pmode, STACK_POINTER_REGNUM);
@@ -15604,11 +15601,8 @@ rs6000_emit_allocate_stack (HOST_WIDE_INT size, int copy_r12, int copy_r11)
warning (0, "stack limit expression is not supported");
}
- if (copy_r12 || copy_r11)
- emit_move_insn (copy_r11
- ? gen_rtx_REG (Pmode, 11)
- : gen_rtx_REG (Pmode, 12),
- stack_reg);
+ if (copy_reg)
+ emit_move_insn (copy_reg, stack_reg);
if (size > 32767)
{
@@ -16180,20 +16174,33 @@ rs6000_emit_prologue (void)
? (!saving_GPRs_inline
&& info->spe_64bit_regs_used == 0)
: (!saving_FPRs_inline || !saving_GPRs_inline));
+ rtx copy_reg = need_r11 ? gen_rtx_REG (Pmode, 11) : NULL;
+
if (info->total_size < 32767)
sp_offset = info->total_size;
+ else if (need_r11)
+ frame_reg_rtx = copy_reg;
+ else if (info->cr_save_p
+ || info->lr_save_p
+ || info->first_fp_reg_save < 64
+ || info->first_gp_reg_save < 32
+ || info->altivec_size != 0
+ || info->vrsave_mask != 0
+ || crtl->calls_eh_return)
+ {
+ copy_reg = frame_ptr_rtx;
+ frame_reg_rtx = copy_reg;
+ }
else
- frame_reg_rtx = (need_r11
- ? gen_rtx_REG (Pmode, 11)
- : frame_ptr_rtx);
- rs6000_emit_allocate_stack (info->total_size,
- (frame_reg_rtx != sp_reg_rtx
- && (info->cr_save_p
- || info->lr_save_p
- || info->first_fp_reg_save < 64
- || info->first_gp_reg_save < 32
- )),
- need_r11);
+ {
+ /* The prologue won't be saving any regs so there is no need
+ to set up a frame register to access any frame save area.
+ We also won't be using sp_offset anywhere below, but set
+ the correct value anyway to protect against future
+ changes to this function. */
+ sp_offset = info->total_size;
+ }
+ rs6000_emit_allocate_stack (info->total_size, copy_reg);
if (frame_reg_rtx != sp_reg_rtx)
rs6000_emit_stack_tie ();
}
@@ -16627,16 +16634,19 @@ rs6000_emit_prologue (void)
if (!WORLD_SAVE_P (info) && info->push_p
&& !(DEFAULT_ABI == ABI_V4 || crtl->calls_eh_return))
{
+ rtx copy_reg = NULL;
+
if (info->total_size < 32767)
- sp_offset = info->total_size;
+ sp_offset = info->total_size;
+ else if (info->altivec_size != 0
+ || info->vrsave_mask != 0)
+ {
+ copy_reg = frame_ptr_rtx;
+ frame_reg_rtx = copy_reg;
+ }
else
- frame_reg_rtx = frame_ptr_rtx;
- rs6000_emit_allocate_stack (info->total_size,
- (frame_reg_rtx != sp_reg_rtx
- && ((info->altivec_size != 0)
- || (info->vrsave_mask != 0)
- )),
- FALSE);
+ sp_offset = info->total_size;
+ rs6000_emit_allocate_stack (info->total_size, copy_reg);
if (frame_reg_rtx != sp_reg_rtx)
rs6000_emit_stack_tie ();
}
diff --git a/gcc/config/s390/s390.c b/gcc/config/s390/s390.c
index e63688934e6..118a4e3c437 100644
--- a/gcc/config/s390/s390.c
+++ b/gcc/config/s390/s390.c
@@ -1650,9 +1650,19 @@ override_options (void)
target_flags |= MASK_LONG_DOUBLE_128;
#endif
- if (s390_tune == PROCESSOR_2097_Z10
- && !PARAM_SET_P (PARAM_MAX_UNROLLED_INSNS))
- set_param_value ("max-unrolled-insns", 100);
+ if (s390_tune == PROCESSOR_2097_Z10)
+ {
+ if (!PARAM_SET_P (PARAM_MAX_UNROLLED_INSNS))
+ set_param_value ("max-unrolled-insns", 100);
+ if (!PARAM_SET_P (PARAM_MAX_UNROLL_TIMES))
+ set_param_value ("max-unroll-times", 32);
+ if (!PARAM_SET_P (PARAM_MAX_COMPLETELY_PEELED_INSNS))
+ set_param_value ("max-completely-peeled-insns", 800);
+ if (!PARAM_SET_P (PARAM_MAX_COMPLETELY_PEEL_TIMES))
+ set_param_value ("max-completely-peel-times", 64);
+ }
+
+ set_param_value ("max-pending-list-length", 256);
}
/* Map for smallest class containing reg regno. */
diff --git a/gcc/config/sh/sh.c b/gcc/config/sh/sh.c
index 0861a857568..1c6e704c3a3 100644
--- a/gcc/config/sh/sh.c
+++ b/gcc/config/sh/sh.c
@@ -3884,6 +3884,7 @@ find_barrier (int num_mova, rtx mova, rtx from)
int si_limit;
int hi_limit;
rtx orig = from;
+ rtx last_symoff = NULL_RTX;
/* For HImode: range is 510, add 4 because pc counts from address of
second instruction after this one, subtract 2 for the jump instruction
@@ -4015,6 +4016,16 @@ find_barrier (int num_mova, rtx mova, rtx from)
{
switch (untangle_mova (&num_mova, &mova, from))
{
+ case 1:
+ if (flag_pic)
+ {
+ rtx src = SET_SRC (PATTERN (from));
+ if (GET_CODE (src) == CONST
+ && GET_CODE (XEXP (src, 0)) == UNSPEC
+ && XINT (XEXP (src, 0), 1) == UNSPEC_SYMOFF)
+ last_symoff = from;
+ }
+ break;
case 0: return find_barrier (0, 0, mova);
case 2:
{
@@ -4120,6 +4131,12 @@ find_barrier (int num_mova, rtx mova, rtx from)
so we'll make one. */
rtx label = gen_label_rtx ();
+ /* Don't emit a constant table in the middle of insns for
+ casesi_worker_2. This is a bit overkill but is enough
+ because casesi_worker_2 wouldn't appear so frequently. */
+ if (last_symoff)
+ from = last_symoff;
+
/* If we exceeded the range, then we must back up over the last
instruction we looked at. Otherwise, we just need to undo the
NEXT_INSN at the end of the loop. */
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index 60f08e11e72..d9f8b74c452 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,3 +1,7 @@
+2010-04-29 Release Manager
+
+ * GCC 4.4.4 released.
+
2010-03-30 Jason Merrill <jason@redhat.com>
PR c++/41185
diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi
index dcbaeaea54b..417ca57b897 100644
--- a/gcc/doc/invoke.texi
+++ b/gcc/doc/invoke.texi
@@ -7421,6 +7421,9 @@ The maximum number of insns of a completely peeled loop.
@item max-completely-peel-times
The maximum number of iterations of a loop to be suitable for complete peeling.
+@item max-completely-peel-loop-nest-depth
+The maximum depth of a loop nest suitable for complete peeling.
+
@item max-unswitch-insns
The maximum number of insns of an unswitched loop.
diff --git a/gcc/doc/standards.texi b/gcc/doc/standards.texi
index 471ea456e1f..173c4a46c06 100644
--- a/gcc/doc/standards.texi
+++ b/gcc/doc/standards.texi
@@ -183,7 +183,7 @@ working paper for the C++0x standard; the latest working paper is
available on the ISO C++ committee's web site at
@uref{http://www.open-std.org/jtc1/sc22/wg21/}. For information
regarding the C++0x features available in the experimental C++0x mode,
-see @uref{http://gcc.gnu.org/gcc-4.3/cxx0x_status.html}. To select this
+see @uref{http://gcc.gnu.org/projects/cxx0x.html}. To select this
standard in GCC, use the option @option{-std=c++0x}; to obtain all the
diagnostics required by the standard, you should also specify
@option{-pedantic} (or @option{-pedantic-errors} if you want them to be
diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog
index 5480098e721..e97017fdce9 100644
--- a/gcc/fortran/ChangeLog
+++ b/gcc/fortran/ChangeLog
@@ -1,3 +1,45 @@
+2010-05-14 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ PR fortran/44135
+ * fortran/interface.c (get_sym_storage_size): Use signed instead of
+ unsigned mpz_get_?i routines.
+
+2010-05-13 Jakub Jelinek <jakub@redhat.com>
+
+ PR fortran/44036
+ * openmp.c (resolve_omp_clauses): Allow procedure pointers in clause
+ variable lists.
+ * trans-openmp.c (gfc_omp_privatize_by_reference): Don't privatize
+ by reference dummy procedures or non-dummy procedure pointers.
+ (gfc_omp_predetermined_sharing): Return
+ OMP_CLAUSE_DEFAULT_FIRSTPRIVATE for dummy procedures.
+
+2010-04-29 Release Manager
+
+ * GCC 4.4.4 released.
+
+2010-04-21 Jakub Jelinek <jakub@redhat.com>
+
+ PR fortran/43836
+ * f95-lang.c (gfc_define_builtin): Set TREE_NOTHROW on
+ the decl.
+
+2010-04-20 Harald Anlauf <anlauf@gmx.de>
+
+ * intrinsic.c (sort_actual): Remove 'is' in error message.
+
+2010-04-20 Jakub Jelinek <jakub@redhat.com>
+
+ PR fortran/43339
+ * openmp.c (gfc_resolve_do_iterator): Only make iteration vars for
+ sequential loops private in the innermost containing task region.
+
+2010-04-07 Janne Blomqvist <jb@gcc.gnu.org>
+
+ PR fortran/43539
+ * gfortran.texi: Add section about representation of
+ LOGICAL variables.
+
2010-03-30 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR fortran/43409
diff --git a/gcc/fortran/f95-lang.c b/gcc/fortran/f95-lang.c
index b8f2d221801..98dccd929f8 100644
--- a/gcc/fortran/f95-lang.c
+++ b/gcc/fortran/f95-lang.c
@@ -1,5 +1,5 @@
/* gfortran backend interface
- Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008
+ Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2010
Free Software Foundation, Inc.
Contributed by Paul Brook.
@@ -687,6 +687,7 @@ gfc_define_builtin (const char *name,
library_name, NULL_TREE);
if (const_p)
TREE_READONLY (decl) = 1;
+ TREE_NOTHROW (decl) = 1;
built_in_decls[code] = decl;
implicit_built_in_decls[code] = decl;
diff --git a/gcc/fortran/gfortran.texi b/gcc/fortran/gfortran.texi
index af1d2961085..0512cb9e6fc 100644
--- a/gcc/fortran/gfortran.texi
+++ b/gcc/fortran/gfortran.texi
@@ -181,7 +181,7 @@ Part I: Invoking GNU Fortran
Part II: Language Reference
* Fortran 2003 and 2008 status:: Fortran 2003 and 2008 features supported by GNU Fortran.
-* Compiler Characteristics:: KIND type parameters supported.
+* Compiler Characteristics:: User-visible implementation details.
* Extensions:: Language extensions implemented by GNU Fortran.
* Intrinsic Procedures:: Intrinsic procedures supported by GNU Fortran.
* Intrinsic Modules:: Intrinsic modules supported by GNU Fortran.
@@ -914,14 +914,13 @@ made and you should only use it for experimental purposes.
@node Compiler Characteristics
@chapter Compiler Characteristics
-@c TODO: Formulate this introduction a little more generally once
-@c there is more here than KIND type parameters.
-
-This chapter describes certain characteristics of the GNU Fortran compiler,
-namely the KIND type parameter values supported.
+This chapter describes certain characteristics of the GNU Fortran
+compiler, that are not specified by the Fortran standard, but which
+might in some way or another become visible to the programmer.
@menu
* KIND Type Parameters::
+* Internal representation of LOGICAL variables::
@end menu
@@ -965,6 +964,33 @@ imaginary part are a real value of the given size). It is recommended to use
the @code{SELECT_*_KIND} intrinsics instead of the concrete values.
+@node Internal representation of LOGICAL variables
+@section Internal representation of LOGICAL variables
+@cindex logical, variable representation
+
+The Fortran standard does not specify how variables of @code{LOGICAL}
+type are represented, beyond requiring that @code{LOGICAL} variables
+of default kind have the same storage size as default @code{INTEGER}
+and @code{REAL} variables. The GNU Fortran internal representation is
+as follows.
+
+A @code{LOGICAL(KIND=N)} variable is represented as an
+@code{INTEGER(KIND=N)} variable, however, with only two permissible
+values: @code{1} for @code{.TRUE.} and @code{0} for
+@code{.FALSE.}. Any other integer value results in undefined behavior.
+
+Note that for mixed-language programming using the
+@code{ISO_C_BINDING} feature, there is a @code{C_BOOL} kind that can
+be used to create @code{LOGICAL(KIND=C_BOOL)} variables which are
+interoperable with the C99 _Bool type. The C99 _Bool type has an
+internal representation described in the C99 standard, which is
+identical to the above description, i.e. with 1 for true and 0 for
+false being the only permissible values. Thus the internal
+representation of @code{LOGICAL} variables in GNU Fortran is identical
+to C99 _Bool, except for a possible difference in storage size
+depending on the kind.
+
+
@c ---------------------------------------------------------------------
@c Extensions
@c ---------------------------------------------------------------------
diff --git a/gcc/fortran/interface.c b/gcc/fortran/interface.c
index 01ca2c773c0..f7ae52108d8 100644
--- a/gcc/fortran/interface.c
+++ b/gcc/fortran/interface.c
@@ -1625,8 +1625,8 @@ get_sym_storage_size (gfc_symbol *sym)
|| sym->as->lower[i]->expr_type != EXPR_CONSTANT)
return 0;
- elements *= mpz_get_ui (sym->as->upper[i]->value.integer)
- - mpz_get_ui (sym->as->lower[i]->value.integer) + 1L;
+ elements *= mpz_get_si (sym->as->upper[i]->value.integer)
+ - mpz_get_si (sym->as->lower[i]->value.integer) + 1L;
}
return strlen*elements;
diff --git a/gcc/fortran/intrinsic.c b/gcc/fortran/intrinsic.c
index 0dfc6398fcb..4987e4c84cf 100644
--- a/gcc/fortran/intrinsic.c
+++ b/gcc/fortran/intrinsic.c
@@ -3105,7 +3105,7 @@ keywords:
if (f->actual != NULL)
{
- gfc_error ("Argument '%s' is appears twice in call to '%s' at %L",
+ gfc_error ("Argument '%s' appears twice in call to '%s' at %L",
f->name, name, where);
return FAILURE;
}
diff --git a/gcc/fortran/openmp.c b/gcc/fortran/openmp.c
index b75a1e844cb..00b365f86ac 100644
--- a/gcc/fortran/openmp.c
+++ b/gcc/fortran/openmp.c
@@ -1,5 +1,5 @@
/* OpenMP directive matching and resolving.
- Copyright (C) 2005, 2006, 2007, 2008
+ Copyright (C) 2005, 2006, 2007, 2008, 2010
Free Software Foundation, Inc.
Contributed by Jakub Jelinek
@@ -812,6 +812,8 @@ resolve_omp_clauses (gfc_code *code)
if (el)
continue;
}
+ if (n->sym->attr.proc_pointer)
+ continue;
}
gfc_error ("Object '%s' is not a variable at %L", n->sym->name,
&code->loc);
@@ -1367,7 +1369,6 @@ gfc_resolve_omp_parallel_blocks (gfc_code *code, gfc_namespace *ns)
void
gfc_resolve_do_iterator (gfc_code *code, gfc_symbol *sym)
{
- struct omp_context *ctx;
int i = omp_current_do_collapse;
gfc_code *c = omp_current_do_code;
@@ -1386,21 +1387,21 @@ gfc_resolve_do_iterator (gfc_code *code, gfc_symbol *sym)
c = c->block->next;
}
- for (ctx = omp_current_ctx; ctx; ctx = ctx->previous)
- {
- if (pointer_set_contains (ctx->sharing_clauses, sym))
- continue;
+ if (omp_current_ctx == NULL)
+ return;
- if (! pointer_set_insert (ctx->private_iterators, sym))
- {
- gfc_omp_clauses *omp_clauses = ctx->code->ext.omp_clauses;
- gfc_namelist *p;
+ if (pointer_set_contains (omp_current_ctx->sharing_clauses, sym))
+ return;
- p = gfc_get_namelist ();
- p->sym = sym;
- p->next = omp_clauses->lists[OMP_LIST_PRIVATE];
- omp_clauses->lists[OMP_LIST_PRIVATE] = p;
- }
+ if (! pointer_set_insert (omp_current_ctx->private_iterators, sym))
+ {
+ gfc_omp_clauses *omp_clauses = omp_current_ctx->code->ext.omp_clauses;
+ gfc_namelist *p;
+
+ p = gfc_get_namelist ();
+ p->sym = sym;
+ p->next = omp_clauses->lists[OMP_LIST_PRIVATE];
+ omp_clauses->lists[OMP_LIST_PRIVATE] = p;
}
}
diff --git a/gcc/fortran/trans-openmp.c b/gcc/fortran/trans-openmp.c
index e6d8c44de81..bbb0497adff 100644
--- a/gcc/fortran/trans-openmp.c
+++ b/gcc/fortran/trans-openmp.c
@@ -56,7 +56,8 @@ gfc_omp_privatize_by_reference (const_tree decl)
if (GFC_POINTER_TYPE_P (type))
return false;
- if (!DECL_ARTIFICIAL (decl))
+ if (!DECL_ARTIFICIAL (decl)
+ && TREE_CODE (TREE_TYPE (type)) != FUNCTION_TYPE)
return true;
/* Some arrays are expanded as DECL_ARTIFICIAL pointers
@@ -95,6 +96,15 @@ gfc_omp_predetermined_sharing (tree decl)
== NULL)
return OMP_CLAUSE_DEFAULT_SHARED;
+ /* Dummy procedures aren't considered variables by OpenMP, thus are
+ disallowed in OpenMP clauses. They are represented as PARM_DECLs
+ in the middle-end, so return OMP_CLAUSE_DEFAULT_FIRSTPRIVATE here
+ to avoid complaining about their uses with default(none). */
+ if (TREE_CODE (decl) == PARM_DECL
+ && TREE_CODE (TREE_TYPE (decl)) == POINTER_TYPE
+ && TREE_CODE (TREE_TYPE (TREE_TYPE (decl))) == FUNCTION_TYPE)
+ return OMP_CLAUSE_DEFAULT_FIRSTPRIVATE;
+
/* COMMON and EQUIVALENCE decls are shared. They
are only referenced through DECL_VALUE_EXPR of the variables
contained in them. If those are privatized, they will not be
diff --git a/gcc/gimplify.c b/gcc/gimplify.c
index e2342c5e078..7600eb560e0 100644
--- a/gcc/gimplify.c
+++ b/gcc/gimplify.c
@@ -74,9 +74,10 @@ enum gimplify_omp_var_data
enum omp_region_type
{
ORT_WORKSHARE = 0,
- ORT_TASK = 1,
ORT_PARALLEL = 2,
- ORT_COMBINED_PARALLEL = 3
+ ORT_COMBINED_PARALLEL = 3,
+ ORT_TASK = 4,
+ ORT_UNTIED_TASK = 5
};
struct gimplify_omp_ctx
@@ -320,7 +321,7 @@ new_omp_context (enum omp_region_type region_type)
c->privatized_types = pointer_set_create ();
c->location = input_location;
c->region_type = region_type;
- if (region_type != ORT_TASK)
+ if ((region_type & ORT_TASK) == 0)
c->default_kind = OMP_CLAUSE_DEFAULT_SHARED;
else
c->default_kind = OMP_CLAUSE_DEFAULT_UNSPECIFIED;
@@ -3919,18 +3920,21 @@ gimple_fold_indirect_ref (tree t)
/* *(foo *)&fooarray => fooarray[0] */
if (TREE_CODE (optype) == ARRAY_TYPE
+ && TREE_CODE (TYPE_SIZE (TREE_TYPE (optype))) == INTEGER_CST
&& useless_type_conversion_p (type, TREE_TYPE (optype)))
{
tree type_domain = TYPE_DOMAIN (optype);
tree min_val = size_zero_node;
if (type_domain && TYPE_MIN_VALUE (type_domain))
min_val = TYPE_MIN_VALUE (type_domain);
- return build4 (ARRAY_REF, type, op, min_val, NULL_TREE, NULL_TREE);
+ if (TREE_CODE (min_val) == INTEGER_CST)
+ return build4 (ARRAY_REF, type, op, min_val, NULL_TREE, NULL_TREE);
}
}
/* *(foo *)fooarrptr => (*fooarrptr)[0] */
if (TREE_CODE (TREE_TYPE (subtype)) == ARRAY_TYPE
+ && TREE_CODE (TYPE_SIZE (TREE_TYPE (TREE_TYPE (subtype)))) == INTEGER_CST
&& useless_type_conversion_p (type, TREE_TYPE (TREE_TYPE (subtype))))
{
tree type_domain;
@@ -3942,7 +3946,8 @@ gimple_fold_indirect_ref (tree t)
type_domain = TYPE_DOMAIN (TREE_TYPE (sub));
if (type_domain && TYPE_MIN_VALUE (type_domain))
min_val = TYPE_MIN_VALUE (type_domain);
- return build4 (ARRAY_REF, type, sub, min_val, NULL_TREE, NULL_TREE);
+ if (TREE_CODE (min_val) == INTEGER_CST)
+ return build4 (ARRAY_REF, type, sub, min_val, NULL_TREE, NULL_TREE);
}
return NULL_TREE;
@@ -5286,6 +5291,32 @@ omp_add_variable (struct gimplify_omp_ctx *ctx, tree decl, unsigned int flags)
splay_tree_insert (ctx->variables, (splay_tree_key)decl, flags);
}
+/* Notice a threadprivate variable DECL used in OpenMP context CTX.
+ This just prints out diagnostics about threadprivate variable uses
+ in untied tasks. If DECL2 is non-NULL, prevent this warning
+ on that variable. */
+
+static bool
+omp_notice_threadprivate_variable (struct gimplify_omp_ctx *ctx, tree decl,
+ tree decl2)
+{
+ splay_tree_node n;
+
+ if (ctx->region_type != ORT_UNTIED_TASK)
+ return false;
+ n = splay_tree_lookup (ctx->variables, (splay_tree_key)decl);
+ if (n == NULL)
+ {
+ error ("threadprivate variable %qs used in untied task",
+ IDENTIFIER_POINTER (DECL_NAME (decl)));
+ error ("%Henclosing task", &ctx->location);
+ splay_tree_insert (ctx->variables, (splay_tree_key)decl, 0);
+ }
+ if (decl2)
+ splay_tree_insert (ctx->variables, (splay_tree_key)decl2, 0);
+ return false;
+}
+
/* Record the fact that DECL was used within the OpenMP context CTX.
IN_CODE is true when real code uses DECL, and false when we should
merely emit default(none) errors. Return true if DECL is going to
@@ -5306,14 +5337,14 @@ omp_notice_variable (struct gimplify_omp_ctx *ctx, tree decl, bool in_code)
if (is_global_var (decl))
{
if (DECL_THREAD_LOCAL_P (decl))
- return false;
+ return omp_notice_threadprivate_variable (ctx, decl, NULL_TREE);
if (DECL_HAS_VALUE_EXPR_P (decl))
{
tree value = get_base_address (DECL_VALUE_EXPR (decl));
if (value && DECL_P (value) && DECL_THREAD_LOCAL_P (value))
- return false;
+ return omp_notice_threadprivate_variable (ctx, decl, value);
}
}
@@ -5339,8 +5370,11 @@ omp_notice_variable (struct gimplify_omp_ctx *ctx, tree decl, bool in_code)
case OMP_CLAUSE_DEFAULT_NONE:
error ("%qs not specified in enclosing parallel",
IDENTIFIER_POINTER (DECL_NAME (decl)));
- error ("%Henclosing parallel", &ctx->location);
- /* FALLTHRU */
+ if ((ctx->region_type & ORT_TASK) != 0)
+ error ("%Henclosing task", &ctx->location);
+ else
+ error ("%Henclosing parallel", &ctx->location);
+ /* FALLTHRU */
case OMP_CLAUSE_DEFAULT_SHARED:
flags |= GOVD_SHARED;
break;
@@ -5352,7 +5386,7 @@ omp_notice_variable (struct gimplify_omp_ctx *ctx, tree decl, bool in_code)
break;
case OMP_CLAUSE_DEFAULT_UNSPECIFIED:
/* decl will be either GOVD_FIRSTPRIVATE or GOVD_SHARED. */
- gcc_assert (ctx->region_type == ORT_TASK);
+ gcc_assert ((ctx->region_type & ORT_TASK) != 0);
if (ctx->outer_context)
omp_notice_variable (ctx->outer_context, decl, in_code);
for (octx = ctx->outer_context; octx; octx = octx->outer_context)
@@ -5855,7 +5889,10 @@ gimplify_omp_task (tree *expr_p, gimple_seq *pre_p)
gimple_seq body = NULL;
struct gimplify_ctx gctx;
- gimplify_scan_omp_clauses (&OMP_TASK_CLAUSES (expr), pre_p, ORT_TASK);
+ gimplify_scan_omp_clauses (&OMP_TASK_CLAUSES (expr), pre_p,
+ find_omp_clause (OMP_TASK_CLAUSES (expr),
+ OMP_CLAUSE_UNTIED)
+ ? ORT_UNTIED_TASK : ORT_TASK);
push_gimplify_context (&gctx);
diff --git a/gcc/ipa-type-escape.c b/gcc/ipa-type-escape.c
index 48d95049b4f..306905370d9 100644
--- a/gcc/ipa-type-escape.c
+++ b/gcc/ipa-type-escape.c
@@ -1,6 +1,6 @@
/* Type based alias analysis.
- Copyright (C) 2004, 2005, 2006, 2007, 2008 Free Software Foundation,
- Inc.
+ Copyright (C) 2004, 2005, 2006, 2007, 2008, 2010
+ Free Software Foundation, Inc.
Contributed by Kenneth Zadeck <zadeck@naturalbridge.com>
This file is part of GCC.
@@ -1343,7 +1343,8 @@ check_call (gimple call)
if (TYPE_ARG_TYPES (TREE_TYPE (callee_t)))
{
for (arg_type = TYPE_ARG_TYPES (TREE_TYPE (callee_t)), i = 0;
- arg_type && TREE_VALUE (arg_type) != void_type_node;
+ arg_type && TREE_VALUE (arg_type) != void_type_node
+ && i < gimple_call_num_args (call);
arg_type = TREE_CHAIN (arg_type), i++)
{
tree operand = gimple_call_arg (call, i);
@@ -1365,7 +1366,7 @@ check_call (gimple call)
have to do this; the front ends should always process
the arg list from the TYPE_ARG_LIST. */
for (arg_type = DECL_ARGUMENTS (callee_t), i = 0;
- arg_type;
+ arg_type && i < gimple_call_num_args (call);
arg_type = TREE_CHAIN (arg_type), i++)
{
tree operand = gimple_call_arg (call, i);
diff --git a/gcc/java/ChangeLog b/gcc/java/ChangeLog
index 7de4b92a9c4..596be6cb33f 100644
--- a/gcc/java/ChangeLog
+++ b/gcc/java/ChangeLog
@@ -1,3 +1,7 @@
+2010-04-29 Release Manager
+
+ * GCC 4.4.4 released.
+
2010-01-21 Release Manager
* GCC 4.4.3 released.
diff --git a/gcc/objc/ChangeLog b/gcc/objc/ChangeLog
index 11e26a6d24b..194439631f5 100644
--- a/gcc/objc/ChangeLog
+++ b/gcc/objc/ChangeLog
@@ -1,3 +1,7 @@
+2010-04-29 Release Manager
+
+ * GCC 4.4.4 released.
+
2010-01-21 Release Manager
* GCC 4.4.3 released.
diff --git a/gcc/objcp/ChangeLog b/gcc/objcp/ChangeLog
index 72d9e12443a..c99450098fd 100644
--- a/gcc/objcp/ChangeLog
+++ b/gcc/objcp/ChangeLog
@@ -1,3 +1,7 @@
+2010-04-29 Release Manager
+
+ * GCC 4.4.4 released.
+
2010-01-21 Release Manager
* GCC 4.4.3 released.
diff --git a/gcc/omp-low.c b/gcc/omp-low.c
index fb5c0e2d44d..e852c3f3dc6 100644
--- a/gcc/omp-low.c
+++ b/gcc/omp-low.c
@@ -1421,10 +1421,6 @@ scan_sharing_clauses (tree clauses, omp_context *ctx)
break;
case OMP_CLAUSE_COPYPRIVATE:
- if (ctx->outer)
- scan_omp_op (&OMP_CLAUSE_DECL (c), ctx->outer);
- /* FALLTHRU */
-
case OMP_CLAUSE_COPYIN:
decl = OMP_CLAUSE_DECL (c);
by_ref = use_pointer_for_field (decl, NULL);
@@ -2671,7 +2667,7 @@ lower_copyprivate_clauses (tree clauses, gimple_seq *slist, gimple_seq *rlist,
for (c = clauses; c ; c = OMP_CLAUSE_CHAIN (c))
{
- tree var, ref, x;
+ tree var, new_var, ref, x;
bool by_ref;
if (OMP_CLAUSE_CODE (c) != OMP_CLAUSE_COPYPRIVATE)
@@ -2681,17 +2677,27 @@ lower_copyprivate_clauses (tree clauses, gimple_seq *slist, gimple_seq *rlist,
by_ref = use_pointer_for_field (var, NULL);
ref = build_sender_ref (var, ctx);
- x = lookup_decl_in_outer_ctx (var, ctx);
- x = by_ref ? build_fold_addr_expr (x) : x;
+ x = new_var = lookup_decl_in_outer_ctx (var, ctx);
+ if (by_ref)
+ {
+ x = build_fold_addr_expr (new_var);
+ x = fold_convert (TREE_TYPE (ref), x);
+ }
gimplify_assign (ref, x, slist);
- ref = build_receiver_ref (var, by_ref, ctx);
+ ref = build_receiver_ref (var, false, ctx);
+ if (by_ref)
+ {
+ ref = fold_convert (build_pointer_type (TREE_TYPE (new_var)), ref);
+ ref = build_fold_indirect_ref (ref);
+ }
if (is_reference (var))
{
+ ref = fold_convert (TREE_TYPE (new_var), ref);
ref = build_fold_indirect_ref (ref);
- var = build_fold_indirect_ref (var);
+ new_var = build_fold_indirect_ref (new_var);
}
- x = lang_hooks.decls.omp_clause_assign_op (c, var, ref);
+ x = lang_hooks.decls.omp_clause_assign_op (c, new_var, ref);
gimplify_and_add (x, rlist);
}
}
diff --git a/gcc/params.def b/gcc/params.def
index 3f7b2e77ed6..22a13759cda 100644
--- a/gcc/params.def
+++ b/gcc/params.def
@@ -292,6 +292,11 @@ DEFPARAM(PARAM_MAX_ONCE_PEELED_INSNS,
"max-once-peeled-insns",
"The maximum number of insns of a peeled loop that rolls only once",
400, 0, 0)
+/* The maximum depth of a loop nest we completely peel. */
+DEFPARAM(PARAM_MAX_UNROLL_ITERATIONS,
+ "max-completely-peel-loop-nest-depth",
+ "The maximum depth of a loop nest we completely peel",
+ 8, 0, 0)
/* The maximum number of insns of an unswitched loop. */
DEFPARAM(PARAM_MAX_UNSWITCH_INSNS,
diff --git a/gcc/po/ChangeLog b/gcc/po/ChangeLog
index 78044fcabc7..b121dd43d39 100644
--- a/gcc/po/ChangeLog
+++ b/gcc/po/ChangeLog
@@ -1,3 +1,7 @@
+2010-04-29 Release Manager
+
+ * GCC 4.4.4 released.
+
2010-01-21 Release Manager
* GCC 4.4.3 released.
diff --git a/gcc/reginfo.c b/gcc/reginfo.c
index e579c281aa3..f9340ebb6b0 100644
--- a/gcc/reginfo.c
+++ b/gcc/reginfo.c
@@ -667,6 +667,8 @@ void
reinit_regs (void)
{
init_regs ();
+ /* caller_save needs to be re-initialized. */
+ caller_save_initialized_p = false;
ira_init ();
}
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 05afbfb82f1..3a33d1ac437 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,123 @@
+2010-05-14 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ PR fortran/44135
+ * gfortran.dg/actual_array_interface_2.f90: New test.
+
+2010-05-13 Jakub Jelinek <jakub@redhat.com>
+
+ PR fortran/44036
+ * gfortran.dg/gomp/pr44036-1.f90: New test.
+ * gfortran.dg/gomp/pr44036-2.f90: New test.
+ * gfortran.dg/gomp/pr44036-3.f90: New test.
+
+ PR middle-end/44085
+ * gcc.dg/gomp/pr44085.c: New test.
+ * gfortran.dg/gomp/pr44085.f90: New test.
+
+2010-05-05 Jason Merrill <jason@redhat.com>
+
+ PR debug/43370
+ * g++.dg/ext/attrib39.C: New.
+
+2010-05-04 H.J. Lu <hongjiu.lu@intel.com>
+
+ Backport from mainline
+ 2010-05-04 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR middle-end/43671
+ * gcc.target/i386/pr43671.c: New.
+
+2010-05-03 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
+
+ * ada/acats/run_acats (which): New function.
+ (host_gnatchop, host_gnatmake): Use it.
+
+2010-04-30 DJ Delorie <dj@redhat.com>
+
+ * gcc.c-torture/execute/20100430-1.c: New test.
+
+2010-04-29 Release Manager
+
+ * GCC 4.4.4 released.
+
+2010-04-21 Jakub Jelinek <jakub@redhat.com>
+
+ PR fortran/43836
+ * gfortran.dg/gomp/pr43836.f90: New test.
+
+2010-04-20 Jakub Jelinek <jakub@redhat.com>
+
+ PR fortran/43339
+ * gfortran.dg/gomp/sharing-2.f90: Adjust for iteration vars
+ of sequential loops being private only in the innermost containing
+ task region.
+
+ PR middle-end/43337
+ * gfortran.dg/gomp/pr43337.f90: New test.
+
+2010-04-19 Jie Zhang <jie@codesourcery.com>
+
+ PR target/43662
+ * gcc.target/i386/pr43662.c: New test.
+
+2010-04-19 Ira Rosen <irar@il.ibm.com>
+
+ PR tree-optimization/43771
+ * g++.dg/vect/pr43771.cc: New test.
+
+2010-04-18 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gnat.dg/rep_clause5.ad[sb]: New test.
+ * gnat.dg/rep_clause5_pkg.ads: New helper.
+
+2010-04-12 Jakub Jelinek <jakub@redhat.com>
+
+ PR tree-optimization/43560
+ * gcc.c-torture/execute/pr43560.c: New test.
+
+2010-04-10 Jie Zhang <jie@codesourcery.com>
+
+ PR target/43417
+ * gcc.target/sh/pr43417.c: New test.
+
+2010-04-08 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
+
+ PR target/43643
+ * gcc.dg/pr43643.c: New test.
+
+2010-04-08 Richard Guenther <rguenther@suse.de>
+
+ PR middle-end/42956
+ * gcc.c-torture/compile/pr42956.c: New testcase.
+
+2010-04-08 Jakub Jelinek <jakub@redhat.com>
+
+ Backport from mainline:
+ 2010-03-29 Richard Guenther <rguenther@suse.de>
+
+ PR tree-optimization/43560
+ * gcc.dg/torture/pr43560.c: New testcase.
+
+ 2010-04-01 Richard Guenther <rguenther@suse.de>
+
+ PR middle-end/43614
+ * gcc.c-torture/compile/pr43614.c: New testcase.
+
+2010-04-08 Richard Guenther <rguenther@suse.de>
+
+ PR tree-optimization/43186
+ * gcc.c-torture/compile/pr43186.c: New testcase.
+
+2010-04-07 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR target/43668
+ * gcc.target/i386/pr43668.c: New.
+
+2010-04-07 Richard Guenther <rguenther@suse.de>
+
+ PR tree-optimization/43629
+ * gcc.c-torture/execute/pr43629.c: New testcase.
+
2010-04-06 Jakub Jelinek <jakub@redhat.com>
* gcc.target/s390/stackcheck1.c: Add dg-warning.
@@ -6,7 +126,7 @@
* gcc.target/i386/pr43638.c: New test.
2010-04-01 Janne Blomqvist <jb@gcc.gnu.org>
- Dominique d'Humieres <dominiq@lps.ens.fr>
+ Dominique d'Humieres <dominiq@lps.ens.fr>
PR libfortran/43605
* gfortran.dg/ftell_3.f90: Enhance test case by reading more.
diff --git a/gcc/testsuite/ada/acats/run_acats b/gcc/testsuite/ada/acats/run_acats
index 05f3ff57df5..9a9bdc2a318 100755
--- a/gcc/testsuite/ada/acats/run_acats
+++ b/gcc/testsuite/ada/acats/run_acats
@@ -5,10 +5,25 @@ if [ "$testdir" = "" ]; then
exit 1
fi
+# Provide which replacement.
+#
+# type -p is missing from Solaris 2 /bin/sh and /bin/ksh (ksh88), but both
+# ksh93 and bash have it.
+# type output format differs between ksh88 and ksh93, so avoid it if
+# type -p is present.
+# Fall back to whence which ksh88 and ksh93 provide, but bash does not.
+
+which () {
+ type -p $* 2>/dev/null && return 0
+ type $* 2>/dev/null | awk '{print $3}' && return 0
+ whence $* 2>/dev/null && return 0
+ return 1
+}
+
# Set up environment to use the Ada compiler from the object tree
-host_gnatchop=`type gnatchop | awk '{print $3}'`
-host_gnatmake=`type gnatmake | awk '{print $3}'`
+host_gnatchop=`which gnatchop`
+host_gnatmake=`which gnatmake`
ROOT=`${PWDCMD-pwd}`
BASE=`cd $ROOT/../../..; ${PWDCMD-pwd}`
diff --git a/gcc/testsuite/g++.dg/ext/attrib39.C b/gcc/testsuite/g++.dg/ext/attrib39.C
new file mode 100644
index 00000000000..22a742942cb
--- /dev/null
+++ b/gcc/testsuite/g++.dg/ext/attrib39.C
@@ -0,0 +1,9 @@
+// PR debug/43370
+// { dg-options "-g" }
+
+int fragile_block(void) {
+ typedef __attribute__ ((aligned (16))) struct {
+ int i;
+ } XmmUint16;
+ return 0;
+}
diff --git a/gcc/testsuite/g++.dg/vect/pr43771.cc b/gcc/testsuite/g++.dg/vect/pr43771.cc
new file mode 100644
index 00000000000..1a2d09aae93
--- /dev/null
+++ b/gcc/testsuite/g++.dg/vect/pr43771.cc
@@ -0,0 +1,14 @@
+/* { dg-do compile } */
+
+void KWayNodeRefine__(int nparts, int *gpwgts, int *badminpwgt, int
+*badmaxpwgt)
+{
+ int i;
+
+ for (i=0; i<nparts; i+=2) {
+ badminpwgt[i] = badminpwgt[i+1] = gpwgts[i]+gpwgts[i+1];
+ badmaxpwgt[i] = badmaxpwgt[i+1] = gpwgts[i]+gpwgts[i+1];
+ }
+}
+
+/* { dg-final { cleanup-tree-dump "vect" } } */
diff --git a/gcc/testsuite/g++.old-deja/g++.oliva/ChangeLog b/gcc/testsuite/g++.old-deja/g++.oliva/ChangeLog
index 6c3e26c53cf..57d08fe35f4 100644
--- a/gcc/testsuite/g++.old-deja/g++.oliva/ChangeLog
+++ b/gcc/testsuite/g++.old-deja/g++.oliva/ChangeLog
@@ -1,3 +1,7 @@
+2010-04-29 Release Manager
+
+ * GCC 4.4.4 released.
+
2010-01-21 Release Manager
* GCC 4.4.3 released.
diff --git a/gcc/testsuite/gcc.c-torture/compile/pr42956.c b/gcc/testsuite/gcc.c-torture/compile/pr42956.c
new file mode 100644
index 00000000000..f592d4be4d7
--- /dev/null
+++ b/gcc/testsuite/gcc.c-torture/compile/pr42956.c
@@ -0,0 +1,33 @@
+typedef const int cint;
+typedef struct {
+} Bounds;
+int ndim_, ncomp_, selectedcomp_, nregions_;
+void *voidregion_;
+typedef struct {
+ double diff, err, spread;
+} Errors;
+typedef const Errors cErrors;
+void Split(int iregion, int depth, int xregion)
+{
+ typedef struct {
+ double avg, err, spread, chisq;
+ double xmin[ndim_], xmax[ndim_];
+ } Result;
+ typedef struct region {
+ Result result[ncomp_];
+ } Region;
+ Errors errors[ncomp_];
+ int comp, ireg, xreg;
+ for( ireg = iregion, xreg = xregion; ireg < nregions_; ireg = xreg++ )
+ {
+ Result *result = ((Region *)voidregion_)[ireg].result;
+ for( comp = 0; comp < ncomp_; ++comp )
+ {
+ Result *r = &result[comp];
+ cErrors *e = &errors[comp];
+ double c = e->diff;
+ if( r->err > 0 ) r->err = r->err*e->err + c;
+ }
+ }
+}
+
diff --git a/gcc/testsuite/gcc.c-torture/compile/pr43186.c b/gcc/testsuite/gcc.c-torture/compile/pr43186.c
new file mode 100644
index 00000000000..7171e6ac03a
--- /dev/null
+++ b/gcc/testsuite/gcc.c-torture/compile/pr43186.c
@@ -0,0 +1,15 @@
+int n;
+
+void foo (int i)
+{
+ int a, b;
+
+ if (!i)
+ for (a = 1; a < 4; a++)
+ if (a)
+ for (b = 1; b < 3; b++)
+ foo (b);
+
+ n++;
+}
+
diff --git a/gcc/testsuite/gcc.c-torture/compile/pr43614.c b/gcc/testsuite/gcc.c-torture/compile/pr43614.c
new file mode 100644
index 00000000000..411b25dac48
--- /dev/null
+++ b/gcc/testsuite/gcc.c-torture/compile/pr43614.c
@@ -0,0 +1,27 @@
+volatile int g_2[7];
+
+void foo (unsigned);
+
+int main (void)
+{
+ int i_459 = 0;
+ int t2818;
+ int t2819;
+ volatile char *t2820;
+ int t2821;
+ volatile char *t2822;
+ int *t2823;
+ unsigned t2824;
+LL655:
+ t2822 = (volatile char *)g_2;
+ t2821 = i_459;
+ t2820 = t2822 + t2821;
+ t2823 = (int *)t2820;
+ t2824 = *t2823;
+ foo (t2824);
+ t2818 = i_459;
+ t2819 = t2818 + 1;
+ i_459 = t2819;
+ goto LL655;
+}
+
diff --git a/gcc/testsuite/gcc.c-torture/execute/20100430-1.c b/gcc/testsuite/gcc.c-torture/execute/20100430-1.c
new file mode 100644
index 00000000000..d29c6fa1a37
--- /dev/null
+++ b/gcc/testsuite/gcc.c-torture/execute/20100430-1.c
@@ -0,0 +1,51 @@
+/* This used to generate unaligned accesses at -O2 because of IVOPTS. */
+
+struct packed_struct
+{
+ struct packed_struct1
+ {
+ unsigned char cc11;
+ unsigned char cc12;
+ } __attribute__ ((packed)) pst1;
+ struct packed_struct2
+ {
+ unsigned char cc21;
+ unsigned char cc22;
+ unsigned short ss[104];
+ unsigned char cc23[13];
+ } __attribute__ ((packed)) pst2[4];
+} __attribute__ ((packed));
+
+typedef struct
+{
+ int ii;
+ struct packed_struct buf;
+} info_t;
+
+static unsigned short g;
+
+static void __attribute__((noinline))
+dummy (unsigned short s)
+{
+ g = s;
+}
+
+static int
+foo (info_t *info)
+{
+ int i, j;
+
+ for (i = 0; i < info->buf.pst1.cc11; i++)
+ for (j = 0; j < info->buf.pst2[i].cc22; j++)
+ dummy (info->buf.pst2[i].ss[j]);
+
+ return 0;
+}
+
+int main(void)
+{
+ info_t info;
+ info.buf.pst1.cc11 = 2;
+ info.buf.pst2[0].cc22 = info.buf.pst2[1].cc22 = 8;
+ return foo (&info);
+}
diff --git a/gcc/testsuite/gcc.c-torture/execute/pr43560.c b/gcc/testsuite/gcc.c-torture/execute/pr43560.c
new file mode 100644
index 00000000000..cb420c614cc
--- /dev/null
+++ b/gcc/testsuite/gcc.c-torture/execute/pr43560.c
@@ -0,0 +1,28 @@
+/* PR tree-optimization/43560 */
+
+struct S
+{
+ int a, b;
+ char c[10];
+};
+
+__attribute__ ((noinline)) void
+test (struct S *x)
+{
+ while (x->b > 1 && x->c[x->b - 1] == '/')
+ {
+ x->b--;
+ x->c[x->b] = '\0';
+ }
+}
+
+const struct S s = { 0, 0, "" };
+
+int
+main ()
+{
+ struct S *p;
+ asm ("" : "=r" (p) : "0" (&s));
+ test (p);
+ return 0;
+}
diff --git a/gcc/testsuite/gcc.c-torture/execute/pr43629.c b/gcc/testsuite/gcc.c-torture/execute/pr43629.c
new file mode 100644
index 00000000000..10c0196c89b
--- /dev/null
+++ b/gcc/testsuite/gcc.c-torture/execute/pr43629.c
@@ -0,0 +1,13 @@
+int flag;
+extern void abort (void);
+int main()
+{
+ int x;
+ if (flag)
+ x = -1;
+ else
+ x &= 0xff;
+ if (x & ~0xff)
+ abort ();
+ return 0;
+}
diff --git a/gcc/testsuite/gcc.dg/gomp/pr44085.c b/gcc/testsuite/gcc.dg/gomp/pr44085.c
new file mode 100644
index 00000000000..55462abe504
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/gomp/pr44085.c
@@ -0,0 +1,27 @@
+/* PR middle-end/44085 */
+/* { dg-do compile } */
+/* { dg-require-effective-target tls_native } */
+/* { dg-options "-fopenmp" } */
+
+int thr1, thr2;
+#pragma omp threadprivate (thr1, thr2)
+
+void
+foo (void)
+{
+#pragma omp task untied /* { dg-error "enclosing task" } */
+ {
+ thr1++; /* { dg-error "used in untied task" } */
+ thr2 |= 4; /* { dg-error "used in untied task" } */
+ }
+}
+
+void
+bar (void)
+{
+#pragma omp task
+ {
+ thr1++;
+ thr2 |= 4;
+ }
+}
diff --git a/gcc/testsuite/gcc.dg/pr43643.c b/gcc/testsuite/gcc.dg/pr43643.c
new file mode 100644
index 00000000000..7fbbfc255f3
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/pr43643.c
@@ -0,0 +1,24 @@
+/* Contributed by Jürgen Keil <jrgn.keil@googlemail.com> */
+
+/* { dg-do run } */
+/* { dg-require-profiling "-pg" } */
+/* { dg-options "-O2 -pg" } */
+
+extern char *strdup (const char *);
+
+void
+func(char *a, char *b, char *c)
+{
+ strdup(a);
+ strdup(b);
+ strdup(c);
+}
+
+int
+main(void)
+{
+ func("a", "b", "c");
+ return 0;
+}
+
+/* { dg-final { cleanup-profile-file } } */
diff --git a/gcc/testsuite/gcc.dg/torture/pr43560.c b/gcc/testsuite/gcc.dg/torture/pr43560.c
new file mode 100644
index 00000000000..44abb80b193
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/torture/pr43560.c
@@ -0,0 +1,34 @@
+/* { dg-do run } */
+/* { dg-require-weak "" } */
+
+int g_6[1][2] = {{1,1}};
+int g_34 = 0;
+int *const g_82 = &g_6[0][1];
+int *g_85[2][1] __attribute__((weak));
+
+void __attribute__((noinline))
+func_4 (int x)
+{
+ int i;
+ for (i = 0; i <= x; i++) {
+ if (g_6[0][1]) {
+ *g_82 = 1;
+ } else {
+ int **l_109 = &g_85[1][0];
+ if (&g_82 != l_109) {
+ } else {
+ *l_109 = &g_6[0][1];
+ }
+ *g_82 = 1;
+ }
+ }
+}
+
+int main (void)
+{
+ g_85[0][0] = &g_34;
+ g_85[1][0] = &g_34;
+ func_4(1);
+ return 0;
+}
+
diff --git a/gcc/testsuite/gcc.target/i386/pr43662.c b/gcc/testsuite/gcc.target/i386/pr43662.c
new file mode 100644
index 00000000000..246c8aafa6e
--- /dev/null
+++ b/gcc/testsuite/gcc.target/i386/pr43662.c
@@ -0,0 +1,24 @@
+/* { dg-do compile } */
+/* { dg-require-effective-target lp64 } */
+/* { dg-options "-O2" } */
+
+void __attribute__ ((ms_abi)) foo (void)
+{
+}
+
+typedef struct _IAVIStreamImpl
+{
+ int sInfo;
+ int has;
+} IAVIStreamImpl;
+
+extern int __attribute__ ((ms_abi)) aso (void *);
+extern int sre (void *);
+
+int AVIFILE_OpenCompressor (IAVIStreamImpl *This)
+{
+ if (This->has != 0)
+ aso (&This->has);
+ sre (&This->sInfo);
+ return 0;
+}
diff --git a/gcc/testsuite/gcc.target/i386/pr43668.c b/gcc/testsuite/gcc.target/i386/pr43668.c
new file mode 100644
index 00000000000..b6c2114fd07
--- /dev/null
+++ b/gcc/testsuite/gcc.target/i386/pr43668.c
@@ -0,0 +1,10 @@
+/* PR target/43668 */
+/* { dg-do run } */
+/* { dg-options "-fschedule-insns" } */
+
+int foo(int i, ...) {
+ return i;
+}
+int main() {
+ return foo(0, 0.0);
+}
diff --git a/gcc/testsuite/gcc.target/i386/pr43671.c b/gcc/testsuite/gcc.target/i386/pr43671.c
new file mode 100644
index 00000000000..958eaff4453
--- /dev/null
+++ b/gcc/testsuite/gcc.target/i386/pr43671.c
@@ -0,0 +1,27 @@
+/* { dg-do run } */
+/* { dg-require-effective-target ilp32 } */
+/* { dg-options "-mtune=i686 -O1 -fpeel-loops -fschedule-insns2 -ftree-vectorize -fsched2-use-superblocks" } */
+
+extern void abort ();
+
+int main ()
+{
+ struct {
+ char ca[16];
+ } s;
+ int i;
+
+ for (i = 0; i < 16; i++)
+ {
+ s.ca[i] = 5;
+ }
+
+
+ for (i = 0; i < 16; i++)
+ {
+ if (s.ca[i] != 5)
+ abort ();
+ }
+
+ return 0;
+}
diff --git a/gcc/testsuite/gcc.target/sh/pr43417.c b/gcc/testsuite/gcc.target/sh/pr43417.c
new file mode 100644
index 00000000000..081ff46b998
--- /dev/null
+++ b/gcc/testsuite/gcc.target/sh/pr43417.c
@@ -0,0 +1,36 @@
+/* { dg-do compile } */
+/* { dg-options "-O2 -m4" } */
+
+int pid_count = 0;
+main (int argc, char *argv[])
+{
+ unsigned int c;
+ unsigned long long maxbytes = 0;
+ extern char *optarg;
+ int i;
+ int pid_cntr;
+ int pid;
+ int pid_list[1000];
+ while ((c = getopt (argc, argv, "c:b:p:wvh")) != (-1))
+ {
+ switch ((char) c)
+ {
+ case 'b':
+ maxbytes = atoll (optarg);
+ }
+ }
+ pid = fork ();
+ while ((pid != 0) && (maxbytes > 1024 * 1024 * 1024))
+ {
+ maxbytes = maxbytes - (1024 * 1024 * 1024);
+ pid = fork ();
+ if (pid != 0)
+ pid_cntr++;
+ pid_list[i] = pid;
+ }
+ while ((pid_count < pid_cntr))
+ {
+ }
+ kill (pid_list[i], 9);
+}
+
diff --git a/gcc/testsuite/gfortran.dg/actual_array_interface_2.f90 b/gcc/testsuite/gfortran.dg/actual_array_interface_2.f90
new file mode 100644
index 00000000000..ae429b7d9a9
--- /dev/null
+++ b/gcc/testsuite/gfortran.dg/actual_array_interface_2.f90
@@ -0,0 +1,13 @@
+! { dg-do compile }
+program gprogram
+ implicit none
+ real, dimension(-2:0) :: my_arr
+ call fill_array(my_arr)
+ contains
+ subroutine fill_array(arr)
+ implicit none
+ real, dimension(-2:0), intent(out) :: arr
+ arr = 42
+ end subroutine fill_array
+end program gprogram
+
diff --git a/gcc/testsuite/gfortran.dg/gomp/pr43337.f90 b/gcc/testsuite/gfortran.dg/gomp/pr43337.f90
new file mode 100644
index 00000000000..f07ccb441be
--- /dev/null
+++ b/gcc/testsuite/gfortran.dg/gomp/pr43337.f90
@@ -0,0 +1,30 @@
+! PR middle-end/43337
+! { dg-do compile }
+! { dg-options "-fopenmp -O2 -g" }
+
+subroutine pr43337
+ integer :: a, b(10)
+ call foo (b)
+ call bar (b)
+contains
+ subroutine foo (b)
+ integer :: b(10)
+!$omp parallel if (.false.)
+!$omp task if (.false.) shared(b)
+ do a = 1, 10
+ b(a) = 1
+ end do
+!$omp end task
+!$omp end parallel
+ end subroutine foo
+ subroutine bar (b)
+ integer :: b(10)
+!$omp parallel if (.false.)
+!$omp parallel if (.false.)
+ do a = 1, 10
+ b(a) = 1
+ end do
+!$omp end parallel
+!$omp end parallel
+ end subroutine bar
+end subroutine pr43337
diff --git a/gcc/testsuite/gfortran.dg/gomp/pr43836.f90 b/gcc/testsuite/gfortran.dg/gomp/pr43836.f90
new file mode 100644
index 00000000000..cf86523f52b
--- /dev/null
+++ b/gcc/testsuite/gfortran.dg/gomp/pr43836.f90
@@ -0,0 +1,10 @@
+! PR fortran/43836
+! { dg-do compile }
+! { dg-options "-fopenmp -fexceptions -O2" }
+subroutine foo
+!$omp single
+!$omp parallel
+ call bar
+!$omp end parallel
+!$omp end single
+end subroutine foo
diff --git a/gcc/testsuite/gfortran.dg/gomp/pr44036-1.f90 b/gcc/testsuite/gfortran.dg/gomp/pr44036-1.f90
new file mode 100644
index 00000000000..a4633a3e9c0
--- /dev/null
+++ b/gcc/testsuite/gfortran.dg/gomp/pr44036-1.f90
@@ -0,0 +1,24 @@
+! PR fortran/44036
+! { dg-do compile }
+! { dg-options "-fopenmp" }
+subroutine foo(a, b)
+ integer, external :: a
+ integer, external, pointer :: b
+ integer, external :: c
+ integer, external, pointer :: d
+ integer :: x
+ x = 6
+!$omp parallel default(none) private (x)
+ x = a(4)
+!$omp end parallel
+!$omp parallel default(none) private (x) ! { dg-error "enclosing parallel" }
+ x = b(5) ! { dg-error "not specified in" }
+!$omp end parallel
+!$omp parallel default(none) private (x)
+ x = c(6)
+!$omp end parallel
+ d => a
+!$omp parallel default(none) private (x) ! { dg-error "enclosing parallel" }
+ x = d(7) ! { dg-error "not specified in" }
+!$omp end parallel
+end
diff --git a/gcc/testsuite/gfortran.dg/gomp/pr44036-2.f90 b/gcc/testsuite/gfortran.dg/gomp/pr44036-2.f90
new file mode 100644
index 00000000000..c9320f13912
--- /dev/null
+++ b/gcc/testsuite/gfortran.dg/gomp/pr44036-2.f90
@@ -0,0 +1,17 @@
+! PR fortran/44036
+! { dg-do compile }
+! { dg-options "-fopenmp" }
+subroutine foo(a, b)
+ integer, external :: a
+ integer, external, pointer :: b
+ integer, external :: c
+ integer, external, pointer :: d
+ integer :: x
+ d => a
+!$omp parallel default(none) private (x) firstprivate (b, d)
+ x = a(4)
+ x = b(5)
+ x = c(6)
+ x = d(7)
+!$omp end parallel
+end
diff --git a/gcc/testsuite/gfortran.dg/gomp/pr44036-3.f90 b/gcc/testsuite/gfortran.dg/gomp/pr44036-3.f90
new file mode 100644
index 00000000000..449cb9572d0
--- /dev/null
+++ b/gcc/testsuite/gfortran.dg/gomp/pr44036-3.f90
@@ -0,0 +1,13 @@
+! PR fortran/44036
+! { dg-do compile }
+! { dg-options "-fopenmp" }
+subroutine foo(a)
+ integer, external :: a, c
+ integer :: x
+!$omp parallel default(none) private (x) shared (a) ! { dg-error "is not a variable" }
+ x = a(6)
+!$omp end parallel
+!$omp parallel default(none) private (x) shared (c) ! { dg-error "is not a variable" }
+ x = c(6)
+!$omp end parallel
+end
diff --git a/gcc/testsuite/gfortran.dg/gomp/pr44085.f90 b/gcc/testsuite/gfortran.dg/gomp/pr44085.f90
new file mode 100644
index 00000000000..db8fbbc9544
--- /dev/null
+++ b/gcc/testsuite/gfortran.dg/gomp/pr44085.f90
@@ -0,0 +1,25 @@
+! PR middle-end/44085
+! { dg-do compile }
+! { dg-require-effective-target tls_native }
+! { dg-options "-fopenmp" }
+
+ integer, save :: thr1, thr2
+ integer :: thr3, thr4
+ common /thrs/ thr3, thr4
+!$omp threadprivate (thr1, thr2, /thrs/)
+
+!$omp task untied ! { dg-error "enclosing task" }
+ thr1 = thr1 + 1 ! { dg-error "used in untied task" }
+ thr2 = thr2 + 2 ! { dg-error "used in untied task" }
+ thr3 = thr3 + 3 ! { dg-error "used in untied task" }
+ thr4 = thr4 + 4 ! { dg-error "used in untied task" }
+!$omp end task
+
+!$omp task
+ thr1 = thr1 + 1
+ thr2 = thr2 + 2
+ thr3 = thr3 + 3
+ thr4 = thr4 + 4
+!$omp end task
+
+ end
diff --git a/gcc/testsuite/gfortran.dg/gomp/sharing-2.f90 b/gcc/testsuite/gfortran.dg/gomp/sharing-2.f90
index aede06c9c0f..b7d7e072975 100644
--- a/gcc/testsuite/gfortran.dg/gomp/sharing-2.f90
+++ b/gcc/testsuite/gfortran.dg/gomp/sharing-2.f90
@@ -28,10 +28,10 @@
end do
!$omp end single
!$omp end parallel
-!$omp parallel default (none) shared (a)
- i = 1
- j = 1
- k = 1
+!$omp parallel default (none) shared (a) ! { dg-error "enclosing parallel" }
+ i = 1 ! { dg-error "not specified in" }
+ j = 1 ! { dg-error "not specified in" }
+ k = 1 ! { dg-error "not specified in" }
!$omp parallel default (none) shared (a)
i = 1
j = 1
@@ -68,8 +68,8 @@
a(i, 1) = i + 1
end do
!$omp end parallel
-!$omp parallel default (none) shared (a)
- i = 1
+!$omp parallel default (none) shared (a) ! { dg-error "enclosing parallel" }
+ i = 1 ! { dg-error "not specified in" }
!$omp parallel default (none) shared (a, i)
i = 2
!$omp parallel default (none) shared (a)
diff --git a/gcc/testsuite/gnat.dg/rep_clause5.adb b/gcc/testsuite/gnat.dg/rep_clause5.adb
new file mode 100644
index 00000000000..7fdf264095a
--- /dev/null
+++ b/gcc/testsuite/gnat.dg/rep_clause5.adb
@@ -0,0 +1,39 @@
+-- { dg-do compile }
+-- { dg-options "-O" }
+
+package body Rep_Clause5 is
+
+ function To_LNumber(S : String) return LNumber_Type is
+ V : VString;
+ LV : Long_Type;
+ LN : LNumber_Type;
+ begin
+ LV := To_Long(V, 10);
+ LN := LNumber_Type(LV);
+ return LN;
+ end;
+
+ procedure Merge_Numbered(LNodes : in out LNodes_Ptr) is
+ T1 : Token_Type;
+ LNO : LNumber_Type;
+ begin
+ for X in LNodes.all'Range loop
+ T1 := LNodes(X).Line(0);
+ if T1.Token /= LEX_LF then
+ declare
+ S : String := Element(T1.SID);
+ begin
+ begin
+ LNO := To_LNumber(S);
+ exception
+ when Bad_Number =>
+ LNO := 0;
+ when Too_Large =>
+ LNO := 0;
+ end;
+ end;
+ end if;
+ end loop;
+ end;
+
+end Rep_Clause5;
diff --git a/gcc/testsuite/gnat.dg/rep_clause5.ads b/gcc/testsuite/gnat.dg/rep_clause5.ads
new file mode 100644
index 00000000000..986f893ecbb
--- /dev/null
+++ b/gcc/testsuite/gnat.dg/rep_clause5.ads
@@ -0,0 +1,12 @@
+with Rep_Clause5_Pkg; use Rep_Clause5_Pkg;
+
+package Rep_Clause5 is
+
+ Bad_Number : exception;
+ Too_Large : exception;
+
+ type LNumber_Type is range 0..99999;
+
+ procedure Merge_Numbered(LNodes : in out LNodes_Ptr);
+
+end Rep_Clause5;
diff --git a/gcc/testsuite/gnat.dg/rep_clause5_pkg.ads b/gcc/testsuite/gnat.dg/rep_clause5_pkg.ads
new file mode 100644
index 00000000000..e3496c4a2b7
--- /dev/null
+++ b/gcc/testsuite/gnat.dg/rep_clause5_pkg.ads
@@ -0,0 +1,383 @@
+package Rep_Clause5_Pkg is
+
+ type ID_Type is mod 65536;
+ type String_ID is new ID_Type;
+ type LNumber_Type is range 0..99999;
+ subtype Long_Type is Integer;
+
+ type Func_ID is (No_Func, FUN_SGN, FUN_EXP, FUN_LOG, FUN_LOG10);
+
+ type Token_Kind is (
+ No_Token,
+ LEX_BINARY,
+ LEX_SECTION,
+ LEX_003,
+ LEX_004,
+ LEX_005,
+ LEX_006,
+ LEX_007,
+ LEX_008,
+ LEX_009,
+ LEX_LF,
+ LEX_011,
+ LEX_012,
+ LEX_013,
+ LEX_014,
+ LEX_015,
+ LEX_016,
+ LEX_017,
+ LEX_018,
+ LEX_019,
+ LEX_020,
+ LEX_021,
+ LEX_022,
+ LEX_023,
+ LEX_024,
+ LEX_025,
+ LEX_026,
+ LEX_027,
+ LEX_028,
+ LEX_029,
+ LEX_030,
+ LEX_031,
+ LEX_032,
+ '!',
+ '"',
+ '#',
+ '$',
+ '%',
+ '&',
+ ''',
+ '(',
+ ')',
+ '*',
+ '+',
+ ',',
+ '-',
+ '.',
+ '/',
+ '0',
+ '1',
+ '2',
+ '3',
+ '4',
+ '5',
+ '6',
+ '7',
+ '8',
+ '9',
+ ':',
+ ';',
+ '<',
+ '=',
+ '>',
+ '?',
+ '@',
+ 'A',
+ 'B',
+ 'C',
+ 'D',
+ 'E',
+ 'F',
+ 'G',
+ 'H',
+ 'I',
+ 'J',
+ 'K',
+ 'L',
+ 'M',
+ 'N',
+ 'O',
+ 'P',
+ 'Q',
+ 'R',
+ 'S',
+ 'T',
+ 'U',
+ 'V',
+ 'W',
+ 'X',
+ 'Y',
+ 'Z',
+ '[',
+ '\',
+ ']',
+ '^',
+ '_',
+ '`',
+ 'a',
+ 'b',
+ 'c',
+ 'd',
+ 'e',
+ 'f',
+ 'g',
+ 'h',
+ 'i',
+ 'j',
+ 'k',
+ 'l',
+ 'm',
+ 'n',
+ 'o',
+ LEX_SFUN3,
+ LEX_SFUN2,
+ LEX_SFUN1,
+ LEX_SFUNN,
+ LEX_FUN3,
+ LEX_FUN2,
+ LEX_FUN1,
+ LEX_FUNN,
+ 'x',
+ 'y',
+ 'z',
+ '{',
+ '|',
+ '}',
+ '~',
+ LEX_CRTA,
+ LEX_ISNULL,
+ LEX_USING,
+ LEX_HANDLE,
+ LEX_CALLX,
+ LEX_COMPLEX,
+ LEX_FIXED,
+ LEX_ENV,
+ LEX_SPARSE,
+ LEX_SUBROUTINE,
+ LEX_CALL,
+ LEX_BOX,
+ LEX_VLINE,
+ LEX_HLINE,
+ LEX_MAXLENGTH,
+ LEX_DLENGTH,
+ LEX_INPUT,
+ LEX_INITIALIZE,
+ LEX_OUTPUT,
+ LEX_UNLINK,
+ LEX_SEEK,
+ LEX_EXIT,
+ LEX_NOT,
+ LEX_COMMON,
+ LEX_CHAIN,
+ LEX_DEF,
+ LEX_ARITY,
+ LEX_RESUME,
+ LEX_PIC_S,
+ LEX_BG,
+ LEX_FG,
+ LEX_PC,
+ LEX_CRT,
+ LEX_ENUM,
+ LEX_DECLARE,
+ LEX_CURSOR,
+ LEX_DROP,
+ LEX_CURRENT,
+ LEX_ISOLATION,
+ LEX_SET,
+ LEX_TRANSACTION,
+ LEX_COMMIT,
+ LEX_ABORT,
+ LEX_BEGIN,
+ LEX_PREVIOUS,
+ LEX_LAST,
+ LEX_FIRST,
+ LEX_KEY,
+ LEX_START,
+ LEX_REWRITE,
+ LEX_INDEX,
+ LEX_SECONDARY,
+ LEX_PRIMARY,
+ LEX_COLUMN,
+ LEX_TEMP,
+ LEX_TABLE,
+ LEX_CREATE,
+ LEX_HASH,
+ LEX_BTREE,
+ LEX_UPDATE,
+ LEX_ERROR,
+ LEX_ACCEPT,
+ LEX_AVG,
+ LEX_MAX,
+ LEX_MIN,
+ LEX_FIELD,
+ LEX_RESTORE,
+ LEX_END,
+ LEX_STEP,
+ LEX_NEXT,
+ LEX_FOR,
+ LEX_RETURN,
+ LEX_GOSUB,
+ LEX_RANGE,
+ LEX_EXPON,
+ LEX_XOR,
+ LEX_OR,
+ LEX_AND,
+ LEX_SHIFTR,
+ LEX_GE,
+ LEX_NE,
+ LEX_SHIFTL,
+ LEX_LE,
+ LEX_VARYING,
+ LEX_LENGTH,
+ LEX_PRINT,
+ LEX_IF,
+ LEX_GOTO,
+ LEX_ON,
+ LEX_THEN,
+ LEX_DELETE,
+ LEX_TO,
+ LEX_SEQUENCE,
+ LEX_NONUNIQUE,
+ LEX_UNIQUE,
+ LEX_FILE,
+ LEX_CLOSE,
+ LEX_OPEN,
+ LEX_DATABASE,
+ LEX_RECORD,
+ LEX_DATA,
+ LEX_WRITE,
+ LEX_READ,
+ LEX_STOP,
+ LEX_LET,
+ LEX_MOD,
+ LEX_LONG,
+ LEX_DIM,
+ LEX_SHORT,
+ LEX_REM,
+ LEX_SHELL,
+ LEX_TOKEN,
+ LEX_FLOAT,
+ LEX_SIDENT,
+ LEX_INLREM,
+ LEX_ENDLIT,
+ LEX_STRLIT,
+ LEX_IDENT,
+ LEX_LNUMBER,
+ LEX_HEX,
+ LEX_NUMBER,
+ LEX_EOF,
+ LEX_QUIT,
+ LEX_LIST,
+ LEX_REMOVE,
+ LEX_RENUMBER,
+ LEX_CONTINUE,
+ LEX_RUN,
+ LEX_MERGE,
+ LEX_ENTER,
+ LEX_NEW,
+ LEX_RESET,
+ LEX_SYMTAB,
+ LEX_CLS,
+ LEX_EDIT,
+ LEX_SAVE,
+ LEX_RESAVE,
+ LEX_LOAD,
+ LEX_NAME,
+ LEX_LISTP,
+ LEX_SHOW,
+ LEX_STACK,
+ LEX_STATUS,
+ LEX_CACHE,
+ LEX_INSPECT,
+ LEX_STOW,
+ LEX_PKGRUN,
+ LEX_POP,
+ LEX_CHECK,
+ LEX_INSERT,
+ LEX_INTO,
+ LEX_VALUES,
+ LEX_NULL,
+ LEX_WHERE,
+ LEX_FROM,
+ LEX_EXEC,
+ LEX_SELECT,
+ LEX_AS,
+ LEX_ALL,
+ LEX_BY,
+ LEX_CROSS,
+ LEX_DESC,
+ LEX_FULL,
+ LEX_GROUP,
+ LEX_INNER,
+ LEX_JOIN,
+ LEX_LEFT,
+ LEX_LIMIT,
+ LEX_NATURAL,
+ LEX_OFFSET,
+ LEX_ORDER,
+ LEX_OUTER,
+ LEX_RIGHT,
+ LEX_FETCH,
+ LEX_DISTINCT,
+ LEX_DEFAULT,
+ LEX_RETURNING,
+ LEX_LEVEL,
+ LEX_COMMITTED,
+ LEX_SERIALIZABLE,
+ LEX_ONLY,
+ LEX_HOLD,
+ LEX_FORWARD,
+ LEX_WITH,
+ LEX_PRIOR,
+ LEX_RELATIVE,
+ LEX_BACKWARD,
+ LEX_OF,
+ LEX_SCROLL,
+ LEX_NOWAIT,
+ LEX_HAVING,
+ LEX_END_TOKENS
+ );
+
+ type Aux_Kind is (No_Aux, SID_Aux, FID_Aux, LNO_Aux);
+
+ type Token_Type(Aux : Aux_Kind := No_Aux) is
+ record
+ Token : Token_Kind := No_Token;
+ case Aux is
+ when SID_Aux =>
+ SID : String_ID;
+ when FID_Aux =>
+ FID : Func_ID;
+ when LNO_Aux =>
+ LNO : LNumber_Type;
+ when No_Aux =>
+ null;
+ end case;
+ end record;
+
+ for Token_Type use
+ record
+ Aux at 0 range 0..2;
+ Token at 0 range 3..12;
+ SID at 0 range 16..31;
+ FID at 0 range 16..31;
+ LNO at 0 range 13..31;
+ end record;
+
+ type Tokens_Index is range 0..999999;
+ type Token_Array is array(Tokens_Index range <>) of Token_Type;
+ type Token_Line is access all Token_Array;
+
+ type Line_Node is
+ record
+ Line : Token_Line;
+ LNO : LNumber_Type := 0;
+ Numbered : Boolean := False;
+ end record;
+
+ type Nodes_Index is range 0..999999;
+ type LNodes_Array is array(Nodes_Index range <>) of Line_Node;
+ type LNodes_Ptr is access all LNodes_Array;
+
+ type VString is
+ record
+ Max_Length : Natural := 0;
+ Fixed : Boolean := False;
+ end record;
+
+ function To_Long(Object : VString; Radix : Natural) return Long_Type;
+
+ function Element (V : String_ID) return String;
+
+end Rep_Clause5_Pkg;
diff --git a/gcc/tree-nested.c b/gcc/tree-nested.c
index 8f9fec58cf6..9f52fc52c74 100644
--- a/gcc/tree-nested.c
+++ b/gcc/tree-nested.c
@@ -1,5 +1,6 @@
/* Nested function decomposition for GIMPLE.
- Copyright (C) 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
+ Copyright (C) 2004, 2005, 2006, 2007, 2008, 2010
+ Free Software Foundation, Inc.
This file is part of GCC.
@@ -1040,7 +1041,8 @@ convert_nonlocal_omp_clauses (tree *pclauses, struct walk_stmt_info *wi)
{
bitmap_set_bit (new_suppress, DECL_UID (decl));
OMP_CLAUSE_DECL (clause) = get_nonlocal_debug_decl (info, decl);
- need_chain = true;
+ if (OMP_CLAUSE_CODE (clause) != OMP_CLAUSE_PRIVATE)
+ need_chain = true;
}
break;
diff --git a/gcc/tree-sra.c b/gcc/tree-sra.c
index 6149ff551f9..b693ddd178d 100644
--- a/gcc/tree-sra.c
+++ b/gcc/tree-sra.c
@@ -2933,6 +2933,12 @@ bitfield_overlaps_p (tree blen, tree bpos, struct sra_elt *fld,
else
gcc_unreachable ();
+ if (CONTAINS_PLACEHOLDER_P (flen))
+ flen = size_binop (MULT_EXPR,
+ fold_convert (bitsizetype,
+ lang_hooks.types.max_size (fld->type)),
+ bitsize_unit_node);
+
gcc_assert (host_integerp (blen, 1)
&& host_integerp (bpos, 1)
&& host_integerp (flen, 1)
diff --git a/gcc/tree-ssa-address.c b/gcc/tree-ssa-address.c
index db5afa50a1c..1084c78ed0f 100644
--- a/gcc/tree-ssa-address.c
+++ b/gcc/tree-ssa-address.c
@@ -769,6 +769,8 @@ copy_mem_ref_info (tree to, tree from)
/* And the info about the original reference. */
TMR_ORIGINAL (to) = TMR_ORIGINAL (from);
+ TREE_SIDE_EFFECTS (to) = TREE_SIDE_EFFECTS (from);
+ TREE_THIS_VOLATILE (to) = TREE_THIS_VOLATILE (from);
}
/* Move constants in target_mem_ref REF to offset. Returns the new target
diff --git a/gcc/tree-ssa-ccp.c b/gcc/tree-ssa-ccp.c
index 4b978e0c7af..c46ddb6bad5 100644
--- a/gcc/tree-ssa-ccp.c
+++ b/gcc/tree-ssa-ccp.c
@@ -505,6 +505,7 @@ likely_value (gimple stmt)
bool has_constant_operand, has_undefined_operand, all_undefined_operands;
tree use;
ssa_op_iter iter;
+ unsigned i;
enum gimple_code code = gimple_code (stmt);
@@ -559,6 +560,22 @@ likely_value (gimple stmt)
has_constant_operand = true;
}
+ /* There may be constants in regular rhs operands. For calls we
+ have to ignore lhs, fndecl and static chain, otherwise only
+ the lhs. */
+ for (i = (is_gimple_call (stmt) ? 2 : 0) + gimple_has_lhs (stmt);
+ i < gimple_num_ops (stmt); ++i)
+ {
+ tree op = gimple_op (stmt, i);
+ if (!op || TREE_CODE (op) == SSA_NAME)
+ continue;
+ if (is_gimple_min_invariant (op))
+ has_constant_operand = true;
+ }
+
+ if (has_constant_operand)
+ all_undefined_operands = false;
+
/* If the operation combines operands like COMPLEX_EXPR make sure to
not mark the result UNDEFINED if only one part of the result is
undefined. */
diff --git a/gcc/tree-ssa-loop-im.c b/gcc/tree-ssa-loop-im.c
index 65c0b0d0b6f..eecb6206f45 100644
--- a/gcc/tree-ssa-loop-im.c
+++ b/gcc/tree-ssa-loop-im.c
@@ -1887,16 +1887,22 @@ hoist_memory_references (struct loop *loop, bitmap mem_refs,
}
}
-/* Returns true if REF is always accessed in LOOP. */
+/* Returns true if REF is always accessed in LOOP. If STORED_P is true
+ make sure REF is always stored to in LOOP. */
static bool
-ref_always_accessed_p (struct loop *loop, mem_ref_p ref)
+ref_always_accessed_p (struct loop *loop, mem_ref_p ref, bool stored_p)
{
VEC (mem_ref_loc_p, heap) *locs = NULL;
unsigned i;
mem_ref_loc_p loc;
bool ret = false;
struct loop *must_exec;
+ tree base;
+
+ base = get_base_address (ref->mem);
+ if (INDIRECT_REF_P (base))
+ base = TREE_OPERAND (base, 0);
get_all_locs_in_loop (loop, ref, &locs);
for (i = 0; VEC_iterate (mem_ref_loc_p, locs, i, loc); i++)
@@ -1904,6 +1910,22 @@ ref_always_accessed_p (struct loop *loop, mem_ref_p ref)
if (!get_lim_data (loc->stmt))
continue;
+ /* If we require an always executed store make sure the statement
+ stores to the reference. */
+ if (stored_p)
+ {
+ tree lhs;
+ if (!gimple_get_lhs (loc->stmt))
+ continue;
+ lhs = get_base_address (gimple_get_lhs (loc->stmt));
+ if (!lhs)
+ continue;
+ if (INDIRECT_REF_P (lhs))
+ lhs = TREE_OPERAND (lhs, 0);
+ if (lhs != base)
+ continue;
+ }
+
must_exec = get_lim_data (loc->stmt)->always_executed_in;
if (!must_exec)
continue;
@@ -2041,6 +2063,8 @@ ref_indep_loop_p (struct loop *loop, mem_ref_p ref)
static bool
can_sm_ref_p (struct loop *loop, mem_ref_p ref)
{
+ tree base;
+
/* Unless the reference is stored in the loop, there is nothing to do. */
if (!bitmap_bit_p (ref->stored, loop->num))
return false;
@@ -2051,9 +2075,14 @@ can_sm_ref_p (struct loop *loop, mem_ref_p ref)
|| !for_each_index (&ref->mem, may_move_till, loop))
return false;
- /* If it can trap, it must be always executed in LOOP. */
- if (tree_could_trap_p (ref->mem)
- && !ref_always_accessed_p (loop, ref))
+ /* If it can trap, it must be always executed in LOOP.
+ Readonly memory locations may trap when storing to them, but
+ tree_could_trap_p is a predicate for rvalues, so check that
+ explicitly. */
+ base = get_base_address (ref->mem);
+ if ((tree_could_trap_p (ref->mem)
+ || (DECL_P (base) && TREE_READONLY (base)))
+ && !ref_always_accessed_p (loop, ref, true))
return false;
/* And it must be independent on all other memory references
diff --git a/gcc/tree-ssa-loop-ivcanon.c b/gcc/tree-ssa-loop-ivcanon.c
index e278c55b08b..edac10ef8a0 100644
--- a/gcc/tree-ssa-loop-ivcanon.c
+++ b/gcc/tree-ssa-loop-ivcanon.c
@@ -352,6 +352,7 @@ tree_unroll_loops_completely (bool may_increase_size, bool unroll_outer)
struct loop *loop;
bool changed;
enum unroll_level ul;
+ int iteration = 0;
do
{
@@ -384,7 +385,8 @@ tree_unroll_loops_completely (bool may_increase_size, bool unroll_outer)
scev_reset ();
}
}
- while (changed);
+ while (changed
+ && ++iteration <= PARAM_VALUE (PARAM_MAX_UNROLL_ITERATIONS));
return 0;
}
diff --git a/gcc/tree-ssa-loop-ivopts.c b/gcc/tree-ssa-loop-ivopts.c
index 8e23e21b111..1586e7dfcf8 100644
--- a/gcc/tree-ssa-loop-ivopts.c
+++ b/gcc/tree-ssa-loop-ivopts.c
@@ -1525,16 +1525,18 @@ may_be_unaligned_p (tree ref, tree step)
if (mode != BLKmode)
{
- double_int mul;
- tree al = build_int_cst (TREE_TYPE (step),
- GET_MODE_ALIGNMENT (mode) / BITS_PER_UNIT);
+ unsigned mode_align = GET_MODE_ALIGNMENT (mode);
- if (base_align < GET_MODE_ALIGNMENT (mode)
- || bitpos % GET_MODE_ALIGNMENT (mode) != 0
- || bitpos % BITS_PER_UNIT != 0)
+ if (base_align < mode_align
+ || (bitpos % mode_align) != 0
+ || (bitpos % BITS_PER_UNIT) != 0)
return true;
-
- if (!constant_multiple_of (step, al, &mul))
+
+ if (toffset
+ && (highest_pow2_factor (toffset) * BITS_PER_UNIT) < mode_align)
+ return true;
+
+ if ((highest_pow2_factor (step) * BITS_PER_UNIT) < mode_align)
return true;
}
@@ -1674,7 +1676,11 @@ find_interesting_uses_address (struct ivopts_data *data, gimple stmt, tree *op_p
while (handled_component_p (*ref))
ref = &TREE_OPERAND (*ref, 0);
if (TREE_CODE (*ref) == INDIRECT_REF)
- *ref = fold_indirect_ref (*ref);
+ {
+ tree tem = gimple_fold_indirect_ref (TREE_OPERAND (*ref, 0));
+ if (tem)
+ *ref = tem;
+ }
}
}
@@ -5329,6 +5335,8 @@ copy_ref_info (tree new_ref, tree old_ref)
{
TMR_ORIGINAL (new_ref) = unshare_and_remove_ssa_names (old_ref);
TMR_TAG (new_ref) = get_ref_tag (old_ref, TMR_ORIGINAL (new_ref));
+ TREE_SIDE_EFFECTS (new_ref) = TREE_SIDE_EFFECTS (old_ref);
+ TREE_THIS_VOLATILE (new_ref) = TREE_THIS_VOLATILE (old_ref);
}
}
diff --git a/gcc/tree-ssa-operands.c b/gcc/tree-ssa-operands.c
index a762f5f9b75..512c58921be 100644
--- a/gcc/tree-ssa-operands.c
+++ b/gcc/tree-ssa-operands.c
@@ -1606,6 +1606,9 @@ get_tmr_operands (gimple stmt, tree expr, int flags)
/* Mark the statement as having memory operands. */
gimple_set_references_memory (stmt, true);
+ if (TREE_THIS_VOLATILE (expr))
+ gimple_set_has_volatile_ops (stmt, true);
+
/* First record the real operands. */
get_expr_operands (stmt, &TMR_BASE (expr), opf_use);
get_expr_operands (stmt, &TMR_INDEX (expr), opf_use);
diff --git a/gcc/tree-vect-analyze.c b/gcc/tree-vect-analyze.c
index 8bc9de4a6bf..8174851b729 100644
--- a/gcc/tree-vect-analyze.c
+++ b/gcc/tree-vect-analyze.c
@@ -3260,6 +3260,10 @@ vect_supported_load_permutation_p (slp_instance slp_instn, int group_size,
SET_BIT (load_index, prev);
}
+ for (j = 0; j < group_size; j++)
+ if (!TEST_BIT (load_index, j))
+ return false;
+
sbitmap_free (load_index);
if (supported && i == group_size * group_size
diff --git a/gcc/tree.c b/gcc/tree.c
index ec560c86773..35bed1302d0 100644
--- a/gcc/tree.c
+++ b/gcc/tree.c
@@ -3450,7 +3450,11 @@ build7_stat (enum tree_code code, tree tt, tree arg0, tree arg1,
PROCESS_ARG(6);
TREE_SIDE_EFFECTS (t) = side_effects;
- TREE_THIS_VOLATILE (t) = 0;
+ if (code == TARGET_MEM_REF)
+ TREE_SIDE_EFFECTS (t) = (arg5 && TREE_SIDE_EFFECTS (arg5));
+ TREE_THIS_VOLATILE (t)
+ = (code == TARGET_MEM_REF
+ && arg5 && TREE_THIS_VOLATILE (arg5));
return t;
}
diff --git a/gnattools/ChangeLog b/gnattools/ChangeLog
index 525fc93f571..071fdfbe110 100644
--- a/gnattools/ChangeLog
+++ b/gnattools/ChangeLog
@@ -1,3 +1,7 @@
+2010-04-29 Release Manager
+
+ * GCC 4.4.4 released.
+
2010-01-21 Release Manager
* GCC 4.4.3 released.
diff --git a/include/ChangeLog b/include/ChangeLog
index 2bf3bbe64f4..61d6f5d9e03 100644
--- a/include/ChangeLog
+++ b/include/ChangeLog
@@ -1,3 +1,7 @@
+2010-04-29 Release Manager
+
+ * GCC 4.4.4 released.
+
2010-01-21 Release Manager
* GCC 4.4.3 released.
diff --git a/intl/ChangeLog b/intl/ChangeLog
index 478f26dc61b..c3718b2497b 100644
--- a/intl/ChangeLog
+++ b/intl/ChangeLog
@@ -1,3 +1,7 @@
+2010-04-29 Release Manager
+
+ * GCC 4.4.4 released.
+
2010-01-21 Release Manager
* GCC 4.4.3 released.
diff --git a/libada/ChangeLog b/libada/ChangeLog
index 57eec61de44..1ada3c79ff1 100644
--- a/libada/ChangeLog
+++ b/libada/ChangeLog
@@ -1,3 +1,7 @@
+2010-04-29 Release Manager
+
+ * GCC 4.4.4 released.
+
2010-01-21 Release Manager
* GCC 4.4.3 released.
diff --git a/libcpp/ChangeLog b/libcpp/ChangeLog
index 47f3600da01..eba3ef73dd8 100644
--- a/libcpp/ChangeLog
+++ b/libcpp/ChangeLog
@@ -1,3 +1,7 @@
+2010-04-29 Release Manager
+
+ * GCC 4.4.4 released.
+
2010-02-11 Jakub Jelinek <jakub@redhat.com>
* init.c (read_original_filename): Don't call read_original_directory
diff --git a/libcpp/po/ChangeLog b/libcpp/po/ChangeLog
index 505b2d4991a..32545eebbb3 100644
--- a/libcpp/po/ChangeLog
+++ b/libcpp/po/ChangeLog
@@ -1,3 +1,7 @@
+2010-04-29 Release Manager
+
+ * GCC 4.4.4 released.
+
2010-01-21 Release Manager
* GCC 4.4.3 released.
diff --git a/libdecnumber/ChangeLog b/libdecnumber/ChangeLog
index 1017b2e0742..eeace334bb4 100644
--- a/libdecnumber/ChangeLog
+++ b/libdecnumber/ChangeLog
@@ -1,3 +1,7 @@
+2010-04-29 Release Manager
+
+ * GCC 4.4.4 released.
+
2010-01-21 Release Manager
* GCC 4.4.3 released.
diff --git a/libffi/ChangeLog b/libffi/ChangeLog
index c1888dd8670..dbbb9146ea3 100644
--- a/libffi/ChangeLog
+++ b/libffi/ChangeLog
@@ -1,3 +1,13 @@
+2010-04-29 Jakub Jelinek <jakub@redhat.com>
+
+ PR other/43620
+ * configure.ac (AM_INIT_AUTOMAKE): Add no-dist option.
+ * Makefile.in: Regenerated.
+
+2010-04-29 Release Manager
+
+ * GCC 4.4.4 released.
+
2010-02-15 Matthias Klose <doko@ubuntu.com>
* src/arm/sysv.S (__ARM_ARCH__): Define for processor
diff --git a/libffi/Makefile.in b/libffi/Makefile.in
index bc7e33c2b93..7c6fedf196c 100644
--- a/libffi/Makefile.in
+++ b/libffi/Makefile.in
@@ -59,13 +59,32 @@ target_triplet = @target@
@SH64_TRUE@am__append_20 = src/sh64/sysv.S src/sh64/ffi.c
@PA_LINUX_TRUE@am__append_21 = src/pa/linux.S src/pa/ffi.c
@PA_HPUX_TRUE@am__append_22 = src/pa/hpux32.S src/pa/ffi.c
-DIST_COMMON = README $(am__configure_deps) $(srcdir)/../compile \
- $(srcdir)/../config.guess $(srcdir)/../config.sub \
- $(srcdir)/../depcomp $(srcdir)/../install-sh \
- $(srcdir)/../ltmain.sh $(srcdir)/../missing \
- $(srcdir)/../mkinstalldirs $(srcdir)/Makefile.am \
- $(srcdir)/Makefile.in $(srcdir)/fficonfig.h.in \
- $(top_srcdir)/configure ChangeLog
+DIST_COMMON = $(srcdir)/../config.guess $(srcdir)/../config.sub README \
+ ChangeLog $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
+ $(top_srcdir)/configure $(am__configure_deps) \
+ $(srcdir)/fficonfig.h.in $(srcdir)/../mkinstalldirs \
+ $(srcdir)/../compile $(srcdir)/../compile $(srcdir)/../compile \
+ $(srcdir)/../compile $(srcdir)/../compile $(srcdir)/../compile \
+ $(srcdir)/../compile $(srcdir)/../compile $(srcdir)/../compile \
+ $(srcdir)/../compile $(srcdir)/../compile $(srcdir)/../compile \
+ $(srcdir)/../compile $(srcdir)/../compile $(srcdir)/../compile \
+ $(srcdir)/../compile $(srcdir)/../compile $(srcdir)/../compile \
+ $(srcdir)/../compile $(srcdir)/../compile $(srcdir)/../compile \
+ $(srcdir)/../compile $(srcdir)/../compile $(srcdir)/../compile \
+ $(srcdir)/../compile $(srcdir)/../compile $(srcdir)/../compile \
+ $(srcdir)/../compile $(srcdir)/../compile $(srcdir)/../compile \
+ $(srcdir)/../compile $(srcdir)/../compile $(srcdir)/../compile \
+ $(srcdir)/../compile $(srcdir)/../compile $(srcdir)/../compile \
+ $(srcdir)/../compile $(srcdir)/../compile $(srcdir)/../compile \
+ $(srcdir)/../compile $(srcdir)/../compile $(srcdir)/../compile \
+ $(srcdir)/../compile $(srcdir)/../compile $(srcdir)/../compile \
+ $(srcdir)/../compile $(srcdir)/../compile $(srcdir)/../compile \
+ $(srcdir)/../compile $(srcdir)/../compile $(srcdir)/../compile \
+ $(srcdir)/../compile $(srcdir)/../compile $(srcdir)/../compile \
+ $(srcdir)/../compile $(srcdir)/../compile $(srcdir)/../compile \
+ $(srcdir)/../compile $(srcdir)/../compile $(srcdir)/../compile \
+ $(srcdir)/../depcomp $(srcdir)/../ltmain.sh \
+ $(srcdir)/../config.guess $(srcdir)/../config.sub
subdir = .
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/../config/depstand.m4 \
@@ -174,7 +193,6 @@ LINK = $(LIBTOOL) --tag=CC --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
SOURCES = $(libffi_la_SOURCES) $(nodist_libffi_la_SOURCES) \
$(libffi_convenience_la_SOURCES) \
$(nodist_libffi_convenience_la_SOURCES)
-DIST_SOURCES = $(libffi_la_SOURCES) $(libffi_convenience_la_SOURCES)
MULTISRCTOP =
MULTIBUILDTOP =
MULTIDIRS =
@@ -190,17 +208,6 @@ RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
ETAGS = etags
CTAGS = ctags
DIST_SUBDIRS = $(SUBDIRS)
-DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
-distdir = $(PACKAGE)-$(VERSION)
-top_distdir = $(distdir)
-am__remove_distdir = \
- { test ! -d $(distdir) \
- || { find $(distdir) -type d ! -perm -200 -exec chmod u+w {} ';' \
- && rm -fr $(distdir); }; }
-DIST_ARCHIVES = $(distdir).tar.gz
-GZIP_ENV = --best
-distuninstallcheck_listfiles = find . -type f -print
-distcleancheck_listfiles = find . -type f -print
ACLOCAL = @ACLOCAL@
ALLOCA = @ALLOCA@
ALPHA_FALSE = @ALPHA_FALSE@
@@ -1087,149 +1094,6 @@ GTAGS:
distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
-
-distdir: $(DISTFILES)
- $(am__remove_distdir)
- mkdir $(distdir)
- $(mkdir_p) $(distdir)/.. $(distdir)/../config $(distdir)/include $(distdir)/src/alpha $(distdir)/src/arm $(distdir)/src/cris $(distdir)/src/frv $(distdir)/src/ia64 $(distdir)/src/m32r $(distdir)/src/m68k $(distdir)/src/mips $(distdir)/src/pa $(distdir)/src/powerpc $(distdir)/src/s390 $(distdir)/src/sh $(distdir)/src/sh64 $(distdir)/src/sparc $(distdir)/src/x86
- @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
- topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
- list='$(DISTFILES)'; for file in $$list; do \
- case $$file in \
- $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
- $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
- esac; \
- if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
- dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
- if test "$$dir" != "$$file" && test "$$dir" != "."; then \
- dir="/$$dir"; \
- $(mkdir_p) "$(distdir)$$dir"; \
- else \
- dir=''; \
- fi; \
- if test -d $$d/$$file; then \
- if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
- cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
- fi; \
- cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
- else \
- test -f $(distdir)/$$file \
- || cp -p $$d/$$file $(distdir)/$$file \
- || exit 1; \
- fi; \
- done
- list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
- if test "$$subdir" = .; then :; else \
- test -d "$(distdir)/$$subdir" \
- || $(mkdir_p) "$(distdir)/$$subdir" \
- || exit 1; \
- distdir=`$(am__cd) $(distdir) && pwd`; \
- top_distdir=`$(am__cd) $(top_distdir) && pwd`; \
- (cd $$subdir && \
- $(MAKE) $(AM_MAKEFLAGS) \
- top_distdir="$$top_distdir" \
- distdir="$$distdir/$$subdir" \
- distdir) \
- || exit 1; \
- fi; \
- done
- -find $(distdir) -type d ! -perm -777 -exec chmod a+rwx {} \; -o \
- ! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \
- ! -type d ! -perm -400 -exec chmod a+r {} \; -o \
- ! -type d ! -perm -444 -exec $(SHELL) $(install_sh) -c -m a+r {} {} \; \
- || chmod -R a+r $(distdir)
-dist-gzip: distdir
- tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
- $(am__remove_distdir)
-
-dist-bzip2: distdir
- tardir=$(distdir) && $(am__tar) | bzip2 -9 -c >$(distdir).tar.bz2
- $(am__remove_distdir)
-
-dist-tarZ: distdir
- tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z
- $(am__remove_distdir)
-
-dist-shar: distdir
- shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz
- $(am__remove_distdir)
-
-dist-zip: distdir
- -rm -f $(distdir).zip
- zip -rq $(distdir).zip $(distdir)
- $(am__remove_distdir)
-
-dist dist-all: distdir
- tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
- $(am__remove_distdir)
-
-# This target untars the dist file and tries a VPATH configuration. Then
-# it guarantees that the distribution is self-contained by making another
-# tarfile.
-distcheck: dist
- case '$(DIST_ARCHIVES)' in \
- *.tar.gz*) \
- GZIP=$(GZIP_ENV) gunzip -c $(distdir).tar.gz | $(am__untar) ;;\
- *.tar.bz2*) \
- bunzip2 -c $(distdir).tar.bz2 | $(am__untar) ;;\
- *.tar.Z*) \
- uncompress -c $(distdir).tar.Z | $(am__untar) ;;\
- *.shar.gz*) \
- GZIP=$(GZIP_ENV) gunzip -c $(distdir).shar.gz | unshar ;;\
- *.zip*) \
- unzip $(distdir).zip ;;\
- esac
- chmod -R a-w $(distdir); chmod a+w $(distdir)
- mkdir $(distdir)/_build
- mkdir $(distdir)/_inst
- chmod a-w $(distdir)
- dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \
- && dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \
- && cd $(distdir)/_build \
- && ../configure --srcdir=.. --prefix="$$dc_install_base" \
- $(DISTCHECK_CONFIGURE_FLAGS) \
- && $(MAKE) $(AM_MAKEFLAGS) \
- && $(MAKE) $(AM_MAKEFLAGS) dvi \
- && $(MAKE) $(AM_MAKEFLAGS) check \
- && $(MAKE) $(AM_MAKEFLAGS) install \
- && $(MAKE) $(AM_MAKEFLAGS) installcheck \
- && $(MAKE) $(AM_MAKEFLAGS) uninstall \
- && $(MAKE) $(AM_MAKEFLAGS) distuninstallcheck_dir="$$dc_install_base" \
- distuninstallcheck \
- && chmod -R a-w "$$dc_install_base" \
- && ({ \
- (cd ../.. && umask 077 && mkdir "$$dc_destdir") \
- && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" install \
- && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" uninstall \
- && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" \
- distuninstallcheck_dir="$$dc_destdir" distuninstallcheck; \
- } || { rm -rf "$$dc_destdir"; exit 1; }) \
- && rm -rf "$$dc_destdir" \
- && $(MAKE) $(AM_MAKEFLAGS) dist \
- && rm -rf $(DIST_ARCHIVES) \
- && $(MAKE) $(AM_MAKEFLAGS) distcleancheck
- $(am__remove_distdir)
- @(echo "$(distdir) archives ready for distribution: "; \
- list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \
- sed -e '1{h;s/./=/g;p;x;}' -e '$${p;x;}'
-distuninstallcheck:
- @cd $(distuninstallcheck_dir) \
- && test `$(distuninstallcheck_listfiles) | wc -l` -le 1 \
- || { echo "ERROR: files left after uninstall:" ; \
- if test -n "$(DESTDIR)"; then \
- echo " (check DESTDIR support)"; \
- fi ; \
- $(distuninstallcheck_listfiles) ; \
- exit 1; } >&2
-distcleancheck: distclean
- @if test '$(srcdir)' = . ; then \
- echo "ERROR: distcleancheck can only run from a VPATH build" ; \
- exit 1 ; \
- fi
- @test `$(distcleancheck_listfiles) | wc -l` -eq 0 \
- || { echo "ERROR: files left in build directory after distclean:" ; \
- $(distcleancheck_listfiles) ; \
- exit 1; } >&2
check-am: all-am
check: check-recursive
all-am: Makefile $(LTLIBRARIES) all-multi fficonfig.h
@@ -1353,13 +1217,11 @@ uninstall-info: uninstall-info-recursive
.PHONY: $(RECURSIVE_TARGETS) CTAGS GTAGS all all-am all-multi \
am--refresh check check-am clean clean-generic clean-libtool \
clean-multi clean-noinstLTLIBRARIES clean-recursive \
- clean-toolexeclibLTLIBRARIES ctags ctags-recursive dist \
- dist-all dist-bzip2 dist-gzip dist-shar dist-tarZ dist-zip \
- distcheck distclean distclean-compile distclean-generic \
- distclean-hdr distclean-libtool distclean-multi \
- distclean-recursive distclean-tags distcleancheck distdir \
- distuninstallcheck dvi dvi-am html html-am info info-am \
- install install-am install-data install-data-am install-exec \
+ clean-toolexeclibLTLIBRARIES ctags ctags-recursive distclean \
+ distclean-compile distclean-generic distclean-hdr \
+ distclean-libtool distclean-multi distclean-recursive \
+ distclean-tags dvi dvi-am html html-am info info-am install \
+ install-am install-data install-data-am install-exec \
install-exec-am install-info install-info-am install-man \
install-multi install-strip install-toolexeclibLTLIBRARIES \
installcheck installcheck-am installdirs installdirs-am \
diff --git a/libffi/configure.ac b/libffi/configure.ac
index 2dff35c060f..fcea08f4306 100644
--- a/libffi/configure.ac
+++ b/libffi/configure.ac
@@ -12,7 +12,7 @@ target_alias=${target_alias-$host_alias}
. ${srcdir}/configure.host
-AM_INIT_AUTOMAKE
+AM_INIT_AUTOMAKE([no-dist])
# The same as in boehm-gc and libstdc++. Have to borrow it from there.
# We must force CC to /not/ be precious variables; otherwise
diff --git a/libgcc/ChangeLog b/libgcc/ChangeLog
index 81c33748903..c7b3033f1ad 100644
--- a/libgcc/ChangeLog
+++ b/libgcc/ChangeLog
@@ -1,3 +1,20 @@
+2010-04-29 Release Manager
+
+ * GCC 4.4.4 released.
+
+2010-04-08 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
+
+ Backport from mainline:
+ 2010-03-22 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
+
+ PR target/38085
+ * config/i386/t-sol2 ($(T)gmon.o): Use CFLAGS instead of
+ MULTILIB_CFLAGS.
+ ($(T)gcrt1.o): Likewise.
+ ($(T)crt1.o): Likewise.
+ ($(T)crti.o): Likewise.
+ ($(T)crtn.o): Likewise.
+
2010-01-21 Release Manager
* GCC 4.4.3 released.
diff --git a/libgcc/config/i386/t-sol2 b/libgcc/config/i386/t-sol2
index 24b7c7c10f4..351d7fb90e7 100644
--- a/libgcc/config/i386/t-sol2
+++ b/libgcc/config/i386/t-sol2
@@ -1,6 +1,6 @@
# gmon build rule:
$(T)gmon.o: $(gcc_srcdir)/config/i386/gmon-sol2.c $(GCC_PASSES) $(CONFIG_H)
- $(GCC_FOR_TARGET) $(GCC_CFLAGS) $(INCLUDES) $(MULTILIB_CFLAGS) \
+ $(GCC_FOR_TARGET) $(GCC_CFLAGS) $(INCLUDES) $(CFLAGS) \
-c $(gcc_srcdir)/config/i386/gmon-sol2.c -o $(T)gmon.o
# Assemble startup files.
@@ -9,16 +9,16 @@ $(T)gmon.o: $(gcc_srcdir)/config/i386/gmon-sol2.c $(GCC_PASSES) $(CONFIG_H)
# the comments with sed. This bug may only be in the Early Access releases.
$(T)gcrt1.o: $(gcc_srcdir)/config/i386/sol2-gc1.asm $(GCC_PASSES)
sed -e '/^!/d' <$(gcc_srcdir)/config/i386/sol2-gc1.asm >gcrt1.s
- $(GCC_FOR_TARGET) $(MULTILIB_CFLAGS) -c -o $(T)gcrt1.o gcrt1.s
+ $(GCC_FOR_TARGET) $(CFLAGS) -c -o $(T)gcrt1.o gcrt1.s
$(T)crt1.o: $(gcc_srcdir)/config/i386/sol2-c1.asm $(GCC_PASSES)
sed -e '/^!/d' <$(gcc_srcdir)/config/i386/sol2-c1.asm >crt1.s
- $(GCC_FOR_TARGET) $(MULTILIB_CFLAGS) -c -o $(T)crt1.o crt1.s
+ $(GCC_FOR_TARGET) $(CFLAGS) -c -o $(T)crt1.o crt1.s
$(T)crti.o: $(gcc_srcdir)/config/i386/sol2-ci.asm $(GCC_PASSES)
sed -e '/^!/d' <$(gcc_srcdir)/config/i386/sol2-ci.asm >crti.s
- $(GCC_FOR_TARGET) $(MULTILIB_CFLAGS) -c -o $(T)crti.o crti.s
+ $(GCC_FOR_TARGET) $(CFLAGS) -c -o $(T)crti.o crti.s
$(T)crtn.o: $(gcc_srcdir)/config/i386/sol2-cn.asm $(GCC_PASSES)
sed -e '/^!/d' <$(gcc_srcdir)/config/i386/sol2-cn.asm >crtn.s
- $(GCC_FOR_TARGET) $(MULTILIB_CFLAGS) -c -o $(T)crtn.o crtn.s
+ $(GCC_FOR_TARGET) $(CFLAGS) -c -o $(T)crtn.o crtn.s
# We need to use -fPIC when we are using gcc to compile the routines in
# crtstuff.c. This is only really needed when we are going to use gcc/g++
diff --git a/libgcc/config/libbid/ChangeLog b/libgcc/config/libbid/ChangeLog
index 7ae07b4e1d3..d72b7520446 100644
--- a/libgcc/config/libbid/ChangeLog
+++ b/libgcc/config/libbid/ChangeLog
@@ -1,3 +1,7 @@
+2010-04-29 Release Manager
+
+ * GCC 4.4.4 released.
+
2010-01-21 Release Manager
* GCC 4.4.3 released.
diff --git a/libgfortran/ChangeLog b/libgfortran/ChangeLog
index 5739c7739f6..95f7c46bd8a 100644
--- a/libgfortran/ChangeLog
+++ b/libgfortran/ChangeLog
@@ -1,3 +1,13 @@
+2010-04-29 Jakub Jelinek <jakub@redhat.com>
+
+ PR other/43620
+ * configure.ac (AM_INIT_AUTOMAKE): Add no-dist option.
+ * Makefile.in: Regenerated.
+
+2010-04-29 Release Manager
+
+ * GCC 4.4.4 released.
+
2010-04-01 Janne Blomqvist <jb@gcc.gnu.org>
PR libfortran/43605
diff --git a/libgfortran/Makefile.in b/libgfortran/Makefile.in
index ce2b5a21cb1..4f45021711e 100644
--- a/libgfortran/Makefile.in
+++ b/libgfortran/Makefile.in
@@ -40,12 +40,12 @@ target_triplet = @target@
# dummy sources for libtool
@onestep_TRUE@am__append_1 = libgfortran_c.c libgfortran_f.f90
-DIST_COMMON = $(am__configure_deps) $(srcdir)/../config.guess \
- $(srcdir)/../config.sub $(srcdir)/../depcomp \
- $(srcdir)/../install-sh $(srcdir)/../ltmain.sh \
- $(srcdir)/../missing $(srcdir)/../mkinstalldirs \
- $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
- $(srcdir)/config.h.in $(top_srcdir)/configure ChangeLog
+DIST_COMMON = $(srcdir)/../config.guess $(srcdir)/../config.sub \
+ ChangeLog $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
+ $(top_srcdir)/configure $(am__configure_deps) \
+ $(srcdir)/config.h.in $(srcdir)/../mkinstalldirs \
+ $(srcdir)/../depcomp $(srcdir)/../ltmain.sh \
+ $(srcdir)/../config.guess $(srcdir)/../config.sub
subdir = .
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/../config/depstand.m4 \
@@ -78,508 +78,6 @@ myexeclibLTLIBRARIES_INSTALL = $(INSTALL)
toolexeclibLTLIBRARIES_INSTALL = $(INSTALL)
LTLIBRARIES = $(myexeclib_LTLIBRARIES) $(toolexeclib_LTLIBRARIES)
libgfortran_la_LIBADD =
-am__libgfortran_la_SOURCES_DIST = runtime/backtrace.c \
- runtime/compile_options.c runtime/convert_char.c \
- runtime/environ.c runtime/error.c runtime/fpu.c runtime/main.c \
- runtime/memory.c runtime/pause.c runtime/stop.c \
- runtime/string.c runtime/select.c $(srcdir)/generated/all_l1.c \
- $(srcdir)/generated/all_l2.c $(srcdir)/generated/all_l4.c \
- $(srcdir)/generated/all_l8.c $(srcdir)/generated/all_l16.c \
- $(srcdir)/generated/any_l1.c $(srcdir)/generated/any_l2.c \
- $(srcdir)/generated/any_l4.c $(srcdir)/generated/any_l8.c \
- $(srcdir)/generated/any_l16.c $(srcdir)/generated/count_1_l.c \
- $(srcdir)/generated/count_2_l.c \
- $(srcdir)/generated/count_4_l.c \
- $(srcdir)/generated/count_8_l.c \
- $(srcdir)/generated/count_16_l.c \
- $(srcdir)/generated/maxloc0_4_i1.c \
- $(srcdir)/generated/maxloc0_8_i1.c \
- $(srcdir)/generated/maxloc0_16_i1.c \
- $(srcdir)/generated/maxloc0_4_i2.c \
- $(srcdir)/generated/maxloc0_8_i2.c \
- $(srcdir)/generated/maxloc0_16_i2.c \
- $(srcdir)/generated/maxloc0_4_i4.c \
- $(srcdir)/generated/maxloc0_8_i4.c \
- $(srcdir)/generated/maxloc0_16_i4.c \
- $(srcdir)/generated/maxloc0_4_i8.c \
- $(srcdir)/generated/maxloc0_8_i8.c \
- $(srcdir)/generated/maxloc0_16_i8.c \
- $(srcdir)/generated/maxloc0_4_i16.c \
- $(srcdir)/generated/maxloc0_8_i16.c \
- $(srcdir)/generated/maxloc0_16_i16.c \
- $(srcdir)/generated/maxloc0_4_r4.c \
- $(srcdir)/generated/maxloc0_8_r4.c \
- $(srcdir)/generated/maxloc0_16_r4.c \
- $(srcdir)/generated/maxloc0_4_r8.c \
- $(srcdir)/generated/maxloc0_8_r8.c \
- $(srcdir)/generated/maxloc0_16_r8.c \
- $(srcdir)/generated/maxloc0_4_r10.c \
- $(srcdir)/generated/maxloc0_8_r10.c \
- $(srcdir)/generated/maxloc0_16_r10.c \
- $(srcdir)/generated/maxloc0_4_r16.c \
- $(srcdir)/generated/maxloc0_8_r16.c \
- $(srcdir)/generated/maxloc0_16_r16.c \
- $(srcdir)/generated/maxloc1_4_i1.c \
- $(srcdir)/generated/maxloc1_8_i1.c \
- $(srcdir)/generated/maxloc1_16_i1.c \
- $(srcdir)/generated/maxloc1_4_i2.c \
- $(srcdir)/generated/maxloc1_8_i2.c \
- $(srcdir)/generated/maxloc1_16_i2.c \
- $(srcdir)/generated/maxloc1_4_i4.c \
- $(srcdir)/generated/maxloc1_8_i4.c \
- $(srcdir)/generated/maxloc1_16_i4.c \
- $(srcdir)/generated/maxloc1_4_i8.c \
- $(srcdir)/generated/maxloc1_8_i8.c \
- $(srcdir)/generated/maxloc1_16_i8.c \
- $(srcdir)/generated/maxloc1_4_i16.c \
- $(srcdir)/generated/maxloc1_8_i16.c \
- $(srcdir)/generated/maxloc1_16_i16.c \
- $(srcdir)/generated/maxloc1_4_r4.c \
- $(srcdir)/generated/maxloc1_8_r4.c \
- $(srcdir)/generated/maxloc1_16_r4.c \
- $(srcdir)/generated/maxloc1_4_r8.c \
- $(srcdir)/generated/maxloc1_8_r8.c \
- $(srcdir)/generated/maxloc1_16_r8.c \
- $(srcdir)/generated/maxloc1_4_r10.c \
- $(srcdir)/generated/maxloc1_8_r10.c \
- $(srcdir)/generated/maxloc1_16_r10.c \
- $(srcdir)/generated/maxloc1_4_r16.c \
- $(srcdir)/generated/maxloc1_8_r16.c \
- $(srcdir)/generated/maxloc1_16_r16.c \
- $(srcdir)/generated/maxval_i1.c \
- $(srcdir)/generated/maxval_i2.c \
- $(srcdir)/generated/maxval_i4.c \
- $(srcdir)/generated/maxval_i8.c \
- $(srcdir)/generated/maxval_i16.c \
- $(srcdir)/generated/maxval_r4.c \
- $(srcdir)/generated/maxval_r8.c \
- $(srcdir)/generated/maxval_r10.c \
- $(srcdir)/generated/maxval_r16.c \
- $(srcdir)/generated/minloc0_4_i1.c \
- $(srcdir)/generated/minloc0_8_i1.c \
- $(srcdir)/generated/minloc0_16_i1.c \
- $(srcdir)/generated/minloc0_4_i2.c \
- $(srcdir)/generated/minloc0_8_i2.c \
- $(srcdir)/generated/minloc0_16_i2.c \
- $(srcdir)/generated/minloc0_4_i4.c \
- $(srcdir)/generated/minloc0_8_i4.c \
- $(srcdir)/generated/minloc0_16_i4.c \
- $(srcdir)/generated/minloc0_4_i8.c \
- $(srcdir)/generated/minloc0_8_i8.c \
- $(srcdir)/generated/minloc0_16_i8.c \
- $(srcdir)/generated/minloc0_4_i16.c \
- $(srcdir)/generated/minloc0_8_i16.c \
- $(srcdir)/generated/minloc0_16_i16.c \
- $(srcdir)/generated/minloc0_4_r4.c \
- $(srcdir)/generated/minloc0_8_r4.c \
- $(srcdir)/generated/minloc0_16_r4.c \
- $(srcdir)/generated/minloc0_4_r8.c \
- $(srcdir)/generated/minloc0_8_r8.c \
- $(srcdir)/generated/minloc0_16_r8.c \
- $(srcdir)/generated/minloc0_4_r10.c \
- $(srcdir)/generated/minloc0_8_r10.c \
- $(srcdir)/generated/minloc0_16_r10.c \
- $(srcdir)/generated/minloc0_4_r16.c \
- $(srcdir)/generated/minloc0_8_r16.c \
- $(srcdir)/generated/minloc0_16_r16.c \
- $(srcdir)/generated/minloc1_4_i1.c \
- $(srcdir)/generated/minloc1_8_i1.c \
- $(srcdir)/generated/minloc1_16_i1.c \
- $(srcdir)/generated/minloc1_4_i2.c \
- $(srcdir)/generated/minloc1_8_i2.c \
- $(srcdir)/generated/minloc1_16_i2.c \
- $(srcdir)/generated/minloc1_4_i4.c \
- $(srcdir)/generated/minloc1_8_i4.c \
- $(srcdir)/generated/minloc1_16_i4.c \
- $(srcdir)/generated/minloc1_4_i8.c \
- $(srcdir)/generated/minloc1_8_i8.c \
- $(srcdir)/generated/minloc1_16_i8.c \
- $(srcdir)/generated/minloc1_4_i16.c \
- $(srcdir)/generated/minloc1_8_i16.c \
- $(srcdir)/generated/minloc1_16_i16.c \
- $(srcdir)/generated/minloc1_4_r4.c \
- $(srcdir)/generated/minloc1_8_r4.c \
- $(srcdir)/generated/minloc1_16_r4.c \
- $(srcdir)/generated/minloc1_4_r8.c \
- $(srcdir)/generated/minloc1_8_r8.c \
- $(srcdir)/generated/minloc1_16_r8.c \
- $(srcdir)/generated/minloc1_4_r10.c \
- $(srcdir)/generated/minloc1_8_r10.c \
- $(srcdir)/generated/minloc1_16_r10.c \
- $(srcdir)/generated/minloc1_4_r16.c \
- $(srcdir)/generated/minloc1_8_r16.c \
- $(srcdir)/generated/minloc1_16_r16.c \
- $(srcdir)/generated/minval_i1.c \
- $(srcdir)/generated/minval_i2.c \
- $(srcdir)/generated/minval_i4.c \
- $(srcdir)/generated/minval_i8.c \
- $(srcdir)/generated/minval_i16.c \
- $(srcdir)/generated/minval_r4.c \
- $(srcdir)/generated/minval_r8.c \
- $(srcdir)/generated/minval_r10.c \
- $(srcdir)/generated/minval_r16.c \
- $(srcdir)/generated/product_i1.c \
- $(srcdir)/generated/product_i2.c \
- $(srcdir)/generated/product_i4.c \
- $(srcdir)/generated/product_i8.c \
- $(srcdir)/generated/product_i16.c \
- $(srcdir)/generated/product_r4.c \
- $(srcdir)/generated/product_r8.c \
- $(srcdir)/generated/product_r10.c \
- $(srcdir)/generated/product_r16.c \
- $(srcdir)/generated/product_c4.c \
- $(srcdir)/generated/product_c8.c \
- $(srcdir)/generated/product_c10.c \
- $(srcdir)/generated/product_c16.c $(srcdir)/generated/sum_i1.c \
- $(srcdir)/generated/sum_i2.c $(srcdir)/generated/sum_i4.c \
- $(srcdir)/generated/sum_i8.c $(srcdir)/generated/sum_i16.c \
- $(srcdir)/generated/sum_r4.c $(srcdir)/generated/sum_r8.c \
- $(srcdir)/generated/sum_r10.c $(srcdir)/generated/sum_r16.c \
- $(srcdir)/generated/sum_c4.c $(srcdir)/generated/sum_c8.c \
- $(srcdir)/generated/sum_c10.c $(srcdir)/generated/sum_c16.c \
- $(srcdir)/generated/matmul_i1.c \
- $(srcdir)/generated/matmul_i2.c \
- $(srcdir)/generated/matmul_i4.c \
- $(srcdir)/generated/matmul_i8.c \
- $(srcdir)/generated/matmul_i16.c \
- $(srcdir)/generated/matmul_r4.c \
- $(srcdir)/generated/matmul_r8.c \
- $(srcdir)/generated/matmul_r10.c \
- $(srcdir)/generated/matmul_r16.c \
- $(srcdir)/generated/matmul_c4.c \
- $(srcdir)/generated/matmul_c8.c \
- $(srcdir)/generated/matmul_c10.c \
- $(srcdir)/generated/matmul_c16.c \
- $(srcdir)/generated/matmul_l4.c \
- $(srcdir)/generated/matmul_l8.c \
- $(srcdir)/generated/matmul_l16.c \
- $(srcdir)/generated/transpose_i4.c \
- $(srcdir)/generated/transpose_i8.c \
- $(srcdir)/generated/transpose_i16.c \
- $(srcdir)/generated/transpose_r4.c \
- $(srcdir)/generated/transpose_r8.c \
- $(srcdir)/generated/transpose_r10.c \
- $(srcdir)/generated/transpose_r16.c \
- $(srcdir)/generated/transpose_c4.c \
- $(srcdir)/generated/transpose_c8.c \
- $(srcdir)/generated/transpose_c10.c \
- $(srcdir)/generated/transpose_c16.c \
- $(srcdir)/generated/shape_i4.c $(srcdir)/generated/shape_i8.c \
- $(srcdir)/generated/shape_i16.c \
- $(srcdir)/generated/eoshift1_4.c \
- $(srcdir)/generated/eoshift1_8.c \
- $(srcdir)/generated/eoshift1_16.c \
- $(srcdir)/generated/eoshift3_4.c \
- $(srcdir)/generated/eoshift3_8.c \
- $(srcdir)/generated/eoshift3_16.c \
- $(srcdir)/generated/cshift1_4.c \
- $(srcdir)/generated/cshift1_8.c \
- $(srcdir)/generated/cshift1_16.c \
- $(srcdir)/generated/reshape_i4.c \
- $(srcdir)/generated/reshape_i8.c \
- $(srcdir)/generated/reshape_i16.c \
- $(srcdir)/generated/reshape_r4.c \
- $(srcdir)/generated/reshape_r8.c \
- $(srcdir)/generated/reshape_r10.c \
- $(srcdir)/generated/reshape_r16.c \
- $(srcdir)/generated/reshape_c4.c \
- $(srcdir)/generated/reshape_c8.c \
- $(srcdir)/generated/reshape_c10.c \
- $(srcdir)/generated/reshape_c16.c \
- $(srcdir)/generated/in_pack_i1.c \
- $(srcdir)/generated/in_pack_i2.c \
- $(srcdir)/generated/in_pack_i4.c \
- $(srcdir)/generated/in_pack_i8.c \
- $(srcdir)/generated/in_pack_i16.c \
- $(srcdir)/generated/in_pack_r4.c \
- $(srcdir)/generated/in_pack_r8.c \
- $(srcdir)/generated/in_pack_r10.c \
- $(srcdir)/generated/in_pack_r16.c \
- $(srcdir)/generated/in_pack_c4.c \
- $(srcdir)/generated/in_pack_c8.c \
- $(srcdir)/generated/in_pack_c10.c \
- $(srcdir)/generated/in_pack_c16.c \
- $(srcdir)/generated/in_unpack_i1.c \
- $(srcdir)/generated/in_unpack_i2.c \
- $(srcdir)/generated/in_unpack_i4.c \
- $(srcdir)/generated/in_unpack_i8.c \
- $(srcdir)/generated/in_unpack_i16.c \
- $(srcdir)/generated/in_unpack_r4.c \
- $(srcdir)/generated/in_unpack_r8.c \
- $(srcdir)/generated/in_unpack_r10.c \
- $(srcdir)/generated/in_unpack_r16.c \
- $(srcdir)/generated/in_unpack_c4.c \
- $(srcdir)/generated/in_unpack_c8.c \
- $(srcdir)/generated/in_unpack_c10.c \
- $(srcdir)/generated/in_unpack_c16.c \
- $(srcdir)/generated/exponent_r4.c \
- $(srcdir)/generated/exponent_r8.c \
- $(srcdir)/generated/exponent_r10.c \
- $(srcdir)/generated/exponent_r16.c \
- $(srcdir)/generated/fraction_r4.c \
- $(srcdir)/generated/fraction_r8.c \
- $(srcdir)/generated/fraction_r10.c \
- $(srcdir)/generated/fraction_r16.c \
- $(srcdir)/generated/nearest_r4.c \
- $(srcdir)/generated/nearest_r8.c \
- $(srcdir)/generated/nearest_r10.c \
- $(srcdir)/generated/nearest_r16.c \
- $(srcdir)/generated/set_exponent_r4.c \
- $(srcdir)/generated/set_exponent_r8.c \
- $(srcdir)/generated/set_exponent_r10.c \
- $(srcdir)/generated/set_exponent_r16.c \
- $(srcdir)/generated/pow_i4_i4.c \
- $(srcdir)/generated/pow_i8_i4.c \
- $(srcdir)/generated/pow_i16_i4.c \
- $(srcdir)/generated/pow_c4_i4.c \
- $(srcdir)/generated/pow_c8_i4.c \
- $(srcdir)/generated/pow_c10_i4.c \
- $(srcdir)/generated/pow_c16_i4.c \
- $(srcdir)/generated/pow_i4_i8.c \
- $(srcdir)/generated/pow_i8_i8.c \
- $(srcdir)/generated/pow_i16_i8.c \
- $(srcdir)/generated/pow_r4_i8.c \
- $(srcdir)/generated/pow_r8_i8.c \
- $(srcdir)/generated/pow_r10_i8.c \
- $(srcdir)/generated/pow_r16_i8.c \
- $(srcdir)/generated/pow_c4_i8.c \
- $(srcdir)/generated/pow_c8_i8.c \
- $(srcdir)/generated/pow_c10_i8.c \
- $(srcdir)/generated/pow_c16_i8.c \
- $(srcdir)/generated/pow_i4_i16.c \
- $(srcdir)/generated/pow_i8_i16.c \
- $(srcdir)/generated/pow_i16_i16.c \
- $(srcdir)/generated/pow_r4_i16.c \
- $(srcdir)/generated/pow_r8_i16.c \
- $(srcdir)/generated/pow_r10_i16.c \
- $(srcdir)/generated/pow_r16_i16.c \
- $(srcdir)/generated/pow_c4_i16.c \
- $(srcdir)/generated/pow_c8_i16.c \
- $(srcdir)/generated/pow_c10_i16.c \
- $(srcdir)/generated/pow_c16_i16.c \
- $(srcdir)/generated/rrspacing_r4.c \
- $(srcdir)/generated/rrspacing_r8.c \
- $(srcdir)/generated/rrspacing_r10.c \
- $(srcdir)/generated/rrspacing_r16.c \
- $(srcdir)/generated/spacing_r4.c \
- $(srcdir)/generated/spacing_r8.c \
- $(srcdir)/generated/spacing_r10.c \
- $(srcdir)/generated/spacing_r16.c \
- $(srcdir)/generated/pack_i1.c $(srcdir)/generated/pack_i2.c \
- $(srcdir)/generated/pack_i4.c $(srcdir)/generated/pack_i8.c \
- $(srcdir)/generated/pack_i16.c $(srcdir)/generated/pack_r4.c \
- $(srcdir)/generated/pack_r8.c $(srcdir)/generated/pack_r10.c \
- $(srcdir)/generated/pack_r16.c $(srcdir)/generated/pack_c4.c \
- $(srcdir)/generated/pack_c8.c $(srcdir)/generated/pack_c10.c \
- $(srcdir)/generated/pack_c16.c $(srcdir)/generated/unpack_i1.c \
- $(srcdir)/generated/unpack_i2.c \
- $(srcdir)/generated/unpack_i4.c \
- $(srcdir)/generated/unpack_i8.c \
- $(srcdir)/generated/unpack_i16.c \
- $(srcdir)/generated/unpack_r4.c \
- $(srcdir)/generated/unpack_r8.c \
- $(srcdir)/generated/unpack_r10.c \
- $(srcdir)/generated/unpack_r16.c \
- $(srcdir)/generated/unpack_c4.c \
- $(srcdir)/generated/unpack_c8.c \
- $(srcdir)/generated/unpack_c10.c \
- $(srcdir)/generated/unpack_c16.c \
- $(srcdir)/generated/spread_i1.c \
- $(srcdir)/generated/spread_i2.c \
- $(srcdir)/generated/spread_i4.c \
- $(srcdir)/generated/spread_i8.c \
- $(srcdir)/generated/spread_i16.c \
- $(srcdir)/generated/spread_r4.c \
- $(srcdir)/generated/spread_r8.c \
- $(srcdir)/generated/spread_r10.c \
- $(srcdir)/generated/spread_r16.c \
- $(srcdir)/generated/spread_c4.c \
- $(srcdir)/generated/spread_c8.c \
- $(srcdir)/generated/spread_c10.c \
- $(srcdir)/generated/spread_c16.c selected_int_kind.inc \
- selected_real_kind.inc kinds.h \
- $(srcdir)/generated/cshift0_i1.c \
- $(srcdir)/generated/cshift0_i2.c \
- $(srcdir)/generated/cshift0_i4.c \
- $(srcdir)/generated/cshift0_i8.c \
- $(srcdir)/generated/cshift0_i16.c \
- $(srcdir)/generated/cshift0_r4.c \
- $(srcdir)/generated/cshift0_r8.c \
- $(srcdir)/generated/cshift0_r10.c \
- $(srcdir)/generated/cshift0_r16.c \
- $(srcdir)/generated/cshift0_c4.c \
- $(srcdir)/generated/cshift0_c8.c \
- $(srcdir)/generated/cshift0_c10.c \
- $(srcdir)/generated/cshift0_c16.c kinds.inc c99_protos.inc \
- fpu-target.h io/close.c io/file_pos.c io/format.c io/inquire.c \
- io/intrinsics.c io/list_read.c io/lock.c io/open.c io/read.c \
- io/size_from_kind.c io/transfer.c io/unit.c io/unix.c \
- io/write.c io/fbuf.c intrinsics/associated.c \
- intrinsics/abort.c intrinsics/access.c intrinsics/args.c \
- intrinsics/bit_intrinsics.c intrinsics/c99_functions.c \
- intrinsics/chdir.c intrinsics/chmod.c intrinsics/clock.c \
- intrinsics/cpu_time.c intrinsics/cshift0.c intrinsics/ctime.c \
- intrinsics/date_and_time.c intrinsics/dtime.c intrinsics/env.c \
- intrinsics/eoshift0.c intrinsics/eoshift2.c \
- intrinsics/erfc_scaled.c intrinsics/etime.c intrinsics/exit.c \
- intrinsics/fnum.c intrinsics/gerror.c intrinsics/getcwd.c \
- intrinsics/getlog.c intrinsics/getXid.c intrinsics/hostnm.c \
- intrinsics/ierrno.c intrinsics/ishftc.c \
- intrinsics/iso_c_generated_procs.c intrinsics/iso_c_binding.c \
- intrinsics/kill.c intrinsics/link.c intrinsics/malloc.c \
- intrinsics/mvbits.c intrinsics/move_alloc.c \
- intrinsics/pack_generic.c intrinsics/perror.c \
- intrinsics/selected_char_kind.c intrinsics/signal.c \
- intrinsics/size.c intrinsics/sleep.c \
- intrinsics/spread_generic.c intrinsics/string_intrinsics.c \
- intrinsics/system.c intrinsics/rand.c intrinsics/random.c \
- intrinsics/rename.c intrinsics/reshape_generic.c \
- intrinsics/reshape_packed.c intrinsics/selected_int_kind.f90 \
- intrinsics/selected_real_kind.f90 intrinsics/stat.c \
- intrinsics/symlnk.c intrinsics/system_clock.c \
- intrinsics/time.c intrinsics/transpose_generic.c \
- intrinsics/umask.c intrinsics/unlink.c \
- intrinsics/unpack_generic.c runtime/in_pack_generic.c \
- runtime/in_unpack_generic.c io/io.h \
- $(srcdir)/generated/_abs_c4.F90 \
- $(srcdir)/generated/_abs_c8.F90 \
- $(srcdir)/generated/_abs_c10.F90 \
- $(srcdir)/generated/_abs_c16.F90 \
- $(srcdir)/generated/_abs_i4.F90 \
- $(srcdir)/generated/_abs_i8.F90 \
- $(srcdir)/generated/_abs_i16.F90 \
- $(srcdir)/generated/_abs_r4.F90 \
- $(srcdir)/generated/_abs_r8.F90 \
- $(srcdir)/generated/_abs_r10.F90 \
- $(srcdir)/generated/_abs_r16.F90 \
- $(srcdir)/generated/_aimag_c4.F90 \
- $(srcdir)/generated/_aimag_c8.F90 \
- $(srcdir)/generated/_aimag_c10.F90 \
- $(srcdir)/generated/_aimag_c16.F90 \
- $(srcdir)/generated/_exp_r4.F90 \
- $(srcdir)/generated/_exp_r8.F90 \
- $(srcdir)/generated/_exp_r10.F90 \
- $(srcdir)/generated/_exp_r16.F90 \
- $(srcdir)/generated/_exp_c4.F90 \
- $(srcdir)/generated/_exp_c8.F90 \
- $(srcdir)/generated/_exp_c10.F90 \
- $(srcdir)/generated/_exp_c16.F90 \
- $(srcdir)/generated/_log_r4.F90 \
- $(srcdir)/generated/_log_r8.F90 \
- $(srcdir)/generated/_log_r10.F90 \
- $(srcdir)/generated/_log_r16.F90 \
- $(srcdir)/generated/_log_c4.F90 \
- $(srcdir)/generated/_log_c8.F90 \
- $(srcdir)/generated/_log_c10.F90 \
- $(srcdir)/generated/_log_c16.F90 \
- $(srcdir)/generated/_log10_r4.F90 \
- $(srcdir)/generated/_log10_r8.F90 \
- $(srcdir)/generated/_log10_r10.F90 \
- $(srcdir)/generated/_log10_r16.F90 \
- $(srcdir)/generated/_sqrt_r4.F90 \
- $(srcdir)/generated/_sqrt_r8.F90 \
- $(srcdir)/generated/_sqrt_r10.F90 \
- $(srcdir)/generated/_sqrt_r16.F90 \
- $(srcdir)/generated/_sqrt_c4.F90 \
- $(srcdir)/generated/_sqrt_c8.F90 \
- $(srcdir)/generated/_sqrt_c10.F90 \
- $(srcdir)/generated/_sqrt_c16.F90 \
- $(srcdir)/generated/_asin_r4.F90 \
- $(srcdir)/generated/_asin_r8.F90 \
- $(srcdir)/generated/_asin_r10.F90 \
- $(srcdir)/generated/_asin_r16.F90 \
- $(srcdir)/generated/_asinh_r4.F90 \
- $(srcdir)/generated/_asinh_r8.F90 \
- $(srcdir)/generated/_asinh_r10.F90 \
- $(srcdir)/generated/_asinh_r16.F90 \
- $(srcdir)/generated/_acos_r4.F90 \
- $(srcdir)/generated/_acos_r8.F90 \
- $(srcdir)/generated/_acos_r10.F90 \
- $(srcdir)/generated/_acos_r16.F90 \
- $(srcdir)/generated/_acosh_r4.F90 \
- $(srcdir)/generated/_acosh_r8.F90 \
- $(srcdir)/generated/_acosh_r10.F90 \
- $(srcdir)/generated/_acosh_r16.F90 \
- $(srcdir)/generated/_atan_r4.F90 \
- $(srcdir)/generated/_atan_r8.F90 \
- $(srcdir)/generated/_atan_r10.F90 \
- $(srcdir)/generated/_atan_r16.F90 \
- $(srcdir)/generated/_atanh_r4.F90 \
- $(srcdir)/generated/_atanh_r8.F90 \
- $(srcdir)/generated/_atanh_r10.F90 \
- $(srcdir)/generated/_atanh_r16.F90 \
- $(srcdir)/generated/_sin_r4.F90 \
- $(srcdir)/generated/_sin_r8.F90 \
- $(srcdir)/generated/_sin_r10.F90 \
- $(srcdir)/generated/_sin_r16.F90 \
- $(srcdir)/generated/_sin_c4.F90 \
- $(srcdir)/generated/_sin_c8.F90 \
- $(srcdir)/generated/_sin_c10.F90 \
- $(srcdir)/generated/_sin_c16.F90 \
- $(srcdir)/generated/_cos_r4.F90 \
- $(srcdir)/generated/_cos_r8.F90 \
- $(srcdir)/generated/_cos_r10.F90 \
- $(srcdir)/generated/_cos_r16.F90 \
- $(srcdir)/generated/_cos_c4.F90 \
- $(srcdir)/generated/_cos_c8.F90 \
- $(srcdir)/generated/_cos_c10.F90 \
- $(srcdir)/generated/_cos_c16.F90 \
- $(srcdir)/generated/_tan_r4.F90 \
- $(srcdir)/generated/_tan_r8.F90 \
- $(srcdir)/generated/_tan_r10.F90 \
- $(srcdir)/generated/_tan_r16.F90 \
- $(srcdir)/generated/_sinh_r4.F90 \
- $(srcdir)/generated/_sinh_r8.F90 \
- $(srcdir)/generated/_sinh_r10.F90 \
- $(srcdir)/generated/_sinh_r16.F90 \
- $(srcdir)/generated/_cosh_r4.F90 \
- $(srcdir)/generated/_cosh_r8.F90 \
- $(srcdir)/generated/_cosh_r10.F90 \
- $(srcdir)/generated/_cosh_r16.F90 \
- $(srcdir)/generated/_tanh_r4.F90 \
- $(srcdir)/generated/_tanh_r8.F90 \
- $(srcdir)/generated/_tanh_r10.F90 \
- $(srcdir)/generated/_tanh_r16.F90 \
- $(srcdir)/generated/_conjg_c4.F90 \
- $(srcdir)/generated/_conjg_c8.F90 \
- $(srcdir)/generated/_conjg_c10.F90 \
- $(srcdir)/generated/_conjg_c16.F90 \
- $(srcdir)/generated/_aint_r4.F90 \
- $(srcdir)/generated/_aint_r8.F90 \
- $(srcdir)/generated/_aint_r10.F90 \
- $(srcdir)/generated/_aint_r16.F90 \
- $(srcdir)/generated/_anint_r4.F90 \
- $(srcdir)/generated/_anint_r8.F90 \
- $(srcdir)/generated/_anint_r10.F90 \
- $(srcdir)/generated/_anint_r16.F90 \
- $(srcdir)/generated/_sign_i4.F90 \
- $(srcdir)/generated/_sign_i8.F90 \
- $(srcdir)/generated/_sign_i16.F90 \
- $(srcdir)/generated/_sign_r4.F90 \
- $(srcdir)/generated/_sign_r8.F90 \
- $(srcdir)/generated/_sign_r10.F90 \
- $(srcdir)/generated/_sign_r16.F90 \
- $(srcdir)/generated/_dim_i4.F90 \
- $(srcdir)/generated/_dim_i8.F90 \
- $(srcdir)/generated/_dim_i16.F90 \
- $(srcdir)/generated/_dim_r4.F90 \
- $(srcdir)/generated/_dim_r8.F90 \
- $(srcdir)/generated/_dim_r10.F90 \
- $(srcdir)/generated/_dim_r16.F90 \
- $(srcdir)/generated/_atan2_r4.F90 \
- $(srcdir)/generated/_atan2_r8.F90 \
- $(srcdir)/generated/_atan2_r10.F90 \
- $(srcdir)/generated/_atan2_r16.F90 \
- $(srcdir)/generated/_mod_i4.F90 \
- $(srcdir)/generated/_mod_i8.F90 \
- $(srcdir)/generated/_mod_i16.F90 \
- $(srcdir)/generated/_mod_r4.F90 \
- $(srcdir)/generated/_mod_r8.F90 \
- $(srcdir)/generated/_mod_r10.F90 \
- $(srcdir)/generated/_mod_r16.F90 \
- $(srcdir)/generated/misc_specifics.F90 intrinsics/dprod_r8.f90 \
- intrinsics/f2c_specifics.F90 libgfortran_c.c $(filter-out \
- %.c,$(prereq_SRC))
am__objects_1 = backtrace.lo compile_options.lo convert_char.lo \
environ.lo error.lo fpu.lo main.lo memory.lo pause.lo stop.lo \
string.lo select.lo
@@ -788,8 +286,6 @@ LINK = $(LIBTOOL) --tag=CC --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
FCCOMPILE = $(FC) $(AM_FCFLAGS) $(FCFLAGS)
LTFCCOMPILE = $(LIBTOOL) --mode=compile $(FC) $(AM_FCFLAGS) $(FCFLAGS)
SOURCES = $(libgfortran_la_SOURCES) $(libgfortranbegin_la_SOURCES)
-DIST_SOURCES = $(am__libgfortran_la_SOURCES_DIST) \
- $(libgfortranbegin_la_SOURCES)
MULTISRCTOP =
MULTIBUILDTOP =
MULTIDIRS =
@@ -798,17 +294,6 @@ MULTIDO = true
MULTICLEAN = true
ETAGS = etags
CTAGS = ctags
-DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
-distdir = $(PACKAGE)-$(VERSION)
-top_distdir = $(distdir)
-am__remove_distdir = \
- { test ! -d $(distdir) \
- || { find $(distdir) -type d ! -perm -200 -exec chmod u+w {} ';' \
- && rm -fr $(distdir); }; }
-DIST_ARCHIVES = $(distdir).tar.gz
-GZIP_ENV = --best
-distuninstallcheck_listfiles = find . -type f -print
-distcleancheck_listfiles = find . -type f -print
ACLOCAL = @ACLOCAL@
AMDEP_FALSE = @AMDEP_FALSE@
AMDEP_TRUE = @AMDEP_TRUE@
@@ -5801,134 +5286,6 @@ GTAGS:
distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
-
-distdir: $(DISTFILES)
- $(am__remove_distdir)
- mkdir $(distdir)
- $(mkdir_p) $(distdir)/.. $(distdir)/../config $(distdir)/m4
- @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
- topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
- list='$(DISTFILES)'; for file in $$list; do \
- case $$file in \
- $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
- $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
- esac; \
- if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
- dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
- if test "$$dir" != "$$file" && test "$$dir" != "."; then \
- dir="/$$dir"; \
- $(mkdir_p) "$(distdir)$$dir"; \
- else \
- dir=''; \
- fi; \
- if test -d $$d/$$file; then \
- if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
- cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
- fi; \
- cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
- else \
- test -f $(distdir)/$$file \
- || cp -p $$d/$$file $(distdir)/$$file \
- || exit 1; \
- fi; \
- done
- -find $(distdir) -type d ! -perm -777 -exec chmod a+rwx {} \; -o \
- ! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \
- ! -type d ! -perm -400 -exec chmod a+r {} \; -o \
- ! -type d ! -perm -444 -exec $(SHELL) $(install_sh) -c -m a+r {} {} \; \
- || chmod -R a+r $(distdir)
-dist-gzip: distdir
- tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
- $(am__remove_distdir)
-
-dist-bzip2: distdir
- tardir=$(distdir) && $(am__tar) | bzip2 -9 -c >$(distdir).tar.bz2
- $(am__remove_distdir)
-
-dist-tarZ: distdir
- tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z
- $(am__remove_distdir)
-
-dist-shar: distdir
- shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz
- $(am__remove_distdir)
-
-dist-zip: distdir
- -rm -f $(distdir).zip
- zip -rq $(distdir).zip $(distdir)
- $(am__remove_distdir)
-
-dist dist-all: distdir
- tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
- $(am__remove_distdir)
-
-# This target untars the dist file and tries a VPATH configuration. Then
-# it guarantees that the distribution is self-contained by making another
-# tarfile.
-distcheck: dist
- case '$(DIST_ARCHIVES)' in \
- *.tar.gz*) \
- GZIP=$(GZIP_ENV) gunzip -c $(distdir).tar.gz | $(am__untar) ;;\
- *.tar.bz2*) \
- bunzip2 -c $(distdir).tar.bz2 | $(am__untar) ;;\
- *.tar.Z*) \
- uncompress -c $(distdir).tar.Z | $(am__untar) ;;\
- *.shar.gz*) \
- GZIP=$(GZIP_ENV) gunzip -c $(distdir).shar.gz | unshar ;;\
- *.zip*) \
- unzip $(distdir).zip ;;\
- esac
- chmod -R a-w $(distdir); chmod a+w $(distdir)
- mkdir $(distdir)/_build
- mkdir $(distdir)/_inst
- chmod a-w $(distdir)
- dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \
- && dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \
- && cd $(distdir)/_build \
- && ../configure --srcdir=.. --prefix="$$dc_install_base" \
- $(DISTCHECK_CONFIGURE_FLAGS) \
- && $(MAKE) $(AM_MAKEFLAGS) \
- && $(MAKE) $(AM_MAKEFLAGS) dvi \
- && $(MAKE) $(AM_MAKEFLAGS) check \
- && $(MAKE) $(AM_MAKEFLAGS) install \
- && $(MAKE) $(AM_MAKEFLAGS) installcheck \
- && $(MAKE) $(AM_MAKEFLAGS) uninstall \
- && $(MAKE) $(AM_MAKEFLAGS) distuninstallcheck_dir="$$dc_install_base" \
- distuninstallcheck \
- && chmod -R a-w "$$dc_install_base" \
- && ({ \
- (cd ../.. && umask 077 && mkdir "$$dc_destdir") \
- && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" install \
- && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" uninstall \
- && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" \
- distuninstallcheck_dir="$$dc_destdir" distuninstallcheck; \
- } || { rm -rf "$$dc_destdir"; exit 1; }) \
- && rm -rf "$$dc_destdir" \
- && $(MAKE) $(AM_MAKEFLAGS) dist \
- && rm -rf $(DIST_ARCHIVES) \
- && $(MAKE) $(AM_MAKEFLAGS) distcleancheck
- $(am__remove_distdir)
- @(echo "$(distdir) archives ready for distribution: "; \
- list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \
- sed -e '1{h;s/./=/g;p;x;}' -e '$${p;x;}'
-distuninstallcheck:
- @cd $(distuninstallcheck_dir) \
- && test `$(distuninstallcheck_listfiles) | wc -l` -le 1 \
- || { echo "ERROR: files left after uninstall:" ; \
- if test -n "$(DESTDIR)"; then \
- echo " (check DESTDIR support)"; \
- fi ; \
- $(distuninstallcheck_listfiles) ; \
- exit 1; } >&2
-distcleancheck: distclean
- @if test '$(srcdir)' = . ; then \
- echo "ERROR: distcleancheck can only run from a VPATH build" ; \
- exit 1 ; \
- fi
- @test `$(distcleancheck_listfiles) | wc -l` -eq 0 \
- || { echo "ERROR: files left in build directory after distclean:" ; \
- $(distcleancheck_listfiles) ; \
- exit 1; } >&2
check-am: all-am
check: $(BUILT_SOURCES)
$(MAKE) $(AM_MAKEFLAGS) check-am
@@ -6022,14 +5379,12 @@ uninstall-am: uninstall-info-am uninstall-myexeclibLTLIBRARIES \
.PHONY: CTAGS GTAGS all all-am all-multi am--refresh check check-am \
clean clean-generic clean-libtool clean-multi \
clean-myexeclibLTLIBRARIES clean-toolexeclibLTLIBRARIES ctags \
- dist dist-all dist-bzip2 dist-gzip dist-shar dist-tarZ \
- dist-zip distcheck distclean distclean-compile \
- distclean-generic distclean-hdr distclean-libtool \
- distclean-multi distclean-tags distcleancheck distdir \
- distuninstallcheck dvi dvi-am html html-am info info-am \
- install install-am install-data install-data-am install-exec \
- install-exec-am install-info install-info-am install-man \
- install-multi install-myexeclibLTLIBRARIES install-strip \
+ distclean distclean-compile distclean-generic distclean-hdr \
+ distclean-libtool distclean-multi distclean-tags dvi dvi-am \
+ html html-am info info-am install install-am install-data \
+ install-data-am install-exec install-exec-am install-info \
+ install-info-am install-man install-multi \
+ install-myexeclibLTLIBRARIES install-strip \
install-toolexeclibLTLIBRARIES installcheck installcheck-am \
installdirs maintainer-clean maintainer-clean-generic \
maintainer-clean-multi mostlyclean mostlyclean-compile \
diff --git a/libgfortran/configure.ac b/libgfortran/configure.ac
index c0709bbbe51..d712e93d0ff 100644
--- a/libgfortran/configure.ac
+++ b/libgfortran/configure.ac
@@ -62,7 +62,7 @@ target_alias=${target_alias-$host_alias}
# file in the top srcdir, etc, etc), so stop complaining.
# -Wall: turns on all automake warnings...
# -Wno-portability: ...except this one, since GNU make is required.
-AM_INIT_AUTOMAKE([1.9.6 no-define foreign -Wall -Wno-portability])
+AM_INIT_AUTOMAKE([1.9.6 no-define foreign no-dist -Wall -Wno-portability])
AM_MAINTAINER_MODE
AM_ENABLE_MULTILIB(, ..)
diff --git a/libgomp/ChangeLog b/libgomp/ChangeLog
index 8a26d5533ab..11b12126e66 100644
--- a/libgomp/ChangeLog
+++ b/libgomp/ChangeLog
@@ -1,3 +1,34 @@
+2010-04-30 Jakub Jelinek <jakub@redhat.com>
+
+ PR c/43893
+ * testsuite/libgomp.c/pr43893.c: New test.
+ * testsuite/libgomp.c++/pr43893.C: New test.
+
+2010-04-29 Jakub Jelinek <jakub@redhat.com>
+
+ PR other/43620
+ * configure.ac (AM_INIT_AUTOMAKE): Add no-dist option.
+ * Makefile.in: Regenerated.
+
+2010-04-29 Release Manager
+
+ * GCC 4.4.4 released.
+
+2010-04-21 Jakub Jelinek <jakub@redhat.com>
+
+ PR middle-end/43570
+ * testsuite/libgomp.fortran/vla8.f90: New test.
+
+ 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.
+
+ PR libgomp/43569
+ * sections.c (gomp_sections_init): Initialize ws->mode.
+
2010-03-22 Jakub Jelinek <jakub@redhat.com>
PR libgomp/42942
diff --git a/libgomp/Makefile.in b/libgomp/Makefile.in
index fe709e82734..ef9b42f255b 100644
--- a/libgomp/Makefile.in
+++ b/libgomp/Makefile.in
@@ -38,15 +38,15 @@ POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
target_triplet = @target@
-DIST_COMMON = $(am__configure_deps) $(srcdir)/../config.guess \
- $(srcdir)/../config.sub $(srcdir)/../depcomp \
- $(srcdir)/../install-sh $(srcdir)/../ltmain.sh \
- $(srcdir)/../missing $(srcdir)/../mkinstalldirs \
- $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
- $(srcdir)/config.h.in $(srcdir)/libgomp.spec.in \
- $(srcdir)/libgomp_f.h.in $(srcdir)/omp.h.in \
- $(srcdir)/omp_lib.f90.in $(srcdir)/omp_lib.h.in \
- $(top_srcdir)/configure ChangeLog
+DIST_COMMON = $(srcdir)/../config.guess $(srcdir)/../config.sub \
+ ChangeLog $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
+ $(top_srcdir)/configure $(am__configure_deps) \
+ $(srcdir)/config.h.in $(srcdir)/../mkinstalldirs \
+ $(srcdir)/omp.h.in $(srcdir)/omp_lib.h.in \
+ $(srcdir)/omp_lib.f90.in $(srcdir)/libgomp_f.h.in \
+ $(srcdir)/libgomp.spec.in $(srcdir)/../depcomp \
+ $(srcdir)/../ltmain.sh $(srcdir)/../config.guess \
+ $(srcdir)/../config.sub
subdir = .
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/../config/acx.m4 \
@@ -100,7 +100,6 @@ CCLD = $(CC)
LINK = $(LIBTOOL) --tag=CC --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
$(AM_LDFLAGS) $(LDFLAGS) -o $@
SOURCES = $(libgomp_la_SOURCES)
-DIST_SOURCES = $(libgomp_la_SOURCES)
MULTISRCTOP =
MULTIBUILDTOP =
MULTIDIRS =
@@ -133,17 +132,6 @@ HEADERS = $(nodist_finclude_HEADERS) $(nodist_libsubinclude_HEADERS) \
ETAGS = etags
CTAGS = ctags
DIST_SUBDIRS = $(SUBDIRS)
-DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
-distdir = $(PACKAGE)-$(VERSION)
-top_distdir = $(distdir)
-am__remove_distdir = \
- { test ! -d $(distdir) \
- || { find $(distdir) -type d ! -perm -200 -exec chmod u+w {} ';' \
- && rm -fr $(distdir); }; }
-DIST_ARCHIVES = $(distdir).tar.gz
-GZIP_ENV = --best
-distuninstallcheck_listfiles = find . -type f -print
-distcleancheck_listfiles = find . -type f -print
ACLOCAL = @ACLOCAL@
AMDEP_FALSE = @AMDEP_FALSE@
AMDEP_TRUE = @AMDEP_TRUE@
@@ -771,152 +759,6 @@ GTAGS:
distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
-
-distdir: $(DISTFILES)
- $(am__remove_distdir)
- mkdir $(distdir)
- $(mkdir_p) $(distdir)/. $(distdir)/.. $(distdir)/../config
- @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
- topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
- list='$(DISTFILES)'; for file in $$list; do \
- case $$file in \
- $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
- $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
- esac; \
- if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
- dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
- if test "$$dir" != "$$file" && test "$$dir" != "."; then \
- dir="/$$dir"; \
- $(mkdir_p) "$(distdir)$$dir"; \
- else \
- dir=''; \
- fi; \
- if test -d $$d/$$file; then \
- if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
- cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
- fi; \
- cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
- else \
- test -f $(distdir)/$$file \
- || cp -p $$d/$$file $(distdir)/$$file \
- || exit 1; \
- fi; \
- done
- list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
- if test "$$subdir" = .; then :; else \
- test -d "$(distdir)/$$subdir" \
- || $(mkdir_p) "$(distdir)/$$subdir" \
- || exit 1; \
- distdir=`$(am__cd) $(distdir) && pwd`; \
- top_distdir=`$(am__cd) $(top_distdir) && pwd`; \
- (cd $$subdir && \
- $(MAKE) $(AM_MAKEFLAGS) \
- top_distdir="$$top_distdir" \
- distdir="$$distdir/$$subdir" \
- distdir) \
- || exit 1; \
- fi; \
- done
- $(MAKE) $(AM_MAKEFLAGS) \
- top_distdir="$(top_distdir)" distdir="$(distdir)" \
- dist-info
- -find $(distdir) -type d ! -perm -777 -exec chmod a+rwx {} \; -o \
- ! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \
- ! -type d ! -perm -400 -exec chmod a+r {} \; -o \
- ! -type d ! -perm -444 -exec $(SHELL) $(install_sh) -c -m a+r {} {} \; \
- || chmod -R a+r $(distdir)
-dist-gzip: distdir
- tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
- $(am__remove_distdir)
-
-dist-bzip2: distdir
- tardir=$(distdir) && $(am__tar) | bzip2 -9 -c >$(distdir).tar.bz2
- $(am__remove_distdir)
-
-dist-tarZ: distdir
- tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z
- $(am__remove_distdir)
-
-dist-shar: distdir
- shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz
- $(am__remove_distdir)
-
-dist-zip: distdir
- -rm -f $(distdir).zip
- zip -rq $(distdir).zip $(distdir)
- $(am__remove_distdir)
-
-dist dist-all: distdir
- tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
- $(am__remove_distdir)
-
-# This target untars the dist file and tries a VPATH configuration. Then
-# it guarantees that the distribution is self-contained by making another
-# tarfile.
-distcheck: dist
- case '$(DIST_ARCHIVES)' in \
- *.tar.gz*) \
- GZIP=$(GZIP_ENV) gunzip -c $(distdir).tar.gz | $(am__untar) ;;\
- *.tar.bz2*) \
- bunzip2 -c $(distdir).tar.bz2 | $(am__untar) ;;\
- *.tar.Z*) \
- uncompress -c $(distdir).tar.Z | $(am__untar) ;;\
- *.shar.gz*) \
- GZIP=$(GZIP_ENV) gunzip -c $(distdir).shar.gz | unshar ;;\
- *.zip*) \
- unzip $(distdir).zip ;;\
- esac
- chmod -R a-w $(distdir); chmod a+w $(distdir)
- mkdir $(distdir)/_build
- mkdir $(distdir)/_inst
- chmod a-w $(distdir)
- dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \
- && dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \
- && cd $(distdir)/_build \
- && ../configure --srcdir=.. --prefix="$$dc_install_base" \
- $(DISTCHECK_CONFIGURE_FLAGS) \
- && $(MAKE) $(AM_MAKEFLAGS) \
- && $(MAKE) $(AM_MAKEFLAGS) dvi \
- && $(MAKE) $(AM_MAKEFLAGS) check \
- && $(MAKE) $(AM_MAKEFLAGS) install \
- && $(MAKE) $(AM_MAKEFLAGS) installcheck \
- && $(MAKE) $(AM_MAKEFLAGS) uninstall \
- && $(MAKE) $(AM_MAKEFLAGS) distuninstallcheck_dir="$$dc_install_base" \
- distuninstallcheck \
- && chmod -R a-w "$$dc_install_base" \
- && ({ \
- (cd ../.. && umask 077 && mkdir "$$dc_destdir") \
- && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" install \
- && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" uninstall \
- && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" \
- distuninstallcheck_dir="$$dc_destdir" distuninstallcheck; \
- } || { rm -rf "$$dc_destdir"; exit 1; }) \
- && rm -rf "$$dc_destdir" \
- && $(MAKE) $(AM_MAKEFLAGS) dist \
- && rm -rf $(DIST_ARCHIVES) \
- && $(MAKE) $(AM_MAKEFLAGS) distcleancheck
- $(am__remove_distdir)
- @(echo "$(distdir) archives ready for distribution: "; \
- list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \
- sed -e '1{h;s/./=/g;p;x;}' -e '$${p;x;}'
-distuninstallcheck:
- @cd $(distuninstallcheck_dir) \
- && test `$(distuninstallcheck_listfiles) | wc -l` -le 1 \
- || { echo "ERROR: files left after uninstall:" ; \
- if test -n "$(DESTDIR)"; then \
- echo " (check DESTDIR support)"; \
- fi ; \
- $(distuninstallcheck_listfiles) ; \
- exit 1; } >&2
-distcleancheck: distclean
- @if test '$(srcdir)' = . ; then \
- echo "ERROR: distcleancheck can only run from a VPATH build" ; \
- exit 1 ; \
- fi
- @test `$(distcleancheck_listfiles) | wc -l` -eq 0 \
- || { echo "ERROR: files left in build directory after distclean:" ; \
- $(distcleancheck_listfiles) ; \
- exit 1; } >&2
check-am: all-am
check: check-recursive
all-am: Makefile $(INFO_DEPS) $(LTLIBRARIES) all-multi $(HEADERS) \
@@ -1049,16 +891,13 @@ uninstall-info: uninstall-info-recursive
.PHONY: $(RECURSIVE_TARGETS) CTAGS GTAGS all all-am all-local \
all-multi am--refresh check check-am clean clean-generic \
clean-libtool clean-multi clean-recursive \
- clean-toolexeclibLTLIBRARIES ctags ctags-recursive dist \
- dist-all dist-bzip2 dist-gzip dist-info dist-shar dist-tarZ \
- dist-zip distcheck distclean distclean-compile \
- distclean-generic distclean-hdr distclean-libtool \
- distclean-multi distclean-recursive distclean-tags \
- distcleancheck distdir distuninstallcheck dvi dvi-am html \
- html-am info info-am install install-am install-data \
- install-data-am install-exec install-exec-am install-info \
- install-info-am install-man install-multi \
- install-nodist_fincludeHEADERS \
+ clean-toolexeclibLTLIBRARIES ctags ctags-recursive dist-info \
+ distclean distclean-compile distclean-generic distclean-hdr \
+ distclean-libtool distclean-multi distclean-recursive \
+ distclean-tags dvi dvi-am html html-am info info-am install \
+ install-am install-data install-data-am install-exec \
+ install-exec-am install-info install-info-am install-man \
+ install-multi install-nodist_fincludeHEADERS \
install-nodist_libsubincludeHEADERS \
install-nodist_toolexeclibHEADERS install-strip \
install-toolexeclibLTLIBRARIES installcheck installcheck-am \
diff --git a/libgomp/config/linux/affinity.c b/libgomp/config/linux/affinity.c
index 40519e8896a..da9f3d8fdcb 100644
--- a/libgomp/config/linux/affinity.c
+++ b/libgomp/config/linux/affinity.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 2006, 2007, 2008, 2009 Free Software Foundation, Inc.
+/* Copyright (C) 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
Contributed by Jakub Jelinek <jakub@redhat.com>.
This file is part of the GNU OpenMP Library (libgomp).
@@ -39,8 +39,9 @@ static unsigned int affinity_counter;
void
gomp_init_affinity (void)
{
- cpu_set_t cpuset;
+ cpu_set_t cpuset, cpusetnew;
size_t idx, widx;
+ unsigned long cpus = 0;
if (pthread_getaffinity_np (pthread_self (), sizeof (cpuset), &cpuset))
{
@@ -51,10 +52,18 @@ gomp_init_affinity (void)
return;
}
+ CPU_ZERO (&cpusetnew);
for (widx = idx = 0; idx < gomp_cpu_affinity_len; idx++)
if (gomp_cpu_affinity[idx] < CPU_SETSIZE
&& CPU_ISSET (gomp_cpu_affinity[idx], &cpuset))
- gomp_cpu_affinity[widx++] = gomp_cpu_affinity[idx];
+ {
+ if (! CPU_ISSET (gomp_cpu_affinity[idx], &cpusetnew))
+ {
+ cpus++;
+ CPU_SET (gomp_cpu_affinity[idx], &cpusetnew);
+ }
+ gomp_cpu_affinity[widx++] = gomp_cpu_affinity[idx];
+ }
if (widx == 0)
{
@@ -66,6 +75,8 @@ gomp_init_affinity (void)
}
gomp_cpu_affinity_len = widx;
+ if (cpus < gomp_available_cpus)
+ gomp_available_cpus = cpus;
CPU_ZERO (&cpuset);
CPU_SET (gomp_cpu_affinity[0], &cpuset);
pthread_setaffinity_np (pthread_self (), sizeof (cpuset), &cpuset);
diff --git a/libgomp/config/linux/proc.c b/libgomp/config/linux/proc.c
index dad6237e609..01f51dfa193 100644
--- a/libgomp/config/linux/proc.c
+++ b/libgomp/config/linux/proc.c
@@ -1,4 +1,5 @@
-/* Copyright (C) 2005, 2006, 2007, 2008, 2009 Free Software Foundation, Inc.
+/* Copyright (C) 2005, 2006, 2007, 2008, 2009, 2010
+ Free Software Foundation, Inc.
Contributed by Jakub Jelinek <jakub@redhat.com>.
This file is part of the GNU OpenMP Library (libgomp).
@@ -104,26 +105,13 @@ get_num_procs (void)
}
else
{
- size_t idx;
- static int affinity_cpus;
-
/* We can't use pthread_getaffinity_np in this case
(we have changed it ourselves, it binds to just one CPU).
Count instead the number of different CPUs we are
- using. */
- CPU_ZERO (&cpuset);
- if (affinity_cpus == 0)
- {
- int cpus = 0;
- for (idx = 0; idx < gomp_cpu_affinity_len; idx++)
- if (! CPU_ISSET (gomp_cpu_affinity[idx], &cpuset))
- {
- cpus++;
- CPU_SET (gomp_cpu_affinity[idx], &cpuset);
- }
- affinity_cpus = cpus;
- }
- return affinity_cpus;
+ using. gomp_init_affinity updated gomp_available_cpus to
+ the number of CPUs in the GOMP_AFFINITY mask that we are
+ allowed to use though. */
+ return gomp_available_cpus;
}
#endif
#ifdef _SC_NPROCESSORS_ONLN
diff --git a/libgomp/configure.ac b/libgomp/configure.ac
index db8e2811a30..dbf171830cd 100644
--- a/libgomp/configure.ac
+++ b/libgomp/configure.ac
@@ -61,7 +61,7 @@ target_alias=${target_alias-$host_alias}
# -Wall: turns on all automake warnings...
# -Wno-portability: ...except this one, since GNU make is required.
# -Wno-override: ... and this one, since we do want this in testsuite.
-AM_INIT_AUTOMAKE([1.9.0 foreign -Wall -Wno-portability -Wno-override])
+AM_INIT_AUTOMAKE([1.9.0 foreign no-dist -Wall -Wno-portability -Wno-override])
AM_ENABLE_MULTILIB(, ..)
# Calculate toolexeclibdir
diff --git a/libgomp/sections.c b/libgomp/sections.c
index 7acd441de53..c7f49b7c32a 100644
--- a/libgomp/sections.c
+++ b/libgomp/sections.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 2005, 2007, 2008, 2009 Free Software Foundation, Inc.
+/* Copyright (C) 2005, 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
Contributed by Richard Henderson <rth@redhat.com>.
This file is part of the GNU OpenMP Library (libgomp).
@@ -34,9 +34,25 @@ gomp_sections_init (struct gomp_work_share *ws, unsigned count)
{
ws->sched = GFS_DYNAMIC;
ws->chunk_size = 1;
- ws->end = count + 1;
+ ws->end = count + 1L;
ws->incr = 1;
ws->next = 1;
+#ifdef HAVE_SYNC_BUILTINS
+ /* Prepare things to make each iteration faster. */
+ if (sizeof (long) > sizeof (unsigned))
+ ws->mode = 1;
+ else
+ {
+ struct gomp_thread *thr = gomp_thread ();
+ struct gomp_team *team = thr->ts.team;
+ long nthreads = team ? team->nthreads : 1;
+
+ ws->mode = ((nthreads | ws->end)
+ < 1UL << (sizeof (long) * __CHAR_BIT__ / 2 - 1));
+ }
+#else
+ ws->mode = 0;
+#endif
}
/* This routine is called when first encountering a sections construct
diff --git a/libgomp/testsuite/libgomp.c++/pr43893.C b/libgomp/testsuite/libgomp.c++/pr43893.C
new file mode 100644
index 00000000000..be0b6f4abd4
--- /dev/null
+++ b/libgomp/testsuite/libgomp.c++/pr43893.C
@@ -0,0 +1,125 @@
+// PR c/43893
+// { dg-do run }
+
+extern "C" void abort ();
+
+template <typename T, T M, T N>
+void
+f1 ()
+{
+ int c;
+ T i;
+ c = 0;
+#pragma omp parallel for reduction(+:c)
+ for (i = M; i < N; i++)
+ c++;
+ if (c != 1)
+ abort ();
+}
+
+template <typename T, T M, T N>
+void
+f2 ()
+{
+ int c;
+ T i;
+ c = 0;
+#pragma omp parallel for reduction(+:c)
+ for (i = M; i <= N; i++)
+ c++;
+ if (c != 1)
+ abort ();
+}
+
+template <typename T, T M, T N>
+void
+f3 ()
+{
+ int c;
+ T i;
+ c = 0;
+#pragma omp parallel for reduction(+:c)
+ for (i = M; i > N; i--)
+ c++;
+ if (c != 1)
+ abort ();
+}
+
+template <typename T, T M, T N>
+void
+f4 ()
+{
+ int c;
+ T i;
+ c = 0;
+#pragma omp parallel for reduction(+:c)
+ for (i = M; i >= N; i--)
+ c++;
+ if (c != 1)
+ abort ();
+}
+
+int
+main ()
+{
+ int c;
+ unsigned int i;
+ int j;
+ c = 0;
+#pragma omp parallel for reduction(+:c)
+ for (i = 0; i < 1; i++)
+ c++;
+ if (c != 1)
+ abort ();
+ f1 <unsigned int, 0, 1> ();
+ c = 0;
+#pragma omp parallel for reduction(+:c)
+ for (i = 0; i <= 0; i++)
+ c++;
+ if (c != 1)
+ abort ();
+ f2 <unsigned int, 0, 0> ();
+ c = 0;
+#pragma omp parallel for reduction(+:c)
+ for (j = - __INT_MAX__ - 1; j < - __INT_MAX__; j++)
+ c++;
+ if (c != 1)
+ abort ();
+ f1 <int, (- __INT_MAX__ - 1), (- __INT_MAX__)> ();
+ c = 0;
+#pragma omp parallel for reduction(+:c)
+ for (j = - __INT_MAX__ - 1; j <= - __INT_MAX__ - 1; j++)
+ c++;
+ if (c != 1)
+ abort ();
+ f2 <int, (- __INT_MAX__ - 1), (- __INT_MAX__ - 1)> ();
+ c = 0;
+#pragma omp parallel for reduction(+:c)
+ for (i = 2U * __INT_MAX__ + 1; i > 2U * __INT_MAX__; i--)
+ c++;
+ if (c != 1)
+ abort ();
+ f3 <unsigned int, (2U * __INT_MAX__ + 1), (2U * __INT_MAX__)> ();
+ c = 0;
+#pragma omp parallel for reduction(+:c)
+ for (i = 2U * __INT_MAX__ + 1; i >= 2U * __INT_MAX__ + 1; i--)
+ c++;
+ if (c != 1)
+ abort ();
+ f4 <unsigned int, (2U * __INT_MAX__ + 1), (2U * __INT_MAX__ + 1)> ();
+ c = 0;
+#pragma omp parallel for reduction(+:c)
+ for (j = __INT_MAX__; j > __INT_MAX__ - 1; j--)
+ c++;
+ if (c != 1)
+ abort ();
+ f3 <int, __INT_MAX__, (__INT_MAX__ - 1)> ();
+ c = 0;
+#pragma omp parallel for reduction(+:c)
+ for (j = __INT_MAX__; j >= __INT_MAX__; j--)
+ c++;
+ if (c != 1)
+ abort ();
+ f4 <int, __INT_MAX__, __INT_MAX__> ();
+ return 0;
+}
diff --git a/libgomp/testsuite/libgomp.c/pr43893.c b/libgomp/testsuite/libgomp.c/pr43893.c
new file mode 100644
index 00000000000..b85e9242bb3
--- /dev/null
+++ b/libgomp/testsuite/libgomp.c/pr43893.c
@@ -0,0 +1,61 @@
+/* PR c/43893 */
+/* { dg-do run } */
+
+extern void abort (void);
+
+int
+main ()
+{
+ int c;
+ unsigned int i;
+ int j;
+ c = 0;
+#pragma omp parallel for reduction(+:c)
+ for (i = 0; i < 1; i++)
+ c++;
+ if (c != 1)
+ abort ();
+ c = 0;
+#pragma omp parallel for reduction(+:c)
+ for (i = 0; i <= 0; i++)
+ c++;
+ if (c != 1)
+ abort ();
+ c = 0;
+#pragma omp parallel for reduction(+:c)
+ for (j = - __INT_MAX__ - 1; j < - __INT_MAX__; j++)
+ c++;
+ if (c != 1)
+ abort ();
+ c = 0;
+#pragma omp parallel for reduction(+:c)
+ for (j = - __INT_MAX__ - 1; j <= - __INT_MAX__ - 1; j++)
+ c++;
+ if (c != 1)
+ abort ();
+ c = 0;
+#pragma omp parallel for reduction(+:c)
+ for (i = 2U * __INT_MAX__ + 1; i > 2U * __INT_MAX__; i--)
+ c++;
+ if (c != 1)
+ abort ();
+ c = 0;
+#pragma omp parallel for reduction(+:c)
+ for (i = 2U * __INT_MAX__ + 1; i >= 2U * __INT_MAX__ + 1; i--)
+ c++;
+ if (c != 1)
+ abort ();
+ c = 0;
+#pragma omp parallel for reduction(+:c)
+ for (j = __INT_MAX__; j > __INT_MAX__ - 1; j--)
+ c++;
+ if (c != 1)
+ abort ();
+ c = 0;
+#pragma omp parallel for reduction(+:c)
+ for (j = __INT_MAX__; j >= __INT_MAX__; j--)
+ c++;
+ if (c != 1)
+ abort ();
+ return 0;
+}
diff --git a/libgomp/testsuite/libgomp.fortran/vla8.f90 b/libgomp/testsuite/libgomp.fortran/vla8.f90
new file mode 100644
index 00000000000..f66fe84a375
--- /dev/null
+++ b/libgomp/testsuite/libgomp.fortran/vla8.f90
@@ -0,0 +1,254 @@
+! { dg-do run }
+
+ call test
+contains
+ subroutine check (x, y, l)
+ integer :: x, y
+ logical :: l
+ l = l .or. x .ne. y
+ end subroutine check
+
+ subroutine foo (c, d, e, f, g, h, i, j, k, n)
+ use omp_lib
+ integer :: n
+ character (len = *) :: c
+ character (len = n) :: d
+ integer, dimension (2, 3:5, n) :: e
+ integer, dimension (2, 3:n, n) :: f
+ character (len = *), dimension (5, 3:n) :: g
+ character (len = n), dimension (5, 3:n) :: h
+ real, dimension (:, :, :) :: i
+ double precision, dimension (3:, 5:, 7:) :: j
+ integer, dimension (:, :, :) :: k
+ logical :: l
+ integer :: p, q, r
+ character (len = n) :: s
+ integer, dimension (2, 3:5, n) :: t
+ integer, dimension (2, 3:n, n) :: u
+ character (len = n), dimension (5, 3:n) :: v
+ character (len = 2 * n + 24) :: w
+ integer :: x, z
+ character (len = 1) :: y
+ l = .false.
+!$omp parallel default (none) private (c, d, e, f, g, h, i, j, k) &
+!$omp & private (s, t, u, v) reduction (.or.:l) num_threads (6) &
+!$omp private (p, q, r, w, x, y) shared (z)
+ x = omp_get_thread_num ()
+ w = ''
+ if (x .eq. 0) w = 'thread0thr_number_0THREAD0THR_NUMBER_0'
+ if (x .eq. 1) w = 'thread1thr_number_1THREAD1THR_NUMBER_1'
+ if (x .eq. 2) w = 'thread2thr_number_2THREAD2THR_NUMBER_2'
+ if (x .eq. 3) w = 'thread3thr_number_3THREAD3THR_NUMBER_3'
+ if (x .eq. 4) w = 'thread4thr_number_4THREAD4THR_NUMBER_4'
+ if (x .eq. 5) w = 'thread5thr_number_5THREAD5THR_NUMBER_5'
+ c = w(8:19)
+ d = w(1:7)
+ forall (p = 1:2, q = 3:5, r = 1:7) e(p, q, r) = 5 * x + p + q + 2 * r
+ forall (p = 1:2, q = 3:7, r = 1:7) f(p, q, r) = 25 * x + p + q + 2 * r
+ forall (p = 1:5, q = 3:7, p + q .le. 8) g(p, q) = w(8:19)
+ forall (p = 1:5, q = 3:7, p + q .gt. 8) g(p, q) = w(27:38)
+ forall (p = 1:5, q = 3:7, p + q .le. 8) h(p, q) = w(1:7)
+ forall (p = 1:5, q = 3:7, p + q .gt. 8) h(p, q) = w(20:26)
+ forall (p = 3:5, q = 2:6, r = 1:7) i(p - 2, q - 1, r) = (7.5 + x) * p * q * r
+ forall (p = 3:5, q = 2:6, r = 1:7) j(p, q + 3, r + 6) = (9.5 + x) * p * q * r
+ forall (p = 1:5, q = 7:7, r = 4:6) k(p, q - 6, r - 3) = 19 + x + p + q + 3 * r
+ s = w(20:26)
+ forall (p = 1:2, q = 3:5, r = 1:7) t(p, q, r) = -10 + x + p - q + 2 * r
+ forall (p = 1:2, q = 3:7, r = 1:7) u(p, q, r) = 30 - x - p + q - 2 * r
+ forall (p = 1:5, q = 3:7, p + q .le. 8) v(p, q) = w(1:7)
+ forall (p = 1:5, q = 3:7, p + q .gt. 8) v(p, q) = w(20:26)
+!$omp barrier
+ y = ''
+ if (x .eq. 0) y = '0'
+ if (x .eq. 1) y = '1'
+ if (x .eq. 2) y = '2'
+ if (x .eq. 3) y = '3'
+ if (x .eq. 4) y = '4'
+ if (x .eq. 5) y = '5'
+ l = l .or. w(7:7) .ne. y
+ l = l .or. w(19:19) .ne. y
+ l = l .or. w(26:26) .ne. y
+ l = l .or. w(38:38) .ne. y
+ l = l .or. c .ne. w(8:19)
+ l = l .or. d .ne. w(1:7)
+ l = l .or. s .ne. w(20:26)
+ do 103, p = 1, 2
+ do 103, q = 3, 7
+ do 103, r = 1, 7
+ if (q .lt. 6) l = l .or. e(p, q, r) .ne. 5 * x + p + q + 2 * r
+ l = l .or. f(p, q, r) .ne. 25 * x + p + q + 2 * r
+ if (r .lt. 6 .and. q + r .le. 8) l = l .or. g(r, q) .ne. w(8:19)
+ if (r .lt. 6 .and. q + r .gt. 8) l = l .or. g(r, q) .ne. w(27:38)
+ if (r .lt. 6 .and. q + r .le. 8) l = l .or. h(r, q) .ne. w(1:7)
+ if (r .lt. 6 .and. q + r .gt. 8) l = l .or. h(r, q) .ne. w(20:26)
+ if (q .lt. 6) l = l .or. t(p, q, r) .ne. -10 + x + p - q + 2 * r
+ l = l .or. u(p, q, r) .ne. 30 - x - p + q - 2 * r
+ if (r .lt. 6 .and. q + r .le. 8) l = l .or. v(r, q) .ne. w(1:7)
+ if (r .lt. 6 .and. q + r .gt. 8) l = l .or. v(r, q) .ne. w(20:26)
+103 continue
+ do 104, p = 3, 5
+ do 104, q = 2, 6
+ do 104, r = 1, 7
+ l = l .or. i(p - 2, q - 1, r) .ne. (7.5 + x) * p * q * r
+ l = l .or. j(p, q + 3, r + 6) .ne. (9.5 + x) * p * q * r
+104 continue
+ do 105, p = 1, 5
+ do 105, q = 4, 6
+ l = l .or. k(p, 1, q - 3) .ne. 19 + x + p + 7 + 3 * q
+105 continue
+ call check (size (e, 1), 2, l)
+ call check (size (e, 2), 3, l)
+ call check (size (e, 3), 7, l)
+ call check (size (e), 42, l)
+ call check (size (f, 1), 2, l)
+ call check (size (f, 2), 5, l)
+ call check (size (f, 3), 7, l)
+ call check (size (f), 70, l)
+ call check (size (g, 1), 5, l)
+ call check (size (g, 2), 5, l)
+ call check (size (g), 25, l)
+ call check (size (h, 1), 5, l)
+ call check (size (h, 2), 5, l)
+ call check (size (h), 25, l)
+ call check (size (i, 1), 3, l)
+ call check (size (i, 2), 5, l)
+ call check (size (i, 3), 7, l)
+ call check (size (i), 105, l)
+ call check (size (j, 1), 4, l)
+ call check (size (j, 2), 5, l)
+ call check (size (j, 3), 7, l)
+ call check (size (j), 140, l)
+ call check (size (k, 1), 5, l)
+ call check (size (k, 2), 1, l)
+ call check (size (k, 3), 3, l)
+ call check (size (k), 15, l)
+!$omp single
+ z = omp_get_thread_num ()
+!$omp end single copyprivate (c, d, e, f, g, h, i, j, k, s, t, u, v)
+ w = ''
+ x = z
+ if (x .eq. 0) w = 'thread0thr_number_0THREAD0THR_NUMBER_0'
+ if (x .eq. 1) w = 'thread1thr_number_1THREAD1THR_NUMBER_1'
+ if (x .eq. 2) w = 'thread2thr_number_2THREAD2THR_NUMBER_2'
+ if (x .eq. 3) w = 'thread3thr_number_3THREAD3THR_NUMBER_3'
+ if (x .eq. 4) w = 'thread4thr_number_4THREAD4THR_NUMBER_4'
+ if (x .eq. 5) w = 'thread5thr_number_5THREAD5THR_NUMBER_5'
+ y = ''
+ if (x .eq. 0) y = '0'
+ if (x .eq. 1) y = '1'
+ if (x .eq. 2) y = '2'
+ if (x .eq. 3) y = '3'
+ if (x .eq. 4) y = '4'
+ if (x .eq. 5) y = '5'
+ l = l .or. w(7:7) .ne. y
+ l = l .or. w(19:19) .ne. y
+ l = l .or. w(26:26) .ne. y
+ l = l .or. w(38:38) .ne. y
+ l = l .or. c .ne. w(8:19)
+ l = l .or. d .ne. w(1:7)
+ l = l .or. s .ne. w(20:26)
+ do 113, p = 1, 2
+ do 113, q = 3, 7
+ do 113, r = 1, 7
+ if (q .lt. 6) l = l .or. e(p, q, r) .ne. 5 * x + p + q + 2 * r
+ l = l .or. f(p, q, r) .ne. 25 * x + p + q + 2 * r
+ if (r .lt. 6 .and. q + r .le. 8) l = l .or. g(r, q) .ne. w(8:19)
+ if (r .lt. 6 .and. q + r .gt. 8) l = l .or. g(r, q) .ne. w(27:38)
+ if (r .lt. 6 .and. q + r .le. 8) l = l .or. h(r, q) .ne. w(1:7)
+ if (r .lt. 6 .and. q + r .gt. 8) l = l .or. h(r, q) .ne. w(20:26)
+ if (q .lt. 6) l = l .or. t(p, q, r) .ne. -10 + x + p - q + 2 * r
+ l = l .or. u(p, q, r) .ne. 30 - x - p + q - 2 * r
+ if (r .lt. 6 .and. q + r .le. 8) l = l .or. v(r, q) .ne. w(1:7)
+ if (r .lt. 6 .and. q + r .gt. 8) l = l .or. v(r, q) .ne. w(20:26)
+113 continue
+ do 114, p = 3, 5
+ do 114, q = 2, 6
+ do 114, r = 1, 7
+ l = l .or. i(p - 2, q - 1, r) .ne. (7.5 + x) * p * q * r
+ l = l .or. j(p, q + 3, r + 6) .ne. (9.5 + x) * p * q * r
+114 continue
+ do 115, p = 1, 5
+ do 115, q = 4, 6
+ l = l .or. k(p, 1, q - 3) .ne. 19 + x + p + 7 + 3 * q
+115 continue
+ x = omp_get_thread_num ()
+ w = ''
+ if (x .eq. 0) w = 'thread0thr_number_0THREAD0THR_NUMBER_0'
+ if (x .eq. 1) w = 'thread1thr_number_1THREAD1THR_NUMBER_1'
+ if (x .eq. 2) w = 'thread2thr_number_2THREAD2THR_NUMBER_2'
+ if (x .eq. 3) w = 'thread3thr_number_3THREAD3THR_NUMBER_3'
+ if (x .eq. 4) w = 'thread4thr_number_4THREAD4THR_NUMBER_4'
+ if (x .eq. 5) w = 'thread5thr_number_5THREAD5THR_NUMBER_5'
+ c = w(8:19)
+ d = w(1:7)
+ forall (p = 1:2, q = 3:5, r = 1:7) e(p, q, r) = 5 * x + p + q + 2 * r
+ forall (p = 1:2, q = 3:7, r = 1:7) f(p, q, r) = 25 * x + p + q + 2 * r
+ forall (p = 1:5, q = 3:7, p + q .le. 8) g(p, q) = w(8:19)
+ forall (p = 1:5, q = 3:7, p + q .gt. 8) g(p, q) = w(27:38)
+ forall (p = 1:5, q = 3:7, p + q .le. 8) h(p, q) = w(1:7)
+ forall (p = 1:5, q = 3:7, p + q .gt. 8) h(p, q) = w(20:26)
+ forall (p = 3:5, q = 2:6, r = 1:7) i(p - 2, q - 1, r) = (7.5 + x) * p * q * r
+ forall (p = 3:5, q = 2:6, r = 1:7) j(p, q + 3, r + 6) = (9.5 + x) * p * q * r
+ forall (p = 1:5, q = 7:7, r = 4:6) k(p, q - 6, r - 3) = 19 + x + p + q + 3 * r
+ s = w(20:26)
+ forall (p = 1:2, q = 3:5, r = 1:7) t(p, q, r) = -10 + x + p - q + 2 * r
+ forall (p = 1:2, q = 3:7, r = 1:7) u(p, q, r) = 30 - x - p + q - 2 * r
+ forall (p = 1:5, q = 3:7, p + q .le. 8) v(p, q) = w(1:7)
+ forall (p = 1:5, q = 3:7, p + q .gt. 8) v(p, q) = w(20:26)
+!$omp barrier
+ y = ''
+ if (x .eq. 0) y = '0'
+ if (x .eq. 1) y = '1'
+ if (x .eq. 2) y = '2'
+ if (x .eq. 3) y = '3'
+ if (x .eq. 4) y = '4'
+ if (x .eq. 5) y = '5'
+ l = l .or. w(7:7) .ne. y
+ l = l .or. w(19:19) .ne. y
+ l = l .or. w(26:26) .ne. y
+ l = l .or. w(38:38) .ne. y
+ l = l .or. c .ne. w(8:19)
+ l = l .or. d .ne. w(1:7)
+ l = l .or. s .ne. w(20:26)
+ do 123, p = 1, 2
+ do 123, q = 3, 7
+ do 123, r = 1, 7
+ if (q .lt. 6) l = l .or. e(p, q, r) .ne. 5 * x + p + q + 2 * r
+ l = l .or. f(p, q, r) .ne. 25 * x + p + q + 2 * r
+ if (r .lt. 6 .and. q + r .le. 8) l = l .or. g(r, q) .ne. w(8:19)
+ if (r .lt. 6 .and. q + r .gt. 8) l = l .or. g(r, q) .ne. w(27:38)
+ if (r .lt. 6 .and. q + r .le. 8) l = l .or. h(r, q) .ne. w(1:7)
+ if (r .lt. 6 .and. q + r .gt. 8) l = l .or. h(r, q) .ne. w(20:26)
+ if (q .lt. 6) l = l .or. t(p, q, r) .ne. -10 + x + p - q + 2 * r
+ l = l .or. u(p, q, r) .ne. 30 - x - p + q - 2 * r
+ if (r .lt. 6 .and. q + r .le. 8) l = l .or. v(r, q) .ne. w(1:7)
+ if (r .lt. 6 .and. q + r .gt. 8) l = l .or. v(r, q) .ne. w(20:26)
+123 continue
+ do 124, p = 3, 5
+ do 124, q = 2, 6
+ do 124, r = 1, 7
+ l = l .or. i(p - 2, q - 1, r) .ne. (7.5 + x) * p * q * r
+ l = l .or. j(p, q + 3, r + 6) .ne. (9.5 + x) * p * q * r
+124 continue
+ do 125, p = 1, 5
+ do 125, q = 4, 6
+ l = l .or. k(p, 1, q - 3) .ne. 19 + x + p + 7 + 3 * q
+125 continue
+!$omp end parallel
+ if (l) call abort
+ end subroutine foo
+
+ subroutine test
+ character (len = 12) :: c
+ character (len = 7) :: d
+ integer, dimension (2, 3:5, 7) :: e
+ integer, dimension (2, 3:7, 7) :: f
+ character (len = 12), dimension (5, 3:7) :: g
+ character (len = 7), dimension (5, 3:7) :: h
+ real, dimension (3:5, 2:6, 1:7) :: i
+ double precision, dimension (3:6, 2:6, 1:7) :: j
+ integer, dimension (1:5, 7:7, 4:6) :: k
+ integer :: p, q, r
+ call foo (c, d, e, f, g, h, i, j, k, 7)
+ end subroutine test
+end
diff --git a/libiberty/ChangeLog b/libiberty/ChangeLog
index 3ce5201795f..7ea516a7e24 100644
--- a/libiberty/ChangeLog
+++ b/libiberty/ChangeLog
@@ -1,3 +1,7 @@
+2010-04-29 Release Manager
+
+ * GCC 4.4.4 released.
+
2010-01-25 Ian Lance Taylor <iant@google.com>
* cp-demangle.c (cplus_demangle_type): Check for invalid type
diff --git a/libjava/ChangeLog b/libjava/ChangeLog
index c298de9276d..64264ccce06 100644
--- a/libjava/ChangeLog
+++ b/libjava/ChangeLog
@@ -1,3 +1,33 @@
+2010-04-29 Jakub Jelinek <jakub@redhat.com>
+
+ PR other/43620
+ * configure.ac (AM_INIT_AUTOMAKE): Add no-dist option.
+ * Makefile.in: Regenerated.
+
+2010-04-29 Release Manager
+
+ * GCC 4.4.4 released.
+
+2010-04-19 Andrew Haley <aph@redhat.com>
+
+ PR libgcj/40860
+ * configure.ac: Handle --no-merge-exidx-entries.
+
+2010-04-08 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ Backport:
+ 2009-12-09 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ * include/pa-signal.h: Do not include ucontext.h.
+ (SIGNAL_HANDLER): Add __attribute__ ((unused)) to signal handler
+ arguments.
+ (MAKE_THROW_FRAME): Do not adjust program counter.
+ * include/hppa-signal.h: Do not include sys/types.h, sys/syscall.h and
+ unistd.h.
+ (MAKE_THROW_FRAME): Do not adjust program counter.
+ (HANDLE_FPE): Define.
+ (INIT_SEGV, INIT_FPE): Revise indentation.
+
2010-01-21 Release Manager
* GCC 4.4.3 released.
diff --git a/libjava/Makefile.in b/libjava/Makefile.in
index d2a8e421675..e0d105ddbb0 100644
--- a/libjava/Makefile.in
+++ b/libjava/Makefile.in
@@ -61,20 +61,21 @@ target_triplet = @target@
@USING_WIN32_THREADS_TRUE@am__append_16 = win32-threads.cc
@USING_NO_THREADS_TRUE@am__append_17 = no-threads.cc
@ANONVERSCRIPT_TRUE@am__append_18 = $(srcdir)/libgcj.ver
-DIST_COMMON = README $(am__configure_deps) $(srcdir)/../compile \
- $(srcdir)/../config.guess $(srcdir)/../config.sub \
- $(srcdir)/../depcomp $(srcdir)/../install-sh \
- $(srcdir)/../ltmain.sh $(srcdir)/../missing \
- $(srcdir)/../mkinstalldirs $(srcdir)/Makefile.am \
- $(srcdir)/Makefile.in $(srcdir)/libgcj-test.spec.in \
- $(srcdir)/libgcj.pc.in $(srcdir)/libgcj.spec.in \
- $(srcdir)/sources.am $(top_srcdir)/configure \
- $(top_srcdir)/contrib/aot-compile-rpm.in \
- $(top_srcdir)/contrib/aot-compile.in \
+DIST_COMMON = $(srcdir)/sources.am $(srcdir)/../config.guess \
+ $(srcdir)/../config.sub NEWS README ChangeLog THANKS \
+ $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
+ $(top_srcdir)/configure $(am__configure_deps) \
+ $(srcdir)/../mkinstalldirs $(srcdir)/libgcj.pc.in \
+ $(srcdir)/libgcj.spec.in $(srcdir)/libgcj-test.spec.in \
$(top_srcdir)/contrib/aotcompile.py.in \
+ $(top_srcdir)/contrib/aot-compile.in \
+ $(top_srcdir)/contrib/aot-compile-rpm.in \
$(top_srcdir)/contrib/generate-cacerts.pl.in \
$(top_srcdir)/contrib/rebuild-gcj-db.in \
- $(top_srcdir)/scripts/jar.in COPYING ChangeLog NEWS THANKS
+ $(top_srcdir)/scripts/jar.in $(srcdir)/../compile \
+ $(srcdir)/../compile $(srcdir)/../compile $(srcdir)/../depcomp \
+ $(srcdir)/../ltmain.sh $(srcdir)/../config.guess \
+ $(srcdir)/../config.sub
@MAINTAINER_MODE_TRUE@@NATIVE_TRUE@am__append_19 = gen-from-JIS
@NATIVE_TRUE@@USE_LIBGCJ_BC_TRUE@am__append_20 = libgcj_bc.la
@NATIVE_TRUE@@USE_LIBGCJ_BC_FALSE@am__append_21 = libgcj.la
@@ -307,72 +308,6 @@ am__DEPENDENCIES_3 = gnu-CORBA.lo gnu-java-awt-dnd-peer-gtk.lo \
am__DEPENDENCIES_4 = $(patsubst classpath/resource/%,%,$(addsuffix \
.lo,$(property_files)))
am__DEPENDENCIES_5 =
-am__libgcj_la_SOURCES_DIST = prims.cc jni.cc exception.cc \
- stacktrace.cc link.cc defineclass.cc verify.cc jvmti.cc \
- interpret.cc gnu/classpath/jdwp/natVMFrame.cc \
- gnu/classpath/jdwp/natVMMethod.cc \
- gnu/classpath/jdwp/natVMVirtualMachine.cc \
- gnu/classpath/natConfiguration.cc \
- gnu/classpath/natSystemProperties.cc \
- gnu/classpath/natVMStackWalker.cc gnu/gcj/natCore.cc \
- gnu/gcj/convert/JIS0208_to_Unicode.cc \
- gnu/gcj/convert/JIS0212_to_Unicode.cc \
- gnu/gcj/convert/Unicode_to_JIS.cc gnu/gcj/convert/natIconv.cc \
- gnu/gcj/convert/natInput_EUCJIS.cc \
- gnu/gcj/convert/natInput_SJIS.cc \
- gnu/gcj/convert/natOutput_EUCJIS.cc \
- gnu/gcj/convert/natOutput_SJIS.cc \
- gnu/gcj/io/natSimpleSHSStream.cc gnu/gcj/io/shs.cc \
- gnu/gcj/jvmti/natBreakpoint.cc \
- gnu/gcj/jvmti/natNormalBreakpoint.cc \
- gnu/gcj/runtime/natFinalizerThread.cc \
- gnu/gcj/runtime/natSharedLibLoader.cc \
- gnu/gcj/runtime/natSystemClassLoader.cc \
- gnu/gcj/runtime/natStringBuffer.cc gnu/gcj/util/natDebug.cc \
- gnu/gcj/util/natGCInfo.cc gnu/java/lang/natMainThread.cc \
- gnu/java/lang/management/natVMClassLoadingMXBeanImpl.cc \
- gnu/java/lang/management/natVMCompilationMXBeanImpl.cc \
- gnu/java/lang/management/natVMGarbageCollectorMXBeanImpl.cc \
- gnu/java/lang/management/natVMMemoryMXBeanImpl.cc \
- gnu/java/lang/management/natVMMemoryManagerMXBeanImpl.cc \
- gnu/java/lang/management/natVMMemoryPoolMXBeanImpl.cc \
- gnu/java/lang/management/natVMOperatingSystemMXBeanImpl.cc \
- gnu/java/lang/management/natVMRuntimeMXBeanImpl.cc \
- gnu/java/lang/management/natVMThreadMXBeanImpl.cc \
- gnu/java/net/natPlainDatagramSocketImpl.cc \
- gnu/java/net/natPlainSocketImpl.cc \
- gnu/java/net/protocol/core/natCoreInputStream.cc \
- gnu/java/nio/natVMPipe.cc gnu/java/nio/natVMSelector.cc \
- gnu/java/nio/natNIOServerSocket.cc \
- gnu/java/nio/natVMChannel.cc \
- gnu/java/nio/channels/natFileChannelImpl.cc \
- gnu/java/security/jce/prng/natVMSecureRandom.cc \
- java/io/natFile.cc java/io/natVMObjectInputStream.cc \
- java/io/natVMObjectStreamClass.cc java/lang/natCharacter.cc \
- java/lang/natClass.cc java/lang/natClassLoader.cc \
- java/lang/natConcreteProcess.cc java/lang/natVMDouble.cc \
- java/lang/natVMFloat.cc java/lang/natMath.cc \
- java/lang/natObject.cc java/lang/natRuntime.cc \
- java/lang/natString.cc java/lang/natAbstractStringBuffer.cc \
- java/lang/natSystem.cc java/lang/natThread.cc \
- java/lang/natThreadLocal.cc java/lang/natVMClassLoader.cc \
- java/lang/natVMProcess.cc java/lang/natVMThrowable.cc \
- java/lang/ref/natReference.cc java/lang/reflect/natArray.cc \
- java/lang/reflect/natConstructor.cc \
- java/lang/reflect/natField.cc java/lang/reflect/natMethod.cc \
- java/lang/reflect/natVMProxy.cc java/net/natVMInetAddress.cc \
- java/net/natVMNetworkInterface.cc \
- java/net/natVMURLConnection.cc \
- java/nio/channels/natVMChannels.cc \
- java/nio/natVMDirectByteBufferImpl.cc \
- java/security/natVMAccessController.cc \
- java/security/natVMAccessControlState.cc \
- java/text/natCollator.cc java/util/natVMTimeZone.cc \
- java/util/concurrent/atomic/natAtomicLong.cc \
- java/util/logging/natLogger.cc java/util/zip/natDeflater.cc \
- java/util/zip/natInflater.cc sun/misc/natUnsafe.cc boehm.cc \
- nogc.cc posix.cc win32.cc darwin.cc posix-threads.cc \
- win32-threads.cc no-threads.cc
@INTERPRETER_TRUE@am__objects_2 = jvmti.lo interpret.lo
@INTERPRETER_TRUE@am__objects_3 = gnu/classpath/jdwp/natVMFrame.lo \
@INTERPRETER_TRUE@ gnu/classpath/jdwp/natVMMethod.lo \
@@ -484,8 +419,6 @@ am_gcj_dbtool_OBJECTS = gnu/gcj/tools/gcj_dbtool/natMain.$(OBJEXT)
gcj_dbtool_OBJECTS = $(am_gcj_dbtool_OBJECTS)
am_gcjh_OBJECTS =
gcjh_OBJECTS = $(am_gcjh_OBJECTS)
-am__gen_from_JIS_SOURCES_DIST = gnu/gcj/convert/gen-from-JIS.c \
- gnu/gcj/convert/make-trie.c gnu/gcj/convert/make-trie.h
@MAINTAINER_MODE_TRUE@@NATIVE_TRUE@am_gen_from_JIS_OBJECTS = gnu/gcj/convert/gen-from-JIS.$(OBJEXT) \
@MAINTAINER_MODE_TRUE@@NATIVE_TRUE@ gnu/gcj/convert/make-trie.$(OBJEXT)
gen_from_JIS_OBJECTS = $(am_gen_from_JIS_OBJECTS)
@@ -552,18 +485,6 @@ SOURCES = $(lib_gnu_awt_xlib_la_SOURCES) $(libgcj_tools_la_SOURCES) \
$(grmic_SOURCES) $(grmid_SOURCES) $(grmiregistry_SOURCES) \
$(gserialver_SOURCES) $(gtnameserv_SOURCES) \
$(jv_convert_SOURCES)
-DIST_SOURCES = $(lib_gnu_awt_xlib_la_SOURCES) \
- $(libgcj_tools_la_SOURCES) $(am__libgcj_la_SOURCES_DIST) \
- $(EXTRA_libgcj_la_SOURCES) $(libgcj_bc_la_SOURCES) \
- $(libgij_la_SOURCES) $(libjvm_la_SOURCES) $(ecjx_SOURCES) \
- $(gappletviewer_SOURCES) $(gc_analyze_SOURCES) \
- $(gcj_dbtool_SOURCES) $(gcjh_SOURCES) \
- $(am__gen_from_JIS_SOURCES_DIST) $(gij_SOURCES) \
- $(gjar_SOURCES) $(gjarsigner_SOURCES) $(gjavah_SOURCES) \
- $(gjdoc_SOURCES) $(gkeytool_SOURCES) $(gnative2ascii_SOURCES) \
- $(gorbd_SOURCES) $(grmic_SOURCES) $(grmid_SOURCES) \
- $(grmiregistry_SOURCES) $(gserialver_SOURCES) \
- $(gtnameserv_SOURCES) $(jv_convert_SOURCES)
RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
html-recursive info-recursive install-data-recursive \
install-exec-recursive install-info-recursive \
@@ -577,17 +498,6 @@ DATA = $(dbexec_DATA) $(jar_DATA) $(toolexecmainlib_DATA)
ETAGS = etags
CTAGS = ctags
DIST_SUBDIRS = @DIRLTDL@ gcj include classpath testsuite
-DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
-distdir = $(PACKAGE)-$(VERSION)
-top_distdir = $(distdir)
-am__remove_distdir = \
- { test ! -d $(distdir) \
- || { find $(distdir) -type d ! -perm -200 -exec chmod u+w {} ';' \
- && rm -fr $(distdir); }; }
-DIST_ARCHIVES = $(distdir).tar.gz
-GZIP_ENV = --best
-distuninstallcheck_listfiles = find . -type f -print
-distcleancheck_listfiles = find . -type f -print
ACLOCAL = @ACLOCAL@
AMDEP_FALSE = @AMDEP_FALSE@
AMDEP_TRUE = @AMDEP_TRUE@
@@ -10179,149 +10089,6 @@ GTAGS:
distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
-
-distdir: $(DISTFILES)
- $(am__remove_distdir)
- mkdir $(distdir)
- $(mkdir_p) $(distdir)/. $(distdir)/.. $(distdir)/../config $(distdir)/contrib $(distdir)/libltdl $(distdir)/scripts
- @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
- topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
- list='$(DISTFILES)'; for file in $$list; do \
- case $$file in \
- $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
- $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
- esac; \
- if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
- dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
- if test "$$dir" != "$$file" && test "$$dir" != "."; then \
- dir="/$$dir"; \
- $(mkdir_p) "$(distdir)$$dir"; \
- else \
- dir=''; \
- fi; \
- if test -d $$d/$$file; then \
- if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
- cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
- fi; \
- cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
- else \
- test -f $(distdir)/$$file \
- || cp -p $$d/$$file $(distdir)/$$file \
- || exit 1; \
- fi; \
- done
- list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
- if test "$$subdir" = .; then :; else \
- test -d "$(distdir)/$$subdir" \
- || $(mkdir_p) "$(distdir)/$$subdir" \
- || exit 1; \
- distdir=`$(am__cd) $(distdir) && pwd`; \
- top_distdir=`$(am__cd) $(top_distdir) && pwd`; \
- (cd $$subdir && \
- $(MAKE) $(AM_MAKEFLAGS) \
- top_distdir="$$top_distdir" \
- distdir="$$distdir/$$subdir" \
- distdir) \
- || exit 1; \
- fi; \
- done
- -find $(distdir) -type d ! -perm -777 -exec chmod a+rwx {} \; -o \
- ! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \
- ! -type d ! -perm -400 -exec chmod a+r {} \; -o \
- ! -type d ! -perm -444 -exec $(SHELL) $(install_sh) -c -m a+r {} {} \; \
- || chmod -R a+r $(distdir)
-dist-gzip: distdir
- tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
- $(am__remove_distdir)
-
-dist-bzip2: distdir
- tardir=$(distdir) && $(am__tar) | bzip2 -9 -c >$(distdir).tar.bz2
- $(am__remove_distdir)
-
-dist-tarZ: distdir
- tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z
- $(am__remove_distdir)
-
-dist-shar: distdir
- shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz
- $(am__remove_distdir)
-
-dist-zip: distdir
- -rm -f $(distdir).zip
- zip -rq $(distdir).zip $(distdir)
- $(am__remove_distdir)
-
-dist dist-all: distdir
- tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
- $(am__remove_distdir)
-
-# This target untars the dist file and tries a VPATH configuration. Then
-# it guarantees that the distribution is self-contained by making another
-# tarfile.
-distcheck: dist
- case '$(DIST_ARCHIVES)' in \
- *.tar.gz*) \
- GZIP=$(GZIP_ENV) gunzip -c $(distdir).tar.gz | $(am__untar) ;;\
- *.tar.bz2*) \
- bunzip2 -c $(distdir).tar.bz2 | $(am__untar) ;;\
- *.tar.Z*) \
- uncompress -c $(distdir).tar.Z | $(am__untar) ;;\
- *.shar.gz*) \
- GZIP=$(GZIP_ENV) gunzip -c $(distdir).shar.gz | unshar ;;\
- *.zip*) \
- unzip $(distdir).zip ;;\
- esac
- chmod -R a-w $(distdir); chmod a+w $(distdir)
- mkdir $(distdir)/_build
- mkdir $(distdir)/_inst
- chmod a-w $(distdir)
- dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \
- && dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \
- && cd $(distdir)/_build \
- && ../configure --srcdir=.. --prefix="$$dc_install_base" \
- $(DISTCHECK_CONFIGURE_FLAGS) \
- && $(MAKE) $(AM_MAKEFLAGS) \
- && $(MAKE) $(AM_MAKEFLAGS) dvi \
- && $(MAKE) $(AM_MAKEFLAGS) check \
- && $(MAKE) $(AM_MAKEFLAGS) install \
- && $(MAKE) $(AM_MAKEFLAGS) installcheck \
- && $(MAKE) $(AM_MAKEFLAGS) uninstall \
- && $(MAKE) $(AM_MAKEFLAGS) distuninstallcheck_dir="$$dc_install_base" \
- distuninstallcheck \
- && chmod -R a-w "$$dc_install_base" \
- && ({ \
- (cd ../.. && umask 077 && mkdir "$$dc_destdir") \
- && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" install \
- && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" uninstall \
- && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" \
- distuninstallcheck_dir="$$dc_destdir" distuninstallcheck; \
- } || { rm -rf "$$dc_destdir"; exit 1; }) \
- && rm -rf "$$dc_destdir" \
- && $(MAKE) $(AM_MAKEFLAGS) dist \
- && rm -rf $(DIST_ARCHIVES) \
- && $(MAKE) $(AM_MAKEFLAGS) distcleancheck
- $(am__remove_distdir)
- @(echo "$(distdir) archives ready for distribution: "; \
- list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \
- sed -e '1{h;s/./=/g;p;x;}' -e '$${p;x;}'
-distuninstallcheck:
- @cd $(distuninstallcheck_dir) \
- && test `$(distuninstallcheck_listfiles) | wc -l` -le 1 \
- || { echo "ERROR: files left after uninstall:" ; \
- if test -n "$(DESTDIR)"; then \
- echo " (check DESTDIR support)"; \
- fi ; \
- $(distuninstallcheck_listfiles) ; \
- exit 1; } >&2
-distcleancheck: distclean
- @if test '$(srcdir)' = . ; then \
- echo "ERROR: distcleancheck can only run from a VPATH build" ; \
- exit 1 ; \
- fi
- @test `$(distcleancheck_listfiles) | wc -l` -eq 0 \
- || { echo "ERROR: files left in build directory after distclean:" ; \
- $(distcleancheck_listfiles) ; \
- exit 1; } >&2
check-am: all-am
check: check-recursive
all-am: Makefile $(LTLIBRARIES) $(PROGRAMS) $(SCRIPTS) all-multi \
@@ -10491,18 +10258,16 @@ uninstall-info: uninstall-info-recursive
am--refresh check check-am clean clean-binPROGRAMS \
clean-dbexecLTLIBRARIES clean-generic clean-libexecsubPROGRAMS \
clean-libtool clean-multi clean-noinstPROGRAMS clean-recursive \
- clean-toolexeclibLTLIBRARIES ctags ctags-recursive dist \
- dist-all dist-bzip2 dist-gzip dist-shar dist-tarZ dist-zip \
- distcheck distclean distclean-compile distclean-generic \
- distclean-libtool distclean-local distclean-multi \
- distclean-recursive distclean-tags distcleancheck distdir \
- distuninstallcheck dvi dvi-am html html-am info info-am \
- install install-am install-binPROGRAMS install-binSCRIPTS \
- install-data install-data-am install-data-local \
- install-dbexecDATA install-dbexecLTLIBRARIES install-exec \
- install-exec-am install-exec-hook install-info install-info-am \
- install-jarDATA install-libexecsubPROGRAMS install-man \
- install-multi install-strip install-toolexeclibLTLIBRARIES \
+ clean-toolexeclibLTLIBRARIES ctags ctags-recursive distclean \
+ distclean-compile distclean-generic distclean-libtool \
+ distclean-local distclean-multi distclean-recursive \
+ distclean-tags dvi dvi-am html html-am info info-am install \
+ install-am install-binPROGRAMS install-binSCRIPTS install-data \
+ install-data-am install-data-local install-dbexecDATA \
+ install-dbexecLTLIBRARIES install-exec install-exec-am \
+ install-exec-hook install-info install-info-am install-jarDATA \
+ install-libexecsubPROGRAMS install-man install-multi \
+ install-strip install-toolexeclibLTLIBRARIES \
install-toolexecmainlibDATA installcheck installcheck-am \
installdirs installdirs-am maintainer-clean \
maintainer-clean-generic maintainer-clean-multi \
diff --git a/libjava/classpath/ChangeLog b/libjava/classpath/ChangeLog
index 4b1cec1c573..7b4f27e504b 100644
--- a/libjava/classpath/ChangeLog
+++ b/libjava/classpath/ChangeLog
@@ -1,3 +1,13 @@
+2010-04-29 Jakub Jelinek <jakub@redhat.com>
+
+ PR other/43620
+ * configure.ac (AM_INIT_AUTOMAKE): Add no-dist option.
+ * Makefile.in: Regenerated.
+
+2010-04-29 Release Manager
+
+ * GCC 4.4.4 released.
+
2010-01-21 Release Manager
* GCC 4.4.3 released.
diff --git a/libjava/classpath/Makefile.in b/libjava/classpath/Makefile.in
index 35f1dd788e5..1fed8f95de2 100644
--- a/libjava/classpath/Makefile.in
+++ b/libjava/classpath/Makefile.in
@@ -36,25 +36,17 @@ POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
target_triplet = @target@
-DIST_COMMON = README $(am__configure_deps) \
- $(srcdir)/../../config.guess $(srcdir)/../../config.sub \
- $(srcdir)/../../install-sh $(srcdir)/../../ltmain.sh \
- $(srcdir)/../../missing $(srcdir)/../../mkinstalldirs \
- $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
- $(top_srcdir)/configure \
+DIST_COMMON = $(srcdir)/../../config.guess $(srcdir)/../../config.sub \
+ INSTALL NEWS README AUTHORS ChangeLog $(srcdir)/Makefile.in \
+ $(srcdir)/Makefile.am $(top_srcdir)/configure \
+ $(am__configure_deps) $(srcdir)/../../mkinstalldirs \
$(top_srcdir)/gnu/classpath/Configuration.java.in \
$(top_srcdir)/gnu/java/security/Configuration.java.in \
$(top_srcdir)/resource/META-INF/services/java.util.prefs.PreferencesFactory.in \
$(top_srcdir)/resource/META-INF/services/javax.sound.sampled.spi.AudioFileReader.in \
$(top_srcdir)/resource/META-INF/services/javax.sound.sampled.spi.MixerProvider.in \
- ../../ABOUT-NLS ../../COPYING ../../COPYING.LIB \
- ../../ChangeLog ../../README ../../compile ../../config.guess \
- ../../config.rpath ../../config.sub ../../depcomp \
- ../../install-sh ../../ltmain.sh ../../missing \
- ../../mkinstalldirs ../../ylwrap AUTHORS COPYING ChangeLog \
- INSTALL NEWS TODO compile config.guess config.sub depcomp \
- install-sh ltcf-c.sh ltcf-cxx.sh ltcf-gcj.sh ltconfig \
- ltmain.sh missing mkinstalldirs
+ $(srcdir)/../../ltmain.sh $(srcdir)/../../config.guess \
+ $(srcdir)/../../config.sub
subdir = .
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/../../config/depstand.m4 \
@@ -93,7 +85,6 @@ CONFIG_CLEAN_FILES = gnu/classpath/Configuration.java \
resource/META-INF/services/javax.sound.sampled.spi.AudioFileReader \
resource/META-INF/services/javax.sound.sampled.spi.MixerProvider
SOURCES =
-DIST_SOURCES =
MULTISRCTOP =
MULTIBUILDTOP =
MULTIDIRS =
@@ -108,17 +99,6 @@ RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
uninstall-recursive
ETAGS = etags
CTAGS = ctags
-DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
-distdir = $(PACKAGE)-$(VERSION)
-top_distdir = $(distdir)
-am__remove_distdir = \
- { test ! -d $(distdir) \
- || { find $(distdir) -type d ! -perm -200 -exec chmod u+w {} ';' \
- && rm -fr $(distdir); }; }
-DIST_ARCHIVES = $(distdir).tar.gz
-GZIP_ENV = --best
-distuninstallcheck_listfiles = find . -type f -print
-distcleancheck_listfiles = find . -type f -print
ACLOCAL = @ACLOCAL@
AMDEP_FALSE = @AMDEP_FALSE@
AMDEP_TRUE = @AMDEP_TRUE@
@@ -605,152 +585,6 @@ GTAGS:
distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
-
-distdir: $(DISTFILES)
- $(am__remove_distdir)
- mkdir $(distdir)
- $(mkdir_p) $(distdir)/../.. $(distdir)/../../config $(distdir)/examples $(distdir)/gnu/classpath $(distdir)/gnu/java/security $(distdir)/lib $(distdir)/m4 $(distdir)/resource/META-INF/services $(distdir)/scripts $(distdir)/tools
- @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
- topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
- list='$(DISTFILES)'; for file in $$list; do \
- case $$file in \
- $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
- $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
- esac; \
- if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
- dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
- if test "$$dir" != "$$file" && test "$$dir" != "."; then \
- dir="/$$dir"; \
- $(mkdir_p) "$(distdir)$$dir"; \
- else \
- dir=''; \
- fi; \
- if test -d $$d/$$file; then \
- if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
- cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
- fi; \
- cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
- else \
- test -f $(distdir)/$$file \
- || cp -p $$d/$$file $(distdir)/$$file \
- || exit 1; \
- fi; \
- done
- list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
- if test "$$subdir" = .; then :; else \
- test -d "$(distdir)/$$subdir" \
- || $(mkdir_p) "$(distdir)/$$subdir" \
- || exit 1; \
- distdir=`$(am__cd) $(distdir) && pwd`; \
- top_distdir=`$(am__cd) $(top_distdir) && pwd`; \
- (cd $$subdir && \
- $(MAKE) $(AM_MAKEFLAGS) \
- top_distdir="$$top_distdir" \
- distdir="$$distdir/$$subdir" \
- distdir) \
- || exit 1; \
- fi; \
- done
- $(MAKE) $(AM_MAKEFLAGS) \
- top_distdir="$(top_distdir)" distdir="$(distdir)" \
- dist-hook
- -find $(distdir) -type d ! -perm -777 -exec chmod a+rwx {} \; -o \
- ! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \
- ! -type d ! -perm -400 -exec chmod a+r {} \; -o \
- ! -type d ! -perm -444 -exec $(SHELL) $(install_sh) -c -m a+r {} {} \; \
- || chmod -R a+r $(distdir)
-dist-gzip: distdir
- tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
- $(am__remove_distdir)
-
-dist-bzip2: distdir
- tardir=$(distdir) && $(am__tar) | bzip2 -9 -c >$(distdir).tar.bz2
- $(am__remove_distdir)
-
-dist-tarZ: distdir
- tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z
- $(am__remove_distdir)
-
-dist-shar: distdir
- shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz
- $(am__remove_distdir)
-
-dist-zip: distdir
- -rm -f $(distdir).zip
- zip -rq $(distdir).zip $(distdir)
- $(am__remove_distdir)
-
-dist dist-all: distdir
- tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
- $(am__remove_distdir)
-
-# This target untars the dist file and tries a VPATH configuration. Then
-# it guarantees that the distribution is self-contained by making another
-# tarfile.
-distcheck: dist
- case '$(DIST_ARCHIVES)' in \
- *.tar.gz*) \
- GZIP=$(GZIP_ENV) gunzip -c $(distdir).tar.gz | $(am__untar) ;;\
- *.tar.bz2*) \
- bunzip2 -c $(distdir).tar.bz2 | $(am__untar) ;;\
- *.tar.Z*) \
- uncompress -c $(distdir).tar.Z | $(am__untar) ;;\
- *.shar.gz*) \
- GZIP=$(GZIP_ENV) gunzip -c $(distdir).shar.gz | unshar ;;\
- *.zip*) \
- unzip $(distdir).zip ;;\
- esac
- chmod -R a-w $(distdir); chmod a+w $(distdir)
- mkdir $(distdir)/_build
- mkdir $(distdir)/_inst
- chmod a-w $(distdir)
- dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \
- && dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \
- && cd $(distdir)/_build \
- && ../configure --srcdir=.. --prefix="$$dc_install_base" \
- $(DISTCHECK_CONFIGURE_FLAGS) \
- && $(MAKE) $(AM_MAKEFLAGS) \
- && $(MAKE) $(AM_MAKEFLAGS) dvi \
- && $(MAKE) $(AM_MAKEFLAGS) check \
- && $(MAKE) $(AM_MAKEFLAGS) install \
- && $(MAKE) $(AM_MAKEFLAGS) installcheck \
- && $(MAKE) $(AM_MAKEFLAGS) uninstall \
- && $(MAKE) $(AM_MAKEFLAGS) distuninstallcheck_dir="$$dc_install_base" \
- distuninstallcheck \
- && chmod -R a-w "$$dc_install_base" \
- && ({ \
- (cd ../.. && umask 077 && mkdir "$$dc_destdir") \
- && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" install \
- && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" uninstall \
- && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" \
- distuninstallcheck_dir="$$dc_destdir" distuninstallcheck; \
- } || { rm -rf "$$dc_destdir"; exit 1; }) \
- && rm -rf "$$dc_destdir" \
- && $(MAKE) $(AM_MAKEFLAGS) dist \
- && rm -rf $(DIST_ARCHIVES) \
- && $(MAKE) $(AM_MAKEFLAGS) distcleancheck
- $(am__remove_distdir)
- @(echo "$(distdir) archives ready for distribution: "; \
- list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \
- sed -e '1{h;s/./=/g;p;x;}' -e '$${p;x;}'
-distuninstallcheck:
- @cd $(distuninstallcheck_dir) \
- && test `$(distuninstallcheck_listfiles) | wc -l` -le 1 \
- || { echo "ERROR: files left after uninstall:" ; \
- if test -n "$(DESTDIR)"; then \
- echo " (check DESTDIR support)"; \
- fi ; \
- $(distuninstallcheck_listfiles) ; \
- exit 1; } >&2
-distcleancheck: distclean
- @if test '$(srcdir)' = . ; then \
- echo "ERROR: distcleancheck can only run from a VPATH build" ; \
- exit 1 ; \
- fi
- @test `$(distcleancheck_listfiles) | wc -l` -eq 0 \
- || { echo "ERROR: files left in build directory after distclean:" ; \
- $(distcleancheck_listfiles) ; \
- exit 1; } >&2
check-am: all-am
check: check-recursive
all-am: Makefile all-multi
@@ -834,20 +668,18 @@ uninstall-info: uninstall-info-recursive
.PHONY: $(RECURSIVE_TARGETS) CTAGS GTAGS all all-am all-multi \
am--refresh check check-am clean clean-generic clean-libtool \
- clean-multi clean-recursive ctags ctags-recursive dist \
- dist-all dist-bzip2 dist-gzip dist-hook dist-shar dist-tarZ \
- dist-zip distcheck distclean distclean-generic \
- distclean-libtool distclean-multi distclean-recursive \
- distclean-tags distcleancheck distdir distuninstallcheck dvi \
- dvi-am html html-am info info-am install install-am \
- install-data install-data-am install-exec install-exec-am \
- install-info install-info-am install-man install-multi \
- install-strip installcheck installcheck-am installdirs \
- installdirs-am maintainer-clean maintainer-clean-generic \
- maintainer-clean-multi maintainer-clean-recursive mostlyclean \
- mostlyclean-generic mostlyclean-libtool mostlyclean-multi \
- mostlyclean-recursive pdf pdf-am ps ps-am tags tags-recursive \
- uninstall uninstall-am uninstall-info-am
+ clean-multi clean-recursive ctags ctags-recursive distclean \
+ distclean-generic distclean-libtool distclean-multi \
+ distclean-recursive distclean-tags dvi dvi-am html html-am \
+ info info-am install install-am install-data install-data-am \
+ install-exec install-exec-am install-info install-info-am \
+ install-man install-multi install-strip installcheck \
+ installcheck-am installdirs installdirs-am maintainer-clean \
+ maintainer-clean-generic maintainer-clean-multi \
+ maintainer-clean-recursive mostlyclean mostlyclean-generic \
+ mostlyclean-libtool mostlyclean-multi mostlyclean-recursive \
+ pdf pdf-am ps ps-am tags tags-recursive uninstall uninstall-am \
+ uninstall-info-am
native: lib
diff --git a/libjava/classpath/configure.ac b/libjava/classpath/configure.ac
index 53a56fa5e0f..9ab4768953e 100644
--- a/libjava/classpath/configure.ac
+++ b/libjava/classpath/configure.ac
@@ -74,7 +74,7 @@ CLASSPATH_CONVENIENCE="-no-undefined"
AC_SUBST(CLASSPATH_CONVENIENCE)
AC_PREREQ(2.59)
-AM_INIT_AUTOMAKE([1.9.0 gnu std-options tar-ustar -Wno-portability])
+AM_INIT_AUTOMAKE([1.9.0 gnu std-options tar-ustar no-dist -Wno-portability])
AC_CONFIG_HEADERS([include/config.h])
AC_PREFIX_DEFAULT(/usr/local/classpath)
diff --git a/libjava/configure b/libjava/configure
index dc84d04bac6..5fb411ace75 100755
--- a/libjava/configure
+++ b/libjava/configure
@@ -20667,6 +20667,64 @@ arm*linux*eabi)
;;
esac
+# Check for --no-merge-exidx-entries, an ARM-specific linker option.
+echo "$as_me:$LINENO: checking for --no-merge-exidx-entries" >&5
+echo $ECHO_N "checking for --no-merge-exidx-entries... $ECHO_C" >&6
+if test "${libgcj_cv_exidx+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ saved_ldflags="$LDFLAGS"
+ LDFLAGS="${LDFLAGS} -Wl,--no-merge-exidx-entries"
+ if test x$gcc_no_link = xyes; then
+ { { echo "$as_me:$LINENO: error: Link tests are not allowed after GCC_NO_EXECUTABLES." >&5
+echo "$as_me: error: Link tests are not allowed after GCC_NO_EXECUTABLES." >&2;}
+ { (exit 1); exit 1; }; }
+fi
+cat >conftest.$ac_ext <<_ACEOF
+int main(void){ return 0;}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
+ (eval $ac_link) 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } &&
+ { ac_try='test -z "$ac_c_werror_flag"
+ || test ! -s conftest.err'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; } &&
+ { ac_try='test -s conftest$ac_exeext'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ eval "libgcj_cv_exidx=yes"
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+eval "libgcj_cv_exidx=no"
+fi
+rm -f conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
+ LDFLAGS="${saved_ldflags}"
+
+fi
+echo "$as_me:$LINENO: result: $libgcj_cv_exidx" >&5
+echo "${ECHO_T}$libgcj_cv_exidx" >&6
+if test "${libgcj_cv_exidx}" = "yes"; then
+ SYSTEMSPEC="${SYSTEMSPEC} --no-merge-exidx-entries"
+ extra_ldflags="${extra_ldflags} -Wl,--no-merge-exidx-entries"
+fi
+
+
diff --git a/libjava/configure.ac b/libjava/configure.ac
index 8577ce724bd..793b24b6e3b 100644
--- a/libjava/configure.ac
+++ b/libjava/configure.ac
@@ -164,7 +164,7 @@ AC_SUBST(CFLAGS)
AC_SUBST(CXXFLAGS)
AC_SUBST(LDFLAGS)
-AM_INIT_AUTOMAKE([1.9.0])
+AM_INIT_AUTOMAKE([1.9.0 no-dist])
AC_CHECK_TOOL(AS, as)
AC_CHECK_TOOL(LD, ld)
@@ -888,6 +888,21 @@ arm*linux*eabi)
LIBGCJTESTSPEC="-L`${PWDCMD-pwd}`/.libs -L`${PWDCMD-pwd}`/../libstdc++-v3/src/.libs -rpath `${PWDCMD-pwd}`/.libs:`${PWDCMD-pwd}`/../libstdc++-v3/src/.libs -lstdc++"
;;
esac
+
+# Check for --no-merge-exidx-entries, an ARM-specific linker option.
+AC_CACHE_CHECK([for --no-merge-exidx-entries], [libgcj_cv_exidx],
+ [saved_ldflags="$LDFLAGS"
+ LDFLAGS="${LDFLAGS} -Wl,--no-merge-exidx-entries"
+ AC_LINK_IFELSE([int main(void){ return 0;} ],
+ [eval "libgcj_cv_exidx=yes"],
+ [eval "libgcj_cv_exidx=no"])
+ LDFLAGS="${saved_ldflags}"]
+)
+if test "${libgcj_cv_exidx}" = "yes"; then
+ SYSTEMSPEC="${SYSTEMSPEC} --no-merge-exidx-entries"
+ extra_ldflags="${extra_ldflags} -Wl,--no-merge-exidx-entries"
+fi
+
AC_SUBST(extra_ldflags_libjava)
AC_SUBST(extra_ldflags)
AC_SUBST(LIBSTDCXXSPEC)
diff --git a/libjava/include/hppa-signal.h b/libjava/include/hppa-signal.h
index ac4cac5a5bb..d05c4933a71 100644
--- a/libjava/include/hppa-signal.h
+++ b/libjava/include/hppa-signal.h
@@ -9,60 +9,41 @@ This software is copyrighted work licensed under the terms of the
Libgcj License. Please consult the file "LIBGCJ_LICENSE" for
details. */
-/* This file is really more of a specification. The rest of the system
- should be arranged so that this Just Works. */
-
#ifndef JAVA_SIGNAL_H
-# define JAVA_SIGNAL_H 1
+#define JAVA_SIGNAL_H 1
-#include <sys/types.h>
#include <signal.h>
-#include <sys/syscall.h>
-#include <unistd.h>
-# define HANDLE_SEGV 1
-# undef HANDLE_FPE
+#define HANDLE_SEGV 1
+#define HANDLE_FPE 1
#define SIGNAL_HANDLER(_name) \
- static void _name (int _dummy __attribute__ ((unused)), \
- siginfo_t *_info __attribute__ ((__unused__)), \
- void *arg __attribute__ ((__unused__)))
-
-#define MAKE_THROW_FRAME(_exception) \
-do \
-{ \
- ucontext_t *_context = (ucontext_t *) arg; \
- (void)_dummy; \
- (void)_info; \
- mcontext_t *mc = &(_context->uc_mcontext); \
- SetSSReg (mc, ss_pcoq_head, GetSSReg (mc, ss_pcoq_tail)); \
- SetSSReg (mc, ss_pcsq_head, GetSSReg (mc, ss_pcsq_tail)); \
- /* This part is not quit right if the head pc was pointing \
- at a branch. The tail needs to be adjusted to the branch \
- target if the branch is taken. The tail space register \
- may need adjustment as well if the branch is an interspace \
- branch. */ \
- SetSSReg (mc, ss_pcoq_tail, (GetSSReg (mc, ss_pcoq_tail) + 4)); \
- \
- } \
+static void _name (int _dummy __attribute__ ((unused)), \
+ siginfo_t *_info __attribute__ ((__unused__)), \
+ void *arg __attribute__ ((__unused__)))
+
+#define MAKE_THROW_FRAME(_exception)
+
+#define INIT_SEGV \
+do \
+ { \
+ struct sigaction sa; \
+ sa.sa_sigaction = catch_segv; \
+ sigemptyset (&sa.sa_mask); \
+ sa.sa_flags = SA_SIGINFO | SA_NODEFER; \
+ sigaction (SIGSEGV, &sa, NULL); \
+ } \
while (0)
-# define INIT_SEGV \
- do { \
- struct sigaction sa; \
- sa.sa_sigaction = catch_segv; \
- sigemptyset (&sa.sa_mask); \
- sa.sa_flags = SA_SIGINFO | SA_NODEFER; \
- sigaction (SIGSEGV, &sa, NULL); \
- } while (0)
-
-# define INIT_FPE \
- do { \
- struct sigaction sa; \
- sa.sa_sigaction = catch_fpe; \
- sigemptyset (&sa.sa_mask); \
- sa.sa_flags = SA_SIGINFO | SA_NODEFER; \
- sigaction (SIGFPE, &sa, NULL); \
- } while (0)
+#define INIT_FPE \
+do \
+ { \
+ struct sigaction sa; \
+ sa.sa_sigaction = catch_fpe; \
+ sigemptyset (&sa.sa_mask); \
+ sa.sa_flags = SA_SIGINFO | SA_NODEFER; \
+ sigaction (SIGFPE, &sa, NULL); \
+ } \
+while (0)
#endif /* JAVA_SIGNAL_H */
diff --git a/libjava/include/pa-signal.h b/libjava/include/pa-signal.h
index 0f7c05427ab..1226f456463 100644
--- a/libjava/include/pa-signal.h
+++ b/libjava/include/pa-signal.h
@@ -12,29 +12,17 @@ details. */
#define JAVA_SIGNAL_H 1
#include <signal.h>
-#include <ucontext.h>
#include <sys/syscall.h>
#define HANDLE_SEGV 1
#define HANDLE_FPE 1
-#define SIGNAL_HANDLER(_name) \
-static void _Jv_##_name (int _dummy, siginfo_t *_info, void *arg)
+#define SIGNAL_HANDLER(_name) \
+static void _Jv_##_name (int _dummy __attribute__ ((unused)), \
+ siginfo_t *_info __attribute__ ((__unused__)), \
+ void *arg __attribute__ ((__unused__)))
-#define MAKE_THROW_FRAME(_exception) \
-do \
-{ \
- struct ucontext *uc = (struct ucontext *)arg; \
- struct sigcontext *sc = &uc->uc_mcontext; \
- (void)_dummy; \
- (void)_info; \
- /* Advance the program counter so that it is after the start \
- of the instruction: the exception handler expects \
- the PC to point to the instruction after a call. */ \
- sc->sc_iaoq[0] = sc->sc_iaoq[1]; \
- sc->sc_iaoq[1] += 4; \
-} \
-while (0)
+#define MAKE_THROW_FRAME(_exception)
#define INIT_SEGV \
do \
diff --git a/libjava/libltdl/ChangeLog b/libjava/libltdl/ChangeLog
index 3f4336d2b89..302b9e429ee 100644
--- a/libjava/libltdl/ChangeLog
+++ b/libjava/libltdl/ChangeLog
@@ -1,3 +1,13 @@
+2010-04-29 Jakub Jelinek <jakub@redhat.com>
+
+ PR other/43620
+ * Makefile.am (AUTOMAKE_OPTIONS): Add no-dist option.
+ * Makefile.in: Regenerated.
+
+2010-04-29 Release Manager
+
+ * GCC 4.4.4 released.
+
2010-01-21 Release Manager
* GCC 4.4.3 released.
diff --git a/libjava/libltdl/Makefile.am b/libjava/libltdl/Makefile.am
index 737290e6c7c..0c2e26386be 100644
--- a/libjava/libltdl/Makefile.am
+++ b/libjava/libltdl/Makefile.am
@@ -1,6 +1,6 @@
## Process this file with automake to produce Makefile.in
-AUTOMAKE_OPTIONS = no-dependencies foreign
+AUTOMAKE_OPTIONS = no-dependencies foreign no-dist
ACLOCAL_AMFLAGS = -I ../.. -I ../../config
diff --git a/libjava/libltdl/Makefile.in b/libjava/libltdl/Makefile.in
index 8a362433d81..0fdcae323c6 100644
--- a/libjava/libltdl/Makefile.in
+++ b/libjava/libltdl/Makefile.in
@@ -37,11 +37,11 @@ PRE_UNINSTALL = :
POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
-DIST_COMMON = README $(am__configure_deps) $(am__include_HEADERS_DIST) \
- $(am__noinst_HEADERS_DIST) $(srcdir)/Makefile.am \
- $(srcdir)/Makefile.in $(srcdir)/config-h.in \
- $(top_srcdir)/configure COPYING.LIB ChangeLog config.guess \
- config.sub install-sh ltmain.sh missing
+DIST_COMMON = config.guess config.sub README ChangeLog \
+ $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
+ $(top_srcdir)/configure $(am__configure_deps) \
+ $(srcdir)/config-h.in ltmain.sh config.guess config.sub \
+ $(am__include_HEADERS_DIST) $(am__noinst_HEADERS_DIST)
subdir = .
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/../../config/depstand.m4 \
@@ -87,7 +87,6 @@ CCLD = $(CC)
LINK = $(LIBTOOL) --tag=CC --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
$(AM_LDFLAGS) $(LDFLAGS) -o $@
SOURCES = $(libltdl_la_SOURCES) $(libltdlc_la_SOURCES)
-DIST_SOURCES = $(libltdl_la_SOURCES) $(libltdlc_la_SOURCES)
MULTISRCTOP =
MULTIBUILDTOP =
MULTIDIRS =
@@ -100,17 +99,6 @@ am__noinst_HEADERS_DIST = ltdl.h
HEADERS = $(include_HEADERS) $(noinst_HEADERS)
ETAGS = etags
CTAGS = ctags
-DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
-distdir = $(PACKAGE)-$(VERSION)
-top_distdir = $(distdir)
-am__remove_distdir = \
- { test ! -d $(distdir) \
- || { find $(distdir) -type d ! -perm -200 -exec chmod u+w {} ';' \
- && rm -fr $(distdir); }; }
-DIST_ARCHIVES = $(distdir).tar.gz
-GZIP_ENV = --best
-distuninstallcheck_listfiles = find . -type f -print
-distcleancheck_listfiles = find . -type f -print
ACLOCAL = @ACLOCAL@
AMDEP_FALSE = @AMDEP_FALSE@
AMDEP_TRUE = @AMDEP_TRUE@
@@ -223,7 +211,7 @@ sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
-AUTOMAKE_OPTIONS = no-dependencies foreign
+AUTOMAKE_OPTIONS = no-dependencies foreign no-dist
ACLOCAL_AMFLAGS = -I ../.. -I ../../config
INCLUDES = $(GCINCS)
@INSTALL_LTDL_TRUE@include_HEADERS = ltdl.h
@@ -445,134 +433,6 @@ GTAGS:
distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
-
-distdir: $(DISTFILES)
- $(am__remove_distdir)
- mkdir $(distdir)
- $(mkdir_p) $(distdir)/../../config
- @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
- topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
- list='$(DISTFILES)'; for file in $$list; do \
- case $$file in \
- $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
- $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
- esac; \
- if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
- dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
- if test "$$dir" != "$$file" && test "$$dir" != "."; then \
- dir="/$$dir"; \
- $(mkdir_p) "$(distdir)$$dir"; \
- else \
- dir=''; \
- fi; \
- if test -d $$d/$$file; then \
- if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
- cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
- fi; \
- cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
- else \
- test -f $(distdir)/$$file \
- || cp -p $$d/$$file $(distdir)/$$file \
- || exit 1; \
- fi; \
- done
- -find $(distdir) -type d ! -perm -777 -exec chmod a+rwx {} \; -o \
- ! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \
- ! -type d ! -perm -400 -exec chmod a+r {} \; -o \
- ! -type d ! -perm -444 -exec $(SHELL) $(install_sh) -c -m a+r {} {} \; \
- || chmod -R a+r $(distdir)
-dist-gzip: distdir
- tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
- $(am__remove_distdir)
-
-dist-bzip2: distdir
- tardir=$(distdir) && $(am__tar) | bzip2 -9 -c >$(distdir).tar.bz2
- $(am__remove_distdir)
-
-dist-tarZ: distdir
- tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z
- $(am__remove_distdir)
-
-dist-shar: distdir
- shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz
- $(am__remove_distdir)
-
-dist-zip: distdir
- -rm -f $(distdir).zip
- zip -rq $(distdir).zip $(distdir)
- $(am__remove_distdir)
-
-dist dist-all: distdir
- tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
- $(am__remove_distdir)
-
-# This target untars the dist file and tries a VPATH configuration. Then
-# it guarantees that the distribution is self-contained by making another
-# tarfile.
-distcheck: dist
- case '$(DIST_ARCHIVES)' in \
- *.tar.gz*) \
- GZIP=$(GZIP_ENV) gunzip -c $(distdir).tar.gz | $(am__untar) ;;\
- *.tar.bz2*) \
- bunzip2 -c $(distdir).tar.bz2 | $(am__untar) ;;\
- *.tar.Z*) \
- uncompress -c $(distdir).tar.Z | $(am__untar) ;;\
- *.shar.gz*) \
- GZIP=$(GZIP_ENV) gunzip -c $(distdir).shar.gz | unshar ;;\
- *.zip*) \
- unzip $(distdir).zip ;;\
- esac
- chmod -R a-w $(distdir); chmod a+w $(distdir)
- mkdir $(distdir)/_build
- mkdir $(distdir)/_inst
- chmod a-w $(distdir)
- dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \
- && dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \
- && cd $(distdir)/_build \
- && ../configure --srcdir=.. --prefix="$$dc_install_base" \
- $(DISTCHECK_CONFIGURE_FLAGS) \
- && $(MAKE) $(AM_MAKEFLAGS) \
- && $(MAKE) $(AM_MAKEFLAGS) dvi \
- && $(MAKE) $(AM_MAKEFLAGS) check \
- && $(MAKE) $(AM_MAKEFLAGS) install \
- && $(MAKE) $(AM_MAKEFLAGS) installcheck \
- && $(MAKE) $(AM_MAKEFLAGS) uninstall \
- && $(MAKE) $(AM_MAKEFLAGS) distuninstallcheck_dir="$$dc_install_base" \
- distuninstallcheck \
- && chmod -R a-w "$$dc_install_base" \
- && ({ \
- (cd ../.. && umask 077 && mkdir "$$dc_destdir") \
- && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" install \
- && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" uninstall \
- && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" \
- distuninstallcheck_dir="$$dc_destdir" distuninstallcheck; \
- } || { rm -rf "$$dc_destdir"; exit 1; }) \
- && rm -rf "$$dc_destdir" \
- && $(MAKE) $(AM_MAKEFLAGS) dist \
- && rm -rf $(DIST_ARCHIVES) \
- && $(MAKE) $(AM_MAKEFLAGS) distcleancheck
- $(am__remove_distdir)
- @(echo "$(distdir) archives ready for distribution: "; \
- list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \
- sed -e '1{h;s/./=/g;p;x;}' -e '$${p;x;}'
-distuninstallcheck:
- @cd $(distuninstallcheck_dir) \
- && test `$(distuninstallcheck_listfiles) | wc -l` -le 1 \
- || { echo "ERROR: files left after uninstall:" ; \
- if test -n "$(DESTDIR)"; then \
- echo " (check DESTDIR support)"; \
- fi ; \
- $(distuninstallcheck_listfiles) ; \
- exit 1; } >&2
-distcleancheck: distclean
- @if test '$(srcdir)' = . ; then \
- echo "ERROR: distcleancheck can only run from a VPATH build" ; \
- exit 1 ; \
- fi
- @test `$(distcleancheck_listfiles) | wc -l` -eq 0 \
- || { echo "ERROR: files left in build directory after distclean:" ; \
- $(distcleancheck_listfiles) ; \
- exit 1; } >&2
check-am: all-am
check: check-am
all-am: Makefile $(LTLIBRARIES) all-multi $(HEADERS) config.h
@@ -661,12 +521,10 @@ uninstall-am: uninstall-includeHEADERS uninstall-info-am \
.PHONY: CTAGS GTAGS all all-am all-multi am--refresh check check-am \
clean clean-generic clean-libLTLIBRARIES clean-libtool \
- clean-multi clean-noinstLTLIBRARIES ctags dist dist-all \
- dist-bzip2 dist-gzip dist-shar dist-tarZ dist-zip distcheck \
- distclean distclean-compile distclean-generic distclean-hdr \
- distclean-libtool distclean-multi distclean-tags \
- distcleancheck distdir distuninstallcheck dvi dvi-am html \
- html-am info info-am install install-am install-data \
+ clean-multi clean-noinstLTLIBRARIES ctags distclean \
+ distclean-compile distclean-generic distclean-hdr \
+ distclean-libtool distclean-multi distclean-tags dvi dvi-am \
+ html html-am info info-am install install-am install-data \
install-data-am install-data-local install-exec \
install-exec-am install-includeHEADERS install-info \
install-info-am install-libLTLIBRARIES install-man \
diff --git a/libmudflap/ChangeLog b/libmudflap/ChangeLog
index 31d4d75404f..b49145e86e7 100644
--- a/libmudflap/ChangeLog
+++ b/libmudflap/ChangeLog
@@ -1,3 +1,13 @@
+2010-04-29 Jakub Jelinek <jakub@redhat.com>
+
+ PR other/43620
+ * configure.ac (AM_INIT_AUTOMAKE): Add no-dist option.
+ * Makefile.in: Regenerated.
+
+2010-04-29 Release Manager
+
+ * GCC 4.4.4 released.
+
2010-03-15 David S. Miller <davem@davemloft.net>
* testsuite/libmudflap.c/pass54-frag.c: Add explicit return from
diff --git a/libmudflap/Makefile.in b/libmudflap/Makefile.in
index d3d4be353a9..e07e7a8619b 100644
--- a/libmudflap/Makefile.in
+++ b/libmudflap/Makefile.in
@@ -38,13 +38,14 @@ POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
target_triplet = @target@
-DIST_COMMON = $(am__configure_deps) $(nobase_libsubinclude_HEADERS) \
- $(srcdir)/../compile $(srcdir)/../config.guess \
- $(srcdir)/../config.sub $(srcdir)/../depcomp \
- $(srcdir)/../install-sh $(srcdir)/../ltmain.sh \
- $(srcdir)/../missing $(srcdir)/../mkinstalldirs \
- $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
- $(srcdir)/config.h.in $(top_srcdir)/configure ChangeLog
+DIST_COMMON = $(srcdir)/../config.guess $(srcdir)/../config.sub \
+ ChangeLog $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
+ $(top_srcdir)/configure $(am__configure_deps) \
+ $(srcdir)/config.h.in $(srcdir)/../mkinstalldirs \
+ $(srcdir)/../compile $(srcdir)/../compile $(srcdir)/../compile \
+ $(srcdir)/../compile $(srcdir)/../compile $(srcdir)/../depcomp \
+ $(srcdir)/../ltmain.sh $(srcdir)/../config.guess \
+ $(srcdir)/../config.sub $(nobase_libsubinclude_HEADERS)
subdir = .
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/../config/acx.m4 \
@@ -95,7 +96,6 @@ CCLD = $(CC)
LINK = $(LIBTOOL) --tag=CC --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
$(AM_LDFLAGS) $(LDFLAGS) -o $@
SOURCES = $(libmudflap_la_SOURCES) $(libmudflapth_la_SOURCES)
-DIST_SOURCES = $(libmudflap_la_SOURCES) $(libmudflapth_la_SOURCES)
MULTISRCTOP =
MULTIBUILDTOP =
MULTIDIRS =
@@ -113,17 +113,6 @@ HEADERS = $(nobase_libsubinclude_HEADERS)
ETAGS = etags
CTAGS = ctags
DIST_SUBDIRS = $(SUBDIRS)
-DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
-distdir = $(PACKAGE)-$(VERSION)
-top_distdir = $(distdir)
-am__remove_distdir = \
- { test ! -d $(distdir) \
- || { find $(distdir) -type d ! -perm -200 -exec chmod u+w {} ';' \
- && rm -fr $(distdir); }; }
-DIST_ARCHIVES = $(distdir).tar.gz
-GZIP_ENV = --best
-distuninstallcheck_listfiles = find . -type f -print
-distcleancheck_listfiles = find . -type f -print
ACLOCAL = @ACLOCAL@
AMDEP_FALSE = @AMDEP_FALSE@
AMDEP_TRUE = @AMDEP_TRUE@
@@ -662,149 +651,6 @@ GTAGS:
distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
-
-distdir: $(DISTFILES)
- $(am__remove_distdir)
- mkdir $(distdir)
- $(mkdir_p) $(distdir)/.. $(distdir)/../config $(distdir)/testsuite
- @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
- topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
- list='$(DISTFILES)'; for file in $$list; do \
- case $$file in \
- $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
- $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
- esac; \
- if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
- dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
- if test "$$dir" != "$$file" && test "$$dir" != "."; then \
- dir="/$$dir"; \
- $(mkdir_p) "$(distdir)$$dir"; \
- else \
- dir=''; \
- fi; \
- if test -d $$d/$$file; then \
- if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
- cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
- fi; \
- cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
- else \
- test -f $(distdir)/$$file \
- || cp -p $$d/$$file $(distdir)/$$file \
- || exit 1; \
- fi; \
- done
- list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
- if test "$$subdir" = .; then :; else \
- test -d "$(distdir)/$$subdir" \
- || $(mkdir_p) "$(distdir)/$$subdir" \
- || exit 1; \
- distdir=`$(am__cd) $(distdir) && pwd`; \
- top_distdir=`$(am__cd) $(top_distdir) && pwd`; \
- (cd $$subdir && \
- $(MAKE) $(AM_MAKEFLAGS) \
- top_distdir="$$top_distdir" \
- distdir="$$distdir/$$subdir" \
- distdir) \
- || exit 1; \
- fi; \
- done
- -find $(distdir) -type d ! -perm -777 -exec chmod a+rwx {} \; -o \
- ! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \
- ! -type d ! -perm -400 -exec chmod a+r {} \; -o \
- ! -type d ! -perm -444 -exec $(SHELL) $(install_sh) -c -m a+r {} {} \; \
- || chmod -R a+r $(distdir)
-dist-gzip: distdir
- tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
- $(am__remove_distdir)
-
-dist-bzip2: distdir
- tardir=$(distdir) && $(am__tar) | bzip2 -9 -c >$(distdir).tar.bz2
- $(am__remove_distdir)
-
-dist-tarZ: distdir
- tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z
- $(am__remove_distdir)
-
-dist-shar: distdir
- shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz
- $(am__remove_distdir)
-
-dist-zip: distdir
- -rm -f $(distdir).zip
- zip -rq $(distdir).zip $(distdir)
- $(am__remove_distdir)
-
-dist dist-all: distdir
- tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
- $(am__remove_distdir)
-
-# This target untars the dist file and tries a VPATH configuration. Then
-# it guarantees that the distribution is self-contained by making another
-# tarfile.
-distcheck: dist
- case '$(DIST_ARCHIVES)' in \
- *.tar.gz*) \
- GZIP=$(GZIP_ENV) gunzip -c $(distdir).tar.gz | $(am__untar) ;;\
- *.tar.bz2*) \
- bunzip2 -c $(distdir).tar.bz2 | $(am__untar) ;;\
- *.tar.Z*) \
- uncompress -c $(distdir).tar.Z | $(am__untar) ;;\
- *.shar.gz*) \
- GZIP=$(GZIP_ENV) gunzip -c $(distdir).shar.gz | unshar ;;\
- *.zip*) \
- unzip $(distdir).zip ;;\
- esac
- chmod -R a-w $(distdir); chmod a+w $(distdir)
- mkdir $(distdir)/_build
- mkdir $(distdir)/_inst
- chmod a-w $(distdir)
- dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \
- && dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \
- && cd $(distdir)/_build \
- && ../configure --srcdir=.. --prefix="$$dc_install_base" \
- $(DISTCHECK_CONFIGURE_FLAGS) \
- && $(MAKE) $(AM_MAKEFLAGS) \
- && $(MAKE) $(AM_MAKEFLAGS) dvi \
- && $(MAKE) $(AM_MAKEFLAGS) check \
- && $(MAKE) $(AM_MAKEFLAGS) install \
- && $(MAKE) $(AM_MAKEFLAGS) installcheck \
- && $(MAKE) $(AM_MAKEFLAGS) uninstall \
- && $(MAKE) $(AM_MAKEFLAGS) distuninstallcheck_dir="$$dc_install_base" \
- distuninstallcheck \
- && chmod -R a-w "$$dc_install_base" \
- && ({ \
- (cd ../.. && umask 077 && mkdir "$$dc_destdir") \
- && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" install \
- && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" uninstall \
- && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" \
- distuninstallcheck_dir="$$dc_destdir" distuninstallcheck; \
- } || { rm -rf "$$dc_destdir"; exit 1; }) \
- && rm -rf "$$dc_destdir" \
- && $(MAKE) $(AM_MAKEFLAGS) dist \
- && rm -rf $(DIST_ARCHIVES) \
- && $(MAKE) $(AM_MAKEFLAGS) distcleancheck
- $(am__remove_distdir)
- @(echo "$(distdir) archives ready for distribution: "; \
- list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \
- sed -e '1{h;s/./=/g;p;x;}' -e '$${p;x;}'
-distuninstallcheck:
- @cd $(distuninstallcheck_dir) \
- && test `$(distuninstallcheck_listfiles) | wc -l` -le 1 \
- || { echo "ERROR: files left after uninstall:" ; \
- if test -n "$(DESTDIR)"; then \
- echo " (check DESTDIR support)"; \
- fi ; \
- $(distuninstallcheck_listfiles) ; \
- exit 1; } >&2
-distcleancheck: distclean
- @if test '$(srcdir)' = . ; then \
- echo "ERROR: distcleancheck can only run from a VPATH build" ; \
- exit 1 ; \
- fi
- @test `$(distcleancheck_listfiles) | wc -l` -eq 0 \
- || { echo "ERROR: files left in build directory after distclean:" ; \
- $(distcleancheck_listfiles) ; \
- exit 1; } >&2
check-am: all-am
check: check-recursive
all-am: Makefile $(LTLIBRARIES) all-multi $(HEADERS) config.h
@@ -897,17 +743,14 @@ uninstall-info: uninstall-info-recursive
.PHONY: $(RECURSIVE_TARGETS) CTAGS GTAGS all all-am all-multi \
am--refresh check check-am clean clean-generic clean-libtool \
clean-multi clean-recursive clean-toolexeclibLTLIBRARIES ctags \
- ctags-recursive dist dist-all dist-bzip2 dist-gzip dist-shar \
- dist-tarZ dist-zip distcheck distclean distclean-compile \
- distclean-generic distclean-hdr distclean-libtool \
- distclean-multi distclean-recursive distclean-tags \
- distcleancheck distdir distuninstallcheck dvi dvi-am html \
- html-am info info-am install install-am install-data \
- install-data-am install-exec install-exec-am install-info \
- install-info-am install-man install-multi \
- install-nobase_libsubincludeHEADERS install-strip \
- install-toolexeclibLTLIBRARIES installcheck installcheck-am \
- installdirs installdirs-am maintainer-clean \
+ ctags-recursive distclean distclean-compile distclean-generic \
+ distclean-hdr distclean-libtool distclean-multi \
+ distclean-recursive distclean-tags dvi dvi-am html html-am \
+ info info-am install install-am install-data install-data-am \
+ install-exec install-exec-am install-info install-info-am \
+ install-man install-multi install-nobase_libsubincludeHEADERS \
+ install-strip install-toolexeclibLTLIBRARIES installcheck \
+ installcheck-am installdirs installdirs-am maintainer-clean \
maintainer-clean-generic maintainer-clean-multi \
maintainer-clean-recursive mostlyclean mostlyclean-compile \
mostlyclean-generic mostlyclean-libtool mostlyclean-multi \
diff --git a/libmudflap/configure.ac b/libmudflap/configure.ac
index 8ce99a10270..578a02d1694 100644
--- a/libmudflap/configure.ac
+++ b/libmudflap/configure.ac
@@ -7,7 +7,7 @@ AC_CONFIG_SRCDIR(mf-runtime.c)
AC_CANONICAL_SYSTEM
ACX_NONCANONICAL_TARGET
-AM_INIT_AUTOMAKE
+AM_INIT_AUTOMAKE([no-dist])
AC_MSG_CHECKING([for --enable-version-specific-runtime-libs])
AC_ARG_ENABLE(version-specific-runtime-libs,
diff --git a/libobjc/ChangeLog b/libobjc/ChangeLog
index d2ea6d127ce..8b77c0d049c 100644
--- a/libobjc/ChangeLog
+++ b/libobjc/ChangeLog
@@ -1,3 +1,7 @@
+2010-04-29 Release Manager
+
+ * GCC 4.4.4 released.
+
2010-01-21 Release Manager
* GCC 4.4.3 released.
diff --git a/libssp/ChangeLog b/libssp/ChangeLog
index 4c5ff895dc0..26e7acf5b80 100644
--- a/libssp/ChangeLog
+++ b/libssp/ChangeLog
@@ -1,3 +1,13 @@
+2010-04-29 Jakub Jelinek <jakub@redhat.com>
+
+ PR other/43620
+ * configure.ac (AM_INIT_AUTOMAKE): Add no-dist option.
+ * Makefile.in: Regenerated.
+
+2010-04-29 Release Manager
+
+ * GCC 4.4.4 released.
+
2010-01-21 Release Manager
* GCC 4.4.3 released.
diff --git a/libssp/Makefile.in b/libssp/Makefile.in
index fc5c90d650f..e7164d63a31 100644
--- a/libssp/Makefile.in
+++ b/libssp/Makefile.in
@@ -38,14 +38,14 @@ POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
target_triplet = @target@
-DIST_COMMON = $(am__configure_deps) $(nobase_libsubinclude_HEADERS) \
- $(srcdir)/../compile $(srcdir)/../config.guess \
- $(srcdir)/../config.sub $(srcdir)/../depcomp \
- $(srcdir)/../install-sh $(srcdir)/../ltmain.sh \
- $(srcdir)/../missing $(srcdir)/../mkinstalldirs \
- $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
- $(srcdir)/config.h.in $(top_srcdir)/configure \
- $(top_srcdir)/ssp/ssp.h.in ChangeLog
+DIST_COMMON = $(srcdir)/../config.guess $(srcdir)/../config.sub \
+ ChangeLog $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
+ $(top_srcdir)/configure $(am__configure_deps) \
+ $(srcdir)/config.h.in $(srcdir)/../mkinstalldirs \
+ $(top_srcdir)/ssp/ssp.h.in $(srcdir)/../compile \
+ $(srcdir)/../depcomp $(srcdir)/../ltmain.sh \
+ $(srcdir)/../config.guess $(srcdir)/../config.sub \
+ $(nobase_libsubinclude_HEADERS)
subdir = .
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/../config/acx.m4 \
@@ -94,7 +94,6 @@ CCLD = $(CC)
LINK = $(LIBTOOL) --tag=CC --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
$(AM_LDFLAGS) $(LDFLAGS) -o $@
SOURCES = $(libssp_la_SOURCES) $(libssp_nonshared_la_SOURCES)
-DIST_SOURCES = $(libssp_la_SOURCES) $(libssp_nonshared_la_SOURCES)
MULTISRCTOP =
MULTIBUILDTOP =
MULTIDIRS =
@@ -105,17 +104,6 @@ nobase_libsubincludeHEADERS_INSTALL = $(install_sh_DATA)
HEADERS = $(nobase_libsubinclude_HEADERS)
ETAGS = etags
CTAGS = ctags
-DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
-distdir = $(PACKAGE)-$(VERSION)
-top_distdir = $(distdir)
-am__remove_distdir = \
- { test ! -d $(distdir) \
- || { find $(distdir) -type d ! -perm -200 -exec chmod u+w {} ';' \
- && rm -fr $(distdir); }; }
-DIST_ARCHIVES = $(distdir).tar.gz
-GZIP_ENV = --best
-distuninstallcheck_listfiles = find . -type f -print
-distcleancheck_listfiles = find . -type f -print
ACLOCAL = @ACLOCAL@
AMDEP_FALSE = @AMDEP_FALSE@
AMDEP_TRUE = @AMDEP_TRUE@
@@ -546,134 +534,6 @@ GTAGS:
distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
-
-distdir: $(DISTFILES)
- $(am__remove_distdir)
- mkdir $(distdir)
- $(mkdir_p) $(distdir)/.. $(distdir)/../config $(distdir)/ssp
- @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
- topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
- list='$(DISTFILES)'; for file in $$list; do \
- case $$file in \
- $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
- $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
- esac; \
- if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
- dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
- if test "$$dir" != "$$file" && test "$$dir" != "."; then \
- dir="/$$dir"; \
- $(mkdir_p) "$(distdir)$$dir"; \
- else \
- dir=''; \
- fi; \
- if test -d $$d/$$file; then \
- if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
- cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
- fi; \
- cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
- else \
- test -f $(distdir)/$$file \
- || cp -p $$d/$$file $(distdir)/$$file \
- || exit 1; \
- fi; \
- done
- -find $(distdir) -type d ! -perm -777 -exec chmod a+rwx {} \; -o \
- ! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \
- ! -type d ! -perm -400 -exec chmod a+r {} \; -o \
- ! -type d ! -perm -444 -exec $(SHELL) $(install_sh) -c -m a+r {} {} \; \
- || chmod -R a+r $(distdir)
-dist-gzip: distdir
- tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
- $(am__remove_distdir)
-
-dist-bzip2: distdir
- tardir=$(distdir) && $(am__tar) | bzip2 -9 -c >$(distdir).tar.bz2
- $(am__remove_distdir)
-
-dist-tarZ: distdir
- tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z
- $(am__remove_distdir)
-
-dist-shar: distdir
- shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz
- $(am__remove_distdir)
-
-dist-zip: distdir
- -rm -f $(distdir).zip
- zip -rq $(distdir).zip $(distdir)
- $(am__remove_distdir)
-
-dist dist-all: distdir
- tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
- $(am__remove_distdir)
-
-# This target untars the dist file and tries a VPATH configuration. Then
-# it guarantees that the distribution is self-contained by making another
-# tarfile.
-distcheck: dist
- case '$(DIST_ARCHIVES)' in \
- *.tar.gz*) \
- GZIP=$(GZIP_ENV) gunzip -c $(distdir).tar.gz | $(am__untar) ;;\
- *.tar.bz2*) \
- bunzip2 -c $(distdir).tar.bz2 | $(am__untar) ;;\
- *.tar.Z*) \
- uncompress -c $(distdir).tar.Z | $(am__untar) ;;\
- *.shar.gz*) \
- GZIP=$(GZIP_ENV) gunzip -c $(distdir).shar.gz | unshar ;;\
- *.zip*) \
- unzip $(distdir).zip ;;\
- esac
- chmod -R a-w $(distdir); chmod a+w $(distdir)
- mkdir $(distdir)/_build
- mkdir $(distdir)/_inst
- chmod a-w $(distdir)
- dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \
- && dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \
- && cd $(distdir)/_build \
- && ../configure --srcdir=.. --prefix="$$dc_install_base" \
- $(DISTCHECK_CONFIGURE_FLAGS) \
- && $(MAKE) $(AM_MAKEFLAGS) \
- && $(MAKE) $(AM_MAKEFLAGS) dvi \
- && $(MAKE) $(AM_MAKEFLAGS) check \
- && $(MAKE) $(AM_MAKEFLAGS) install \
- && $(MAKE) $(AM_MAKEFLAGS) installcheck \
- && $(MAKE) $(AM_MAKEFLAGS) uninstall \
- && $(MAKE) $(AM_MAKEFLAGS) distuninstallcheck_dir="$$dc_install_base" \
- distuninstallcheck \
- && chmod -R a-w "$$dc_install_base" \
- && ({ \
- (cd ../.. && umask 077 && mkdir "$$dc_destdir") \
- && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" install \
- && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" uninstall \
- && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" \
- distuninstallcheck_dir="$$dc_destdir" distuninstallcheck; \
- } || { rm -rf "$$dc_destdir"; exit 1; }) \
- && rm -rf "$$dc_destdir" \
- && $(MAKE) $(AM_MAKEFLAGS) dist \
- && rm -rf $(DIST_ARCHIVES) \
- && $(MAKE) $(AM_MAKEFLAGS) distcleancheck
- $(am__remove_distdir)
- @(echo "$(distdir) archives ready for distribution: "; \
- list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \
- sed -e '1{h;s/./=/g;p;x;}' -e '$${p;x;}'
-distuninstallcheck:
- @cd $(distuninstallcheck_dir) \
- && test `$(distuninstallcheck_listfiles) | wc -l` -le 1 \
- || { echo "ERROR: files left after uninstall:" ; \
- if test -n "$(DESTDIR)"; then \
- echo " (check DESTDIR support)"; \
- fi ; \
- $(distuninstallcheck_listfiles) ; \
- exit 1; } >&2
-distcleancheck: distclean
- @if test '$(srcdir)' = . ; then \
- echo "ERROR: distcleancheck can only run from a VPATH build" ; \
- exit 1 ; \
- fi
- @test `$(distcleancheck_listfiles) | wc -l` -eq 0 \
- || { echo "ERROR: files left in build directory after distclean:" ; \
- $(distcleancheck_listfiles) ; \
- exit 1; } >&2
check-am: all-am
check: check-am
all-am: Makefile $(LTLIBRARIES) all-multi $(HEADERS) config.h
@@ -762,20 +622,18 @@ uninstall-am: uninstall-info-am uninstall-nobase_libsubincludeHEADERS \
.PHONY: CTAGS GTAGS all all-am all-multi am--refresh check check-am \
clean clean-generic clean-libtool clean-multi \
- clean-toolexeclibLTLIBRARIES ctags dist dist-all dist-bzip2 \
- dist-gzip dist-shar dist-tarZ dist-zip distcheck distclean \
- distclean-compile distclean-generic distclean-hdr \
- distclean-libtool distclean-multi distclean-tags \
- distcleancheck distdir distuninstallcheck dvi dvi-am html \
- html-am info info-am install install-am install-data \
- install-data-am install-exec install-exec-am install-info \
- install-info-am install-man install-multi \
- install-nobase_libsubincludeHEADERS install-strip \
- install-toolexeclibLTLIBRARIES installcheck installcheck-am \
- installdirs maintainer-clean maintainer-clean-generic \
- maintainer-clean-multi mostlyclean mostlyclean-compile \
- mostlyclean-generic mostlyclean-libtool mostlyclean-multi pdf \
- pdf-am ps ps-am tags uninstall uninstall-am uninstall-info-am \
+ clean-toolexeclibLTLIBRARIES ctags distclean distclean-compile \
+ distclean-generic distclean-hdr distclean-libtool \
+ distclean-multi distclean-tags dvi dvi-am html html-am info \
+ info-am install install-am install-data install-data-am \
+ install-exec install-exec-am install-info install-info-am \
+ install-man install-multi install-nobase_libsubincludeHEADERS \
+ install-strip install-toolexeclibLTLIBRARIES installcheck \
+ installcheck-am installdirs maintainer-clean \
+ maintainer-clean-generic maintainer-clean-multi mostlyclean \
+ mostlyclean-compile mostlyclean-generic mostlyclean-libtool \
+ mostlyclean-multi pdf pdf-am ps ps-am tags uninstall \
+ uninstall-am uninstall-info-am \
uninstall-nobase_libsubincludeHEADERS \
uninstall-toolexeclibLTLIBRARIES
diff --git a/libssp/configure.ac b/libssp/configure.ac
index 99b4edfe104..d31ea3bd373 100644
--- a/libssp/configure.ac
+++ b/libssp/configure.ac
@@ -8,7 +8,7 @@ AC_CONFIG_SRCDIR(ssp.c)
AC_CANONICAL_SYSTEM
ACX_NONCANONICAL_TARGET
-AM_INIT_AUTOMAKE
+AM_INIT_AUTOMAKE([no-dist])
AC_MSG_CHECKING([for --enable-version-specific-runtime-libs])
AC_ARG_ENABLE(version-specific-runtime-libs,
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog
index 02063079e9e..18e5f02d8cc 100644
--- a/libstdc++-v3/ChangeLog
+++ b/libstdc++-v3/ChangeLog
@@ -1,3 +1,31 @@
+2010-04-29 Jakub Jelinek <jakub@redhat.com>
+
+ PR other/43620
+ * configure.ac (AM_INIT_AUTOMAKE): Add no-dist option.
+ * Makefile.in: Regenerated.
+
+2010-04-29 Release Manager
+
+ * GCC 4.4.4 released.
+
+2010-04-10 Jonathan Wakely <jwakely.gcc@gmail.com>
+
+ Backport:
+ 2009-06-23 Paolo Carlini <paolo.carlini@oracle.com>
+
+ PR libstdc++/40518
+ * include/bits/basic_string.h (basic_string<>::_Rep::
+ _M_set_length_and_sharable): Do not write the empty rep.
+ (basic_string<>::erase(iterator, iterator)): Likewise,
+ move out of line...
+ * include/bits/basic_string.tcc: ... here.
+
+2010-04-08 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ PR target/43458
+ * testsuite/26_numerics/headers/cmath/c99_classification_macros_c.cc:
+ Xfail hppa*-*-hpux*.
+
2010-03-22 Johannes Singler <singler@kit.edu>
* include/parallel/numeric (inner_product, partial_sum):
diff --git a/libstdc++-v3/Makefile.in b/libstdc++-v3/Makefile.in
index 7d5afd96f05..92525de11e8 100644
--- a/libstdc++-v3/Makefile.in
+++ b/libstdc++-v3/Makefile.in
@@ -36,13 +36,14 @@ POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
target_triplet = @target@
-DIST_COMMON = README $(am__configure_deps) $(srcdir)/../config.guess \
- $(srcdir)/../config.sub $(srcdir)/../install-sh \
- $(srcdir)/../ltmain.sh $(srcdir)/../missing \
- $(srcdir)/../mkinstalldirs $(srcdir)/Makefile.am \
- $(srcdir)/Makefile.in $(srcdir)/config.h.in \
- $(top_srcdir)/configure $(top_srcdir)/fragment.am \
- $(top_srcdir)/scripts/testsuite_flags.in ChangeLog
+DIST_COMMON = $(top_srcdir)/fragment.am $(srcdir)/../config.guess \
+ $(srcdir)/../config.sub README ChangeLog $(srcdir)/Makefile.in \
+ $(srcdir)/Makefile.am $(top_srcdir)/configure \
+ $(am__configure_deps) $(srcdir)/config.h.in \
+ $(srcdir)/../mkinstalldirs \
+ $(top_srcdir)/scripts/testsuite_flags.in \
+ $(srcdir)/../ltmain.sh $(srcdir)/../config.guess \
+ $(srcdir)/../config.sub
subdir = .
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/../config/enable.m4 \
@@ -72,7 +73,6 @@ CONFIG_CLEAN_FILES = scripts/testsuite_flags
depcomp =
am__depfiles_maybe =
SOURCES =
-DIST_SOURCES =
MULTISRCTOP =
MULTIBUILDTOP =
MULTIDIRS =
@@ -88,17 +88,6 @@ RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
ETAGS = etags
CTAGS = ctags
DIST_SUBDIRS = include libsupc++ doc src po testsuite
-DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
-distdir = $(PACKAGE)-$(VERSION)
-top_distdir = $(distdir)
-am__remove_distdir = \
- { test ! -d $(distdir) \
- || { find $(distdir) -type d ! -perm -200 -exec chmod u+w {} ';' \
- && rm -fr $(distdir); }; }
-DIST_ARCHIVES = $(distdir).tar.gz
-GZIP_ENV = --best
-distuninstallcheck_listfiles = find . -type f -print
-distcleancheck_listfiles = find . -type f -print
ABI_TWEAKS_SRCDIR = @ABI_TWEAKS_SRCDIR@
ACLOCAL = @ACLOCAL@
ALLOCATOR_H = @ALLOCATOR_H@
@@ -557,149 +546,6 @@ GTAGS:
distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
-
-distdir: $(DISTFILES)
- $(am__remove_distdir)
- mkdir $(distdir)
- $(mkdir_p) $(distdir)/.. $(distdir)/../config $(distdir)/scripts
- @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
- topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
- list='$(DISTFILES)'; for file in $$list; do \
- case $$file in \
- $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
- $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
- esac; \
- if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
- dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
- if test "$$dir" != "$$file" && test "$$dir" != "."; then \
- dir="/$$dir"; \
- $(mkdir_p) "$(distdir)$$dir"; \
- else \
- dir=''; \
- fi; \
- if test -d $$d/$$file; then \
- if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
- cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
- fi; \
- cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
- else \
- test -f $(distdir)/$$file \
- || cp -p $$d/$$file $(distdir)/$$file \
- || exit 1; \
- fi; \
- done
- list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
- if test "$$subdir" = .; then :; else \
- test -d "$(distdir)/$$subdir" \
- || $(mkdir_p) "$(distdir)/$$subdir" \
- || exit 1; \
- distdir=`$(am__cd) $(distdir) && pwd`; \
- top_distdir=`$(am__cd) $(top_distdir) && pwd`; \
- (cd $$subdir && \
- $(MAKE) $(AM_MAKEFLAGS) \
- top_distdir="$$top_distdir" \
- distdir="$$distdir/$$subdir" \
- distdir) \
- || exit 1; \
- fi; \
- done
- -find $(distdir) -type d ! -perm -777 -exec chmod a+rwx {} \; -o \
- ! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \
- ! -type d ! -perm -400 -exec chmod a+r {} \; -o \
- ! -type d ! -perm -444 -exec $(SHELL) $(install_sh) -c -m a+r {} {} \; \
- || chmod -R a+r $(distdir)
-dist-gzip: distdir
- tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
- $(am__remove_distdir)
-
-dist-bzip2: distdir
- tardir=$(distdir) && $(am__tar) | bzip2 -9 -c >$(distdir).tar.bz2
- $(am__remove_distdir)
-
-dist-tarZ: distdir
- tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z
- $(am__remove_distdir)
-
-dist-shar: distdir
- shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz
- $(am__remove_distdir)
-
-dist-zip: distdir
- -rm -f $(distdir).zip
- zip -rq $(distdir).zip $(distdir)
- $(am__remove_distdir)
-
-dist dist-all: distdir
- tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
- $(am__remove_distdir)
-
-# This target untars the dist file and tries a VPATH configuration. Then
-# it guarantees that the distribution is self-contained by making another
-# tarfile.
-distcheck: dist
- case '$(DIST_ARCHIVES)' in \
- *.tar.gz*) \
- GZIP=$(GZIP_ENV) gunzip -c $(distdir).tar.gz | $(am__untar) ;;\
- *.tar.bz2*) \
- bunzip2 -c $(distdir).tar.bz2 | $(am__untar) ;;\
- *.tar.Z*) \
- uncompress -c $(distdir).tar.Z | $(am__untar) ;;\
- *.shar.gz*) \
- GZIP=$(GZIP_ENV) gunzip -c $(distdir).shar.gz | unshar ;;\
- *.zip*) \
- unzip $(distdir).zip ;;\
- esac
- chmod -R a-w $(distdir); chmod a+w $(distdir)
- mkdir $(distdir)/_build
- mkdir $(distdir)/_inst
- chmod a-w $(distdir)
- dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \
- && dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \
- && cd $(distdir)/_build \
- && ../configure --srcdir=.. --prefix="$$dc_install_base" \
- $(DISTCHECK_CONFIGURE_FLAGS) \
- && $(MAKE) $(AM_MAKEFLAGS) \
- && $(MAKE) $(AM_MAKEFLAGS) dvi \
- && $(MAKE) $(AM_MAKEFLAGS) check \
- && $(MAKE) $(AM_MAKEFLAGS) install \
- && $(MAKE) $(AM_MAKEFLAGS) installcheck \
- && $(MAKE) $(AM_MAKEFLAGS) uninstall \
- && $(MAKE) $(AM_MAKEFLAGS) distuninstallcheck_dir="$$dc_install_base" \
- distuninstallcheck \
- && chmod -R a-w "$$dc_install_base" \
- && ({ \
- (cd ../.. && umask 077 && mkdir "$$dc_destdir") \
- && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" install \
- && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" uninstall \
- && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" \
- distuninstallcheck_dir="$$dc_destdir" distuninstallcheck; \
- } || { rm -rf "$$dc_destdir"; exit 1; }) \
- && rm -rf "$$dc_destdir" \
- && $(MAKE) $(AM_MAKEFLAGS) dist \
- && rm -rf $(DIST_ARCHIVES) \
- && $(MAKE) $(AM_MAKEFLAGS) distcleancheck
- $(am__remove_distdir)
- @(echo "$(distdir) archives ready for distribution: "; \
- list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \
- sed -e '1{h;s/./=/g;p;x;}' -e '$${p;x;}'
-distuninstallcheck:
- @cd $(distuninstallcheck_dir) \
- && test `$(distuninstallcheck_listfiles) | wc -l` -le 1 \
- || { echo "ERROR: files left after uninstall:" ; \
- if test -n "$(DESTDIR)"; then \
- echo " (check DESTDIR support)"; \
- fi ; \
- $(distuninstallcheck_listfiles) ; \
- exit 1; } >&2
-distcleancheck: distclean
- @if test '$(srcdir)' = . ; then \
- echo "ERROR: distcleancheck can only run from a VPATH build" ; \
- exit 1 ; \
- fi
- @test `$(distcleancheck_listfiles) | wc -l` -eq 0 \
- || { echo "ERROR: files left in build directory after distclean:" ; \
- $(distcleancheck_listfiles) ; \
- exit 1; } >&2
check-am: all-am
check: check-recursive
all-am: Makefile all-multi config.h
@@ -783,16 +629,14 @@ uninstall-info: uninstall-info-recursive
.PHONY: $(RECURSIVE_TARGETS) CTAGS GTAGS all all-am all-multi \
am--refresh check check-am clean clean-generic clean-libtool \
- clean-multi clean-recursive ctags ctags-recursive dist \
- dist-all dist-bzip2 dist-gzip dist-shar dist-tarZ dist-zip \
- distcheck distclean distclean-generic distclean-hdr \
- distclean-libtool distclean-multi distclean-recursive \
- distclean-tags distcleancheck distdir distuninstallcheck dvi \
- dvi-am html html-am info info-am install install-am \
- install-data install-data-am install-exec install-exec-am \
- install-info install-info-am install-man install-multi \
- install-strip installcheck installcheck-am installdirs \
- installdirs-am maintainer-clean maintainer-clean-generic \
+ clean-multi clean-recursive ctags ctags-recursive distclean \
+ distclean-generic distclean-hdr distclean-libtool \
+ distclean-multi distclean-recursive distclean-tags dvi dvi-am \
+ html html-am info info-am install install-am install-data \
+ install-data-am install-exec install-exec-am install-info \
+ install-info-am install-man install-multi install-strip \
+ installcheck installcheck-am installdirs installdirs-am \
+ maintainer-clean maintainer-clean-generic \
maintainer-clean-multi maintainer-clean-recursive mostlyclean \
mostlyclean-generic mostlyclean-libtool mostlyclean-multi \
mostlyclean-recursive pdf pdf-am ps ps-am tags tags-recursive \
diff --git a/libstdc++-v3/configure.ac b/libstdc++-v3/configure.ac
index 977e12cf91d..7e95e8d5fb7 100644
--- a/libstdc++-v3/configure.ac
+++ b/libstdc++-v3/configure.ac
@@ -74,7 +74,7 @@ fi
# no-dependencies: turns off auto dependency generation (just for now)
# -Wall: turns on all automake warnings...
# -Wno-portability: ...except this one, since GNU make is now required.
-AM_INIT_AUTOMAKE([1.9.3 no-define foreign no-dependencies -Wall -Wno-portability -Wno-override])
+AM_INIT_AUTOMAKE([1.9.3 no-define foreign no-dependencies no-dist -Wall -Wno-portability -Wno-override])
AH_TEMPLATE(PACKAGE, [Name of package])
AH_TEMPLATE(VERSION, [Version number of package])
diff --git a/libstdc++-v3/include/bits/basic_string.h b/libstdc++-v3/include/bits/basic_string.h
index 1e8300dabfa..085aea463b6 100644
--- a/libstdc++-v3/include/bits/basic_string.h
+++ b/libstdc++-v3/include/bits/basic_string.h
@@ -197,12 +197,17 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
void
_M_set_length_and_sharable(size_type __n)
- {
- this->_M_set_sharable(); // One reference.
- this->_M_length = __n;
- traits_type::assign(this->_M_refdata()[__n], _S_terminal);
- // grrr. (per 21.3.4)
- // You cannot leave those LWG people alone for a second.
+ {
+#ifndef _GLIBCXX_FULLY_DYNAMIC_STRING
+ if (__builtin_expect(this != &_S_empty_rep(), false))
+#endif
+ {
+ this->_M_set_sharable(); // One reference.
+ this->_M_length = __n;
+ traits_type::assign(this->_M_refdata()[__n], _S_terminal);
+ // grrr. (per 21.3.4)
+ // You cannot leave those LWG people alone for a second.
+ }
}
_CharT*
@@ -1226,16 +1231,8 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
* The value of the string doesn't change if an error is thrown.
*/
iterator
- erase(iterator __first, iterator __last)
- {
- _GLIBCXX_DEBUG_PEDASSERT(__first >= _M_ibegin() && __first <= __last
- && __last <= _M_iend());
- const size_type __pos = __first - _M_ibegin();
- _M_mutate(__pos, __last - __first, size_type(0));
- _M_rep()->_M_set_leaked();
- return iterator(_M_data() + __pos);
- }
-
+ erase(iterator __first, iterator __last);
+
/**
* @brief Replace characters with value from another string.
* @param pos Index of first character to replace.
diff --git a/libstdc++-v3/include/bits/basic_string.tcc b/libstdc++-v3/include/bits/basic_string.tcc
index a5553c61a1b..19ec4d3550f 100644
--- a/libstdc++-v3/include/bits/basic_string.tcc
+++ b/libstdc++-v3/include/bits/basic_string.tcc
@@ -387,6 +387,29 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
}
template<typename _CharT, typename _Traits, typename _Alloc>
+ typename basic_string<_CharT, _Traits, _Alloc>::iterator
+ basic_string<_CharT, _Traits, _Alloc>::
+ erase(iterator __first, iterator __last)
+ {
+ _GLIBCXX_DEBUG_PEDASSERT(__first >= _M_ibegin() && __first <= __last
+ && __last <= _M_iend());
+
+ // NB: This isn't just an optimization (bail out early when
+ // there is nothing to do, really), it's also a correctness
+ // issue vs MT, see libstdc++/40518.
+ const size_type __size = __last - __first;
+ if (__size)
+ {
+ const size_type __pos = __first - _M_ibegin();
+ _M_mutate(__pos, __size, size_type(0));
+ _M_rep()->_M_set_leaked();
+ return iterator(_M_data() + __pos);
+ }
+ else
+ return __first;
+ }
+
+ template<typename _CharT, typename _Traits, typename _Alloc>
basic_string<_CharT, _Traits, _Alloc>&
basic_string<_CharT, _Traits, _Alloc>::
replace(size_type __pos, size_type __n1, const _CharT* __s,
diff --git a/libstdc++-v3/testsuite/26_numerics/headers/cmath/c99_classification_macros_c.cc b/libstdc++-v3/testsuite/26_numerics/headers/cmath/c99_classification_macros_c.cc
index 7c673d34ca7..38612e9c730 100644
--- a/libstdc++-v3/testsuite/26_numerics/headers/cmath/c99_classification_macros_c.cc
+++ b/libstdc++-v3/testsuite/26_numerics/headers/cmath/c99_classification_macros_c.cc
@@ -20,8 +20,8 @@
// { dg-do compile }
// { dg-add-options no_pch }
-// { dg-xfail-if "" { { *-*-linux* *-*-darwin[3-7]* } || { uclibc || newlib } } { "*" } { "" } }
-// { dg-excess-errors "" { target { { *-*-linux* *-*-darwin[3-7]* } || { uclibc || newlib } } } }
+// { dg-xfail-if "" { { *-*-linux* *-*-darwin[3-7]* hppa*-*-hpux* } || { uclibc || newlib } } { "*" } { "" } }
+// { dg-excess-errors "" { target { { *-*-linux* *-*-darwin[3-7]* hppa*-*-hpux* } || { uclibc || newlib } } } }
#include <math.h>
diff --git a/maintainer-scripts/ChangeLog b/maintainer-scripts/ChangeLog
index d003de98360..324f582554e 100644
--- a/maintainer-scripts/ChangeLog
+++ b/maintainer-scripts/ChangeLog
@@ -1,3 +1,7 @@
+2010-04-29 Release Manager
+
+ * GCC 4.4.4 released.
+
2010-03-31 Joseph Myers <joseph@codesourcery.com>
* gcc_release (build_tarfiles): Make directories mode 755, not
diff --git a/zlib/ChangeLog b/zlib/ChangeLog
index 248cecd5d91..b4b4cbe94ec 100644
--- a/zlib/ChangeLog
+++ b/zlib/ChangeLog
@@ -1,3 +1,7 @@
+2010-04-29 Release Manager
+
+ * GCC 4.4.4 released.
+
2010-01-21 Release Manager
* GCC 4.4.3 released.