- 14 Sep, 2012 17 commits
-
-
From-SVN: r191306
Richard Earnshaw committed -
* reload.c (find_dummy_reload): Don't use OUT as a reload reg for IN if it overlaps a fixed register. From-SVN: r191305
Richard Earnshaw committed -
c: PR c/54103 * c-typeck.c (build_unary_op): Pass original argument of TRUTH_NOT_EXPR to c_objc_common_truthvalue_conversion, then remove any C_MAYBE_CONST_EXPR, if it has integer operands. (build_binary_op): Pass original arguments of TRUTH_ANDIF_EXPR, TRUTH_ORIF_EXPR, TRUTH_AND_EXPR, TRUTH_OR_EXPR and TRUTH_XOR_EXPR to c_objc_common_truthvalue_conversion, then remove any C_MAYBE_CONST_EXPR, if they have integer operands. Use c_objc_common_truthvalue_conversion not c_common_truthvalue_conversion. (c_objc_common_truthvalue_conversion): Build NE_EXPR directly and call note_integer_operands for arguments with integer operands that are not integer constants. testsuite: * gcc.c-torture/compile/pr54103-1.c, gcc.c-torture/compile/pr54103-2.c, gcc.c-torture/compile/pr54103-3.c, gcc.c-torture/compile/pr54103-4.c, gcc.c-torture/compile/pr54103-5.c, gcc.c-torture/compile/pr54103-6.c: New tests. * gcc.dg/c90-const-expr-8.c: Update expected column number. From-SVN: r191304
Joseph Myers committed -
2012-09-14 Paolo Carlini <paolo.carlini@oracle.com> * decl.c (make_typename_type): Only error out if tf_error is set in complain. From-SVN: r191303
Paolo Carlini committed -
PR rtl-optimization/44194 * calls.c (expand_call): In the PARALLEL case, copy the return value into pseudos instead of spilling it onto the stack. * emit-rtl.c (adjust_address_1): Rename ADJUST into ADJUST_ADDRESS and add new ADJUST_OBJECT parameter. If ADJUST_OBJECT is set, drop the underlying object if it cannot be proved that the adjusted memory access is still within its bounds. (adjust_automodify_address_1): Adjust call to adjust_address_1. (widen_memory_access): Likewise. * expmed.c (store_bit_field_1): Call adjust_bitfield_address instead of adjust_address. Do not drop the underlying object of a MEM. (store_fixed_bit_field): Likewise. (extract_bit_field_1): Likewise. Fix oversight in recursion. (extract_fixed_bit_field): Likewise. * expr.h (adjust_address_1): Adjust prototype. (adjust_address): Adjust call to adjust_address_1. (adjust_address_nv): Likewise. (adjust_bitfield_address): New macro. (adjust_bitfield_address_nv): Likewise. * expr.c (expand_assignment): Handle a PARALLEL in more cases. (store_expr): Likewise. (store_field): Likewise. * dse.c: Fix typos in the head comment. From-SVN: r191302
Eric Botcazou committed -
PR target/54546 * config/sh/sh-protos.h (sh_need_epilogue): Delete. (sh_can_use_simple_return_p): Declare. * config/sh/sh.c (sh_can_use_simple_return_p): Define. (sh_need_epilogue, sh_need_epilogue_known): Delete. (sh_output_function_epilogue): Remove sh_need_epilogue_known. * config/sh/sh.md (simple_return, return): Define. (epilogue): Use inline return rtl. (sh_expand_epilogue): Cleanup parameters boolean type. * config/sh/iterators.md (any_return): New iterator. From-SVN: r191301
Christian Bruel committed -
2012-09-14 Christian Bruel <christian.bruel@st.com> * config/sh/predicates.md (t_reg_operand): Check REG_P for SUBREG. * config/sh/sh.c (sequence_insn_p: Check INSNP_P for SEQUENCE. From-SVN: r191300
Christian Bruel committed -
PR target/54564 * config/i386/sse.md (fmai_vmfmadd_<mode>): Use (match_dup 1) instead of (match_dup 0) as second argument to vec_merge. (*fmai_fmadd_<mode>, *fmai_fmsub_<mode>): Likewise. Remove third alternative. (*fmai_fnmadd_<mode>, *fmai_fnmsub_<mode>): Likewise. Negate operand 2 instead of operand 1, but put it as first argument of fma. * config/i386/fmaintrin.h (_mm_fnmadd_sd, _mm_fnmadd_ss, _mm_fnmsub_sd, _mm_fnmsub_ss): Negate the second argument instead of the first. From-SVN: r191298
Jakub Jelinek committed -
PR target/54564 * config/i386/sse.md (fmai_vmfmadd_<mode>): Use (match_dup 1) instead of (match_dup 0) as second argument to vec_merge. (*fmai_fmadd_<mode>, *fmai_fmsub_<mode>): Likewise. Remove third alternative. (*fmai_fnmadd_<mode>, *fmai_fnmsub_<mode>): Likewise. Negate operand 2 instead of operand 1, but put it as first argument of fma. * config/i386/fmaintrin.h (_mm_fnmadd_sd, _mm_fnmadd_ss, _mm_fnmsub_sd, _mm_fnmsub_ss): Negate the second argument instead of the first. From-SVN: r191297
Jakub Jelinek committed -
* Tweak last ChangeLog entry. From-SVN: r191296
Paolo Carlini committed -
2012-09-14 Richard Guenther <rguenther@suse.de> PR tree-optimization/54565 * passes.c (init_optimization_passes): Adjust comments. (execute_function_todo): Do not execute execute_update_addresses_taken before processing TODO_rebuild_alias. * tree-ssa-ccp.c (do_ssa_ccp): Schedule TODO_update_address_taken. * gcc.dg/tree-ssa/ssa-ccp-17.c: Adjust. * gcc.dg/tree-ssa/forwprop-6.c: Likewise. Remove XFAIL. From-SVN: r191295
Richard Guenther committed -
PR libstdc++/54576 * libstdc++-v3/src/c++11/random.cc: Check if _GLIBCXX_USE_C99_STDINT_TR1 is defined. Co-Authored-By: H.J. Lu <hongjiu.lu@intel.com> From-SVN: r191294
Jonathan Wakely committed -
2012-09-14 Richard Guenther <rguenther@suse.de> * tree-vrp.c (register_new_assert_for): Simplify for backward walk. (find_assert_locations_1): Walk the basic-block backwards, properly add/prune from live. Use live for asserts derived from stmts. From-SVN: r191293
Richard Guenther committed -
2012-09-14 Marc Glisse <marc.glisse@inria.fr> * tree-ssa-forwprop.c (simplify_bitfield_ref): Call get_prop_source_stmt. (simplify_permutation): Likewise. (simplify_vector_constructor): Likewise. From-SVN: r191292
Marc Glisse committed -
From-SVN: r191291
Ulrich Weigand committed -
2012-09-14 Richard Guenther <rguenther@suse.de> * builtin-types.def (BT_FN_CONST_STRING): Add. * builtins.def (BUILT_IN_FILE, BUILT_IN_FUNCTION, BUILT_IN_LINE): New builtins. * gimplify.c (gimplify_call_expr): Expand them. * doc/extend.texi (__builtin_LINE, __builtin_FUNCTION, __builtin_FILE): Document. * g++.dg/torture/builtin-location.C: New testcase. From-SVN: r191290
Richard Guenther committed -
From-SVN: r191288
GCC Administrator committed
-
- 13 Sep, 2012 20 commits
-
-
From-SVN: r191285
Anthony Green committed -
2012-09-13 Paolo Carlini <paolo.carlini@oracle.com> Manuel López-Ibáñez <manu@gcc.gnu.org> PR c++/53210 * doc/invoke.texi ([Winit-self]): Document as enabled by -Wall in C++. /c-family 2012-09-13 Paolo Carlini <paolo.carlini@oracle.com> Manuel López-Ibáñez <manu@gcc.gnu.org> PR c++/53210 * c.opt ([Winit-self]): Enabled by -Wall in C++. /cp 2012-09-13 Paolo Carlini <paolo.carlini@oracle.com> Manuel López-Ibáñez <manu@gcc.gnu.org> PR c++/53210 * init.c (perform_member_init): Use OPT_Winit_self instead of OPT_Wuninitialized. /testsuite 2012-09-13 Paolo Carlini <paolo.carlini@oracle.com> Manuel López-Ibáñez <manu@gcc.gnu.org> PR c++/53210 * g++.dg/warn/Winit-self.C: New. Co-Authored-By: Manuel López-Ibáñez <manu@gcc.gnu.org> From-SVN: r191284
Paolo Carlini committed -
* config/sparc/predicates.md (input_operand): Do not consider TImode constants as 1-instruction integer constants. Use register_or_zero_operand instead of register_operand and tidy up. * config/sparc/sparc.md (movti): New expander. (movti_insn_sp64): New instruction. (movti_insn_sp64_hq): Likewise. (TImode splitters): New splitters. * config/sparc/sparc.c (sparc_expand_move) <TImode>: New case. (sparc_legitimate_address_p): Return 0 for REG+REG in TImode. * config/sparc/sparc-protos.h (arith_double_4096_operand): Delete. (arith_4096_operand): Likewise. (zero_operand): Likewise. (fp_zero_operand): Likewise. (reg_or_0_operand): Likewise. From-SVN: r191283
Eric Botcazou committed -
2012-09-13 Paolo Carlini <paolo.carlini@oracle.com> * typeck.c (build_indirect_ref, build_function_call, build_function_call_vec, build_binary_op, build_unary_op, build_compound_expr, build_c_cast, build_modify_expr): Remove uses of ATTRIBUTE_UNUSED on the parameters. * class.c (set_linkage_according_to_type, resort_type_method_vec, dfs_find_final_overrider_post, empty_base_at_nonzero_offset_p): Likewise. * decl.c (local_variable_p_walkfn): Likewise. * except.c (wrap_cleanups_r, check_noexcept_r): Likewise. * error.c (find_typenames_r): Likewise. * tree.c (verify_stmt_tree_r, bot_replace, handle_java_interface_attribute, handle_com_interface_attribute, handle_init_priority_attribute, c_register_addr_space): Likewise. * cp-gimplify.c (cxx_omp_clause_default_ctor): Likewise. * cp-lang.c (objcp_tsubst_copy_and_build): Likewise. * pt.c (unify_success, unify_invalid, instantiation_dependent_r): Likewise. * semantics.c (dfs_calculate_bases_pre): Likewise. * decl2.c (fix_temporary_vars_context_r, clear_decl_external): Likewise. * parser.c (cp_lexer_token_at, cp_parser_omp_clause_mergeable, cp_parser_omp_clause_nowait, cp_parser_omp_clause_ordered, cp_parser_omp_clause_untied): Likewise. * mangle.c (write_unnamed_type_name, discriminator_for_string_literal): Likewise. * search.c (dfs_accessible_post, dfs_debug_mark): Likewise. * lex.c (handle_pragma_vtable, handle_pragma_unit, handle_pragma_interface, handle_pragma_implementation, handle_pragma_java_exceptions): Likewise. From-SVN: r191281
Paolo Carlini committed -
PR c/54559 * c-typeck.c (c_finish_return): Do convert to BOOLEAN_TYPE or COMPLEX_TYPE with in_late_binary_op set temporarily to true. * gcc.c-torture/compile/pr54559.c: New test. From-SVN: r191270
Jakub Jelinek committed -
* configure.ac (CXXFLAGS): Remove -O2 when not bootstrapping. * configure: Regenerated. From-SVN: r191267
Jakub Jelinek committed -
PR c++/53839 * semantics.c (cxx_eval_indirect_ref): If we aren't looking for an address, make sure the value is constant. From-SVN: r191263
Jason Merrill committed -
PR c++/54511 * pt.c (tsubst_decl) [VAR_DECL]: Handle DECL_ANON_UNION_VAR_P. From-SVN: r191262
Jason Merrill committed -
PR c++/53836 * pt.c (value_dependent_expression_p): A TREE_LIST initializer must be dependent. From-SVN: r191261
Jason Merrill committed -
2012-09-13 Tobias Burnus <burnus@net-b.de> PR fortran/54556 * resolve.c (resolve_formal_arglist): Allow VALUE arguments with implicit_pure. (gfc_impure_variable): Don't check gfc_pure such that the function also works for gfc_implicit_pure procedures. 2012-09-13 Tobias Burnus <burnus@net-b.de> PR fortran/54556 * gfortran.dg/implicit_pure_3.f90: New. From-SVN: r191259
Tobias Burnus committed -
* config/i386/i386.md (prefetch): Do not assert mode of operand 0. (*prefetch_sse_<mode>): Do not set mode of address_operand predicate. Rename to ... (*prefetch_sse): ... this. (*prefetch_3dnow_<mode>): Do not set mode of address_operand predicate. Rename to ... (*prefetch_3dnow): ... this. From-SVN: r191256
Uros Bizjak committed -
ipa-pure-const.c (state_from_flags, [...]): Use current_function_name instead of lang_hooks.decl_printable_name. * ipa-pure-const.c (state_from_flags, local_pure_const): Use current_function_name instead of lang_hooks.decl_printable_name. * function.h (fndecl_name): New prototype. * function.c (fndecl_name): New function. * vecir.h (cgraph_node_p): New standard IR VEC type. * trans-mem.c (cgraph_node_p): No need anymore to define it here. * ipa-utils.h (ipa_get_nodes_in_cycle): New prototype. * ipa-utils.c (ipa_get_nodes_in_cycle): New function. * ipa-reference.c: Don't include langhooks.h, and certainly not twice. Fix many formatting issues (long lines, short lines, spacing, etc.). (get_static_name): Use fndecl_name. (dump_static_vars_set_to_file): New function split out from propagate. (union_static_var_sets): New function, union two sets and collapse to all_module_statics as quickly as possible. (intersect_static_var_sets): New function, similar to above. (copy_static_var_set): Renamed from copy_global_bitmap and rewritten to allocate a copy on the same bitmap_obstack as the source set. (propagate_bits): Simplify, and clarify by using union_static_var_sets. (generate_summary): Remove bm_temp. Print UID of promotable globals. (read_write_all_from_decl): Use pass-by-reference, bless C++. (get_read_write_all_from_node): New function, split out from propagate. (propagate): Simplify and clarify with helper functions. Use ipa_get_nodes_in_cycle to walk all nodes in a reduced node. (ipa_reference_read_optimization_summary): Use fndecl_name instead of lang_hooks.decl_printable_name. * rtl.h (print_rtl_single_with_indent): New prototype. * print-rtl.c (print_rtl_single_with_indent): New function. * cfghooks.h (empty_block_p, split_block_before_cond_jump): New hooks. * cfghooks.c (empty_block_p, split_block_before_cond_jump): Implement. * cfgrtl.c (rtl_block_empty_p, rtl_split_block_before_cond_jump): Implement RTL specific hooks. (rtl_cfg_hooks, cfg_layout_rtl_cfg_hooks): Register the new hooks. * tree-cfg.c (gimple_empty_block_p, gimple_split_block_before_cond_jump): Implement GIMPLE specific hooks. (gimple_cfg_hooks): Register the new hooks. * tree-ssa-phiopt.c (empty_block_p): Remove in favor of new hook. From-SVN: r191255
Steven Bosscher committed -
2012-09-13 Richard Guenther <rguenther@suse.de> * tree-ssa-sccvn.h (enum vn_kind): New. (vn_get_stmt_kind): Likewise. * tree-ssa-sccvn.c (vn_get_stmt_kind): New function, adjust ADDR_EXPR handling. (visit_use): Use it. * tree-ssa-pre.c (compute_avail): Likewise, simplify further. * gcc.dg/tree-ssa/ssa-fre-37.c: New testcase. From-SVN: r191253
Richard Guenther committed -
From-SVN: r191248
Uros Bizjak committed -
From-SVN: r191245
Venkataramanan Kumar committed -
2012-09-13 Christophe Lyon <christophe.lyon@linaro.org> Richard Earnshaw <rearnsha@arm.com> gcc/ * config/arm/arm.md (arm_rev): Factorize thumb1, thumb2 and arm variants for rev instruction.. (thumb1_rev): Delete pattern. (arm_revsh): New pattern to support builtin_bswap16. (arm_rev16, bswaphi2): Likewise. gcc/testsuite/ * gcc.target/arm/builtin-bswap-1.c: New testcase. Co-Authored-By: Richard Earnshaw <rearnsha@arm.com> From-SVN: r191243
Christophe Lyon committed -
2012-09-12 Kyrylo Tkachov <kyrylo.tkachov@arm.com> * c-c++-common/pr51712.c: Handle for short-enum targets. From-SVN: r191241
Kyrylo Tkachov committed -
2012-09-12 Terry Guo <terry.guo@arm.com> * gcc.target/arm/combine-movs.c: Check movs for ARM mode and lsrs for Thumb2 mode. From-SVN: r191239
Terry Guo committed -
This fixes PR gcov-profile/54487 where the gcda files were not locked by the profile-use read, enabling writes by other instrumented compiles to change the profile in the middle of the profile use read. The GCOV_LOCKED macro was not set because it was guarded by HOST_HAS_F_SETLKW, which was never set. The fix is to add a compile test in the configure to set it. 2012-09-12 Teresa Johnson <tejohnson@google.com> PR gcov-profile/54487 * configure.ac (HOST_HAS_F_SETLKW): Set based on compile test using F_SETLKW with fcntl. * configure, config.in: Regenerate. From-SVN: r191238
Teresa Johnson committed -
From-SVN: r191237
GCC Administrator committed
-
- 12 Sep, 2012 3 commits
-
-
PR fortran/48636 * gcc.dg/ipa/inlinehint-2.c: New testcase. * ipa-inline-analysis.c (dump_inline_hints): Dump loop stride. (set_hint_predicate): New function. (reset_inline_summary): Reset loop stride. (remap_predicate_after_duplication): New function. (remap_hint_predicate_after_duplication): New function. (inline_node_duplication_hook): Update. (dump_inline_summary): Dump stride summaries. (estimate_function_body_sizes): Compute strides. (remap_hint_predicate): New function. (inline_merge_summary): Use it. (inline_read_section): Read stride. (inline_write_summary): Write stride. * ipa-inline.c (want_inline_small_function_p): Handle strides. (edge_badness): Likewise. * ipa-inline.h (inline_hints_vals): Add stride hint. (inline_summary): Update stride. From-SVN: r191232
Jan Hubicka committed -
* config/i386/i386.c (x86_prefetch_sse): Change to unsigned char. * config/i386/i386.h (x86_prefetch_sse): Ditto. From-SVN: r191231
Uros Bizjak committed -
gcc/ PR target/54445 * config/i386/predicates.md (x86_64_immediate_operand): Allow negative offset for UNSPEC_DTPOFF/UNSPEC_NTPOFF. gcc/testsuite/ PR target/54445 * gcc.target/i386/pr54445-1.c: New file. * gcc.target/i386/pr54445-2.c: Likewise. From-SVN: r191230
H.J. Lu committed
-