Jakub Jelinek [Tue, 8 Jan 2008 16:14:49 +0000 (17:14 +0100)]
configure.ac (--enable-linux-futex): Add new configure option.
libstdc++-v3/
* configure.ac (--enable-linux-futex): Add new configure option.
(HAVE_LINUX_FUTEX): New AC_DEFINE.
* Makefile.in: Rebuilt.
* aclocal.m4: Rebuilt.
* configure: Rebuilt.
* config.h.in: Rebuilt.
* config/cpu/generic/cxxabi_tweaks.h (_GLIBCXX_GUARD_BIT,
_GLIBCXX_GUARD_PENDING_BIT, _GLIBCXX_GUARD_WAITING_BIT): Define.
* config/cpu/arm/cxxabi_tweaks.h (_GLIBCXX_GUARD_BIT,
_GLIBCXX_GUARD_PENDING_BIT, _GLIBCXX_GUARD_WAITING_BIT): Define.
* libsupc++/guard.cc: Include climits and syscall.h.
(_GLIBCXX_USE_FUTEX): Define if futex syscall and atomic builtins
are supported.
(_GLIBCXX_FUTEX_WAIT, _GLIBCXX_FUTEX_WAKE): Likewise.
(__guard_test_bit): New static inline.
(__cxa_guard_acquire, __cxa_guard_release, __cxa_guard_abort): Use
atomic builtins and futex syscall if _GLIBCXX_USE_FUTEX.
config/
* futex.m4: New file.
libgomp/
* configure.ac: Move futex checking into ../config/futex.m4.
* configure: Rebuilt.
* aclocal.m4: Rebuilt.
* Makefile.in: Rebuilt.
* configure.tgt: Rename have_tls to gcc_cv_have_tls to match
2007-10-15 ../config/tls.m4 change.
From-SVN: r131399
Jakub Jelinek [Tue, 8 Jan 2008 16:08:24 +0000 (17:08 +0100)]
re PR middle-end/34694 (Wrong line number for uninitialized variable)
PR middle-end/34694
* omp-low.c (copy_var_decl): Copy also DECL_SOURCE_LOCATION.
* gcc.dg/gomp/pr34694.c: New test.
* g++.dg/gomp/pr34694.C: New test.
From-SVN: r131398
Jakub Jelinek [Tue, 8 Jan 2008 16:06:31 +0000 (17:06 +0100)]
re PR c++/33890 (ICE in tsubst_copy with OpenMP)
PR c++/33890
* semantics.c (finish_omp_for): Don't call
fold_build_cleanup_point_expr if processing_template_decl.
* g++.dg/gomp/pr33890.C: New test.
From-SVN: r131397
Paul Thomas [Tue, 8 Jan 2008 15:14:33 +0000 (15:14 +0000)]
re PR fortran/34476 (Parameters: Bogus out of bounds error in array constructor)
2008-01-08 Paul Thomas <pault@gcc.gnu.org>
PR fortran/34476
* expr.c (find_array_element): Check that the array bounds are
constant before using them. Use lower, as well as upper bound.
(check_restricted): Allow implied index variable.
2008-01-08 Paul Thomas <pault@gcc.gnu.org>
PR fortran/34476
* gfortran.dg/parameter_array_init_3.f90: New test.
From-SVN: r131396
Paul Thomas [Tue, 8 Jan 2008 15:12:34 +0000 (15:12 +0000)]
re PR fortran/34681 (SAVEd derived type with allocatable components causes ICE)
2008-01-08 Paul Thomas <pault@gcc.gnu.org>
PR fortran/34681
* trans_array.c (gfc_trans_deferred_array): Do not null the
data pointer on entering scope, nor deallocate it on leaving
scope, if the symbol has the 'save' attribute.
PR fortran/34704
* trans_decl.c (gfc_finish_var_decl): Derived types with
allocatable components and an initializer must be TREE_STATIC.
2008-01-08 Paul Thomas <pault@gcc.gnu.org>
PR fortran/34681
PR fortran/34704
* gfortran.dg/alloc_comp_default_init_1.f90: New test.
From-SVN: r131395
Uros Bizjak [Tue, 8 Jan 2008 13:50:14 +0000 (14:50 +0100)]
re PR target/34702 (1.0 is not the inverse of 1.0 with -mrecip on x86)
PR target/34702
* doc/invoke.texi (i386 and x86-64 Options) [mrecip]: Document
limitations of reciprocal sequences on x86 targets.
From-SVN: r131394
Richard Guenther [Tue, 8 Jan 2008 12:12:56 +0000 (12:12 +0000)]
re PR tree-optimization/34683 (SSA rewriting in the loop unroller causes quadratic behavior)
2008-01-08 Richard Guenther <rguenther@suse.de>
PR tree-optimization/34683
* tree-flow-inline.h (var_ann): Remove overzealous asserts.
From-SVN: r131393
GCC Administrator [Tue, 8 Jan 2008 00:18:22 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r131391
Ben Elliston [Mon, 7 Jan 2008 23:24:49 +0000 (23:24 +0000)]
* config.sub, config.guess: Update from upstream sources.
From-SVN: r131388
Jakub Jelinek [Mon, 7 Jan 2008 21:49:27 +0000 (22:49 +0100)]
re PR target/34622 (gcc.c-torture/execute/
20000801-4.c fails at -O1 and above)
PR target/34622
* config/darwin.c (darwin_mergeable_string_section): Don't use
.cstring if int_size_in_bytes != TREE_STRING_LENGTH.
From-SVN: r131386
Janis Johnson [Mon, 7 Jan 2008 21:05:03 +0000 (21:05 +0000)]
target-supports.exp (check_effective_target_powerpc_spu): New.
* lib/target-supports.exp (check_effective_target_powerpc_spu): New.
* g++.dg/other/spu2vmx-1.C: Use it.
From-SVN: r131385
Jack Howarth [Mon, 7 Jan 2008 21:03:46 +0000 (21:03 +0000)]
out-of-bounds-1.c: Don't use -mstrict-align for Darwin.
2008-01-07 Jack Howarth <howarth@bromo.med.uc.edu>
* gcc.dg/out-of-bounds-1.c: Don't use -mstrict-align for Darwin.
From-SVN: r131384
Jack Howarth [Mon, 7 Jan 2008 21:02:24 +0000 (21:02 +0000)]
re PR testsuite/34575 (gcc.target/powerpc/parity-1.c and popcount-1.c scan-assembler popcntb on darwin9)
2008-01-07 Jack Howarth <howarth@bromo.med.uc.edu>
PR testsuite/34575
* gcc.target/powerpc/popcount-1.c: Skip on darwin.
* gcc.target/powerpc/parity-1.c: Likewise.
From-SVN: r131383
Paolo Carlini [Mon, 7 Jan 2008 20:54:49 +0000 (20:54 +0000)]
re PR libstdc++/34680 (Unconditional use of dynamic_cast in locale_facets.tcc breaks compilation with -fno-rtti)
2008-01-06 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/34680
* doc/cpp.texi ([Common Predefined Macros]): Document.
From-SVN: r131382
Uros Bizjak [Mon, 7 Jan 2008 20:06:34 +0000 (21:06 +0100)]
re PR target/34682 (70% slowdown with SSE enabled)
PR target/34682
* config/i386/i386.md (neg<mode>2): Rename from negsf2, negdf2 and
negxf2. Macroize expander using X87MODEF mode iterator. Change
predicates of op0 and op1 to register_operand.
(abs<mode>2): Rename from abssf2, absdf2 and negxf2. Macroize expander
using X87MODEF mode iterator. Change predicates of op0 and op1 to
register_operand.
("*absneg<mode>2_mixed", "*absneg<mode>2_sse"): Rename from
corresponding patterns and macroize using MODEF macro. Change
predicates of op0 and op1 to register_operand and remove
"m" constraint. Disparage "r" alternative with "!".
("*absneg<mode>2_i387"): Rename from corresponding patterns and
macroize using X87MODEF macro. Change predicates of op0 and op1
to register_operand and remove "m" constraint. Disparage "r"
alternative with "!".
(absneg splitter with memory operands): Remove.
("*neg<mode>2_1", "*abs<mode>2_1"): Rename from corresponding
patterns and macroize using X87MODEF mode iterator.
* config/i386/sse.md (negv4sf2, absv4sf2, neg2vdf2, absv2df2):
Change predicate of op1 to register_operand.
* config/i386/i386.c (ix86_expand_fp_absneg_operator): Remove support
for memory operands.
From-SVN: r131381
Nathan Froyd [Mon, 7 Jan 2008 19:35:04 +0000 (19:35 +0000)]
* config/rs6000/rs6000.h (ASM_CPU_SPEC): Add clause for mcpu=8548.
From-SVN: r131380
Fred Fish [Mon, 7 Jan 2008 17:23:40 +0000 (17:23 +0000)]
re PR preprocessor/30363 (Support for -traditional-cpp is incomplete in current gcc relative to gcc 2.95.3)
libcpp
2008-01-07 Fred Fish <fnf@specifix.com>
PR preprocessor/30363:
* traditional.c (replace_args_and_push): Add local variable
cxtquote, calculate the replacement text size assuming a
worst case of every input character quoted with backslash,
and properly handle output quoting of quote characters in
actual arguments used in function-like macros.
gcc/testsuite
2008-01-07 Fred Fish <fnf@specifix.com>
PR preprocessor/30363:
* gcc.dg/cpp/trad/macroargs.c: Add code to test quoting in
macro expansions.
From-SVN: r131379
Richard Guenther [Mon, 7 Jan 2008 16:49:37 +0000 (16:49 +0000)]
basic-block.h (struct edge_def): Pair dest_idx with goto_locus fields.
2008-01-07 Richard Guenther <rguenther@suse.de>
* basic-block.h (struct edge_def): Pair dest_idx with goto_locus
fields.
From-SVN: r131378
Paul Thomas [Mon, 7 Jan 2008 16:44:43 +0000 (16:44 +0000)]
re PR fortran/34672 (.mod file misses renamed, USEd symbol)
2008-01-07 Paul Thomas <pault@gcc.gnu.org>
PR fortran/34672
* module.c (write_generic): Rewrite completely.
(write_module): Change call to write_generic.
2008-01-07 Paul Thomas <pault@gcc.gnu.org>
PR fortran/34672
* gfortran.dg/use_only_2.f90: New test.
From-SVN: r131377
Richard Guenther [Mon, 7 Jan 2008 14:49:36 +0000 (14:49 +0000)]
re PR tree-optimization/34683 (SSA rewriting in the loop unroller causes quadratic behavior)
2008-01-07 Richard Guenther <rguenther@suse.de>
PR tree-optimization/34683
* tree-ssa-sccvn.c (vuses_to_vec): Pre-allocate the vector of
VOPs of the needed size to save memory. Use VEC_quick_push
to save compile-time.
(vdefs_to_vec): Likewise.
From-SVN: r131375
Sa Liu [Mon, 7 Jan 2008 13:53:07 +0000 (13:53 +0000)]
Genetate inline code for double division.
From-SVN: r131374
Sa Liu [Mon, 7 Jan 2008 13:48:12 +0000 (13:48 +0000)]
Genetate inline code for double division.
From-SVN: r131373
Paolo Carlini [Mon, 7 Jan 2008 11:11:02 +0000 (11:11 +0000)]
re PR libstdc++/34680 (Unconditional use of dynamic_cast in locale_facets.tcc breaks compilation with -fno-rtti)
2008-01-07 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/34680
* include/bits/locale_classes.h (has_facet<>, use_facet<>): Do not
use dynamic_cast when run-time type identification is disabled; do
not mark inline; only declare, define...
* include/bits/locale_classes.tcc: ... here.
From-SVN: r131372
Jerry DeLisle [Mon, 7 Jan 2008 02:53:04 +0000 (02:53 +0000)]
re PR fortran/34659 (corner case continuation line)
2008-01-06 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR fortran/34659
* scanner.c (load_line): Do not count ' ' as printable when checking for
continuations.
From-SVN: r131371
GCC Administrator [Mon, 7 Jan 2008 00:17:12 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r131369
Paolo Carlini [Sun, 6 Jan 2008 22:30:32 +0000 (22:30 +0000)]
re PR libstdc++/34680 (Unconditional use of dynamic_cast in locale_facets.tcc breaks compilation with -fno-rtti)
gcc/
2008-01-06 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/34680
* c-cppbuiltin.c (c_cpp_builtins): Define __GXX_RTTI, if appropriate.
* doc/cpp.texi ([Common Predefined Macros]): Document.
gcc/testsuite/
2008-01-06 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/34680
* g++.dg/rtti/predefined-rtti-macro-1.C: New.
* g++.dg/rtti/predefined-rtti-macro-2.C: Likewise.
From-SVN: r131366
Paul Thomas [Sun, 6 Jan 2008 22:00:00 +0000 (22:00 +0000)]
re PR fortran/34545 (ICE when compiling Fortran 95 code)
2008-01-06 Paul Thomas <pault@gcc.gnu.org>
PR fortran/34545
* module.c (load_needed): If the namespace has no proc_name
give it the module symbol.
2008-01-06 Paul Thomas <pault@gcc.gnu.org>
PR fortran/34545
* gfortran.dg/use_12.f90: New test.
From-SVN: r131364
Hans-Peter Nilsson [Sun, 6 Jan 2008 20:54:14 +0000 (20:54 +0000)]
Revert last change.
From-SVN: r131363
Tobias Burnus [Sun, 6 Jan 2008 20:30:10 +0000 (21:30 +0100)]
re PR fortran/34690 (gfortran.dg/elemental_args_check_2.f90 doesn't work)
2008-01-06 Tobias Burnus <burnus@net-b.de>
PR fortran/34690
* gfortran.dg/elemental_args_check_2.f90: Fix test case.
From-SVN: r131362
Ted Phelps [Sun, 6 Jan 2008 20:25:57 +0000 (20:25 +0000)]
re PR c++/34152 (Erratic behaviour: Exception translation (throw from signal handlers))
PR c++/34152
* libsupc++/eh_personality.cc (PERSONALITY_FUNCTION): Check
_GLIBCXX_HAVE_GETIPINFO instead of HAVE_GETIPINFO.
From-SVN: r131361
Tobias Burnus [Sun, 6 Jan 2008 20:18:01 +0000 (21:18 +0100)]
re PR fortran/34689 (libgomp.fortran/appendix-a/a.33.3.f90 -O (test for excess errors))
2008-01-06 Tobias Burnus <burnus@net-b.de>
PR fortran/34689
* gfortran.dg/intent_out_4.f90: Fix test case.
From-SVN: r131360
Tobias Burnus [Sun, 6 Jan 2008 19:36:44 +0000 (20:36 +0100)]
re PR fortran/34689 (libgomp.fortran/appendix-a/a.33.3.f90 -O (test for excess errors))
2008-01-06 Tobias Burnus <burnus@net-b.de>
PR fortran/34689
* interface.c (compare_actual_formal): Fix intent(out) check for
function result variables.
2008-01-06 Tobias Burnus <burnus@net-b.de>
PR fortran/34689
* gfortran.dg/intent_out_4.f90: New.
From-SVN: r131359
Uros Bizjak [Sun, 6 Jan 2008 18:59:38 +0000 (19:59 +0100)]
i386.c (ix86_emit_swsqrtsf): Use negative constants in order to use commutative addition instead of subtraction.
* config/i386/i386.c (ix86_emit_swsqrtsf): Use negative constants in
order to use commutative addition instead of subtraction.
From-SVN: r131358
Jerry DeLisle [Sun, 6 Jan 2008 18:34:14 +0000 (18:34 +0000)]
re PR libfortran/34540 (cshift, eoshift, kind=1 and kind=2 arguments...)
2008-01-06 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libfortran/34540
* gfortran.dg/optional_dim_3.f90: New test.
From-SVN: r131357
Jerry DeLisle [Sun, 6 Jan 2008 18:19:06 +0000 (18:19 +0000)]
re PR fortran/34387 (FAIL: gfortran.dg/optional_dim_2.f90: FE vs library argument missmatch)
2008-01-06 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR fortran/34387
* trans-expr.c (gfc_conv_missing_dummy): Use a temporary to type convert
the dummy variable expression, test for NULL, and pass the variable
address to the called function.
From-SVN: r131356
Tobias Burnus [Sun, 6 Jan 2008 18:17:14 +0000 (19:17 +0100)]
re PR fortran/34658 (save / common)
2007-01-06 Tobias Burnus <burnus@net-b.de>
PR fortran/34658
* match.c (gfc_match_common): Remove blank common in
DATA BLOCK warning.
* resolve.c (resolve_common_vars): New function.
(resolve_common_blocks): Move checks to resolve_common_vars
and invoke that function.
(resolve_types): Call resolve_common_vars for blank commons.
2007-01-06 Tobias Burnus <burnus@net-b.de>
PR fortran/34658
* gfortran.dg/common_11.f90: New.
* gfortran.dg/blockdata_1.f90: Update test case.
* gfortran.dg/blockdata_2.f90: Update test case.
From-SVN: r131355
Tobias Burnus [Sun, 6 Jan 2008 18:11:42 +0000 (19:11 +0100)]
equiv_constraint_9.f90: Fix typo.
2008-01-06 Tobias Burnus <burnus@net-b.de>
* gfortran.dg/equiv_constraint_9.f90: Fix typo.
From-SVN: r131354
Tobias Burnus [Sun, 6 Jan 2008 18:07:52 +0000 (19:07 +0100)]
re PR fortran/34655 (5.5.2.5)
2008-01-06 Tobias Burnus <burnus@net-b.de>
PR fortran/34655
* resolve.c (resolve_equivalence_derived): Reject derived types
* with
default initialization if equivalenced with COMMON variable.
2008-01-06 Tobias Burnus <burnus@net-b.de>
PR fortran/34655
* gfortran.dg/equiv_constraint_9.f90: New.
From-SVN: r131353
Revital Eres [Sun, 6 Jan 2008 15:24:10 +0000 (15:24 +0000)]
Fix PR34263: Cleaning up latch blocks
From-SVN: r131352
Andreas Tobler [Sun, 6 Jan 2008 12:17:03 +0000 (12:17 +0000)]
ffi.c (ffi_prep_cif_machdep): Fix thinko.
2008-01-06 Andreas Tobler <a.tobler@schweiz.org>
* src/x86/ffi.c (ffi_prep_cif_machdep): Fix thinko.
From-SVN: r131351
Tobias Burnus [Sun, 6 Jan 2008 09:21:27 +0000 (10:21 +0100)]
re PR fortran/34654 (no unformatted on internal file)
2008-01-06 Tobias Burnus <burnus@net-b.de>
PR fortran/34654
* io.c (check_io_constraints): Disallow unformatted I/O for
internal units.
2008-01-06 Tobias Burnus <burnus@net-b.de>
PR fortran/34654
* gfortran.dg/internal_io_unf.f90: New.
From-SVN: r131350
Tobias Burnus [Sun, 6 Jan 2008 09:18:43 +0000 (10:18 +0100)]
re PR fortran/34660 (elemental and dummy procedure)
2008-01-06 Tobias Burnus <burnus@net-b.de>
PR fortran/34660
* resolve.c (resolve_formal_arglist): Reject dummy procedure in
ELEMENTAL functions.
2008-01-06 Tobias Burnus <burnus@net-b.de>
PR fortran/34660
* gfortran.dg/elemental_args_check_2.f90: New.
From-SVN: r131349
Tobias Burnus [Sun, 6 Jan 2008 09:07:47 +0000 (10:07 +0100)]
re PR fortran/34662 (inout argument with parameter)
2008-01-06 Tobias Burnus <burnus@net-b.de>
PR fortran/34662
* interface.c (compare_actual_formal): Reject parameter
actual to intent(out) dummy.
2008-01-06 Tobias Burnus <burnus@net-b.de>
PR fortran/34662
* gfortran.dg/intent_out_3.f90: New.
From-SVN: r131348
GCC Administrator [Sun, 6 Jan 2008 00:17:27 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r131346
Andreas Tobler [Sat, 5 Jan 2008 20:49:41 +0000 (20:49 +0000)]
re PR testsuite/32843 (libffi.call/return_sc.c)
2008-01-05 Andreas Tobler <a.tobler@schweiz.org>
PR testsuite/32843
* src/x86/ffi.c (ffi_prep_cif_machdep): Add code for
signed/unsigned int8/16 for X86_DARWIN.
Updated copyright info.
Handle one and two byte structs with special cif->flags.
* src/x86/ffitarget.h: Add special types for one and two byte structs.
Updated copyright info.
* src/x86/darwin.S (ffi_call_SYSV): Rewrite to use a jump table like
sysv.S
Remove code to pop args from the stack after call.
Special-case signed/unsigned for int8/16, one and two byte structs.
(ffi_closure_raw_SYSV): Handle FFI_TYPE_UINT8,
FFI_TYPE_SINT8, FFI_TYPE_UINT16, FFI_TYPE_SINT16, FFI_TYPE_UINT32,
FFI_TYPE_SINT32.
Updated copyright info.
From-SVN: r131343
Uros Bizjak [Sat, 5 Jan 2008 20:33:33 +0000 (21:33 +0100)]
i386.c (ix86_builtin_reciprocal): Remove check for TARGET_RECIP.
* config/i386/i386.c (ix86_builtin_reciprocal): Remove check
for TARGET_RECIP.
(ix86_emit_swsqrtsf): Do not filter out infinity for rsqrt expansion.
From-SVN: r131342
Richard Sandiford [Sat, 5 Jan 2008 16:58:00 +0000 (16:58 +0000)]
stabs-1.m: Allow labels to be begin with $L as well as .L.
gcc/testsuite/
* objc.dg/stabs-1.m: Allow labels to be begin with $L as well as .L.
From-SVN: r131341
Richard Sandiford [Sat, 5 Jan 2008 16:57:00 +0000 (16:57 +0000)]
c-omp.c (check_omp_for_incr_expr): Handle CONVERT_EXPR.
gcc/
* c-omp.c (check_omp_for_incr_expr): Handle CONVERT_EXPR.
From-SVN: r131340
Richard Sandiford [Sat, 5 Jan 2008 16:47:50 +0000 (16:47 +0000)]
mips.c (mips_in_small_data_p): Reinstate size > 0 check.
gcc/
* config/mips/mips.c (mips_in_small_data_p): Reinstate size > 0 check.
From-SVN: r131339
Jerry DeLisle [Sat, 5 Jan 2008 16:12:00 +0000 (16:12 +0000)]
re PR fortran/34676 (IO error delayed)
2008-01-05 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libfortran/34676
* gfortran.dg/list_read_8.f90: New test.
From-SVN: r131338
Jerry DeLisle [Sat, 5 Jan 2008 16:00:40 +0000 (16:00 +0000)]
re PR fortran/34676 (IO error delayed)
2008-01-05 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libfortran/34676
* io/list_read.c (next_char): Only save the EOF condition for later if
advance="no".
From-SVN: r131337
Jakub Jelinek [Sat, 5 Jan 2008 12:06:54 +0000 (13:06 +0100)]
re PR tree-optimization/34618 (ICE with -fmudflap and vectorization)
PR tree-optimization/34618
* tree-outof-ssa.c (create_temp): Copy over DECL_GIMPLE_REG_P
flag from T.
* testsuite/libmudflap.c/pass62-frag.c: New test.
From-SVN: r131336
Uros Bizjak [Sat, 5 Jan 2008 11:52:39 +0000 (12:52 +0100)]
re PR target/34673 (ICE in extract_insn, at recog.c:1990)
PR target/34673
* config/i386/i386.c (ix86_emit_swsqrtsf): Swap input operands
in the call to gen_rtx_NE. Remove unneeded VECTOR_MODE_P check.
Update copyright year.
* config/i386/i386.md (rsqrtsf2): Enable for TARGET_SSE_MATH.
Update copyright year.
* config/i386/sse.md (rsqrtv4sf2): Ditto. Unconditionally expand
using NR fixup.
From-SVN: r131335
Zhouyi Zhou [Sat, 5 Jan 2008 09:31:24 +0000 (10:31 +0100)]
tree-vrp.c (find_conditional_asserts): Remove redundant check that edge does not point to current bb before changing...
* tree-vrp.c (find_conditional_asserts): Remove redundant check that
edge does not point to current bb before changing need_assert.
From-SVN: r131333
GCC Administrator [Sat, 5 Jan 2008 00:17:34 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r131331
Andrew Haley [Fri, 4 Jan 2008 17:18:56 +0000 (17:18 +0000)]
re PR libgcj/34444 (Class.getEnclosingClass() returns null on enclosed class)
2008-01-04 Andrew Haley <aph@redhat.com>
PR libgcj/34444
* java/lang/natClass.cc (Class::getEnclosingClass): Call
getDeclaringClass().
From-SVN: r131326
Richard Guenther [Fri, 4 Jan 2008 15:56:41 +0000 (15:56 +0000)]
re PR tree-optimization/34029 (internal compiler error: verify_stmts failed)
2008-01-04 Richard Guenther <rguenther@suse.de>
PR middle-end/34029
* tree-cfg.c (verify_expr): Do not look inside ADDR_EXPRs
for verifying purposes if they are is_gimple_min_invariant.
* gcc.c-torture/compile/pr34029-1.c: New testcase.
* gcc.c-torture/compile/pr34029-2.c: Likewise.
From-SVN: r131325
Andrew Haley [Fri, 4 Jan 2008 15:13:53 +0000 (15:13 +0000)]
re PR java/17779 (ICE: Seg fault)
2008-01-04 Andrew Haley <aph@redhat.com>
PR java/17779
* jcf-parse.c (parse_zip_file_entries): Move decl to compile on
C90.
From-SVN: r131324
Aldy Hernandez [Fri, 4 Jan 2008 14:49:28 +0000 (14:49 +0000)]
re PR tree-optimization/34448 (ICE in declare_inline_vars, at tree-inline.c:3243)
PR tree-optimization/34448
PR tree-optimization/34465
* gimplify.c (gimplify_init_constructor): Add new parameter
notify_temp_creation. Use it.
(gimplify_modify_expr_rhs): Take volatiles into account when
optimizing constructors.
Do not optimize constructors if gimplify_init_constructor will dump to
memory.
* gcc.dg/tree-ssa/pr32901.c: Tests const volatiles.
* gcc.c-torture/compile/pr34448.c: New.
From-SVN: r131323
Jakub Jelinek [Fri, 4 Jan 2008 13:58:30 +0000 (14:58 +0100)]
re PR gcov-profile/34609 (ICE with "-ftest-coverage" and references)
PR gcov-profile/34609
* tree-inline.c (declare_return_variable): Set TREE_ADDRESSABLE on
return_slot if result is TREE_ADDRESSABLE.
* g++.dg/gcov/gcov-6.C: New test.
From-SVN: r131322
Paolo Carlini [Fri, 4 Jan 2008 13:57:34 +0000 (13:57 +0000)]
re PR c++/34611 (Broken diagnostic: 'tree_list' not supported by dump_expr)
2008-01-04 Paolo Carlini <pcarlini@suse.de>
Jakub Jelinek <jakub@redhat.com>
PR c++/34611
* error.c (dump_template_argument): Deal with TREE_LIST.
Co-Authored-By: Jakub Jelinek <jakub@redhat.com>
From-SVN: r131321
Richard Guenther [Fri, 4 Jan 2008 11:16:17 +0000 (11:16 +0000)]
re PR tree-optimization/31081 (Inliner messes up SSA for abnormals)
2008-01-04 Richard Guenther <rguenther@suse.de>
PR tree-optimization/31081
* g++.dg/torture/pr31081-1.C: New testcase.
* g++.dg/torture/pr31081-2.C: Likewise.
From-SVN: r131320
Andrew Haley [Fri, 4 Jan 2008 11:06:34 +0000 (11:06 +0000)]
re PR java/17779 (ICE: Seg fault)
2008-01-03 Andrew Haley <aph@redhat.com>
PR java/17779
* jcf-parse.c (parse_zip_file_entries): Unset TYPE_ALIAS_SET if
we're about to re-layout the type.
From-SVN: r131319
Richard Sandiford [Fri, 4 Jan 2008 10:26:41 +0000 (10:26 +0000)]
mips.md (sqrt_condition): Tweak comment.
gcc/
* config/mips/mips.md (sqrt_condition): Tweak comment.
(recip_condition): Likewise. Require TARGET_FLOAT64 for DFmode.
gcc/testsuite/
* gcc.target/mips/rsqrt-1.c: Require -mgp64.
* gcc.target/mips/rsqrt-2.c: Likewise.
* gcc.target/mips/rsqrt-4.c: New test.
From-SVN: r131318
Tobias Burnus [Fri, 4 Jan 2008 09:11:26 +0000 (10:11 +0100)]
re PR fortran/34557 (Rejects valid: EQUIVALENCE of character substrings)
2008-01-04 Tobias Burnus <burnus@net-b.de>
PR fortran/34557
* primary.c (match_varspec): Gobble whitespace before
checking for '('.
2008-01-04 Tobias Burnus <burnus@net-b.de>
PR fortran/34557
* gfortran.dg/equiv_substr.f90: New.
From-SVN: r131317
GCC Administrator [Fri, 4 Jan 2008 00:18:33 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r131314
Tom Tromey [Fri, 4 Jan 2008 00:14:31 +0000 (00:14 +0000)]
re PR c/34457 (ICE with VLA and -combine)
gcc/
PR c/34457:
* c-common.c (c_type_hash): Handle VLAs.
gcc/testsuite
PR c/34457:
* gcc.dg/pr34457-2.c: New file.
* gcc.dg/pr34457-1.c: New file.
From-SVN: r131311
Eric Botcazou [Thu, 3 Jan 2008 23:26:18 +0000 (23:26 +0000)]
Tidy.
From-SVN: r131310
Jan Hubicka [Thu, 3 Jan 2008 23:03:26 +0000 (23:03 +0000)]
Fix incorrectly applied patch in last commit.
From-SVN: r131309
Sebastian Pop [Thu, 3 Jan 2008 22:59:48 +0000 (22:59 +0000)]
re PR tree-optimization/34458 (ICE in int_cst_value, at tree.c:8047 at -O3)
2008-01-03 Sebastian Pop <sebastian.pop@amd.com>
Revert fix for PR tree-optimization/34458.
From-SVN: r131308
Sebastian Pop [Thu, 3 Jan 2008 21:59:38 +0000 (21:59 +0000)]
re PR tree-optimization/34458 (ICE in int_cst_value, at tree.c:8047 at -O3)
2008-01-02 Sebastian Pop <sebastian.pop@amd.com>
PR tree-optimization/34458
* tree-data-ref.c (dd_int_cst_value): New.
(initialize_matrix_A, compute_overlap_steps_for_affine_1_2,
analyze_subscript_affine_affine, build_classic_dist_vector_1,
add_multivariate_self_dist, init_omega_eq_with_af): Use
dd_int_cst_value instead of int_cst_value.
* testsuite/gcc.dg/tree-ssa/pr34458.c: New.
From-SVN: r131307
Jan Hubicka [Thu, 3 Jan 2008 21:23:26 +0000 (22:23 +0100)]
re PR tree-optimization/31081 (Inliner messes up SSA for abnormals)
PR tree-optimization/31081
* tree-inline.c (remap_ssa_name): Initialize uninitialized SSA vars to
0 when inlining and not inlining to first basic block.
(remap_decl): When var is initialized to 0, don't set default_def.
(expand_call_inline): Set entry_bb.
* tree-inline.h (copy_body_data): Add entry_bb.
From-SVN: r131306
Thomas Koenig [Thu, 3 Jan 2008 19:49:38 +0000 (19:49 +0000)]
re PR fortran/34565 (internal write to string array fails)
2008-01-03 Thomas Koenig <tkoenig@gcc.gnu.org>
PR libfortran/34565
* io/io.h: Adjust protoypes for open_internal(),
next_array_record() and init_loop_spec().
* io/list_read.c (next_char): Use argument "finished"
of next_array_record to check for end on internal file.
* io/unit.c: Calculate the offset for an array
internal file and supply this informatin to open_internal().
* io/unix.c (open_internal): Set the offset for the internal
file on open.
* io/transfer.c (init_loop_spec): Calculate the starting
record in case of negative strides. Return size of 0 for
an empty array.
(next_array_record): Use an extra flag to signal that the
array is finished.
(next_record_r): Use the new flag to next_array_record().
(next_record_w): Likewise.
2008-01-03 Thomas Koenig <tkoenig@gcc.gnu.org>
PR libfortran/34565
* gfortran.dg/internal_readwrite_1.f90: New test.
* gfortran.dg/internal_readwrite_2.f90: New test.
From-SVN: r131305
Tom Tromey [Thu, 3 Jan 2008 17:58:26 +0000 (17:58 +0000)]
re PR preprocessor/34602 (Internal error with invalid #line directive)
libcpp
PR preprocessor/34602.
* directives.c (do_line): Don't try to spell EOF token.
(do_linemarker): Add comment.
gcc/testsuite
PR preprocessor/34602:
* gcc.dg/cpp/pr34602.c: New file.
From-SVN: r131304
Jakub Jelinek [Thu, 3 Jan 2008 10:28:30 +0000 (11:28 +0100)]
re PR c++/34619 (ICE with "-fmudflap" and templates)
PR c++/34619
* cgraphunit.c (cgraph_build_static_cdtor): set_cfun back to NULL
before returning.
* testsuite/libmudflap.c++/pass61-frag.cxx: New test.
From-SVN: r131302
Tero Koskinen [Thu, 3 Jan 2008 09:35:04 +0000 (11:35 +0200)]
re PR ada/34647 (Ada runtime includes unsafe calls to mktemp and tmpname on OpenBSD)
2008-01-03 Tero Koskinen <tero.koskinen@iki.fi>
gcc/ada/
PR ada/34647
* adaint.c (__gnat_open_new_temp, __gnat_tmp_name): Use mkstemp()
on OpenBSD as is done on other BSD systems.
PR ada/34645
* sysdep.c (__gnat_ttyname, getc_immediate_nowait,
getc_immediate_common): Treat OpenBSD as FreeBSD regarding immediate
I/O.
PR ada/34644
* env.c (__gnat_clearenv): Treat OpenBSD as other BSD systems missing
clearenv().
PR ada/34646
* init.c (__gnat_error_handler, __gnat_install_handler,
__gnat_init_float): Define for OpenBSD.
* initialize.c (__gnat_initialize): Define for OpenBSD.
From-SVN: r131301
Jakub Jelinek [Thu, 3 Jan 2008 08:33:57 +0000 (09:33 +0100)]
re PR tree-optimization/29484 (tree-inline.c bug with local static vars)
PR tree-optimization/29484
* tree-inline.c (inline_forbidden_p_2): New function.
(inline_forbidden_p): Disallow inlining if some static var
has an address of a local LABEL_DECL in its initializer.
* doc/extend.texi (Labels as Values): Document &&foo behaviour
vs. inlining.
* gcc.c-torture/execute/
20071220-1.c: New test.
* gcc.c-torture/execute/
20071220-2.c: New test.
From-SVN: r131300
Sebastian Pop [Thu, 3 Jan 2008 02:38:24 +0000 (02:38 +0000)]
re PR tree-optimization/34635 (tree check: expected polynomial_chrec, have integer_cst in add_multivariate_self_dist, at tree-data-ref.c:2813)
2007-12-19 Sebastian Pop <sebastian.pop@amd.com>
PR tree-optimization/34635
* tree-data-ref.c (add_other_self_distances): Make sure that the
evolution step is constant.
* gcc.dg/tree-ssa/pr34635.c: New.
* gcc.dg/tree-ssa/pr34635-1.c: New.
From-SVN: r131275
John David Anglin [Thu, 3 Jan 2008 02:33:12 +0000 (02:33 +0000)]
re PR middle-end/34562 (FAIL: g++.dg/other/first-global.C scan-assembler _GLOBAL__I_foobar)
PR middle-end/34562
* g++.dg/other/first-global.C: Also accept _GLOBAL__I_65535_0_foobar in
scan-assembler check.
From-SVN: r131274
GCC Administrator [Thu, 3 Jan 2008 00:17:43 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r131272
Jakub Jelinek [Wed, 2 Jan 2008 23:33:54 +0000 (00:33 +0100)]
re PR middle-end/34608 (ICE with "-ftest-coverage -fopenmp")
PR middle-end/34608
* omp-low.c (expand_omp_parallel): Purge dead EH edges in the
child fn.
* g++.dg/gomp/pr34608.C: New test.
From-SVN: r131264
Tobias Schlüter [Wed, 2 Jan 2008 17:54:50 +0000 (18:54 +0100)]
Rotate Fortran ChangeLogs.
From-SVN: r131261
Paolo Carlini [Wed, 2 Jan 2008 15:11:59 +0000 (15:11 +0000)]
2008-01-02 Paolo Carlini <pcarlini@suse.de>
* ChangeLog rotation.
From-SVN: r131260
Richard Sandiford [Wed, 2 Jan 2008 13:04:11 +0000 (13:04 +0000)]
tree-sra.c (scalarize_init): Insert the generate_element_init statements after the generate_element_zero...
gcc/
* tree-sra.c (scalarize_init): Insert the generate_element_init
statements after the generate_element_zero statements.
From-SVN: r131258
Richard Guenther [Wed, 2 Jan 2008 12:35:38 +0000 (12:35 +0000)]
re PR tree-optimization/34093 (ICE in ssa_operand_alloc, at tree-ssa-operands.c:484)
2008-01-02 Richard Guenther <rguenther@suse.de>
PR middle-end/34093
PR middle-end/31976
* tree-ssa-operands.c (ssa_operand_alloc): Also allocate a buffer
for very large number of operands instead of ICEing.
* gcc.c-torture/compile/pr34093.c: New testcase.
From-SVN: r131257
Arthur Norman [Wed, 2 Jan 2008 10:46:17 +0000 (11:46 +0100)]
(ix86_expand_prologue): Save red-zone while stack probing.
PR 34013.
From-SVN: r131255
Douglas Gregor [Wed, 2 Jan 2008 04:35:50 +0000 (04:35 +0000)]
c-opts.c (sanitize_cpp_opts): Don't warn about "long long" when in C++0x mode.
2008-01-01 Douglas Gregor <doug.gregor@gmail.com>
* c-opts.c (sanitize_cpp_opts): Don't warn about "long long" when
in C++0x mode.
2008-01-01 Douglas Gregor <doug.gregor@gmail.com>
* parser.c (cp_parser_check_decl_spec): Don't warn about "long
long" in C++0x mode; change the warning to note that "long long"
is only unsupported in C++98 mode.
2008-01-01 Douglas Gregor <doug.gregor@gmail.com>
* g++.dg/cpp0x/long_long.C: New.
From-SVN: r131254
GCC Administrator [Wed, 2 Jan 2008 00:17:05 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r131252
Volker Reichelt [Tue, 1 Jan 2008 23:08:05 +0000 (23:08 +0000)]
re PR libmudflap/26442 (ICE on valid unreachable code (and no name) when compiling with -fmudflap)
PR libmudflap/26442
* tree-mudflap.c (mx_register_decls): Guard warning by
!DECL_ARTIFICIAL check.
* testsuite/libmudflap.c++/pass60-frag.cxx: New test.
From-SVN: r131249
Andrew Pinski [Tue, 1 Jan 2008 21:26:29 +0000 (21:26 +0000)]
tag_manager.c: Include stdlib.h.
2008-01-01 Andrew Pinski <andrew_pinski@playstation.sony.com>
* gcc.target/spu/tag_manager.c : Include stdlib.h.
* gcc.target/spu/Wmain.c: Fix the line numbers for the
warning on the function main.
From-SVN: r131248
Paolo Carlini [Tue, 1 Jan 2008 19:05:41 +0000 (19:05 +0000)]
re PR libstdc++/34095 (parallel mode: segfault in std::sort)
2008-01-01 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/34095
* include/parallel/multiway_merge.h (multiway_merge_bubble,
parallel_multiway_merge): Together with ::operator new use
::operator delete.
* include/parallel/losertree.h (LoserTree<>::~LoserTree): Likewise.
* include/parallel/quicksort.h (parallel_sort_qs_divide): Likewise.
* include/parallel/random_shuffle.h (parallel_random_shuffle_drs_pu,
sequential_random_shuffle): Likewise.
* include/parallel/tree.h (_M_not_sorted_bulk_insertion_construction):
Likewise.
* include/parallel/multiway_mergesort.h (parallel_sort_mwms_pu,
parallel_sort_mwms): Likewise.
* include/parallel/partial_sum.h (parallel_partial_sum_linear):
Likewise.
* testsuite/25_algorithms/sort/34095.cc: New.
From-SVN: r131247
Paolo Carlini [Tue, 1 Jan 2008 16:52:38 +0000 (16:52 +0000)]
34636.cc: Fix Copyright year.
2008-01-01 Paolo Carlini <pcarlini@suse.de>
* testsuite/25_algorithms/sort/34636.cc: Fix Copyright year.
From-SVN: r131246
Paolo Carlini [Tue, 1 Jan 2008 16:42:34 +0000 (16:42 +0000)]
re PR libstdc++/34636 (Parallel sort fails)
2008-01-01 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/34636
* include/parallel/algobase.h (lexicographical_compare_switch(...,
random_access_iterator_tag, random_access_iterator_tag)): Careful
with undereferenceable iterators.
* testsuite/25_algorithms/sort/34636.cc: New.
From-SVN: r131245
Jakub Jelinek [Tue, 1 Jan 2008 01:13:27 +0000 (02:13 +0100)]
sse.md (sse5_pperm, [...]): Fix constraints.
* config/i386/sse.md (sse5_pperm, sse5_pperm_pack_v2di_v4si,
sse5_pperm_pack_v4si_v8hi, sse5_pperm_pack_v8hi_v16qi,
sse5_perm<mode>): Fix constraints.
* gcc.target/i386/i386.exp (check_effective_target_sse5): Use __v8hi
rather than __v2di type.
From-SVN: r131244
GCC Administrator [Tue, 1 Jan 2008 00:17:36 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r131242
Paul Thomas [Mon, 31 Dec 2007 18:10:55 +0000 (18:10 +0000)]
re PR fortran/34558 (ICE with same TYPE in both program and interface)
2007-12-31 Paul Thomas <pault@gcc.gnu.org>
PR fortran/34558
* interface.c (gfc_compare_types): Prevent linked lists from
putting this function into an endless recursive loop.
2007-12-31 Paul Thomas <pault@gcc.gnu.org>
PR fortran/34558
* gfortran.dg/linked_list_1.f90: New test.
From-SVN: r131239
Paul Thomas [Mon, 31 Dec 2007 18:05:10 +0000 (18:05 +0000)]
re PR fortran/34558 (ICE with same TYPE in both program and interface)
2007-12-31 Paul Thomas <pault@gcc.gnu.org>
PR fortran/34558
* interface.c (gfc_compare_types): Prevent linked lists from
putting this function into an endless recursive loop.
2007-12-31 Paul Thomas <pault@gcc.gnu.org>
PR fortran/34558
* gfortran.dg/linked_list_1.f90: New test.
From-SVN: r131238
John David Anglin [Mon, 31 Dec 2007 15:02:59 +0000 (15:02 +0000)]
re PR driver/33772 (collect2 doesn't strip .sl version)
PR driver/33772
* collect2.c (SHLIB_SUFFIX): Define if not defined.
(write_c_file_stat): Use SHLIB_SUFFIX.
* som.h (SHLIB_SUFFIX): Define.
* doc/tm.texi (SHLIB_SUFFIX): Document.
From-SVN: r131235
GCC Administrator [Mon, 31 Dec 2007 00:17:30 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r131233
Paolo Carlini [Sun, 30 Dec 2007 22:44:42 +0000 (22:44 +0000)]
tuple (_Tuple_impl<>::_Tuple_impl(typename std::remove_reference<>::type&&, typename std::remove_reference<>::type&&...), [...]): Add.
2007-12-30 Paolo Carlini <pcarlini@suse.de>
* include/std/tuple (_Tuple_impl<>::_Tuple_impl(typename
std::remove_reference<>::type&&, typename
std::remove_reference<>::type&&...),
_Tuple_impl(const _Tuple_impl<>&), _Tuple_impl(_Tuple_impl&&),
_Tuple_impl(_Tuple_impl<>&&), operator=(_Tuple_impl&&),
operator=(const _Tuple_impl<>&), operator=(_Tuple_impl<>&&)): Add.
(tuple<>::tuple(const _Elements&...), tuple(_UElements&&...),
tuple(tuple&&), tuple(const tuple<>&), tuple(tuple<>&&),
operator=(tuple&&), operator=(const tuple<>&), operator=(tuple<>&&)):
Likewise.
(tuple<_T1, _T2>::tuple(const _T1&, const _T2&, tuple(_U1&&, _U2&&),
tuple(tuple&&), tuple(tuple<>&&), tuple(pair<>&&), operator=(tuple&&),
operator=(tuple<>&&), operator=(pair<>&&)): Likewise.
(tuple<>::tuple(typename __add_c_ref<_Elements>::type...),
tuple<_T1, _T2>::tuple(typename __add_c_ref<>::type,
typename __add_c_ref<>::type)): Remove.
* testsuite/tr1/6_containers/tuple/creation_functions/tie2.cc: New.
* testsuite/20_util/tuple/creation_functions/tie2.cc: Likewise.
* testsuite/20_util/tuple/moveable.cc: Likewise.
From-SVN: r131230