1. 20 Aug, 2010 9 commits
    • lto.c (has_analyzed_clone_p): New function · e0f967db
      
      	* lto.c (has_analyzed_clone_p): New function
      	(lto_materialize_function): Use callgraph to determine if
      	body is needed.
      	(materialize_cgraph): Remove DECL_IS_BUILTIN check.
      
      From-SVN: r163403
      Jan Hubicka committed
    • missed from rest of commit · 1f5a46fe
      missed from rest of commit
      	* gimplify.c (gimplify_modify_expr): When assigning to volatiles,
      	copy the src value and return a copy.
      	* doc/extend.texi (Volatiles): Move from C++ to C and expand.
      	(C++ Volatiles): Adjust to describe C++ semantics only.
      
      From-SVN: r163402
      Nathan Sidwell committed
    • vec.h (FOR_EACH_VEC_ELT): Define. · ac47786e
      gcc/
      	* vec.h (FOR_EACH_VEC_ELT): Define.
      	* c-decl.c: Use it.
      	* cfgloop.c: Likewise.
      	* cfgloopmanip.c: Likewise.
      	* cgraph.c: Likewise.
      	* cgraphunit.c: Likewise.
      	* combine.c: Likewise.
      	* config/bfin/bfin.c: Likewise.
      	* config/mips/mips.c: Likewise.
      	* config/rs6000/rs6000.c: Likewise.
      	* dbxout.c: Likewise.
      	* df-scan.c: Likewise.
      	* dominance.c: Likewise.
      	* dse.c: Likewise.
      	* dwarf2out.c: Likewise.
      	* except.c: Likewise.
      	* expr.c: Likewise.
      	* function.c: Likewise.
      	* gcse.c: Likewise.
      	* genattr.c: Likewise.
      	* ggc-common.c: Likewise.
      	* gimplify.c: Likewise.
      	* graphite-blocking.c: Likewise.
      	* graphite-clast-to-gimple.c: Likewise.
      	* graphite-dependences.c: Likewise.
      	* graphite-interchange.c: Likewise.
      	* graphite-poly.c: Likewise.
      	* graphite-scop-detection.c: Likewise.
      	* graphite-sese-to-poly.c: Likewise.
      	* graphite.c: Likewise.
      	* haifa-sched.c: Likewise.
      	* ifcvt.c: Likewise.
      	* implicit-zee.c: Likewise.
      	* ipa-prop.c: Likewise.
      	* ipa-struct-reorg.c: Likewise.
      	* ipa.c: Likewise.
      	* ira-build.c: Likewise.
      	* ira-color.c: Likewise.
      	* ira-emit.c: Likewise.
      	* lambda-code.c: Likewise.
      	* loop-invariant.c: Likewise.
      	* loop-unroll.c: Likewise.
      	* lower-subreg.c: Likewise.
      	* lto-cgraph.c: Likewise.
      	* lto-opts.c: Likewise.
      	* lto-streamer-in.c: Likewise.
      	* lto-streamer-out.c: Likewise.
      	* lto-streamer.c: Likewise.
      	* lto-symtab.c: Likewise.
      	* matrix-reorg.c: Likewise.
      	* opts.c: Likewise.
      	* predict.c: Likewise.
      	* print-tree.c: Likewise.
      	* sdbout.c: Likewise.
      	* sel-sched-dump.c: Likewise.
      	* sel-sched-ir.c: Likewise.
      	* sel-sched.c: Likewise.
      	* sese.c: Likewise.
      	* stor-layout.c: Likewise.
      	* tree-cfg.c: Likewise.
      	* tree-cfgcleanup.c: Likewise.
      	* tree-chrec.c: Likewise.
      	* tree-data-ref.c: Likewise.
      	* tree-emutls.c: Likewise.
      	* tree-inline.c: Likewise.
      	* tree-into-ssa.c: Likewise.
      	* tree-loop-distribution.c: Likewise.
      	* tree-loop-linear.c: Likewise.
      	* tree-mudflap.c: Likewise.
      	* tree-outof-ssa.c: Likewise.
      	* tree-parloops.c: Likewise.
      	* tree-predcom.c: Likewise.
      	* tree-pretty-print.c: Likewise.
      	* tree-scalar-evolution.c: Likewise.
      	* tree-ssa-live.c: Likewise.
      	* tree-ssa-loop-im.c: Likewise.
      	* tree-ssa-loop-ivcanon.c: Likewise.
      	* tree-ssa-loop-ivopts.c: Likewise.
      	* tree-ssa-loop-manip.c: Likewise.
      	* tree-ssa-loop-niter.c: Likewise.
      	* tree-ssa-loop-prefetch.c: Likewise.
      	* tree-ssa-phiprop.c: Likewise.
      	* tree-ssa-pre.c: Likewise.
      	* tree-ssa-reassoc.c: Likewise.
      	* tree-ssa-sccvn.c: Likewise.
      	* tree-ssa-structalias.c: Likewise.
      	* tree-ssa.c: Likewise.
      	* tree-vect-data-refs.c: Likewise.
      	* tree-vect-loop-manip.c: Likewise.
      	* tree-vect-loop.c: Likewise.
      	* tree-vect-patterns.c: Likewise.
      	* tree-vect-slp.c: Likewise.
      	* tree-vect-stmts.c: Likewise.
      	* tree-vrp.c: Likewise.
      	* tree.c: Likewise.
      	* value-prof.c: Likewise.
      	* var-tracking.c: Likewise.
      	* varasm.c: Likewise.
      	* vmsdbgout.c: Likewise.
      
      gcc/ada/
      	* gcc-interface/decl.c: Use FOR_EACH_VEC_ELT.
      	* gcc-interface/trans.c: Likewise.
      	* gcc-interface/utils.c: Likewise.
      
      gcc/c-family/
      	* c-common.c: Use FOR_EACH_VEC_ELT.
      	* c-gimplify.c: Likewise.
      	* c-pragma.c: Likewise.
      
      gcc/cp/
      	* call.c: Use FOR_EACH_VEC_ELT.
      	* class.c: Likewise.
      	* decl.c: Likewise.
      	* decl2.c: Likewise.
      	* error.c: Likewise.
      	* except.c: Likewise.
      	* mangle.c: Likewise.
      	* method.c: Likewise.
      	* name-lookup.c: Likewise.
      	* parser.c: Likewise.
      	* pt.c: Likewise.
      	* repo.c: Likewise.
      	* semantics.c: Likewise.
      	* typeck2.c: Likewise.
      
      gcc/fortran/
      	* trans-openmp.c: Use FOR_EACH_VEC_ELT.
      
      gcc/java/
      	* class.c: Use FOR_EACH_VEC_ELT.
      	* expr.c: Likewise.
      	* jcf-parse.c: Likewise.
      	* resource.c: Likewise.
      
      gcc/lto/
      	* lto.c: Use FOR_EACH_VEC_ELT.
      
      From-SVN: r163401
      Nathan Froyd committed
    • gimplify.c (gimplify_modify_expr): When assigning to volatiles, copy the src… · 8f0fe813
      gimplify.c (gimplify_modify_expr): When assigning to volatiles, copy the src value and return a copy.
      
      	gcc/
      	* gimplify.c (gimplify_modify_expr): When assigning to volatiles,
      	copy the src value and return a copy.
      	* doc/extend.texi (Volatiles): Move from C++ to C and expand.
      	(C++ Volatiles): Adjust to describe C++ semantics only.
      
      	gcc/testsuite/
      	* gcc.target/i386/volatile-2.c: New.
      
      From-SVN: r163400
      Nathan Sidwell committed
    • tm.texi.in (PIC_OFFSET_TABLE_REG_CALL_CLOBBERED): Document to be zero or nonzero. · f8fe0a4a
      2010-08-20  Joseph Myers  <joseph@codesourcery.com>
      
      	gcc/
      	* doc/tm.texi.in (PIC_OFFSET_TABLE_REG_CALL_CLOBBERED): Document to
      	be zero or nonzero.
      	* doc/tm.texi: Regenerate.
      	* defaults.h (PIC_OFFSET_TABLE_REG_CALL_CLOBBERED): Define.
      	* df-scan.c (df_get_exit_block_use_set), reginfo.c
      	(init_reg_sets_1), rtlanal.c (rtx_unstable_p, rtx_varies_p):
      	Handle new PIC_OFFSET_TABLE_REG_CALL_CLOBBERED semantics.
      	* config/ia64/ia64.h (PIC_OFFSET_TABLE_REG_CALL_CLOBBERED): Define
      	to 1.
      
      From-SVN: r163399
      Joseph Myers committed
    • re PR rtl-optimization/44691 (ICE: RTL check: expected code 'reg', have 'plus'… · 46499993
      re PR rtl-optimization/44691 (ICE: RTL check: expected code 'reg', have 'plus' in rhs_regno, at rtl.h:1050)
      
              PR rtl-optimization/44691
              * gfortran.dg/pr44691.f: New test.
      
      From-SVN: r163396
      Andrey Belevantsev committed
    • sparc.c (sparc_asm_function_epilogue): Don't output an extra nop past a sibling… · 891aa2ec
      sparc.c (sparc_asm_function_epilogue): Don't output an extra nop past a sibling call at the very end.
      
              * config/sparc/sparc.c (sparc_asm_function_epilogue): Don't output
              an extra nop past a sibling call at the very end.
      
              testsuite/
              * gcc.target/sparc/sibcall-dslot.c: New testcase.
      
      From-SVN: r163395
      Olivier Hainque committed
    • pass41-frag.cxx (dg-prune-output): New dg directive. · 07d5b925
      	* testsuite/libmudflap.c++/pass41-frag.cxx (dg-prune-output):
      	New dg directive.
      
      From-SVN: r163394
      Uros Bizjak committed
    • Daily bump. · d81c4d4c
      From-SVN: r163393
      GCC Administrator committed
  2. 19 Aug, 2010 22 commits
    • re PR bootstrap/45350 (Failed to bootstrap on Linux/ia64) · b98425da
      	PR bootstrap/45350
      	* combine.c (try_combine): Initialize i1_is_used and i2_is_used.  Fix
      	a comment.
      
      From-SVN: r163389
      Bernd Schmidt committed
    • re PR fortran/45108 (Namelist read: Not aborted when reading from STDIN) · e1721879
      2010-08-19  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
      
      	PR libfortran/45108
      	* io/list_read.c (namelist_read): If namelist reading fails, use
      	generate_error and then continue the read loop.
      
      From-SVN: r163387
      Jerry DeLisle committed
    • target.def (function_arg, [...]): Remove const qualifier on CUMULATIVE_ARGS parameter. · 29e88142
      	* target.def (function_arg, function_incoming_arg): Remove const
      	qualifier on CUMULATIVE_ARGS parameter.
      	* targhooks.h (default_function_arg, default_function_incoming_arg):
      	Likewise.
      	* targhooks.c (default_function_arg, default_function_incoming_arg):
      	Likewise.
      	* config/i386/i386.c (ix86_function_arg): Likewise.
      
      From-SVN: r163386
      Nathan Froyd committed
    • re PR target/45336 (pextr{b,w,d}, (worse than) redundant extensions) · a5d8253f
      	PR target/45336
      	* simplify-rtx.c (simplify_unary_operation_1): Optimize nested
      	SIGN_EXTENDs or ZERO_EXTENDs.
      
      From-SVN: r163384
      Jakub Jelinek committed
    • re PR tree-optimization/42172 (inefficient bit fields assignments) · 0524d2d6
      	PR target/42172
      	* combine.c (combine_validate_cost): New arg I0.  All callers changed.
      	Take its cost into account if nonnull.
      	(insn_a_feeds_b): New static function.
      	(combine_instructions): Look for four-insn combinations.
      	(can_combine_p): New args PRED2, SUCC2.  All callers changed.  Take
      	them into account when computing all_adjacent and looking for other
      	uses.
      	(combinable_i3pat): New args I0DEST, I0_NOT_IN_SRC.  All callers
      	changed.  Treat them like I1DEST and I1_NOT_IN_SRC.
      	(try_combine): New arg I0.  Handle four-insn combinations.
      	(distribute_notes): New arg ELIM_I0.  All callers changed.  Treat it
      	like ELIM_I1.
      
      From-SVN: r163383
      Bernd Schmidt committed
    • call.c (reference_related_p): Check for error_mark_node. · f0d9b836
      	* call.c (reference_related_p): Check for error_mark_node.
      	(add_function_candidate): Check it instead of
      	same_type_ignoring_top_level_qualifiers_p.
      
      From-SVN: r163382
      Jason Merrill committed
    • re PR c++/45315 (ICE: tree check: expected aggr_init_expr, have call_expr in… · 95d7bdaa
      re PR c++/45315 (ICE: tree check: expected aggr_init_expr, have call_expr in build_value_init, at cp/init.c:317)
      
      	PR c++/45315
      	* init.c (build_new_1): Don't use build_value_init in a template.
      	(build_value_init): Make sure we don't.
      
      From-SVN: r163381
      Jason Merrill committed
    • re PR middle-end/45307 (Stores expanding to no RTL not removed by tree… · ce3beba3
      re PR middle-end/45307 (Stores expanding to no RTL not removed by tree optimizers, Empty ctors/dtors not eliminated)
      
      	PR c++/45307
      	* gimplify.c (gimplify_init_constructor): Just return GS_UNHANDLED
      	if ctor is empty.
      	(gimplify_modify_expr_rhs): Adjust.
      
      From-SVN: r163380
      Jason Merrill committed
    • except.c (pending_noexcept, [...]): New. · 2c5df20f
      	* except.c (pending_noexcept, pending_noexcept_checks): New.
      	(perform_deferred_noexcept_checks): New.
      	(maybe_noexcept_warning): Split from...
      	(finish_noexcept_expr): ...here.  Adjust.
      	* decl2.c (cp_write_global_declarations): Call
      	perform_deferred_noexcept_checks.
      	* cp-tree.h: And declare it.
      
      From-SVN: r163379
      Jason Merrill committed
    • cfgloop.c (get_loop_body_in_bfs_order): Avoid redundant call to bitmap_bit_p. · fcaa4ca4
      	* cfgloop.c (get_loop_body_in_bfs_order): Avoid redundant call to
      	bitmap_bit_p.
      	* config/bfin/bifn.c (bfin_discover_loop): Likewise.
      	* dominance.c (iterate_fix_dominators): Likewise.
      	* dse.c (set_usage_bits): Likewise.
      	(set_position_unneeded, record_store): Likewise.
      	* gimple-fold.c (get_maxval_strlen): Likewise.
      	* haifa-sched.c (fix_inter_tick, fix_recovery_deps): Likewise.
      	* ipa-inline.c (update_caller_keys): Likewise.
      	* ipa-split.c (verify_non_ssa_vars): Likewise.
      	* ipa-type-escape.c (mark_type, close_type_seen): Likewise.
      	(close_type_exposed_parameter, close_type_full_escape): Likewise.
      	(close_addressof_down): Likewise.
      	* ira-color.c (assign_hard_reg, push_allocno_to_stack): Likewise.
      	(setup_allocno_left_conflicts_size): Likewise.
      	(ira_reassign_conflict_allocnos): Likewise.
      	(ira_reassign_pseudos): Likewise.
      	* ira-emit.c (change_loop): Likewise.
      	* loop-invariant.c (mark_regno_live, mark_regno_death): Likewise.
      	* lto-streamer-out.c (write_symbol): Likewise.
      	* predict.c (expr_expected_value_1): Likewise.
      	* regstat.c (regstat_bb_compute_ri): Likewise.
      	* sel-sched.c (create_block_for_bookkeeping): Likewise.
      	(track_scheduled_insns_and_blocks, sel_sched_region_1): Likewise.
      	* stmt.c (expand_case): Likewise.
      	* tree-eh.c (emit_eh_dispatch): Likewise.
      	* tree-into-ssa.c (prune_unused_phi_nodes): Likewise.
      	* tree-loop-distribution.c (make_nodes_having_upstream_mem_writes):
      	Likewise.
      	(rdg_flag_vertex, rdg_flag_loop_exits): Likewise.
      	(rdg_build_components): Likewise.
      	* tree-object-size.c (collect_object_sizes_for): Likewise.
      	* tree-sra.c (convert_callers): Likewise.
      	* tree-ssa-coalesce.c (live_track_add_partition): Likewise.
      	* tree-ssa-live.c (mark_all_vars_used_1): Likewise.
      	* tree-ssa-pre.c (bitmap_set_replace_value): Likewise.
      
      From-SVN: r163378
      Nathan Froyd committed
    • re PR fortran/29785 (Fortran 2003: POINTER Rank Remapping) · 99d821c0
      2010-08-19  Daniel Kraft  <d@domob.eu>
      
      	PR fortran/29785
      	PR fortran/45016
      	* trans.h (struct gfc_se): New flag `byref_noassign'.
      	* trans-array.h (gfc_conv_shift_descriptor_lbound): New method.
      	(gfc_conv_array_extent_dim), (gfc_conv_descriptor_size): New methods.
      	* expr.c (gfc_check_pointer_assign): Allow bounds and rank remapping
      	and check for compile-time errors with those.
      	* trans-decl.c (trans_associate_var): Use new routine
      	`gfc_conv_shift_descriptor_lbound' instead of doing it manually.
      	* trans-array.c (gfc_conv_shift_descriptor_lbound): New method.
      	(gfc_conv_array_extent_dim), (gfc_conv_descriptor_size): New methods.
      	(gfc_array_init_size): Use new `gfc_conv_array_extent_dim'.
      	(gfc_conv_expr_descriptor): Handle new flag `byref_noassign'.
      	* trans-expr.c (gfc_trans_pointer_assignment): Handle bounds and
      	rank remapping for assignment.
      
      2010-08-19  Daniel Kraft  <d@domob.eu>
      
      	PR fortran/29785
      	PR fortran/45016
      	* gfortran.dg/pointer_assign_5.f90: Remove 'not implemented' error.
      	* gfortran.dg/pointer_remapping_1.f90: New test.
      	* gfortran.dg/pointer_remapping_2.f03: New test.
      	* gfortran.dg/pointer_remapping_3.f08: New test.
      	* gfortran.dg/pointer_remapping_4.f03: New test.
      	* gfortran.dg/pointer_remapping_5.f08: New test.
      	* gfortran.dg/pointer_remapping_6.f08: New test.
      
      From-SVN: r163377
      Daniel Kraft committed
    • i386.md (*lea_1): Use P mode iterator. · f1b62c9f
      2010-08-19  Uros Bizjak  <ubizjak@gmail.com>
      
      	* config/i386/i386.md (*lea_1): Use P mode iterator.
      	(lea add splitter): Also handle DImode operands.
      	(DImode lea add splitter): Use x86_64_immediate_operand for operand 2
      	predicate.  Do not use ix86_lea_for_add_ok.
      	(zext DImode lea add splitter): Use ix86_lea_for_add_ok.
      	(lea ashift splitter): Also handle DImode operands.
      	(DImode lea ashift splitter): Remove splitter.
      
      2010-08-19  Uros Bizjak  <ubizjak@gmail.com>
      
      	* config/i386/i386.md (*add<SWI:mode>3_cconly_overflow): Do not use
      	ix86_binary_operator_ok.
      
      From-SVN: r163375
      Uros Bizjak committed
    • Also scan movb. · 68152b20
      2010-08-19  Uros Bizjak  <ubizjak@gmail.com>
      
      	PR testsuite/45324
      	* gcc.target/i386/volatile-bitfields-1.c: Also scan movb.
      
      From-SVN: r163372
      Uros Bizjak committed
    • vect-1.c (foo): Fix last commit. · f3eb3e27
      2010-08-19  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>
      
      	* gcc.dg/vect/vect-1.c (foo): Fix last commit.
      
      From-SVN: r163370
      Ramana Radhakrishnan committed
    • re PR rtl-optimization/44691 (ICE: RTL check: expected code 'reg', have 'plus'… · 5e841c82
      re PR rtl-optimization/44691 (ICE: RTL check: expected code 'reg', have 'plus' in rhs_regno, at rtl.h:1050)
      
      	PR rtl-optimization/44691
      	* sel-sched.c (count_occurrences_1): Also punt when SUBREG_REG
      	is not a register.
      
      From-SVN: r163369
      Andrey Belevantsev committed
    • For Tejas Belagod · 8ebbe10f
      2010-08-19  Tejas Belagod  <tejas.belagod@arm.com>
      
      	* gcc.dg/vect/vect-1.c (foo): Change inner loop index
      	variable.
      
      From-SVN: r163368
      Tejas Belagod committed
    • For Ian Bolton <ian.bolton@arm.com> · c92f1823
      2010-08-19  Ian Bolton  <ian.bolton@arm.com>
      
      	PR target/45070
      	* gcc.c-torture/execute/pr45070.c: New.
      	* config/arm/arm.c (arm_output_epilogue): Ensure that return
      	 value of size 1-3 is handled correctly.
      
      From-SVN: r163367
      Ian Bolton committed
    • For Ian Bolton <ian.bolton@arm.com> · f096c02a
      	* tree-switch-conversion.c (gen_inbound_check): Ensure that the
      	type for the conditional has wide enough range.
      
      	* testsuite/g++.dg/pr44328.C: New test.
      
      From-SVN: r163366
      Ian Bolton committed
    • intrinsic.texi (Bessel_jn, Bessel_yn): Fix typo. · d76799c7
      2010-08-19  Tobias Burnus  <burnus@net-b.de>
      
              * intrinsic.texi (Bessel_jn, Bessel_yn): Fix typo.
              * * simplify.c (gfc_simplify_bessel_yn): Change recursive
              into recurrence.
      
      From-SVN: r163365
      Tobias Burnus committed
    • re PR fortran/36158 (Transformational function BESSEL_YN(n1,n2,x) and BESSEL_JN missing) · 29698e0f
      2010-08-19  Tobias Burnus  <burnus@net-b.de>
      
              PR fortran/36158
              PR fortran/33197
              * check.c (gfc_check_bessel_n2): New function.
              * gfortran.h (gfc_isym_id): Add GFC_ISYM_JN2 and GFC_ISYM_YN2.
              * intrinsic.c (add_functions): Add transformational version
              of the Bessel_jn/yn intrinsics.
              * intrinsic.h (gfc_check_bessel_n2,gfc_simplify_bessel_jn2,
              gfc_simplify_bessel_yn2): New prototypes.
              * intrinsic.texi (Bessel_jn, Bessel_yn): Document
              transformational variant.
              * simplify.c (gfc_simplify_bessel_jn, gfc_simplify_bessel_yn):
              Check for negative order.
              (gfc_simplify_bessel_n2,gfc_simplify_bessel_jn2,
              gfc_simplify_bessel_yn2): New functions.
      
      2010-08-19  Tobias Burnus  <burnus@net-b.de>
      
              PR fortran/36158
              PR fortran/33197
              * gfortran.dg/bessel_3.f90: New.
              * gfortran.dg/bessel_4.f90: New.
              * gfortran.dg/bessel_5.f90: New.
      
      From-SVN: r163364
      Tobias Burnus committed
    • re PR fortran/41859 (ICE on invalid expression involving DT with pointer components in I/O) · 771c5727
      2010-08-19  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
      
      	PR fortran/41859
      	* resolve.c (resolve_transfer): Traverse operands and set expression
      	to be checked to a non EXPR_OP type.
      
      From-SVN: r163363
      Jerry DeLisle committed
    • Daily bump. · b426fff1
      From-SVN: r163362
      GCC Administrator committed
  3. 18 Aug, 2010 9 commits
    • re PR target/45327 (ICE: SIGSEGV in rtx_equal_p (rtl.c:496) with -O1… · 0fb2f9b1
      re PR target/45327 (ICE: SIGSEGV in rtx_equal_p (rtl.c:496) with -O1 -funroll-loops -fnon-call-exceptions)
      
      	PR target/45327
      	* config/i386/i386.md (<any_or:code><SWI:mode>_3): Do not use
      	ix86_binary_operator_ok.
      
      From-SVN: r163357
      Uros Bizjak committed
    • re PR fortran/45290 ([F08] pointer initialization) · 80f95228
      2010-08-19  Janus Weil  <janus@gcc.gnu.org>
      
      	PR fortran/45290
      	* gfortran.h (gfc_add_save): Modified prototype.
      	* decl.c (add_init_expr_to_sym): Defer checking of proc pointer init.
      	(match_pointer_init): New function to match F08 pointer initialization.
      	(variable_decl,match_procedure_decl,match_ppc_decl): Use
      	'match_pointer_init'.
      	(match_attr_spec): Module variables are implicitly SAVE.
      	(gfc_match_save): Modified call to 'gfc_add_save'.
      	* expr.c (gfc_check_assign_symbol): Extra checks for pointer
      	initialization.
      	* primary.c (gfc_variable_attr): Handle SAVE attribute.
      	* resolve.c (resolve_structure_cons): Add new argument and do pointer
      	initialization checks.
      	(gfc_resolve_expr): Modified call to 'resolve_structure_cons'.
      	(resolve_values): Call 'resolve_structure_cons' directly with init arg.
      	(resolve_fl_variable): Handle SAVE_IMPLICIT.
      	* symbol.c (gfc_add_save,gfc_copy_attr,save_symbol): Handle
      	SAVE_IMPLICIT.
      	* trans-decl.c (gfc_create_module_variable): Module variables with
      	TARGET can already exist.
      	* trans-expr.c (gfc_conv_variable): Check for 'current_function_decl'.
      	(gfc_conv_initializer): Implement non-NULL pointer
      	initialization.
      
      
      2010-08-19  Janus Weil  <janus@gcc.gnu.org>
      
      	PR fortran/45290
      	* gfortran.dg/proc_ptr_comp_3.f90: Modified.
      	* gfortran.dg/pointer_init_2.f90: New.
      	* gfortran.dg/pointer_init_3.f90: New.
      	* gfortran.dg/pointer_init_4.f90: New.
      
      From-SVN: r163356
      Janus Weil committed
    • i386.md (*add<mode>_1): Split insn to lea. · 21667997
      	* config/i386/i386.md (*add<mode>_1) <TYPE_LEA>: Split insn to lea.
      	<default>:  Swap operands 1 and 2 for alternative 2 to use existing
      	code to output insn mnemonic.  Fix comment.
      	(*addsi_1_zext): Add r-r-0 alternative 1.
      	<TYPE_LEA>: Split insn to lea.
      	<default>: Handle alternative 1.
      	(*addhi_1_lea): Add r-r-0 alternative 2.  Use cond RTX instead of
      	multi-level if_then_else RTX to set "type" attribute.
      	<default>: Handle alternative 2.
      	(*addqi_1_lea): Add q-q-0 alternative 2 and r-r-0 alternative 4.
      	Use cond RTX instead of multi-level if_then_else RTX to set
      	"type" attribute.
      	<default>: Handle alternatives 2 and 4.
      	(lea splitters): Update calls to ix86_lea_for_add_ok.
      
      	* config/i386/i386.c (ix86_lea_for_add_ok): Remove unused "code"
      	argument.
      	* config/i386/i386-protos.h (ix86_lea_for_add_ok): Update prototype.
      
      From-SVN: r163351
      Uros Bizjak committed
    • re PR fortran/45295 (intrinsic.texi: SELECTED_CHAR_KIND should mention wide-char support) · 9a18b99b
      2010-08-18  Tobias Burnus  <burnus@net-b.de>
      
              PR fortran/45295
              * intrinsic.texi (selected_char_kind): Document ISO_10646
              support.
      
      From-SVN: r163347
      Tobias Burnus committed
    • re PR c++/45049 (ICE: tree check: expected tree that contains 'decl minimal'… · c043ee4a
      re PR c++/45049 (ICE: tree check: expected tree that contains 'decl minimal' structure, have 'tree_list' in push_overloaded_decl, at cp/name-lookup.c:2160)
      
      gcc/cp/
      	PR c++/45049
      	* name-lookup.c (push_overloaded_decl): Change DECL_CHAIN to
      	TREE_CHAIN.
      
      gcc/testsuite/
      	PR c++/45049
      	* g++.dg/pr45049-1.C: New test.
      	* g++.dg/pr45049-2.C: New test.
      
      From-SVN: r163344
      Nathan Froyd committed
    • re PR libstdc++/45276 (Need to document _GLIBCXX_SYNCHRONIZATION_HAPPENS_BEFORE) · 3ff91293
      2010-08-18  Kostya Serebryany <kcc@google.com>
      	    Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR libstdc++/45276
      	* doc/xml/manual/debug.xml ([debug.races]): Add.
      
      Co-Authored-By: Paolo Carlini <paolo.carlini@oracle.com>
      
      From-SVN: r163342
      Kostya Serebryany committed
    • builtin-apply2.c (STACK_ARGUMENTS_SIZE): Define to 20 if __ARM_PCS is defined otherwise 64. · 1027c9c5
      	* gcc.dg/builtin-apply2.c (STACK_ARGUMENTS_SIZE): Define to
      	20 if __ARM_PCS is defined otherwise 64.
      	(bar): Use STACK_ARGUMENTS_SIZE for the third argument
      	instead of hard coded 64.
      
      From-SVN: r163341
      Jie Zhang committed
    • tree-ssa-uninit.c (find_uninit_use): Disregard debug stmts, use operand helpers. · 480161b5
      2010-08-18  Richard Guenther  <rguenther@suse.de>
      
      	* tree-ssa-uninit.c (find_uninit_use): Disregard debug stmts,
      	use operand helpers.
      
      From-SVN: r163340
      Richard Guenther committed