Commit Graph

108293 Commits

Author SHA1 Message Date
Ian Lance Taylor
482829acf2 Use backend interface for function types.
Drop type_tree() functions for Float_type and Complex_type.
Don't define builtin functions until gogo is created.

	* go-gcc.cc (Gcc_backend::error_type): Implement.
	(Gcc_backend::string_type): Remove.
	(Gcc_backend::function_type): Change signature and implement.
	(Gcc_backend::struct_type): Change signature.
	(Gcc_backend::slice_type, Gcc_backend::map_type): Remove.
	(Gcc_backend::channel_type, Gcc_backend::interface_type): Remove.
	(Gcc_backend::pointer_type): Check for error.
	* Make-lang.in (go/types.o): Depend on go/gofrontend/backend.h.

From-SVN: r172932
2011-04-25 17:21:28 +00:00
Evan Shaw
0aa5e7f22a Use backend interface for basic types
* go-gcc.c (class Gcc_tree): Make get_tree const.
	(Gcc_backend::void_type): Implement.
	(Gcc_backend::bool_type): Implement.
	(Gcc_backend::integer_type): Implement.
	(Gcc_backend::float_type): Implement.
	(Gcc_backend::complex_type): New function.
	(Gcc_backend::pointer_type): New function.
	(Gcc_backend::make_type): New function.
	(type_to_tree): New function.

From-SVN: r172931
2011-04-25 16:39:24 +00:00
Maxim Kuvyrkov
5157a881bb combine.c (combine_simplify_rtx): Avoid mis-simplifying conditionals for STORE_FLAG_VALUE==-1 case.
* combine.c (combine_simplify_rtx): Avoid mis-simplifying conditionals
	for STORE_FLAG_VALUE==-1 case.

Co-Authored-By: Eric Botcazou <ebotcazou@adacore.com>

From-SVN: r172930
2011-04-25 12:06:27 +00:00
GCC Administrator
0c289711f3 Daily bump.
From-SVN: r172929
2011-04-25 00:18:21 +00:00
Paolo Carlini
6b77089f40 multiway_merge.h: Uglify equally_split and equally_split_point throughout.
2011-04-24  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/parallel/multiway_merge.h: Uglify equally_split
	and equally_split_point throughout.
	* include/parallel/par_loop.h: Likewise.
	* include/parallel/equally_split.h: Likewise.
	* include/parallel/set_operations.h: Likewise.
	* include/parallel/unique_copy.h: Likewise.
	* include/parallel/multiway_mergesort.h: Likewise.
	* include/parallel/search.h: Likewise.
	* include/parallel/partial_sum.h: Likewise.
	* include/parallel/find.h: Likewise.

From-SVN: r172923
2011-04-24 23:51:49 +00:00
Richard Sandiford
ed4c109ee8 Author: Richard Sandiford <richard.sandiford@linaro.org>
PR target/43804
* gcc/config/m68k/constraints.md (T): Allow PIC operands that satisfy
LEGITIMATE_PIC_OPERAND_P.

From-SVN: r172920
2011-04-24 20:04:24 +00:00
Gerald Pfeifer
8179f67493 parallel_mode.xml: Fix link to libgomp online documentation.
* doc/xml/manual/parallel_mode.xml: Fix link to libgomp online
	documentation.  Expand link text.

From-SVN: r172916
2011-04-24 11:11:00 +00:00
Gerald Pfeifer
f172dd9af9 * libsupc++/cxxabi.h: Adjust link to FAQ entry.
From-SVN: r172915
2011-04-24 10:51:00 +00:00
Jan Hubicka
f3181aa202 ipa-prop.c (ipa_propagate_indirect_call_infos): Remove obsolette WPA hack.
* ipa-prop.c (ipa_propagate_indirect_call_infos): Remove obsolette
	WPA hack.
	* ipa-prop.h (ipa_get_param, ipa_is_param_used, ipa_param_cannot_devirtualize_p,
	ipa_param_types_vec_empty, ipa_get_ith_jump_func, ipa_get_lattice):
	Fortify array bounds.
	* ipa-inline-analysis.c (add_clause): Fix clause ordering.
	(and_predicates, or_predicates, predicates_equal_p, evaulate_predicate):
	Sanity check predicate length.
	(remap_predicate): Likewise; sanity check jump functions.
	(inline_read_section, inline_write_summary): Sanity check
	predicate length.

From-SVN: r172914
2011-04-24 10:43:00 +00:00
Gerald Pfeifer
739986ef4a * README: Refer to our generic bug reporting page.
From-SVN: r172913
2011-04-24 10:04:26 +00:00
Paolo Carlini
5307cbaa75 re PR other/48748 (Undocumented type traits used in libstdc++-4.6)
2011-04-24  Paolo Carlini  <paolo.carlini@oracle.com>

	PR other/48748
	* doc/extend.texi (Type Traits): Document __is_standard_layout,
	__is_literal_type, and __is_trivial; update throughout about
	possibly cv-qualified void types.

From-SVN: r172911
2011-04-24 09:42:16 +00:00
Gerald Pfeifer
bebd5f993c sourcebuild.texi (Ada Tests): Adjust reference to ACATS testsuite and make it version agnostic.
* doc/sourcebuild.texi (Ada Tests): Adjust reference to ACATS
	testsuite and make it version agnostic.

From-SVN: r172910
2011-04-24 09:34:22 +00:00
GCC Administrator
2cf63542d1 Daily bump.
From-SVN: r172909
2011-04-24 00:18:45 +00:00
Jakub Jelinek
6cfae07011 re PR preprocessor/48740 (Raw C++0x strings and trigraphs mix badly)
PR preprocessor/48740
	* lex.c (lex_raw_string): When raw string ends with
	??) followed by raw prefix and ", ensure it is preprocessed
	with ??) rather than ??].

	* c-c++-common/raw-string-11.c: New test.

From-SVN: r172903
2011-04-24 01:32:09 +02:00
Gerald Pfeifer
8d6a2f6968 gnat_ugn.texi (Complexity Metrics Control): Update link to the Watson/McCabe paper.
* gnat_ugn.texi (Complexity Metrics Control): Update link to
	the Watson/McCabe paper.

From-SVN: r172902
2011-04-23 19:55:32 +00:00
John David Anglin
d2b897f4b5 pr48616.c (dg-options): Add -fno-common to options on hppa*-*-hpux*.
* gcc.dg/pr48616.c (dg-options): Add -fno-common to options on
	hppa*-*-hpux*.

From-SVN: r172899
2011-04-23 17:44:24 +00:00
Jan Hubicka
7ee28a7471 * ipa-inline-analysis.c (inline_write_summary): Fix thinko.
From-SVN: r172898
2011-04-23 11:37:26 +00:00
Tobias Burnus
c49eaa233a re PR fortran/18918 (Eventually support Fortran 2008's coarrays [co-arrays])
2011-04-23  Tobias Burnus  <burnus@net-b.de>

        PR fortran/18918
        * module.c (mio_array_spec): Set as->cotype on reading.
        * resolve.c (resolve_allocate_expr): Fix allocating coarray
        components.

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

        PR fortran/18918
        * gfortran.dg/coarray_19.f90: New.

From-SVN: r172897
2011-04-23 12:26:38 +02:00
Jakub Jelinek
16997bc011 re PR c/48685 (ICE in gimplify_expr, at gimplify.c:7034)
PR c/48685
	* fold-const.c (fold_convert_loc): Add NOP_EXPR when casting
	to VOID_TYPE even around MODIFY_EXPR.

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

From-SVN: r172895
2011-04-23 12:18:03 +02:00
Uros Bizjak
ff9419990b Revert:
2011-04-22  Uros Bizjak  <ubizjak@gmail.com>

	PR target/48723
	* config/i386/i386.c (ix86_expand_prologue): Update m->fs.sp_offset
	after the call to ix86_adjust_stack_and_probe.

From-SVN: r172894
2011-04-23 09:43:50 +02:00
Jim Meyering
770937fd6c * gnat_ugn.texi (Examples of gnatxref Usage): Fix typo: s/it it/it is/
From-SVN: r172892
2011-04-23 06:48:29 +00:00
Mike Stump
906876b012 Remove Dale Johannesen as darwin maintainer, invalid address.
From-SVN: r172891
2011-04-23 00:41:32 +00:00
Mike Stump
1a84c18319 * gensupport.c (read_md_rtx): Fix typo in comment.
From-SVN: r172890
2011-04-23 00:33:15 +00:00
GCC Administrator
cf693f4304 Daily bump.
From-SVN: r172889
2011-04-23 00:18:45 +00:00
Mike Stump
f94d4ab1f6 cris.opt (moverride-best-lib-options): Fix typo in comment.
* config/cris/cris.opt (moverride-best-lib-options): Fix typo in
	comment.

From-SVN: r172884
2011-04-23 00:16:55 +00:00
Ian Lance Taylor
549dd8fe83 re PR go/48553 (fmt FAILs on 32-bit Solaris 2 with stack overflow)
PR go/48553
libgo: Bring over patch to lower recursion depth in fmt.

From-SVN: r172883
2011-04-23 00:09:23 +00:00
Ian Lance Taylor
8c0d18659b Define go_unreachable to replace gcc_unreachable.
From Evan Shaw.

From-SVN: r172882
2011-04-23 00:04:44 +00:00
Jan Hubicka
632b4f8e8b gengtype.c (open_base_files): Add ipa-inline.h include.
* gengtype.c (open_base_files): Add ipa-inline.h include.
	* ipa-cp.c (ipcp_get_lattice, ipcp_lattice_from_jfunc): Move to ipa-prop.c
	update all uses.
	* ipa-prop.c: (ipa_get_lattice, ipa_lattice_from_jfunc): ... here.
	* ipa-inline-transform.c (inline_call): Use inline_merge_summary to merge
	summary of inlined function into former caller.
	* ipa-inline.c (max_benefit): Remove.
	(edge_badness): Compensate for removal of benefits.
	(update_caller_keys): Use reset_node_growth_cache/reset_edge_growth_cache.
	(update_callee_keys): Likewise.
	(update_all_callee_keys): Likewise.
	(inline_small_functions): Do not collect max_benefit; do not
	reset stimated_growth; call free_growth_caches and initialize_growth_caches.
	* ipa-inline.h (struct condition, type clause_t, struct predicate, struct
	size_time_entry): New structures.
	(INLINE_SIZE_SCALE, INLINE_TIME_SCALE, MAX_CLAUSES): New constants.
	(inline_summary): Remove size_inlining_benefit, time_inlining_benefit and
	estimated_growth.
	(edge_growth_cache_entry): New structure.
	(node_growth_cache, edge_growth_cache): New global vars.
	(estimate_growth): Turn into inline.
	(inline_merge_summary, do_estimate_edge_growth, do_estimate_edge_time,
	initialize_growth_caches, free_growth_caches): Declare.
	(estimate_edge_growth): Rewrite.
	(estimate_edge_time): Implement as inline cache lookup.
	(reset_node_growth_cache, reset_edge_growth_cache): New inline functions.
	(MAX_TIME): Reduce to allow multiplicatoin by INLINE_SIZE_SCALE.
	(NUM_CONDITIONS): New constant.
	(predicate_conditions): New enum.
	(IS_NOT_CONSTANT): New constant.
	(edge_removal_hook_holder): New var.
	(node_growth_cache, edge_growth_cache): New global vars.
	(true_predicate, single_cond_predicate, false_predicate, not_inlined_predicate,
	add_condition, add_clause, and_predicates, or_predicates, predicates_equal_p,
	evaulate_predicate, dump_condition, dump_clause, dump_predicate, account_size_time,
	evaulate_conditions_for_edge): New functions.
	(inline_summary_alloc): Move to heap.
	(inline_node_removal_hook): Clear condition and entry vectors.
	(inline_edge_removal_hook): New function.
	(initialize_growth_caches, free_growth_caches): New function.
	(dump_inline_summary): Update.
	(edge_execution_predicate): New function.
	(will_be_nonconstant_predicate): New function.
	(estimate_function_body_sizes): Compute BB and constantness predicates.
	(compute_inline_parameters): Do not clear estimated_growth.
	(estimate_edge_size_and_time): New function.
	(estimate_calls_size_and_time): New function.
	(estimate_callee_size_and_time): New function.
	(remap_predicate): New function.
	(inline_merge_summary): New function.
	(do_estimate_edge_time): New function based on...
	(estimate_edge_time): ... this one.
	(do_estimate_edge_growth): New function.
	(do_estimate_growth): New function based on....
	(estimate_growth): ... this one.
	(inline_analyze_function): Analyze after deciding on jump functions.
	(inline_read_section): New function.
	(inline_read_summary): Use it.
	(inline_write_summary): Write all the new data.
	* ipa-prop.c (ipa_get_param_decl_index): Export.
	(ipa_lattice_from_jfunc): Move here from ipa-cp.c
	* ipa-prop.h (ipa_get_param_decl_index, ipa_lattice_from_jfunc): Declare.
	(ipa_get_lattice): Move hre from ipa-cp.c
	* Makefile.in (GTFILES): Add ipa-inline.h and ipa-inline-analysis.c
	* params.def (PARAM_EARLY_INLINING_INSNS): Set to 11.
	* cgraph.h (cgraph_clone_inlined_nodes, compute_inline_parameters,
	cgraph_edge_inlinable_p): Remove.
	* cgraphunit.c: Include ipainline.h
	(cgraph_process_new_functions): Update call of compute_inline_parameters.

	* gcc.dg/tree-ssa/pr38699.c: Fix testcase.

From-SVN: r172873
2011-04-22 20:04:42 +00:00
François Dumont
0cfbd28838 libstdc++.exp (check_v3_target_time): Discard unused compilation result thanks to /dev/null.
2011-04-22  François Dumont  <francois.cppdevs@free.fr>

        * testsuite/lib/libstdc++.exp (check_v3_target_time): Discard
        unused compilation result thanks to /dev/null.
        * testsuite/lib/libstdc++.exp (check_v3_target_debug_mode
        check_v3_target_profile_mode check_v3_target_normal_mode
        check_v3_target_cstdint check_v3_target_cmath
        check_v3_target_atomic_builtins check_v3_target_gthreads
        check_v3_target_nanosleep check_v3_target_sched_yield
        check_v3_target_string_conversions check_v3_target_swprintf
        check_v3_target_binary_io): Use simple preprocessing rather than
        compilation. Discard unused preprocessing result thanks to /dev/null.

From-SVN: r172872
2011-04-22 19:34:38 +00:00
Richard Guenther
1df5b0db1c tree.c (build_int_cst): Properly create canonicalized integer constants.
2011-04-22  Richard Guenther  <rguenther@suse.de>

	* tree.c (build_int_cst): Properly create canonicalized integer
	constants.
	(build_int_cst_type): Remove scary comments.

From-SVN: r172871
2011-04-22 19:29:54 +00:00
Xinliang David Li
ae01169c69 Proper handling of -Werror=coverage-mismatch
From-SVN: r172870
2011-04-22 19:11:49 +00:00
Jakub Jelinek
93dfac24ad re PR tree-optimization/48717 (integer wrong code bug)
PR tree-optimization/48717
	* tree-ssa-forwprop.c (associate_plusminus): For A + ~A and
	~A + A optimizations use build_int_cst_type instead of build_int_cst.

	* gcc.c-torture/execute/pr48717.c: New test.

From-SVN: r172868
2011-04-22 20:52:48 +02:00
Uros Bizjak
1d284ec5c8 re PR target/48723 (ICE on function returning structure with -fstack-check on corei7-avx)
PR target/48723
	* config/i386/i386.c (ix86_expand_prologue): Update m->fs.sp_offset
	after the call to ix86_adjust_stack_and_probe.

testsuite/ChangeLog:

	PR target/48723
	* gcc.target/i386/pr48723.c: New test.

From-SVN: r172866
2011-04-22 20:40:23 +02:00
Ian Lance Taylor
aa5b0a0df3 libgo: Support multilib testing.
From Rainer Orth.

From-SVN: r172865
2011-04-22 18:38:24 +00:00
Ian Lance Taylor
90eadacd1e re PR go/48503 (http/cgi FAILs if libgcc_s.so.1 isn't in default ld.so.1 search path)
PR go/48503
libgo: Bring over http/cgi environment inheritance patches.

From-SVN: r172864
2011-04-22 18:23:47 +00:00
Eric Botcazou
eb601ae15a decl.c (make_packable_type): Copy DECL_PARALLEL_TYPE onto the new type.
* gcc-interface/decl.c (make_packable_type): Copy DECL_PARALLEL_TYPE
	onto the new type.

From-SVN: r172863
2011-04-22 17:41:28 +00:00
Eric Botcazou
7d7fcb08c3 gigi.h (create_subprog_decl): Add ARTIFICIAL_FLAG parameter.
* gcc-interface/gigi.h (create_subprog_decl): Add ARTIFICIAL_FLAG
	parameter.
	* gcc-interface/utils.c (create_subprog_decl): Likewise.  Set
	DECL_ARTIFICIAL and DECL_NO_INLINE_WARNING_P on the DECL accordingly.
	* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Subprogram_Type>: Add
	ARTIFICIAL_FLAG local variable and pass it to create_subprog_decl.
	<all>: Do not set flags on the reused DECL node coming from an alias.
	Set DECL_IGNORED_P on the DECL node built for subprograms if they
	don't need debug info here...
	* gcc-interface/trans.c (Subprogram_Body_to_gnu): ...and not here.
	(gigi): Adjust calls to create_subprog_decl.
	(build_raise_check): Likewise.
	(establish_gnat_vms_condition_handler): Likewise.
	(Compilation_Unit_to_gnu): Likewise.
	(gnat_to_gnu): Likewise.

From-SVN: r172862
2011-04-22 17:35:08 +00:00
Joseph Myers
1b5f506948 bfin-protos.h (Mmode): Don't define.
* config/bfin/bfin-protos.h (Mmode): Don't define.  Expand
	definition where used.

From-SVN: r172861
2011-04-22 17:47:38 +01:00
Jakub Jelinek
144f4153e8 re PR c/48716 (gcc OpenMP static variable declared in scope inside construct is predetermined shared)
PR c/48716
	* gimplify.c (gimplify_bind_expr): Mark as GOVD_LOCAL also
	TREE_STATIC variables declared inside of some OpenMP construct.

	* gcc.dg/gomp/pr48716.c: New test.
	* g++.dg/gomp/pr48716.C: New test.

From-SVN: r172859
2011-04-22 16:10:45 +02:00
Martin Jambor
f9fd305bd4 re PR middle-end/48585 (483.xalancbmk in SPEC CPU 2006 failed to build)
2011-04-22  Martin Jambor  <mjambor@suse.cz>

	PR middle-end/48585
	* tree-inline.c (copy_bb): Create new edges only for analyzed
	nodes.

From-SVN: r172858
2011-04-22 14:52:30 +02:00
Alexander Monakov
49819fef62 re PR c/36750 (-Wmissing-field-initializers relaxation request)
PR c/36750
	* c-typeck.c (pop_init_level): Do not warn about initializing
	with ` = {0}'.

testsuite:
	* gcc.dg/missing-field-init-2.c: Update testcase.

From-SVN: r172857
2011-04-22 15:53:01 +04:00
Alan Modra
6a1605adc6 missed hunk from last commit
missed hunk from last commit
	* config/rs6000/rs6000.c (rs6000_function_arg): Remove CALL_LIBCALL
	when returning call_cookie.

From-SVN: r172856
2011-04-22 13:49:40 +09:30
Alan Modra
401f66999f rs6000.c (rs6000_function_arg): Remove CALL_LIBCALL when returning call_cookie.
gcc/
	* config/rs6000/rs6000.c (rs6000_function_arg): Remove CALL_LIBCALL
	when returning call_cookie.
	(rs6000_function_ok_for_sibcall): Allow sibcalls via function
	pointers, to functions with no more vector args than the current
	function, and some non-local calls for ABI_V4.
	* config/rs6000/rs6000.md (sibcall_nonlocal_aix32,
	sibcall_nonlocal_aix64): Combine to ..
	(sibcall_nonlocal_aix<mode>): ..this.  Handle function pointer calls.
	(sibcall_value_nonlocal_aix32, sibcall_value_nonlocal_aix64): Combine..
	(sibcall_value_nonlocal_aix<mode>): ..likewise.
	(*sibcall_nonlocal_sysv<mode>): Handle function pointer calls.
	(sibcall_value_nonlocal_sysv<mode>): Likewise.  Correct call cookie
	operand.
	* config/rs6000/darwin.md (sibcall_nonlocal_darwin64,
	sibcall_value_nonlocal_darwin64, sibcall_symbolic_64,
	sibcall_value_symbolic_64): Delete.
gcc/testsuite/
	* gcc.target/powerpc/ppc-pow.c: Allow for tail calls.

From-SVN: r172855
2011-04-22 13:28:15 +09:30
Jie Zhang
98e2d93436 * MAINTAINERS: Update my email address.
From-SVN: r172854
2011-04-22 02:30:57 +00:00
GCC Administrator
7870577530 Daily bump.
From-SVN: r172853
2011-04-22 00:17:59 +00:00
Xinliang David Li
903d1e67c4 Remove cgraph pid
From-SVN: r172848
2011-04-22 00:03:41 +00:00
Ian Lance Taylor
7378e95ff1 godump.c (go_format_type): Use exported Go name for anonymous field name.
* godump.c (go_format_type): Use exported Go name for anonymous
	field name.

From-SVN: r172847
2011-04-21 23:38:34 +00:00
Ian Lance Taylor
26409c5246 Define go_assert to replace gcc_assert
This is defined in go-system.h in the backend.

	* go-system.h (go_assert, go_unreachable): Define.

From-SVN: r172846
2011-04-21 22:54:23 +00:00
Easwaran Raman
3a6448ea91 Changelog: Remove gcc/ prefix from a changelog entry.
*Changelog: Remove gcc/ prefix from a changelog entry.

From-SVN: r172845
2011-04-21 20:37:35 +00:00
Nathan Froyd
491add7287 objc-act.c (synth_module_prologue): Call build_function_type_list instead of build_function_type.
* objc-act.c (synth_module_prologue): Call build_function_type_list
	instead of build_function_type.
	* objc-next-runtime-abi-02.c (next_runtime_02_initialize):
	Likewise.

From-SVN: r172844
2011-04-21 20:29:55 +00:00