Commit Graph

108776 Commits

Author SHA1 Message Date
Jan Hubicka
970dabbd1e ipa-inline-analysis.c (will_be_nonconstant_predicate): Take nonconstant_names array.
* ipa-inline-analysis.c (will_be_nonconstant_predicate): Take nonconstant_names
	array.
	(estimate_function_body_sizes): Build nonconstant_names array; handle
	BUILT_IN_CONSTANT_P.

From-SVN: r173070
2011-04-28 13:29:54 +00:00
Joseph Myers
80f81134d7 configure.ac: Disable Java for targets not supporting libffi.
* configure.ac: Disable Java for targets not supporting libffi.
	(*-*-chorusos, *-*-kaos*, am33_2.0-*-linux*, sh*-*-pe|mips*-*-pe):
	Remove cases in Java-disabling statement.
	(*arm-wince-pe): Change to arm-wince-pe.
	(arc-*-*, arm-*-coff, arm-*-pe*, arm-*-riscix*, avr-*-*): Remove
	cases in Java-disabling statement.
	(bfin-*-*): Don't disable Java again.
	(c4x-*-* | tic4x-*-*, tic54x-*-*, cr16-*-*, d10v-*-*, d30v-*-*,
	fr30-*-elf*, moxie-*-*, h8300*-*-*, h8500-*-*, hppa1.1-*-osf* |
	hppa1.1-*-bsd*, hppa*-*-*elf* | hppa*-*-lites* | hppa*-*-openbsd*,
	hppa*-*-pro*, i960-*-*, i[[3456789]]86-*-coff,
	i[[3456789]]86-*-pe, i[[3456789]]86-*-sco3.2v5*,
	i[[3456789]]86-*-sco*, i[[3456789]]86-*-sysv4*,
	i[[3456789]]86-*-beos*, i[[3456789]]86-*-rdos*,
	m68hc11-*-*|m6811-*-*|m68hc12-*-*|m6812-*-*): Remove cases in
	Java-disabling statement.
	(mmix-*-*): Don't disable Java again.
	(mt-*-*, powerpc*-*-winnt* | powerpc*-*-pe*, powerpcle-*-solaris*,
	powerpc-*-beos*, rs6000-*-lynxos*, rs6000-*-*, m68k-apollo-*,
	microblaze*, mips*-sde-elf*, mips*-*-irix5*, mips*-*-bsd*,
	sparclet-*-aout* | sparc86x-*-*, sparclite-*-*, sparc-*-sunos4*,
	tic6x-*-*, v810-*-*, vax-*-*): Remove cases in Java-disabling
	statement.
	* configure: Regenerate.

From-SVN: r173069
2011-04-28 14:28:28 +01:00
Joseph Myers
2909494bdb configure.ac: Separate cases disabling Java and Java libraries from general case over targets.
* configure.ac: Separate cases disabling Java and Java libraries
	from general case over targets.
	* configure: Regenerate.

From-SVN: r173068
2011-04-28 14:23:08 +01:00
Richard Guenther
8d3e39242c re PR bootstrap/48804 (Bootstrap compare failure)
2011-04-28  Richard Guenther  <rguenther@suse.de>

	PR bootstrap/48804
	Revert
	2011-04-28  Richard Guenther  <rguenther@suse.de>

	* tree-ssa-structalias.c (solve_constraints): Build succ graph
	as late as possible.

From-SVN: r173067
2011-04-28 13:06:44 +00:00
Paolo Carlini
df9cb15f7a 2011-04-28 Paolo Carlini <paolo.carlini@oracle.com>
Revert unintended changes to include/parallel files.

From-SVN: r173066
2011-04-28 10:55:56 +00:00
Paolo Carlini
9f1163b171 re PR libstdc++/48760 (std::complex constructor buggy in the face of NaN's)
2011-04-28  Paolo Carlini  <paolo.carlini@oracle.com>

	PR libstdc++/48760
	* include/std/complex (complex<float>::complex(float, float),
	complex<double>::complex(double, double),
	complex<long double>::complex(long double, long double)): Use
	list-initialization in C++0x mode, initialize in the body in
	C++03 mode.
	* testsuite/26_numerics/complex/cons/48760.cc: New.
	* testsuite/26_numerics/complex/cons/48760_c++0x.cc: Likewise.

2011-04-28  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/std/bitset (_Base_bitset(unsigned long long)): Minor
	tweak, remove redundant round braces.

From-SVN: r173065
2011-04-28 10:52:17 +00:00
Richard Guenther
6ecde111c1 re PR tree-optimization/40052 (missed optimizations on (extended) logical types: (x | 1) --> 1)
2011-04-28  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/40052
	PR tree-optimization/15347
	* gcc.dg/tree-ssa/vrp57.c: New testcase.
	* gcc.dg/pr15347.c: Likewise.

From-SVN: r173064
2011-04-28 09:55:41 +00:00
Paolo Carlini
a6343f618b re PR c++/48530 ([C++0x][SFINAE] Hard errors with deleted d'tors)
/cp
2011-04-28  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/48530
	* tree.c (build_cplus_new): Check build_target_expr return
	value for error_mark_node.

/testsuite
2011-04-28  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/48530
	* g++.dg/cpp0x/sfinae18.C: New.

From-SVN: r173063
2011-04-28 09:54:04 +00:00
Paolo Carlini
83b6b866e6 re PR c++/48771 ([C++0x] is_literal_type incorrect for references to non-literal types)
/cp
2011-04-28  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/48771
	* semantics.c (literal_type_p): Reference types are literal types,
	per the FDIS.
	(valid_type_in_constexpr_fundecl_p): Remove.
	(is_valid_constexpr_fn): Adjust.

/testsuite
2011-04-28  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/48771
	* g++.dg/ext/is_literal_type1.C: New.

From-SVN: r173062
2011-04-28 09:21:23 +00:00
Richard Guenther
8576f20aed tree-ssa-structalias.c (dump_constraint): Don't end the line.
2011-04-28  Richard Guenther  <rguenther@suse.de>

	* tree-ssa-structalias.c (dump_constraint): Don't end the line.
	(debug_constraint): Do it here.
	(dump_constraints): And here.
	(rewrite_constraints): And here.
	(dump_constraint_edge): Remove.
	(dump_constraint_graph): Rewrite to produce DOT output.
	(solve_constraints): Build succ graph as late as possible.
	Dump constraint graphs before and after solving.

From-SVN: r173061
2011-04-28 09:11:17 +00:00
Richard Guenther
e38811ce28 tree-ssa-structalias.c (find_func_aliases_for_builtin_call): New function split out from ...
2011-04-28  Richard Guenther  <rguenther@suse.de>

	* tree-ssa-structalias.c (find_func_aliases_for_builtin_call):
	New function split out from ...
	(find_func_aliases): ... here.  Call it.
	(find_func_aliases_for_call): Likewise.

From-SVN: r173060
2011-04-28 09:08:42 +00:00
Tobias Burnus
a300121e62 re PR fortran/48112 (generic interface to external function in module)
2011-04-28  Tobias Burnus  <burnus@net-b.de>

        PR fortran/48112
        * resolve.c (resolve_fl_var_and_proc): Print diagnostic of
        function results only once.
        (resolve_symbol): Always resolve function results.

        PR fortran/48279
        * expr.c (gfc_check_vardef_context): Fix handling of generic
        EXPR_FUNCTION.
        * interface.c (check_interface0): Reject internal functions
        in generic interfaces, unless -std=gnu.

2011-04-28  Tobias Burnus  <burnus@net-b.de>

        PR fortran/48112
        PR fortran/48279
        * gfortran.dg/interface_35.f90: New.
        * gfortran.dg/erfc_scaled_1.f90: Don't compile with -pedantic.
        * gfortran.dg/func_result_6.f90: Add dg-warning.
        * gfortran.dg/bessel_1.f90: Ditto.
        * gfortran.dg/hypot_1.f90: Ditto.
        * gfortran.dg/proc_ptr_comp_20.f90: Ditto.
        * gfortran.dg/proc_ptr_comp_21.f90: Ditto.
        * gfortran.dg/interface_assignment_4.f90: Ditto.

From-SVN: r173059
2011-04-28 07:48:18 +02:00
Jason Merrill
77a30e9a5f re PR libstdc++/48760 (std::complex constructor buggy in the face of NaN's)
PR libstdc++/48760
	Implement list-initialization of _Complex.
	* decl.c (reshape_init_r): Allow {real,imag} for _Complex.
	(check_initializer): Likewise.
	* call.c (build_complex_conv): New.
	(implicit_conversion): Call it.
	(convert_like_real): Handle it.
	* typeck2.c (check_narrowing): Handle it.

From-SVN: r173058
2011-04-27 21:53:53 -04:00
Jason Merrill
e79a6b402a init.c (build_vec_delete_1): Look for sfk_deleting_destructor to decide whether to delete.
* init.c (build_vec_delete_1): Look for sfk_deleting_destructor to
	decide whether to delete.
	(build_vec_init): Pass sfk_complete_destructor.

From-SVN: r173057
2011-04-27 21:53:43 -04:00
Jason Merrill
c12ff9d8f0 re PR c++/40975 (ICE in copy_tree_r on array new)
PR c++/40975
	* cp-tree.def (VEC_INIT_EXPR): Add third operand.
	* cp-tree.h (VEC_INIT_EXPR_NELTS): New.
	* cp-gimplify.c (cp_gimplify_expr) [VEC_INIT_EXPR]: Handle it.
	* tree.c (build_vec_init_expr): Handle getting pointer/nelts.
	(build_vec_init_elt): Don't expect an array type.
	(build_array_copy): Adjust.
	* init.c (perform_member_init): Adjust.
	(build_new_1): Use build_vec_init_expr.

From-SVN: r173056
2011-04-27 21:53:34 -04:00
Gabriel Dos Reis
fbaf0d0c08 internal-fn.h (internal_fn_name_array): Declare.
* internal-fn.h (internal_fn_name_array): Declare.
	(internal_fn_flags_array): Likewise.

From-SVN: r173055
2011-04-28 01:25:01 +00:00
GCC Administrator
d2e79c4eb8 Daily bump.
From-SVN: r173054
2011-04-28 00:18:34 +00:00
Tobias Burnus
fa9f7c7040 re PR fortran/48788 (ICE: SIGSEGV in resolve_global_procedure (resolve.c:2190) on invalid (?) fortran code)
2011-04-27  Tobias Burnus  <burnus@net-b.de>

        PR fortran/48788
        * resolve.c (resolve_global_procedure): Error recovery -
        avoid segfault for (non)character-returning functions.

2011-04-27  Tobias Burnus  <burnus@net-b.de>

        PR fortran/48788
        * gfortran.dg/whole_file_34.f90: New.

From-SVN: r173048
2011-04-27 22:32:21 +02:00
Paolo Carlini
1f428429c4 move.h (move_if_noexcept): Add.
2011-04-27  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/bits/move.h (move_if_noexcept): Add.
	* testsuite/20_util/move_if_noexcept/requirements/
	explicit_instantiation.cc: New.
	* testsuite/20_util/move_if_noexcept/1.cc: Likewise.

From-SVN: r173044
2011-04-27 18:37:32 +00:00
Uros Bizjak
cbb734aa01 i386.md (ssemodesuffix): Merge with ssevecsize, ssemodefsuffix, ssescalarmodesuffix and avxmodesuffixp.
* config/i386/i386.md (ssemodesuffix):  Merge with ssevecsize,
	ssemodefsuffix, ssescalarmodesuffix and avxmodesuffixp.
	Move from sse.md.
	(ssemodefsuffix): Remove.
	(ssevecmodesuffix): New mode attribute.
	(fix_trunc<mode>di_sse, fix_trunc<mode>si_sse,
	*float<SSEMODEI24:mode><MODEF:mode>2_mixed_interunit,
	*float<SSEMODEI24:mode><MODEF:mode>2_mixed_nointerunit,
	*float<SSEMODEI24:mode><MODEF:mode>2_sse_interunit,
	*float<SSEMODEI24:mode><MODEF:mode>2_sse_nointerunit, setcc_<mode>_sse,
	*sqrt<mode>2_sse, sse4_1_round<mode>2, <smaxmin:code><mode>3,
	*ieee_smin<mode>3, *ieee_smax<mode>3): Adjust assembler templates for
	ssemodesuffix mode attribute.
	(float splitters): Use ssevecmodesuffix mode attribute.
	* config/i386/sse.md (ssescalarmode): Merge with avxscalarmode.
	(sseinsmode): Rename from avxvecmode.
	(avxsizesuffix): Rename from avxmodesuffix.
	(sseintvecmode): Rename from avxpermvecmode.
	(ssedoublevecmode): Rename from ssedoublesizemode.
	(ssehalfvecmode): Rename from avxhalfvecmode.
	(ssescalarmode): Rename from avxscalarmode.
	(<sse>_comi, <sse>_ucomi, sse4a_movnt<mode>): Adjust assembler
	templates for ssemodesuffix mode attribute.
	(*andnot<mode>3, *<any_logic:code><mode>3): Use ssevecmodesuffix
	mode attribute.

	Adjust RTX patterns globally for renamed mode attributes.

From-SVN: r173043
2011-04-27 20:21:22 +02:00
Jan Hubicka
991278ab90 inline-9.c: New testcase.
* testsuite/gcc.dg/tree-ssa/inline-9.c: New testcase.
	* ipa-inline.h (struct inline_edge_summary): Add predicate pointer.
	* ipa-inline-analysis.c: Include alloc-pool.h.
	(edge_predicate_pool): New.
	(trye_predicate_p): New function
	(false_predicate_p): New function.
	(add_clause): Sanity check that false clauses are "optimized";
	never add clauses to predicate that is already known to be false.
	(and_predicate): Use flase_predicate_p.
	(evaulate_predicate): Rename to ...
	(evaluate_predicate): ... this one; update all callers; assert
	that false is not listed among possible truths.
	(dump_predicate): Use true_predicate_p.
	(account_size_time): Use false_predicate_p.
	(evaulate_conditions_for_edge): Rename to ...
	(evaluate_conditions_for_edge) ... this one.
	(edge_set_predicate): New function.
	(inline_edge_duplication_hook): Duplicate edge predicates.
	(inline_edge_removal_hook): Free edge predicates.
	(dump_inline_edge_summary): Add INFO parameter; dump
	edge predicates.
	(dump_inline_summary): Update.
	(estimate_function_body_sizes): Set edge predicates.
	(estimate_calls_size_and_time): Handle predicates.
	(estimate_callee_size_and_time): Update.
	(remap_predicate): Add toplev_predicate; update comment.
	(remap_edge_predicates): New function.
	(inline_merge_summary): Compute toplev predicate; update.
	(read_predicate): New function.
	(read_inline_edge_summary): Use it.
	(inline_read_section): Likewise.
	(write_predicate): New function.
	(write_inline_edge_summary): Use it.
	(inline_write_summary): Likewise.
	(inline_free_summary): Free alloc pool and edge summary vec.

From-SVN: r173042
2011-04-27 17:28:51 +00:00
Richard Guenther
648b5f85f5 tree-ssa-structalias.c (changed_count): Remove.
2011-04-27  Richard Guenther  <rguenther@suse.de>

	* tree-ssa-structalias.c (changed_count): Remove.
	(changed): Use a bitmap.
	(unify_nodes): Adjust.
	(do_sd_constraint): Likewise.
	(do_ds_constraint): Likewise.
	(do_complex_constraint): Likewise.
	(solve_graph): Likewise.

From-SVN: r173040
2011-04-27 16:06:21 +00:00
Jan Hubicka
4d5dcfb2f0 * cgraphunit.c (cgraph_process_new_functions): Fix ordering issue.
From-SVN: r173039
2011-04-27 16:03:03 +00:00
Jason Merrill
c224bdc1ee class.c (resolve_address_of_overloaded_function): Don't change OVERLOAD to TREE_LIST.
* class.c (resolve_address_of_overloaded_function): Don't
	change OVERLOAD to TREE_LIST.
	* pt.c (print_candidates_1): Remove nonsensical assert.

From-SVN: r173037
2011-04-27 11:56:56 -04:00
Jason Merrill
9e0541d9c0 re PR c++/48046 (Expected diagnostic "reference to 'type' is ambiguous" not given for function-local static declaration)
PR c++/48046
	* parser.c (cp_parser_diagnose_invalid_type_name): Commit
	to tentative parse sooner.

From-SVN: r173036
2011-04-27 11:56:46 -04:00
Nick Clifton
7036ee2437 20020312-2.c: Add definition for RX.
* gcc.dg/20020312-2.c: Add definition for RX.

	* lib/target-supports.exp (add_options_for_ieee): Use -mnofpu
	option with RX targets.

	* gcc.target/rx/pack.c: Replace C++ style // comments with C style
	/* */ comments.

From-SVN: r173034
2011-04-27 14:58:21 +00:00
Uros Bizjak
200eb7d2ee predicates.md (avx_vpermilp_*_operand): Remove.
* config/i386/predicates.md (avx_vpermilp_*_operand): Remove.
	(avx_vperm2f128_*_operand): Ditto.
	* config/i386/sse.md (*avx_vpermilp<mode>): Remove operand2 predicate.
	Use avx_vpermilp_parallel in insn condition.
	(*avx_vperm2f128<mode>_nozero): Remove operand3 predicate.
	Use avx_vperm2f128_parallel in insn condition.

From-SVN: r173031
2011-04-27 16:18:25 +02:00
Richard Guenther
7d6e252187 Makefile.in (tree-ssa-structalias.o): Remove gt-tree-ssa-structalias.h dependency.
2011-04-27  Richard Guenther  <rguenther@suse.de>

	* Makefile.in (tree-ssa-structalias.o): Remove
	gt-tree-ssa-structalias.h dependency.
	(GTFILES): Remove tree-ssa-structalias.c.
	* tree.c (allocate_decl_uid): New function.
	(make_node_stat): Use it.
	(copy_node_stat): Likewise.
	* tree.h (allocate_decl_uid): Declare.
	* tree-ssa-alias.h (delete_alias_heapvars): Remove.
	* tree-ssa.c (delete_tree_ssa): Do not call delete_alias_heapvars.
	* tree-flow.h (struct var_ann_d): Remove is_heapvar flag.
	* tree-ssa-live.c (remove_unused_locals): Do not check is_heapvar
	flag.
	* tree-ssa-structalias.c (heapvar_for_stmt): Remove.
	(struct heapvar_map): Likewise.
	(heapvar_map_eq, heapvar_map_hash, heapvar_lookup,
	heapvar_insert): Likewise.
	(make_heapvar_for): Rename to ...
	(make_heapvar): ... this.  Simplify.
	(fake_var_decl_obstack): New global var.
	(build_fake_var_decl): New function.
	(make_constraint_from_heapvar): Adjust.
	(handle_lhs_call): Likewise.
	(create_function_info_for): Likewise.
	(intra_create_variable_infos): Likewise.
	(init_alias_vars): Allocate fake_var_decl_obstack.
	(init_alias_heapvars, delete_alias_heapvars): Remove.
	(compute_points_to_sets): Do not call init_alias_heapvars.
	(ipa_pta_execute): Likewise.
	(delete_points_to_sets): Free fake_var_decl_obstack.

	* gcc.dg/tree-ssa/pr23382.c: Remove.

From-SVN: r173030
2011-04-27 14:16:49 +00:00
Ulrich Weigand
526ed6c241 divmovti4.c (union qword_UTItype): New data type.
* config/spu/divmovti4.c (union qword_UTItype): New data type.
	(si_from_UTItype, si_to_UTItype): New functions.
	(__udivmodti4): Use them to implement type-punning.
	* config/spu/multi3.c (union qword_TItype): New data type.
	(si_from_TItype, si_to_TItype): New functions.
	(__multi3): Use them to implement type-punning.

From-SVN: r173029
2011-04-27 13:10:17 +00:00
Ulrich Weigand
c187d33c80 * config/spu/spu.c (spu_expand_epilogue): Do not emit barrier.
From-SVN: r173028
2011-04-27 13:09:24 +00:00
Jan Hubicka
40982661ec ipa-prop.c (function_insertion_hook_holder): New holder.
* ipa-prop.c (function_insertion_hook_holder): New holder.
	(ipa_add_new_function): New function.
	(ipa_register_cgraph_hooks, ipa_unregister_cgraph_hooks): Register/deregister
	holder.

From-SVN: r173026
2011-04-27 12:13:08 +00:00
Kaz Kojima
7a735dd4e4 pr48767.c: New test.
* gcc.c-torture/compile/pr48767.c: New test.

From-SVN: r173020
2011-04-27 10:42:03 +00:00
Richard Guenther
9aef53ee4c re PR tree-optimization/48772 (ICE: SIGSEGV in walk_non_aliased_vuses (gimple.h:1100) with -O -fnon-call-exceptions -fno-tree-ccp -fno-tree-dce)
2011-04-27  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/48772
	* tree-ssa-pre.c (eliminate): Update call stmts after elimination
	only.

	* g++.dg/pr48772.C: New testcase.

From-SVN: r173019
2011-04-27 10:36:35 +00:00
Richard Guenther
f63d806d66 tree-ssa-alias.c (indirect_refs_may_alias_p): Fix TARGET_MEM_REF handling.
2011-04-27  Richard Guenther  <rguenther@suse.de>

	* tree-ssa-alias.c (indirect_refs_may_alias_p): Fix
	TARGET_MEM_REF handling.

From-SVN: r173018
2011-04-27 09:17:01 +00:00
Nick Clifton
97d2090794 Fix typo.
From-SVN: r173017
2011-04-27 09:15:24 +00:00
Nick Clifton
9b5db25d91 frv.h (enum reg_class): Delete EVEN_ACC_REGS, ACC_REGS, FEVEN_REGS, FPR_REGS, EVEN_REGS.
* config/frv/frv.h (enum reg_class): Delete EVEN_ACC_REGS,
	ACC_REGS, FEVEN_REGS, FPR_REGS, EVEN_REGS.
	(REG_CLASS_NAMES): Likewise.
	(REG_CLASS_CONTENTS): Likewise.
	(EVEN_ACC_REGS): New macro.  Alias for QUAD_ACC_REGS.
	(ACC_REGS): New macro.  Alias for QUAD_ACC_REGS.
	(FEVEN_REGS): New macro.  Alias for QUAD_ACC_REGS.
	(FPR_REGS): New macro.  Alias for QUAD_ACC_REGS.
	(EVEN_REGS): New macro.  Alias for QUAD_REGS.
	* config/frv/frv.c (frv_secondary_reload_class): Remove use of
	duplicate register classes.
	(frv_class_likely_spileld_p): Likewise.
	(frv_register_move_cost): Likewise.

From-SVN: r173016
2011-04-27 09:14:22 +00:00
Nick Clifton
e1ea745113 mcore.h (REGNO_REG_CLASS): Do not index beyond the end of the regno_reg_class array.
* config/mcore/mcore.h (REGNO_REG_CLASS): Do not index beyond the
	end of the regno_reg_class array.

From-SVN: r173015
2011-04-27 09:06:24 +00:00
Jakub Jelinek
5c2f94b4f5 re PR c/48742 (Internal error in gimplify_expr)
PR c/48742
	* c-typeck.c (build_binary_op): Don't wrap arguments if
	int_operands is true.

	* gcc.c-torture/compile/pr48742.c: New test.

From-SVN: r173011
2011-04-27 09:04:25 +02:00
Jason Merrill
a4bd198cee re PR c++/42687 (The prevention of ADL with the help of parentheses doesn't work)
PR c++/42687
	* parser.c (cp_parser_primary_expression): Set *idk to
	CP_ID_KIND_NONE for a parenthesized identifier.

From-SVN: r173007
2011-04-27 01:17:20 -04:00
Jason Merrill
a0dc5e4ac9 ptree.c (cxx_print_type): Dump fullname.
* ptree.c (cxx_print_type) [TYPENAME_TYPE]: Dump fullname.
	(cxx_print_identifier): Correct indentation.

From-SVN: r173006
2011-04-27 01:17:10 -04:00
Jason Merrill
36a9902dcd * g++.dg/cpp0x/initlist48.C: New.
From-SVN: r173005
2011-04-27 01:17:01 -04:00
Ian Lance Taylor
6d69c02ecb Use backend interface for struct types.
* go-gcc.cc (Gcc_backend::struct_type): Implement.

From-SVN: r173004
2011-04-27 00:49:54 +00:00
GCC Administrator
dcd83a8176 Daily bump.
From-SVN: r173002
2011-04-27 00:19:23 +00:00
Kaz Kojima
57a944d784 sh.c (sh_gimplify_va_arg_expr): Don't call targetm.calls.must_pass_in_stack for void type.
* config/sh/sh.c (sh_gimplify_va_arg_expr): Don't call
	targetm.calls.must_pass_in_stack for void type.

From-SVN: r172991
2011-04-26 22:25:59 +00:00
Thomas Koenig
3a1fd30c8a decl.c (gfc_match_end): Check that the block name starts with "block@".
2011-04-26  Thomas Koenig  <tkoenig@gcc.gnu.org>

	* decl.c (gfc_match_end):  Check that the block name starts
	with "block@".
	* parse.c (gfc_build_block_ns):  Make block names unique by
	numbering them.

From-SVN: r172990
2011-04-26 22:07:11 +00:00
Jan Hubicka
898b892746 cgraphbuild.c (build_cgraph_edges): Update call of cgraph_create_edge and cgraph_create_indirect_edge.
* cgraphbuild.c (build_cgraph_edges): Update call
	of cgraph_create_edge and cgraph_create_indirect_edge.
	* cgraph.c (cgraph_create_edge_including_clones,
	cgraph_create_edge_1, cgraph_allocate_init_indirect_info,
	cgraph_update_edges_for_call_stmt_node): Do not take nest
	argument; do not initialize call_stmt_size/time.
	(dump_cgraph_node): Do not dump nest.
	(cgraph_clone_edge): Do not take loop_nest argument;
	do not propagate it; do not clone call_stmt_size/time.
	(cgraph_clone_node): Likewise.
	(cgraph_create_virtual_clone): Update.
	* cgraph.h (struct cgraph_edge): Remove
	call_stmt_size/call_stmt_time/loop_nest.
	(cgraph_create_edge, cgraph_create_indirect_edge,
	cgraph_create_edge_including_clones, cgraph_clone_node): Update
	prototype.
	* tree-emutls.c (gen_emutls_addr): Update.
	* ipa-inline-transform.c (update_noncloned_frequencies): Do not handle
	loop_nest; handle indirect calls, too.
	(clone_inlined_nodes): Do not care about updating inline summaries.
	* cgraphunit.c (cgraph_copy_node_for_versioning): Update.
	* lto-cgraph.c (lto_output_edge, input_node, input_edge): Do not
	stream call_stmt_size/call_stmt_time/loop_nest.
	* ipa-inline.c (edge_badness): Update.
	(ipa_inline): dump summaries after inlining.
	* ipa-inline.h (struct inline_edge_summary, inline_edge_summary_t):
	new.
	(inline_edge_summary): New function.
	* ipa-inline-analysis.c (edge_duplication_hook_holder): New holder.
	(inline_edge_removal_hook): Handle edge summaries.
	(inline_edge_duplication_hook): New hook.
	(inline_summary_alloc): Alloc hooks.
	(initialize_growth_caches): Do not register removal hooks.
	(free_growth_caches); Do not free removal hook.
	(dump_inline_edge_summary): New function.
	(dump_inline_summary): Use it.
	(estimate_function_body_sizes, estimate_edge_size_and_time): Update.
	(inline_update_callee_summaries): New function.
	(inline_merge_summary): Use it.
	(do_estimate_edge_time, do_estimate_edge_growth): Update.
	(read_inline_edge_summary): New function.
	(inline_read_section): Use it.
	(write_inline_edge_summary): New function.
	(inline_write_summary): Use it.
	(inline_free_summary): Free edge new holders.
	* tree-inline.c (copy_bb): Update.

From-SVN: r172989
2011-04-26 22:05:50 +00:00
Jason Merrill
ffa037724f tree-eh.c (lower_try_finally_switch): Create the label along with the CASE_LABEL_EXPR.
* tree-eh.c (lower_try_finally_switch): Create the label along with
	the CASE_LABEL_EXPR.

From-SVN: r172988
2011-04-26 21:22:55 +00:00
Jason Merrill
3982d356b2 objc-act.c (objc_fold_objc_type_ref): Remove.
* objc-act.c (objc_fold_objc_type_ref): Remove.
	* objc-act.h: Remove prototype.

From-SVN: r172986
2011-04-26 17:12:57 -04:00
Jason Merrill
574cfaa47d re PR c++/48530 ([C++0x][SFINAE] Hard errors with deleted d'tors)
PR c++/48530
	* decl.c (cxx_maybe_build_cleanup): Add complain parm.
	* tree.c (force_target_expr): Add complain parm.
	(build_target_expr_with_type): Likewise.
	(get_target_expr_sfinae): Split out.
	(build_vec_init_expr, bot_manip): Adjust.
	* init.c (build_vec_delete, build_vec_delete_1): Add complain parm.
	(build_delete, build_dtor_call): Likewise.
	(perform_direct_initialization_if_possible): Adjust.
	(build_vec_init): Handle error return.
	* cvt.c (force_rvalue): Add complain parm.
	Call build_special_member_call directly.
	* decl2.c (delete_sanity): Add complain parm.
	(build_cleanup): Adjust.
	* pt.c (tsubst_copy_and_build, tsubst_expr): Adjust.
	* semantics.c (finish_stmt_expr_expr): Adjust.
	(finish_compound_literal): Adjust.
	* parser.c (cp_parser_delete_expression): Adjust.
	* typeck2.c (build_functional_cast): Adjust.
	* cp-tree.h: Adjust.

From-SVN: r172985
2011-04-26 15:28:25 -04:00
Thomas Koenig
5a87ca71c8 frontend-passes.c (inserted_block): New variable.
2011-04-26  Thomas Koenig  <tkoenig@gcc.gnu.org>

	* frontend-passes.c (inserted_block):  New variable.
	(changed_statement):  Likewise.
	(create_var):  Encase statement to be operated on in a BLOCK.
	Adjust code insertion for BLOCK.
	(cfe_code):  Set inserted_block and changed_statement to NULL.

From-SVN: r172983
2011-04-26 18:39:55 +00:00