- 19 May, 2009 16 commits
-
-
2009-05-19 H.J. Lu <hongjiu.lu@intel.com> PR c/40172 * gcc.dg/pr40172.c: Renamed to ... * gcc.dg/pr40172-1.c: This. * gcc.dg/pr40172-2.c: New. * gcc.dg/pr40172-3.c: Likewise. From-SVN: r147719
H.J. Lu committed -
i386.c (ix86_avoid_jump_mispredicts): Check ASM_OUTPUT_MAX_SKIP_PAD instead of ASM_OUTPUT_MAX_SKIP_ALIGN. 2009-05-19 H.J. Lu <hongjiu.lu@intel.com> * config/i386/i386.c (ix86_avoid_jump_mispredicts): Check ASM_OUTPUT_MAX_SKIP_PAD instead of ASM_OUTPUT_MAX_SKIP_ALIGN. From-SVN: r147718
H.J. Lu committed -
2009-05-19 Manuel López-Ibáñez <manu@gcc.gnu.org> PR c/40172 gcc/ * c.opt (Wlogical-op): Disabled by default. * c-opt (c_common_post_options): Do not enable Wlogical-op with Wextra. * doc/invoke.texi (Wlogical-op): Likewise. testsuite/ * gcc.dg/pr40172.c: Add -Wlogical-op to dg-options. From-SVN: r147717
Manuel López-Ibáñez committed -
* tree-scalar-evolution.c (follow_ssa_edge_expr) <NOP_EXPR>: Turn into CASE_CONVERT. <PLUS_EXPR>: Strip useless type conversions instead of type nops. Propagate the type of the first operand. <ASSERT_EXPR>: Simplify. (follow_ssa_edge_in_rhs): Use gimple_expr_type to get the type. Rewrite using the RHS code as discriminant. <NOP_EXPR>: Turn into CASE_CONVERT. <PLUS_EXPR>: Propagate the type of the first operand. From-SVN: r147716
Eric Botcazou committed -
re PR libstdc++/40184 (locale(const char* std_name) can create invalid facets for nonuniform locale) 2009-05-19 Paolo Carlini <paolo.carlini@oracle.com> PR libstdc++/40184 * include/bits/locale_classes.h (locale::facet::_S_lc_ctype_c_locale): Declare... * config/locale/gnu/c_locale.cc: ... and define. * config/locale/generic/c_locale.cc: Define. * src/localename.cc (locale::_Impl::_Impl(const char*, size_t)): Use it. * testsuite/22_locale/locale/cons/40184.cc: New. From-SVN: r147714
Paolo Carlini committed -
* config/ia64/ia64-protos.h (ia64_dconst_0_5): New. (ia64_dconst_0_375): New. * config/ia64/ia64.c (ia64_override_options): Remove -minline-sqrt-min-latency warning. (ia64_dconst_0_5_rtx, ia64_dconst_0_5): New. (ia64_dconst_0_375_rtx, ia64_dconst_0_375): New * config/ia64/ia64.md (*sqrt_approx): Remove. (sqrtsf2): Remove #if 0. (sqrtsf2_internal_thr): Rewrite and move to div.md. (sqrtdf): Remove assert. (sqrtdf2_internal_thr): Rewrite and move to div.md. (sqrtxf2): Remove #if 0. (sqrtxf2_internal_thr): Rewrite and move to div.md. * div.md (sqrt_approx_rf): New. (sqrtsf2_internal_thr): New implementation. (sqrtsf2_internal_lat): New. (sqrtdf2_internal_thr: New implementation. (sqrtxf2_internal): New implementation. From-SVN: r147713
Steve Ellcey committed -
(WCHAR_TYPE, MODIFIED_WCHAR_TYPE, PTRDIFF_TYPE, WINT_TYPE) (INTMAX_TYPE, UINTMAX_TYPE, SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE) (INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE) (UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE) (INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE) (UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE) (INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE) (UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE) (SIZE_TYPE, PID_TYPE, CHAR16_TYPE, CHAR32_TYPE): Move defaults here... * c-common.c: ...from here. Co-Authored-By: Hans-Peter Nilsson <hp@axis.com> From-SVN: r147712
Francois-Xavier Coudert committed -
From-SVN: r147709
H.J. Lu committed -
2009-05-19 Manuel López-Ibáñez <manu@gcc.gnu.org> * c-common.c (warn_logical_operator): Remove unnecessary conditionals. From-SVN: r147708
Manuel López-Ibáñez committed -
* builtins.c (do_mpc_arg1): Separate MPFR/MPC C rounding types. From-SVN: r147707
Kaveh R. Ghazi committed -
* unwind-dw2-fde.c (fde_unencoded_compare): Replace type punning assignments with memcpy calls. (add_fdes): Likewise. (binary_search_unencoded_fdes): Likewise. (linear_search_fdes): Eliminate type puns. From-SVN: r147705
Ben Elliston committed -
tree-ssa-forwprop.c (forward_propagate_addr_expr_1): Do not falsely claim to have propagated into all uses. 2009-05-19 Richard Guenther <rguenther@suse.de> * tree-ssa-forwprop.c (forward_propagate_addr_expr_1): Do not falsely claim to have propagated into all uses. * gcc.c-torture/compile/20090519-1.c: New testcase. From-SVN: r147702
Richard Guenther committed -
* cp-demangle.c (cplus_demangle_fill_ctor): Fix logic bug. (cplus_demangle_fill_dtor): Likewise. Co-Authored-By: Ben Elliston <bje@au.ibm.com> From-SVN: r147699
Ian Lance Taylor committed -
PR other/40159 * Makefile.tpl (all): Don't assume gcc-bootstrap and gcc-no-bootstrap are mutually exclusive. * Makefile.in: Rebuilt. From-SVN: r147695
Alexandre Oliva committed -
From-SVN: r147688
GCC Administrator committed -
PR other/40159 * Makefile.tpl (all): Don't end with unconditional success. * Makefile.in: Rebuilt. From-SVN: r147683
Alexandre Oliva committed
-
- 18 May, 2009 22 commits
-
-
* doc/invoke.texi (C Dialect Options): Update OpenMP specification version to v3.0. From-SVN: r147682
Ben Elliston committed -
2009-05-18 Paolo Carlini <paolo.carlini@oracle.com> PR libstdc++/40192 * include/bits/stl_construct.h (struct _Destroy_aux): Add. (_Destroy(_ForwardIterator, _ForwardIterator)): Use the latter. * testsuite/23_containers/vector/40192.cc: New. From-SVN: r147680
Paolo Carlini committed -
* config/sh/sh-protos.h (sh_legitimate_address_p): Remove. * config/sh/sh.c (sh_legitimate_address_p): Make static. (TARGET_LEGITIMATE_ADDRESS_P): New. * config/sh/sh.h (GO_IF_LEGITIMATE_ADDRESS): Delete. * config/sh/sh.md: Clean up references to GO_IF_LEGITIMATE_ADDRESS. From-SVN: r147679
Kaz Kojima committed -
2009-05-18 Jonathan Wakely <jwakely.gcc@gmail.com> * include/bits/stl_pair.h (swap): Do not swap rvalues. * include/bits/stl_deque.h (swap): Likewise. * include/bits/stl_list.h (swap): Likewise. * include/bits/stl_vector.h (swap): Likewise. * include/bits/stl_bvector.h (swap): Likewise. * include/bits/stl_queue.h (swap): Likewise. * include/bits/stl_stack.h (swap): Likewise. * include/bits/stl_tree.h (swap): Likewise. * include/bits/stl_map.h (swap): Likewise. * include/bits/stl_multimap.h (swap): Likewise. * include/bits/stl_set.h (swap): Likewise. * include/bits/stl_multiset.h (swap): Likewise. * include/bits/forward_list.h (swap): Likewise. * include/bits/unique_ptr.h (swap): Likewise. * include/debug/deque (swap): Likewise. * include/debug/list (swap): Likewise. * include/debug/vector (swap): Likewise. * include/debug/map.h (swap): Likewise. * include/debug/multimap.h (swap): Likewise. * include/debug/set.h (swap): Likewise. * include/debug/multiset.h (swap): Likewise. * include/debug/unordered_map (swap): Likewise. * include/debug/unordered_set (swap): Likewise. * include/ext/vstring.h (swap): Likewise. * include/tr1_impl/unordered_map (swap): Likewise. * include/tr1_impl/hashtable (swap): Likewise. * include/tr1_impl/unordered_set (swap): Likewise. * include/std/tuple (swap): Likewise. * include/std/mutex (swap): Likewise. * include/std/thread (swap): Likewise. (operator<<): Only output to lvalue streams. * testsuite/20_util/shared_ptr/modifiers/swap_rvalue.cc: Remove. * testsuite/23_containers/headers/forward_list/synopsis.cc: Adjust. * testsuite/23_containers/deque/requirements/dr438/ assign_neg.cc: Adjust line numbers. * testsuite/23_containers/deque/requirements/dr438/ constructor_1_neg.cc: Likewise. * testsuite/23_containers/deque/requirements/dr438/ constructor_2_neg.cc: Likewise. * testsuite/23_containers/deque/requirements/dr438/ insert_neg.cc: Likewise. * testsuite/23_containers/list/requirements/dr438/ assign_neg.cc: Likewise. * testsuite/23_containers/list/requirements/dr438/ constructor_1_neg.cc: Likewise. * testsuite/23_containers/list/requirements/dr438/ constructor_2_neg.cc: Likewise. * testsuite/23_containers/list/requirements/dr438/ insert_neg.cc: Likewise. * testsuite/23_containers/vector/requirements/dr438/ assign_neg.cc: Likewise. * testsuite/23_containers/vector/requirements/dr438/ constructor_1_neg.cc: Likewise. * testsuite/23_containers/vector/requirements/dr438/ constructor_2_neg.cc: Likewise. * testsuite/23_containers/vector/requirements/dr438/ insert_neg.cc: Likewise. * testsuite/30_threads/thread/swap/1.cc: Swap with lvalue and also test non-member swap. * testsuite/30_threads/thread/swap/2.cc: Remove. From-SVN: r147678
Jonathan Wakely committed -
* decl.c (grokdeclarator): Handle explicit conversion ops. (check_initializer): Pass flags to store_init_value. * decl2.c (maybe_emit_vtables): Likewise. * init.c (expand_aggr_init_1): Likewise. * call.c (convert_class_to_reference): Take flags parm, check DECL_NONCONVERTING_P. (build_user_type_conversion_1): Check DECL_NONCONVERTING_P. (add_builtin_candidates): Simplify getting type of conversion. (build_object_call): Likewise. Check DECL_NONCONVERTING_P. (implicit_conversion): Pass through LOOKUP_ONLYCONVERTING. (reference_binding): Take flags parm. Direct-initialize copy parm. (add_function_candidate): Direct-initialize the copy parm. (add_conv_candidate): Use LOOKUP_IMPLICIT, not LOOKUP_NORMAL. (build_builtin_candidate): Add LOOKUP_ONLYCONVERTING. (conditional_conversion): Likewise. (convert_like_real): Only complain about DECL_NONCONVERTING_P constructors. (perform_implicit_conversion_flags): Add flags parm to perform_implicit_conversion. Improve diagnostics. * cp-tree.h (LOOKUP_IMPLICIT): New macro. (LOOKUP_COPY_PARM): New bit macro. * cvt.c (build_expr_type_conversion): Check DECL_NONCONVERTING_P. * typeck.c (convert_for_assignment): Take flags parm, pass it to perform_implicit_conversion_flags. (cp_build_modify_expr): Pass flags to convert_for_assignment. (convert_for_initialization): Likewise. * typeck2.c (store_init_value): Take flags parm, pass to digest_init_flags. (digest_init_flags): Add flags parm to digest_init. (digest_init_r): Take flags parm, pass to convert_for_initialization. (process_init_constructor_array): Pass it. (process_init_constructor_record): Likewise. (process_init_constructor_union): Likewise. From-SVN: r147677
Jason Merrill committed -
Fix for PR debug/40109 gcc/ChangeLog: PR debug/40109 * dwarf2out.c (gen_type_die_with_usage): Generate the DIE as a child of the containing namespace's DIE. gcc/testsuite/ChangeLog: PR debug/40109 * g++.dg/debug/dwarf2/nested-1.C: New test. From-SVN: r147674
Dodji Seketeli committed -
*zero_extendhi_truncqi): Move after the zero_extend patterns. (*extenddi_truncate<mode>, *extendsi_truncate<mode>): Move after the extend patterns. From-SVN: r147673
Adam Nemet committed -
2009-05-18 H.J. Lu <hongjiu.lu@intel.com> PR target/39942 * config/i386/i386.c (ix86_avoid_jump_misspredicts): Replace gen_align with gen_pad. (ix86_reorg): Check ASM_OUTPUT_MAX_SKIP_PAD instead of #ifdef ASM_OUTPUT_MAX_SKIP_ALIGN. * config/i386/i386.h (ASM_OUTPUT_MAX_SKIP_PAD): New. * config/i386/x86-64.h (ASM_OUTPUT_MAX_SKIP_PAD): Likewise. * config/i386/i386.md (align): Renamed to ... (pad): This. Replace ASM_OUTPUT_MAX_SKIP_ALIGN with ASM_OUTPUT_MAX_SKIP_PAD. From-SVN: r147671
H.J. Lu committed -
2009-05-18 H.J. Lu <hongjiu.lu@intel.com> PR testsuite/39907 * gcc.target/x86_64/abi/asm-support.S (snapshot_ret): Preserve stack alignment. From-SVN: r147667
H.J. Lu committed -
From-SVN: r147666
Andreas Schwab committed -
From-SVN: r147665
Andreas Schwab committed -
PR target/39531 * config/m68k/m68k.c (output_andsi3): Mask off sign bit copies before calling exact_log2. (output_iorsi3): Likewise. (output_xorsi3): Likewise. From-SVN: r147664
Andreas Schwab committed -
2009-05-18 Janus Weil <janus@gcc.gnu.org> PR fortran/40164 * primary.c (gfc_match_rvalue): Handle procedure pointer components in arrays. * resolve.c (resolve_ppc_call,resolve_expr_ppc): Resolve component and array references. (resolve_fl_derived): Procedure pointer components are not required to have constant array bounds in their return value. 2009-05-18 Janus Weil <janus@gcc.gnu.org> PR fortran/40164 * gfortran.dg/proc_ptr_comp_8.f90: New. From-SVN: r147663
Janus Weil committed -
2009-05-18 Janus Weil <janus@gcc.gnu.org> * intrinsic.c (add_sym): Fix my last commit (r147655), which broke bootstrap. From-SVN: r147662
Janus Weil committed -
sh.c (expand_cbranchdi4): Use a scratch register for the none zero constant operand except for EQ and NE... * config/sh/sh.c (expand_cbranchdi4): Use a scratch register for the none zero constant operand except for EQ and NE comprisons even when the first operand is R0. From-SVN: r147661
Kaz Kojima committed -
2009-05-18 Andreas Krebbel <krebbel1@de.ibm.com> * config/s390/2064.md: Remove trailing whitespaces. * config/s390/2084.md: Likewise. * config/s390/constraints.md: Likewise. * config/s390/fixdfdi.h: Likewise. * config/s390/libgcc-glibc.ver: Likewise. * config/s390/s390-modes.def: Likewise. * config/s390/s390-protos.h: Likewise. * config/s390/s390.c: Likewise. * config/s390/s390.h: Likewise. * config/s390/s390.md: Likewise. * config/s390/tpf-unwind.h: Likewise. From-SVN: r147660
Andreas Krebbel committed -
2009-05-18 Richard Guenther <rguenther@suse.de> PR fortran/40168 * trans-expr.c (gfc_trans_zero_assign): For local array destinations use an assignment from an empty constructor. * gfortran.dg/array_memset_2.f90: Adjust. From-SVN: r147659
Richard Guenther committed -
From-SVN: r147656
Maxim Kuvyrkov committed -
2009-05-18 Janus Weil <janus@gcc.gnu.org> PR fortran/36947 PR fortran/40039 * expr.c (gfc_check_pointer_assign): Check intents when comparing interfaces. * gfortran.h (typedef struct gfc_intrinsic_arg): Add 'intent' member. (gfc_compare_interfaces): Additional argument. * interface.c (operator_correspondence): Add check for equality of intents, and new argument 'intent_check'. (gfc_compare_interfaces): New argument 'intent_check', which is passed on to operator_correspondence. (check_interface1): Don't check intents when comparing interfaces. (compare_parameter): Do check intents when comparing interfaces. * intrinsic.c (add_sym): Add intents for arguments of intrinsic procedures. (add_sym_1,add_sym_1s,add_sym_1m,add_sym_2,add_sym_2s,add_sym_3, add_sym_3ml,add_sym_3red,add_sym_3s,add_sym_4): Use INTENT_IN by default. (add_sym_1_intent,add_sym_1s_intent,add_sym_2s_intent,add_sym_3s_intent) : New functions to add intrinsic symbols, specifying custom intents. (add_sym_4s,add_sym_5s): Add new arguments to specify intents. (add_functions,add_subroutines): Add intents for various intrinsics. * resolve.c (check_generic_tbp_ambiguity): Don't check intents when comparing interfaces. * symbol.c (gfc_copy_formal_args_intr): Copy intent. 2009-05-18 Janus Weil <janus@gcc.gnu.org> PR fortran/36947 PR fortran/40039 * gfortran.dg/interface_27.f90: New. * gfortran.dg/interface_28.f90: New. * gfortran.dg/proc_ptr_11.f90: Fixing invalid test case. * gfortran.dg/proc_ptr_result_1.f90: Ditto. From-SVN: r147655
Janus Weil committed -
* configure.ac (m68k-*-*): Check if binutils support TLS. * configure: Regenerate. * config/m68k/predicates.md (symbolic_operand): Extend comment. * config/m68k/constraints.md (Cu): New constraint. * config/m68k/m68k.md (UNSPEC_GOTOFF): Remove. (UNSPEC_RELOC16, UNSPEC_RELOC32): New constants. (movsi): Handle TLS symbols. (addsi3_5200): Handle XTLS symbols, indent. * config/m68k/m68k-protos.h (m68k_legitimize_tls_address): Declare. (m68k_tls_reference_p): Declare. (m68k_legitimize_address): Declare. (m68k_unwrap_symbol): Declare. * config/m68k/m68k.opt (mxtls): New option. * config/m68k/m68k.c (ggc.h): Include. (m68k_output_dwarf_dtprel): Implement hook. (TARGET_HAVE_TLS, TARGET_ASM_OUTPUT_DWARF_DTPREL): Define. (m68k_expand_prologue): Load GOT pointer when function needs it. (m68k_illegitimate_symbolic_constant_p): Handle TLS symbols. (m68k_legitimate_constant_address_p): Same. (m68k_decompose_address): Handle TLS references. (m68k_get_gp): New static function. (enum m68k_reloc): New contants. (TLS_RELOC_P): New macro. (m68k_wrap_symbol): New static function. (m68k_unwrap_symbol): New function. (m68k_final_prescan_insn_1): New static function. (m68k_final_prescan_insn): New function. (m68k_move_to_reg, m68k_wrap_symbol_into_got_ref): New static functions. (legitimize_pic_address): Handle TLS references.. (m68k_tls_get_addr, m68k_get_tls_get_addr) (m68k_libcall_value_in_a0_p) (m68k_call_tls_get_addr, m68k_read_tp, m68k_get_m68k_read_tp) (m68k_call_m68k_read_tp): Helper variables and functions for ... (m68k_legitimize_tls_address): Handle TLS references. (m68k_tls_symbol_p, m68k_tls_reference_p_1, m68k_tls_reference_p): New functions. (m68k_legitimize_address): Handle TLS symbols. (m68k_get_reloc_decoration): New static function. (m68k_output_addr_const_extra): Handle UNSPEC_RELOC16 and UNSPEC_RELOC32. (m68k_output_dwarf_dtprel): Implement hook. (print_operand_address): Handle UNSPEC_RELOC16 adn UNSPEC_RELOC32. (m68k_libcall_value): Return result in A0 instead of D0 when asked by m68k_call_* routines. (sched_attr_op_type): Handle TLS symbols. (gt-m68k.h): Include. * config/m68k/m68k.h (FINAL_PRESCAN_INSN): Define. (LEGITIMATE_PIC_OPERAND_P): Support TLS. * gcc.target/m68k/tls-ie.c: New test. * gcc.target/m68k/tls-le.c: New test. * gcc.target/m68k/tls-gd.c: New test. * gcc.target/m68k/tls-ld.c: New test. * gcc.target/m68k/tls-ie-xgot.c: New test. * gcc.target/m68k/tls-le-xtls.c: New test. * gcc.target/m68k/tls-gd-xgot.c: New test. * gcc.target/m68k/tls-ld-xgot.c: New test. * gcc.target/m68k/tls-ld-xtls.c: New test. * gcc.target/m68k/tls-ld-xgot-xtls.c: New test. From-SVN: r147654
Maxim Kuvyrkov committed -
PR ada/40166 * Makefile.in (TOOLS_TARGET_PAIRS): Use the correct path to the target specific sources. From-SVN: r147652
Bechir Zalila committed -
From-SVN: r147649
GCC Administrator committed
-
- 17 May, 2009 2 commits
-
-
2009-05-18 Martin Jambor <mjambor@suse.cz> * ipa-prop.c (ipa_check_stmt_modifications): Removed. (visit_store_addr_for_mod_analysis): New function. (ipa_detect_param_modifications): Use walk_stmt_load_store_addr_ops. (determine_cst_member_ptr): Use gimple_assign_single_p. (ipa_get_stmt_member_ptr_load_param): Use gimple_assign_single_p. (ipa_analyze_call_uses): Use !gimple_assign_rhs2 rather than number of operands. Don't check number of operands of a NOP_EXPR. * testsuite/gcc.dg/ipa/modif-1.c: Do not check for unmodified int parameter. From-SVN: r147645
Martin Jambor committed -
2009-05-18 Eric Fisher <joefoxreal@gmail.com> * doc/tree-ssa.texi (SSA Operands): Fix a mistake. From-SVN: r147644
Eric Fisher committed
-