gccadmin [Mon, 28 Oct 2013 00:17:00 +0000 (00:17 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204115
138bc75d-0d04-0410-961f-
82ee72b054a4
vries [Sun, 27 Oct 2013 23:36:51 +0000 (23:36 +0000)]
Fix line number data for PIC register setup code.
2013-10-27 Tom de Vries <tom@codesourcery.com>
* cfgexpand.c (gimple_expand_cfg): Remove test for parm_birth_insn.
Don't commit insertions after NOTE_INSN_FUNCTION_BEG.
* gcc.target/arm/require-pic-register-loc.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204112
138bc75d-0d04-0410-961f-
82ee72b054a4
olegendo [Sun, 27 Oct 2013 22:43:01 +0000 (22:43 +0000)]
Fix change log entry.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204111
138bc75d-0d04-0410-961f-
82ee72b054a4
olegendo [Sun, 27 Oct 2013 22:40:25 +0000 (22:40 +0000)]
* config/sh/sh.c (MSW, LSW): Move and rename macros to...
* config/sh/sh.h (SH_REG_MSW_OFFSET, SH_REG_LSW_OFFSET): ... here.
(TARGET_BIG_ENDIAN): New macro.
* config/sh/sh.md: Use it instead of !TARGET_LITTLE_ENDIAN.
Use SH_REG_MSW_OFFSET and SH_REG_LSW_OFFSET.
* config/sh/sh.c: Likewise.
* config/sh/sh.h: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204110
138bc75d-0d04-0410-961f-
82ee72b054a4
uros [Sun, 27 Oct 2013 20:32:29 +0000 (20:32 +0000)]
PR target/58679
* gcc.target/i386/pr58679-1.c: New test.
* gcc.target/i386/pr58679-2.c: Ditto.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204109
138bc75d-0d04-0410-961f-
82ee72b054a4
rsandifo [Sun, 27 Oct 2013 18:50:01 +0000 (18:50 +0000)]
gcc/c-family/
* c-lex.c (interpret_integer): Remove call to cpp_num_sign_extend.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204108
138bc75d-0d04-0410-961f-
82ee72b054a4
gerald [Sun, 27 Oct 2013 18:35:20 +0000 (18:35 +0000)]
* testsuite/test-demangle.c: Include unistd.h.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204107
138bc75d-0d04-0410-961f-
82ee72b054a4
hp [Sun, 27 Oct 2013 14:42:53 +0000 (14:42 +0000)]
* config/cris/cris.c (cris_emit_trap_for_misalignment): Replace the
removed PRED_MUDFLAP with PRED_NORETURN. Correct file-path in comment.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204106
138bc75d-0d04-0410-961f-
82ee72b054a4
burnus [Sun, 27 Oct 2013 07:40:31 +0000 (07:40 +0000)]
2013-10-27 Tobias Burnus <burnus@net-b.de>
gcc/c/
PR other/33426
* c-parser.c (c_parser_while_statement,
* c_parser_while_statement,
c_parser_pragma): Add GCC ivdep support to 'do' and 'while'.
(c_parser_statement_after_labels): Update calls.
gcc/testsuite/
PR other/33426
* gcc.dg/vect/vect-ivdep-2.c: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204102
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Sun, 27 Oct 2013 00:17:11 +0000 (00:17 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204101
138bc75d-0d04-0410-961f-
82ee72b054a4
olegendo [Sat, 26 Oct 2013 23:26:14 +0000 (23:26 +0000)]
* config/sh/sh.md (movmemsi): Remove empty constraints and predicates.
Fix formatting.
(cmpstr_t, cmpstrsi): Fix formatting.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204098
138bc75d-0d04-0410-961f-
82ee72b054a4
olegendo [Sat, 26 Oct 2013 22:07:37 +0000 (22:07 +0000)]
PR target/52483
* config/sh/predicates.md (general_movdst_operand): Allow reg+reg
addressing, do not use general_operand for memory operands.
PR target/52483
* gcc.target/sh/pr52483-1.c: Add tests for memory stores.
* gcc.target/sh/pr52483-2.c: Likewise.
* gcc.target/sh/pr52483-3.c: Likewise.
* gcc.target/sh/pr52483-4.c: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204097
138bc75d-0d04-0410-961f-
82ee72b054a4
vmakarov [Sat, 26 Oct 2013 17:02:49 +0000 (17:02 +0000)]
2013-10-26 Vladimir Makarov <vmakarov@redhat.com>
Revert:
2013-10-25 Vladimir Makarov <vmakarov@redhat.com>
* lra-spills.c (lra_final_code_change): Remove useless move insns.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204094
138bc75d-0d04-0410-961f-
82ee72b054a4
timshen [Sat, 26 Oct 2013 16:09:28 +0000 (16:09 +0000)]
2013-10-26 Tim Shen <timshen91@gmail.com>
* include/bits/regex.h: Remove unnecessary friends.
* include/bits/regex.tcc (__regex_algo_impl<>): Move __get_executor
to here.
* include/bits/regex_executor.h: Remove _DFSExecutor and _BFSExecutor;
they are merged into _Executor. Eliminate quantifier tracking part, so
it's faster.
* include/bits/regex_executor.tcc: Implement _Executor.
* testsuite/28_regex/algorithms/regex_match/ecma/char/ungreedy.cc: New.
* testsuite/28_regex/algorithms/regex_search/ecma/greedy.cc: Adjust
duplicate testcases.
* testsuite/performance/28_regex/split.h: New.
* testsuite/performance/28_regex/split_bfs.cc: New.
* testsuite/util/testsuite_regex.h: Adjust behavior of two-executors
agreement judger: do not compare match_results when executor return
false.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204093
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Sat, 26 Oct 2013 10:24:19 +0000 (10:24 +0000)]
* predict.c (PRED_MUDFLAP): Remove.
* targhooks.c (build_va_arg_indirect_ref): Remove mudflap support.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204091
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Sat, 26 Oct 2013 10:14:34 +0000 (10:14 +0000)]
* Makefile.def (target_modules): Remove libmudflap
(languages): Remove check-target-libmudflap).
* Makefile.in: Rebuilt.
* Makefile.tpl (check-target-libmudflap-c++): Remove.
* configure.ac (target_libraries): Remove target-libmudflap.
Remove checks which disabled libmudflap on some systems.
* configure: Rebuilt.
* libmudflap: Directory removed.
* Makefile.in (C_COMMON_OBJS): Remove tree-mudflap.
(OBJS): Remove tree-nomudflap.o
(GTFILES): Remove tree-mudflap.c
* builtins.c (expand_builtin_alloc): Remove mudflap support.
* gcc.c (MFWRAP_SPEC, MFLIB_SPEC): Likewise.
(mfwrap_spec, mflib_spec): Likewise.
(cpp_unique_options, cc1_options, static_specs): Likewise.
* gimplify (gimplify_vla_decl, build_va_arg_indirect_ref): Likewise.
* passes.def: Likewise.
* toplev.c (compile_file, process_options): Likewise.
* tree-inline.c (copy_tree_r): Likewise.
* tree-pass.,h (make_pass_mudflap_1, make_pass_mudflap_2): Likewise.
* varasm.c (make_decl_rtl, make_decl_rtl_for_debug): Likewise.
(build_constant_desc, output_constant_def_contents): Likewise.
(categorize_decl_for_section): Likewise.
* tree-mudflap.c: Removed.
* tree-mudflap.h: Removed.
* tree-nomudflap.c: Removed.
* bfin/uclinux.h (MFWRAP_SPEC): Remove.
* moxie/uclinux.h (MFWRAP_SPEC): Likewise.
* rs6000/aix.h (MFWRAP_SPEC, MFLIB_SPEC): Likewise.
* config/sol2.h (MFLIB_SPEC): Likewise.
* doc/install.texi: Remove mudflap references.
* doc/passes.texi: Similarly.
* doc/sourcebuild.texi: Similarly.
* doc/invoke.texi: Remove mudlfap related options.
* c-family/c-common.c (c_define_builtins): Remove mudflap support.
* c-family/c.opt: Ignore and warn for mudflap options.
* g++.dg/torture/pr49309.C: Removed.
* gcc.dg/dfp/pr35739.c: Removed.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204090
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Sat, 26 Oct 2013 00:17:13 +0000 (00:17 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204083
138bc75d-0d04-0410-961f-
82ee72b054a4
vmakarov [Fri, 25 Oct 2013 21:34:26 +0000 (21:34 +0000)]
2013-10-25 Vladimir Makarov <vmakarov@redhat.com>
PR rtl-optimization/58759
* lra-constraints.c (lra_constraints): Remove wrong condition to
remove insn setting up an equivalent pseudo.
2013-10-25 Vladimir Makarov <vmakarov@redhat.com>
PR rtl-optimization/58759
* gcc.target/i386/pr58759.c: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204080
138bc75d-0d04-0410-961f-
82ee72b054a4
vmakarov [Fri, 25 Oct 2013 21:06:38 +0000 (21:06 +0000)]
2013-10-25 Vladimir Makarov <vmakarov@redhat.com>
* config/rs6000/rs6000-protos.h
(rs6000_secondary_memory_needed_mode): New prototype.
* config/rs6000/rs6000.c: Include ira.h.
(TARGET_LRA_P): Redefine.
(rs6000_legitimate_offset_address_p): Call
legitimate_constant_pool_address_p in strict mode for LRA.
(rs6000_legitimate_address_p): Ditto.
(legitimate_lo_sum_address_p): Add code for LRA.
Use lra_in_progress.
(rs6000_emit_move): Add LRA version of code to generate load/store
of SDmode values.
(rs6000_secondary_memory_needed_mode): New.
(rs6000_alloc_sdmode_stack_slot): Do nothing for LRA.
(rs6000_secondary_reload_class): Return NO_REGS for LRA for
constants, memory, and FP registers.
(rs6000_lra_p): New.
* config/rs6000/rs6000.h (SECONDARY_MEMORY_NEEDED_MODE): New
macro.
* config/rs6000/rs6000.opt (mlra): New option.
* lra-spills.c (lra_final_code_change): Remove useless move insns.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204079
138bc75d-0d04-0410-961f-
82ee72b054a4
fdumont [Fri, 25 Oct 2013 19:25:06 +0000 (19:25 +0000)]
2013-10-25 François Dumont <fdumont@gcc.gnu.org>
* include/debug/formatter.h (__check_singular): Add const on
iterator reference.
* include/debug/functions.h (__check_singular): Likewise.
(__check_singular(const _Safe_iterator<_Ite, _Seq>&)): Delete.
(__check_dereferenceable(const _Ite&)): Add const on iterator
reference.
(__check_dereferenceable(const _Safe_local_iterator<>&)): New.
* include/debug/safe_iterator.h (__check_singular_aux): Review
comment.
* testsuite/23_containers/vector/debug/debug_functions.cc: New.
* testsuite/23_containers/unordered_set/debug/debug_functions.cc:
New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204075
138bc75d-0d04-0410-961f-
82ee72b054a4
burnus [Fri, 25 Oct 2013 19:25:00 +0000 (19:25 +0000)]
2013-10-25 Tobias Burnus <burnus@net-b.de>
* g++.dg/vect/pr33426-ivdep.cc: Use dg-options.
* gfortran.dg/vect/vect-do-concurrent-1.f90: Ditto.
* testsuite/gcc.dg/vect/vect-ivdep-1.c: Ditto.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204074
138bc75d-0d04-0410-961f-
82ee72b054a4
yufeng [Fri, 25 Oct 2013 17:25:08 +0000 (17:25 +0000)]
gcc/
* tree-ssa-math-opts.c (convert_plusminus_to_widen): Call
has_single_use () and not do the conversion if has_single_use ()
returns false for the multiplication result.
gcc/testsuite/
* gcc.dg/wmul-1.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204072
138bc75d-0d04-0410-961f-
82ee72b054a4
paolo [Fri, 25 Oct 2013 16:26:10 +0000 (16:26 +0000)]
/cp
2013-10-25 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/58878
* pt.c (check_template_shadow): Don't skip declarations in inline
member templates.
/testsuite
2013-10-25 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/58878
* g++.dg/template/pr58878.C: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204071
138bc75d-0d04-0410-961f-
82ee72b054a4
dmalcolm [Fri, 25 Oct 2013 15:00:35 +0000 (15:00 +0000)]
Fix names of various macro parameters in tree.h
* tree.h (EXCEPTIONAL_CLASS_P): Rename parameter from "CODE"
to "NODE", since this works on a "tree", not an
"enum tree_code".
(CONSTANT_CLASS_P): Likewise.
(TYPE_P): Likewise.
(DECL_P): Likewise.
(INDIRECT_REF_P): Likewise.
(REFERENCE_CLASS_P): Likewise.
(COMPARISON_CLASS_P): Likewise.
(UNARY_CLASS_P): Likewise.
(BINARY_CLASS_P): Likewise.
(STATEMENT_CLASS_P): Likewise.
(VL_EXP_CLASS_P): Likewise.
(EXPRESSION_CLASS_P): Likewise.
(IS_TYPE_OR_DECL_P): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204070
138bc75d-0d04-0410-961f-
82ee72b054a4
gary [Fri, 25 Oct 2013 13:56:51 +0000 (13:56 +0000)]
libiberty/
2013-10-25 Gary Benson <gbenson@redhat.com>
* cp-demangle.c (struct d_saved_scope): New structure.
(struct d_print_info): New fields saved_scopes and
num_saved_scopes.
(d_print_init): Initialize the above.
(d_print_free): New function.
(cplus_demangle_print_callback): Call the above.
(d_copy_templates): New function.
(d_print_comp): New variables saved_templates and
need_template_restore.
[DEMANGLE_COMPONENT_REFERENCE,
DEMANGLE_COMPONENT_RVALUE_REFERENCE]: Capture scope the first
time the component is traversed, and use the captured scope for
subsequent traversals.
* testsuite/demangle-expected: Add regression test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204068
138bc75d-0d04-0410-961f-
82ee72b054a4
glisse [Fri, 25 Oct 2013 12:35:51 +0000 (12:35 +0000)]
2013-10-25 Marc Glisse <marc.glisse@inria.fr>
gcc/
* tree-ssa-alias.c (ao_ref_init_from_ptr_and_size): Look for an
ADDR_EXPR in the defining statement.
gcc/testsuite/
* gcc.dg/tree-ssa/alias-23.c: New file.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204065
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Fri, 25 Oct 2013 11:51:11 +0000 (11:51 +0000)]
2013-10-25 Richard Biener <rguenther@suse.de>
PR tree-optimization/58626
* tree-loop-distribution.c (enum rdg_dep_type): Remove
anti_dd, output_dd and input_dd.
(struct rdg_edge): Remove level and relation members.
(RDGE_LEVEL, RDGE_RELATION): Remove.
(dot_rdg_1): Adjust.
(create_rdg_edge_for_ddr): Remove.
(create_rdg_edges_for_scalar): Adjust.
(create_edge_for_control_dependence): Likewise.
(create_rdg_edges): Split into ...
(create_rdg_flow_edges): ... this
(create_rdg_cd_edges): ... and this.
(free_rdg): Adjust.
(build_rdg): Likewise, do not compute data dependences or
add edges for them.
(pg_add_dependence_edges): New function.
(pgcmp): Likewise.
(distribute_loop): First apply all non-dependence based
partition mergings. Then compute dependences between partitions
and merge and order partitions according to them.
* gcc.dg/torture/pr58626.c: New testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204062
138bc75d-0d04-0410-961f-
82ee72b054a4
paolo [Fri, 25 Oct 2013 10:54:56 +0000 (10:54 +0000)]
2013-10-25 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/54812
* g++.dg/cpp0x/defaulted47.C: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204057
138bc75d-0d04-0410-961f-
82ee72b054a4
ebotcazou [Fri, 25 Oct 2013 09:21:11 +0000 (09:21 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204055
138bc75d-0d04-0410-961f-
82ee72b054a4
nickc [Fri, 25 Oct 2013 09:04:53 +0000 (09:04 +0000)]
* 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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204053
138bc75d-0d04-0410-961f-
82ee72b054a4
ebotcazou [Fri, 25 Oct 2013 08:55:19 +0000 (08:55 +0000)]
* recog.c (search_ofs): New static variable moved from...
(peep2_find_free_register): ...here.
(peephole2_optimize): Initialize it.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204050
138bc75d-0d04-0410-961f-
82ee72b054a4
burnus [Fri, 25 Oct 2013 08:20:11 +0000 (08:20 +0000)]
2013-10-25 Tobias Burnus <burnus@net-b.de>
* doc/invoke.texi (fopenmp): Change supported OpenMP version
to 4.0.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204049
138bc75d-0d04-0410-961f-
82ee72b054a4
uros [Fri, 25 Oct 2013 07:08:14 +0000 (07:08 +0000)]
* config/i386/i386.h (TARGET_MPX): New define.
(TARGET_MPX_P): Ditto.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204048
138bc75d-0d04-0410-961f-
82ee72b054a4
burnus [Fri, 25 Oct 2013 05:47:25 +0000 (05:47 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204047
138bc75d-0d04-0410-961f-
82ee72b054a4
kyukhin [Fri, 25 Oct 2013 05:37:57 +0000 (05:37 +0000)]
* 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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204046
138bc75d-0d04-0410-961f-
82ee72b054a4
kyukhin [Fri, 25 Oct 2013 05:36:14 +0000 (05:36 +0000)]
* 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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204045
138bc75d-0d04-0410-961f-
82ee72b054a4
law [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 calling memory_address_addr_space.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204044
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Fri, 25 Oct 2013 00:17:02 +0000 (00:17 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204043
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Thu, 24 Oct 2013 22:27:53 +0000 (22:27 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204040
138bc75d-0d04-0410-961f-
82ee72b054a4
tmsriram [Thu, 24 Oct 2013 20:26:52 +0000 (20:26 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204039
138bc75d-0d04-0410-961f-
82ee72b054a4
burnus [Thu, 24 Oct 2013 19:23:36 +0000 (19:23 +0000)]
Correct the date, which was wrong in commit r204021
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204035
138bc75d-0d04-0410-961f-
82ee72b054a4
ian [Thu, 24 Oct 2013 19:16:15 +0000 (19:16 +0000)]
compiler: Implement 3-index slicing.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204034
138bc75d-0d04-0410-961f-
82ee72b054a4
ian [Thu, 24 Oct 2013 19:08:45 +0000 (19:08 +0000)]
* go.test/go-test.exp (errchk): Combine quoted strings in
comments.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204033
138bc75d-0d04-0410-961f-
82ee72b054a4
amacleod [Thu, 24 Oct 2013 19:02:44 +0000 (19:02 +0000)]
* 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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204032
138bc75d-0d04-0410-961f-
82ee72b054a4
law [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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204031
138bc75d-0d04-0410-961f-
82ee72b054a4
congh [Thu, 24 Oct 2013 18:10:38 +0000 (18:10 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204028
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Thu, 24 Oct 2013 17:28:11 +0000 (17:28 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204026
138bc75d-0d04-0410-961f-
82ee72b054a4
amylaar [Thu, 24 Oct 2013 17:16:19 +0000 (17:16 +0000)]
Add missing part for last ChangeLog entry:
(arc_ifcvt) <case 1 and 2>: Check that arc_ccfsm_post_advance
changes statep->state.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204025
138bc75d-0d04-0410-961f-
82ee72b054a4
amylaar [Thu, 24 Oct 2013 17:11:01 +0000 (17:11 +0000)]
* gcc/config/arc/arc.c (arc_ccfsm_post_advance): Also handle
TYPE_UNCOND_BRANCH.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204024
138bc75d-0d04-0410-961f-
82ee72b054a4
burnus [Thu, 24 Oct 2013 16:30:22 +0000 (16:30 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204023
138bc75d-0d04-0410-961f-
82ee72b054a4
dehao [Thu, 24 Oct 2013 16:27:57 +0000 (16:27 +0000)]
2013-10-24 Dehao Chen <dehao@google.com>
* g++.dg/opt/devirt3.C: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204022
138bc75d-0d04-0410-961f-
82ee72b054a4
burnus [Thu, 24 Oct 2013 16:25:44 +0000 (16:25 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204021
138bc75d-0d04-0410-961f-
82ee72b054a4
ktkachov [Thu, 24 Oct 2013 14:44:00 +0000 (14:44 +0000)]
[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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204019
138bc75d-0d04-0410-961f-
82ee72b054a4
mshawcroft [Thu, 24 Oct 2013 14:31:45 +0000 (14:31 +0000)]
[AArch64,PATCH] Adjust preferred_reload_class of SP+C
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204018
138bc75d-0d04-0410-961f-
82ee72b054a4
nickc [Thu, 24 Oct 2013 14:22:46 +0000 (14:22 +0000)]
* gcc.dg/
20020312-2.c: No PIC register for RL78 or MSP430.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204017
138bc75d-0d04-0410-961f-
82ee72b054a4
matz [Thu, 24 Oct 2013 13:58:56 +0000 (13:58 +0000)]
* gengtype.c (is_file_equal): Check that files will be same
length.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204015
138bc75d-0d04-0410-961f-
82ee72b054a4
mpolacek [Thu, 24 Oct 2013 13:54:00 +0000 (13:54 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204014
138bc75d-0d04-0410-961f-
82ee72b054a4
chrbr [Thu, 24 Oct 2013 13:47:27 +0000 (13:47 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204013
138bc75d-0d04-0410-961f-
82ee72b054a4
mpolacek [Thu, 24 Oct 2013 10:42:43 +0000 (10:42 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204007
138bc75d-0d04-0410-961f-
82ee72b054a4
jbglaw [Thu, 24 Oct 2013 10:15:52 +0000 (10:15 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204006
138bc75d-0d04-0410-961f-
82ee72b054a4
ro [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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204005
138bc75d-0d04-0410-961f-
82ee72b054a4
dmalcolm [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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204003
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Thu, 24 Oct 2013 00:16:54 +0000 (00:16 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204000
138bc75d-0d04-0410-961f-
82ee72b054a4
ian [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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@203996
138bc75d-0d04-0410-961f-
82ee72b054a4
paolo [Wed, 23 Oct 2013 22:19:30 +0000 (22:19 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@203995
138bc75d-0d04-0410-961f-
82ee72b054a4
pthaugen [Wed, 23 Oct 2013 21:40:56 +0000 (21:40 +0000)]
* gcc.target/powerpc/direct-move.h: Fix header for executable tests.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@203994
138bc75d-0d04-0410-961f-
82ee72b054a4
gerald [Wed, 23 Oct 2013 21:31:45 +0000 (21:31 +0000)]
* testsuite/test-expandargv.c: Include unistd.h.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@203993
138bc75d-0d04-0410-961f-
82ee72b054a4
gerald [Wed, 23 Oct 2013 21:30:54 +0000 (21:30 +0000)]
Fix up ChangeLog entries (name, e-mail, formatting, otherwise).
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@203992
138bc75d-0d04-0410-961f-
82ee72b054a4
tmsriram [Wed, 23 Oct 2013 21:13:50 +0000 (21:13 +0000)]
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->...)
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@203991
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Wed, 23 Oct 2013 19:16:37 +0000 (19:16 +0000)]
LWG 2165
* method.c (defaulted_late_check): Delete on eh-spec mismatch.
(maybe_explain_implicit_delete): Explain it.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@203989
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Wed, 23 Oct 2013 19:16:15 +0000 (19:16 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@203988
138bc75d-0d04-0410-961f-
82ee72b054a4
amacleod [Wed, 23 Oct 2013 18:55:46 +0000 (18:55 +0000)]
* 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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@203987
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Wed, 23 Oct 2013 18:08:56 +0000 (18:08 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@203985
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Wed, 23 Oct 2013 18:08:46 +0000 (18:08 +0000)]
* include/bits/hashtable.h (_Hashtable): Force EBO for _Hash_code_base.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@203984
138bc75d-0d04-0410-961f-
82ee72b054a4
wschmidt [Wed, 23 Oct 2013 16:23:42 +0000 (16:23 +0000)]
2013-10-23 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
* config/rs6000/altivec.md (mulv8hi3): Adjust for little endian.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@203980
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Wed, 23 Oct 2013 16:19:17 +0000 (16:19 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@203979
138bc75d-0d04-0410-961f-
82ee72b054a4
paolo [Wed, 23 Oct 2013 15:31:26 +0000 (15:31 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@203978
138bc75d-0d04-0410-961f-
82ee72b054a4
dje [Wed, 23 Oct 2013 14:32:32 +0000 (14:32 +0000)]
PR target/58838
* config/rs6000/rs6000.md (mulsi3_internal1 and splitter): Add
TARGET_32BIT final condition.
(mulsi3_internal2 and splitter): Same.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@203977
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Wed, 23 Oct 2013 13:54:48 +0000 (13:54 +0000)]
* 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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@203975
138bc75d-0d04-0410-961f-
82ee72b054a4
ian [Wed, 23 Oct 2013 13:28:11 +0000 (13:28 +0000)]
* doc/invoke.texi (Option Summary): Remove -fno-default-inline.
(C++ Dialect Options): Likewise.
(Optimize Options): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@203974
138bc75d-0d04-0410-961f-
82ee72b054a4
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@203973
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Wed, 23 Oct 2013 12:45:21 +0000 (12:45 +0000)]
* 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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@203969
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Wed, 23 Oct 2013 12:44:06 +0000 (12:44 +0000)]
* gcc.dg/vect/pr58508.c: Remove dg-options.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@203968
138bc75d-0d04-0410-961f-
82ee72b054a4
amacleod [Wed, 23 Oct 2013 12:16:58 +0000 (12:16 +0000)]
* 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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@203967
138bc75d-0d04-0410-961f-
82ee72b054a4
paolo [Wed, 23 Oct 2013 11:59:07 +0000 (11:59 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@203959
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Wed, 23 Oct 2013 11:57:21 +0000 (11:57 +0000)]
2013-10-23 Richard Biener <rguenther@suse.de>
* gcc.dg/torture/pr58830.c: New testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@203957
138bc75d-0d04-0410-961f-
82ee72b054a4
paolo [Wed, 23 Oct 2013 11:48:26 +0000 (11:48 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@203956
138bc75d-0d04-0410-961f-
82ee72b054a4
emsr [Wed, 23 Oct 2013 11:43:25 +0000 (11:43 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@203955
138bc75d-0d04-0410-961f-
82ee72b054a4
jbglaw [Wed, 23 Oct 2013 10:39:45 +0000 (10:39 +0000)]
2013-10-23 Jan-Benedict Glaw <jbglaw@lug-owl.de>
* config/tilegx/tilegx.c: Include "tree.h".
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@203952
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Wed, 23 Oct 2013 06:32:23 +0000 (06:32 +0000)]
* 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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@203947
138bc75d-0d04-0410-961f-
82ee72b054a4
burnus [Wed, 23 Oct 2013 05:44:02 +0000 (05:44 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@203945
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Wed, 23 Oct 2013 00:17:19 +0000 (00:17 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@203944
138bc75d-0d04-0410-961f-
82ee72b054a4
emsr [Wed, 23 Oct 2013 00:12:36 +0000 (00:12 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@203941
138bc75d-0d04-0410-961f-
82ee72b054a4
emsr [Wed, 23 Oct 2013 00:09:19 +0000 (00:09 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@203940
138bc75d-0d04-0410-961f-
82ee72b054a4
mrs [Tue, 22 Oct 2013 23:23:51 +0000 (23:23 +0000)]
++0x -> ++11.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@203939
138bc75d-0d04-0410-961f-
82ee72b054a4
hubicka [Tue, 22 Oct 2013 19:15:02 +0000 (19:15 +0000)]
* 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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@203937
138bc75d-0d04-0410-961f-
82ee72b054a4
sterling [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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@203936
138bc75d-0d04-0410-961f-
82ee72b054a4
uros [Tue, 22 Oct 2013 18:35:53 +0000 (18:35 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@203935
138bc75d-0d04-0410-961f-
82ee72b054a4
sje [Tue, 22 Oct 2013 18:25:56 +0000 (18:25 +0000)]
2013-10-22 Steve Ellcey <sellcey@mips.com>
* gcc.target/mips/nor.c: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@203934
138bc75d-0d04-0410-961f-
82ee72b054a4
sje [Tue, 22 Oct 2013 18:24:43 +0000 (18:24 +0000)]
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)).
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@203932
138bc75d-0d04-0410-961f-
82ee72b054a4