gcc.git
10 years agore PR c++/54812 ([C++11] Delete expression doesn't respect access of defaulted destru...
Paolo Carlini [Fri, 25 Oct 2013 10:54:56 +0000 (10:54 +0000)]
re PR c++/54812 ([C++11] Delete expression doesn't respect access of defaulted destructor)

2013-10-25  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/54812
* g++.dg/cpp0x/defaulted47.C: New.

From-SVN: r204057

10 years agore PR rtl-optimization/58831 (wrong code at -O2 and -O3 on x86_64-linux-gnu in 64...
Eric Botcazou [Fri, 25 Oct 2013 09:21:11 +0000 (09:21 +0000)]
re PR rtl-optimization/58831 (wrong code at -O2 and -O3 on x86_64-linux-gnu in 64-bit mode)

PR rtl-optimization/58831
* alias.c (init_alias_analysis): At the beginning of each iteration, set
the reg_seen[N] bit if static_reg_base_value[N] is non-null.

From-SVN: r204055

10 years agopr57793.c: Add expected error messages for targets with small integers.
Nick Clifton [Fri, 25 Oct 2013 09:04:53 +0000 (09:04 +0000)]
pr57793.c: Add expected error messages for targets with small integers.

* c-c++-common/pr57793.c: Add expected error messages for
targets with small integers.
* gcc.dg/c99-stdint-1.c: Only run on 32-bit plus targets.
* gcc.dg/c99-stdint-2.c: Likewise.
* gcc.dg/cdce1.c: Likewise.
* gcc.dg/fold-overflow-1.c: Likewise.
* gcc.dg/utf-cvt.c: Likewise.
* gcc.dg/ftrapv-1.c: Only run on targets that support trapping
arithmetic.
* gcc.dg/ftrapv-2.c: Likewise.
* gcc.dg/pr30286.c: Likewise.
* gcc.dg/pr19340.c: Only run on targets that support
scheduling.
* lib/target-supports.exp (check_effective_target_trapping): New
proc.  Returns true if the target supports trapping arithmetic.

From-SVN: r204053

10 years agorecog.c (search_ofs): New static variable moved from...
Eric Botcazou [Fri, 25 Oct 2013 08:55:19 +0000 (08:55 +0000)]
recog.c (search_ofs): New static variable moved from...

* recog.c (search_ofs): New static variable moved from...
(peep2_find_free_register): ...here.
(peephole2_optimize): Initialize it.

From-SVN: r204050

10 years agoinvoke.texi (fopenmp): Change supported OpenMP version to 4.0.
Tobias Burnus [Fri, 25 Oct 2013 08:20:11 +0000 (10:20 +0200)]
invoke.texi (fopenmp): Change supported OpenMP version to 4.0.

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

        * doc/invoke.texi (fopenmp): Change supported OpenMP version
        to 4.0.

From-SVN: r204049

10 years agoi386.h (TARGET_MPX): New define.
Uros Bizjak [Fri, 25 Oct 2013 07:08:14 +0000 (09:08 +0200)]
i386.h (TARGET_MPX): New define.

* config/i386/i386.h (TARGET_MPX): New define.
(TARGET_MPX_P): Ditto.

From-SVN: r204048

10 years agore PR other/33426 (Support of #pragma ivdep)
Tobias Burnus [Fri, 25 Oct 2013 05:47:25 +0000 (07:47 +0200)]
re PR other/33426 (Support of #pragma ivdep)

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

        PR other/33426
        * parser.c (cp_parser_iteration_statement,
        cp_parser_for, cp_parser_c_for, cp_parser_pragma): Handle
        IVDEP pragma.

        * g++.dg/parse/ivdep.C: New.
        * g++.dg/vect/pr33426-ivdep.cc: New.

From-SVN: r204047

10 years agoconstraints.md (B): New.
Ilya Enkovich [Fri, 25 Oct 2013 05:37:57 +0000 (05:37 +0000)]
constraints.md (B): New.

* config/i386/constraints.md (B): New.
(Ti): New.
(Tb): New.
* config/i386/i386-c.c (ix86_target_macros_internal): Add __MPX__.
* config/i386/i386-modes.def (BND32): New.
(BND64): New.
* config/i386/i386-protos.h (ix86_bnd_prefixed_insn_p): New.
* config/i386/i386.c (isa_opts): Add mmpx.
(regclass_map): Add bound registers.
(dbx_register_map): Likewise.
(dbx64_register_map): Likewise.
(svr4_dbx_register_map): Likewise.
(PTA_MPX): New.
(ix86_option_override_internal): Support MPX ISA.
(ix86_conditional_register_usage): Support bound registers.
(print_reg): Likewise.
(ix86_code_end): Add MPX bnd prefix.
(output_set_got): Likewise.
(ix86_output_call_insn): Likewise.
(ix86_print_operand): Add '!' (MPX bnd) print prefix support.
(ix86_print_operand_punct_valid_p): Likewise.
(ix86_print_operand_address): Support UNSPEC_BNDMK_ADDR and
UNSPEC_BNDMK_ADDR.
(ix86_class_likely_spilled_p): Add bound regs support.
(ix86_hard_regno_mode_ok): Likewise.
(x86_order_regs_for_local_alloc): Likewise.
(ix86_bnd_prefixed_insn_p): New.
* config/i386/i386.h (FIRST_PSEUDO_REGISTER): Fix to new value.
(FIXED_REGISTERS): Add bound registers.
(CALL_USED_REGISTERS): Likewise.
(REG_ALLOC_ORDER): Likewise.
(HARD_REGNO_NREGS): Likewise.
(TARGET_MPX): New.
(VALID_BND_REG_MODE): New.
(FIRST_BND_REG): New.
(LAST_BND_REG): New.
(reg_class): Add BND_REGS.
(REG_CLASS_NAMES): Likewise.
(REG_CLASS_CONTENTS): Likewise.
(BND_REGNO_P): New.
(ANY_BND_REG_P): New.
(BNDmode): New.
(HI_REGISTER_NAMES): Add bound registers.
* config/i386/i386.md (UNSPEC_BNDMK): New.
(UNSPEC_BNDMK_ADDR): New.
(UNSPEC_BNDSTX): New.
(UNSPEC_BNDLDX): New.
(UNSPEC_BNDLDX_ADDR): New.
(UNSPEC_BNDCL): New.
(UNSPEC_BNDCU): New.
(UNSPEC_BNDCN): New.
(UNSPEC_MPX_FENCE): New.
(BND0_REG): New.
(BND1_REG): New.
(type): Add mpxmov, mpxmk, mpxchk, mpxld, mpxst.
(length_immediate): Likewise.
(prefix_0f): Likewise.
(memory): Likewise.
(prefix_rep): Check for bnd prefix.
(length_nobnd): New.
(length): Use length_nobnd if specified.
(BND): New.
(bnd_ptr): New.
(BNDCHECK): New.
(bndcheck): New.
(*jcc_1): Add bnd prefix and rename length attr to length_nobnd.
(*jcc_2): Likewise.
(jump): Likewise.
(simple_return_internal): Likewise.
(simple_return_pop_internal): Likewise.
(*indirect_jump): Add MPX bnd prefix.
(*tablejump_1): Likewise.
(simple_return_internal_long): Likewise.
(simple_return_indirect_internal): Likewise.
(<mode>_mk): New.
(*<mode>_mk): New.
(mov<mode>): New.
(*mov<mode>_internal_mpx): New.
(<mode>_<bndcheck>): New.
(*<mode>_<bndcheck>): New.
(<mode>_ldx): New.
(*<mode>_ldx): New.
(<mode>_stx): New.
(*<mode>_stx): New.
* config/i386/predicates.md (lea_address_operand): Rename to...
(address_no_seg_operand): ... this.
(address_mpx_no_base_operand): New.
(address_mpx_no_index_operand): New.
(bnd_mem_operator): New.
* config/i386/i386.opt (mmpx): New.
* doc/invoke.texi: Add documentation for the flags -mmpx, -mno-mpx.
* doc/rtl.texi Add documentation for BND32mode and BND64mode.

From-SVN: r204046

10 years agomode-classes.def (MODE_POINTER_BOUNDS): New.
Ilya Enkovich [Fri, 25 Oct 2013 05:36:14 +0000 (05:36 +0000)]
mode-classes.def (MODE_POINTER_BOUNDS): New.

        * mode-classes.def (MODE_POINTER_BOUNDS): New.
        * tree.def (POINTER_BOUNDS_TYPE): New.
        * genmodes.c (complete_mode): Support MODE_POINTER_BOUNDS.
        (POINTER_BOUNDS_MODE): New.
        (make_pointer_bounds_mode): New.
        * machmode.h (POINTER_BOUNDS_MODE_P): New.
        * stor-layout.c (int_mode_for_mode): Support MODE_POINTER_BOUNDS.
        (layout_type): Support POINTER_BOUNDS_TYPE.
        * tree-pretty-print.c (dump_generic_node): Support POINTER_BOUNDS_TYPE.
        * tree.c (build_int_cst_wide): Support POINTER_BOUNDS_TYPE.
        (type_contains_placeholder_1): Likewise.
        * tree.h (POINTER_BOUNDS_TYPE_P): New.
        * varasm.c (output_constant): Support POINTER_BOUNDS_TYPE.
        * doc/rtl.texi (MODE_POINTER_BOUNDS): New.

From-SVN: r204045

10 years agoexpr.c (expand_expr_real_1): Use mode of memory reference rather than mode of address...
Igor Shevlyakov [Fri, 25 Oct 2013 05:06:49 +0000 (05:06 +0000)]
expr.c (expand_expr_real_1): Use mode of memory reference rather than mode of address computation when...

        * expr.c (expand_expr_real_1): Use mode of memory reference rather
        than mode of address computation when calling memory_address_addr_space.

From-SVN: r204044

10 years agoDaily bump.
GCC Administrator [Fri, 25 Oct 2013 00:17:02 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r204043

10 years agore PR rtl-optimization/58542 (Arguments of __atomic_* functions are converted in...
Richard Henderson [Thu, 24 Oct 2013 22:27:53 +0000 (15:27 -0700)]
re PR rtl-optimization/58542 (Arguments of __atomic_* functions are converted in unsigned mode)

PR rtl/58542

* optabs.c (maybe_emit_atomic_exchange): Use create_input_operand
instead of create_convert_operand_to.
(maybe_emit_sync_lock_test_and_set): Likewise.
(expand_atomic_compare_and_swap): Likewise.
(maybe_emit_compare_and_swap_exchange_loop): Don't convert_modes.

From-SVN: r204040

10 years agocgraph.c (cgraph_fnver_htab): Move GTY((...)) to be before htab_t.
Sriraman Tallam [Thu, 24 Oct 2013 20:26:52 +0000 (20:26 +0000)]
cgraph.c (cgraph_fnver_htab): Move GTY((...)) to be before htab_t.

2013-08-24  Sriraman Tallam  <tmsriram@google.com>

* cgraph.c (cgraph_fnver_htab): Move GTY((...)) to be before htab_t.
Change param_is to use the struct and not the pointer to the struct.

From-SVN: r204039

10 years agoCorrect the date, which was wrong in commit r204021
Tobias Burnus [Thu, 24 Oct 2013 19:23:36 +0000 (21:23 +0200)]
Correct the date, which was wrong in commit r204021

From-SVN: r204035

10 years agocompiler: Implement 3-index slicing.
Ian Lance Taylor [Thu, 24 Oct 2013 19:16:15 +0000 (19:16 +0000)]
compiler: Implement 3-index slicing.

From-SVN: r204034

10 years agogo-test.exp (errchk): Combine quoted strings in comments.
Ian Lance Taylor [Thu, 24 Oct 2013 19:08:45 +0000 (19:08 +0000)]
go-test.exp (errchk): Combine quoted strings in comments.

* go.test/go-test.exp (errchk): Combine quoted strings in
comments.

From-SVN: r204033

10 years agobuiltins.c (dummy_object, [...]): Move to gimplify.c.
Andrew MacLeod [Thu, 24 Oct 2013 19:02:44 +0000 (19:02 +0000)]
builtins.c (dummy_object, [...]): Move to gimplify.c.

* builtins.c (dummy_object, gimplify_va_arg_expr): Move to gimplify.c.
* gimplify.c (build_va_arg_indirect_ref, std_gimplify_va_arg_expr):
Move to targhooks.c.
(dummy_object, gimplify_va_arg_expr): Relocate from builtins.c.
* targhooks.c (build_va_arg_indirect_ref, std_gimplify_va_arg_expr):
Relocate from gimplify.c.
* targhooks.h: Add 2 prototypes.
* tree.h. Delete 2 prototypes.

From-SVN: r204032

10 years agotree-ssa-loop-ivopts.c (multiplier_allowed_in_address_p ): Check both [reg+mult*reg...
Igor Shevlyakov [Thu, 24 Oct 2013 18:55:12 +0000 (18:55 +0000)]
tree-ssa-loop-ivopts.c (multiplier_allowed_in_address_p ): Check both [reg+mult*reg] and [mult*reg] to determine if multiplier is allowed.

* tree-ssa-loop-ivopts.c (multiplier_allowed_in_address_p ): Check both
[reg+mult*reg] and [mult*reg] to determine if multiplier is allowed.

From-SVN: r204031

10 years agoconvert.c (convert_to_real): Guard those unsafe math function convertions with flag_u...
Cong Hou [Thu, 24 Oct 2013 18:10:38 +0000 (14:10 -0400)]
convert.c (convert_to_real): Guard those unsafe math function convertions with flag_unsafe_math_optimizations.

2013-10-24  Cong Hou  <congh@google.com>

    * convert.c (convert_to_real): Guard those unsafe math function
      convertions with flag_unsafe_math_optimizations.  Handle sqrt()
      specially.

2013-10-24  Cong Hou  <congh@google.com>

    * gcc.c-torture/execute/20030125-1.c: Update.

From-SVN: r204028

10 years agore PR other/58712 (issues found by --enable-checking=valgrind)
Markus Trippelsdorf [Thu, 24 Oct 2013 17:28:11 +0000 (17:28 +0000)]
re PR other/58712 (issues found by --enable-checking=valgrind)

        PR ipa/58712
        * cgraph.c (cgraph_create_edge_1): Add indirect_unknown_callee
        as argument.
        (cgraph_create_edge): Use the new argument.
        (cgraph_create_indirect_edge): Likewise.

From-SVN: r204026

10 years agoAdd missing part for last ChangeLog entry:
Joern Rennecke [Thu, 24 Oct 2013 17:16:19 +0000 (18:16 +0100)]
Add missing part for last ChangeLog entry:

(arc_ifcvt) <case 1 and 2>: Check that arc_ccfsm_post_advance
changes statep->state.

From-SVN: r204025

10 years agoarc.c (arc_ccfsm_post_advance): Also handle TYPE_UNCOND_BRANCH.
Joern Rennecke [Thu, 24 Oct 2013 17:11:01 +0000 (17:11 +0000)]
arc.c (arc_ccfsm_post_advance): Also handle TYPE_UNCOND_BRANCH.

        * gcc/config/arc/arc.c (arc_ccfsm_post_advance): Also handle
        TYPE_UNCOND_BRANCH.

From-SVN: r204024

10 years agore PR fortran/44646 ([F08] Implement DO CONCURRENT)
Tobias Burnus [Thu, 24 Oct 2013 16:30:22 +0000 (18:30 +0200)]
re PR fortran/44646 ([F08] Implement DO CONCURRENT)

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

        PR fortran/44646
        * trans-stmt.c (struct forall_info): Add do_concurrent field.
        (gfc_trans_forall_1): Set it for do concurrent.
        (gfc_trans_forall_loop): Mark those as annot_expr_ivdep_kind.

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

        PR fortran/44646
        * gfortran.dg/vect/vect-do-concurrent-1.f90: New.

From-SVN: r204023

10 years agodevirt3.C: New test.
Dehao Chen [Thu, 24 Oct 2013 16:27:57 +0000 (16:27 +0000)]
devirt3.C: New test.

2013-10-24  Dehao Chen  <dehao@google.com>

* g++.dg/opt/devirt3.C: New test.

From-SVN: r204022

10 years agore PR other/33426 (Support of #pragma ivdep)
Tobias Burnus [Thu, 24 Oct 2013 16:25:44 +0000 (18:25 +0200)]
re PR other/33426 (Support of #pragma ivdep)

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

        PR other/33426
        * c-pragma.c (init_pragma) Add #pragma ivdep handling.
        * c-pragma.h (pragma_kind): Add PRAGMA_IVDEP.

        PR other/33426
        * c-parser.c (c_parser_pragma, c_parser_for_statement):
        Handle PRAGMA_IVDEP.
        (c_parser_statement_after_labels): Update call.

        PR other/33426
        * tree-cfg.c (replace_loop_annotate): New function.
        (execute_build_cfg): Call it.
        * gimplify.c (gimple_boolify, gimplify_expr): Handle
        * ANNOTATE_EXPR.
        * internal-fn.c (expand_ANNOTATE): New function.
        * internal-fn.def (ANNOTATE): Define as new internal function.
        * tree-core.h (tree_node_kind): Add annot_expr_ivdep_kind.
        * tree-pretty-print.c (dump_generic_node): Handle ANNOTATE_EXPR.
        * tree.def (ANNOTATE_EXPR): New DEFTREECODE.
        * doc/extend.texi (Pragmas): Document #pragma ivdep.
        * doc/generic.texi (Expressions): Document ANNOTATE_EXPR.

        PR other/33426
        * testsuite/gcc.dg/ivdep.c: New.
        * testsuite/gcc.dg/vect/vect-ivdep-1.c: New.

From-SVN: r204021

10 years agoc-output-mod-2.c: Fix for -fPIC.
Kyrylo Tkachov [Thu, 24 Oct 2013 14:44:00 +0000 (14:44 +0000)]
c-output-mod-2.c: Fix for -fPIC.

[gcc/testsuite/]
2013-10-24  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

* gcc.target/aarch64/c-output-mod-2.c: Fix for -fPIC.
* gcc.target/aarch64/c-output-mod-3.c: Likewise.

From-SVN: r204019

10 years ago[AArch64,PATCH] Adjust preferred_reload_class of SP+C
Ian Bolton [Thu, 24 Oct 2013 14:31:45 +0000 (14:31 +0000)]
[AArch64,PATCH] Adjust preferred_reload_class of SP+C

Co-Authored-By: Marcus Shawcroft <marcus.shawcroft@arm.com>
From-SVN: r204018

10 years ago* gcc.dg/20020312-2.c: No PIC register for RL78 or MSP430.
Nick Clifton [Thu, 24 Oct 2013 14:22:46 +0000 (14:22 +0000)]
* gcc.dg/20020312-2.c: No PIC register for RL78 or MSP430.

From-SVN: r204017

10 years agogengtype.c (is_file_equal): Check that files will be same length.
Michael Matz [Thu, 24 Oct 2013 13:58:56 +0000 (13:58 +0000)]
gengtype.c (is_file_equal): Check that files will be same length.

* gengtype.c (is_file_equal): Check that files will be same
length.

From-SVN: r204015

10 years agore PR c++/58705 ([c++11] ICE with invalid initializer for _Complex variable)
Marek Polacek [Thu, 24 Oct 2013 13:54:00 +0000 (13:54 +0000)]
re PR c++/58705 ([c++11] ICE with invalid initializer for _Complex variable)

PR c++/58705
cp/
* typeck2.c (check_narrowing): Don't check narrowing when the scalar
initializer is empty.
testsuite/
* g++.dg/parse/pr58705.C: New test.

From-SVN: r204014

10 years agoconfig.gcc (sh-*): Add sh-mem.o to extra_obj.
Christian Bruel [Thu, 24 Oct 2013 13:47:27 +0000 (15:47 +0200)]
config.gcc (sh-*): Add sh-mem.o to extra_obj.

2013-10-25  Christian Bruel  <christian.bruel@st.com>

* config.gcc (sh-*): Add sh-mem.o to extra_obj.
* gcc/config/sh/t-sh (sh-mem.o): New rule.
* gcc/config/sh/sh-mem.cc (expand_block_move): Moved here.
(sh4_expand_cmpstr): New function.
* gcc/config/sh/sh.c (force_into, expand_block_move): Move to sh-mem.cc
* gcc/config/sh/sh-protos.h (sh4_expand_cmpstr): Declare.
* gcc/config/sh/sh.md (cmpstrsi, cmpstr_t): New patterns.
(rotlhi3_8): Rename.

From-SVN: r204013

10 years agoc-parser.c (c_parser_struct_declaration): Add a comment.
Marek Polacek [Thu, 24 Oct 2013 10:42:43 +0000 (10:42 +0000)]
c-parser.c (c_parser_struct_declaration): Add a comment.

c/
* c-parser.c (c_parser_struct_declaration): Add a comment.
(c_parser_declarator): Don't allow _Alignas here.
testsuite/
* gcc.dg/c1x-align-5.c: Add more testing.

From-SVN: r204007

10 years agoconfigure.ac (ZW_PROG_COMPILER_DEPENDENCIES): Use CXX instead of CC.
Jan-Benedict Glaw [Thu, 24 Oct 2013 10:15:52 +0000 (10:15 +0000)]
configure.ac (ZW_PROG_COMPILER_DEPENDENCIES): Use CXX instead of CC.

2013-10-24  Jan-Benedict Glaw  <jbglaw@lug-owl.de>

* configure.ac (ZW_PROG_COMPILER_DEPENDENCIES): Use CXX instead of CC.
* Makefile.in (CXXDEPMODE): Assign and change users.
(CCDEPMODE): Delete.
* configure: Regenerate.

From-SVN: r204006

10 years agoFix Ada bootstrap with Solaris /bin/ksh
Rainer Orth [Thu, 24 Oct 2013 08:51:51 +0000 (08:51 +0000)]
Fix Ada bootstrap with Solaris /bin/ksh

* gcc-interface/Make-lang.in (ADA_DEPS): Fix quoting.

From-SVN: r204005

10 years agogengtype: parse base classes for some GTY-marked types
David Malcolm [Thu, 24 Oct 2013 02:10:10 +0000 (02:10 +0000)]
gengtype: parse base classes for some GTY-marked types

2013-10-23  David Malcolm  <dmalcolm@redhat.com>

* gengtype-parse.c (require_without_advance): New.
(type): For GTY-marked types that are not GTY((user)), parse any
base classes, requiring them to be single-inheritance, and not
be templates.  For non-GTY-marked types and GTY((user)),
continue to skip over any C++ inheritance specification.
* gengtype-state.c (state_writer::write_state_struct_type):
Write base class of type (if any).
(read_state_struct_type): Read base class of type (if any).
* gengtype.c (new_structure): Add a "base_class" parameter.
(create_optional_field_): Update for new parameter to
new_structure.
(adjust_field_rtx_def): Likewise.
(adjust_field_tree_exp): Likewise.
* gengtype.h (struct type): Add "base_class" field to the s
union field.
(new_structure): Add "base" parameter.

From-SVN: r204003

10 years agoDaily bump.
GCC Administrator [Thu, 24 Oct 2013 00:16:54 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r204000

10 years agocompiler: use builtin runtime calls for integer to string and string to array convers...
Ian Lance Taylor [Wed, 23 Oct 2013 23:57:32 +0000 (23:57 +0000)]
compiler: use builtin runtime calls for integer to string and string to array conversions.

From-SVN: r203996

10 years agotestsuite_containergen.h: New.
Chris Jefferson [Wed, 23 Oct 2013 22:19:30 +0000 (22:19 +0000)]
testsuite_containergen.h: New.

2013-10-23  Chris Jefferson  <chris@bubblescope.net>
    Paolo Carlini  <paolo.carlini@oracle.com>

* testsuite/util/testsuite_containergen.h: New.
* testsuite/util/testsuite_iterators.h (test_container<>::val): Add.
* testsuite/25_algorithms/nth_element/random_test.cc: New, use the
above.
* testsuite/25_algorithms/partial_sort/random_test.cc: Likewise.
* testsuite/25_algorithms/partial_sort_copy/random_test.cc: Likewise.
* testsuite/25_algorithms/sort/random_test.cc: Likewise.

Co-Authored-By: Paolo Carlini <paolo.carlini@oracle.com>
From-SVN: r203995

10 years agodirect-move.h: Fix header for executable tests.
Pat Haugen [Wed, 23 Oct 2013 21:40:56 +0000 (21:40 +0000)]
direct-move.h: Fix header for executable tests.

* gcc.target/powerpc/direct-move.h: Fix header for executable tests.

From-SVN: r203994

10 years ago* testsuite/test-expandargv.c: Include unistd.h.
Gerald Pfeifer [Wed, 23 Oct 2013 21:31:45 +0000 (21:31 +0000)]
* testsuite/test-expandargv.c: Include unistd.h.

From-SVN: r203993

10 years agoFix up ChangeLog entries (name, e-mail, formatting, otherwise).
Gerald Pfeifer [Wed, 23 Oct 2013 21:30:54 +0000 (21:30 +0000)]
Fix up ChangeLog entries (name, e-mail, formatting, otherwise).

From-SVN: r203992

10 years agore PR target/57756 (Function target attribute is retaining state of previously seen...
Sriraman Tallam [Wed, 23 Oct 2013 21:13:50 +0000 (21:13 +0000)]
re PR target/57756 (Function target attribute is retaining  state of previously seen function)

PR target/57756

Replace further references to global_options in functions
ix86_option_override_internal and ix86_valid_target_attribute_tree
in config/i386/i386.c.

PR target/57756
* config/i386/i386.c (ix86_option_override_internal):
Change TARGET_SSE2 to TARGET_SSE2_P (opts->...)
(ix86_valid_target_attribute_tree):
Change TARGET_64BIT to TARGET_64BIT_P (opts->...)
Change TARGET_SSE to TARGET_SSE_P (opts->...)

From-SVN: r203991

10 years agoLWG 2165
Jason Merrill [Wed, 23 Oct 2013 19:16:37 +0000 (15:16 -0400)]
LWG 2165

LWG 2165
* method.c (defaulted_late_check): Delete on eh-spec mismatch.
(maybe_explain_implicit_delete): Explain it.

From-SVN: r203989

10 years agoc-format.c (gcc_cxxdiag_char_table): Add %X.
Jason Merrill [Wed, 23 Oct 2013 19:16:15 +0000 (15:16 -0400)]
c-format.c (gcc_cxxdiag_char_table): Add %X.

c-family/
* c-format.c (gcc_cxxdiag_char_table): Add %X.
cp/
* error.c (eh_spec_to_string): New.
(cp_printer): Use it for %X.

From-SVN: r203988

10 years agotree-ssa-loop.h: Remove include files.
Andrew MacLeod [Wed, 23 Oct 2013 18:55:46 +0000 (18:55 +0000)]
tree-ssa-loop.h: Remove include files.

* tree-ssa-loop.h: Remove include files.
* gengtype.c (open_base_files): Adjust include list for gtype-desc.c.
* cfgloopmanip.c: Move required includes from tree-ssa-loop.h.
* graphite-clast-to-gimple.c: Likewise.
* graphite-scop-detection.c: Likewise.
* graphite-sese-to-poly.c: Likewise.
* ipa-inline-analysis.c: Likewise.
* ipa-pure-const.c: Likewise.
* loop-init.c: Likewise.
* passes.c: Likewise.
* predict.c: Likewise.
* tree-cfg.c: Likewise.
* tree-cfgcleanup.c: Likewise.
* tree-chrec.c: Likewise.
* tree-data-ref.c: Likewise.
* tree-loop-distribution.c: Likewise.
* tree-parloops.c: Likewise.
* tree-predcom.c: Likewise.
* tree-scalar-evolution.c: Likewise.
* tree-ssa-address.c: Likewise.
* tree-ssa.c: Likewise.
* tree-ssa-dce.c: Likewise.
* tree-ssa-loop.c: Likewise.
* tree-ssa-loop-im.c: Likewise.
* tree-ssa-loop-ivcanon.c: Likewise.
* tree-ssa-loop-ivopts.c: Likewise.
* tree-ssa-loop-manip.c: Likewise.
* tree-ssa-loop-niter.c: Likewise.
* tree-ssa-loop-prefetch.c: Likewise.
* tree-ssa-loop-unswitch.c: Likewise.
* tree-ssa-reassoc.c: Likewise.
* tree-vect-data-refs.c: Likewise.
* tree-vect-loop.c: Likewise.
* tree-vect-loop-manip.c: Likewise.
* tree-vectorizer.c: Likewise.
* tree-vect-stmts.c: Likewise.
* tree-vrp.c: Likewise.

From-SVN: r203987

10 years agoIn C++11 a trivial [cd]tor might not be callable.
Jason Merrill [Wed, 23 Oct 2013 18:08:56 +0000 (14:08 -0400)]
In C++11 a trivial [cd]tor might not be callable.

* class.c (user_provided_p): A function deleted on its declation
in the class is not user-provided.
(type_build_ctor_call): Also force a ctor call if we
might have a deleted or private trivial ctor.
(type_build_dtor_call): New.
(deduce_noexcept_on_destructors): Remove obsolete code.
* cp-tree.h: Declare type_build_dtor_call.
* decl.c (expand_static_init): Make sure trivial dtors are callable.
(cxx_maybe_build_cleanup): Likewise.
* except.c (build_throw): Likewise.
* init.c (build_value_init): Handle trivial but not callable ctors.
(perform_target_ctor): Make sure trivial dtor is callable.
(perform_member_init): Likewise.
(expand_cleanup_for_base): Likewise.
(build_vec_delete_1): Likewise.
(build_delete): Likewise.
(push_base_cleanups): Likewise.
(build_new_1): Avoid redundant error.
* method.c (synthesized_method_walk): Can't ever exit early in C++11.
Always process the subobject destructor.
* semantics.c (finish_compound_literal): Make sure trivial dtor is
callable.
* typeck2.c (split_nonconstant_init): Likewise.

From-SVN: r203985

10 years ago* include/bits/hashtable.h (_Hashtable): Force EBO for _Hash_code_base.
Jason Merrill [Wed, 23 Oct 2013 18:08:46 +0000 (14:08 -0400)]
* include/bits/hashtable.h (_Hashtable): Force EBO for _Hash_code_base.

From-SVN: r203984

10 years agoaltivec.md (mulv8hi3): Adjust for little endian.
Bill Schmidt [Wed, 23 Oct 2013 16:23:42 +0000 (16:23 +0000)]
altivec.md (mulv8hi3): Adjust for little endian.

2013-10-23  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

* config/rs6000/altivec.md (mulv8hi3): Adjust for little endian.

From-SVN: r203980

10 years agore PR tree-optimization/58775 (reassoc1 causes an ICE with some bool arithmetic)
Jakub Jelinek [Wed, 23 Oct 2013 16:19:17 +0000 (18:19 +0200)]
re PR tree-optimization/58775 (reassoc1 causes an ICE with some bool arithmetic)

PR tree-optimization/58775
PR tree-optimization/58791
* tree-ssa-reassoc.c (reassoc_stmt_dominates_stmt_p): New function.
(insert_stmt_after): Rewritten, don't move the stmt, but really
insert it.
(get_stmt_uid_with_default): Remove.
(build_and_add_sum): Use insert_stmt_after and
reassoc_stmt_dominates_stmt_p.  Fix up uid if bb contains only
labels.
(update_range_test): Set uid on stmts added by
force_gimple_operand_gsi.  Don't immediately modify statements
in inter-bb optimization, just update oe->op values.
(optimize_range_tests): Return bool whether any changed have
been made.
(update_ops): New function.
(struct inter_bb_range_test_entry): New type.
(maybe_optimize_range_tests): Perform statement changes here.
(not_dominated_by, appears_later_in_bb, get_def_stmt,
ensure_ops_are_available): Remove.
(find_insert_point): Rewritten.
(rewrite_expr_tree): Remove MOVED argument, add CHANGED argument,
return LHS of the (new resp. old) stmt.  Don't call
ensure_ops_are_available, don't reuse SSA_NAMEs, recurse first
instead of last, move new stmt at the right place.
(linearize_expr, repropagate_negates): Don't reuse SSA_NAMEs.
(negate_value): Likewise.  Set uids.
(break_up_subtract_bb): Initialize uids.
(reassociate_bb): Adjust rewrite_expr_tree caller.
(do_reassoc): Don't call renumber_gimple_stmt_uids.

* gcc.dg/guality/pr58791-1.c: New test.
* gcc.dg/guality/pr58791-2.c: New test.
* gcc.dg/guality/pr58791-3.c: New test.
* gcc.dg/guality/pr58791-4.c: New test.
* gcc.dg/guality/pr58791-5.c: New test.
* gcc.c-torture/compile/pr58775.c: New test.
* gcc.dg/tree-ssa/reassoc-28.c: Don't scan reassoc1 dump.

From-SVN: r203979

10 years agore PR libstdc++/58850 (Conversion error in chrono)
Paolo Carlini [Wed, 23 Oct 2013 15:31:26 +0000 (15:31 +0000)]
re PR libstdc++/58850 (Conversion error in chrono)

2013-10-23  Paolo Carlini  <paolo.carlini@oracle.com>

PR libstdc++/58850
* include/std/chrono (minutes, hours): Change typedefs to uniformly
use int64_t.
* testsuite/20_util/duration/arithmetic/58850.cc: New.

From-SVN: r203978

10 years agore PR target/58838 (mullw sets condition code incorrectly.)
David Edelsohn [Wed, 23 Oct 2013 14:32:32 +0000 (14:32 +0000)]
re PR target/58838 (mullw sets condition code incorrectly.)

        PR target/58838
        * config/rs6000/rs6000.md (mulsi3_internal1 and splitter): Add
        TARGET_32BIT final condition.
        (mulsi3_internal2 and splitter): Same.

From-SVN: r203977

10 years agotree-ssa-threadedge.c (thread_across_edge): Do not allow threading through joiner...
Jeff Law [Wed, 23 Oct 2013 13:54:48 +0000 (07:54 -0600)]
tree-ssa-threadedge.c (thread_across_edge): Do not allow threading through joiner blocks with abnormal outgoing edges.

* tree-ssa-threadedge.c (thread_across_edge): Do not allow threading
through joiner blocks with abnormal outgoing edges.

* tree-ssa-threadupdate.c (thread_block_1): Renamed from thread_block.
Add parameter JOINERS, to allow/disallow threading through joiner
blocks.
(thread_block): New.  Call thread_block_1.
(mark_threaded_blocks): Remove code to filter out certain cases
of threading through joiner blocks.
(thread_through_all_blocks): Document how we can have a dangling
edge AUX field and clear it.

From-SVN: r203975

10 years agoinvoke.texi (Option Summary): Remove -fno-default-inline.
Ian Lance Taylor [Wed, 23 Oct 2013 13:28:11 +0000 (13:28 +0000)]
invoke.texi (Option Summary): Remove -fno-default-inline.

* doc/invoke.texi (Option Summary): Remove -fno-default-inline.
(C++ Dialect Options): Likewise.
(Optimize Options): Likewise.

From-SVN: r203974

10 years agoAdd missing check in stmt_local_def for tail-merge.
Tom de Vries [Wed, 23 Oct 2013 13:26:45 +0000 (13:26 +0000)]
Add missing check in stmt_local_def for tail-merge.

2013-10-22  Tom de Vries  <tom@codesourcery.com>

PR tree-optimization/58805
* tree-ssa-tail-merge.c (stmt_local_def): Add gimple_vdef check.

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

From-SVN: r203973

10 years agotree-vect-patterns.c (vect_recog_divmod_pattern): Optimize sequence based on get_rang...
Jakub Jelinek [Wed, 23 Oct 2013 12:45:21 +0000 (14:45 +0200)]
tree-vect-patterns.c (vect_recog_divmod_pattern): Optimize sequence based on get_range_info returned range.

* tree-vect-patterns.c (vect_recog_divmod_pattern): Optimize
sequence based on get_range_info returned range.

* gcc.target/i386/vect-div-1.c: New test.

From-SVN: r203969

10 years ago* gcc.dg/vect/pr58508.c: Remove dg-options.
Jakub Jelinek [Wed, 23 Oct 2013 12:44:06 +0000 (14:44 +0200)]
* gcc.dg/vect/pr58508.c: Remove dg-options.

From-SVN: r203968

10 years agotree-ssa.h: Remove all #include's
Andrew MacLeod [Wed, 23 Oct 2013 12:16:58 +0000 (12:16 +0000)]
tree-ssa.h: Remove all #include's

* tree-ssa.h: Remove all #include's
* gengtype.c (open_base_files): Adjust include list for gtype-desc.c.
* alias.c: Move required includes from tree-ssa.h.
* asan.c: Likewise.
* builtins.c: Likewise.
* calls.c: Likewise.
* cfgexpand.c: Likewise.
* cfghooks.c: Likewise.
* cfgloop.c: Likewise.
* cfgloopmanip.c: Likewise.
* cgraph.c: Likewise.
* cgraphbuild.c: Likewise.
* cgraphclones.c: Likewise.
* cgraphunit.c: Likewise.
* dse.c: Likewise.
* except.c: Likewise.
* expr.c: Likewise.
* final.c: Likewise.
* fold-const.c: Likewise.
* ggc-page.c: Likewise.
* gimple-builder.c: Likewise.
* gimple-fold.c: Likewise.
* gimple-iterator.c: Likewise.
* gimple-low.c: Likewise.
* gimple-pretty-print.c: Likewise.
* gimple-ssa-strength-reduction.c: Likewise.
* gimple-streamer-in.c: Likewise.
* gimple-streamer-out.c: Likewise.
* gimplify.c: Likewise.
* graphite-blocking.c: Likewise.
* graphite-clast-to-gimple.c: Likewise.
* graphite-dependences.c: Likewise.
* graphite-interchange.c: Likewise.
* graphite-optimize-isl.c: Likewise.
* graphite-poly.c: Likewise.
* graphite-scop-detection.c: Likewise.
* graphite-sese-to-poly.c: Likewise.
* graphite.c: Likewise.
* ipa-cp.c: Likewise.
* ipa-inline-analysis.c: Likewise.
* ipa-inline-transform.c: Likewise.
* ipa-inline.c: Likewise.
* ipa-prop.c: Likewise.
* ipa-pure-const.c: Likewise.
* ipa-reference.c: Likewise.
* ipa-split.c: Likewise.
* ipa-utils.c: Likewise.
* loop-init.c: Likewise.
* lto-cgraph.c: Likewise.
* lto-section-in.c: Likewise.
* lto-section-out.c: Likewise.
* lto-streamer-in.c: Likewise.
* lto-streamer-out.c: Likewise.
* lto-streamer.c: Likewise.
* omp-low.c: Likewise.
* passes.c: Likewise.
* predict.c: Likewise.
* print-tree.c: Likewise.
* profile.c: Likewise.
* sese.c: Likewise.
* targhooks.c: Likewise.
* tracer.c: Likewise.
* trans-mem.c: Likewise.
* tree-call-cdce.c: Likewise.
* tree-cfg.c: Likewise.
* tree-cfgcleanup.c: Likewise.
* tree-chrec.c: Likewise.
* tree-complex.c: Likewise.
* tree-data-ref.c: Likewise.
* tree-dfa.c: Likewise.
* tree-eh.c: Likewise.
* tree-emutls.c: Likewise.
* tree-if-conv.c: Likewise.
* tree-inline.c: Likewise.
* tree-into-ssa.c: Likewise.
* tree-loop-distribution.c: Likewise.
* tree-mudflap.c: Likewise.
* tree-nested.c: Likewise.
* tree-nrv.c: Likewise.
* tree-object-size.c: Likewise.
* tree-outof-ssa.c: Likewise.
* tree-parloops.c: Likewise.
* tree-phinodes.c: Likewise.
* tree-predcom.c: Likewise.
* tree-pretty-print.c: Likewise.
* tree-profile.c: Likewise.
* tree-scalar-evolution.c: Likewise.
* tree-sra.c: Likewise.
* tree-ssa-address.c: Likewise.
* tree-ssa-alias.c: Likewise.
* tree-ssa-ccp.c: Likewise.
* tree-ssa-coalesce.c: Likewise.
* tree-ssa-copy.c: Likewise.
* tree-ssa-copyrename.c: Likewise.
* tree-ssa-dce.c: Likewise.
* tree-ssa-dom.c: Likewise.
* tree-ssa-dse.c: Likewise.
* tree-ssa-forwprop.c: Likewise.
* tree-ssa-ifcombine.c: Likewise.
* tree-ssa-live.c: Likewise.
* tree-ssa-loop-ch.c: Likewise.
* tree-ssa-loop-im.c: Likewise.
* tree-ssa-loop-ivcanon.c: Likewise.
* tree-ssa-loop-ivopts.c: Likewise.
* tree-ssa-loop-manip.c: Likewise.
* tree-ssa-loop-niter.c: Likewise.
* tree-ssa-loop-prefetch.c: Likewise.
* tree-ssa-loop-unswitch.c: Likewise.
* tree-ssa-loop.c: Likewise.
* tree-ssa-math-opts.c: Likewise.
* tree-ssa-operands.c: Likewise.
* tree-ssa-phiopt.c: Likewise.
* tree-ssa-phiprop.c: Likewise.
* tree-ssa-pre.c: Likewise.
* tree-ssa-propagate.c: Likewise.
* tree-ssa-reassoc.c: Likewise.
* tree-ssa-sccvn.c: Likewise.
* tree-ssa-sink.c: Likewise.
* tree-ssa-strlen.c: Likewise.
* tree-ssa-structalias.c: Likewise.
* tree-ssa-tail-merge.c: Likewise.
* tree-ssa-ter.c: Likewise.
* tree-ssa-threadedge.c: Likewise.
* tree-ssa-threadupdate.c: Likewise.
* tree-ssa-uncprop.c: Likewise.
* tree-ssa-uninit.c: Likewise.
* tree-ssa.c: Likewise.
* tree-ssanames.c: Likewise.
* tree-stdarg.c: Likewise.
* tree-streamer-in.c: Likewise.
* tree-switch-conversion.c: Likewise.
* tree-tailcall.c: Likewise.
* tree-vect-data-refs.c: Likewise.
* tree-vect-generic.c: Likewise.
* tree-vect-loop-manip.c: Likewise.
* tree-vect-loop.c: Likewise.
* tree-vect-patterns.c: Likewise.
* tree-vect-slp.c: Likewise.
* tree-vect-stmts.c: Likewise.
* tree-vectorizer.c: Likewise.
* tree-vrp.c: Likewise.
* tree.c: Likewise.
* tsan.c: Likewise.
* value-prof.c: Likewise.
* var-tracking.c: Likewise.
* varpool.c: Likewise.
* vtable-verify.c: Likewise.

From-SVN: r203967

10 years agocontrib.texi ([Fran@,{c}ois Dumont], [...]): New entries.
Paolo Carlini [Wed, 23 Oct 2013 11:59:07 +0000 (11:59 +0000)]
contrib.texi ([Fran@,{c}ois Dumont], [...]): New entries.

2013-10-22  Paolo Carlini  <paolo.carlini@oracle.com>

* doc/contrib.texi ([Fran@,{c}ois Dumont], [Tim Shen],
[Ed Smith-Rowland]): New entries.
([Stephen M. Webb]): Update.

From-SVN: r203959

10 years agopr58830.c: New testcase.
Richard Biener [Wed, 23 Oct 2013 11:57:21 +0000 (11:57 +0000)]
pr58830.c: New testcase.

2013-10-23  Richard Biener  <rguenther@suse.de>

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

From-SVN: r203957

10 years agore PR libstdc++/58815 (Casting/Conversion operator for std::decimal not supported)
Paolo Carlini [Wed, 23 Oct 2013 11:48:26 +0000 (11:48 +0000)]
re PR libstdc++/58815 (Casting/Conversion operator for std::decimal not supported)

2013-10-23  Paolo Carlini  <paolo.carlini@oracle.com>

PR libstdc++/58815
* include/decimal/decimal (decimal32::operator long long(),
decimal64::operator long long(), decimal128::operator long long()):
Add in c++11 mode per n3407.
* testsuite/decimal/pr58815.cc: New.

From-SVN: r203956

10 years agoImplement C++14 [[deprecated]] modulo [[gnu::deprecated]] bugs.
Edward Smith-Rowland [Wed, 23 Oct 2013 11:43:25 +0000 (11:43 +0000)]
Implement C++14 [[deprecated]] modulo [[gnu::deprecated]] bugs.

gcc/cp:

2013-10-23  Edward Smith-Rowland  <3dw4rd@verizon.net>

Implement C++14 [[deprecated]] modulo [[gnu::deprecated]] bugs.
* parser.c (cp_parser_std_attribute): Interpret [[deprecated]]
as [[gnu::deprecated]].

gcc/testsuite:

2013-10-23  Edward Smith-Rowland  <3dw4rd@verizon.net>

Implement C++14 [[deprecated]] modulo [[gnu::deprecated]] bugs.
* g++.dg/cpp1y/attr-deprecated.C: New.
* g++.dg/cpp1y/attr-deprecated-neg.C: New.

From-SVN: r203955

10 years agotilegx.c: Include "tree.h".
Jan-Benedict Glaw [Wed, 23 Oct 2013 10:39:45 +0000 (10:39 +0000)]
tilegx.c: Include "tree.h".

2013-10-23  Jan-Benedict Glaw  <jbglaw@lug-owl.de>

* config/tilegx/tilegx.c: Include "tree.h".

From-SVN: r203952

10 years agogimple-pretty-print.c (dump_ssaname_info): Always print "# " before the info, not...
Jakub Jelinek [Wed, 23 Oct 2013 06:32:23 +0000 (08:32 +0200)]
gimple-pretty-print.c (dump_ssaname_info): Always print "# " before the info, not after it.

* gimple-pretty-print.c (dump_ssaname_info): Always print "# " before
the info, not after it.
(gump_gimple_phi): Add COMMENT argument, if true, print "# " after
dump_ssaname_info call.
(pp_gimple_stmt_1): Adjust caller.
(dump_phi_nodes): Likewise.  Don't print "# " here.

From-SVN: r203947

10 years agore PR fortran/58793 (Wrong value for _vtab for intrinsic types with CLASS(*): storage...
Tobias Burnus [Wed, 23 Oct 2013 05:44:02 +0000 (07:44 +0200)]
re PR fortran/58793 (Wrong value for _vtab for intrinsic types with CLASS(*): storage_size of class(*) gives wrong result)

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

        PR fortran/58793
        * interface.c (compare_parameter): Reject passing TYPE(*)
        to CLASS(*).

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

        PR fortran/58793
        * gfortran.dg/assumed_type_8.f90: New.

From-SVN: r203945

10 years agoDaily bump.
GCC Administrator [Wed, 23 Oct 2013 00:17:19 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r203944

10 years agobasic_string.h (operator""s): Remove space between quotes and literal identifier.
Edward Smith-Rowland [Wed, 23 Oct 2013 00:12:36 +0000 (00:12 +0000)]
basic_string.h (operator""s): Remove space between quotes and literal identifier.

2013-10-22  Edward Smith-Rowland  <3dw4rd@verizon.net>

* include/bits/basic_string.h (operator""s): Remove space between quotes
and literal identifier.
* include/std/chrono (operator""h, operator""min, operator""s,
operator""ms, operator""us, operator""ns): Ditto.

From-SVN: r203941

10 years agoImplement N3779 - User-defined Literals for std::complex, part 2 of UDL for Standard...
Ed Smith-Rowland [Wed, 23 Oct 2013 00:09:19 +0000 (00:09 +0000)]
Implement N3779 - User-defined Literals for std::complex, part 2 of UDL for Standard Library Types

2013-09-27  Ed Smith-Rowland  <3dw4rd@verizon.net>

Implement N3779 - User-defined Literals for std::complex,
part 2 of UDL for Standard Library Types
* include/std/complex: Add complex literal operators.
* testsuite/26_numerics/complex/literals/types.cc: New.
* testsuite/26_numerics/complex/literals/values.cc: New.

From-SVN: r203940

10 years ago++0x -> ++11.
Mike Stump [Tue, 22 Oct 2013 23:23:51 +0000 (23:23 +0000)]
++0x -> ++11.

From-SVN: r203939

10 years agoi386.h (TARGET_MISALIGNED_MOVE_STRING_PROLOGUES_EPILOGUES): New tuning flag.
Jan Hubicka [Tue, 22 Oct 2013 19:15:02 +0000 (21:15 +0200)]
i386.h (TARGET_MISALIGNED_MOVE_STRING_PROLOGUES_EPILOGUES): New tuning flag.

* i386.h (TARGET_MISALIGNED_MOVE_STRING_PROLOGUES_EPILOGUES): New tuning flag.
* x86-tune.def (TARGET_MISALIGNED_MOVE_STRING_PROLOGUES): Define it.
* i386.c (expand_small_movmem_or_setmem): New function.
(expand_set_or_movmem_prologue_epilogue_by_misaligned_moves): New function
(alg_usable_p): Add support for value ranges; cleanup.
(ix86_expand_set_or_movmem): Add support for misaligned moves.

From-SVN: r203937

10 years agoAdd new option -ggnu-pubnames.
Sterling Augustine [Tue, 22 Oct 2013 19:01:26 +0000 (19:01 +0000)]
Add new option -ggnu-pubnames.

2013-10-22  Sterling Augustine  <saugustine@google.com>

* doc/invoke.texi: Document -ggnu-pubnames.
* common.opt: Add new option -ggnu-pubnames and modify -gpubnames
logic.
* dwarf2out.c: Include gdb/gdb-index.h.
(DEBUG_PUBNAMES_SECTION, DEBUG_PUBTYPES_SECTION): Handle
debug_generate_pub_sections.
(is_java, output_pubtables, output_pubname): New functions.
(include_pubname_in_output): Handle debug_generate_pub_sections at
level 2.
(size_of_pubnames): Use new local space_for_flags based on
debug_generate_pub_sections.
(output_pubnames): Unify pubnames and pubtypes output logic.
Genericize comments.  Call output_pubname.
(dwarf2out_finish): Move logic to output_pubnames and call it.

From-SVN: r203936

10 years agore PR target/58779 (wrong code at -O1 on x86_64-linux-gnu)
Uros Bizjak [Tue, 22 Oct 2013 18:35:53 +0000 (20:35 +0200)]
re PR target/58779 (wrong code at -O1 on x86_64-linux-gnu)

PR target/58779
* config/i386/i386.c (put_condition_code) <case GTU, case LEU>:
Remove CCCmode handling.
<case LTU>: Return 'c' suffix for CCCmode.
<case GEU>: Return 'nc' suffix for CCCmode.
(ix86_cc_mode) <case GTU, case LEU>: Do not generate overflow checks.
* config/i386/i386.md (*sub<mode>3_cconly_overflow): Remove.
(*sub<mode>3_cc_overflow): Ditto.
(*subsi3_zext_cc_overflow): Ditto.

testsuite/ChangeLog:

PR target/58779
* gcc.target/i386/pr30315.c: Remove MINUSCC, DECCC, MINUSCCONLY
and MINUSCCZEXT defines. Update scan-assembler dg directive.
* gcc.dg/torture/pr58779.c: New test.

From-SVN: r203935

10 years agonor.c: New.
Steve Ellcey [Tue, 22 Oct 2013 18:25:56 +0000 (18:25 +0000)]
nor.c: New.

2013-10-22  Steve Ellcey  <sellcey@mips.com>

* gcc.target/mips/nor.c: New.

From-SVN: r203934

10 years agomips.c (mips_rtx_costs): Fix cost estimate for nor (AND (NOT OP1) (NOT OP2)).
Steve Ellcey [Tue, 22 Oct 2013 18:24:43 +0000 (18:24 +0000)]
mips.c (mips_rtx_costs): Fix cost estimate for nor (AND (NOT OP1) (NOT OP2)).

2013-10-22  Steve Ellcey  <sellcey@mips.com>

* config/mips/mips.c (mips_rtx_costs):  Fix cost estimate for nor
(AND (NOT OP1) (NOT OP2)).

From-SVN: r203932

10 years agogdb-index.h: Merge from gdb tree.
Sterling Augustine [Tue, 22 Oct 2013 18:12:28 +0000 (18:12 +0000)]
gdb-index.h: Merge from gdb tree.

2013-10-22  Sterling Augustine  <saugustine@google.com>

* gdb/gdb-index.h: Merge from gdb tree.

From-SVN: r203931

10 years agors6000.c (altivec_expand_vec_perm_const): Reverse meaning of merge-high and merge...
Bill Schmidt [Tue, 22 Oct 2013 17:31:17 +0000 (17:31 +0000)]
rs6000.c (altivec_expand_vec_perm_const): Reverse meaning of merge-high and merge-low masks for little endian...

gcc:

2013-10-22  Bill Schmidt  <wschmidt@vnet.ibm.com>

* config/rs6000/rs6000.c (altivec_expand_vec_perm_const): Reverse
meaning of merge-high and merge-low masks for little endian; avoid
use of vector-pack masks for little endian for mismatched modes.

gcc/testsuite:

2013-10-22  Bill Schmidt  <wschmidt@vnet.ibm.com>

* gcc.target/powerpc/altivec-perm-1.c: Move the two vector pack
tests into...
* gcc.target/powerpc/altivec-perm-3.c: ...this new test, which is
restricted to big-endian targets.

From-SVN: r203930

10 years agoRename c1x-*.c to c11-*.c.
Mike Stump [Tue, 22 Oct 2013 16:56:06 +0000 (16:56 +0000)]
Rename c1x-*.c to c11-*.c.

From-SVN: r203929

10 years agoc1x --> c11.
Mike Stump [Tue, 22 Oct 2013 16:41:53 +0000 (16:41 +0000)]
c1x --> c11.

From-SVN: r203928

10 years agoc1x --> c11.
Mike Stump [Tue, 22 Oct 2013 16:36:22 +0000 (16:36 +0000)]
c1x --> c11.

From-SVN: r203927

10 years agotilepro.c: Include "tree.h".
Jan-Benedict Glaw [Tue, 22 Oct 2013 13:19:18 +0000 (13:19 +0000)]
tilepro.c: Include "tree.h".

2013-10-22  Jan-Benedict Glaw  <jbglaw@lug-owl.de>

* config/tilepro/tilepro.c: Include "tree.h".

From-SVN: r203924

10 years agom68k.c (notice_update_cc): Handle register conflict with PRE_DEC.
Andreas Schwab [Tue, 22 Oct 2013 12:36:08 +0000 (12:36 +0000)]
m68k.c (notice_update_cc): Handle register conflict with PRE_DEC.

* config/m68k/m68k.c (notice_update_cc): Handle register conflict
with PRE_DEC.

From-SVN: r203922

10 years agore PR c++/58816 (ICE have tree_list in private_is_attribute_p)
Paolo Carlini [Tue, 22 Oct 2013 11:46:59 +0000 (11:46 +0000)]
re PR c++/58816 (ICE have tree_list in private_is_attribute_p)

2013-10-22  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/58816
* pt.c (apply_late_template_attributes): Use get_attribute_name,
not TREE_PURPOSE.

From-SVN: r203919

10 years agocontrib.texi ([Fran@,{c}ois Dumont], [...]): New entries.
Paolo Carlini [Tue, 22 Oct 2013 10:43:31 +0000 (10:43 +0000)]
contrib.texi ([Fran@,{c}ois Dumont], [...]): New entries.

2013-10-22  Paolo Carlini  <paolo.carlini@oracle.com>

* doc/contrib.texi ([Fran@,{c}ois Dumont], [Tim Shen],
[Ed Smith-Rowland]): New entries.
([Stephen M. Webb]): Update.

From-SVN: r203917

10 years agoPR fortran 57893
Paul Thomas [Tue, 22 Oct 2013 04:40:57 +0000 (04:40 +0000)]
PR fortran 57893

2013-10-22  Paul Thomas  <pault@gcc.gnu.org>

PR fortran 57893
* class.c : Include target-memory.h.
(gfc_find_intrinsic_vtab) Build a minimal expression so that
gfc_element_size can be used to obtain the storage size, rather
that the kind value.

2013-10-22  Paul Thomas  <pault@gcc.gnu.org>

PR fortran 57893
* gfortran.dg/unlimited_polymorphic_13.f90 : New test.

From-SVN: r203915

10 years agotree-ssa-ter.h: Remove duplicate copy of file contents.
Andrew MacLeod [Tue, 22 Oct 2013 04:32:04 +0000 (04:32 +0000)]
tree-ssa-ter.h: Remove duplicate copy of file contents.

* tree-ssa-ter.h: Remove duplicate copy of file contents.

From-SVN: r203914

10 years agoDaily bump.
GCC Administrator [Tue, 22 Oct 2013 00:16:47 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r203913

10 years agore PR fortran/58803 (Proc-pointer component: free_components deallocates twice pointe...
Tobias Burnus [Mon, 21 Oct 2013 19:39:19 +0000 (21:39 +0200)]
re PR fortran/58803 (Proc-pointer component: free_components deallocates twice pointer p->tb at symbol.c:2068)

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

        PR fortran/58803
        * decl.c (match_ppc_decl): Prevent later
        double free.

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

        PR fortran/58803
        * gfortran.dg/proc_ptr_comp_38.f90: New.

From-SVN: r203909

10 years agoRe-factor inclusion of tree.h.
Diego Novillo [Mon, 21 Oct 2013 19:36:37 +0000 (15:36 -0400)]
Re-factor inclusion of tree.h.

This moves tree.h out of every header. This exposes dependencies of
tree.h in files that should probably not need it after tree and gimple
are separated.

After this change, no header should include tree.h directly. It should
only be included by a .c file. Unfortunately, I did not find an
automatic way of forcing this.

Tested on x86_64 with all languages enabled and using
contrib/config-list.mk.

2013-10-21  Diego Novillo  <dnovillo@google.com>

* asan.c: Include tree.h
* bb-reorder.c: Likewise.
* cfgcleanup.c: Likewise.
* cfgloopmanip.c: Likewise.
* data-streamer-in.c: Likewise.
* data-streamer-out.c: Likewise.
* data-streamer.c: Likewise.
* dwarf2cfi.c: Likewise.
* graphite-blocking.c: Likewise.
* graphite-clast-to-gimple.c: Likewise.
* graphite-dependences.c: Likewise.
* graphite-interchange.c: Likewise.
* graphite-optimize-isl.c: Likewise.
* graphite-poly.c: Likewise.
* graphite-scop-detection.c: Likewise.
* graphite-sese-to-poly.c: Likewise.
* graphite.c: Likewise.
* ipa-devirt.c: Likewise.
* ipa-profile.c: Likewise.
* ipa.c: Likewise.
* ira.c: Likewise.
* loop-init.c: Likewise.
* loop-unroll.c: Likewise.
* lower-subreg.c: Likewise.
* lto/lto-object.c: Likewise.
* recog.c: Likewise.
* reginfo.c: Likewise.
* tree-loop-distribution.c: Likewise.
* tree-parloops.c: Likewise.
* tree-ssa-strlen.c: Likewise.
* tree-streamer.c: Likewise.
* value-prof.c: Likewise.
* target-globals.c: Likewise.
* expr.h: Include tree-core.h instead of tree.h.
* gimple.h: Likewise.
* ipa-prop.h: Likewise.
* ipa-utils.h: Likewise.
* lto-streamer.h: Likewise.
* streamer-hooks.h: Likewise.
* ipa-reference.h: Include cgraph.h instead of tree.h.
* cgraph.h: Include basic-block.h instead of tree.h.
* tree-streamer.h: Do not include tree.h.
* genattrtab.c (write_header): Generate inclusion of
tree.h.
* genautomata.c (main): Likewise.
* genemit.c: Likewise.
* genopinit.c: Likewise.
* genoutput.c (output_prologue): Likewise.
* genpeep.c: Likewise.

testsuite/ChangeLog

* g++.dg/plugin/selfassign.c: Include tree.h.
* gcc.dg/plugin/finish_unit_plugin.c: Likewise.
* gcc.dg/plugin/ggcplug.c: Likewise.
* gcc.dg/plugin/one_time_plugin.c: Likewise.
* gcc.dg/plugin/selfassign.c: Likewise.
* gcc.dg/plugin/start_unit_plugin.c: Likewise.

From-SVN: r203908

10 years agore PR middle-end/58809 (ICE with complex variable in OpenMP reduction clause)
Marek Polacek [Mon, 21 Oct 2013 18:40:34 +0000 (18:40 +0000)]
re PR middle-end/58809 (ICE with complex variable in OpenMP reduction clause)

PR middle-end/58809
* fold-const.c (fold_range_test): Return 0 if the type is not
an integral type.
testsuite/
* gcc.dg/gomp/pr58809.c: New test.

From-SVN: r203907

10 years agosystem.h: Move hwint.h include further down.
Richard Sandiford [Mon, 21 Oct 2013 18:32:23 +0000 (18:32 +0000)]
system.h: Move hwint.h include further down.

gcc/
* system.h: Move hwint.h include further down.
* hwint.h (sext_hwi, zext_hwi): Define unconditionally.  Add
gcc_checking_asserts.
* hwint.c (sext_hwi, zext_hwi): Delete ENABLE_CHECKING versions.

From-SVN: r203906

10 years agoMAINTAINERS (Write After Approval): Add myself.
Cong Hou [Mon, 21 Oct 2013 18:08:49 +0000 (14:08 -0400)]
MAINTAINERS (Write After Approval): Add myself.

2013-10-21  Cong Hou  <congh@google.com>

        * MAINTAINERS (Write After Approval): Add myself.

From-SVN: r203904

10 years ago20050922-1.c: Remove stdlib.h and declare abort().
Vidya Praveen [Mon, 21 Oct 2013 16:50:09 +0000 (17:50 +0100)]
20050922-1.c: Remove stdlib.h and declare abort().

        * gcc.dg/20050922-1.c: Remove stdlib.h and declare abort().
        * gcc.dg/20050922-1.c: Remove stdlib.h and declare abort() and
        exit().

From-SVN: r203901

10 years agoFix volatile issues in optimize_bit_field_compare.
Bernd Edlinger [Mon, 21 Oct 2013 15:57:05 +0000 (15:57 +0000)]
Fix volatile issues in optimize_bit_field_compare.

2013-10-21  Bernd Edlinger  <bernd.edlinger@hotmail.de>

        Fix volatile issues in optimize_bit_field_compare.
        * fold-const.c (optimize_bit_field_compare): Bail out if
        lvolatilep or rvolatilep.

From-SVN: r203899

10 years agoFix DECL_BIT_FIELD depencency on flag_strict_volatile_bitfields and...
Bernd Edlinger [Mon, 21 Oct 2013 15:51:48 +0000 (15:51 +0000)]
Fix DECL_BIT_FIELD depencency on flag_strict_volatile_bitfields and...

2013-10-21  Bernd Edlinger  <bernd.edlinger@hotmail.de>

        Fix DECL_BIT_FIELD depencency on flag_strict_volatile_bitfields
        and get_inner_reference returning different pmode for non-volatile
        bit-field members dependent on flag_strict_volatile_bitfields.
        * stor-layout.c (layout_decl): Remove special handling of
        flag_strict_volatile_bitfields.
        * expr.c (get_inner_reference): Don't use DECL_BIT_FIELD
        if flag_strict_volatile_bitfields > 0 and TREE_THIS_VOLATILE.

From-SVN: r203898

10 years agoipa-inline.c (edge_badness): Cap edge->count at max_count for badness calculations.
Paulo Matos [Mon, 21 Oct 2013 15:41:46 +0000 (15:41 +0000)]
ipa-inline.c (edge_badness): Cap edge->count at max_count for badness calculations.

* ipa-inline.c (edge_badness): Cap edge->count at max_count for badness
calculations.

From-SVN: r203897

10 years agotree-ssa-threadedge.c (thread_through_normal_block): New argument VISITED.
Jeff Law [Mon, 21 Oct 2013 15:25:09 +0000 (09:25 -0600)]
tree-ssa-threadedge.c (thread_through_normal_block): New argument VISITED.

       * tree-ssa-threadedge.c (thread_through_normal_block): New argument VISITED.
        Remove VISISTED as a local variable.  When we have a threadable jump, verify
        the destination of the jump has not been visised.
        (thread_across_edge): Allocate VISITED bitmap once at function scope and
        use it throughout.  Make sure to set appropriate bits in VISITED for E (start
        of jump thread path).

        * tree-ssa-threadupdate.c (mark_threaded_blocks): Reject threading through
        a joiner if any edge on the path has a recorded jump thread.

From-SVN: r203895

10 years agoinvoke.texi (Optimize Options): For -fno-toplevel-reorder, don't imply that attribute...
Ian Lance Taylor [Mon, 21 Oct 2013 15:09:59 +0000 (15:09 +0000)]
invoke.texi (Optimize Options): For -fno-toplevel-reorder, don't imply that attributes can solve all problems.

* doc/invoke.texi (Optimize Options): For -fno-toplevel-reorder,
don't imply that attributes can solve all problems.
(Directory Options): Fix typo.

From-SVN: r203894

10 years agore PR libstdc++/58804 (dynamic_bitset<> uses popcountl on long long)
Edward Smith-Rowland [Mon, 21 Oct 2013 13:52:39 +0000 (13:52 +0000)]
re PR libstdc++/58804 (dynamic_bitset<> uses popcountl on long long)

2013-10-20  Edward Smith-Rowland  <3dw4rd@verizon.net>

PR libstdc++/58804
PR libstdc++/58729
* include/tr2/dynamic_bitset
(__dynamic_bitset_base<_WordT, _Alloc>::_M_are_all_aux,
__dynamic_bitset_base<_WordT, _Alloc>::_M_do_count):
Use __builtin_popcountll() instead of __builtin_popcountl().
* include/tr2/dynamic_bitset.tcc
(__dynamic_bitset_base<_WordT, _Alloc>::_M_do_find_first,
__dynamic_bitset_base<_WordT, _Alloc>::_M_do_find_next):
Use __builtin_ctzll() instead of __builtin_ctzl().

From-SVN: r203893

10 years agoarm.c (cortexa9_extra_costs): Update mult costs for extend and extend_add.
Kyrylo Tkachov [Mon, 21 Oct 2013 13:44:11 +0000 (13:44 +0000)]
arm.c (cortexa9_extra_costs): Update mult costs for extend and extend_add.

[gcc/]
2013-10-21  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

* config/arm/arm.c (cortexa9_extra_costs): Update mult costs for
extend and extend_add.

From-SVN: r203892

10 years agore PR tree-optimization/58794 (ICE in set_lattice_value, at tree-ssa-ccp.c:455 on...
Richard Biener [Mon, 21 Oct 2013 13:33:29 +0000 (13:33 +0000)]
re PR tree-optimization/58794 (ICE in set_lattice_value, at tree-ssa-ccp.c:455 on x86_64-linux-gnu (at -O1, -O2, and -O3))

2013-10-21  Richard Biener  <rguenther@suse.de>

PR tree-optimization/58794
* fold-const.c (operand_equal_p): Compare FIELD_DECL operand
of COMPONENT_REFs with OEP_CONSTANT_ADDRESS_OF left in place.

* c-c++-common/torture/pr58794-1.c: New testcase.
* c-c++-common/torture/pr58794-2.c: Likewise.

From-SVN: r203891

10 years agore PR middle-end/58742 (pointer arithmetic simplification)
Richard Biener [Mon, 21 Oct 2013 11:34:04 +0000 (11:34 +0000)]
re PR middle-end/58742 (pointer arithmetic simplification)

2013-10-21  Richard Biener  <rguenther@suse.de>

PR middle-end/58742
* fold-const.c (fold_binary_loc): Fold ((T) (X /[ex] C)) * C
to (T) X for sign-changing conversions (or no conversion).

* c-c++-common/fold-divmul-1.c: New testcase.

From-SVN: r203890