gcc.git
11 years agore PR tree-optimization/56826 (Run-fail after r197189.)
Richard Biener [Thu, 4 Apr 2013 15:06:44 +0000 (15:06 +0000)]
re PR tree-optimization/56826 (Run-fail after r197189.)

2013-04-04  Richard Biener  <rguenther@suse.de>

PR tree-optimization/56826
* tree-vect-slp.c (vect_build_slp_tree): Compute ncopies
more accurately.

* gcc.dg/vect/pr56826.c: New testcase.
* gcc.dg/vect/O3-pr36098.c: Adjust.

From-SVN: r197486

11 years agoasm-adder-clobber-lr.c: Remove duplication.
Tejas Belagod [Thu, 4 Apr 2013 12:28:21 +0000 (13:28 +0100)]
asm-adder-clobber-lr.c: Remove duplication.

2013-04-04  Tejas Belagod  <tejas.belagod@arm.com>

testsuite/
* gcc.target/aarch64/inc/asm-adder-clobber-lr.c: Remove duplication.
* gcc.target/aarch64/inc/asm-adder-no-clobber-lr.c: Likewise.
* gcc.target/aarch64/test-framepointer-1.c: Likewise.
* gcc.target/aarch64/test-framepointer-2.c: Likewise.
* gcc.target/aarch64/test-framepointer-3.c: Likewise.
* gcc.target/aarch64/test-framepointer-4.c: Likewise.
* gcc.target/aarch64/test-framepointer-5.c: Likewise.
* gcc.target/aarch64/test-framepointer-6.c: Likewise.
* gcc.target/aarch64/test-framepointer-7.c: Likewise.
* gcc.target/aarch64/test-framepointer-8.c: Likewise.

From-SVN: r197481

11 years agore PR tree-optimization/56213 (strided load vectorization is unnecessarily restricted)
Richard Biener [Thu, 4 Apr 2013 12:19:30 +0000 (12:19 +0000)]
re PR tree-optimization/56213 (strided load vectorization is unnecessarily restricted)

2013-04-04  Richard Biener  <rguenther@suse.de>

PR tree-optimization/56213
* tree-vect-data-refs.c (vect_check_strided_load): Remove.
(vect_analyze_data_refs): Allow all non-nested loads as
strided loads.

* gcc.dg/vect/vect-123.c: New testcase.

From-SVN: r197480

11 years agore PR libfortran/56810 (record-repeat fails kind check on complex read)
Tobias Burnus [Thu, 4 Apr 2013 11:24:15 +0000 (13:24 +0200)]
re PR libfortran/56810 (record-repeat fails kind check on complex read)

2013-04-04  Tobias Burnus  <burnus@net-b.de>

        PR fortran/56810
        * io/list_read.c (check_type): Fix kind checking for COMPLEX.

2013-04-04  Tobias Burnus  <burnus@net-b.de>

        PR fortran/56810
        * gfortran.dg/read_repeat_2.f90: New.

From-SVN: r197479

11 years agore PR tree-optimization/56837 (-ftree-loop-distribute-patterns generates incorrect...
Richard Biener [Thu, 4 Apr 2013 10:55:25 +0000 (10:55 +0000)]
re PR tree-optimization/56837 (-ftree-loop-distribute-patterns generates incorrect code)

2013-04-04  Richard Biener  <rguenther@suse.de>

PR tree-optimization/56837
* tree-loop-distribution.c (classify_partition): For non-zero
values require that the value has the same precision as its
mode to be useful as memset value.

* g++.dg/torture/pr56837.C: New testcase.

From-SVN: r197476

11 years ago* testsuite/util/testsuite_abi.cc: Add GLIBCXX_3.4.19 version.
Jonathan Wakely [Thu, 4 Apr 2013 08:56:09 +0000 (08:56 +0000)]
* testsuite/util/testsuite_abi.cc: Add GLIBCXX_3.4.19 version.

From-SVN: r197472

11 years agooops - omitted this from previous delta:
Nick Clifton [Thu, 4 Apr 2013 07:25:35 +0000 (07:25 +0000)]
oops - omitted this from previous delta:

* config/v850/v850e3v5.md (fmasf4): Use fmaf.s on E3V5
architectures.
(fmssf4): Use fmsf.s on E3V5 architectures.
(fnmasf4): Use fnmaf.s on E3V5 architectures.
(fnmssf4): Use fnmsf.s on E3V5 architectures.

From-SVN: r197469

11 years agore PR fortran/50269 (Wrongly rejects element of assumed-shape array in C_LOC)
Tobias Burnus [Thu, 4 Apr 2013 07:22:24 +0000 (09:22 +0200)]
re PR fortran/50269 (Wrongly rejects element of assumed-shape array in C_LOC)

2013-04-04  Tobias Burnus  <burnus@net-b.de>

        PR fortran/50269
        * gcc/fortran/check.c (is_c_interoperable,
        gfc_check_c_loc): Correct c_loc array checking
        for Fortran 2003 and Fortran 2008.

2013-04-04  Tobias Burnus  <burnus@net-b.de>

        PR fortran/50269
        * gfortran.dg/c_loc_test_21.f90: New.
        * gfortran.dg/c_loc_test_19.f90: Update dg-error.
        * gfortran.dg/c_loc_tests_10.f03: Update dg-error.
        * gfortran.dg/c_loc_tests_11.f03: Update dg-error.
        * gfortran.dg/c_loc_tests_4.f03: Update dg-error.
        * gfortran.dg/c_loc_tests_16.f90:  Update dg-error.

From-SVN: r197468

11 years agoMakefile.in (lra-constraints.o): Depend on $(OPTABS_H).
Jeff Law [Thu, 4 Apr 2013 05:12:48 +0000 (23:12 -0600)]
Makefile.in (lra-constraints.o): Depend on $(OPTABS_H).

       * Makefile.in (lra-constraints.o): Depend on $(OPTABS_H).
        (lra-eliminations.o): Likewise.

From-SVN: r197467

11 years agocp-tree.h (FUNCTION_OR_METHOD_TYPE_CHECK): Remove.
Jason Merrill [Thu, 4 Apr 2013 03:13:51 +0000 (23:13 -0400)]
cp-tree.h (FUNCTION_OR_METHOD_TYPE_CHECK): Remove.

* cp-tree.h (FUNCTION_OR_METHOD_TYPE_CHECK): Remove.
(TYPE_RAISES_EXCEPTIONS): Use FUNC_OR_METHOD_CHECK instead.
(FUNCTION_REF_QUALIFIED, FUNCTION_RVALUE_QUALIFIED): Likewise.

From-SVN: r197466

11 years agoDaily bump.
GCC Administrator [Thu, 4 Apr 2013 00:16:40 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r197464

11 years agocp-demangle.c (cplus_demangle_type): Fix function quals.
Jason Merrill [Thu, 4 Apr 2013 00:14:00 +0000 (20:14 -0400)]
cp-demangle.c (cplus_demangle_type): Fix function quals.

libiberty/
* cp-demangle.c (cplus_demangle_type): Fix function quals.
(d_pointer_to_member_type): Simplify.
gcc/cp/
* mangle.c (write_type): When writing a function type with
function-cv-quals, don't add the unqualified type as a
substitution candidate.

From-SVN: r197460

11 years agoc-common.c (pointer_int_sum): Remove dead code.
Paolo Carlini [Wed, 3 Apr 2013 21:08:44 +0000 (21:08 +0000)]
c-common.c (pointer_int_sum): Remove dead code.

2013-04-03  Paolo Carlini  <paolo.carlini@oracle.com>

* c-common.c (pointer_int_sum): Remove dead code.

From-SVN: r197458

11 years agoThis patch enables the gcov-dump tool to optionally compute and dump the working...
Teresa Johnson [Wed, 3 Apr 2013 20:51:28 +0000 (20:51 +0000)]
This patch enables the gcov-dump tool to optionally compute and dump the working set information from the counter histogram...

This patch enables the gcov-dump tool to optionally compute and dump
the working set information from the counter histogram, via a new -w option.
This is useful to help understand and tune how the compiler will use
the counter histogram, since it first computes the working set and selects
thresholds based on that.

This required moving the bulk of the compute_working_sets functionality
into gcov-io.c so that it was accessible by gcov-dump.c.

2013-04-03  Teresa Johnson  <tejohnson@google.com>

* gcov-io.c (compute_working_sets): Moved most of body of old
        compute_working_sets here from profile.c.
* gcov-io.h (NUM_GCOV_WORKING_SETS): Moved here from profile.c.
        (gcov_working_set_t): Moved typedef here from basic-block.h
        (compute_working_set): Declare.
* profile.c (NUM_GCOV_WORKING_SETS): Moved to gcov-io.h.
(get_working_sets): Renamed from compute_working_set,
        replace most of body with call to new compute_working_sets.
(get_exec_counts): Replace call to compute_working_sets
        to get_working_sets.
* profile.h (get_working_sets): Renamed from
        compute_working_set.
* lto-cgraph.c (input_symtab): Replace call to compute_working_sets
        to get_working_sets.
* basic-block.h (gcov_working_set_t): Moved to gcov-io.h.
* gcov-dump.c (dump_working_sets): New function.

From-SVN: r197457

11 years agohwint.c (sext_hwi, zext_hwi): New functions.
Kenneth Zadeck [Wed, 3 Apr 2013 20:24:07 +0000 (20:24 +0000)]
hwint.c (sext_hwi, zext_hwi): New functions.

2013-04-03  Kenneth Zadeck <zadeck@naturalbridge.com>

* hwint.c (sext_hwi, zext_hwi): New functions.
* hwint.h (HOST_BITS_PER_HALF_WIDE_INT, HOST_HALF_WIDE_INT,
HOST_HALF_WIDE_INT_PRINT, HOST_HALF_WIDE_INT_PRINT_C,
HOST_HALF_WIDE_INT_PRINT_DEC, HOST_HALF_WIDE_INT_PRINT_DEC_C,
HOST_HALF_WIDE_INT_PRINT_UNSIGNED, HOST_HALF_WIDE_INT_PRINT_HEX,
HOST_HALF_WIDE_INT_PRINT_HEX_PURE): New symbols.
(sext_hwi, zext_hwi): New functions.

From-SVN: r197456

11 years agore PR tree-optimization/56799 (Runfail after r197060+r197082.)
Jeff Law [Wed, 3 Apr 2013 19:18:09 +0000 (13:18 -0600)]
re PR tree-optimization/56799 (Runfail after r197060+r197082.)

        PR tree-optimization/56799
        * tree-ssa-dom.c (record_equivalences_from_incoming_edge): Bring
        back test for widening conversion erroneously dropped in prior
        change.

        PR tree-optimization/56799
        * gcc.c-torture/execute/pr56799.c: New test.

From-SVN: r197453

11 years agoDemangle C++11 ref-qualifier.
Jason Merrill [Wed, 3 Apr 2013 17:24:12 +0000 (13:24 -0400)]
Demangle C++11 ref-qualifier.

include/
* demangle.h (enum demangle_component_type): Add
DEMANGLE_COMPONENT_REFERENCE_THIS,
DEMANGLE_COMPONENT_RVALUE_REFERENCE_THIS.
libiberty/
* cp-demangle.c (d_ref_qualifier): New.
(d_nested_name, d_function_type): Use it.
(d_parmlist): Don't get confused by a ref-qualifier.
(cplus_demangle_type): Reorder ref-qualifier.
(d_pointer_to_member_type): Likewise.
(d_dump): Handle DEMANGLE_COMPONENT_REFERENCE_THIS and
DEMANGLE_COMPONENT_RVALUE_REFERENCE_THIS.
(d_make_comp, has_return_type, d_encoding): Likewise.
(d_print_comp, d_print_mod_list, d_print_mod): Likewise.
(d_print_function_type, is_ctor_or_dtor): Likewise.

From-SVN: r197436

11 years agore PR target/56809 (Revision 197266 causes trunk ICE for arm-none-eabi targets)
Kyrylo Tkachov [Wed, 3 Apr 2013 16:38:24 +0000 (16:38 +0000)]
re PR target/56809 (Revision 197266 causes trunk ICE for arm-none-eabi targets)

2013-04-03  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

PR target/56809
* config/aarch64/aarch64.c (is_jump_table): Use next_active_insn
instead of next_real_insn.

From-SVN: r197434

11 years agore PR c++/56815 (void pointer arithmetic)
Paolo Carlini [Wed, 3 Apr 2013 16:20:51 +0000 (16:20 +0000)]
re PR c++/56815 (void pointer arithmetic)

/cp
2013-04-03  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/56815
* typeck.c (cp_build_unary_op): Change -Wpointer-arith permerror to
pedwarn.

/testsuite
2013-04-03  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/56815
* g++.dg/warn/Wpointer-arith-1.C: New.
* g++.dg/gomp/for-19.C: Adjust.

From-SVN: r197433

11 years agore PR sanitizer/55702 (ICE: in instrument_func_exit, at tsan.c:684 with -fsanitize...
Marek Polacek [Wed, 3 Apr 2013 16:01:38 +0000 (16:01 +0000)]
re PR sanitizer/55702 (ICE: in instrument_func_exit, at tsan.c:684 with -fsanitize=thread and __builtin_return())

PR sanitizer/55702
* tsan.c (instrument_func_exit): Allow BUILT_IN_RETURN
functions.

* gcc.dg/pr55702.c: New test.

From-SVN: r197430

11 years agore PR target/56809 (Revision 197266 causes trunk ICE for arm-none-eabi targets)
Kyrylo Tkachov [Wed, 3 Apr 2013 15:37:31 +0000 (15:37 +0000)]
re PR target/56809 (Revision 197266 causes trunk ICE for arm-none-eabi targets)

gcc/
2013-04-03  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

PR target/56809
* config/arm/arm.c (is_jump_table): Use next_active_insn instead of
next_real_insn.
(thumb1_output_casesi): Likewise.
(thumb2_output_casesi): Likewise.

gcc/testsuite
2013-04-03  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

PR target/56809
* gcc.dg/pr56809.c: New testcase.

From-SVN: r197425

11 years agore PR c++/56819 (ICE: SIGSEGV in int_cst_value (tree.h:4013) with -fcompare-debug)
Jakub Jelinek [Wed, 3 Apr 2013 15:24:13 +0000 (17:24 +0200)]
re PR c++/56819 (ICE: SIGSEGV in int_cst_value (tree.h:4013) with -fcompare-debug)

PR debug/56819
* tree.c (strip_typedefs): Copy NON_DEFAULT_TEMPLATE_ARGS_COUNT
from args to new_args.
(strip_typedefs_expr): Copy NON_DEFAULT_TEMPLATE_ARGS_COUNT from t to
r instead of doing {S,G}ET_NON_DEFAULT_TEMPLATE_ARGS_COUNT.

* g++.dg/debug/pr56819.C: New test.

From-SVN: r197420

11 years agore PR target/56771 (Integer Overflow? Building arm-rtems libgcc2)
Sebastian Huber [Wed, 3 Apr 2013 15:11:54 +0000 (15:11 +0000)]
re PR target/56771 (Integer Overflow? Building arm-rtems libgcc2)

2013-04-03  Sebastian Huber  <sebastian.huber@embedded-brains.de>

PR target/56771
* configure.ac: Require 64-bit int for arm*-*-rtems*.
* configure: Regenerate.

From-SVN: r197417

11 years agore PR libstdc++/56834 (Errors in <array> with --enable-symvers=gnu-versioned-namespac...
Paolo Carlini [Wed, 3 Apr 2013 15:07:12 +0000 (15:07 +0000)]
re PR libstdc++/56834 (Errors in <array> with --enable-symvers=gnu-versioned-namespace and -D_GLIBCXX_DEBUG)

2013-04-03  Paolo Carlini  <paolo.carlini@oracle.com>

PR libstdc++/56834
* include/debug/array (tuple_size, tuple_element): Do not declare.
* include/profile/array: Likewise.
* testsuite/23_containers/array/tuple_interface/
tuple_element_debug_neg.cc: Adjust dg-error line number.

From-SVN: r197415

11 years agov850e3v5.md (fmasf4): Use fmaf.s on E3V5 architectures.
Nick Clifton [Wed, 3 Apr 2013 14:06:38 +0000 (14:06 +0000)]
v850e3v5.md (fmasf4): Use fmaf.s on E3V5 architectures.

* config/v850/v850e3v5.md (fmasf4): Use fmaf.s on E3V5
architectures.
(fmssf4): Use fmsf.s on E3V5 architectures.
(fnmasf4): Use fnmaf.s on E3V5 architectures.
(fnmssf4): Use fnmsf.s on E3V5 architectures.

From-SVN: r197413

11 years agore PR tree-optimization/56817 (ICE in hide_evolution_in_other_loops_than_loop)
Richard Biener [Wed, 3 Apr 2013 13:41:13 +0000 (13:41 +0000)]
re PR tree-optimization/56817 (ICE in hide_evolution_in_other_loops_than_loop)

2013-04-03  Richard Biener  <rguenther@suse.de>

PR tree-optimization/56817
* tree-ssa-loop-ivcanon.c (tree_unroll_loops_completely):
Split out ...
(tree_unroll_loops_completely_1): ... new function to manually
walk the loop tree, properly defering outer loops of unrolled
loops to later iterations.

* g++.dg/torture/pr56817.C: New testcase.

From-SVN: r197411

11 years agotree-vect-stmts.c (vectorizable_store): Accept BIT_FIELD_REF.
Marc Glisse [Wed, 3 Apr 2013 12:59:46 +0000 (14:59 +0200)]
tree-vect-stmts.c (vectorizable_store): Accept BIT_FIELD_REF.

2013-04-03  Marc Glisse  <marc.glisse@inria.fr>

gcc/
* tree-vect-stmts.c (vectorizable_store): Accept BIT_FIELD_REF.
(vectorizable_load): Likewise.
* tree-vect-slp.c (vect_build_slp_tree): Likewise.
* tree-vect-data-refs.c (vect_create_data_ref_ptr): Handle VECTOR_TYPE.

gcc/testsuite/
* gcc.dg/vect/bb-slp-31.c: New file.

From-SVN: r197410

11 years agotree-flow-inline.h (get_addr_base_and_unit_offset_1): Handle BIT_FIELD_REF.
Marc Glisse [Wed, 3 Apr 2013 12:54:50 +0000 (14:54 +0200)]
tree-flow-inline.h (get_addr_base_and_unit_offset_1): Handle BIT_FIELD_REF.

2013-04-03  Marc Glisse  <marc.glisse@inria.fr>

* tree-flow-inline.h (get_addr_base_and_unit_offset_1): Handle
BIT_FIELD_REF.

From-SVN: r197409

11 years agore PR c++/34949 (Dead code in empty destructors.)
Jason Merrill [Wed, 3 Apr 2013 12:53:39 +0000 (08:53 -0400)]
re PR c++/34949 (Dead code in empty destructors.)

PR c++/34949
* g++.dg/tree-ssa/ehcleanup-1.C: Adjust unreachable count.

From-SVN: r197408

11 years agoslp-pr56812.cc: Use dg-additional-options.
Richard Biener [Wed, 3 Apr 2013 12:31:26 +0000 (12:31 +0000)]
slp-pr56812.cc: Use dg-additional-options.

2013-04-03  Richard Biener  <rguenther@suse.de>

* g++.dg/vect/slp-pr56812.cc: Use dg-additional-options.

From-SVN: r197407

11 years ago* config/spu/spu.c (emit_nop_for_insn): Handle JUMP_TABLE_DATA.
Ulrich Weigand [Wed, 3 Apr 2013 12:14:03 +0000 (12:14 +0000)]
* config/spu/spu.c (emit_nop_for_insn): Handle JUMP_TABLE_DATA.

From-SVN: r197406

11 years agore PR tree-optimization/55964 (Segmentation fault with -O -ftree-loop-distribution...
Richard Biener [Wed, 3 Apr 2013 10:36:49 +0000 (10:36 +0000)]
re PR tree-optimization/55964 (Segmentation fault with -O -ftree-loop-distribution -funswitch-loops)

2013-04-03  Richard Biener  <rguenther@suse.de>

PR tree-optimization/55964
* gcc.dg/torture/pr55964-2.c: New testcase.

From-SVN: r197403

11 years agore PR tree-optimization/56501 (gcc 4.6 ICE on noreturn function at -Os and above)
Richard Biener [Wed, 3 Apr 2013 10:28:27 +0000 (10:28 +0000)]
re PR tree-optimization/56501 (gcc 4.6 ICE on noreturn function at -Os and above)

2013-04-03  Richard Biener  <rguenther@suse.de>

PR tree-optimization/56501
* gcc.dg/torture/pr56501.c: New testcase.

From-SVN: r197401

11 years agore PR tree-optimization/56407 (Optimizations (-O2 -O3) make comparison of arrays...
Richard Biener [Wed, 3 Apr 2013 10:25:23 +0000 (10:25 +0000)]
re PR tree-optimization/56407 (Optimizations (-O2 -O3) make comparison of arrays of ints to fail)

2013-04-03  Richard Biener  <rguenther@suse.de>

PR tree-optimization/56407
* gcc.dg/torture/pr56407.c: New testcase.

From-SVN: r197399

11 years ago* rtl.h (AUTO_INC_DEC): Fix typo of HAVE_POST_MODIFY_DISP.
Bin Cheng [Wed, 3 Apr 2013 10:25:08 +0000 (10:25 +0000)]
* rtl.h (AUTO_INC_DEC): Fix typo of HAVE_POST_MODIFY_DISP.

From-SVN: r197398

11 years agore PR tree-optimization/56790 (VEC_COND_EXPR not constant folded)
Marc Glisse [Wed, 3 Apr 2013 09:49:44 +0000 (11:49 +0200)]
re PR tree-optimization/56790 (VEC_COND_EXPR not constant folded)

2013-04-03  Marc Glisse  <marc.glisse@inria.fr>

PR tree-optimization/56790
gcc/
* fold-const.c (fold_ternary_loc) <VEC_COND_EXPR>: Add constant folding.

gcc/testsuite/
* g++.dg/ext/pr56790-1.C: New testcase.

From-SVN: r197395

11 years agosimplify-rtx.c (simplify_binary_operation_1): Handle VEC_MERGE.
Marc Glisse [Wed, 3 Apr 2013 09:44:28 +0000 (11:44 +0200)]
simplify-rtx.c (simplify_binary_operation_1): Handle VEC_MERGE.

2013-04-03  Marc Glisse  <marc.glisse@inria.fr>

gcc/
* simplify-rtx.c (simplify_binary_operation_1) <VEC_SELECT>:
Handle VEC_MERGE.
(simplify_ternary_operation) <VEC_MERGE>: Use unsigned HOST_WIDE_INT
for masks. Test for side effects. Handle nested VEC_MERGE. Handle
equal arguments.

gcc/testsuite/
* gcc.target/i386/merge-1.c: New testcase.
* gcc.target/i386/avx2-vpblendd128-1.c: Make it non-trivial.

From-SVN: r197394

11 years agore PR c/19449 (__builtin_constant_p cannot resolve to const when optimizing)
Jakub Jelinek [Wed, 3 Apr 2013 09:17:44 +0000 (11:17 +0200)]
re PR c/19449 (__builtin_constant_p cannot resolve to const when optimizing)

PR c/19449
* tree.h (force_folding_builtin_constant_p): New decl.
* builtins.c (force_folding_builtin_constant_p): New variable.
(fold_builtin_constant_p): Fold immediately also if
force_folding_builtin_constant_p.

* c-parser.c (c_parser_get_builtin_args): Add choose_expr_p
argument.  If set, or it temporarily for parsing of the first
argument into force_folding_builtin_constant_p.
(c_parser_postfix_expression): Adjust callers.

* gcc.c-torture/execute/pr19449.c: New test.

From-SVN: r197393

11 years agore PR tree-optimization/56812 (Simple loop is not SLP-vectorized after r196872)
Richard Biener [Wed, 3 Apr 2013 08:03:33 +0000 (08:03 +0000)]
re PR tree-optimization/56812 (Simple loop is not SLP-vectorized after r196872)

2013-04-03  Richard Biener  <rguenther@suse.de>

PR tree-optimization/56812
* tree-vect-data-refs.c (vect_slp_analyze_data_ref_dependence):
DRs of the same interleaving chain are independent.

* g++.dg/vect/slp-pr56812.cc: New testcase.

From-SVN: r197390

11 years agore PR fortran/56284 ([OOP] ICE with alternate return in type-bound procedure)
Janus Weil [Wed, 3 Apr 2013 07:31:23 +0000 (09:31 +0200)]
re PR fortran/56284 ([OOP] ICE with alternate return in type-bound procedure)

2013-04-03  Janus Weil  <janus@gcc.gnu.org>

PR fortran/56284
PR fortran/40881
* decl.c (gfc_match_formal_arglist): Warn about alternate-return
arguments.
* interface.c (check_dummy_characteristics): Return if symbols are NULL.

2013-04-03  Janus Weil  <janus@gcc.gnu.org>

PR fortran/56284
PR fortran/40881
* gfortran.dg/altreturn_8.f90: New.
* gfortran.dg/altreturn_2.f90: Add -std=legacy.
* gfortran.dg/intrinsic_actual_3.f90: Ditto.
* gfortran.dg/invalid_interface_assignment.f90: Ditto.

From-SVN: r197389

11 years agore PR c++/56821 (Unable to overload with references to 'this'.)
Jason Merrill [Wed, 3 Apr 2013 03:11:02 +0000 (23:11 -0400)]
re PR c++/56821 (Unable to overload with references to 'this'.)

PR c++/56821
* mangle.c (write_function_type): Mangle ref-qualifier.
(write_nested_name): Likewise.
(canonicalize_for_substitution): Preserve ref-qualifier.
(write_type): Likewise.

From-SVN: r197386

11 years agoDaily bump.
GCC Administrator [Wed, 3 Apr 2013 00:16:21 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r197384

11 years agoexception (get_terminate(), [...]): Declare.
Jonathan Wakely [Wed, 3 Apr 2013 00:08:54 +0000 (00:08 +0000)]
exception (get_terminate(), [...]): Declare.

* libsupc++/exception (get_terminate(), get_unexpected()): Declare.
* libsupc++/eh_terminate.cc (get_terminate() , set_unexpected()):
Define.
(set_terminate(terminate_handler)): Set atomically.
(set_unexpected(terminate_handler)): Likewise.
* libsupc++/new (get_new_handler()): Declare.
* libsupc++/new_handler.cc (get_new_handler()): Define.
(set_new_handler(new_handler)): Set atomically.
(__new_handler): Use internal linkage.
* libsupc++/new_op.cc (operator new): Use get_new_handler().
* libsupc++/new_opnt.cc (operator new): Likewise.
* acinclude.m4: Bump libtool_VERSION to 6:19:0.
* configure: Regenerate.
* libsupc++/Makefile.am: Compile above files with -std=gnu++11.
* libsupc++/Makefile.in: Regenerate.
* config/abi/pre/gnu.ver: Add new exports.
* doc/xml/manual/status_cxx2011.xml: Update.
* testsuite/18_support/headers/exception/synopsis.cc: Check accessors
for handlers.
* testsuite/18_support/headers/new/synopsis.cc: Likewise.
* testsuite/18_support/new_handler.cc: New.
* testsuite/18_support/terminate_handler.cc: New.
* testsuite/18_support/unexpected_handler.cc: New.

From-SVN: r197380

11 years ago* de.po: Update.
Joseph Myers [Tue, 2 Apr 2013 22:47:43 +0000 (23:47 +0100)]
* de.po: Update.

From-SVN: r197377

11 years ago* gdbinit.in (pbb): Use debug fn.
Jason Merrill [Tue, 2 Apr 2013 21:09:52 +0000 (17:09 -0400)]
* gdbinit.in (pbb): Use debug fn.

From-SVN: r197376

11 years agore PR c++/34949 (Dead code in empty destructors.)
Jason Merrill [Tue, 2 Apr 2013 21:09:38 +0000 (17:09 -0400)]
re PR c++/34949 (Dead code in empty destructors.)

PR c++/34949
* decl.c (begin_destructor_body): Clobber the object in a cleanup.

From-SVN: r197375

11 years agoRemove unused symbols related to ivtype_map.
Lawrence Crowl [Tue, 2 Apr 2013 20:13:46 +0000 (20:13 +0000)]
Remove unused symbols related to ivtype_map.

Remove unused symbols related to ivtype_map.  This map does not appear to
exist and I see no evidence of its removal in the ChangeLog.

Tested on x86_64.

Index: gcc/ChangeLog

2013-04-02  Lawrence Crowl  <crowl@google.com>

* sese.h (struct ivtype_map_elt_s): Remove unused.
(extern debug_ivtype_map): Remove unused.
(extern eq_ivtype_map_elts): Remove unused.
* sese.c (debug_ivtype_map): Removed unused.
(debug_ivtype_map_1): Removed unused.
(debug_ivtype_elt): Remove unused.
(eq_ivtype_map_elts): Remove unused.

From-SVN: r197374

11 years agore PR target/52790 (Problems using x86_64-w64-mingw-w32-gfortran with mcmodel=large...
Kai Tietz [Tue, 2 Apr 2013 18:34:32 +0000 (20:34 +0200)]
re PR target/52790 (Problems using x86_64-w64-mingw-w32-gfortran with mcmodel=large and medium)

PR target/52790
* config/i386/cygming.h (SUB_TARGET_RECORD_STUB): New sub-target macro.
* config/i386/i386-protos.h (i386_pe_record_stub): Add new prototype.
* config/i386/i386.c (legitimize_pe_coff_extern_decl): New static
function.
(legitimize_pe_coff_symbol): Likewise.
(is_imported_p): New helper-function.
(ix86_option_override_internal): Make MEDIUM_PIC the default code-model
for Windows x64 targets.
(ix86_expand_prologue): Optimize for pe-coff targets.
(ix86_expand_split_stack_prologue): Adjust for pe-coff targets.
(legitimate_pic_address_disp_p): Adjust for x64 pe-coff to support
medium/large code-model.
(legitimize_pic_address): Likewise.
(legitimize_tls_address): Likewise.
(ix86_expand_call): Likewise.
(x86_output_mi_thunk): Likewise.
(get_dllimport_decl): Add new beimport argument.
(construct_plt_address): Don't assert for x64 pe-coff targets.
* config/i386/i386.h (PIC_OFFSET_TABLE_REGNUM): Adjust for x64 pe-coff
targets.
(SYMBOL_FLAG_STUBVAR): New macro.
(SYMBOL_REF_STUBVAR_P): Likewise.
* config/i386/winnt.c (stub_list): New structure.
(stub_head): New local variable.
(i386_pe_record_stub): New function.
(i386_pe_file_end): Emit refptr-stubs.

From-SVN: r197373

11 years agore PR rtl-optimization/56745 (ICE in merge_if_block)
Jakub Jelinek [Tue, 2 Apr 2013 18:29:18 +0000 (20:29 +0200)]
re PR rtl-optimization/56745 (ICE in merge_if_block)

PR rtl-optimization/56745
* ifcvt.c (cond_exec_find_if_block): Don't try to optimize
if then_bb has no successors and else_bb is EXIT_BLOCK_PTR.

* gcc.c-torture/compile/pr56745.c: New test.

From-SVN: r197371

11 years agore PR c++/34949 (Dead code in empty destructors.)
Jakub Jelinek [Tue, 2 Apr 2013 18:27:45 +0000 (20:27 +0200)]
re PR c++/34949 (Dead code in empty destructors.)

PR c++/34949
* tree-ssa-alias.c (stmt_kills_ref_p_1): If base != ref->base
and both of them are MEM_REFs, just compare first argument for
equality and attempt to deal even with differing offsets.

From-SVN: r197370

11 years agore PR c++/34949 (Dead code in empty destructors.)
Jakub Jelinek [Tue, 2 Apr 2013 18:25:36 +0000 (20:25 +0200)]
re PR c++/34949 (Dead code in empty destructors.)

PR c++/34949
* tree-cfg.c (verify_gimple_assign_single): Allow lhs
of gimple_clobber_p to be MEM_REF.
* gimplify.c (gimplify_modify_expr): Gimplify *to_p of
an assignment from TREE_CLOBBER_P.  Allow it to be MEM_REF
after gimplification.
* asan.c (get_mem_ref_of_assignment): Don't instrument
gimple_clobber_p stmts.
* tree-ssa-dse.c (dse_optimize_stmt): Allow DSE of
gimple_clobber_p stmt if they have MEM_REF lhs and
are dead because of another gimple_clobber_p stmt.
* tree-ssa-live.c (clear_unused_block_pointer): Treat
gimple_clobber_p stmts like debug stmts.
(remove_unused_locals): Remove clobbers with MEM_REF lhs
that refer to unused VAR_DECLs or uninitialized values.
* tree-sra.c (sra_ipa_reset_debug_stmts): Also remove
gimple_clobber_p stmts if they refer to removed parameters.
(get_repl_default_def_ssa_name, sra_ipa_modify_expr): Fix up
formatting.

From-SVN: r197369

11 years agoi386.md (*testqi_ext_3): Merge with *testqi_ext_3_rex64 using SWI48 mode attribute.
Uros Bizjak [Tue, 2 Apr 2013 17:21:55 +0000 (19:21 +0200)]
i386.md (*testqi_ext_3): Merge with *testqi_ext_3_rex64 using SWI48 mode attribute.

* config/i386/i386.md (*testqi_ext_3): Merge with *testqi_ext_3_rex64
using SWI48 mode attribute.

From-SVN: r197367

11 years agosra-13.c: Fix for 16 bit int.
Pitchumani Sivanupandi [Tue, 2 Apr 2013 17:19:48 +0000 (17:19 +0000)]
sra-13.c: Fix for 16 bit int.

2013-04-02  Pitchumani Sivanupandi <pitchumani.s@atmel.com>

    * gcc.dg/tree-ssa/sra-13.c: Fix for 16 bit int.

From-SVN: r197366

11 years agoi386.c (ix86_rtx_costs): Set proper rtx cost for ashl<mode>3_mask...
Wei Mi [Tue, 2 Apr 2013 16:53:49 +0000 (16:53 +0000)]
i386.c (ix86_rtx_costs): Set proper rtx cost for ashl<mode>3_mask...

2013-04-02  Wei Mi  <wmi@google.com>

* config/i386/i386.c (ix86_rtx_costs): Set proper rtx cost for
ashl<mode>3_mask, *<shift_insn><mode>3_mask and
*<rotate_insn><mode>3_mask in i386.md.

From-SVN: r197362

11 years agoconfig.gcc (arm*-*-linux-*): Remove duplicate t-linux-android.
Alexander Ivchenko [Tue, 2 Apr 2013 14:32:37 +0000 (14:32 +0000)]
config.gcc (arm*-*-linux-*): Remove duplicate t-linux-android.

* config.gcc (arm*-*-linux-*): Remove duplicate t-linux-android.

From-SVN: r197358

11 years agofriend.c (do_friend): Use COMPLETE_OR_OPEN_TYPE_P.
Paolo Carlini [Tue, 2 Apr 2013 14:04:53 +0000 (14:04 +0000)]
friend.c (do_friend): Use COMPLETE_OR_OPEN_TYPE_P.

2013-04-02  Paolo Carlini  <paolo.carlini@oracle.com>

* friend.c (do_friend): Use COMPLETE_OR_OPEN_TYPE_P.
* pt.c (find_parameter_packs_r): Use TYPE_ALIAS_P and TYPE_TI_ARGS.
(for_each_template_parm_r): Use TYPE_TI_ARGS.

From-SVN: r197356

11 years agore PR tree-optimization/56778 (ICE on several benchmarks after r196775.)
Richard Biener [Tue, 2 Apr 2013 13:31:05 +0000 (13:31 +0000)]
re PR tree-optimization/56778 (ICE on several benchmarks after r196775.)

2013-04-02  Richard Biener  <rguenther@suse.de>

PR tree-optimization/56778
* tree-vect-data-refs.c (vect_analyze_data_ref_dependence):
Runtime alias tests are not supported for gather loads.
* tree-vect-loop-manip.c (vect_loop_versioning): Insert
stmts referenced from SSA operands before updating SSA form.

* gcc.dg/torture/pr56778.c: New testcase.

From-SVN: r197355

11 years agore PR c++/56768 ([4.7] ICE in make_decl_rtl, at varasm.c:1147)
Richard Biener [Tue, 2 Apr 2013 12:23:13 +0000 (12:23 +0000)]
re PR c++/56768 ([4.7] ICE in make_decl_rtl, at varasm.c:1147)

2013-04-02  Richard Biener  <rguenther@suse.de>

PR middle-end/56768
* g++.dg/torture/pr56768.C: New testcase.

From-SVN: r197349

11 years agocp-tree.h (TAGGED_TYPE_P): Remove.
Paolo Carlini [Tue, 2 Apr 2013 11:45:31 +0000 (11:45 +0000)]
cp-tree.h (TAGGED_TYPE_P): Remove.

2013-04-02  Paolo Carlini  <paolo.carlini@oracle.com>

* cp-tree.h (TAGGED_TYPE_P): Remove.
(IS_OVERLOAD_TYPE): Rename to OVERLOAD_TYPE_P, adjust.
(TYPE_ANONYMOUS_P): Adjust.
* call.c (build_new_op_1): Likewise.
* class.c (find_abi_tags_r): Likewise.
* decl.c (warn_misplaced_attr_for_class_type, start_decl,
type_is_deprecated): Likewise.
* decl2.c (grokfield, min_vis_r): Likewise.
* pt.c (get_template_info): Likewise.
* tree.c (handle_abi_tag_attribute): Likewise.

From-SVN: r197347

11 years agoAdd support for Cortex-A53.
Ian Caulfield [Tue, 2 Apr 2013 11:25:50 +0000 (11:25 +0000)]
Add support for Cortex-A53.

2013-04-02  Ian Caulfield  <ian.caulfield@arm.com>
    Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>

* config/arm/arm-arches.def (armv8-a): Default to cortex-a53.
        * config/arm/t-arm (MD_INCLUDES): Depend on cortex-a53.md.
        * config/arm/cortex-a53.md: New file.
        * config/arm/bpabi.h (BE8_LINK_SPEC): Handle cortex-a53.
        * config/arm/arm.md (generic_sched, generic_vfp): Handle cortex-a53.
        * config/arm/arm.c (arm_issue_rate): Likewise.
        * config/arm/arm-tune.md: Regenerate
        * config/arm/arm-tables.opt: Regenerate.
        * config/arm/arm-cores.def: Add cortex-a53.

From-SVN: r197346

11 years agore PR c++/56725 (extra spaces in error message)
Paolo Carlini [Tue, 2 Apr 2013 10:20:03 +0000 (10:20 +0000)]
re PR c++/56725 (extra spaces in error message)

2013-04-02  Paolo Carlini  <paolo.carlini@oracle.com>

* obj-c++.dg/try-catch-13.mm: Update per PR56725.

From-SVN: r197345

11 years agouclinux-elf.h: Add %L to LINK_GCC_C_SEQUENCE_SPEC for non-static link.
Zhenqiang Chen [Tue, 2 Apr 2013 09:35:22 +0000 (09:35 +0000)]
uclinux-elf.h: Add %L to LINK_GCC_C_SEQUENCE_SPEC for non-static link.

2013-04-02  Zhenqiang Chen  <zhenqiang.chen@arm.com>

* config/arm/uclinux-elf.h: Add %L to LINK_GCC_C_SEQUENCE_SPEC for
non-static link.

From-SVN: r197344

11 years agoFix whitespace in MAINTAINERS.
Tom de Vries [Tue, 2 Apr 2013 09:32:43 +0000 (09:32 +0000)]
Fix whitespace in MAINTAINERS.

From-SVN: r197343

11 years agoaarch64.md (*mov<mode>_aarch64): Add variants for scalar load/store operations using...
Sofiane Naci [Tue, 2 Apr 2013 09:30:02 +0000 (09:30 +0000)]
aarch64.md (*mov<mode>_aarch64): Add variants for scalar load/store operations using B/H registers.

* config/aarch64/aarch64.md (*mov<mode>_aarch64): Add variants for scalar
load/store operations using B/H registers.
(*zero_extend<SHORT:mode><GPI:mode>2_aarch64): Likewise.

From-SVN: r197342

11 years agoaarch64.md (*mov<mode>_aarch64): Add alternatives for scalar move.
Sofiane Naci [Tue, 2 Apr 2013 09:02:17 +0000 (09:02 +0000)]
aarch64.md (*mov<mode>_aarch64): Add alternatives for scalar move.

* config/aarch64/aarch64.md (*mov<mode>_aarch64): Add alternatives for
scalar move.
* config/aarch64/aarch64.c
(aarch64_simd_scalar_immediate_valid_for_move): New.
* config/aarch64/aarch64-protos.h
(aarch64_simd_scalar_immediate_valid_for_move): New.
* config/aarch64/constraints.md (Dh, Dq): New.
* config/aarch64/iterators.md (hq): New.

From-SVN: r197341

11 years agoreorg.c (get_branch_condition): Deal with conditional returns.
Eric Botcazou [Tue, 2 Apr 2013 07:14:12 +0000 (07:14 +0000)]
reorg.c (get_branch_condition): Deal with conditional returns.

* reorg.c (get_branch_condition): Deal with conditional returns.
(fill_simple_delay_slots): Remove dead code dealing with jumps.

From-SVN: r197340

11 years agoDaily bump.
GCC Administrator [Tue, 2 Apr 2013 00:16:33 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r197338

11 years agoappendix_contributing.xml: Remove broken link and defer to general documentation...
Jonathan Wakely [Tue, 2 Apr 2013 00:09:44 +0000 (01:09 +0100)]
appendix_contributing.xml: Remove broken link and defer to general documentation on contributing to GCC.

* doc/xml/manual/appendix_contributing.xml: Remove broken link and
defer to general documentation on contributing to GCC.
* doc/html/*: Regenerate.

From-SVN: r197334

11 years agosemantics.c (maybe_constant_value): Check instantiation_dependent_expression_p.
Jason Merrill [Mon, 1 Apr 2013 21:18:33 +0000 (17:18 -0400)]
semantics.c (maybe_constant_value): Check instantiation_dependent_expression_p.

* semantics.c (maybe_constant_value): Check
instantiation_dependent_expression_p.
* pt.c (build_non_dependent_expr): Don't check it here.

From-SVN: r197327

11 years agore PR c++/56772 (placement new operator does not work inside function template for...
Jason Merrill [Mon, 1 Apr 2013 21:18:23 +0000 (17:18 -0400)]
re PR c++/56772 (placement new operator does not work inside function template for array types.)

PR c++/56772
* init.c (build_new): Don't try to process an array initializer
at template definition time.

From-SVN: r197326

11 years agore PR c++/56793 (ICE with scoped enum)
Jason Merrill [Mon, 1 Apr 2013 21:18:11 +0000 (17:18 -0400)]
re PR c++/56793 (ICE with scoped enum)

PR c++/56793
* typeck.c (finish_class_member_access_expr): Handle enum scope.

From-SVN: r197325

11 years agore PR c++/56794 (C++11 Error in range-based for with parameter pack array)
Jason Merrill [Mon, 1 Apr 2013 21:18:05 +0000 (17:18 -0400)]
re PR c++/56794 (C++11 Error in range-based for with parameter pack array)

PR c++/56794
* parser.c (cp_parser_range_for): Don't try to do auto deduction
in a template if the type of the range is incomplete.

From-SVN: r197324

11 years agore PR fortran/56660 (Fails to read NAMELIST with certain form array syntax)
Jerry DeLisle [Mon, 1 Apr 2013 20:59:34 +0000 (20:59 +0000)]
re PR fortran/56660 (Fails to read NAMELIST with certain form array syntax)

2013-04-01  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR fortran/56660
* gfortran.dg/namelist_82.f90:  New test.

From-SVN: r197322

11 years agore PR fortran/56660 (Fails to read NAMELIST with certain form array syntax)
Jerry DeLisle [Mon, 1 Apr 2013 20:30:41 +0000 (20:30 +0000)]
re PR fortran/56660 (Fails to read NAMELIST with certain form array syntax)

2013-04-01  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR libfortran/56660
* io/list_read.c (nml_read_obj): Do not reset the read error flag
inside nml_read_obj. If the read error flag is found set just exit.
Fix some whitespace on comments.
(nml_read_obj_data): Reset the read error flag before the first call
to nml_read_object.

From-SVN: r197321

11 years agocall.c (add_function_candidate): Take the address of 'this' here.
Jason Merrill [Mon, 1 Apr 2013 19:05:12 +0000 (15:05 -0400)]
call.c (add_function_candidate): Take the address of 'this' here.

* call.c (add_function_candidate): Take the address of 'this' here.
(build_over_call): And here.
(build_new_method_call_1, build_op_call_1): Not here.
(build_user_type_conversion_1): Or here.
(add_candidates): Adjust.

From-SVN: r197317

11 years agocxx-pretty-print.h (pp_cxx_cv_qualifiers): New.
Jason Merrill [Mon, 1 Apr 2013 19:05:06 +0000 (15:05 -0400)]
cxx-pretty-print.h (pp_cxx_cv_qualifiers): New.

* cxx-pretty-print.h (pp_cxx_cv_qualifiers): New.
* class.c (same_signature_p): Use type_memfn_quals.
* cp-tree.h (TYPE_RAISES_EXCEPTIONS): Use
FUNCTION_OR_METHOD_TYPE_CHECK.
* error.c (dump_type_suffix): Add padding before cv-qualifiers.
* pt.c (unify): Use static_fn_type.

From-SVN: r197316

11 years agoImplement N2439 (ref-qualifiers for 'this')
Bronek Kozicki [Mon, 1 Apr 2013 19:04:59 +0000 (19:04 +0000)]
Implement N2439 (ref-qualifiers for 'this')

Implement N2439 (ref-qualifiers for 'this')
* cp-tree.h (FUNCTION_REF_QUALIFIED): New.
(FUNCTION_RVALUE_QUALIFIED): New.
(FUNCTION_OR_METHOD_TYPE_CHECK): New.
(cpp0x_warn_str): Add CPP0X_REF_QUALIFIER.
(cp_ref_qualifier): New enum.
(cp_declarator): Add ref_qualifier.
* parser.c (cp_parser_ref_qualifier_seq_opt): New.
(cp_parser_direct_declarator): Use it.
(make_call_declarator): Adjust.
(cp_parser_lambda_declarator_opt): Adjust.
* call.c (add_function_candidate): Handle ref-qualifier overload
resolution semantics.
(standard_conversion): Adjust.
* class.c (add_method, same_signature_p): Compare ref-qualifiers.
* decl.c (grokdeclarator): Handle ref-qualifiers.
(grokfndecl): Check for invalid ref-qualifiers.
(static_fn_type, revert_static_member_fn): Adjust.
* decl2.c (build_memfn_type): Handle ref-qualifiers.
(check_classfn): Check them.
(cp_reconstruct_complex_type): Retain them.
* error.c (dump_ref_qualifier): New.
(dump_type_suffix, dump_function_decl): Use it.
(maybe_warn_cpp0x): Handle CPP0X_REF_QUALIFIER.
* pt.c (tsubst, tsubst_function_type): Instantiate ref-quals.
(unify): Retain them.
* tree.c (cp_check_qualified_type): New.
(cp_build_qualified_type_real): Keep exception spec and ref-qual.
(build_ref_qualified_type): New.
(strip_typedefs, build_exception_variant): Keep ref-qualifier.
(cp_build_type_attribute_variant): Keep ref-qualifier.
* typeck.c (merge_types): Keep ref-qualifier.
(structural_comptypes): Compare ref-qualifier.
(type_memfn_rqual): New.
(apply_memfn_quals): Take ref-qual argument.
* typeck2.c (build_m_component_ref): Check ref-qualifier.

Co-Authored-By: Jason Merrill <jason@redhat.com>
From-SVN: r197315

11 years agocp-tree.h (DECL_UNBOUND_CLASS_TEMPLATE_P): Remove.
Paolo Carlini [Mon, 1 Apr 2013 17:33:27 +0000 (17:33 +0000)]
cp-tree.h (DECL_UNBOUND_CLASS_TEMPLATE_P): Remove.

2013-04-01  Paolo Carlini  <paolo.carlini@oracle.com>

* cp-tree.h (DECL_UNBOUND_CLASS_TEMPLATE_P): Remove.
(DECL_FUNCTION_TEMPLATE_P): Adjust.

* cxx-pretty-print.c (pp_cxx_nested_name_specifier,
pp_cxx_qualified_id): Use get_containing_scope.
* parser.c (cp_parser_class_head): Likewise.
* pt.c (push_template_decl_real): Likewise.

* decl2.c (import_export_decl): Use DECL_TEMPLOID_INSTANTIATION.
* pt.c (unify): Use CP_INTEGRAL_TYPE_P.

From-SVN: r197309

11 years agoi386.md (*ashl<mode>3_mask): Rewrite as define_insn.
Wei Mi [Mon, 1 Apr 2013 17:27:46 +0000 (17:27 +0000)]
i386.md (*ashl<mode>3_mask): Rewrite as define_insn.

2013-04-01  Wei Mi  <wmi@google.com>

        * config/i386/i386.md (*ashl<mode>3_mask): Rewrite as define_insn.
        Truncate operand 2 using %b asm operand modifier.
        (*<shift_insn><mode>3_mask): Ditto.
        (*<rotate_insn><mode>3_mask): Ditto.

From-SVN: r197308

11 years agore PR middle-end/56798 (ICE in patch_jump_insn, at cfgrtl.c:1238)
Steven Bosscher [Mon, 1 Apr 2013 15:49:47 +0000 (15:49 +0000)]
re PR middle-end/56798 (ICE in patch_jump_insn, at cfgrtl.c:1238)

PR middle-end/56798
* cfgbuild.c (inside_basic_block_p): Restore check broken at r197234.

From-SVN: r197307

11 years agore PR fortran/56500 ([OOP] "IMPLICIT CLASS(...)" wrongly rejected)
Janus Weil [Mon, 1 Apr 2013 15:11:01 +0000 (17:11 +0200)]
re PR fortran/56500 ([OOP] "IMPLICIT CLASS(...)" wrongly rejected)

2013-04-01  Janus Weil  <janus@gcc.gnu.org>

PR fortran/56500
* symbol.c (gfc_set_default_type): Build class container for
IMPLICIT CLASS.

2013-04-01  Janus Weil  <janus@gcc.gnu.org>

PR fortran/56500
* gfortran.dg/implicit_class_1.f90: New.

From-SVN: r197306

11 years agoDaily bump.
GCC Administrator [Mon, 1 Apr 2013 00:16:46 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r197295

11 years agore PR libfortran/56786 (Namelist read fails with designators containing embedded...
Jerry DeLisle [Sun, 31 Mar 2013 20:37:19 +0000 (20:37 +0000)]
re PR libfortran/56786 (Namelist read fails with designators containing embedded spaces)

2013-03-31  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR fortran/56786
* gfortran.dg/namelist_81.f90:  New test.

From-SVN: r197291

11 years agore PR libfortran/56786 (Namelist read fails with designators containing embedded...
Jerry DeLisle [Sun, 31 Mar 2013 20:32:33 +0000 (20:32 +0000)]
re PR libfortran/56786 (Namelist read fails with designators containing embedded spaces)

2013-03-31  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR libfortran/56786
* io/list_read.c (nml_parse_qualifier): Remove spurious next_char call
when checking for EOF. Use error return mechanism when EOF detected.
Do not return false unless parse_err_msg and parse_err_msg_size have
been set. Use hit_eof.
(nml_get_obj_data): Likewise use the correct error mechanism.
* io/transfer.c (hit_eof): Do not set AFTER_ENDFILE if in namelist
mode.

From-SVN: r197290

11 years ago* de.po: Update.
Joseph Myers [Sun, 31 Mar 2013 16:09:50 +0000 (17:09 +0100)]
* de.po: Update.

From-SVN: r197287

11 years agosh.md (casesi_worker_1): Use next_active_insn instead of next_real_insn.
Kaz Kojima [Sun, 31 Mar 2013 13:12:31 +0000 (13:12 +0000)]
sh.md (casesi_worker_1): Use next_active_insn instead of next_real_insn.

* config/sh/sh.md (casesi_worker_1): Use next_active_insn instead
of next_real_insn.
(casesi_worker_2, casesi_shift_media, casesi_load_media): Likewise.

From-SVN: r197285

11 years agoallocator.xml: Adjust link to Dr.Dobb's article.q
Gerald Pfeifer [Sun, 31 Mar 2013 12:35:20 +0000 (12:35 +0000)]
allocator.xml: Adjust link to Dr.Dobb's article.q

* doc/xml/manual/allocator.xml: Adjust link to Dr.Dobb's article.q

* doc/xml/manual/appendix_contributing.xml: Adjust link to GNU
Coding Standards.

* doc/xml/manual/debug.xml: Adjust link for ThreadSanitizer.

* doc/xml/manual/debug_mode.xml: Adjust link for SafeSTL.

* doc/xml/manual/documentation_hacking.xml: Adjust Doxygen link.

* doc/xml/manual/messages.xml: Adjust link to Java API specs.

* doc/xml/manual/policy_data_structures: Remove direct link to
IBM Haifa Research Labs.

* doc/xml/manual/policy_data_structures_biblio.xml: Adjust links
for biblio.maverik_lowerbounds and biblio.nelson96stlpq.
Remove direct link to IBM Haifa Research Labs.

* doc/xml/manual/profile_mode.xml: Adjust two links to acm.org
papers.

* doc/xml/manual/shared_ptr.xml: Use canonical address for
www.boost.org.

From-SVN: r197284

11 years agodecl2.c (collect_candidates_for_java_method_aliases): Use DECL_CLASS_SCOPE_P.
Paolo Carlini [Sun, 31 Mar 2013 11:15:46 +0000 (11:15 +0000)]
decl2.c (collect_candidates_for_java_method_aliases): Use DECL_CLASS_SCOPE_P.

2013-03-31  Paolo Carlini  <paolo.carlini@oracle.com>

* decl2.c (collect_candidates_for_java_method_aliases): Use
DECL_CLASS_SCOPE_P.
* name-lookup.c (pushtag_1) Use TYPE_FUNCTION_SCOPE_P.
(pushdecl_maybe_friend_1): Use DECL_DECLARES_FUNCTION_P.
* decl.c (duplicate_decls): Likewise.
* parser.c (cp_parser_template_declaration_after_export): Likewise,
also DECL_DECLARES_TYPE_P.
* pt.c (instantiate_class_template_1): Likewise.
* search.c (lookup_field_1): Use DECL_DECLARES_TYPE_P.
(lookup_field_r): Likewise.
(friend_accessible_p): Use DECL_DECLARES_FUNCTION_P.
(lookup_fnfields_slot_nolazy): Likewise.
* semantics.c (finish_member_declaration): Likewise.
* typeck.c (convert_for_initialization): Use TYPE_REFFN_P.

From-SVN: r197283

11 years ago2013-03-31 Tobias Burnus <burnus@net-b.de>
Tobias Burnus [Sun, 31 Mar 2013 09:52:01 +0000 (11:52 +0200)]
2013-03-31  Tobias Burnus  <burnus@net-b.de>

        * class.c (finalization_scalarizer,
        * finalizer_insert_packed_call,
        generate_finalization_wrapper): Avoid segfault with absent SIZE=
        argment to TRANSFER and use correct result kind for SIZE.
        * intrinsic.c (gfc_isym_id_by_intmod): Also handle ids of
        nonmodules.
        * trans.c (gfc_build_final_call): Handle coarrays.

From-SVN: r197281

11 years agoDaily bump.
GCC Administrator [Sun, 31 Mar 2013 00:16:47 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r197276

11 years agoIn dse.c, remove alias hash tables that are never set.
Lawrence Crowl [Sat, 30 Mar 2013 23:34:22 +0000 (23:34 +0000)]
In dse.c, remove alias hash tables that are never set.

Remove conditions that are then never true.
Remove functions that are then never called.
Remove variables that are then never read.

Index: gcc/ChangeLog

2013-03-29  Lawrence Crowl  <crowl@google.com>

* dse.c (clear_alias_sets): Remove never set.
(disqualified_clear_alias_sets): Remove never set.
(clear_alias_mode_pool): Remove never set.
(dse_step0): Remove condition that is never true.
(canon_address): Remove condition that is never true.
(dse_step7): Remove condition that is never true.
(rest_of_handle_dse): Remove condition that is never true.
(rest_of_handle_dse::did_global): Remove never read from above.
(dse_step2_spill): Remove never called from above.
(dse_step5_spill): Remove never called from above.

From-SVN: r197272

11 years ago* vi.po: Update.
Joseph Myers [Sat, 30 Mar 2013 22:12:28 +0000 (22:12 +0000)]
* vi.po: Update.

From-SVN: r197270

11 years agomd.texi (Standard Names): Update documentation for JUMP_TABLE_DATA changes.
Steven Bosscher [Sat, 30 Mar 2013 14:54:34 +0000 (14:54 +0000)]
md.texi (Standard Names): Update documentation for JUMP_TABLE_DATA changes.

* doc/md.texi (Standard Names) <casesi>: Update documentation for
JUMP_TABLE_DATA changes.
* doc/tm.texi.in (Dispatch Tables) <ASM_OUTPUT_CASE_LABEL>: Likewise.
* doc/rtl.texi (Flags) <INSN_DELETED_P, SCHED_GROUP_P>: Likewise.
(Insns) <jump_table_data>: New entry.
* doc/tm.texi: Regenerate.

From-SVN: r197267

11 years agocfgrtl.c (fixup_reorder_chain): Do not emit barriers to BB_FOOTER.
Steven Bosscher [Sat, 30 Mar 2013 14:26:42 +0000 (14:26 +0000)]
cfgrtl.c (fixup_reorder_chain): Do not emit barriers to BB_FOOTER.

* cfgrtl.c (fixup_reorder_chain): Do not emit barriers to BB_FOOTER.

* postreload-gcse.c (bb_has_well_behaved_predecessors): Correct test
for table jump at the end of a basic block using tablejump_p.
* targhooks.c (default_invalid_within_doloop): Likewise.
* config/rs6000/rs6000.c (TARGET_INVALID_WITHIN_DOLOOP): Remove
target hook implementation that is identical to the default hook.
(rs6000_invalid_within_doloop): Remove.

* bb-reorder.c (fix_crossing_unconditional_branches): Remove set but
unused variable from tablejump_p call.

* rtl.def (JUMP_TABLE_DATA): New RTX_INSN object.
* rtl.h (RTX_PREV, RTX_NEXT): Adjust for new JUMP_TABLE_DATA.
(INSN_DELETED_P): Likewise.
(emit_jump_table_data): New prototype.
* gengtype.c (adjust_field_rtx_def): Handle JUMP_TABLE_DATA fields
after 4th as unused.
* print-rtl.c (print_rtl): Handle JUMP_TABLE_DATA.
* sched-vis.c (print_insn): Likewise.
* emit-rtl.c (active_insn_p): Consider JUMP_TABLE_DATA an active
insn for compatibility with back ends that use next_active_insn to
identify jump table data.
(set_insn_deleted): Remove no longer useful JUMP_TABLE_DATA_P check.
(remove_insn): Likewise.
(emit_insn): Do not accept JUMP_TABLE_DATA objects in insn chains
to be emitted.
(emit_debug_insn, emit_jump_insn, emit_call_insn, emit_label): Idem.
(emit_jump_table_data): New function.

* cfgbuild.c (inside_basic_block_p): A JUMP_INSN is always inside a
basic block, a JUMP_TABLE_DATA never is.
(control_flow_insn_p): JUMP_TABLE_DATA is not a control flow insn.
* cfgrtl.c (duplicate_insn_chain): Split handling of JUMP_TABLE_DATA
off from code handling real insns.
* final.c (get_attr_length_1): Simplify for JUMP_INSNs.
* function.c (instantiate_virtual_regs): Remove JUMP_TABLE_DATA_P
test, now redundant because JUMP_TABLE_DATA is not an INSN_P insn.
* gcse.c (insert_insn_end_basic_block): Likewise, JUMP_TABLE_DATA_P
is not a NONDEBUG_INSN_P.
* ira-costs.c (scan_one_insn): Likewise.
* jump.c (mark_all_labels): Likewise.
(mark_jump_label_1): Likewise.
* lra-eliminations.c (eliminate_regs_in_insn): Likewise.
* lra.c (get_insn_freq): Expect all insns reaching here to be in
a basic block.
(check_rtl): Remove JUMP_TABLE_DATA_P test, not a NONDEBUG_INSN_P insn.
* predict.c (expensive_function_p): Use FOR_BB_INSNS.
* reload1.c (calculate_needs_all_insns): Call set_label_offsets for
JUMP_TABLE_DATA_P insns.
(calculate_elim_costs_all_insns): Likewise.
(set_label_offsets): Recurse on the PATTERN of JUMP_TABLE_DATA insns.
(elimination_costs_in_insn): Remove redundant JUMP_TABLE_DATA_P test.
(delete_output_reload): Code style fixups.
* reorg.c (dbr_schedule): Move JUMP_TABLE_DATA_P up to avoid setting
insn flags on this non-insn.
* sched-rgn.c (add_branch_dependences): Treat JUMP_TABLE_DATA insns
as scheduling barriers, for pre-change compatibility.
* stmt.c (emit_case_dispatch_table): Emit jump table data not as
JUMP_INSN objects but instead as JUMP_TABLE_DATA objects.

* config/alpha/alpha.c (alpha_does_function_need_gp): Remove
redundant JUMP_TABLE_DATA_P test.
* config/arm/arm.c (thumb_far_jump_used_p): Likewise.
* config/frv/frv.c (frv_function_contains_far_jump): Likewise.
(frv_for_each_packet): Likewise.
* config/i386/i386.c (min_insn_size): Likewise.
(ix86_avoid_jump_mispredicts): Likewise.
* config/m32r/m32r.c (m32r_is_insn): Likewise.
* config/mep/mep.c (mep_reorg_erepeat): Likewise.
* config/mips/mips.c (USEFUL_INSN_P): Likewise.
(mips16_insn_length): Robustify.
(mips_has_long_branch_p): Remove redundant JUMP_TABLE_DATA_P test.
(mips16_split_long_branches): Likewise.
* config/pa/pa.c (pa_combine_instructions): Likewise.
* config/rs6000/rs6000.c (get_next_active_insn): Treat
JUMP_TABLE_DATA objects as active insns, like in active_insn_p.
* config/s390/s390.c (s390_chunkify_start): Treat JUMP_TABLE_DATA
as contributing to pool range lengths.
* config/sh/sh.c (find_barrier): Restore check for ADDR_DIFF_VEC.
Remove redundant JUMP_TABLE_DATA_P test.
(sh_loop_align): Likewise.
(split_branches): Likewise.
(sh_insn_length_adjustment): Likewise.
* config/spu/spu.c (get_branch_target): Likewise.

From-SVN: r197266

11 years agoMakefile.def (target_modules): Don't install libffi.
Matthias Klose [Sat, 30 Mar 2013 11:22:02 +0000 (11:22 +0000)]
Makefile.def (target_modules): Don't install libffi.

2013-03-30  Matthias Klose  <doko@ubuntu.com>

        * Makefile.def (target_modules): Don't install libffi.
        * Makefile.in: Regenerate.

From-SVN: r197264

11 years agoChangeLog: Add commit message from rev.
Thomas Koenig [Sat, 30 Mar 2013 10:23:09 +0000 (10:23 +0000)]
ChangeLog: Add commit message from rev.

2013-03-30  Thomas Koenig  <tkoenig@gcc.gnu.org>

* fortran/ChangeLog:  Add commit message from rev. 197261
* testsuite/ChangeLog:  Likewise.

From-SVN: r197262

11 years agotrans-expr.c (build_memcmp_call): New function.
Thomas Koenig [Sat, 30 Mar 2013 10:19:02 +0000 (10:19 +0000)]
trans-expr.c (build_memcmp_call): New function.

2013-03-30  Thomas Koenig  <tkoenig@gcc.gnu.org>

* trans-expr.c (build_memcmp_call):  New function.
(gfc_build_compare_string):  If the strings
compared have constant and equal lengths and
the strings are kind=1, or, for kind=4 strings,
the test is for (in)equality, use memcmp().

2013-03-30  Thomas Koenig  <tkoenig@gcc.gnu.org>

* gfortran.dg/character_comparison_3.f90:  Adjust for use of memcmp
for constant and equal string lengths.
* gfortran.dg/character_comparison_5.f90:  Likewise.
* gfortran.dg/character_comparison_9.f90:  New test.

From-SVN: r197261

11 years agopt.c (template_parms_to_args): Fix typo in comment.
Gabriel Dos Reis [Sat, 30 Mar 2013 02:35:41 +0000 (02:35 +0000)]
pt.c (template_parms_to_args): Fix typo in comment.

* pt.c (template_parms_to_args): Fix typo in comment.

From-SVN: r197259

11 years agoDaily bump.
GCC Administrator [Sat, 30 Mar 2013 00:16:32 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r197257

11 years agocall.c (build_op_call_1): Use TYPE_PTRFN_P and TYPE_REFFN_P.
Paolo Carlini [Fri, 29 Mar 2013 23:12:33 +0000 (23:12 +0000)]
call.c (build_op_call_1): Use TYPE_PTRFN_P and TYPE_REFFN_P.

2013-03-29  Paolo Carlini  <paolo.carlini@oracle.com>

* call.c (build_op_call_1): Use TYPE_PTRFN_P and TYPE_REFFN_P.

From-SVN: r197253