aboutsummaryrefslogtreecommitdiff
path: root/gcc
AgeCommit message (Collapse)AuthorFilesLines
2013-09-02lto.c (mentions_vars_p_field_decl, [...]): DECL_FIELD_OFFSET can contain an ↵Jan Hubicka2-2/+7
reference to variable. * lto.c (mentions_vars_p_field_decl, lto_fixup_prevailing_decls): DECL_FIELD_OFFSET can contain an reference to variable. From-SVN: r202174
2013-09-02Split all the structures, enums, typedefs and some fundamental declarations ↵Diego Novillo5-1705/+1710
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
2013-09-02re PR tree-optimization/57511 (Missing SCEV final value replacement)Richard Biener4-0/+27
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
2013-09-02tree-affine.c (add_elt_to_tree): Avoid converting all pointer arithmetic to ↵Richard Biener4-20/+42
sizetype. 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
2013-09-02tree-ssa-loop-ivopts.c (set_autoinc_for_original_candidates): Find ↵Bin Cheng4-8/+50
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
2013-09-02PR c++/21682, implement DR 565Paolo Carlini6-5/+133
/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
2013-09-02Makefile.in (ubsan.o): Add $(TM_P_H) dependency.Marek Polacek2-1/+5
2013-09-02 Marek Polacek <polacek@redhat.com> * Makefile.in (ubsan.o): Add $(TM_P_H) dependency. From-SVN: r202159
2013-09-02Daily bump.GCC Administrator1-1/+1
From-SVN: r202158
2013-09-01Makefile.in: Add ipa-profile.oJan Hubicka8-639/+704
* 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
2013-09-01* g++.dg/ipa/devirt-15.C: New testcase.Jan Hubicka2-0/+44
From-SVN: r202153
2013-09-01re PR ada/58239 (pretty-print.c:789: undefined reference to `operator ↵Eric Botcazou3-3/+22
delete(void*)') 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
2013-09-01pa.md: Allow "const 0" operand 1 in "scc" insns.John David Anglin2-8/+12
* config/pa/pa.md: Allow "const 0" operand 1 in "scc" insns. From-SVN: r202149
2013-09-01* gnat.dg/specs/linker_alias.ads: Skip on Darwin.Eric Botcazou2-0/+5
From-SVN: r202148
2013-09-01Correct previous commit to the final version of patch.Jan Hubicka3-6/+6
From-SVN: r202146
2013-09-01common.opt (fdevirtualize-speculatively): New function.Jan Hubicka11-5/+316
* 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
2013-09-01darwin.h (LINK_COMMAND_SPEC_A): Revise sanitizer specs to include ↵Iain Sandoe2-1/+7
sanitize(undefined). 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
2013-09-01lto.c (tree_with_vars): Turn into vector.Jan Hubicka2-140/+210
* 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
2013-09-01fork-instrumentation.c: New testcase.Jan Hubicka4-0/+24
* gcc.dg/fork-instrumentation.c: New testcase. * builtins.c (expand_builtin): Do not exit early for gcov instrumented functions. From-SVN: r202142
2013-09-01Daily bump.GCC Administrator1-1/+1
From-SVN: r202139
2013-08-31ubsan.c: Include tm_p.h.Marek Polacek2-0/+5
2013-08-31 Marek Polacek <polacek@redhat.com> * ubsan.c: Include tm_p.h. From-SVN: r202134
2013-08-31gimple-streamer-in.c (input_gimple_stmt): Silence parameter unused warning.Jan Hubicka2-2/+5
* gimple-streamer-in.c (input_gimple_stmt): Silence parameter unused warning. From-SVN: r202133
2013-08-31cgraph.c (cgraph_get_body): Update call of lto_input_function_body.Jan Hubicka5-9/+18
* 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
2013-08-31cgraph.c (cgraph_get_body): Update call of lto_input_function_body.Jan Hubicka5-10/+189
* 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
2013-08-31* cgraph.c (cgraph_speculative_call_info): Fix ref lookupJan Hubicka2-1/+5
From-SVN: r202129
2013-08-31* basic-block.h (apply_scale): Make scale parmeter gcov_type.Jan Hubicka2-1/+5
From-SVN: r202128
2013-08-31alpha.c (alpha_emit_conditional_move): Update "cmp" RTX before ↵Uros Bizjak2-18/+20
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
2013-08-31ipa-prop.c (ipa_set_jf_known_type): Check that we add only records.Jan Hubicka2-47/+114
* 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
2013-08-31This patch sanitizes the partitioning to address issues such as edge weight ↵Teresa Johnson7-8/+352
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
2013-08-31Daily bump.GCC Administrator1-1/+1
From-SVN: r202124
2013-08-30mangle33.C (dg-final): Use match count in scan RE.Uros Bizjak2-7/+11
* g++.dg/abi/mangle33.C (dg-final): Use match count in scan RE. From-SVN: r202117
2013-08-30tree-vrp.c (check_array_ref): Bail out on zero-length arrays.Meador Inge4-2/+23
gcc/ 2013-08-30 Meador Inge <meadori@codesourcery.com> * tree-vrp.c (check_array_ref): Bail out on zero-length arrays. gcc/testsuite/ 2013-08-30 Meador Inge <meadori@codesourcery.com> * gcc.dg/Warray-bounds-11.c: New testcase. From-SVN: r202115
2013-08-30Merge ubsan into trunk.Marek Polacek58-73/+1620
From-SVN: r202113
2013-08-30install.texi (Prerequisites): Note regression in Tcl 8.6 with RE patterns.Mike Stump2-1/+10
* doc/install.texi (Prerequisites): Note regression in Tcl 8.6 with RE patterns. From-SVN: r202112
2013-08-30cgraph.c (cgraph_function_body_availability): Handle weakref correctly.Jan Hubicka9-8/+67
* cgraph.c (cgraph_function_body_availability): Handle weakref correctly. * passes.def: Remove pass_fixup_cfg. * ipa-inline.c (ipa_inline): When not optimizing, do not inline; track when we need to remove functions. (gate_ipa_inline): Execute inlining always; add comment why. (pass_data_ipa_inline): Remove TODO_remove_functions. * ipa-inline-analysis.c (inline_generate_summary): When not optimizing do not produce summaries. * symtab.c (change_decl_assembler_name): Handle renaming of weakrefs. (symtab_nonoverwritable_alias): Assert we are not called on weakref. * varpool.c (cgraph_variable_initializer_availability): Fix weakrefs, constant pool and vtable. From-SVN: r202111
2013-08-30re PR c++/51424 ([C++11] G++ should diagnose self-delegating constructors)Paolo Carlini7-3/+94
/cp 2013-08-30 Paolo Carlini <paolo.carlini@oracle.com> PR c++/51424 * cp-tree.h (LOOKUP_DELEGATING_CONS): Add. * init.c (perform_target_ctor): Use it. * call.c (build_special_member_call): Diagnose self-delegating constructors. /testsuite 2013-08-30 Paolo Carlini <paolo.carlini@oracle.com> PR c++/51424 * g++.dg/cpp0x/dc8.C: New. * g++.dg/template/meminit1.C: Adjust. From-SVN: r202110
2013-08-30c-pretty-print.h (c_pretty_printer::declaration): Now a virtual member function.Gabriel Dos Reis7-154/+204
c-family/ * c-pretty-print.h (c_pretty_printer::declaration): Now a virtual member function. (c_pretty_printer::declaration_specifiers): Likewise. (c_pretty_printer::declarator): Likewise. (c_pretty_printer::abstract_declarator): Likewise. (c_pretty_printer::direct_abstract_declarator): Likewise. (c_pretty_printer::direct_declarator): Likewise. (c_pretty_printer::function_specifier): Likewise. (pp_declaration): Adjust. (pp_declaration_specifiers): Likewise. (pp_abstract_declarator): Likewise. (pp_direct_declarator): Likewise. (pp_function_specifier): Likewise. (pp_direct_abstract_declarator): Remove as unused. (pp_c_declaration): Remove. (pp_c_declaration_specifiers): Likewise. (pp_c_declarator): Likewise. (pp_c_direct_declarator): Likewise. (pp_c_function_specifier): Likewise. (pp_c_direct_abstract_declarator): Likewise. * c-pretty-print.c (c_pretty_printer::abstract_declarator): Rename from pp_c_abstract_declarator. Adjust. (c_pretty_printer::direct_abstract_declarator): Rename from pp_c_direct_abstract_declarator. Adjust. (c_pretty_printer::function_specifier): Rename from pp_c_function_specifier. Adjust. (c_pretty_printer::declaration_specifiers): Rename from pp_c_declaration_specifiers. Adjust. (c_pretty_printer::direct_declarator): Rename from pp_c_direct_declarator. Adjust. (c_pretty_printer::declarator): Rename from pp_c_declarator. Adjust. (c_pretty_printer::declaration): Rename from pp_c_declaration. Adjust. (c_pretty_printer::c_pretty_printer): Do not assign to declaration, declaration_specifiers, declarator, direct_declarator, direct_abstract_declarator, function_specifier. cp/ * cxx-pretty-print.h (cxx_pretty_printer::declaration): Declare as overrider. (cxx_pretty_printer::declaration_specifiers): Likewise. (cxx_pretty_printer::function_specifier): Likewise. (cxx_pretty_printer::declarator): Likewise. (cxx_pretty_printer::direct_declarator): Likewise. (cxx_pretty_printer::abstract_declarator): Likewise. (cxx_pretty_printer::direct_abstract_declarator): Likewise. (pp_cxx_declaration): Remove. * cxx-pretty-print.c (cxx_pretty_printer::function_specifier): Rename from pp_cxx_function_specifier. Adjust. (cxx_pretty_printer::declaration_specifiers): Rename from pp_cxx_decl_specifier_seq. Adjust. (cxx_pretty_printer::direct_declarator): Rename from pp_cxx_direct_declarator. Adjust. (cxx_pretty_printer::declarator): Rename from pp_cxx_declarator. Adjust. (cxx_pretty_printer::abstract_declarator): Rename from pp_cxx_abstract_declarator. Adjust. (cxx_pretty_printer::direct_abstract_declarator): Rename from pp_cxx_direct_abstract_declarator. Adjust. (cxx_pretty_printer::declaration): Rename from pp_cxx_declaration. Adjust. (cxx_pretty_printer::cxx_pretty_printer): Do not assign to declaration, declaration_specifiers, function_specifier, declarator, direct_declarator, abstract_declarator, direct_abstract_declarator. * error.c (dump_decl): Adjust. From-SVN: r202109
2013-08-30arm_neon.h (__AARCH64_UINT64_C, [...]): New arm_neon.h's internal macros to ↵Tejas Belagod2-183/+222
specify 64-bit constants. 2013-08-30 Tejas Belagod <tejas.belagod@arm.com> gcc/ * config/aarch64/arm_neon.h (__AARCH64_UINT64_C, __AARCH64_INT64_C): New arm_neon.h's internal macros to specify 64-bit constants. Avoid using stdint.h's macros. From-SVN: r202108
2013-08-30recog.c (verify_changes): Verify that changes[i].old is non-zero before ↵Joern Rennecke2-1/+9
applying REG_P. * recog.c (verify_changes): Verify that changes[i].old is non-zero before applying REG_P. From-SVN: r202107
2013-08-30Move testsuite changes to correct ChangeLog, and delete a newTeresa Johnson3-17/+11
test that should not have been committed. 2013-08-30 Teresa Johnson <tejohnson@google.com> * gcc.dg/inline-dump.c: Delete inadvertant commit. From-SVN: r202106
2013-08-30re PR tree-optimization/58277 (wrong code at -O3)Jakub Jelinek5-0/+235
PR tree-optimization/58277 * tree-ssa-strlen.c (strlen_enter_block): If do_invalidate gave up after seeing too many stmts with vdef in between dombb and current bb, invalidate everything. * gcc.c-torture/execute/pr58277-1.c: New test. * gcc.c-torture/execute/pr58277-2.c: New test. From-SVN: r202104
2013-08-30fold-const.c (fold_single_bit_test): Fix overflow test.Richard Biener2-3/+7
2013-08-30 Richard Biener <rguenther@suse.de> * fold-const.c (fold_single_bit_test): Fix overflow test. From-SVN: r202103
2013-08-30function.c (assign_parm_setup_reg): For a parameter passed by pointer and ↵Eric Botcazou6-13/+120
which can live in a register... * function.c (assign_parm_setup_reg): For a parameter passed by pointer and which can live in a register, always retrieve the value on entry. * var-tracking.c (add_stores): Treat the copy on entry for a parameter passed by invisible reference specially. (emit_notes_in_bb) <MO_VAL_USE>: Emit notes before the instruction. (vt_add_function_parameter): Correctly deal with a parameter passed by invisible reference. From-SVN: r202102
2013-08-30Correct previous patch to not mark terminate as LEAF.Jan Hubicka4-15/+21
* class.c (build_vtbl_initializer): Drop LEAF * decl.c (cxx_init_decl_processing): Likewise. (push_throw_library_fn): Likewise. * except.c (init_exception_processing): Likewise. (do_begin_catch): Likewise. (do_end_catch): Likewise. (do_allocate_exception): Likewise. From-SVN: r202100
2013-08-30class.c (build_vtbl_initializer): Make __cxa_deleted_virtual ECF_NORETURN | ↵Jan Hubicka6-74/+107
ECF_LEAF * class.c (build_vtbl_initializer): Make __cxa_deleted_virtual ECF_NORETURN | ECF_LEAF * cp-tree.h (build_library_fn_ptr, build_cp_library_fn_ptr, push_library_fn, push_void_library_fn): Update prototype. * decl.c (build_library_fn_1): Remove. (push_cp_library_fn, build_cp_library_fn): Update to take ECF flags. (cxx_init_decl_processing): Update; global_delete_fndecl is ECF_NOTROW; __cxa_pure_virtual is ECF_NORETURN | ECF_NORETURN | ECF_LEAF. (build_library_fn_1): Add ecf_flags argument; rename to ... (build_library_fn): ... this one. (build_cp_library_fn): Take ecf_flags; do not copy NOTHROW flag. (build_library_fn_ptr): Take ecf_flags. (build_cp_library_fn_ptr): Likewise. (push_library_fn): Likewise. (push_cp_library_fn): Likewise. (push_void_library_fn): Likewise. (push_throw_library_fn): All throws are ECF_NORETURN. (__cxa_atexit, __cxa_thread_atexit): Add ECF_LEAF | ECF_NOTHROW attributes. (expand_static_init): __cxa_guard_acquire, __cxa_guard_release, __cxa_guard_abort are ECF_NOTHROW | ECF_LEAF. * except.c (init_exception_processing): terminate is ECF_NOTHROW | ECF_NORETURN | ECF_LEAF. (declare_nothrow_library_fn): Add ecf_flags parameter. (__cxa_get_exception_ptr): Is ECF_NOTHROW | ECF_PURE | ECF_LEAF | ECF_TM_PURE. (do_begin_catch): cxa_begin_catch and _ITM_cxa_begin_catch are ECF_NOTHROW | ECF_LEAF. (do_end_catch): __cxa_end_catch and _ITM_cxa_end_catch is ECF_LEAF. (do_allocate_exception): _cxa_allocate_exception and _ITM_cxa_allocate_exception are ECF_NOTHROW | ECF_MALLOC | ECF_LEAF (do_free_exception): __cxa_free_exception is ECF_NOTHROW | ECF_LEAF. * rtti.c (build_dynamic_cast_1): __dynamic_cast is ECF_LEAF | ECF_PURE | ECF_NOTHROW. From-SVN: r202099
2013-08-30* tree.c (set_call_expr_flags): Fix handling of TM_PURE.Jan Hubicka2-3/+9
From-SVN: r202098
2013-08-30re PR tree-optimization/58228 (wrong code (with vectorization?) at -O3 on ↵Richard Biener4-1/+34
x86_64-linux-gnu) 2013-08-30 Richard Biener <rguenther@suse.de> PR tree-optimization/58228 * tree-vect-data-refs.c (vect_analyze_data_ref_access): Do not allow invariant loads in nested loop vectorization. * gcc.dg/torture/pr58228.c: New testcase. From-SVN: r202097
2013-08-30re PR tree-optimization/58223 (wrong code at -O3 on x86_64-linux-gnu)Richard Biener5-13/+45
2013-08-30 Richard Biener <rguenther@suse.de> PR tree-optimization/58223 * tree-loop-distribution.c (has_anti_dependence): Rename to ... (has_anti_or_output_dependence): ... this and adjust to also look for output dependences. (mark_nodes_having_upstream_mem_writes): Adjust. (rdg_flag_uses): Likewise. * gcc.dg/torture/pr58223.c: New testcase. * gcc.dg/tree-ssa/ldist-16.c: Flip expected behavior. From-SVN: r202096
2013-08-30re PR tree-optimization/58010 (ICE in vect_create_epilog_for_reduction, at ↵Richard Biener4-3/+28
tree-vect-loop.c:4378) 2013-08-30 Richard Biener <rguenther@suse.de> PR tree-optimization/58010 * tree-vect-loop.c (vect_create_epilog_for_reduction): Remove assert that we have a loop-closed PHI. * gcc.dg/pr58010.c: New testcase. From-SVN: r202095
2013-08-30lto-symtab.c (lto_cgraph_replace_node): Free decl_in_state.Jan Hubicka2-0/+9
* lto-symtab.c (lto_cgraph_replace_node): Free decl_in_state. * cgraph.c (cgraph_release_function_body): Free decl_in_state. * lto-section-in.c (lto_free_function_in_decl_state): New function. (lto_free_function_in_decl_state_for_node): New function. From-SVN: r202094
2013-08-30lto-symtab.c (lto_cgraph_replace_node): Free decl_in_state.Jan Hubicka5-1/+48
* lto-symtab.c (lto_cgraph_replace_node): Free decl_in_state. * cgraph.c (cgraph_release_function_body): Free decl_in_state. * lto-section-in.c (lto_free_function_in_decl_state): New function. (lto_free_function_in_decl_state_for_node): New function. * lto.c (read_cgraph_and_symbols): Remove ggc_collect; clear section node; add comment why we do not collect. From-SVN: r202093