aboutsummaryrefslogtreecommitdiff
path: root/gcc
AgeCommit message (Collapse)AuthorFilesLines
2013-08-27arm_neon.h: Replace all inline asm implementations of vget_low_* with ↵Tejas Belagod2-132/+84
implementations in... 2013-08-27 Tejas Belagod <tejas.belagod@arm.com> * config/aarch64/arm_neon.h: Replace all inline asm implementations of vget_low_* with implementations in terms of other intrinsics. From-SVN: r202023
2013-08-27Remove experimental LRA testNick Clifton1-3/+3
From-SVN: r202022
2013-08-27re PR middle-end/57219 (__builtin_isinf_sign source comments more ↵Marc Glisse2-2/+9
restrictive than documentation) 2013-08-27 Marc Glisse <marc.glisse@inria.fr> PR middle-end/57219 * doc/extend.texi (__builtin_isinf_sign): Restrict the return values to -1, 0 and 1. From-SVN: r202021
2013-08-27aarch64.md (unspec): Add UNSPEC_SISD_SSHL...Vidya Praveen5-5/+468
gcc/ 2013-08-27 Vidya Praveen <vidyapraveen@arm.com> * config/aarch64/aarch64.md (unspec): Add UNSPEC_SISD_SSHL, UNSPEC_SISD_USHL, UNSPEC_USHL_2S, UNSPEC_SSHL_2S, UNSPEC_SISD_NEG. (<optab><mode>3_insn): Remove. (aarch64_ashl_sisd_or_int_<mode>3): New Pattern. (aarch64_lshr_sisd_or_int_<mode>3): Likewise. (aarch64_ashr_sisd_or_int_<mode>3): Likewise. (define_split for aarch64_lshr_sisd_or_int_di3): Likewise. (define_split for aarch64_lshr_sisd_or_int_si3): Likewise. (define_split for aarch64_ashr_sisd_or_int_di3): Likewise. (define_split for aarch64_ashr_sisd_or_int_si3): Likewise. (aarch64_sisd_ushl, aarch64_sisd_sshl): Likewise. (aarch64_ushl_2s, aarch64_sshl_2s, aarch64_sisd_neg_qi): Likewise. (ror<mode>3_insn): Likewise. * config/aarch64/predicates.md (aarch64_simd_register): New. gcc/testsuite/ 2013-08-27 Vidya Praveen <vidyapraveen@arm.com> * gcc.target/aarch64/scalar_shift_1.c: New. From-SVN: r202020
2013-08-27re PR tree-optimization/57521 (wrong code for expressions in loop at -O3)Richard Biener4-62/+95
2013-08-27 Richard Biener <rguenther@suse.de> PR tree-optimization/57521 * tree-if-conv.c (if_convertible_bb_p): Verify that at least one edge is non-critical. (find_phi_replacement_condition): Make sure to use a non-critical edge. Cleanup and remove old bug workarounds. (bb_postdominates_preds): Remove. (if_convertible_loop_p_1): Do not compute post-dominators. (combine_blocks): Do not free post-dominators. (main_tree_if_conversion): Likewise. (pass_data_if_conversion): Add TODO_verify_ssa. * gcc.dg/torture/pr57521.c: New testcase. From-SVN: r202019
2013-08-27re PR rtl-optimization/57860 (wrong code for bitwise ops with long long ↵Jakub Jelinek6-0/+147
literal on x86_64-linux (32-bit mode)) PR rtl-optimization/57860 PR rtl-optimization/57861 PR rtl-optimization/57875 PR rtl-optimization/57876 PR rtl-optimization/57877 * gcc.c-torture/execute/pr57860.c: New test. * gcc.c-torture/execute/pr57861.c: New test. * gcc.c-torture/execute/pr57875.c: New test. * gcc.c-torture/execute/pr57876.c: New test. * gcc.c-torture/execute/pr57877.c: New test. From-SVN: r202018
2013-08-27decl.c (grokfndecl): Remove old bison hack.Paolo Carlini2-11/+4
2013-08-27 Paolo Carlini <paolo.carlini@oracle.com> * decl.c (grokfndecl): Remove old bison hack. From-SVN: r202017
2013-08-27* config/i386/djgpp.h (ASM_DECLARE_FUNCTION_NAME): New.DJ Delorie2-0/+15
From-SVN: r202016
2013-08-27function.c (assign_parm_find_data_types): Set passed_mode and nominal_mode ↵Yufeng Zhang2-1/+7
to the TYPE_MODE of nominal_type for the built... gcc/ * function.c (assign_parm_find_data_types): Set passed_mode and nominal_mode to the TYPE_MODE of nominal_type for the built pointer type in case of the struct-pass-by-reference. From-SVN: r202014
2013-08-27Daily bump.GCC Administrator1-1/+1
From-SVN: r202013
2013-08-26avr.opt (mfract-convert-truncate): New option.Joern Rennecke3-2/+205
* config/avr/avr.opt (mfract-convert-truncate): New option. * config/avr/avr.c (avr_out_fract): Unless TARGET_FRACT_CONV_TRUNC is set, round negative fractional integers according to n1169 when converting to integer types. From-SVN: r202008
2013-08-26Add PR marker to PR id in ChangeLog.Joern Rennecke1-1/+1
From-SVN: r202007
2013-08-26re PR c/35649 (Incorrect printf warning: expect double has float)Joern Rennecke2-2/+4
2013-08-26 Joern Rennecke <joern.rennecke@embecosm.com> Joseph Myers <joseph@codesourcery.com> c/35649 * c-typeck.c (c_common_type): Prefer double_type_node over other REAL_TYPE types with the same precision. (convert_arguments): Likewise. Amend patch as suggested: From: "Joseph S. Myers" <joseph@codesourcery.com> In convert_arguments I think you should be comparing TYPE_MAIN_VARIANT (valtype) against double_type_node and long_double_type_node, rather than just valtype. This is PR c/35649 (so include that number in your ChangeLog entry and close that bug as fixed). Co-Authored-By: Joseph Myers <joseph@codesourcery.com> From-SVN: r202006
2013-08-26avr-stdint.h (INT16_TYPE): Change default to "int".Joern Rennecke2-2/+7
* config/avr/avr-stdint.h (INT16_TYPE): Change default to "int". (UINT16_TYPE): Change default to "unsigned int". From-SVN: r202005
2013-08-26c-typeck.c (c_common_type): Prefer double_type_node over other REAL_TYPE ↵Joern Rennecke2-1/+16
types with the same precision. * c-typeck.c (c_common_type): Prefer double_type_node over other REAL_TYPE types with the same precision. (convert_arguments): Likewise. From-SVN: r202004
2013-08-26cgraph.c (cgraph_propagate_frequency): Do not assume that virtual methods ↵Jan Hubicka2-1/+9
can not be called indirectly when... * cgraph.c (cgraph_propagate_frequency): Do not assume that virtual methods can not be called indirectly when their address is not taken. From-SVN: r202003
2013-08-26* gimple-fold.c (gimple_get_virt_method_for_binfo): Use ctor_for_folding.Jan Hubicka2-5/+19
From-SVN: r202002
2013-08-26ipa.c (comdat_can_be_unshared_p_1): C++ constructors and destructors can be ↵Jan Hubicka2-2/+11
unshared. * ipa.c (comdat_can_be_unshared_p_1): C++ constructors and destructors can be unshared. From-SVN: r202001
2013-08-26reload.c (find_valid_class): Allow classes that do not include ↵Joern Rennecke2-2/+7
FIRST_PSEUDO_REGISTER - 1. * reload.c (find_valid_class): Allow classes that do not include FIRST_PSEUDO_REGISTER - 1. From-SVN: r202000
2013-08-26cgraph.c (cgraph_redirect_edge_call_stmt_to_callee): Fix formatting...Jan Hubicka2-14/+36
* cgraph.c (cgraph_redirect_edge_call_stmt_to_callee): Fix formatting; fix edge count/frequency when speculation failed; fix type check for the direct call. From-SVN: r201999
2013-08-26* ipa-prop.c (ipa_print_node_params): Do not ICE during WPA.Jan Hubicka2-7/+5
From-SVN: r201998
2013-08-26ipa-inline-transform.c (inline_transform): Be ready for basic block to be ↵Jan Hubicka2-3/+11
changed by edge redirection. * ipa-inline-transform.c (inline_transform): Be ready for basic block to be changed by edge redirection. From-SVN: r201997
2013-08-26cgraph.c (cgraph_speculative_call_info): Fix parameter order and formating; ↵Jan Hubicka3-8/+28
add sanity check. * cgraph.c (cgraph_speculative_call_info): Fix parameter order and formating; add sanity check. (cgraph_resolve_speculation): Add FIXME about scaling profiles. (cgraph_redirect_edge_call_stmt_to_callee): Fix ICE in debug dump. * ipa-inline.c (heap_edge_removal_hook): Reset node growth cache. (resolve_noninline_speculation): Update callee keys, too. From-SVN: r201996
2013-08-26tree.h (tree_decl_with_vis): Add cxx_constructor, cxx_destructor.Jan Hubicka4-5/+33
* tree.h (tree_decl_with_vis): Add cxx_constructor, cxx_destructor. (DECL_CXX_CONSTRUCTOR_P, DECL_CXX_DESTRUCTOR_P): New macros. * cp-tree.h (DECL_CONSTRUCTOR_P, DECL_DESTRUCTOR_P): Use middle-end flag. From-SVN: r201994
2013-08-26i386.c (x86_64_elf_select_section): Put ATTRIBUTE_UNUSED into proper place.Joern Rennecke2-1/+6
* config/i386/i386.c (x86_64_elf_select_section): Put ATTRIBUTE_UNUSED into proper place. From-SVN: r201993
2013-08-26i386.c (ix86_return_in_memory): Do not remove ATTRIBUTE_UNUSED on function ↵Uros Bizjak2-2/+1
argument. * config/i386/i386.c (ix86_return_in_memory): Do not remove ATTRIBUTE_UNUSED on function argument. From-SVN: r201990
2013-08-26Really commit all changesGabriel Dos Reis5-132/+128
From-SVN: r201989
2013-08-26i386.c (ix86_debug_options): Remove prototype.Uros Bizjak2-27/+31
* config/i386/i386.c (ix86_debug_options): Remove prototype. (x86_64_elf_select_section): Ditto. (ix86_handle_tm_regparm_attribute): Remove ATTRIBUTE_UNUSED on used arguments. (ix86_pass_by_reference): Ditto. (ix86_return_in_memory): Ditto. (output_set_got): Ditto. (ix86_unary_operator_ok): Ditto. (ix86_expand_builtin): Ditto. From-SVN: r201988
2013-08-26c-pretty-print.h (c_pretty_printer::unary_expression): Now a virtual member ↵Gabriel Dos Reis6-231/+266
function. c-family/ * c-pretty-print.h (c_pretty_printer::unary_expression): Now a virtual member function. (c_pretty_printer::multiplicative_expression): Likewise. (c_pretty_printer::conditional_expression): Likewise. (c_pretty_printer::assignment_expression): Likewise. (c_pretty_printer::expression): Likewise. (pp_unary_expression): Adjust. (pp_multiplicative_expression): Likewise. (pp_assignment_expression): Likewise. (pp_conditional_expression): Likewise. (pp_expression): Likewise. * c-pretty-print.c (c_pretty_printer::unary_expression): Rename from pp_c_unary_expression. Adjust. (c_pretty_printer::multiplicative_expression): Rename from pp_c_multiplicative_expression. Adjust. (c_pretty_printer::conditional_expression): Rename from pp_c_conditional_expression. Adjust. (c_pretty_printer::assignment_expression): Rename from pp_c_assignment_expression. Adjust. (c_pretty_printer::expression): Rename from pp_c_expression. Adjust. (c_pretty_printer::c_pretty_printer): Do not assign to unary_expression, multiplicative_expression, conditional_expression, expression. cp/ * cxx-pretty-print.h (cxx_pretty_printer::unary_expression): Declare as overrider. (cxx_pretty_printer::multiplicative_expression): Likewise. (cxx_pretty_printer::conditional_expression): Likewise. (cxx_pretty_printer::assignment_expression): Likewise. (cxx_pretty_printer::expression): Likewise. * cxx-pretty-print.c (cxx_pretty_printer::unary_expression): Rename from pp_cxx_unary_expression. Adjust. (cxx_pretty_printer::multiplicative_expression): Rename from pp_cxx_multiplicative_expression. Adjust. (cxx_pretty_printer::conditional_expression): Rename from pp_cxx_conditional_expression. Adjust. (cxx_pretty_printer::assignment_expression): Rename from pp_cxx_assignment_expression. Adjust. (cxx_pretty_printer::expression): Rename from pp_cxx_expression. Adjust. (cxx_pretty_printer::cxx_pretty_printer): Dot not assign to unary_expression, multiplicative_expression, conditional_expression, assignment_expression, expression. From-SVN: r201987
2013-08-26c-pretty-print.h (c_pretty_printer::postfix_expression): Now a virtual ↵Gabriel Dos Reis6-115/+134
member function. c-family/ * c-pretty-print.h (c_pretty_printer::postfix_expression): Now a virtual member function. (pp_postfix_expression): Adjust. (pp_c_postfix_expression): Remove. * c-pretty-print.c (c_pretty_printer::postfix_expression): Rename from pp_c_postfix_expression. Adjust. (c_pretty_printer::c_pretty_printer): Do not assign to postfix_expression. cp/ * cxx-pretty-print.h (cxx_pretty_printer::postfix_expression): Declare as overrider. * cxx-pretty-print.c (cxx_pretty_printer::postfix_expression): Rename from pp_cxx_postfix_expression. Adjust. (pp_cxx_expression): Use pp_postfix_expression. (cxx_pretty_printer::cxx_pretty_printer): Do not assign to postfix_expression. From-SVN: r201985
2013-08-26Daily bump.GCC Administrator1-1/+1
From-SVN: r201984
2013-08-25re PR fortran/58146 (Array slice bounds checking)Thomas Koenig5-73/+122
2013-08-26 Thomas Koenig <tkoenig@gcc.gnu.org> PR fortran/58146 * array.c (gfc_ref_dimen_size): If possible, use gfc_dep_difference to calculate array refrence sizes. Fall back to integer code otherwise. * dependency.c (discard_nops). Move up. Also discarde widening integer conversions. (gfc_dep_compare_expr): Use discard_nops. 2013-08-26 Thomas Koenig <tkoenig@gcc.gnu.org> PR fortran/58146 * gfortran.dg/bounds_check_18.f90: New test. From-SVN: r201981
2013-08-25c-pretty-print.h (c_pretty_printer::primary_expression): Now a virtua member ↵Gabriel Dos Reis6-43/+64
function. c-family/ * c-pretty-print.h (c_pretty_printer::primary_expression): Now a virtua member function. (pp_primary_expression): Adjust. (pp_c_primary_expression): Remove. * c-pretty-print.c (c_pretty_printer::primary_expression): Rename from pp_c_primary_expression. Adjust. (pp_c_initializer_list): Use pp_primary_expression. (c_pretty_printer::c_pretty_printer): Do not assign to primary_expression. cp/ * cxx-pretty-print.h (cxx_pretty_printer::primary_expression): Now an overrider of c_pretty_printer::primary_expression. * cxx-pretty-print.c (cxx_pretty_printer::primary_expression): Rename from pp_cxx_primary_expression. Adjust. (pp_cxx_postfix_expression): Use pp_primary_expression. (pp_cxx_ctor_initializer): Likewise. (cxx_pretty_printer::cxx_pretty_printer): Do not assign to primary_expression. From-SVN: r201978
2013-08-25cgraph.c (cgraph_turn_edge_to_speculative): Fix debug output.Jan Hubicka2-2/+7
* cgraph.c (cgraph_turn_edge_to_speculative): Fix debug output. From-SVN: r201977
2013-08-25* g++.dg/ipa/devirt-14.C: Fix typo.Jan Hubicka2-1/+5
From-SVN: r201976
2013-08-25tree.h (TYPE_FINAL_P, [...]): New macros.Jan Hubicka5-9/+32
* tree.h (TYPE_FINAL_P, DECL_FINAL_P): New macros. (tree_decl_with_vis): Add FINAL field. * cp-tree.h (struct lang_type_class): Free is_final bit. (CLASSTYPE_FINAL): Define using TYPE_FINAL_P. (DECL_FINAL_P): Remove. * pt.c (instantiate_class_template_1): Guard that CLASSTYPE_FINAL is called on CLASS_TYPE_P. From-SVN: r201975
2013-08-25c-pretty-print.h (c_pretty_printer::translate_string): Declare.Gabriel Dos Reis5-23/+42
c-family/ * c-pretty-print.h (c_pretty_printer::translate_string): Declare. * c-pretty-print.c (M_): Remove. (c_pretty_printer::translate_string): Define. (pp_c_type_specifier): Use it. (pp_c_primary_expression): Likewise. (pp_c_expression): Likewise. cp/ * cxx-pretty-print.c (M_): Remove. (pp_cxx_unqualified_id): Use translate_string instead of M_. (pp_cxx_canonical_template_parameter): Likewise. From-SVN: r201974
2013-08-25c-pretty-print.h (c_pretty_printer::id_expression): Now a virtual function.Gabriel Dos Reis6-19/+39
c-family/ * c-pretty-print.h (c_pretty_printer::id_expression): Now a virtual function. (pp_c_id_expression): Remove. (pp_id_expression): Adjust. * c-pretty-print.c (c_pretty_printer::id_expression): Rename from pp_c_id_expression. Adjust. (pp_c_postfix_expression): Use pp_id_expression. (c_pretty_printer::c_pretty_printer): Do not assign to id_expression. cp/ * cxx-pretty-print.h (cxx_pretty_printer::id_expression): Declare. * cxx-pretty-print.c (cxx_pretty_printer::id_expression): Rename from pp_cxx_id_expression. Adjust. (pp_cxx_userdef_literal): Use pp_id_expression. (pp_cxx_primary_expression): Likewise. (pp_cxx_direct_declarator): Likewise. (cxx_pretty_printer::cxx_pretty_printer): Do not assign to id_expression. From-SVN: r201973
2013-08-25Daily bump.GCC Administrator1-1/+1
From-SVN: r201972
2013-08-24c-pretty-print.h (c_pretty_printer::constant): Now a virtual member function.Gabriel Dos Reis6-27/+46
* c-pretty-print.h (c_pretty_printer::constant): Now a virtual member function. (pp_constant): Adjust. (pp_c_constant): Remove. * c-pretty-print.c (c_pretty_printer::constant): Rename from pp_c_constant. Adjust. (pp_c_constant) (pp_c_primary_expression): Call pp_constant in lieu of pp_c_constant. (c_pretty_printer::c_pretty_printer): Remove assignment to constant. cp/ * cxx-pretty-print.h (cxx_pretty_printer::constant): Now a member function, overriding c_pretty_printer::constant. * cxx-pretty-print.c (cxx_pretty_printer::constant): Rename from pp_cxx_constant. Adjust. (cxx_pretty_printer::cxx_pretty_printer): Do not assign to constant. From-SVN: r201969
2013-08-23tree-ssa-pre.c (do_regular_insertion): Include the expression in the ↵Jeff Law2-1/+10
debugging dump when the expression is fully redundant. * tree-ssa-pre.c (do_regular_insertion): Include the expression in the debugging dump when the expression is fully redundant. From-SVN: r201963
2013-08-24Daily bump.GCC Administrator1-1/+1
From-SVN: r201959
2013-08-23diagnostic.c (diagnostic_set_caret_max_width): Use pp_buffer.Gabriel Dos Reis10-22/+75
* diagnostic.c (diagnostic_set_caret_max_width): Use pp_buffer. * gimple-pretty-print.c (gimple_dump_bb_buff): Likewise. * pretty-print.c (pp_formatted_text_data): Likewise. (pp_write_text_to_stream): Likewise. (pp_write_text_as_dot_label_to_stream): Likewise. (pp_append_r): Likewise. (pp_format): Likewise. (pp_flush): Likewise. (pp_clear_output_area): Likewise. (pp_append_text): Likewise. (pp_formatted_text): Likewise. (pp_remaining_character_count_for_line): Likewise. (pp_newline): Likewise. (pp_character): Likewise. (output_buffer::~output_buffer): Define. (pretty_printer::~pretty_printer): Destruct output buffer. * pretty-print.h (output_buffer::~output_buffer): Declare. (pretty_printer::~pretty_printer): Declare virtual. c/ * c-objc-common.c (c_tree_printer): Document the nature of the cast. (c_initialize_diagnostics): Call a destructor for the early printer. cp/ * cp-objcp-common.c (cxx_initialize_diagnostics): Call a destructor for the early printer. * error.c (type_to_string): Use pp_buffer. From-SVN: r201956
2013-08-23re PR other/57324 (Undefined behavior issues found with clang's ↵Marc Glisse13-52/+73
-fsanitize=undefined) 2013-08-24 Marc Glisse <marc.glisse@inria.fr> PR other/57324 * hwint.h (HOST_WIDE_INT_UC, HOST_WIDE_INT_1U, HOST_WIDE_INT_M1, HOST_WIDE_INT_M1U): New macros. * fold-const.c (sign_bit_p, build_range_check, fold_unary_loc, fold_binary_loc, fold_ternary_loc): Use the new macros. Use an unsigned -1 for lshift. * cse.c (cse_insn): Likewise. * double-int.c (rshift_double, lshift_double): Likewise. * builtins.c (fold_builtin_bitop): Likewise. * combine.c (force_to_mode): Likewise. * tree.c (integer_pow2p, tree_log2, tree_floor_log2): Likewise. * simplify-rtx.c (simplify_const_unary_operation, simplify_const_binary_operation): Likewise. * tree-stdarg.c (va_list_counter_bump, va_list_ptr_read, check_va_list_escapes): Likewise. * rtlanal.c (nonzero_bits1): Likewise. * expmed.c (expand_smod_pow2): Likewise. * tree-ssa-structalias.c (UNKNOWN_OFFSET): Use HOST_WIDE_INT_MIN. From-SVN: r201953
2013-08-23compiler: don't export embedded builtins.Ian Lance Taylor2-3/+28
The panic in test/fixedbugs/bug461.go was caused by the fact that reflect expects unexported fields in a struct to have a valid package path. If a struct field is an embedded built-in type, it is now given the package name of the currently compiling package, so it remains unexported for purposes of reflect. Fixed Issue 25. From-SVN: r201951
2013-08-23cgraph.c (cgraph_turn_edge_to_speculative): Mark target node as having ↵Jan Hubicka2-0/+6
address taken. * cgraph.c (cgraph_turn_edge_to_speculative): Mark target node as having address taken. From-SVN: r201948
2013-08-23re PR fortran/57798 (Incorrect handling of sum over first dimension of a ↵Mikael Morin4-7/+58
product of automatic arrays) fortran/ PR fortran/57798 * trans-array.c (gfc_conv_ss_startstride, set_loop_bounds, gfc_set_delta): Generate preliminary code before the outermost loop. testsuite/ PR fortran/57798 * gfortran.dg/inline_sum_5.f90: New. From-SVN: r201947
2013-08-23re PR fortran/57843 ([OOP] Type-bound assignment is resolved to ↵Janus Weil4-48/+115
non-polymorphic procedure call) 2013-08-23 Janus Weil <janus@gcc.gnu.org> PR fortran/57843 * interface.c (gfc_extend_assign): Look for type-bound assignment procedures before non-typebound. 2013-08-23 Janus Weil <janus@gcc.gnu.org> PR fortran/57843 * gfortran.dg/typebound_assignment_7.f90: New. From-SVN: r201946
2013-08-23trans-array.c (gfc_conv_section_startstride): Move &loop->pre access to the ↵Mikael Morin2-8/+14
callers. 2013-08-23 Mikael Morin <mikael@gcc.gnu.org> * trans-array.c (gfc_conv_section_startstride): Move &loop->pre access to the callers. (gfc_conv_ss_startstride, gfc_conv_expr_descriptor): Update callers. From-SVN: r201945
2013-08-23ipa-utils.h (method_class_type): Declare.Jan Hubicka3-1/+5
* ipa-utils.h (method_class_type): Declare. * ipa-devirt.c (method_class_type): Export. * cgraphunit.c (analyze_functions): Do basic devirtualization; do not walk base classes of anonymous types. From-SVN: r201944