- 02 Sep, 2013 16 commits
-
-
2013-09-02 Tim Shen <timshen91@gmail.com> * regex_automaton.h: Rearrange _NFA's layout. * include/bits/regex_compiler.h: Add _AnyMatcher and _CharMatcher. Rearrange _BracketMatcher's layout. (_BracketMatcher<>::_M_add_char): Use set instead of vector for _M_char_set. (_BracketMatcher<>::_M_add_collating_element): Likewise. (_BracketMatcher<>::_M_make_range): Likewise. * include/bits/regex_compiler.tcc (_Compiler<>::_M_atom): Use apropriate constructors of matchers above. * testsuite/28_regex/algorithms/regex_match/ecma/char/anymatcher.cc: New. * testsuite/28_regex/algorithms/regex_match/ecma/char/backref.cc: New. * testsuite/28_regex/algorithms/regex_match/ecma/char/empty_range.cc: New. * testsuite/28_regex/algorithms/regex_match/ecma/char/emptygroup.cc: New. * testsuite/28_regex/algorithms/regex_match/ecma/char/hex.cc: New. * testsuite/28_regex/algorithms/regex_match/ecma/wchar_t/anymatcher.cc: New. * testsuite/28_regex/algorithms/regex_match/ecma/wchar_t/hex.cc: New. From-SVN: r202189
Tim Shen committed -
2013-09-02 Thomas Koenig <tkoenig@gcc.gnu.org> PR fortran/PR56519 * gfortran.h: Declare gfc_do_concurrent_flag as extern. * resolve.c: Rename do_concurrent_flag to gfc_do_concurrent_flag and make non-static. (resolve_function): Use gfc_do_concurrent_flag instead of do_concurrent_flag. (pure_subroutine): Likewise. (resolve_code): Likewise. (resolve_types): Likewise. * intrinsic.c (gfc_intrinsic_sub_interface): Raise error for non-pure intrinsic subroutines within DO CONCURRENT. 2013-09-02 Thomas Koenig <tkoenig@gcc.gnu.org> PR fortran/PR56519 * gfortran.dg/do_concurrent_3.f90: New test case. From-SVN: r202188
Thomas Koenig committed -
* ipa-inline-transform.c (inline_transform): Do not optimize_inline_calls when not optimizing. From-SVN: r202187
Jan Hubicka committed -
* lto-symtab.c (lto_symtab_merge_symbols): Add comments; merge duplicated nodes for assembler names. * symtab.c (symtab_unregister_node): Do not attempt to unlink hard registers from assembler name hash. From-SVN: r202186
Jan Hubicka committed -
* ipa-split.c (execute_split_functions): Split externally visible functions called once. * gcc.dg/tree-ssa/fnsplit-1.c: New testcase. From-SVN: r202185
Jan Hubicka committed -
2013-09-02 Martin Jambor <mjambor@suse.cz> PR ipa/58106 * ipa-prop.c (ipa_edge_duplication_hook): Always put new rdesc to the linked list. When finding the correct duplicate, also consider also the caller in additon to its inlined_to node. testsuite/ * gcc.dg/ipa/pr58106.c: New test. From-SVN: r202184
Martin Jambor committed -
gcc/ * config/aarch64/aarch64-simd-builtins.def (dup_lane_scalar): Remove. * config/aarch64/aarch64-simd.md (aarch64_simd_dup): Add 'w->w' alternative. (aarch64_dup_lane<mode>): Allow for VALL. (aarch64_dup_lane_scalar<mode>): Remove. (aarch64_dup_lane_<vswap_width_name><mode>): New. (aarch64_get_lane_signed<mode>): Add w->w altenative. (aarch64_get_lane_unsigned<mode>): Likewise. (aarch64_get_lane<mode>): Likewise. * config/aarch64/aarch64.c (aarch64_evpc_dup): New. (aarch64_expand_vec_perm_const_1): Use aarch64_evpc_dup. * config/aarch64/iterators.md (VSWAP_WIDTH): New. (VCON): Change container of V2SF. (vswap_width_name): Likewise. * config/aarch64/arm_neon.h (__aarch64_vdup_lane_any): New. (__aarch64_vdup<q>_lane<q>_<fpsu><8,16,32,64>): Likewise. (vdup<q>_n_<psuf><8,16,32,64>): Convert to C implementation. (vdup<q>_lane<q>_<fpsu><8,16,32,64>): Likewise. gcc/testsuite/ * gcc.target/aarch64/scalar_intrinsics.c (vdup<bhsd>_lane<su><8,16,32,64>): Force values to SIMD registers. From-SVN: r202180
James Greenhalgh committed -
PR middle-end/56382 * expr.c (emit_move_complex): Do not move complex FP values as parts if the source or the destination is a single hard register. From-SVN: r202179
Eric Botcazou committed -
* lto.c (mentions_vars_p_field_decl, lto_fixup_prevailing_decls): DECL_FIELD_OFFSET can contain an reference to variable. From-SVN: r202174
Jan Hubicka committed -
Split all the structures, enums, typedefs and some fundamental declarations from tree.h into tree-core.h. Split all the structures, enums, typedefs and some fundamental declarations from tree.h into tree-core.h. Everything else stays in tree.h for now. As we convert gimple files, we'll move declarations out of tree.h into other headers and rewrite missing functions in the new gimple API. * Makefile.in (TREE_CORE_H): Define. (TREE_H): Use. (GTFILES): Add tree-core.h. * builtins.c (built_in_class_names): Use BUILT_IN_LAST to size the array. * tree-core.h: New file. Move all data structures, enum, typedefs, global declarations and constants from ... * tree.h: ... here. From-SVN: r202172
Diego Novillo committed -
2013-09-02 Richard Biener <rguenther@suse.de> PR middle-end/57511 * tree-scalar-evolution.c (instantiate_scev_name): Allow non-linear SCEVs. * gcc.dg/tree-ssa/sccp-1.c: New testcase. From-SVN: r202168
Richard Biener committed -
2013-09-02 Richard Biener <rguenther@suse.de> * tree-affine.c (add_elt_to_tree): Avoid converting all pointer arithmetic to sizetype. * gcc.dg/tree-ssa/loop-4.c: Adjust scan looking for one memory reference. From-SVN: r202165
Richard Biener committed -
tree-ssa-loop-ivopts.c (set_autoinc_for_original_candidates): Find auto-increment use both before and after candidate. * tree-ssa-loop-ivopts.c (set_autoinc_for_original_candidates): Find auto-increment use both before and after candidate. * gcc.target/arm/ivopts-orig_biv-inc.c: New testcase. From-SVN: r202164
Bin Cheng committed -
/cp 2013-09-02 Paolo Carlini <paolo.carlini@oracle.com> PR c++/21682, implement DR 565 * name-lookup.c (compparms_for_decl_and_using_decl): New. (push_overloaded_decl_1, do_nonmember_using_decl): Use it. /testsuite 2013-09-02 Paolo Carlini <paolo.carlini@oracle.com> PR c++/21682, implement DR 565 * g++.dg/template/using24.C: New. * g++.dg/template/using25.C: Likewise. * g++.dg/template/using26.C: Likewise. From-SVN: r202163
Paolo Carlini committed -
2013-09-02 Marek Polacek <polacek@redhat.com> * Makefile.in (ubsan.o): Add $(TM_P_H) dependency. From-SVN: r202159
Marek Polacek committed -
From-SVN: r202158
GCC Administrator committed
-
- 01 Sep, 2013 11 commits
-
-
* Makefile.in: Add ipa-profile.o (ipa.o, ipa-devrit.o, ipa-inline-analysis.o): Adjust dependencies. * cgraph.c (struct cgraph_propagate_frequency_data, cgraph_propagate_frequency_1, cgraph_propagate_frequency): Move to ipa-profile.c; replace cgraph_ by ipa_ prefix. * cgraph.h (cgraph_propagate_frequency): Remove. * ipa-inline-analysis.c: Include ipa-utils.h; drop duplicated cfgloop.h. (inline_update_callee_summaries): Update. * ipa-profile.c: New file. * ipa-utils.h (ipa_propagate_frequency): Declare. * ipa.c: Do not include pointer-set.h, hash-table.h, lto-streamer.h, data-streamer.h, value-prof.h (symtab_remove_unreachable_nodes): Update profile. (struct histogram_entry, histogram, histogram_pool, histogram_hash, account_time_size, cmp_counts, dump_histogram, ipa_profile_generate_summary, ipa_profile_write_summary, ipa_profile_read_summary, ipa_profile, gate_ipa_profile, pass_data_ipa_profile, pass_ipa_profile, make_pass_ipa_profile): Move to ipa-profile.c From-SVN: r202154
Jan Hubicka committed -
From-SVN: r202153
Jan Hubicka committed -
PR ada/58239 gnattools/ * Makefile.in (CXX_LFLAGS): New. (TOOLS_FLAGS_TO_PASS_NATIVE): Pass CXX and CXX_LFLAGS. (TOOLS_FLAGS_TO_PASS_RE): Likewise. (TOOLS_FLAGS_TO_PASS_CROSS): Pass CXX. gcc/ada/ * gcc-interface/Makefile.in (GCC_LINK_FLAGS): Add -static-libstdc++. (GCC_LINK): Use CXX instead of CC. * gcc-interface/Make-lang.in (CXX_LFLAGS): New. (ADA_TOOLS_FLAGS_TO_PASS): Pass CXX, and CXX_LFLAGS for native. Co-Authored-By: Iain Sandoe <iain@codesourcery.com> From-SVN: r202150
Eric Botcazou committed -
* config/pa/pa.md: Allow "const 0" operand 1 in "scc" insns. From-SVN: r202149
John David Anglin committed -
From-SVN: r202148
Eric Botcazou committed -
From-SVN: r202146
Jan Hubicka committed -
* common.opt (fdevirtualize-speculatively): New function. * invoke.texi (fdevirtualize-speculatively): Document. * ipa-devirt.c: Include ipa-inline.h (likely_target_p): New function. (ipa_devirt): New function. (gate_ipa_devirt): New function. (pass_data_ipa_devirt): New static var. (pass_ipa_devirt): Likewise. (make_pass_ipa_devirt): New function. * opts.c (default_options): Add OPT_fdevirtualize_speculatively. (common_handle_option): Disable devirtualization when value range profiling is available. * passes.def (pass_ipa_devirt): Add. * timever.def (TV_IPA_DEVIRT): New timevar. * tree-pass.h (make_pass_ipa_devirt): From-SVN: r202145
Jan Hubicka committed -
gcc: * config/darwin.h (LINK_COMMAND_SPEC_A): Revise sanitizer specs to include sanitize(undefined). libsanitizer: * ubsan/Makefile.am (libubsan_la_LIBADD): Revise to omit libinterception.la for Darwin. * ubsan/Makefile.in: Regenerate. From-SVN: r202144
Iain Sandoe committed -
* lto.c (tree_with_vars): Turn into vector. (MAYBE_REMEMBER_WITH_VARS): Change to... (CHECK_VAR): ... this one. (CHECK_NO_VAR): New macro. (maybe_remember_with_vars_typed): Turn to ... (mentions_vars_p_typed): ... this one. (maybe_remember_with_vars_common): Turn to ... (mentions_vars_p_comon): ... this one. (maybe_remember_with_vars_decl_minimal): Turn to ... (mentions_vars_p_decl_minmal): ... this one. (maybe_remember_with_vars_decl_common): Turn to ... (mentions_vars_p_decl_common): ... this one. (maybe_remember_with_vars_decl_with_vis): Turn to ... (mentions_vars_p_decl_with_vis): ... this one. (maybe_remember_with_vars_decl_non_common): Turn to ... (mentions_vars_p_decl_non_common): ... this one. (maybe_remember_with_vars_function): Turn to ... (mentions_vars_p_function): ... this one. (maybe_remember_with_vars_field_decl): Turn to ... (mentions_vars_p_field_decl): ... this one. (maybe_remember_with_vars_type): Turn to ... (mentions_vars_p_type): ... this one. (maybe_remember_with_vars_binfo): Turn to ... (mentions_vars_p_binfo): ... this one. (maybe_remember_with_vars_constructor): Turn to ... (mentions_vars_p_constructor): ... this one. (maybe_remember_with_vars_expr): Turn to ... (mentions_vars_p_expr): ... this one. (maybe_remember_with_vars): Turn to ... (mentions_vars_p): ... this one. (lto_read_decls): Update. (LTO_SET_PREVAIL): Do not call function for internal decls. (lto_fixup_prevailing_decls): Update to match mentions_vars_p; check that something was updated. (lto_fixup_state): Do not care about internal decls. (lto_fixup_decls): Update. (read_cgraph_and_symbols): Update. From-SVN: r202143
Jan Hubicka committed -
* gcc.dg/fork-instrumentation.c: New testcase. * builtins.c (expand_builtin): Do not exit early for gcov instrumented functions. From-SVN: r202142
Jan Hubicka committed -
From-SVN: r202139
GCC Administrator committed
-
- 31 Aug, 2013 11 commits
-
-
2013-08-31 Marek Polacek <polacek@redhat.com> * ubsan.c: Include tm_p.h. From-SVN: r202134
Marek Polacek committed -
* gimple-streamer-in.c (input_gimple_stmt): Silence parameter unused warning. From-SVN: r202133
Jan Hubicka committed -
From-SVN: r202132
Diego Novillo committed -
* cgraph.c (cgraph_get_body): Update call of lto_input_function_body. * gimple-streamer-in.c (input_gimple_stmt): Move sanity check to ... * tree-cfg.c (verify_gimple_label): ... here. * ipa-utils.c: Include lto-streamer.h, ipa-inline.h (ipa_merge_profiles): New function. * lto-streamer-in.c (lto_read_body): Take node instead of fn_decl. (lto_input_function_body): Likewise. * ipa-utils.h (ipa_merge_profiles): Declare. * lto-streamer.h (lto_input_function_body): Update prototype. (emit_label_in_global_context_p): Remove. * lto-symtab.c: Include ipa-utils.h (lto_cgraph_replace_node): Use ipa_merge_profiles. From-SVN: r202131
Jan Hubicka committed -
* cgraph.c (cgraph_get_body): Update call of lto_input_function_body. * gimple-streamer-in.c (input_gimple_stmt): Move sanity check to ... * ipa-utils.c: Include lto-streamer.h, ipa-inline.h (ipa_merge_profiles): New function. * lto-streamer-in.c (lto_read_body): Take node instead of fn_decl. (lto_input_function_body): Likewise. From-SVN: r202130
Jan Hubicka committed -
From-SVN: r202129
Jan Hubicka committed -
From-SVN: r202128
Jan Hubicka committed -
alpha.c (alpha_emit_conditional_move): Update "cmp" RTX before signed_comparison_operator check to account for "code"... * config/alpha/alpha.c (alpha_emit_conditional_move): Update "cmp" RTX before signed_comparison_operator check to account for "code" changes. From-SVN: r202127
Uros Bizjak committed -
* ipa-prop.c (ipa_set_jf_known_type): Check that we add only records. (detect_type_change_1): Rename to ... (detect_type_change): ... this one; early return on non-polymorphic types. (detect_type_change_ssa): Add comp_type parameter; update use of detect_type_change. (compute_complex_assign_jump_func): Add param_type parameter; update use of detect_type_change_ssa. (compute_complex_ancestor_jump_func): Likewise. (ipa_get_callee_param_type): New function. (ipa_compute_jump_functions_for_edge): Compute parameter type; update calls to the jump function computation functions. From-SVN: r202126
Jan Hubicka committed -
This patch sanitizes the partitioning to address issues such as edge weight insanities that sometimes occur due to upstream optimizations... This patch sanitizes the partitioning to address issues such as edge weight insanities that sometimes occur due to upstream optimizations, and ensures that hot blocks are not dominated by cold blocks. This needs to be resanitized after certain cfg optimizations that may cause hot blocks previously reached via both hot and cold paths to only be reached by cold paths. The verification code in sanitize_dominator_hotness was contributed by Steven Bosscher. 2013-08-29 Teresa Johnson <tejohnson@google.com> Steven Bosscher <steven@gcc.gnu.org> * cfgrtl.c (fixup_new_cold_bb): New routine. (commit_edge_insertions): Invoke fixup_partitions. (find_partition_fixes): New routine. (fixup_partitions): Ditto. (verify_hot_cold_block_grouping): Update comments. (rtl_verify_edges): Invoke find_partition_fixes. (rtl_verify_bb_pointers): Update comments. (rtl_verify_bb_layout): Ditto. * basic-block.h (probably_never_executed_edge_p): Declare. (fixup_partitions): Ditto. * cfgcleanup.c (try_optimize_cfg): Invoke fixup_partitions. * bb-reorder.c (sanitize_hot_paths): New function. (find_rarely_executed_basic_blocks_and_crossing_edges): Invoke sanitize_hot_paths. * predict.c (probably_never_executed_edge_p): New routine. * cfg.c (check_bb_profile): Add partition insanity warnings. Co-Authored-By: Steven Bosscher <steven@gcc.gnu.org> From-SVN: r202125
Teresa Johnson committed -
From-SVN: r202124
GCC Administrator committed
-
- 30 Aug, 2013 2 commits
-
-
re PR libstdc++/58148 (Fails to insert iterator range into sequence container with -D_GLIBCXX_DEBUG when conversion is needed) 2013-08-30 François Dumont <fdumont@gcc.gnu.org> PR libstdc++/58148 * include/debug/functions.h (__foreign_iterator_aux4): Use sequence const_pointer as common type to compare pointers. Add a fallback overload in case pointers cannot be cast to sequence const_pointer. * testsuite/23_containers/vector/modifiers/insert/58148.cc: New. From-SVN: r202121
François Dumont committed -
2013-08-30 François Dumont <fdumont@gcc.gnu.org> PR libstdc++/58191 * include/debug/macros.h (__glibcxx_check_partitioned_lower): Add __gnu_debug::__base calls on iterators passed to internal debug check. (__glibcxx_check_partitioned_lower_pred): Likewise. (__glibcxx_check_partitioned_upper): Likewise. (__glibcxx_check_partitioned_upper_pred): Likewise. (__glibcxx_check_sorted): Likewise. (__glibcxx_check_sorted_pred): Likewise. (__glibcxx_check_sorted_set): Likewise. (__glibcxx_check_sorted_set_pred): Likewise. * include/debug/functions.h (__check_partitioned_lower): Remove code to detect safe iterators. (__check_partitioned_upper): Likewise. (__check_sorted): Likewise. From-SVN: r202119
François Dumont committed
-