1. 17 May, 2009 3 commits
  2. 16 May, 2009 15 commits
    • re PR middle-end/39301 (ICE in register_overhead, at bitmap.c:115) · e2d87023
      2009-05-16  Brad Lucier  <lucier@math.purdue.edu>
      
      	PR middle-end/39301
      	* hwint.h: Add macro HOST_WIDEST_INT_PRINT.
      	* bitmap.c (bitmap_descriptor): Make fields HOST_WIDEST_INT.
      	(output_info): Make field HOST_WIDEST_INT.
      	(print_statistics): Use HOST_WIDEST_INT_PRINT.
      	(dump_bitmat_statistics): Same.
      
      From-SVN: r147624
      Brad Lucier committed
    • config.gcc (use_gcc_stdint): Set to wrap. · 428ddbf0
      	* config.gcc (use_gcc_stdint):  Set to wrap.
      	* config/darwin.h (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,
      	UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define.
      
      From-SVN: r147622
      Francois-Xavier Coudert committed
    • re PR fortran/33197 (Fortran 2008: math functions) · 9b33a6a1
      	PR fortran/33197
      
      	* intrinsic.c (add_functions): Use ERFC_SCALED simplification.
      	* intrinsic.h (gfc_simplify_erfc_scaled): New prototype.
      	* simplify.c (fullprec_erfc_scaled, asympt_erfc_scaled,
      	gfc_simplify_erfc_scaled): New functions.
      
      	* gfortran.dg/erf_2.F90: New test.
      	* gfortran.dg/erfc_scaled_2.f90: New test.
      
      From-SVN: r147621
      Francois-Xavier Coudert committed
    • re PR fortran/31243 (Detect strings longer than 2**32 characters) · b0c06816
      	PR fortran/31243
      
      	* resolve.c (resolve_substring): Don't allow too large substring
      	indexes.
      	(gfc_resolve_substring_charlen): Fix typo.
      	(gfc_resolve_character_operator): Fix typo.
      	(resolve_charlen): Catch unreasonably large string lengths.
      	* simplify.c (gfc_simplify_len): Don't error out on LEN
      	range checks.
      
      	* gcc/testsuite/gfortran.dg/string_1.f90: New test.
      	* gcc/testsuite/gfortran.dg/string_2.f90: New test.
      	* gcc/testsuite/gfortran.dg/string_3.f90: New test.
      
      From-SVN: r147619
      Francois-Xavier Coudert committed
    • config.gcc (mips*-*-*): Support arch_32, arch_64, tune_32 and tune_64. · 1ab8a8c2
      	* config.gcc (mips*-*-*): Support arch_32, arch_64, tune_32 and
      	tune_64.
      	* config/mips/mips.h (MIPS_ABI_DEFAULT, MULTILIB_ABI_DEFAULT):
      	Move definitions earlier.
      	(OPT_ARCH64, OPT_ARCH32): Define.
      	(OPTION_DEFAULT_SPECS): Add entries for arch_32, arch_64, tune_32
      	and tune_64.
      
      From-SVN: r147617
      Joseph Myers committed
    • * ChangeLog: Forgotten in previous commit. · 24264cbb
      From-SVN: r147616
      François-Xavier Coudert committed
    • re PR fortran/36031 (ARM -fshort-enums attribute not emitted for Fortran) · cab129d1
      	PR fortran/36031
      
      	* decl.c (set_enum_kind): Use global short-enums flag.
      	* gfortran.h (gfc_option_t): Remove short_enums flag.
      	* lang.opt (-fshort-enums): Refer to C documentation.
      	* options.c (gfc_init_options, gfc_handle_option): Use global
      	short-enums flag.
      
      From-SVN: r147615
      François-Xavier Coudert committed
    • re PR target/40153 (Long long comparison optimized away incorrectly in Thumb code.) · 70544f44
      	PR target/40153
      	* arm.md (cstoresi_nltu_thumb1): Use a neg of ltu as the pattern name
      	implies.
      
      From-SVN: r147613
      Richard Earnshaw committed
    • default_format_denormal_1.f90: XFAIL on cygwin. · 29409321
      2009-05-16  David Billinghurst <billingd@gcc.gnu.org>
      
      	* gfortran.dg/default_format_denormal_1.f90: XFAIL on cygwin.
      	* gfortran.dg/default_format_1.f90: Revert change of 2009-05-12
      
      Correct accidental commit of wrong file.
      
      From-SVN: r147610
      David Billinghurst committed
    • mutex: Move std::lock_error to ... · 5c645750
      2009-05-13  Jonathan Wakely  <jwakely.gcc@gmail.com>
      
      	* include/std/mutex: Move std::lock_error to ...
      	* src/compatibility.cc: Here.
      	* src/mutex.cc: Likewise.
      	* testsuite/30_threads/headers/mutex/types_std_c++0x.cc: Add checks
      	for lock types and remove std::lock_error check.
      
      From-SVN: r147609
      Jonathan Wakely committed
    • re PR target/39942 (Nonoptimal code - leaveq; xchg %ax,%ax; retq) · 40a8f07a
      	PR target/39942
      	* final.c (label_to_max_skip): New function.
      	(label_to_alignment): Only use LABEL_TO_ALIGNMENT if
      	CODE_LABEL_NUMBER <= max_labelno.
      	* output.h (label_to_max_skip): New prototype.
      	* config/i386/i386.c (ix86_avoid_jump_misspredicts): Renamed to...
      	(ix86_avoid_jump_mispredicts): ... this.  Don't define if
      	ASM_OUTPUT_MAX_SKIP_ALIGN isn't defined.  Update comment.
      	Handle CODE_LABELs with >= 16 byte alignment or with
      	max_skip == (1 << align) - 1.
      	(ix86_reorg): Don't call ix86_avoid_jump_mispredicts if
      	ASM_OUTPUT_MAX_SKIP_ALIGN isn't defined.
      
      From-SVN: r147607
      Jakub Jelinek committed
    • re PR target/39942 (Nonoptimal code - leaveq; xchg %ax,%ax; retq) · a99c6711
      	PR target/39942
      	* config/i386/x86-64.h (ASM_OUTPUT_MAX_SKIP_ALIGN): Don't emit second
      	.p2align 3 if MAX_SKIP is smaller than 7.
      	* config/i386/linux.h (ASM_OUTPUT_MAX_SKIP_ALIGN): Likewise.
      
      From-SVN: r147606
      Jakub Jelinek committed
    • alias.c (struct alias_set_entry_d): Rename from struct alias_set_entry. · 7e5487a2
      gcc/ChangeLog:
      	* alias.c (struct alias_set_entry_d): Rename from struct
      	alias_set_entry.  Change all uses.
      	* except.c (struct call_site_record_d): Rename from struct
      	call_site_record.  Change all uses.
      	* except.h (struct eh_region_d): Rename from struct eh_region.
      	Change all uses.
      	* gcse.c (struct hash_table_d): Rename from struct hash_table.
      	Change all uses.
      	* graphite.c (struct ivtype_map_elt_d): Rename fromstruct
      	ivtype_map_elt.  Change all uses.
      	(struct rename_map_elt_d): Rename fromstruct rename_map_elt.
      	Change all uses.
      	(struct ifsese_d): Rename fromstruct ifsese.  Change all uses.
      	* graphite.h (struct name_tree_d): Rename from struct name_tree.
      	Change all uses.
      	(struct sese_d): Rename from struct sese.  Change all uses.
      	* omega.h (struct eqn_d): Rename from struct eqn.  Change all
      	uses.
      	(struct omega_pb_d): Rename from struct omega_pb.  Change all
      	uses.
      	* optabs.h (struct optab_d): Rename from struct optab.  Change all
      	uses.
      	(struct convert_optab_d): Rename from struct convert_optab.
      	Change all uses.
      	* tree-pass.h (struct ipa_opt_pass_d): Rename fromstruct
      	ipa_opt_pass.  Change all uses.
      	* tree-predcom.c (struct dref_d): Rename from struct dref.  Change
      	all uses.
      
      	* c-decl.c (pushtag): If -Wc++-compat, warn if the tag is already
      	defined as a typedef.
      	(grokdeclarator): If -Wc++-compat, warn if a typedef is already
      	defined as a tag.
      gcc/cp/ChangeLog:
      	* cp-tree.h (enum cp_lvalue_kind_flags): Rename from
      	cp_lvalue_kind.  Change all uses.
      	(enum base_access_flags): Rename from enum base_access.  Change
      	all uses.
      	* parser.c (enum cp_parser_flags): Remove enum tag.
      gcc/testsuite/ChangeLog:
      	* gcc.dg/Wcxx-compat-10.c: New testcase.
      libcpp/ChangeLog:
      	* include/cpplib.h (enum cpp_builtin_type): Rename from enum
      	builtin_type.  Change all uses.
      
      From-SVN: r147605
      Ian Lance Taylor committed
    • Daily bump. · 7d47ae1d
      From-SVN: r147604
      GCC Administrator committed
  3. 15 May, 2009 22 commits
    • 40160.cc: Remove spurious double include. · 6dd0fec2
      2009-05-15  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	* testsuite/21_strings/basic_string/40160.cc: Remove spurious
      	double include.
      
      From-SVN: r147600
      Paolo Carlini committed
    • re PR libstdc++/40160 (-fno-rtti vs _GLIBCXX_DEBUG) · 0f136367
      2009-05-15  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR libstdc++/40160
      	* include/debug/formatter.h (_Parameter::_Parameter): Don't use
      	typeid when __GXX_RTTI is undefined.
      	* src/debug.cc (_Error_formatter::_Parameter::_M_print_field): Adjust
      	for null _M_variant._M_iterator._M_type,
      	_M_variant._M_iterator._M_seq_type, _M_variant._M_sequence._M_type.
      	* testsuite/21_strings/basic_string/40160.cc: New.
      
      From-SVN: r147599
      Paolo Carlini committed
    • re PR c/16302 (gcc fails to warn about some common logic errors) · a243fb4a
      2009-05-15  Manuel López-Ibáñez  <manu@gcc.gnu.org>
      
      	PR 16302
      	* fold-const.c (make_range,build_range_check,merge_ranges): Move
      	declaration to...
      	(merge_ranges): Returns bool. 
      	* tree.h (make_range): .. to here.
      	(build_range_check): Likewise.
      	(merge_ranges): Likewise. Renamed from merge_ranges.
      	* c-typeck.c (parser_build_binary_op): Update calls to
      	warn_logical_operator.
      	* c-common.c (warn_logical_operator): Add new warning.
      	* c-common.h (warn_logical_operator): Update declaration.
      cp/
      	* call.c (build_new_op): Update calls to warn_logical_operator.
      	
      testsuite/
      	* gcc.dg/pr16302.c: New.
      	* g++.dg/warn/pr16302.C: New.
      
      From-SVN: r147596
      Manuel López-Ibáñez committed
    • ira-conflicts.c (add_insn_allocno_copies): Fix wrong conditional. · 1b53c5f3
      2009-05-15  Manuel López-Ibáñez  <manu@gcc.gnu.org>
      
      	* ira-conflicts.c (add_insn_allocno_copies): Fix wrong
      	conditional.
      
      From-SVN: r147595
      Manuel López-Ibáñez committed
    • builtin-math-5.c: New. · 16a3d11c
      	* gcc.dg/torture/builtin-math-5.c: New.
      	* gcc.dg/torture/builtin-math-6.c: New.
      	* lib/target-supports.exp (check_effective_target_mpc): New.
      
      From-SVN: r147593
      Kaveh R. Ghazi committed
    • install.texi: Document MPC requirements, flags etc. · f9bab007
      	* doc/install.texi: Document MPC requirements, flags etc.
      
      From-SVN: r147592
      Kaveh R. Ghazi committed
    • builtins.c (do_mpc_arg1, [...]): New. · c128599a
      	* builtins.c (do_mpc_arg1, fold_builtin_ccos): New.
      	(fold_builtin_cexp): Ensure we get a complex REAL_TYPE.
      	Evaluate constant arguments.
      	(fold_builtin_carg): Ensure we get a complex REAL_TYPE.
      	(fold_builtin_1): Likewise, also evaluate constant arguments.
      	Remove superfluous break.
      	(do_mpc_ckconv): New.
      	* real.h: Include mpc.h.
      	* toplev.c (print_version): Output MPC version info if available.
      
      From-SVN: r147591
      Kaveh R. Ghazi committed
    • fold-const.c (fold_convert_const_real_from_real): Check for overflow. · d33e4b70
      2009-05-15  Sandra Loosemore  <sandra@codesourcery.com>
      
      	gcc/
      	* fold-const.c (fold_convert_const_real_from_real): Check for
      	overflow.
      
      From-SVN: r147589
      Sandra Loosemore committed
    • i386.c (ix86_reorg): Call optimize_function_for_speed_p only once. · a02ab464
      2009-05-15  H.J. Lu  <hongjiu.lu@intel.com>
      
      	* config/i386/i386.c (ix86_reorg): Call optimize_function_for_speed_p
      	only once.
      
      From-SVN: r147588
      H.J. Lu committed
    • invoke.texi (max-early-inliner-iterations): New flag. · 796bda22
      
      	* doc/invoke.texi (max-early-inliner-iterations): New flag.
      	* ipa-inline.c (enum inlining_mode): New INLINE_SIZE_NORECURSIVE.
      	(try_inline): Fix return value.
      	(cgraph_decide_inlining_incrementally): Honor new value.
      	(cgraph_early_inlining): Handle indirect inlining.
      	* params.def (PARAM_EARLY_INLINER_MAX_ITERATIONS): New.
      
      	* testsuite/gcc.dg/tree-ssa/inline-3.c: New testcase
      
      From-SVN: r147587
      Jan Hubicka committed
    • cgraph.h (struct cgraph_node): Add finalized_by_frotnend flag. · d88e5c37
      
      2009-05-15  Jan Hubicka  <jh@suse.cz>
      
      	* cgraph.h (struct cgraph_node): Add finalized_by_frotnend flag.
      	* cgraphunit.c (cgraph_finalize_function): Set it.
      	(cgraph_expand_function): Use it.
      
      From-SVN: r147586
      Jan Hubicka committed
    • align-main-1.c (check): Mark noinline. · 6136d2c7
      	* gcc.target/i386/align-main-1.c (check): Mark noinline.
      	* gcc.target/i386/align-main-2.c (check): Mark noinline.
      	* gcc.dg/ipa/ipa-4.c: Disable early inlining.
      	* gcc.dg/vect/vect-iv-10.c (main1): Mark noinline.
      	* gcc.dg/vect/costmodel/i386/costmodel-vect-33.c (main1): Mark noinline.
      	* gcc.dg/vect/costmodel/x86_64/costmodel-vect-33.c (main1): Mark noinline.
      	* gcc.dg/vect/pr31699.c (foo): Mark noinline.
      	* gcc.dg/vect/pr18400.c (main1): Mark noinline.
      
      From-SVN: r147585
      Jan Hubicka committed
    • sibcall-6.c: Add no-ipa-cp argument and mark the function to be optimized by sibcall noinline. · f3d509ec
      
      	* sibcall-6.c: Add no-ipa-cp argument and mark the function to be
      	optimized by sibcall noinline.
      
      From-SVN: r147584
      Jan Hubicka committed
    • sibcall-1.c (track): Mark noinline. · 561df464
      	* sibcall-1.c (track): Mark noinline.
      	* sibcall-2.c (track): Mark noinline.
      	* sibcall-3.c (track): Mark noinline.
      	* sibcall-4.c (track): Mark noinline.
      
      From-SVN: r147583
      Jan Hubicka committed
    • flatten-2.c: Disable early inlining; add comment. · febbad93
      	* flatten-2.c: Disable early inlining; add comment.
      	* flatten-3.c: New test based on flatten-2.c.
      
      From-SVN: r147582
      Jan Hubicka committed
    • inclhack.def (glibc_tgmath): Correct bypass. · b51c6a2c
      	* inclhack.def (glibc_tgmath): Correct bypass.
      	* fixincl.x: Regenerate.
      
      From-SVN: r147580
      Joseph Myers committed
    • real.c (encode_ieee_half): Define. · ae63687c
      2009-05-15  Sandra Loosemore  <sandra@codesourcery.com>
      
      	gcc/
      	* real.c (encode_ieee_half): Define.
      	(decode_ieee_half): Define.
      	(ieee_half_format): Define.
      	(arm_half_format): Define.
      	* real.h (ieee_half_format): Declare.
      	(arm_half_format): Declare.
      
      From-SVN: r147579
      Sandra Loosemore committed
    • optabs.c (prepare_float_lib_cmp): Test that the comparison... · 1bd74ad9
      2009-05-15  Sandra Loosemore  <sandra@codesourcery.com>
      
      	gcc/
      	* optabs.c (prepare_float_lib_cmp):  Test that the comparison,
      	swapped, and reversed optabs exist before trying to use them.
      
      From-SVN: r147578
      Sandra Loosemore committed
    • arm.c (neon_vector_mem_operand): Handle element/structure loads. · dc34db56
      2009-05-15  Paul Brook  <paul@codesourcery.com>
      	    Sandra Loosemore  <sandra@codesourcery.com>
      
      	gcc/
      	* config/arm/arm.c (neon_vector_mem_operand): Handle element/structure
      	loads.  Allow PRE_DEC.
      	(output_move_neon): Handle PRE_DEC.
      	(arm_print_operand): Add 'A' for neon structure loads.
      	* config/arm/arm-protos.h (neon_vector_mem_operand): Update prototype.
      	* config/arm/neon.md (neon_mov): Update comment.
      	* config/arm/constraints.md (Un, Us): Update neon_vector_mem_operand
      	calls.
      	(Um): New constraint.
      
      Co-Authored-By: Sandra Loosemore <sandra@codesourcery.com>
      
      From-SVN: r147577
      Paul Brook committed
    • Revert the following patch until testsuite fallout is fixed: · 1d405d7b
      	* cgraph.c (dump_cgraph_node): Dump size/time/benefit.
      	* cgraph.h (struct inline_summary): New filed self_wize,
      	size_inlining_benefit, self_time and time_inlining_benefit.
      	(struct cgraph_global_info): Replace insns by time ans size fields.
      	* ipa-cp (ipcp_cloning_candidate_p): Base estimate on size
      	(ipcp_estimate_growth, ipcp_insert_stage): Likewise.
      	(ipcp_update_callgraph): Do not touch function bodies.
      	* ipa-inline.c: Include except.h
      	MAX_TIME: New constant.
      	(overall_insns): Remove
      	(overall_size, max_benefit): New static variables.
      	(cgraph_estimate_time_after_inlining): New function.
      	(cgraph_estimate_size_after_inlining): Rewrite using benefits.
      	(cgraph_clone_inlined_nodes): Update size.
      	(cgraph_mark_inline_edge): Update size.
      	(cgraph_estimate_growth): Use size info.
      	(cgraph_check_inline_limits): Check size.
      	(cgraph_default_inline_p): Likewise.
      	(cgraph_edge_badness): Compute badness based on benefit and size cost.
      	(cgraph_decide_recursive_inlining): Check size.
      	(cgraph_decide_inlining_of_small_function): Update size; dump sizes and times.
      	(cgraph_decide_inlining): Likewise.
      	(cgraph_decide_inlining_incrementally): Likewise; honor PARAM_EARLY_INLINING_INSNS.
      	(likely_eliminated_by_inlining_p): New predicate.
      	(estimate_function_body_sizes): New function.
      	(compute_inline_parameters): Use it.
      	* except.c (must_not_throw_labels): New function.
      	* except.h (must_not_throw_labels): Declare.
      	* tree-inline.c (init_inline_once): Kill inlining_weigths
      	* tree-ssa-structalias.c: Avoid uninitialized warning.
      	* params.def (PARAM_MAX_INLINE_INSNS_SINGLE): Reduce to 300.
      	(PARAM_MAX_INLINE_INSNS_AUTO): Reduce to 60.
      	(PARAM_INLINE_CALL_COST): Remove.
      	(PARAM_EARLY_INLINING_INSNS): New.
      
      From-SVN: r147575
      Jan Hubicka committed
    • tree-ssa-pre.c (eliminate): Use TODO_update_ssa_only_virtuals, not TODO_update_ssa. · 7ffa47ca
      2009-05-15  Richard Guenther  <rguenther@suse.de>
      
      	* tree-ssa-pre.c (eliminate): Use TODO_update_ssa_only_virtuals,
      	not TODO_update_ssa.
      
      From-SVN: r147574
      Richard Guenther committed
    • re PR tree-optimization/39999 (gcc 4.4.0 compiles in infinite loop) · 828552ed
      2009-05-15  Richard Guenther  <rguenther@suse.de>
      
      	PR tree-optimization/39999
      	* gimple.h (gimple_expr_type): Use the expression type looking
      	through useless conversions.
      	* tree-ssa-sccvn.c (vn_nary_op_lookup_stmt): Use gimple_expr_type.
      	(vn_nary_op_insert_stmt): Likewise.
      	(simplify_binary_expression): Likewise.
      
      	* gcc.c-torture/compile/pr39999.c: New testcase.
      
      From-SVN: r147573
      Richard Guenther committed