- Mar 16, 2011
-
-
Jack Howarth authored
2011-03-16 Jack Howarth <howarth@bromo.med.uc.edu> PR lto/48086 * configure.ac: Re-enable LTO on *-apple-darwin9. * configure: Regenerate. From-SVN: r171058
-
Francois-Xavier Coudert authored
PR libfortran/47883 * acinclude.m4: Don't use AC_TRY_ macros. * configure.ac: Likewise. * configure: Regenerate. From-SVN: r171056
-
Jeff Law authored
* tree-vrp.c (identify_jump_threads): Slightly simplify type check for operands of conditional. Allow type to be a pointer. * gcc.dg/tree-ssa/vrp55.c: New test. From-SVN: r171055
-
Jason Merrill authored
* parser.c (cp_parser_abort_tentative_parse): Make sure we haven't committed to this tentative parse. From-SVN: r171054
-
Jason Merrill authored
PR c++/47999 * semantics.c (finish_call_expr): Preserve reference semantics in templates. From-SVN: r171053
-
Jason Merrill authored
From-SVN: r171052
-
Richard Guenther authored
2011-03-16 Richard Guenther <rguenther@suse.de> * gcc.dg/guality/vla-1.c (main): Use result of f1 to avoid optimizing it away if promoted to const. From-SVN: r171050
-
Benjamin Kosnik authored
2011-03-16 Benjamin Kosnik <bkoz@redhat.com> * config/abi/pre/gnu.ver: Add base destructors for stdexcept classes. * testsuite/19_diagnostics/stdexcept.cc: New. From-SVN: r171049
-
Richard Guenther authored
2011-03-16 Richard Guenther <rguenther@suse.de> PR tree-optimization/48149 * fold-const.c (fold_binary_loc): Fold COMPLEX_EXPR <REALPART_EXPR <x>, IMAGPART_EXPR <x>>. * gcc.dg/fold-complex-1.c: New testcase. From-SVN: r171048
-
Richard Guenther authored
2011-03-16 Richard Guenther <rguenther@suse.de> PR testsuite/48147 * gcc.dg/guality/pr45882.c: Really make sure no inlining or cloning happens. From-SVN: r171047
-
Richard Guenther authored
2011-03-16 Richard Guenther <rguenther@suse.de> PR tree-optimization/26134 * tree-ssa.c (maybe_rewrite_mem_ref_base): Handle rewriting complex part accesses to REALPART_EXPR and IMAGPART_EXPR. (non_rewritable_mem_ref_base): Handle complex type component accesses, constrain offsets for vector and complex extracts more properly. * gcc.dg/tree-ssa/complex-6.c: New testcase. From-SVN: r171046
-
Richard Guenther authored
re PR c/48146 (ICE tree check: expected ssa_name, have var_decl in has_zero_uses, at tree-flow-inline.h:342) 2011-03-16 Richard Guenther <rguenther@suse.de> PR tree-optimization/48146 * tree-ssa-sink.c (sink_code_in_bb): Manually update virtual operands avoiding the need for renaming. * gcc.dg/torture/pr48146.c: New testcase. From-SVN: r171045
-
Richard Guenther authored
2011-03-16 Richard Guenther <rguenther@suse.de> * gimple-fold.c (maybe_fold_reference): Open-code relevant constant folding. Move MEM_REF canonicalization first. Rely on fold_const_aggregate_ref for initializer folding. * tree-ssa-ccp.c (ccp_fold): Handle constant vector extracts. * gcc.dg/tree-ssa/pr14814.c: Adjust. * gcc.dg/tree-ssa/ssa-ccp-19.c: Likewise. From-SVN: r171043
-
Jakub Jelinek authored
PR middle-end/48136 * fold-const.c (fold_binary_loc) <case EQ_EXPR, NE_EXPR>: Make sure arg0/arg1 or their arguments are always fold converted to matching types. * gcc.c-torture/compile/pr48136.c: New test. From-SVN: r171041
-
Jakub Jelinek authored
* var-tracking.c (prepare_call_arguments): Add ATTRIBUTE_UNUSED to nargs. From-SVN: r171040
-
Rainer Orth authored
PR lto/46944 * configure.ac (gcc_cv_gld_major_version, gcc_cv_gld_minor): Handle in-tree gold. (ld_vers): Extract binutils version for gold. (gcc_cv_ld_hidden): Handle gold here. (gcc_cv_lto_plugin): Determine level of linker plugin support. * configure: Regenerate. * config.in: Regenerate. * gcc.c: Only use LTO plugin if HAVE_LTO_PLUGIN > 0, reject -fuse-linker-plugin otherwise. (LINK_PLUGIN_SPEC): Define. Extract from LINK_COMMAND_SPEC. (LINK_COMMAND_SPEC): Use it. (main): Only look for LTOPLUGINSONAME if HAVE_LTO_PLUGIN > 0. From-SVN: r171039
-
Jakub Jelinek authored
* emit-rtl.c (try_split): Don't call copy_call_info debug hook. * calls.c: Remove debug.h include. (emit_call_1): Don't call virtual_call_token debug hook. * dwarf2out.c (debug_dcall_section, debug_vcall_section, dcall_entry, vcall_entry, dcall_table, vcall_table, vcall_insn, vcall_insn_table, DEBUG_DCALL_SECTION, DEBUG_VCALL_SECTION, size_of_dcall_table, output_dcall_table, size_of_vcall_table, output_vcall_table, dwarf2out_direct_call, vcall_insn_table_hash, vcall_insn_table_eq, store_vcall_insn, lookup_vcall_insn, dwarf2out_virtual_call_token, dwarf2out_copy_call_info, dwarf2out_virtual_call): Remove. (dwarf2_debug_hooks): Remove direct_call, virtual_call_token, copy_call_info and virtual_call hooks. (dwarf2out_init): Don't initialize vcall_insn_table, debug_dcall_section and debug_vcall_section. (prune_unused_types): Don't mark nodes from dcall_table. (dwarf2out_finish): Don't output dcall or vcall tables. * final.c (final_scan_insn): Don't call direct_call or virtual_call debug hooks. * debug.h (struct gcc_debug_hooks): Remove direct_call, virtual_call_token, copy_call_info and virtual_call hooks. (debug_nothing_uid): Remove prototype. * sdbout.c (sdb_debug_hooks): Remove direct_call, virtual_call_token, copy_call_info and virtual_call hooks. * vmsdbgout.c (vmsdbg_debug_hooks): Likewise. * dbxout.c (dbx_debug_hooks, xcoff_debug_hooks): Likewise. * debug.c (do_nothing_debug_hooks): Likewise. (debug_nothing_uid): Remove. * doc/invoke.texi (-fenable-icf-debug): Remove. * common.opt (-fenable-icf-debug): Likewise. * g++.dg/debug/dwarf2/icf.C: Adjust for -fenable-icf-debug removal. From-SVN: r171037
-
Jakub Jelinek authored
* calls.c (emit_call_1): Set MEM_EXPR on call's MEM. * var-tracking.c (prepare_call_arguments): Use MEM_EXPR on call's MEM. Handle functions returning aggregate through a hidden first pointer. For virtual calls add clobbered pc to call arguments chain. * dwarf2out.c (gen_subprogram_die): Emit DW_AT_GNU_call_site_target_clobbered if DW_AT_GNU_call_site_target can't be emitted. From-SVN: r171036
-
Jakub Jelinek authored
PR debug/45882 * rtl.def (ENTRY_VALUE): Change format from "e" to "0". * rtl.h (ENTRY_VALUE_EXP): Define. * rtl.c (rtx_equal_p_cb, rtx_equal_p): Handle ENTRY_VALUE. * cselib.c (rtx_equal_for_cselib_p, cselib_hash_rtx): Likewise. * print-rtl.c (print_rtx): Likewise. * gengtype.c (adjust_field_rtx_def): Likewise. * var-tracking.c (vt_add_function_parameter): Adjust gen_rtx_ENTRY_VALUE uses, use ENTRY_VALUE_EXP macro. * dwarf2out.c (mem_loc_descriptor): Use ENTRY_VALUE_EXP macro. * cfgexpand.c (expand_debug_expr): If a SSA_NAME without partition is a default definition of a PARM_DECL, use ENTRY_VALUE of its DECL_INCOMING_RTL if possible, or its DECL_RTL if set. * gcc.dg/guality/pr45882.c: New test. From-SVN: r171035
-
Jakub Jelinek authored
* final.c (final_scan_insn): Handle NOTE_INSN_CALL_ARG_LOCATION. Call var_location debug hook even on CALL_INSNs. (rest_of_clean_state): Don't print NOTE_INSN_CALL_ARG_LOCATION. * rtl.def (ENTRY_VALUE): New. * dwarf2out.c: Include cfglayout.h. (dwarf_stack_op_name, size_of_loc_descr, output_loc_operands, output_loc_operands_raw): Handle DW_OP_GNU_entry_value. (struct call_arg_loc_node): New type. (call_arg_locations, call_arg_loc_last, block_map, call_site_count, tail_call_site_count): New variables. (dwarf_tag_name): Handle DW_TAG_GNU_call_site and DW_TAG_GNU_call_site_parameter. (dwarf_attr_name): Handle DW_AT_GNU_call_site_value, DW_AT_GNU_call_site_data_value, DW_AT_GNU_call_site_target, DW_AT_GNU_call_site_target_clobbered, DW_AT_GNU_tail_call, DW_AT_GNU_all_tail_call_sites, DW_AT_GNU_all_call_sites and DW_AT_GNU_all_source_call_sites. (mem_loc_descriptor): Handle ENTRY_VALUE. (add_src_coords_attributes): Don't add enything if DECL_SOURCE_LOCATION is UNKNOWN_LOCATION. (dwarf2out_abstract_function): Save and clear call_arg_location, call_site_count and tail_call_site_count around dwarf2out_decl call. (gen_call_site_die): New function. (gen_subprogram_die): Emit DW_TAG_GNU_call_site DIEs for call sites. (gen_lexical_block_die, gen_inlined_subroutine_die): Update block_map. (dwarf2out_function_decl): Clear call_arg_locations, call_arg_loc_last, set call_site_count and tail_call_site_count to -1 and free block_map. (dwarf2out_var_location): Handle NOTE_INSN_CALL_ARG_LOCATION and CALL_INSNs. Add NOTE_DURING_CALL_P var location notes even when not followed by any real instructions. (dwarf2out_begin_function): Set call_site_count and tail_call_site_count to 0. (resolve_addr): If DW_AT_abstract_origin of DW_TAG_GNU_call_site is dw_val_class_addr, attempt to look it up again, for DECL_EXTERNAL attempt to force a DIE for it and worst case remove the attribute. (resolve_one_addr): For TREE_CONSTANT_POOL_ADDRESS_P SYMBOL_REFs check TREE_ASM_WRITTEN of DECL_INITIAL of the decl instead of the decl itself. * var-tracking.c: Include tm_p.h. (vt_stack_adjustments): For calls call note_register_arguments. (argument_reg_set): New variable. (add_stores): For MO_VAL_SET of non-tracked regs from argument_reg_set ensure the VALUE is resolved. (call_arguments): New variable. (prepare_call_arguments): New function. (add_with_sets): For MO_CALL set u.loc from call_arguments and clear it. (struct expand_loc_callback_data): Add ignore_cur_loc field. (vt_expand_loc_callback): If ignore_cur_loc, don't look at cur_loc and always use the best expression. (vt_expand_loc): Add ignore_cur_loc argument. (vt_expand_loc_dummy): Clear ignore_cur_loc field. (emit_note_insn_var_location): Adjust vt_expand_loc callers. (emit_notes_in_bb) <case MO_CALL>: Add NOTE_INSN_CALL_ARG_LOCATION note for all calls. (vt_add_function_parameter): Use cselib_lookup_from_insn. If dv is a VALUE, enter into hash table also ENTRY_VALUE for the argument. Don't call cselib_preserve_only_values and cselib_reset_table. (note_register_arguments): New function. (vt_initialize): Compute argument_reg_set. Call vt_add_function_parameters before processing basic blocks instead of afterwards. For calls call prepare_call_arguments before calling cselib_process_insn. * print-rtl.c (print_rtx): Handle NOTE_INSN_CALL_ARG_LOCATION. * Makefile.in (dwarf2out.o): Depend on $(CFGLAYOUT_H). (var-tracking.o): Depend on $(TM_P_H). * cfglayout.h (insn_scope): New prototype. * gengtype.c (adjust_field_rtx_def): Handle NOTE_INSN_CALL_ARG_LOCATION. * cfglayout.c (insn_scope): No longer static. * insn-notes.def (CALL_ARG_LOCATION): New. * calls.c (expand_call, emit_library_call_value_1): Put USEs for MEM arguments into CALL_INSN_FUNCTION_USAGE unconditionally. * integrate.c (set_block_origin_self, set_block_abstract_flags): Do nothing for DECL_EXTERNAL BLOCK_VARS. cp/ * cp-objcp-common.c (cp_function_decl_explicit_p): Don't crash if DECL_LANG_SPECIFIC is NULL. include/ * dwarf2.h (DW_TAG_GNU_call_site, DW_TAG_GNU_call_site_parameter, DW_AT_GNU_call_site_value, DW_AT_GNU_call_site_data_value, DW_AT_GNU_call_site_target, DW_AT_GNU_call_site_target_clobbered, DW_AT_GNU_tail_call, DW_AT_GNU_all_tail_call_sites, DW_AT_GNU_all_call_sites,, DW_AT_GNU_all_source_call_sites, DW_OP_GNU_entry_value): New. From-SVN: r171033
-
Alan Modra authored
PR target/45844 * config/rs6000/rs6000.c (rs6000_legitimize_reload_address): Don't create invalid offset address for vsx splat insn. * config/rs6000/predicates.md (splat_input_operand): New. * config/rs6000/vsx.md (vsx_splat_*): Use it. From-SVN: r171031
-
GCC Administrator authored
From-SVN: r171026
-
Benjamin Kosnik authored
2011-03-15 Benjamin Kosnik <bkoz@redhat.com> * include/std/thread: Revert. * src/thread.cc: Same. * config/abi/pre/gnu.ver: Same. From-SVN: r171021
-
- Mar 15, 2011
-
-
Doug Kwan authored
2011-03-15 Doug Kwan <dougkwan@google.com> PR libstdc++/48123 * include/Makefile.am (install-freestanding-headers): Install cpu_defines.h * include/Makefile.in: Regenerate. From-SVN: r171019
-
Benjamin Kosnik authored
2011-03-15 Benjamin Kosnik <bkoz@redhat.com> * config/abi/pre/gnu.ver: Make nested_exception exports super clear. Move bad_function_call exports from CXXABI_1.3.5 to GLIBCXX_3.4.15. From-SVN: r171014
-
Jason Merrill authored
* pt.c (value_dependent_expression_p) [NOEXCEPT_EXPR]: Don't check value_dependent_expression_p on the operand. From-SVN: r171013
-
Jason Merrill authored
c-family/ * c-common.c (max_constexpr_depth): New. * c-common.h: Declare it. * c-opts.c (c_common_handle_option): Set it. * c.opt (fconstexpr-depth): New option. cp/ * semantics.c (push_cx_call_context): Return bool. (cxx_eval_call_expression): Handle excess depth. From-SVN: r171012
-
Jason Merrill authored
Core 1191 * method.c (synthezized_method_walk): Cleanups don't affect the triviality of a constructor, but do affect deletion and exception specification. From-SVN: r171011
-
Rodrigo Rivas Costa authored
* decl2.c (cp_check_const_attributes): New. (cplus_decl_attributes): Call cp_check_const_attributes. From-SVN: r171010
-
Jason Merrill authored
PR c++/34758 * call.c (convert_default_arg): Use DECL_ORIGIN of fn. Check for recursion first. (push_defarg_context, pop_defarg_context): New. * parser.c (cp_parser_late_parsing_default_args): Use them. * cp-tree.h: Declare them. From-SVN: r171009
-
Xinliang David Li authored
From-SVN: r171008
-
Ramana Radhakrishnan authored
From-SVN: r171005
-
Ramana Radhakrishnan authored
Fixed PR target/46788 and not PR 47688 From-SVN: r171002
-
Ramana Radhakrishnan authored
Fix PR 47688 2011-03-18 Ramana Radhakrishnan <ramana.radhakrishnan@linaro.org> PR target/47668 gcc/ * config/arm/arm.md (arm_movtas_ze): Use 'L' instead of 'c' in the output template. gcc/testsuite/ * gcc.target/arm/pr47688.c: New. From-SVN: r171000
-
Richard Guenther authored
2011-03-15 Richard Guenther <rguenther@suse.de> PR middle-end/47650 * tree-pretty-print.c (dump_function_declaration): Properly dump unprototyped and varargs function types. * gfortran.dg/c_f_pointer_tests_3.f90: Adjust. * gfortran.dg/ishft_4.f90: Likewise. * gfortran.dg/leadz_trailz_3.f90: Likewise. From-SVN: r170995
-
Richard Guenther authored
2011-03-15 Richard Guenther <rguenther@suse.de> PR tree-optimization/13954 * tree-ssa-sccvn.c (vn_reference_lookup_3): Look through memcpy and friends. * g++.dg/tree-ssa/pr13954.C: New testcase. From-SVN: r170994
-
Richard Guenther authored
2011-03-15 Richard Guenther <rguenther@suse.de> PR tree-optimization/48037 * tree-ssa.c (maybe_rewrite_mem_ref_base): Rewrite vector selects into BIT_FIELD_REFs. (non_rewritable_mem_ref_base): Check if a MEM_REF is a vector select. * gcc.target/i386/pr48037-1.c: New testcase. From-SVN: r170986
-
Jakub Jelinek authored
PR tree-optimization/48129 * builtins.c (fold_builtin_snprintf): Convert to type of built_in_decls[BUILT_IN_SNPRINTF] retval instead of implicit_built_in_decls[BUILT_IN_SNPRINTF] retval. From-SVN: r170985
-
Richard Guenther authored
2011-03-15 Richard Guenther <rguenther@suse.de> PR tree-optimization/41490 * tree-ssa-dce.c (propagate_necessity): Handle returns without value but with VUSE. * tree-ssa-operands.c (parse_ssa_operands): Add a VUSE on all return statements. * tree-ssa-sink.c (statement_sink_location): Fix store sinking. * tree-ssa-phiopt.c (tree_ssa_phiopt_worker): Handle virtual PHIs. * tree-tailcall.c (find_tail_calls): Ignore returns. * gcc.dg/tree-ssa/ssa-sink-6.c: New testcase. * gcc.dg/tree-ssa/ssa-sink-7.c: Likewise. * gcc.dg/tree-ssa/ssa-sink-8.c: Likewise. * gcc.dg/tree-ssa/ssa-sink-9.c: Likewise. * g++.dg/tree-ssa/pr33604.C: Adjust. From-SVN: r170984
-
Richard Guenther authored
re PR tree-optimization/48031 (gcc.c-torture/compile/pr42956.c ICEs gcc on m68k-linux, ivopts related?) 2011-03-15 Richard Guenther <rguenther@suse.de> PR middle-end/48031 * fold-const.c (fold_indirect_ref_1): Do not create new variable-sized or variable-indexed array accesses when in gimple form. From-SVN: r170983
-