Commit Graph

118507 Commits

Author SHA1 Message Date
Křištof Želechovski
c141b97e70 README: Also refer to the online installation instructions.
* INSTALL/README: Also refer to the online installation
	instructions.

From-SVN: r190669
2012-08-25 20:48:20 +00:00
Jonathan Wakely
05ee55c46b re PR libstdc++/54248 (Comment in standard library header talks about boost)
PR libstdc++/54248
	* include/bits/concept_check.h: Replace references to boost
	namespace.

From-SVN: r190668
2012-08-25 19:51:53 +01:00
Uros Bizjak
66aaf16f87 i386.h (FP_REG_P): Remove macro.
* config/i386/i386.h (FP_REG_P): Remove macro.
	(FP_REGNO_P): Ditto.
	(HARD_REGNO_NREGS): Use STACK_REGNO_P instead of FP_REGNO_P.
	(HARD_REGNO_NREGS_HAS_PADDING): Ditto.
	(ANY_FP_REGNO_P): Ditto.
	(HARD_REGNO_RENAME_OK): Use STACK_REGNO_P.
	* config/i386/i386.c (output_387_ffreep): Use STACK_REGNO_P
	instead of FP_REGNO_P.
	(ix86_hard_regno_mode_ok): Ditto.
	* config/i386/predicates.md (fp_register_operand): Ditto.
	(register_and_not_fp_reg_operand): Ditto.
	* config/i386/sync.md (atomic_loaddi_fpu): Use STACK_REG_P instead
	of FP_REG_P.

	* reg-stack.c (get_true_reg): Use STACK_REG_P instead of FP_REG_P.

From-SVN: r190667
2012-08-25 19:16:05 +02:00
Uros Bizjak
b911390762 * ChangeLog: Fix whitespace.
From-SVN: r190666
2012-08-25 17:52:23 +02:00
Paolo Carlini
f27a59cf8a re PR c++/51421 ([c++0x] ICE with invalid use of auto)
/cp
2012-08-25  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/51421
	* decl2.c (mark_used): Consistently return false after errors
	about uses before deduction of auto.
	* semantics.c (finish_id_expression): Check mark_used return
	value and return error_mark_node in case of failure.

/testsuite
2012-08-25  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/51421
	* g++.dg/cpp0x/auto34.C: New.

From-SVN: r190665
2012-08-25 09:53:30 +00:00
Jason Merrill
cd057e3af0 PR c++/51213 (again)
PR c++/51213 (again)
	* pt.c (deduction_tsubst_fntype): Remove.
	(fn_type_unification): Check deduction depth and call
	instantiate_template here.  Handle default argument access checks.
	(determine_specialization): Suppress access control.
	(tsubst_decl): Check for excessive deduction depth.
	(recheck_decl_substitution): Make sure access control is on.
	(type_unification_real): Don't mess with access deferring here.
	(get_bindings): Adjust for fn_type_unification return type.
	* call.c (enum rejection_reason_code): Drop rr_template_instantiation.
	(template_instantiation_rejection): Remove.
	(struct rejection_reason): Change targs to num_targs.
	(template_unification_rejection, print_z_candidate): Adjust.
	(add_template_candidate_real): Adjust for fn_type_unification change.
	* class.c (resolve_address_of_overloaded_function): Likewise.
	* cp-tree.h: Adjust declaration.

From-SVN: r190664
2012-08-24 23:30:11 -04:00
Jason Merrill
f581a987e3 print-tree.c (print_node): Don't check TREE_LANG_FLAG_* on TREE_VEC or SSA_NAME.
* print-tree.c (print_node): Don't check TREE_LANG_FLAG_*
	on TREE_VEC or SSA_NAME.

From-SVN: r190663
2012-08-24 22:29:00 -04:00
Jason Merrill
03b8c9bf9a pt.c (tsubst_default_argument): Indicate where the default argument is being instantiated for.
* pt.c (tsubst_default_argument): Indicate where the default
	argument is being instantiated for.
	(tsubst_expr): Restore previous location.
	(tsubst_copy_and_build): Set and restore location.
	* call.c (build_new_method_call_1): Remember location of call.
	* semantics.c (finish_call_expr): Here too.
	* parser.c (cp_parser_omp_for_loop): Remember the location of the
	increment expression.

From-SVN: r190662
2012-08-24 22:27:27 -04:00
GCC Administrator
b21deb041a Daily bump.
From-SVN: r190661
2012-08-25 00:17:26 +00:00
Jakub Jelinek
6f8f67e97d re PR c/54363 (ICE when compiling malformed struct initializers)
PR c/54363
	* gimplify.c (optimize_compound_literals_in_ctor): Only recurse
	if init is a CONSTRUCTOR.

	* gcc.dg/pr54363.c: New test.

From-SVN: r190657
2012-08-24 23:46:17 +02:00
Jakub Jelinek
6265d07ce0 re PR c/54355 (ICE on invalid code in switch statement)
PR c/54355
	* c-decl.c (c_parser_label): Pass true as nested and fix up comments
	for nested and empty_ok arguments in the call to
	c_parser_declaration_or_fndef.

	* gcc.dg/pr54355.c: New test.

From-SVN: r190656
2012-08-24 23:45:22 +02:00
Steven Bosscher
12fdc0990f tree-ssa-live.c (dump_var_map): Do not dump the partition map of virtual operands.
* tree-ssa-live.c (dump_var_map): Do not dump the partition
	map of virtual operands.

From-SVN: r190655
2012-08-24 20:25:42 +00:00
Sriraman Tallam
36ec6d1c37 Sync plugin-api.h with gold patch : http://sourceware.org/ml/binutils/2012-08/msg00447.html
* plugin-api.h (ld_plugin_allow_unique_segment_for_sections):
	New interface.
	(ld_plugin_unique_segment_for_sections): New interface.
	(LDPT_ALLOW_UNIQUE_SEGMENT_FOR_SECTIONS): New enum val.
	(LDPT_UNIQUE_SEGMENT_FOR_SECTIONS): New enum val.
	(tv_allow_unique_segment_for_sections): New member.
	(tv_unique_segment_for_sections): New member.

From-SVN: r190654
2012-08-24 19:07:28 +00:00
Jason Merrill
9284926724 pt.c (resolve_overloaded_unification): Use coerce_template_parms instead of get_bindings.
* pt.c (resolve_overloaded_unification): Use coerce_template_parms
	instead of get_bindings.
	(resolve_nondeduced_context): Likewise.

From-SVN: r190653
2012-08-24 14:58:00 -04:00
Jason Merrill
60b5de49ef pt.c (register_specialization): Correct argument to check_specialization_namespace.
* pt.c (register_specialization): Correct argument to
	check_specialization_namespace.
	(determine_specialization): Don't consider members of
	unspecialized types.

From-SVN: r190652
2012-08-24 14:57:50 -04:00
Yuri Rumyantsev
013734b91b i386.c (ia32_multipass_dfa_lookahead): Add case for Atom processor.
* config/i386/i386.c (ia32_multipass_dfa_lookahead) : Add
        case for Atom processor.

From-SVN: r190649
2012-08-24 15:36:02 +00:00
Simon Baldwin
77ee71904f dwarf2out.c (gen_producer_string): Omit command line switch if CL_NO_DWARF_RECORD flag set.
gcc/ChangeLog
	* dwarf2out.c (gen_producer_string): Omit command line switch if
	CL_NO_DWARF_RECORD flag set.
	* opts.h (CL_NO_DWARF_RECORD): New.
	* opt-functions.awk (switch_flags): Add NoDWARFRecord.
	* doc/options.texi: Document NoDWARFRecord option flag.

gcc/fortran/ChangeLog
	* lang.opt (-cpp=): Mark flag NoDWARFRecord.

From-SVN: r190648
2012-08-24 14:58:06 +00:00
H.J. Lu
a9b94d0dd9 Allow arg_pointer_rtx/frame_pointer_rtx for based_loc_descr
gcc/

	PR debug/52857
	* dwarf2out.c (mem_loc_descriptor): Allow arg_pointer_rtx and
	frame_pointer_rtx for based_loc_descr.

gcc/testsuite/

	PR debug/52857
	* gcc.target/i386/pr52857-1.c: New.
	* gcc.target/i386/pr52857-2.c: Likewise.

From-SVN: r190647
2012-08-24 06:21:55 -07:00
Georg-Johann Lay
4aeaaca35f re PR target/54222 ([avr] Implement fixed-point support)
PR target/54222
	* config/avr/t-avr (conv_X): Rename to func_X.

From-SVN: r190646
2012-08-24 13:01:54 +00:00
Martin Jambor
2eb712b402 predict.c (maybe_hot_frequency_p): New parameter fun.
2012-08-24  Martin Jambor  <mjambor@suse.cz>

	* predict.c (maybe_hot_frequency_p): New parameter fun.  Use its decl
	instead of current_function_decl, use profile_status_for_function and
	ENTRY_BLOCK_PTR_FOR_FUNCTION with fun instead of their cfun variants.
	(maybe_hot_count_p): New parameter fun, use
	profile_status_for_function instead of its cfun_variant.
	(maybe_hot_bb_p): New parameter fun, checking-assert it, pass it to
	all callees.
	(maybe_hot_edge_p): Pass cfun to maybe_hot_count_p and
	maybe_hot_frequency_p.
	(probably_never_executed_bb_p): New parameter fun, use its decl
	instead of current_function_decl.
	(optimize_bb_for_size_p): Pass cfun to maybe_hot_bb_p.
	(rtl_profile_for_bb): Likewise.
	(compute_function_frequency): Pass cfun to maybe_hot_bb_p and
	probably_never_executed_bb_p.
	* tree-ssa-operands.c (ssa_operands_active): New operator fun.  Use it
	instead of cfun.
	(update_stmt_operands): Pass cfun as an argument of
	ssa_operands_active.
	(swap_tree_operands): Likewise.
	* gimple-iterator.c (update_modified_stmt): Likewise.
	(update_modified_stmts): Likewise.
	* tree-flow-inline.h (delink_stmt_imm_use): Likewise.
	* tree-ssa.c (delete_tree_ssa): Likewise.
	* bb-reorder.c (bb_to_key): Pass cfun to probably_never_executed_bb_p.
	(push_to_next_round_p): Likewise.
	(find_rarely_executed_basic_blocks_and_crossing_edges ): Likewise.
	* cfg.c: Inlude tree.h.
	(check_bb_profile): Use profile_status_for_function,
	EXIT_BLOCK_PTR_FOR_FUNCTION and ENTRY_BLOCK_PTR_FOR_FUNCTION with
	DECL_STRUCT_FUNCTION (current_function_decl) instead of their cfun
	variants.
	(dump_bb_info): Pass DECL_STRUCT_FUNCTION (current_function_decl) to
	maybe_hot_bb_p and probably_never_executed_bb_p.
	* gimple-pretty-print.c (gimple_dump_bb_buff): Checking-assert that
	DECL_STRUCT_FUNCTION (current_function_decl) is not NULL.  Pass it to
	dump_histograms_for_stmt.
	(dump_gimple_mem_ops): Pass DECL_STRUCT_FUNCTION (current_function_decl)
	as an argument to dump_gimple_mem_ops.
	* tree-cfg.c (dump_function_to_file): Rename parameter fn to fndecl.
	Do not change cfun.  Change and restore current_function_decl.
	* Makefile.in (cfg.o): Include TREE_H in dependencies.

From-SVN: r190645
2012-08-24 14:57:24 +02:00
Georg-Johann Lay
e55e405619 re PR target/54222 ([avr] Implement fixed-point support)
libgcc/
	PR target/54222
	* config/avr/lib1funcs-fixed.S: New file.
	* config/avr/lib1funcs.S: Include it.  Undefine some divmodsi
	after they are used.
	(neg2, neg4): New macros.
	(__mulqihi3,__umulqihi3,__mulhi3): Rewrite non-MUL variants.
	(__mulhisi3,__umulhisi3,__mulsi3): Rewrite non-MUL variants.
	(__umulhisi3): Speed up MUL variant if there is enough flash.
	* config/avr/avr-lib.h (TA, UTA): Adjust according to gcc's
	avr-modes.def.
	* config/avr/t-avr (LIB1ASMFUNCS): Add: _fractqqsf, _fractuqqsf,
	_fracthqsf, _fractuhqsf, _fracthasf, _fractuhasf, _fractsasf,
	_fractusasf, _fractsfqq, _fractsfuqq, _fractsfhq, _fractsfuhq,
	_fractsfha, _fractsfsa, _mulqq3, _muluqq3, _mulhq3, _muluhq3,
	_mulha3, _muluha3, _mulsa3, _mulusa3, _divqq3, _udivuqq3, _divhq3,
	_udivuhq3, _divha3, _udivuha3, _divsa3, _udivusa3.
	(LIB2FUNCS_EXCLUDE): Add supported functions.

gcc/
	PR target/54222
	* avr-modes.def (HA, SA, DA, TA, UTA): Adjust modes.
	* avr/avr-fixed.md: New file.
	* avr/avr.md: Include it.
	(cc): Add: minus.
	(adjust_len): Add: minus, minus64, ufract, sfract.
	(ALL1, ALL2, ALL4, ORDERED234): New mode iterators.
	(MOVMODE): Add: QQ, UQQ, HQ, UHQ, HA, UHA, SQ, USQ, SA, USA.
	(MPUSH): Add: HQ, UHQ, HA, UHA, SQ, USQ, SA, USA.
	(pushqi1, xload8_A, xload_8, movqi_insn, *reload_inqi, addqi3,
	subqi3, ashlqi3, *ashlqi3, ashrqi3, lshrqi3, *lshrqi3, *cmpqi, 
	cbranchqi4, *cpse.eq): Generalize to handle all 8-bit modes in ALL1.
	(*movhi, reload_inhi, addhi3, *addhi3, addhi3_clobber, subhi3,
	ashlhi3, *ashlhi3_const, ashrhi3, *ashirhi3_const, lshrhi3,
	*lshrhi3_const, *cmphi, cbranchhi4): Generalize to handle all
	16-bit modes in ALL2.
	(subhi3, casesi, strlenhi): Add clobber when expanding minus:HI.
	(*movsi, *reload_insi, addsi3, subsi3, ashlsi3, *ashlsi3_const,
	ashrsi3, *ashrhi3_const, *ashrsi3_const, lshrsi3, *lshrsi3_const,
	*reversed_tstsi, *cmpsi, cbranchsi4): Generalize to handle all
	32-bit modes in ALL4.
	* avr-dimode.md (ALL8): New mode iterator.
	(adddi3, adddi3_insn, adddi3_const_insn, subdi3, subdi3_insn,
	subdi3_const_insn, cbranchdi4, compare_di2,
	compare_const_di2, ashrdi3, lshrdi3, rotldi3, ashldi3_insn,
	ashrdi3_insn, lshrdi3_insn, rotldi3_insn): Generalize to handle
	all 64-bit modes in ALL8.
	* config/avr/avr-protos.h (avr_to_int_mode): New prototype.
	(avr_out_fract, avr_out_minus, avr_out_minus64): New prototypes.
	* config/avr/avr.c (TARGET_FIXED_POINT_SUPPORTED_P): Define to...
	(avr_fixed_point_supported_p): ...this new static function.
	(TARGET_BUILD_BUILTIN_VA_LIST): Define to...
	(avr_build_builtin_va_list): ...this new static function.
	(avr_adjust_type_node): New static function.
	(avr_scalar_mode_supported_p): Allow if ALL_FIXED_POINT_MODE_P.
	(avr_builtin_setjmp_frame_value): Use gen_subhi3 and return new
	pseudo instead of gen_rtx_MINUS.
	(avr_print_operand, avr_operand_rtx_cost): Handle: CONST_FIXED.
	(notice_update_cc): Handle: CC_MINUS.
	(output_movqi): Generalize to handle respective fixed-point modes.
	(output_movhi, output_movsisf, avr_2word_insn_p): Ditto.
	(avr_out_compare, avr_out_plus_1): Also handle fixed-point modes.
	(avr_assemble_integer): Ditto.
	(output_reload_in_const, output_reload_insisf): Ditto.
	(avr_compare_pattern): Skip all modes > 4 bytes.
	(avr_2word_insn_p): Skip movuqq_insn, movqq_insn.
	(avr_out_fract, avr_out_minus, avr_out_minus64): New functions.
	(avr_to_int_mode): New function.
	(adjust_insn_length): Handle: ADJUST_LEN_SFRACT,
	ADJUST_LEN_UFRACT, ADJUST_LEN_MINUS, ADJUST_LEN_MINUS64.
	* config/avr/predicates.md (const0_operand): Allow const_fixed.
	(const_operand, const_or_immediate_operand): New.
	(nonmemory_or_const_operand): New.
	* config/avr/constraints.md (Ynn, Y00, Y01, Y02, Ym1, Ym2, YIJ):
	New constraints.
	* config/avr/avr.h (LONG_LONG_ACCUM_TYPE_SIZE): Define.

From-SVN: r190644
2012-08-24 12:42:48 +00:00
Tobias Burnus
2960a36853 re PR fortran/54350 (FAIL: gfortran.dg/realloc_on_assign_*.f90 -O (internal compiler error) at r190586)
2012-08-24  Tobias Burnus  <burnus@net-b.de>

        PR fortran/54350
        * trans-array.c (free_ss_info): Free data.array.subscript.
        (gfc_free_ss): No longer free data.array.subscript.
        (walk_coarray): New function, moved from trans-intrinsic.c
        (gfc_conv_expr_descriptor): Walk array descriptor instead
        of taking passed "ss".
        (get_array_ctor_all_strlen, gfc_add_loop_ss_code,
        gfc_conv_array_parameter): Update call and cleanup ss handling.
        * trans-array.h (gfc_conv_expr_descriptor,
        gfc_conv_array_parameter): Update prototype.
        * trans-expr.c (gfc_conv_derived_to_class,
        conv_isocbinding_procedure, gfc_conv_procedure_call,
        gfc_trans_alloc_subarray_assign, gfc_trans_subcomponent_assign,
        gfc_trans_pointer_assignment, gfc_trans_arrayfunc_assign): Update
        call to gfc_conv_expr_descriptor and gfc_conv_array_parameter,
        and clean up.
        * trans-intrinsic.c (walk_coarray): Moved to trans-array.c
        (trans_this_image, trans_image_index, gfc_conv_intrinsic_rank
        gfc_conv_intrinsic_bound, gfc_conv_intrinsic_cobound,
        gfc_conv_intrinsic_len, gfc_conv_intrinsic_size,
        gfc_conv_intrinsic_sizeof, gfc_conv_intrinsic_storage_size,
        gfc_conv_intrinsic_transfer, gfc_conv_allocated,
        gfc_conv_associated, gfc_conv_intrinsic_loc,
        conv_intrinsic_move_alloc): Update calls.
        * trans-io.c (gfc_convert_array_to_string, set_internal_unit,
        gfc_trans_transfer): Ditto.
        * trans-stmt.c (gfc_conv_elemental_dependencies,
        gfc_trans_sync, trans_associate_var,
        gfc_trans_pointer_assign_need_temp): Ditto.

From-SVN: r190641
2012-08-24 09:43:23 +02:00
GCC Administrator
3c5e0cc46e Daily bump.
From-SVN: r190636
2012-08-24 00:17:54 +00:00
Richard Sandiford
9c7ec9687e code-readable-4.c: New test.
gcc/testsuite/
	* gcc.target/mips/code-readable-4.c: New test.

From-SVN: r190630
2012-08-23 20:40:07 +00:00
Kenneth Zadeck
d81168901e alias.c (rtx_equal_for_memref_p): Convert constant cases.
2012-08-23  Kenneth Zadeck <zadeck@naturalbridge.com>

	* alias.c (rtx_equal_for_memref_p): Convert constant cases.
	* combine.c (find_single_use_1, mark_used_regs_combine): Convert
	to CASE_CONST_ANY.
 	* cse.c (exp_equiv_p, canon_reg, fold_rtx, cse_process_notes_1,
	count_reg_usage): Convert constant cases.
	* cselib.c (cselib_expand_value_rtx_1): Convert to
	CASE_CONST_ANY.
	(cselib_subst_to_values): Convert constant cases.
	* df-scan.c (df_uses_record): Ditto.
	* dse.c (const_or_frame_p): Convert case statements to explicit
	if-then-else using mode classes.
	* emit-rtl.c (verify_rtx_sharing, copy_insn_1): Convert constant cases.
	* explow.c (convert_memory_address_addr_space): Ditto.
	* gcse.c (want_to_gcse_p, oprs_unchanged_p, compute_transp): Ditto.
	* genattrtab.c (attr_copy_rtx, clear_struct_flag): Ditto.
	* ira.c (equiv_init_varies_p, contains_replace_regs,
	memref_referenced_p, rtx_moveable_p): Ditto.
	* jump.c (mark_jump_label_1): Remove constant cases.
	(rtx_renumbered_equal_p): Convert to CASE_CONST_UNIQUE.
	* loop-invariant.c (check_maybe_invariant, hash_invariant_expr_1,
	invariant_expr_equal_p): Convert to CASE_CONST_ANY.
	* postreload-gcse.c (oprs_unchanged_p): Convert constant cases.
	* reginfo.c (reg_scan_mark_refs): Ditto.
	* regrename.c (scan_rtx): Ditto.
	* reload1.c (eliminate_regs_1, elimination_effects,
	scan_paradoxical_subregs): Ditto.
	* reload.c (operands_match_p, subst_reg_equivs):  Ditto.
	* resource.c (mark_referenced_resources, mark_set_resources): Ditto.
	* rtlanal.c (rtx_unstable_p, rtx_varies_p, count_occurrences)
	(reg_mentioned_p, modified_between_p, modified_in_p)
	(volatile_insn_p, volatile_refs_p, side_effects_p, may_trap_p_1,
	inequality_comparisons_p, computed_jump_p_1): Ditto.
	* rtl.c (copy_rtx, rtx_equal_p_cb, rtx_equal_p): Ditto.
	* sched-deps.c (sched_analyze_2): Ditto.
	* valtrack.c (cleanup_auto_inc_dec): Ditto.
	* rtl.h: (CASE_CONST_SCALAR_INT, CASE_CONST_UNIQUE, 
	CASE_CONST_ANY): New macros.

From-SVN: r190627
2012-08-23 18:46:18 +00:00
Jason Merrill
ddf72901e3 * decl.c (compute_array_index_type): Use type_dependent_expression_p.
From-SVN: r190626
2012-08-23 14:33:47 -04:00
Julian Brown
545ca0f278 2012-08-23 Julian Brown <julian@codesourcery.com>
Sandra Loosemore  <sandra@codesourcery.com>

	gcc/
	* config/mips/mips.md
	(UNSPEC_CASESI_DISPATCH): New.
	(MIPS16_T_REGNUM): New constant.
	(tablejump): Don't use for MIPS16_SHORT_JUMP_TABLES.
	(casesi): New.
	(casesi_internal_mips16_<mode>): New.
	* config/mips/mips.c (mips16_split_long_branches): Adjust test
	to ignore casesi jump tables.
	* config/mips/mips.h (TARGET_MIPS16_SHORT_JUMP_TABLES): Update
	comment.
	(CASE_VECTOR_MODE): Use SImode unconditionally.
	(CASE_VECTOR_SHORTEN_MODE): Define.
	(ASM_OUTPUT_ADDR_DIFF_ELT): Output word-sized addr_diff_elts
	when necessary for MIPS16_SHORT_JUMP_TABLES.

	gcc/testsuite/
	* gcc.target/mips/code-readable-1.c: Add -O to options.

Co-Authored-By: Sandra Loosemore <sandra@codesourcery.com>

From-SVN: r190625
2012-08-23 11:42:03 -04:00
Georg-Johann Lay
a147b6d28f Makefile.in (fixed-funcs,fixed-conv-funcs): filter-out LIB2FUNCS_EXCLUDE before adding them to libgcc-objects, libgcc-s-objects.
* Makefile.in (fixed-funcs,fixed-conv-funcs): filter-out
	LIB2FUNCS_EXCLUDE before adding them to libgcc-objects,
	libgcc-s-objects.
	* fixed-obj.mk: Only expand dependency if $o is not in
	LIB2FUNCS_EXCLUDE.

From-SVN: r190624
2012-08-23 15:41:03 +00:00
Arnaud Charlet
c583af79c0 c-ada-spec.c (dump_generic_ada_node): Fix handling of name_only for pointers, and add missing Convention C pragma.
* c-ada-spec.c (dump_generic_ada_node): Fix handling of name_only
	for pointers, and add missing Convention C pragma.
	(print_ada_struct_decl): Add missing aliased keyword.
	(dump_ads): Add pragma Ada_2005 and Style_Checks (Off).

From-SVN: r190623
2012-08-23 16:49:41 +02:00
Bill Schmidt
3118cdeb39 rs6000.c (rs6000_density_test): Free loop body.
2012-08-23  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

	* config/rs6000/rs6000.c (rs6000_density_test): Free loop body.

From-SVN: r190622
2012-08-23 14:41:24 +00:00
H.J. Lu
721b405fb2 Add -da and remove -dm in GCC manual
PR driver/54335
	* doc/invoke.texi: Add -da and remove -dm.

From-SVN: r190621
2012-08-23 06:37:11 -07:00
Richard Guenther
54e8e2c3b0 tree-vect-stmts.c (vect_finish_stmt_generation): Update virtual SSA form.
2012-08-23  Richard Guenther  <rguenther@suse.de>

	* tree-vect-stmts.c (vect_finish_stmt_generation): Update
	virtual SSA form.

From-SVN: r190620
2012-08-23 11:17:29 +00:00
Jakub Jelinek
b6b27e9830 tree.c (copy_node_stat): Clear DECL_STRUCT_FUNCTION.
* tree.c (copy_node_stat): Clear DECL_STRUCT_FUNCTION.
fortran/
	* trans-decl.c (trans_function_start, generate_coarray_init,
	create_main_function, gfc_generate_constructors): Call
	allocate_struct_function instead of init_function_start.

From-SVN: r190619
2012-08-23 12:02:40 +02:00
Paolo Carlini
8597cab14b re PR c++/20420 (Incorrectly Accepts double declarations)
/cp
2012-08-23  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/20420
	* name-lookup.c (supplement_binding_1): Handle specially enums
	only in class templates.
	(validate_nonmember_using_decl): Enforce 7.3.3/10 about duplicate
	using declarations at function scope.

/testsuite
2012-08-23  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/20420
	* g++.dg/lookup/using53.C: New.

From-SVN: r190618
2012-08-23 09:44:08 +00:00
Mingjie Xing
fb489f55b5 Fix typo in gty.texi.
From-SVN: r190617
2012-08-23 09:30:24 +00:00
Jonathan Wakely
3f6de40f27 re PR libstdc++/54354 (TODO extended iomanip manipulators std::get_time and std::put_time (C++11, section 27.7.5))
PR libstdc++/54354
	* doc/xml/manual/status_cxx2011.xml: Note missing manipulators.
	* doc/html/*: Regenerate.

From-SVN: r190616
2012-08-23 09:37:19 +01:00
Georg-Johann Lay
8ab48a7bfa convert.c: Split into manageable parts:
* gcc.dg/fixed-point/convert.c: Split into manageable parts:
	* gcc.dg/fixed-point/convert-1.c: New.
	* gcc.dg/fixed-point/convert-2.c: New.
	* gcc.dg/fixed-point/convert-3.c: New.
	* gcc.dg/fixed-point/convert-4.c: New.
	* gcc.dg/fixed-point/convert-float-1.c: New.
	* gcc.dg/fixed-point/convert-float-2.c: New.
	* gcc.dg/fixed-point/convert-float-3.c: New.
	* gcc.dg/fixed-point/convert-float-4.c: New.
	* gcc.dg/fixed-point/convert-accum-neg.c: New.
	* gcc.dg/fixed-point/convert-sat.c: New.
	* gcc.dg/fixed-point/convert.h: New.

From-SVN: r190615
2012-08-23 08:11:56 +00:00
Richard Guenther
ceb16be3e8 tree-ssa-loop-manip.c (add_exit_phis_var): Allow virtual operands.
2012-08-23  Richard Guenther  <rguenther@suse.de>

	* tree-ssa-loop-manip.c (add_exit_phis_var): Allow virtual operands.
	(find_uses_to_rename_use): Likewise.
	(find_uses_to_rename_bb): Likewise.
	(find_uses_to_rename_stmt): Walk over all operands.

From-SVN: r190614
2012-08-23 07:38:54 +00:00
Ian Lance Taylor
610d0e16cf compiler: Comparisons return untyped boolean value.
From-SVN: r190612
2012-08-23 04:58:30 +00:00
Ian Lance Taylor
c92900d1db compiler: Remove old handling of unsafe.Pointer in type assertions.
Fixes issue 17.

From-SVN: r190608
2012-08-23 00:20:48 +00:00
GCC Administrator
8489a21ac4 Daily bump.
From-SVN: r190607
2012-08-23 00:18:41 +00:00
Oleg Endo
6e01d52651 re PR target/54089 ([SH] Refactor shift patterns)
PR target/54089
	* config/sh/predicates (p27_rshift_count_operand,
	not_p27_rshift_count_operand): New predicates.
	* config/sh/sh.c (sh_ashlsi_clobbers_t_reg_p,
	sh_lshrsi_clobbers_t_reg_p, sh_dynamicalize_shift_p): Handle special
	case when shift amount is 31.
	(gen_ashift): Emit gen_shlr instead of gen_lshrsi3_m.
	* config/sh/sh.md (ashlsi3_d): Set type to 'dyn_shift' instead
	of 'arith'.
	(ashlsi_c): Rename to shll.  Adapt calls to gen_ashlsi_c throughout
	the file.
	(lshrsi3): Remove clobber from expander.  Use shift_count_operand
	instead of nonmemory_operand predicate for second operand.  Add
	handling of case lshrsi3_n_clobbers_t.
	(lshrsi3_k): Use p27_rshift_count_operand for second operand.
	(lshrsi3_d): Make insn_and_split.  Split dynamic shift to constant
	shift sequences if beneficial.
	(lshrsi3_n): Make insn_and_split.  Split constant shift sequence to
	dynamic shift if beneficial.
	(lshrsi3_n_clobbers_t): New insn_and_split.
	(lshrsi3_m): Delete.

	PR target/54089
	* gcc.target/sh/pr54089-2.c: New.

From-SVN: r190603
2012-08-22 22:52:17 +00:00
Steven Bosscher
131db6b8b2 tracer.c (mark_bb_seen): Use SBITMAP_SIZE.
* tracer.c (mark_bb_seen): Use SBITMAP_SIZE.

	* alias.c (MAX_ALIAS_LOOP_PASSES): Update comment with rationale,
	or rather a lack thereof.
	(init_alias_analysis): Propagate the latest information across
	the CFG in topological order to propagate as far as possible in
	each iteration.  Ignore debug insns.

From-SVN: r190602
2012-08-22 21:38:03 +00:00
H.J. Lu
c637141af0 Add -mlong-double-64/-mlong-double-80 to i386
gcc/

	* doc/invoke.texi: Document -mlong-double-64/-mlong-double-80.

	* config/i386/i386.c (flag_opts): Add -mlong-double-64.
	(TARGET_HAS_BIONIC): Default long double to 64-bit for Bionic.

	* config/i386/i386.h (LONG_DOUBLE_TYPE_SIZE): Use 64 if
	TARGET_LONG_DOUBLE_64 is true.
	(LIBGCC2_LONG_DOUBLE_TYPE_SIZE): New macro.
	(WIDEST_HARDWARE_FP_SIZE): Defined to 80.

	* config/i386/i386.opt (mlong-double-80): New option.
	(mlong-double-64): Likewise.

	* config/i386/i386-c.c (ix86_target_macros): Define
	__LONG_DOUBLE_64__ for TARGET_LONG_DOUBLE_64.

gcc/testsuite/

	* gcc.target/i386/long-double-64-1.c: New file.
	* gcc.target/i386/long-double-64-2.c: Likewise.
	* gcc.target/i386/long-double-64-3.c: Likewise.
	* gcc.target/i386/long-double-64-4.c: Likewise.
	* gcc.target/i386/long-double-80-1.c: Likewise.
	* gcc.target/i386/long-double-80-2.c: Likewise.
	* gcc.target/i386/long-double-80-3.c: Likewise.
	* gcc.target/i386/long-double-80-4.c: Likewise.
	* gcc.target/i386/long-double-80-5.c: Likewise.
	* gcc.target/i386/long-double-80-6.c: Likewise.
	* gcc.target/i386/long-double-80-7.c: Likewise.

libgcc/

	* config/i386/t-linux (HOST_LIBGCC2_CFLAGS): New.

From-SVN: r190599
2012-08-22 12:46:28 -07:00
H.J. Lu
a8a68bb00a Replace REAL_VALUE_TO_TARGET_LONG_DOUBLE with real_to_target
PR target/54347
	* config/i386/i386.c (ix86_split_to_parts): Replace
	REAL_VALUE_TO_TARGET_LONG_DOUBLE with real_to_target.

From-SVN: r190598
2012-08-22 12:43:58 -07:00
Richard Guenther
21e2818df9 tree-vectorizer.c (vectorize_loops): Do not call mark_virtual_operands_for_renaming.
2012-08-22  Richard Guenther  <rguenther@suse.de>

	* tree-vectorizer.c (vectorize_loops): Do not call
	mark_virtual_operands_for_renaming.
	* tree-vect-slp.c (vect_slp_transform_bb): Likewise.
	Do not update SSA form here.

From-SVN: r190596
2012-08-22 15:11:26 +00:00
Dodji Seketeli
4579ccbc0e Make TREE_NOTHROW use the base.nothrow_flag again
While working on something else, I noticed that debug_tree (vec), when
vec is a TREE_VEC was crashing because TREE_NOTHROW was asserting that
its argument is not a TREE_VEC, so print_node would crash.

It turned out that TREE_NOTHROW was accidentally modified by this
change set:

commit 87d8f7b67c
Author: rguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4>
Date:   Tue Aug 21 10:03:38 2012 +0000

    2012-08-21  Richard Guenther  <rguenther@suse.de>

    	cp/
    	* cp-tree.h (TREE_INDIRECT_USING): Use TREE_LANG_FLAG_0 accessor.
    	(ATTR_IS_DEPENDENT): Likewise.
    	(ARGUMENT_PACK_INCOMPLETE_P): Use TREE_ADDRESSABLE instead of
    	TREE_LANG_FLAG_0 on TREE_VECs.

    	* tree.h (struct tree_base): Add union to make it possible to
    	re-use the upper 4 bytes for tree codes that do not need as
    	many flags as others.  Move visited and default_def_flag to
    	common bits section in exchange for saturating_flag and
    	unsigned_flag.  Add SSA name version and tree vec length
    	fields here.
    	(struct tree_vec): Remove length field here.
    	(struct tree_ssa_name): Remove version field here.

    git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190558 138bc75d-0d04-0410-961f-82ee72b054a4

Richard Guenther pre-approved the reverting of the TREE_NOTHROW change
line.

Tested on x86_64-unknown-linux-gnu against master and applied to
trunk.

gcc/
	* tree.h (TREE_NOTHROW): Use the base.nothrow_flag.

From-SVN: r190595
2012-08-22 15:50:58 +02:00
Richard Guenther
9bb06c2a9f re PR tree-optimization/46590 (long compile time with -O2 and many loops)
2012-08-22  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/46590
	* tree-ssa-alias.h (get_continuation_for_phi): Add alias query
	counter output argument.
	(walk_non_aliased_vuses): Add alias query counter argument
	to the walker callback.
	* tree-ssa-alias.c (maybe_skip_until): Add alias query counter
	output argument and count alias queries.
	(get_continuation_for_phi_1): Likewise.
	(get_continuation_for_phi): Likewise.
	(walk_non_aliased_vuses): Add alias query counter argument
	to the walker callback and allow it to abort the walk by
	returning -1.
	* tree-ssa-pre.c (translate_vuse_through_block): Adjust.
	* tree-ssa-sccvn.c (vn_reference_lookup_2): Add alias query
	counter parmeter, abort walk if that is bigger than
	--param sccvn-max-alias-queries-per-access.
	* params.def (sccvn-max-alias-queries-per-access): New param.
	* doc/invoke.texi (sccvn-max-alias-queries-per-access): Document.

From-SVN: r190594
2012-08-22 13:17:26 +00:00
Richard Guenther
4ad1491914 tree-ssa-loop-ch.c (copy_loop_headers): Remove redundant checking.
2012-08-22  Richard Guenther  <rguenther@suse.de>

	* tree-ssa-loop-ch.c (copy_loop_headers): Remove redundant checking.
	* tree-into-ssa.c (initialize_flags_in_bb): Use gcc_checking_assert
	instead of gcc_assert.
	(mark_block_for_update): Likewise.
	(add_new_name_mapping): Likewise.
	(mark_def_sites): Likewise.
	(insert_phi_nodes_for): Likewise.
	(rewrite_debug_stmt_uses): Likewise.
	(rewrite_stmt): Likewise.
	(maybe_register_def): Likewise.
	(rewrite_update_phi_arguments): Likewise.
	(rewrite_update_enter_block): Likewise.
	(mark_def_interesting): Likewise.
	(prepare_def_site_for): Likewise.
	(insert_updated_phi_nodes_for): Likewise.

From-SVN: r190593
2012-08-22 13:14:32 +00:00
Jakub Jelinek
156c01cf12 tree-vect-loop.c (vect_transform_loop): Initialize check_profitability to false.
* tree-vect-loop.c (vect_transform_loop): Initialize
	check_profitability to false.

	* tree-predcom.c (try_combine_chains): Free the worklist vector
	at the end.

From-SVN: r190592
2012-08-22 15:00:13 +02:00