platform/upstream/gcc.git
14 years agoRemoved obsolete gcc/objc/README file
Nicola Pero [Wed, 6 Oct 2010 17:57:29 +0000 (17:57 +0000)]
Removed obsolete gcc/objc/README file

From-SVN: r165059

14 years agolto.c (partition_cgraph_node_p, [...]): Handle COMDATs required by the linker.
Jan Hubicka [Wed, 6 Oct 2010 17:28:13 +0000 (19:28 +0200)]
lto.c (partition_cgraph_node_p, [...]): Handle COMDATs required by the linker.

* lto.c (partition_cgraph_node_p, partition_varpool_node_p): Handle
COMDATs required by the linker.

From-SVN: r165058

14 years agoipa.c (cgraph_remove_unreachable_nodes): External references can always be removed.
Jan Hubicka [Wed, 6 Oct 2010 17:24:40 +0000 (19:24 +0200)]
ipa.c (cgraph_remove_unreachable_nodes): External references can always be removed.

* ipa.c (cgraph_remove_unreachable_nodes): External references can always
be removed.
(cgraph_externally_visible_p): We can not bring local comdats that are known
to linker; fix handling of internal visibility.
(function_and_variable_visibility): Likewise.

From-SVN: r165057

14 years agofunctional (struct _Weak_result_type_impl): Add specializazions for cv-qualified...
Paolo Carlini [Wed, 6 Oct 2010 17:17:16 +0000 (17:17 +0000)]
functional (struct _Weak_result_type_impl): Add specializazions for cv-qualified function types...

2010-10-06  Paolo Carlini  <paolo.carlini@oracle.com>

* include/std/functional (struct _Weak_result_type_impl): Add
specializazions for cv-qualified function types, for variadic
function types and pointers and references to function types,
and for pointers to member function types.
(struct _Reference_wrapper_base): Add specializations for
cv-qualified unary and binary function types.
* testsuite/20_util/reference_wrapper/result_type.cc: New.
* testsuite/20_util/reference_wrapper/typedefs-2.cc: Likewise.

From-SVN: r165056

14 years agore PR libstdc++/45863 (FAIL: libstdc++-abi/abi_check)
Rainer Orth [Wed, 6 Oct 2010 17:01:11 +0000 (17:01 +0000)]
re PR libstdc++/45863 (FAIL: libstdc++-abi/abi_check)

PR libstdc++/45863
* scripts/extract_symvers: Restore revision 164879.
Only use pvs on SunOS.

From-SVN: r165055

14 years agofutex.h: New.
Marcus Shawcroft [Wed, 6 Oct 2010 16:42:50 +0000 (16:42 +0000)]
futex.h: New.

2010-10-06  Marcus Shawcroft  <marcus.shawcroft@arm.com>

* config/linux/futex.h: New.
* config/linux/arm/mutex.h: New.
* configure.tgt (arm*-*-linux*): Add config path.

From-SVN: r165054

14 years agotrans-stmt.c (gfc_trans_allocate): free lhs expr.
Mikael Morin [Wed, 6 Oct 2010 16:39:27 +0000 (16:39 +0000)]
trans-stmt.c (gfc_trans_allocate): free lhs expr.

2010-10-06  Mikael Morin  <mikael@gcc.gnu.org>

* trans-stmt.c (gfc_trans_allocate): free lhs expr.

From-SVN: r165053

14 years agotrans-array.c (gfc_free_ss_chain): Made non-static.
Mikael Morin [Wed, 6 Oct 2010 16:30:08 +0000 (16:30 +0000)]
trans-array.c (gfc_free_ss_chain): Made non-static.

2010-10-06  Mikael Morin  <mikael@gcc.gnu.org>

* trans-array.c (gfc_free_ss_chain): Made non-static.
* trans-array.h (gfc_free_ss_chain): New prototype.
* trans-stmt.c (gfc_trans_where_2): Free ss chains.

From-SVN: r165052

14 years agotrans-intrinsic.c (gfc_conv_intrinsic_funcall): Also free symbol's subcomponents.
Mikael Morin [Wed, 6 Oct 2010 16:21:12 +0000 (16:21 +0000)]
trans-intrinsic.c (gfc_conv_intrinsic_funcall): Also free symbol's subcomponents.

2010-10-06  Mikael Morin  <mikael@gcc.gnu.org>

* trans-intrinsic.c (gfc_conv_intrinsic_funcall): Also free symbol's
subcomponents.

From-SVN: r165049

14 years agotrans-expr.c (get_proc_ptr_comp): Restore initial expression type before calling...
Mikael Morin [Wed, 6 Oct 2010 16:11:23 +0000 (16:11 +0000)]
trans-expr.c (get_proc_ptr_comp): Restore initial expression type before calling gfc_free_expr.

2010-10-06  Mikael Morin  <mikael@gcc.gnu.org>

* trans-expr.c (get_proc_ptr_comp): Restore initial expression type
before calling gfc_free_expr.

From-SVN: r165048

14 years agotrans-expr.c (get_proc_ptr_comp): Restore initial expression type before calling...
Mikael Morin [Wed, 6 Oct 2010 16:05:41 +0000 (16:05 +0000)]
trans-expr.c (get_proc_ptr_comp): Restore initial expression type before calling gfc_free_expr.

2010-10-06  Mikael Morin  <mikael@gcc.gnu.org>

* trans-expr.c (get_proc_ptr_comp): Restore initial expression type
before calling gfc_free_expr.

From-SVN: r165047

14 years agotrans-array.c (gfc_conv_tmp_array_ref): Add factorized call to gfc_advance_se_ss_chain.
Mikael Morin [Wed, 6 Oct 2010 15:59:31 +0000 (15:59 +0000)]
trans-array.c (gfc_conv_tmp_array_ref): Add factorized call to gfc_advance_se_ss_chain.

2010-10-06  Mikael Morin  <mikael@gcc.gnu.org>

* trans-array.c (gfc_conv_tmp_array_ref): Add factorized call to
gfc_advance_se_ss_chain.
* trans-expr.c (gfc_conv_subref_array_ref, gfc_conv_procedure_call,
gfc_conv_array_constructor_expr, gfc_trans_assignment_1): Remove
calls to gfc_advance_se_ss_chain after gfc_conv_tmp_array_ref.
* trans-intrinsic.c (gfc_conv_intrinsic_function): Ditto.
* trans-stmt.c (gfc_trans_where_assign, gfc_trans_where_3): Ditto.

From-SVN: r165046

14 years agotrans.c (gfc_restore_backend_locus): New function.
Mikael Morin [Wed, 6 Oct 2010 15:48:25 +0000 (15:48 +0000)]
trans.c (gfc_restore_backend_locus): New function.

2010-10-06  Mikael Morin  <mikael@gcc.gnu.org>

* trans.c (gfc_restore_backend_locus): New function.
(gfc_get_backend_locus): Renamed to ...
(gfc_save_backend_locus): ... this.
* trans.h (gfc_restore_backend_locus, gfc_get_backend_locus,
gfc_save_backend_locus): Same.
* trans-array.c (gfc_trans_g77_array, gfc_trans_dummy_array_bias,
gfc_trans_deferred_array): Rename gfc_get_backend_locus to
gfc_save_backend_locus.
(gfc_trans_dummy_array_bias): Call gfc_restore_backend_locus at the
end.
(gfc_trans_g77_array, gfc_trans_deferred_array): Use
gfc_restore_backend_locus instead of gfc_set_backend_locus.
(gfc_trans_deferred_array): Call gfc_restore_backend_locus on early
return.
* trans-decl.c (gfc_get_extern_function_decl, build_entry_thunks,
gfc_trans_deferred_vars):
Rename gfc_get_backend_locus to gfc_save_backend_locus.
Use gfc_restore_backend_locus insted of gfc_set_backend_locus.

From-SVN: r165045

14 years agotrans-array.c (gfc_build_constant_array_constructor): Free array spec when done.
Mikael Morin [Wed, 6 Oct 2010 15:39:15 +0000 (15:39 +0000)]
trans-array.c (gfc_build_constant_array_constructor): Free array spec when done.

2010-10-06  Mikael Morin  <mikael@gcc.gnu.org>

* trans-array.c (gfc_build_constant_array_constructor): Free array
spec when done.

From-SVN: r165041

14 years agosymbol.c (gfc_copy_formal_args_ppc): Free previous formal arg list before overwriting it.
Mikael Morin [Wed, 6 Oct 2010 15:35:04 +0000 (15:35 +0000)]
symbol.c (gfc_copy_formal_args_ppc): Free previous formal arg list before overwriting it.

2010-10-06  Mikael Morin  <mikael@gcc.gnu.org>

* symbol.c (gfc_copy_formal_args_ppc): Free previous formal arg list
before overwriting it.

From-SVN: r165040

14 years agoarray.c (gfc_match_array_spec): Don't re-initialize cleared struct.
Mikael Morin [Wed, 6 Oct 2010 15:29:46 +0000 (15:29 +0000)]
array.c (gfc_match_array_spec): Don't re-initialize cleared struct.

2010-10-06  Mikael Morin  <mikael@gcc.gnu.org>

* array.c (gfc_match_array_spec): Don't re-initialize cleared struct.
* symbol.c (gen_shape_param): Ditto.

From-SVN: r165039

14 years agosymbol.c (free_entry_list): New function.
Mikael Morin [Wed, 6 Oct 2010 15:25:51 +0000 (15:25 +0000)]
symbol.c (free_entry_list): New function.

2010-10-06  Mikael Morin  <mikael@gcc.gnu.org>

* symbol.c (free_entry_list): New function.
(gfc_free_namespace): Free list of entries.

From-SVN: r165038

14 years agosymbol.c (free_components): Free list of formal args and formal namespace.
Mikael Morin [Wed, 6 Oct 2010 15:21:00 +0000 (15:21 +0000)]
symbol.c (free_components): Free list of formal args and formal namespace.

2010-10-06  Mikael Morin  <mikael@gcc.gnu.org>

* symbol.c (free_components): Free list of formal args and formal
namespace.

From-SVN: r165037

14 years agosimplify.c (gfc_simplify_size): Clear temporary mpz int before returning.
Mikael Morin [Wed, 6 Oct 2010 15:15:48 +0000 (15:15 +0000)]
simplify.c (gfc_simplify_size): Clear temporary mpz int before returning.

2010-10-06  Mikael Morin  <mikael@gcc.gnu.org>

* simplify.c (gfc_simplify_size): Clear temporary mpz int before
returning.

From-SVN: r165036

14 years agoresolve.c (add_dt_to_dt_list): Remove unneeded if.
Mikael Morin [Wed, 6 Oct 2010 15:07:43 +0000 (15:07 +0000)]
resolve.c (add_dt_to_dt_list): Remove unneeded if.

2010-10-06  Mikael Morin  <mikael@gcc.gnu.org>

* resolve.c (add_dt_to_dt_list): Remove unneeded if.

From-SVN: r165035

14 years agoresolve.c (check_typebound_baseobject): Free local expr before returning.
Mikael Morin [Wed, 6 Oct 2010 14:52:02 +0000 (14:52 +0000)]
resolve.c (check_typebound_baseobject): Free local expr before returning.

2010-10-06  Mikael Morin  <mikael@gcc.gnu.org>

* resolve.c (check_typebound_baseobject): Free local expr before
returning.

From-SVN: r165034

14 years agoprimary.c (gfc_match_structure_constructor): Invert the assert logic.
Mikael Morin [Wed, 6 Oct 2010 14:47:40 +0000 (14:47 +0000)]
primary.c (gfc_match_structure_constructor): Invert the assert logic.

2010-10-06  Mikael Morin  <mikael@gcc.gnu.org>

* primary.c (gfc_match_structure_constructor): Invert the assert logic.

From-SVN: r165033

14 years agoprimary.c (gfc_free_structure_ctor_component): Also free the component structure...
Mikael Morin [Wed, 6 Oct 2010 14:43:55 +0000 (14:43 +0000)]
primary.c (gfc_free_structure_ctor_component): Also free the component structure itself.

2010-10-06  Mikael Morin  <mikael@gcc.gnu.org>

* primary.c (gfc_free_structure_ctor_component): Also free the
component structure itself.

From-SVN: r165032

14 years agore PR c++/45908 ([C++0x] ICE involving decltype: in tree_low_cst, at tree.h:4114)
Eric Botcazou [Wed, 6 Oct 2010 14:35:25 +0000 (14:35 +0000)]
re PR c++/45908 ([C++0x] ICE involving decltype: in tree_low_cst, at tree.h:4114)

PR c++/45908
* typeck.c (cp_build_addr_expr_1): Add check for incomplete types in
code folding offsetof-like computations.

From-SVN: r165031

14 years agore PR rtl-optimization/45394 (gnat fails to build on s390, trunk 20100918)
Eric Botcazou [Wed, 6 Oct 2010 14:25:04 +0000 (14:25 +0000)]
re PR rtl-optimization/45394 (gnat fails to build on s390, trunk 20100918)

PR rtl-optimization/45394
* combine.c (cleanup_auto_inc_dec): Remove AFTER parameter and adjust.
(struct rtx_subst_pair): Remove AFTER field.
(propagate_for_debug_subst): Adjust call to cleanup_auto_inc_dec.
(propagate_for_debug): Remove MOVE parameter and adjust.
(try_combine): In the special case where I2 is a PARALLEL, combine only
destinations of SETs and set I2SRC to the I2 source.
Adjust calls to propagate_for_debug throughout.
* reload1.c (eliminate_regs_1) <ASM_OPERANDS>: Do not abort for debug
insns.

From-SVN: r165030

14 years agomodule.c (gfc_use_module): Free atom_string when done with it.
Mikael Morin [Wed, 6 Oct 2010 14:23:30 +0000 (14:23 +0000)]
module.c (gfc_use_module): Free atom_string when done with it.

2010-10-06  Mikael Morin  <mikael@gcc.gnu.org>

* module.c (gfc_use_module): Free atom_string when done with it.

From-SVN: r165029

14 years agomodule.c (read_module): Remove useless string duplication.
Mikael Morin [Wed, 6 Oct 2010 14:19:30 +0000 (14:19 +0000)]
module.c (read_module): Remove useless string duplication.

2010-10-06  Mikael Morin  <mikael@gcc.gnu.org>

* module.c (read_module): Remove useless string duplication.

From-SVN: r165028

14 years agogfortranspec.c (append_arg): Remove commented code.
Mikael Morin [Wed, 6 Oct 2010 14:15:54 +0000 (14:15 +0000)]
gfortranspec.c (append_arg): Remove commented code.

2010-10-06  Mikael Morin  <mikael@gcc.gnu.org>

* gfortranspec.c (append_arg): Remove commented code.

From-SVN: r165027

14 years agodecl.c (match_procedure_in_type): Assertify if conditions.
Mikael Morin [Wed, 6 Oct 2010 14:11:30 +0000 (14:11 +0000)]
decl.c (match_procedure_in_type): Assertify if conditions.

2010-10-06  Mikael Morin  <mikael@gcc.gnu.org>

* decl.c (match_procedure_in_type): Assertify if conditions.

From-SVN: r165026

14 years agors6000.c (rs6000_expand_ternop_builtin): Rewrite switch on insn codes as sequence...
Olivier Hainque [Wed, 6 Oct 2010 14:08:48 +0000 (14:08 +0000)]
rs6000.c (rs6000_expand_ternop_builtin): Rewrite switch on insn codes as sequence of ifs.

        * config/rs6000/rs6000.c (rs6000_expand_ternop_builtin): Rewrite
        switch on insn codes as sequence of ifs.

From-SVN: r165025

14 years agocpp.c (gfc_cpp_post_options): Don't create a cpp reader if preprocessing is disabled.
Mikael Morin [Wed, 6 Oct 2010 14:06:20 +0000 (14:06 +0000)]
cpp.c (gfc_cpp_post_options): Don't create a cpp reader if preprocessing is disabled.

2010-10-06  Mikael Morin  <mikael@gcc.gnu.org>

* cpp.c (gfc_cpp_post_options): Don't create a cpp reader if
preprocessing is disabled.

From-SVN: r165024

14 years agopicochip.c (TARGET_EXCEPT_UNWIND_INFO): Define it to be UI_NONE for picochip.
Hariharan Sandanagobalane [Wed, 6 Oct 2010 11:29:41 +0000 (11:29 +0000)]
picochip.c (TARGET_EXCEPT_UNWIND_INFO): Define it to be UI_NONE for picochip.

        * config/picochip/picochip.c (TARGET_EXCEPT_UNWIND_INFO):
        Define it to be UI_NONE for picochip.
        (picochip_option_override): Do not disable exception flags
        * config/picochip/picochip-protos.h (picochip_except_unwind_info)
        Declare

From-SVN: r165023

14 years agoMakefile.in (regmove.o): Depend on $(TARGET_H).
Richard Guenther [Wed, 6 Oct 2010 11:25:06 +0000 (11:25 +0000)]
Makefile.in (regmove.o): Depend on $(TARGET_H).

2010-10-06  Richard Guenther  <rguenther@suse.de>

* Makefile.in (regmove.o): Depend on $(TARGET_H).

From-SVN: r165022

14 years agoFixed date in my last changelog entry
Nicola Pero [Wed, 6 Oct 2010 10:43:54 +0000 (10:43 +0000)]
Fixed date in my last changelog entry

From-SVN: r165021

14 years agoIn gcc/: 2010-10-06 Nicola Pero <nicola.pero@meta-innovation.com>
Nicola Pero [Wed, 6 Oct 2010 10:10:14 +0000 (10:10 +0000)]
In gcc/: 2010-10-06 Nicola Pero <nicola.pero@meta-innovation.com>

In gcc/:
2010-10-06  Nicola Pero  <nicola.pero@meta-innovation.com>

        Implemented fast enumeration for Objective-C.
        * c-parser.c (objc_could_be_foreach_context): New.
        (c_lex_one_token): Recognize RID_IN keyword in a potential
        Objective-C foreach context.
        (c_parser_declaration_or_fndef): Added parameter.  Accept
        Objective-C RID_IN keyword as terminating a declaration; in that
        case, return the declaration in the new parameter.
        (c_parser_extenral_declaration): Updated calls to
        c_parser_declaration_or_fndef.
        (c_parser_declaration_or_fndef): Same change.
        (c_parser_compound_statement_nostart): Same change.
        (c_parser_label): Same change.
        (c_parser_objc_methodprotolist): Same change.
        (c_parser_omp_for_loop): Same change.
        (c_parser_for_statement): Detect and parse Objective-C foreach
        statements.
        (c_parser_omp_for_loop): Updated call to check_for_loop_decls().
        * c-decl.c (check_for_loop_decls): Added parameter to allow ObjC
        fast enumeration parsing code to turn off the c99 error but still
        perform checks on the loop declarations.
        * c-tree.h (check_for_loop_decls): Updated declaration.
        * doc/objc.texi: Document fast enumeration.

In gcc/c-family/:
2010-10-06  Nicola Pero  <nicola.pero@meta-innovation.com>

        Implemented fast enumeration for Objective-C.
        * c-common.h (objc_finish_foreach_loop): New.
        * stub-objc.c (objc_finish_foreach_loop): New.

In gcc/objc/:
2010-10-06  Nicola Pero  <nicola.pero@meta-innovation.com>

        Implemented fast enumeration for Objective-C.
        * objc-act.c (build_fast_enumeration_state_template): New.
        (TAG_ENUMERATION_MUTATION): New.
        (TAG_FAST_ENUMERATION_STATE): New.
        (synth_module_prologue): Call build_fast_enumeration_state_template() and set up
        objc_enumeration_mutation_decl.
        (objc_create_temporary_var): Allow providing a name to temporary
        variables.
        (objc_build_exc_ptr): Updated calls to
        objc_create_temporary_var().
        (next_sjlj_build_try_catch_finally): Same change.
        (objc_finish_foreach_loop): New.
        * objc-act.h: Added OCTI_FAST_ENUM_STATE_TEMP,
        OCTI_ENUM_MUTATION_DECL, objc_fast_enumeration_state_template,
        objc_enumeration_mutation_decl.

        Merge from 'apple/trunk' branch on FSF servers.

        2006-04-12 Fariborz Jahanian <fjahanian@apple.com>

        Radar 4507230
        * objc-act.c (objc_type_valid_for_messaging): New routine to check
        for valid objc object types.
        (objc_finish_foreach_loop): Check for invalid objc objects in
        foreach header.

In gcc/testsuite/:
2010-10-05  Nicola Pero  <nicola.pero@meta-innovation.com>

        Implemented fast enumeration for Objective-C.
        * objc.dg/foreach-1.m: New.
        * objc.dg/foreach-2.m: New.
        * objc.dg/foreach-3.m: New.
        * objc.dg/foreach-4.m: New.
        * objc.dg/foreach-5.m: New.
        * objc.dg/foreach-6.m: New.
        * objc.dg/foreach-7.m: New.

        Merge from 'apple/trunk' branch on FSF servers:
        2006-04-13 Fariborz Jahanian <fjahanian@apple.com>

        Radar 4502236
        * objc.dg/objc-foreach-5.m: New.

        2006-04-12 Fariborz Jahanian <fjahanian@apple.com>

        Radar 4507230
        * objc.dg/objc-foreach-4.m: New.

        2006-03-13  Fariborz Jahanian <fjahanian@apple.com>

        Radar 4472881
        * objc.dg/objc-foreach-3.m: New.

        2005-03-07 Fariborz Jahanian <fjahanian@apple.com>

        Radar 4468498
        * objc.dg/objc-foreach-2.m: New.

        2006-02-15   Fariborz Jahanian <fjahanian@apple.com>

        Radar 4294910
        * objc.dg/objc-foreach-1.m: New

In libobjc/:
2010-10-06  Nicola Pero  <nicola.pero@meta-innovation.com>

        Implemented fast enumeration for Objective-C.
        * Makefile.in (C_SOURCE_FILES): Added objc-foreach.c.
        (OBJC_H): Added runtime.h
        * objc-foreach.c: New file.
        * objc/runtime.h: New file.

From-SVN: r165019

14 years agogcc.c-torture/execute/cmpsi-2.c : Unsigned comparisons should use
Hariharan Sandanagobalane [Wed, 6 Oct 2010 08:40:57 +0000 (08:40 +0000)]
gcc.c-torture/execute/cmpsi-2.c : Unsigned comparisons should use
        unsigned values.

From-SVN: r165016

14 years agomn10300.h (FIRST_PSEUDO_REGISTER): Increment by one.
Nick Clifton [Wed, 6 Oct 2010 08:16:18 +0000 (08:16 +0000)]
mn10300.h (FIRST_PSEUDO_REGISTER): Increment by one.

        * config/mn10300/mn10300.h (FIRST_PSEUDO_REGISTER): Increment by
        one.
        (MDR_REGNUM): Define.
        (FIXED_REGISTERS, CALL_USED_REGISTERS): Add MDR as a fixed
        register.
        (REG_CLASS_CONTENTS): Add MDR to ALL_REGS.
        (INCOMING_RETURN_ADDR_RTX): Define in terms of MDR.
        (REGISTER_NAMES): Add MDR.
        (DWARF2_DEBUGGING_INFO): Define to 1.
        * config/mn10300/mn10300.c (TARGET_EXCEPT_UNWIND_INFO): Define.
        (F): New function.  Sets RTX_FRAME_RELATED_P.
        (mn10300_gen_multiple_store): Use F.
        (expand_prologue): Use F.  Use gen_movsf() to push floating
        point registers.
        (expand_epilogue): Use gen_movsf() to pop floating point
        registers.
        (mn10300_option_override): Disable combine stack adjust pass.

From-SVN: r165015

14 years agore PR target/45901 (alpha-gnu target-specific CPP macros are broken)
Thomas Schwinge [Wed, 6 Oct 2010 07:49:52 +0000 (09:49 +0200)]
re PR target/45901 (alpha-gnu target-specific CPP macros are broken)

2010-10-06  Thomas Schwinge  <thomas@schwinge.name>

PR target/45901
* config/alpha/gnu.h (TARGET_OS_CPP_BUILTINS): Refer to
LINUX_TARGET_OS_CPP_BUILTINS instead of HURD_TARGET_OS_CPP_BUILTINS.

From-SVN: r165014

14 years agobuiltins.def (BUILT_IN_CALLOC, [...]): Mark as leaf.
Jakub Jelinek [Wed, 6 Oct 2010 07:48:46 +0000 (09:48 +0200)]
builtins.def (BUILT_IN_CALLOC, [...]): Mark as leaf.

* builtins.def (BUILT_IN_CALLOC, BUILT_IN_REALLOC,
BUILT_IN_ISALNUM, BUILT_IN_ISALPHA, BUILT_IN_ISASCII,
BUILT_IN_ISBLANK, BUILT_IN_ISCNTRL, BUILT_IN_ISDIGIT,
BUILT_IN_ISGRAPH, BUILT_IN_ISLOWER, BUILT_IN_ISPRINT,
BUILT_IN_ISPUNCT, BUILT_IN_ISSPACE, BUILT_IN_ISUPPER,
BUILT_IN_ISXDIGIT, BUILT_IN_TOASCII, BUILT_IN_TOLOWER,
BUILT_IN_TOUPPER): Mark as leaf.

From-SVN: r165013

14 years agore PR middle-end/45838 (FAIL: libgomp.c/pr34513.c execution test)
Jakub Jelinek [Wed, 6 Oct 2010 07:47:28 +0000 (09:47 +0200)]
re PR middle-end/45838 (FAIL: libgomp.c/pr34513.c execution test)

PR middle-end/45838
* omp-builtins.def (BUILT_IN_GOMP_PARALLEL_LOOP_STATIC_START,
BUILT_IN_GOMP_PARALLEL_LOOP_DYNAMIC_START,
BUILT_IN_GOMP_PARALLEL_LOOP_GUIDED_START,
BUILT_IN_GOMP_PARALLEL_LOOP_RUNTIME_START,
BUILT_IN_GOMP_PARALLEL_START, BUILT_IN_GOMP_TASK,
BUILT_IN_GOMP_PARALLEL_SECTIONS_START): Use
Revert back to ATTR_NOTHROW_LIST instead of ATTR_NOTHROW_LEAF_LIST.

* f95-lang.c (ATTR_NOTHROW_LEAF_LIST, ATTR_CONST_NOTHROW_LEAF_LIST,
ATTR_NOTHROW_LIST, ATTR_CONST_NOTHROW_LIST): Define.
(gfc_define_builtin): Change last argument to int bitmask from bool,
control addition of TREE_NOTHROW and leaf attribute as well.
(DO_DEFINE_MATH_BUILTIN): Adjust callers.
(gfc_init_builtin_functions): Likewise.  Remove
ATTR_{,CONST_}NOTHROW_LIST enum.

From-SVN: r165012

14 years agoDaily bump.
GCC Administrator [Wed, 6 Oct 2010 00:18:27 +0000 (00:18 +0000)]
Daily bump.

From-SVN: r165011

14 years agore PR libstdc++/45841 (r164529 cris-elf libstdc++ 27_io/basic_filebuf/seekoff/char...
David Krauss [Wed, 6 Oct 2010 00:17:28 +0000 (00:17 +0000)]
re PR libstdc++/45841 (r164529 cris-elf libstdc++ 27_io/basic_filebuf/seekoff/char/2-io.cc)

2010-10-05  David Krauss  <potswa@mac.com>

PR libstdc++/45841
* include/bits/fstream.h (basic_filebuf::underflow): Overflow
success does not preclude returning failure.
(basic_filebuf::pbackfail): Likewise.
(basic_filebuf::xsputn): Fix indentation problem.
(basic_filebuf::xsgetn): Likewise. Also, add similar overflow
call to enable optimized case from write mode.
* testsuite/27_io/basic_filebuf/underflow/char/45841.cc: New.
* testsuite/27_io/basic_filebuf/underflow/wchar_t/45841.cc: Likewise.

From-SVN: r165009

14 years agolocale_facets_nonio.h (time_get::get_time): Doc typo.
Jonathan Wakely [Tue, 5 Oct 2010 20:58:59 +0000 (20:58 +0000)]
locale_facets_nonio.h (time_get::get_time): Doc typo.

2010-10-05  Jonathan Wakely  <jwakely.gcc@gmail.com>

* include/bits/locale_facets_nonio.h (time_get::get_time): Doc typo.
(time_get::get_date): Likewise.

From-SVN: r165002

14 years ago2010-10-05 Jonathan Wakely <jwakely.gcc@gmail.com>
Jonathan Wakely [Tue, 5 Oct 2010 20:43:04 +0000 (21:43 +0100)]
2010-10-05  Jonathan Wakely  <jwakely.gcc@gmail.com>

* Remove svn conflict marker in ChangeLog.

From-SVN: r165001

14 years agom68hc11.h (CLASS_LIKELY_SPILLED_P): Remove.
Anatoly Sokolov [Tue, 5 Oct 2010 19:38:27 +0000 (23:38 +0400)]
m68hc11.h (CLASS_LIKELY_SPILLED_P): Remove.

* config/m68hc11/m68hc11.h (CLASS_LIKELY_SPILLED_P): Remove.
* config/m68hc11/m68hc11.c (TARGET_CLASS_LIKELY_SPILLED_P): Define.
(m68hc11_class_likely_spilled_p): New function.

From-SVN: r165000

14 years agoIn gcc/: 2010-10-05 Nicola Pero <nicola.pero@meta-innovation.com>
Nicola Pero [Tue, 5 Oct 2010 19:23:33 +0000 (19:23 +0000)]
In gcc/: 2010-10-05 Nicola Pero <nicola.pero@meta-innovation.com>

In gcc/:
2010-10-05  Nicola Pero  <nicola.pero@meta-innovation.com>

        * c-parser.c (c_parser_objc_method_definition): Updated comment.

In gcc/cp/:
2010-10-05  Nicola Pero  <nicola.pero@meta-innovation.com>

        PR objc++/31125
        * parser.c (cp_parser_objc_class_interface): If no identifier
        follows an @interface token, stop parsing the interface after
        printing an error.
        (cp_parser_objc_class_implementation): If no identifier follows an
        @implementation token, stop parsing the implementation after
        printing an error.

2010-10-05  Nicola Pero  <nicola.pero@meta-innovation.com>

        PR objc++/23707
        * parser.c (cp_parser_objc_method_keyword_params): If the required
        colon is not found while parsing parameters, stop parsing them.

2010-10-05  Nicola Pero  <nicola.pero@meta-innovation.com>

        PR objc++/31126
        * parser.c (cp_parser_objc_class_ivars): Do not eat the EOF or
        @end after detecting it.  Print an error if @end is found without
        a '}'.
        (cp_parser_objc_method_prototype_list): Do not eat the EOF after
        detecting it.  Fixed reading the next token when continuing
        because of an error in a method signature.  Print an error if EOF
        is found without an '@end'.
        (cp_parser_objc_method_definition_list): Same change.

2010-10-05  Nicola Pero  <nicola.pero@meta-innovation.com>

        Merge from apple/trunk branch on FSF servers:

        2005-10-17  Fariborz Jahanian <fjahanian@apple.com>

        Radar 4290840
        * parser.c (cp_parser_objc_method_keyword_params): Check for valid
        method parameters and issue error.
        (cp_parser_objc_method_definition_list): Check for invalid tokens
        which cannot start a function definition.

        2005-10-14  Fariborz Jahanian <fjahanian@apple.com>

        Radar 4294425
        * parser.c (cp_parser_objc_message_args): Check for missing message
        arguments and syntax error.

        2005-10-13  Fariborz Jahanian <fjahanian@apple.com>

        Radar 4261146
        * parser.c (cp_parser_objc_class_ivars): Check for @end/eof while
        looking for '}'.

        2005-08-15  Ziemowit Laski  <zlaski@apple.com>

        Radar 4093475
        * parser.c (cp_parser_objc_interstitial_code): Catch stray
        '{' and '}' tokens and issue appropriate errors.

        2005-08-02  Ziemowit Laski  <zlaski@apple.com>

        Radar 4185810
        (cp_parser_statement_seq_opt): In addition to '}' and
        end-of-file, a statement sequence may also be terminated
        by a stray '@end'.

In gcc/objc/:
2010-10-05  Nicola Pero  <nicola.pero@meta-innovation.com>

        Merge from 'apple/trunk' branch on FSF servers.

        2005-10-17  Fariborz Jahanian <fjahanian@apple.com>

        Radar 4290840
        * objc-act.c (objc_start_method_definition): Check for error_mark_node for
        the selector name and make a quick exit.

In gcc/testsuite/:
2010-10-05  Nicola Pero  <nicola.pero@meta-innovation.com>

        PR objc++/28050
        * obj-c++.dg/syntax-error-10.mm: New.

2010-10-05  Nicola Pero  <nicola.pero@meta-innovation.com>

        PR objc++/23707
        * obj-c++.dg/syntax-error-9.mm: New.

2010-10-05  Nicola Pero  <nicola.pero@meta-innovation.com>

        PR objc++/31126
        * obj-c++.dg/syntax-error-8.mm: New.

2010-10-05  Nicola Pero  <nicola.pero@meta-innovation.com>

        Merge from 'apple/trunk' branch on FSF servers.

        2005-10-17  Fariborz Jahanian <fjahanian@apple.com>

        Radar 4290840
        * obj-c++.dg/syntax-error-7.mm: New

        2005-10-14  Fariborz Jahanian <fjahanian@apple.com>

        Radar 4294425
        * obj-c++.dg/syntax-error-6.mm: New

        2005-10-13  Fariborz Jahanian <fjahanian@apple.com>

        Radar 4261146
        * obj-c++.dg/syntax-error-5.mm: New

        2005-08-15  Ziemowit Laski  <zlaski@apple.com>

        Radar 4093475
        * obj-c++.dg/syntax-error-[3-4].mm: New.

        2005-08-02  Ziemowit Laski  <zlaski@apple.com>

        Radar 4185810
        * obj-c++.dg/syntax-error-[1-2].mm: New.

From-SVN: r164997

14 years ago* lto.c (lto_section_with_id): Make s a const pointer.
Ian Lance Taylor [Tue, 5 Oct 2010 18:40:09 +0000 (18:40 +0000)]
* lto.c (lto_section_with_id): Make s a const pointer.

From-SVN: r164996

14 years agoinvoke.texi (-flto-partition, [...]): Document.
Jan Hubicka [Tue, 5 Oct 2010 17:57:09 +0000 (19:57 +0200)]
invoke.texi (-flto-partition, [...]): Document.

* doc/invoke.texi (-flto-partition, lto-partitions, lto-minpartition):
Document.
* opts.c (decode_options): Handle lto partitions.
* common.opt (flto-partition=1to1, flto-partition=balanced): New.
* params.def (PARAM_LTO_PARTITIONS, MIN_PARTITION_SIZE): New.

* lto.c:  Include params.h.
(add_cgraph_node_to_partition, add_varpool_node_to_partition): Do
refcounting in aux field.
(undo_partition, partition_cgraph_node_p, partition_varpool_node_p):
New functions.
(lto_1_to_1_map): Simplify.
(lto_balanced_map): New function.
(do_whole_program_analysis): Chose proper partitioning alg.
* Make-lang.in (lto.o): Add dependency on params.h

From-SVN: r164995

14 years agocgraphunit.c (assemble_function): Output thunks and aliases before the function itself.
Jan Hubicka [Tue, 5 Oct 2010 16:15:00 +0000 (18:15 +0200)]
cgraphunit.c (assemble_function): Output thunks and aliases before the function itself.

* cgraphunit.c (assemble_function): Output thunks and aliases before
the function itself.

From-SVN: r164994

14 years agotype_traits (_GLIBCXX_HAS_NESTED_TYPE): Add.
Paolo Carlini [Tue, 5 Oct 2010 15:53:35 +0000 (15:53 +0000)]
type_traits (_GLIBCXX_HAS_NESTED_TYPE): Add.

2010-10-05  Paolo Carlini  <paolo.carlini@oracle.com>

* include/std/type_traits (_GLIBCXX_HAS_NESTED_TYPE): Add.
* include/std/functional (_Has_result_type_helper,
_Has_result_type): Remove; use the above to define __has_result_type.
* include/bits/stl_iterator_base_types.h: Use the above to define
__has_iterator_category.
* include/bits/allocator.h (__has_allocator_type): Use the above.
* include/bits/cpp_type_traits.h (__has_iterator_category,
__is_iterator): Remove.

From-SVN: r164993

14 years agopicochip.c (picochip_option_override): Disable exception flags for picochip.
Hariharan Sandanagobalane [Tue, 5 Oct 2010 15:52:33 +0000 (15:52 +0000)]
picochip.c (picochip_option_override): Disable exception flags for picochip.

        * config/picochip/picochip.c (picochip_option_override): Disable
          exception flags for picochip.

From-SVN: r164992

14 years agoopts-common.c (handle_option, [...]): Add diagnostic_context parameter.
Joseph Myers [Tue, 5 Oct 2010 14:28:39 +0000 (15:28 +0100)]
opts-common.c (handle_option, [...]): Add diagnostic_context parameter.

* opts-common.c (handle_option, handle_generated_option,
read_cmdline_option, set_option): Add diagnostic_context
parameter.  Update calls among these functions.
(set_option): Don't use global_dc.
* opts.c (read_cmdline_options): Pass global_dc to
read_cmdline_option.
(decode_options): Pass global_dc to enable_warning_as_error.
(common_handle_option): Pass global_dc to enable_warning_as_error.
(enable_warning_as_error): Add diagnostic_context parameter.
Document parameters.  Don't use global_dc.  Pass
diagnostic_context parameter to handle_generated_option.
* opts.h (set_option, handle_option, handle_generated_option,
read_cmdline_option, enable_warning_as_error): Add
diagnostic_context parameter.
* Makefile.in (lto-opts.o): Update dependencies.
* coretypes.h (struct diagnostic_context, diagnostic_context):
Declare here.
* diagnostic.h (diagnostic_context): Don't declare typedef here.
* gcc.c (process_command): Pass global_dc to read_cmdline_option.
* langhooks-def.h (struct diagnostic_context): Don't declare here.
(lhd_print_error_function, lhd_initialize_diagnostics): Declare
using diagnostic_context typedef.
* langhooks.c (lhd_initialize_diagnostics): Declare using
diagnostic_context typedef.
* langhooks.h (struct diagnostic_context): Don't declare here.
(initialize_diagnostics, print_error_function): Declare using
diagnostic_context typedef.
* lto-opts.c: Include diagnostic.h.
(lto_reissue_options): Pass global_dc to set_option.  Pass
DK_UNSPECIFIED not 0.
* plugin.c (plugins_internal_error_function): Declare using
diagnostic_context typedef.
* plugin.h (struct diagnostic_context): Don't declare here.
(plugins_internal_error_function): Declare using
diagnostic_context typedef.

c-family:
* c-common.h (struct diagnostic_context): Don't declare here.
(c_common_initialize_diagnostics): Declare using
diagnostic_context typedef.
* c-opts.c (c_common_handle_option): Pass global_dc to
handle_generated_option.

cp:
* cp-tree.h (cxx_print_error_function,
cxx_initialize_diagnostics): Declare using diagnostic_context
typedef.

From-SVN: r164991

14 years agovxworksae.h: Add missing VXWORKS_OS_CPP_BUILTINS.
Olivier Hainque [Tue, 5 Oct 2010 12:18:10 +0000 (12:18 +0000)]
vxworksae.h: Add missing VXWORKS_OS_CPP_BUILTINS.

        * config/vxworksae.h: Add missing VXWORKS_OS_CPP_BUILTINS.
        * config/rs6000/vxworks.h: Remove redundant CPP builtin definitions.

Co-Authored-By: Nicolas Roche <roche@adacore.com>
From-SVN: r164988

14 years agore PR tree-optimization/45752 (ICE in ix86_vectorize_builtin_vec_perm_ok)
Ira Rosen [Tue, 5 Oct 2010 12:01:29 +0000 (12:01 +0000)]
re PR tree-optimization/45752 (ICE in ix86_vectorize_builtin_vec_perm_ok)

PR tree-optimization/45752
* tree-vect-slp.c (vect_get_mask_element): Remove static
variables, make them function arguments.
(vect_transform_slp_perm_load): Pass new arguments to
vect_get_mask_element.

From-SVN: r164987

14 years agovalue-prof.c (gimple_divmod_fixed_value): Work on SSA form.
Richard Guenther [Tue, 5 Oct 2010 10:42:24 +0000 (10:42 +0000)]
value-prof.c (gimple_divmod_fixed_value): Work on SSA form.

2010-10-05  Richard Guenther  <rguenther@suse.de>

* value-prof.c (gimple_divmod_fixed_value): Work on SSA form.
(gimple_mod_pow2): Likewise.
(gimple_mod_subtract): Likewise.
(gimple_ic): Likewise.
(gimple_stringop_fixed_value): Likewise.
* tree-profile.c (tree_init_edge_profiler): Mark profile
functions nothrow and leaf.
(add_abnormal_goto_call_edges): Remove.
(tree_gen_edge_profiler): Work on SSA form.
(tree_gen_ic_profiler): Likewise.  Simplify.
(do_tree_profiling): Update SSA form.
(pass_tree_profile): Remove.
(do_tree_profiling): Likewise.
(gate_tree_profile_ipa): New function.
(pass_ipa_tree_profile): New.
(tree_profiling): Re-write as IPA pass.  Properly drop const/pure
state of instrumented functions.
* passes.c (init_optimization_passes): Remove early non-SSA
inlining.  Move profiling after early optimizations.
* ipa-inline.c (cgraph_gate_ipa_early_inlining): Remove.
(pass_ipa_early_inline): Likewise.
* tree-pass.h (pass_ipa_early_inline): Remove.
(pass_tree_profile): Likewise.
(pass_ipa_tree_profile): Declare.

* gcc.dg/tree-prof/val-prof-1.c: Adjust.
* gcc.dg/tree-prof/val-prof-2.c: Likewise.
* gcc.dg/tree-prof/val-prof-3.c: Likewise.
* gcc.dg/tree-prof/val-prof-4.c: Likewise.
* gcc.dg/tree-prof/val-prof-5.c: Likewise.
* gcc.dg/tree-prof/val-prof-7.c: Likewise.
* gcc.dg/tree-prof/stringop-1.c: Likewise.
* gcc.dg/tree-prof/stringop-2.c: Likewise.
* gcc.dg/tree-prof/ic-misattribution-1.c: Likewise.
* gcc.dg/tree-prof/indir-call-prof.c: Likewise.
* gcc.dg/tree-prof/update-loopch.c: Likewise.
* g++.dg/tree-prof/indir-call-prof.C: Likewise.
* g++.dg/tree-prof/inline_mismatch_args.C: Likewise.
* gcc.dg/tree-prof/tracer-1.c: Likewise.
* gcc.dg/tree-ssa/inline-4.c: Likewise.
* gcc.dg/tree-ssa/inline-3.c: Likewise.
* gcc.dg/tree-ssa/20080530.c: Likewise.
* g++.dg/tree-ssa/inline-3.C: Likewise.
* g++.dg/tree-ssa/inline-1.C: Likewise.
* g++.dg/tree-ssa/inline-2.C: Likewise.
* gcc.dg/profile-dir-1.c: Likewise.
* gcc.dg/profile-dir-2.c: Likewise.
* gcc.dg/profile-dir-3.c: Likewise.

From-SVN: r164986

14 years agos390.c (z196_cost): New.
Andreas Krebbel [Tue, 5 Oct 2010 10:39:48 +0000 (10:39 +0000)]
s390.c (z196_cost): New.

2010-10-05  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
            Christian Borntraeger  <Christian.Borntraeger@de.ibm.com>

* gcc/config/s390/s390.c (z196_cost): New.
(s390_handle_arch_option): Add -march=z196.
(s390_option_override): Use the new cost function and use the z10
defaults also for z196.
(legitimate_reload_constant_p): Adjust comment.
(legitimate_reload_fp_constant_p): New function.
(s390_preferred_reload_class): Distingiush between FP and Int constants.
(preferred_la_operand_p): Avoid la with index on z196.
(s390_adjust_priority): Trigger also for z196.
(s390_issue_rate): Issue rate for z196 is 3.
(s390_z10_fix_long_loop_prediction): Rename to ...
(s390_fix_long_loop_prediction): ... this.
(s390_reorg): Apply the z10 adjustments also for z196.
(s390_loop_unroll_adjust): Do this also for z196.
* gcc/config/s390/s390.h (enum processor_type): Add PROCESSOR_2817_Z196.
(enum processor_flags): Add PF_Z196.
(TARGET_AVOID_CMP_AND_BRANCH): New macro.
(TARGET_CPU_Z196, TARGET_Z196): New macros.
* gcc/config.gcc: Enable z196 for --with-arch.
* gcc/config/s390/2817.md: New file.
* gcc/config/s390/2084.md: New type for multiply and add.
* gcc/config/s390/2097.md: Likewise.
* gcc/config/s390/s390.md (UNSPEC_POPCNT, UNSPEC_COPYSIGN)
(UNSPECV_ATOMIC_OP): New constants.
(fmadddf, fmaddsf): New values for type attribute.
(z196prop): New insn attribute.
(cpu, cpu_facility): Add z196.
(ATOMIC_Z196): New code iterator.
(noxa): New code attribute.
(gk): New mode attribute.
(*mov<mode>_64, *mov<mode>_31, *mov<mode>_64dfp, mov<mode>):
Support load zero for fp constants.
(fixuns_truncdddi2, fixuns_trunctddi2)
(fixuns_trunc<BFP:mode><GPR:mode>2): Use the standard rtx pattern
for z196.
(fixuns_trunc<mode>si2, mov<mode>cc, popcountdi2, popcountsi2)
(popcounthi2, popcountqi2): New expander.
(*fixuns_trunc<FP:mode><GPR:mode>2_z196, floatsi<mode>2)
(floatuns<GPR:mode><FP:mode>2, *mov<mode>cc, sync_<atomic><mode>)
(sync_old_<atomic><mode>, *popcount<mode>, copysign<mode>3): New
insn definition.
(add<mode>3, *add<mode>3_carry1_cc, *add<mode>3_carry1_cconly)
(*add<mode>3_carry2_cc, *add<mode>3_carry2_cconly, *add<mode>3_cc)
(*add<mode>3_cconly, *add<mode>3_cconly2, *add<mode>3_imm_cc, *sub<mode>3)
(*sub<mode>3_borrow_cc, *sub<mode>3_borrow_cconly, *sub<mode>3_cc)
(*sub<mode>3_cc2, *sub<mode>3_cconly, *sub<mode>3_cconly2)
(*anddi3_cc, *anddi3_cconly, *anddi3, *andsi3_cc, *andsi3_cconly)
(*andsi3_zarch, *andsi3_esa, *andhi3_zarch, *andqi3_zarch, *iordi3_cc)
(*iordi3_cconly, *iordi3, *iorsi3_cc, *iorsi3_cconly, *iorsi3_zarch)
(*iorhi3_zarch, *iorqi3_zarch, *xordi3_cc, *xordi3_cconly, *xordi3)
(*xorsi3_cc, *xorsi3_cconly, *xorsi3, *xorhi3, *xorqi3, *<shift><mode>3)
(*<shift><mode>3_and, *ashr<mode>3_cc, *ashr<mode>3_cconly, *ashr<mode>3)
(*ashr<mode>3_cc_and, *ashr<mode>3_cconly_and, *ashr<mode>3_and):
Support new z196 instructions.

Co-Authored-By: Christian Borntraeger <Christian.Borntraeger@de.ibm.com>
From-SVN: r164985

14 years agore PR middle-end/45877 (invalid write in gimplify_and_update_call_from_tree)
Richard Guenther [Tue, 5 Oct 2010 10:37:12 +0000 (10:37 +0000)]
re PR middle-end/45877 (invalid write in gimplify_and_update_call_from_tree)

2010-10-05  Richard Guenther  <rguenther@suse.de>

PR middle-end/45877
* gimple-fold.c (gimplify_and_update_call_from_tree): Handle
case where gimplification optimizes away the stmt.

* g++.dg/torture/pr45877.C: New testcase.

From-SVN: r164984

14 years ago[multiple changes]
Arnaud Charlet [Tue, 5 Oct 2010 10:30:15 +0000 (12:30 +0200)]
[multiple changes]

2010-10-05  Robert Dewar  <dewar@adacore.com>

* par-ch5.adb (Test_Statement_Required): Allow all pragmas in Ada 2012
mode.

2010-10-05  Pascal Obry  <obry@adacore.com>

* gnat_rm.texi: Fix typo.

2010-10-05  Arnaud Charlet  <charlet@adacore.com>

* gnat_ugn.texi: Add note about identifiers with same name and
-fdump-ada-spec.

From-SVN: r164983

14 years ago[multiple changes]
Arnaud Charlet [Tue, 5 Oct 2010 10:26:07 +0000 (12:26 +0200)]
[multiple changes]

2010-10-05  Robert Dewar  <dewar@adacore.com>

* sem_ch4.adb: Minor reformatting.
* a-direct.ads: Minor comment update.

2010-10-05  Javier Miranda  <miranda@adacore.com>

* sem_ch3.adb (Add_Internal_Interface_Entities): Removing code that is
no longer required after change in New_Overloaded_Entity.
* sem_ch6.adb (New_Overloaded_Entity): Code reorganization to isolate
the fragment of code that handles derivations of interface primitives.
Add missing dependence on global variable Inside_Freezing_Actions to
ensure the correct management of internal interface entities.
* sem_ch13.adb (Analyze_Freeze_Entity): Add missing increase/decrease
of the global variable Inside_Freezing_Actions to ensure that internal
interface entities are well handled by New_Overloaded_Entity.
* sem_disp.adb (Find_Primitive_Covering_Interface): Add documentation
and complete the algorithm to catch hidden primitives derived of
private type that covers the interface.
* sem_disp.ads (Find_Primitive_Covering_Interface): Add missing
documentation.

From-SVN: r164982

14 years agoprj-util.adb, [...]: Minor reformatting.
Robert Dewar [Tue, 5 Oct 2010 10:22:52 +0000 (10:22 +0000)]
prj-util.adb, [...]: Minor reformatting.

2010-10-05  Robert Dewar  <dewar@adacore.com>

* prj-util.adb, prj-util.ads, prj.ads, s-vxwext-rtp.adb, sem_ch4.adb,
sem_ch7.adb, sem_res.adb, sem_type.adb: Minor reformatting.
Minor code reorganization (use Nkind_In).

From-SVN: r164981

14 years ago[multiple changes]
Arnaud Charlet [Tue, 5 Oct 2010 10:18:09 +0000 (12:18 +0200)]
[multiple changes]

2010-10-05  Ed Schonberg  <schonberg@adacore.com>

* sem_ch10.adb (Analyze_Task_Body_Stub): Diagnose duplicate stub for
task.

2010-10-05  Vincent Celier  <celier@adacore.com>

* gnatbind.adb: If the main library file is not for a suitable main
program, change the error message.

2010-10-05  Vincent Celier  <celier@adacore.com>

* a-direct.ads: Minor spelling error fixes in comments.
* gnat_rm.texi: Add three entries in "Implementation Defined
Characteristics" for the interpretations of the Form parameters in
Ada.Directories.

From-SVN: r164980

14 years agoexp_ch3.adb, [...]: Minor code reorganization.
Robert Dewar [Tue, 5 Oct 2010 10:14:50 +0000 (10:14 +0000)]
exp_ch3.adb, [...]: Minor code reorganization.

2010-10-05  Robert Dewar  <dewar@adacore.com>

* exp_ch3.adb, exp_ch5.adb, exp_disp.adb, exp_dist.adb, gnatlink.adb,
makeutl.adb, par-ch6.adb, prj-dect.adb, prj-env.adb, prj-env.ads,
prj-ext.adb, prj-nmsc.adb, prj-part.adb, prj-pp.ads: Minor code
reorganization.
Minor reformatting.

From-SVN: r164979

14 years ago[multiple changes]
Arnaud Charlet [Tue, 5 Oct 2010 10:07:35 +0000 (12:07 +0200)]
[multiple changes]

2010-10-05  Ed Schonberg  <schonberg@adacore.com>

* sem_res.adb (Check_Parameterless_Call): If the prefix of 'Address is
an explicit dereference of an access to function, the prefix is not
interpreted as a parameterless call.

2010-10-05  Ed Schonberg  <schonberg@adacore.com>

* exp_attr.adb: For 'Read and 'Write, use full view of base type if
private.

2010-10-05  Vincent Celier  <celier@adacore.com>

* make.adb (Switches_Of): Allow wild cards in index of attributes
Switches.
* prj-util.adb (Value_Of): When Allow_Wildcards is True, use the index
of the associative array as a glob regular expression.
* prj-util.ads (Value_Of (Index, In_Array)): New Boolean parameter
Allow_Wildcards, defaulted to False.
(Value_Of (Name, Attribute_Or_Array_Name)): Ditto
* projects.texi: Document that attribute Switches (<file name>) may
use wild cards in the index.

2010-10-05  Robert Dewar  <dewar@adacore.com>

* a-direct.adb, a-direct.ads, back_end.adb, checks.adb,
einfo.adb: Minor reformatting.
* debug.adb: Remove obsolete documentation for d.Z flag.

From-SVN: r164978

14 years agovms_data.ads: Add VMS qualifier /SRC_INFO= corresponding to gnatmake switch --create...
Vincent Celier [Tue, 5 Oct 2010 10:00:45 +0000 (10:00 +0000)]
vms_data.ads: Add VMS qualifier /SRC_INFO= corresponding to gnatmake switch --create-info-file=.

2010-10-05  Vincent Celier  <celier@adacore.com>

* vms_data.ads: Add VMS qualifier /SRC_INFO= corresponding to gnatmake
switch --create-info-file=.
* gnat_ugn.texi: Add documentation for new gnatmake switch
--source-info=

From-SVN: r164977

14 years ago[multiple changes]
Arnaud Charlet [Tue, 5 Oct 2010 09:57:10 +0000 (11:57 +0200)]
[multiple changes]

2010-10-05  Ed Schonberg  <schonberg@adacore.com>

* sem_ch3.adb: Do not elaborate type definition if syntax error.

2010-10-05  Javier Miranda  <miranda@adacore.com>

* sprint.adb (Sprint_Node_Actual): Improve output of subprogram bodies
to generate the full-qualified names of its corresponding spec.
This facilitates locating the corresponing body when reading
the DG output.

2010-10-05  Thomas Quinot  <quinot@adacore.com>

* exp_dist.adb (Make_Helper_Function_Name): For a tagged type, use
canonical name without serial number only if the helper is becoming a
primitive of the type.

2010-10-05  Javier Miranda  <miranda@adacore.com>

* exp_disp.adb (Make_DT): Minor code reorganization.

2010-10-05  Ed Schonberg  <schonberg@adacore.com>

* par-ch6.adb: improve recovery with extra paren in function spec.

2010-10-05  Quentin Ochem  <ochem@adacore.com>

* prj-tree.ads: Project_Path is now aliased.

2010-10-05  Thomas Quinot  <quinot@adacore.com>

* checks.adb: Minor reformatting.

2010-10-05  Eric Botcazou  <ebotcazou@adacore.com>

* mlib-tgt-specific-mingw.adb (No_Argument_List): Delete.
(Shared_Libgcc): New aliased variable.
(Shared_Libgcc_Switch): New constant.
(Build_Dynamic_Library): Pass Shared_Libgcc_Switch to the compiler
* gcc-interface/Makefile.in (gnatlib-shared-win32): Pass -shared-libgcc
to the compiler.

2010-10-05  Vincent Celier  <celier@adacore.com>

* prj-part.adb (Parse_Simple_Project): When checking if a child project
imports its parent project, also look in projects being extended by
imported projects.

2010-10-05  Eric Botcazou  <ebotcazou@adacore.com>

* gnat_ugn.texi: Adjust instructions in G.10 Building DLLs with GNAT.

2010-10-05  Javier Miranda  <miranda@adacore.com>

* exp_cg.adb (Slot_Number): Add support to handle aliased entities.
(Generate_CG_Output): Switch -gnatd.Z is no longer needed to
activate this output.

2010-10-05  Arnaud Charlet  <charlet@adacore.com>

* back_end.adb (Call_Back_End): Generate an error message when scil
generation is enabled, and no scil back-end (by default) is available.

2010-10-05  Javier Miranda  <miranda@adacore.com>

* debug.adb: Update documentation because -gnatd.Z is no longer required
to generate the call-graph information.

2010-10-05  Javier Miranda  <miranda@adacore.com>

* exp_ch5.adb (Expand_Simple_Function_Return): Rewrite expansion of a
runtime access check by an equivalent expansion that causes
no problems in the VM backend. The original expansion was
not good for the VM backends because when Tagged_Type_Expansion
is disabled the attribute Access_Disp_Table is not available.

2010-10-05  Ed Schonberg  <schonberg@adacore.com>

* sem_type.adb (Covers): In a dispatching context, T1 covers T2 if T2
is class-wide and T1 is its specific type.

2010-10-05  Ed Schonberg  <schonberg@adacore.com>

* einfo.adb: Add guard to Is_String_Type to prevent cascaded errors.

2010-10-05  Vincent Celier  <celier@adacore.com>

* back_end.ads: Minor spelling error correction.

2010-10-05  Arnaud Charlet  <charlet@adacore.com>

* switch-c.adb, gnat1drv.adb (Scan_Front_End_Switches): Disable
warnings when -gnatC is specified here so that warnings can be
re-enabled  explicitly.
(Adjust_Global_Switches): No longer suppress warnings.

2010-10-05  Vincent Celier  <celier@adacore.com>

* makeutl.adb: Minor reformatting.

2010-10-05  Ed Schonberg  <schonberg@adacore.com>

* sem_ch4.adb: add guard in Analyze_One_Call to prevent crash when a
non-discrete type appears as an actual in a call.

From-SVN: r164976

14 years agomake.adb (Scan_Make_Arg): Take into account new switch --source-info=file.
Vincent Celier [Tue, 5 Oct 2010 09:56:39 +0000 (11:56 +0200)]
make.adb (Scan_Make_Arg): Take into account new switch --source-info=file.

2010-10-05  Vincent Celier  <celier@adacore.com>

* make.adb (Scan_Make_Arg): Take into account new switch
--source-info=file.
* makeusg.adb: Add line for new switch --source-info=file.
* makeutl.ads (Source_Info_Option): New constant String for new builder
switch.
* prj-conf.adb: Put subprograms in alphabetical order
(Process_Project_And_Apply_Config): Read/write an eventual source info
file, if necessary.
* prj-nmsc.adb (Look_For_Sources.Get_Sources_From_Source_Info): New
procedure.
(Look_For_Sources): If a source info file was successfully read, get the
source data from the data read from the source info file.
* prj-util.adb (Source_Info_Table): New table
(Source_Info_Project_HTable): New hash table
(Create): New procedure
(Put (File), Put_Line): New procedures
(Write_Source_Info_File): New procedure
(Read_Source_Info_File): New procedure
(Initialize): New procedure
(Source_Info_Of): New procedure
(Next): New procedure
(Close): When file is an out file, fail if the buffer cannot be written
or if the file cannot be close successfully.
(Get_Line): Fail if file is an out file
* prj-util.ads (Create): New procedure
(Put (File), Put_Line): New procedures
(Write_Source_Info_File): New procedure
(Read_Source_Info_File): New procedure
(Source_Info_Data): New record type
(Source_Info_Iterator): New private type
(Initialize): New procedure
(Source_Info_Of): New procedure
(Next): New procedure
* prj.ads (Project_Tree_Data): New components Source_Info_File_Name and
Source_Info_File_Exists.

From-SVN: r164975

14 years ago[multiple changes]
Arnaud Charlet [Tue, 5 Oct 2010 09:42:12 +0000 (11:42 +0200)]
[multiple changes]

2010-10-05  Ed Schonberg  <schonberg@adacore.com>

* exp_ch4.adb: Fix typo.

2010-10-05  Thomas Quinot  <quinot@adacore.com>

* lib-writ.adb: Minor reformatting.

2010-10-05  Javier Miranda  <miranda@adacore.com>

* sem_ch3.adb (Access_Definition): Remove useless code.

From-SVN: r164974

14 years agore PR libstdc++/44647 (std::nothrow and std::bad_alloc are coupled)
Sebastian Huber [Tue, 5 Oct 2010 09:41:57 +0000 (09:41 +0000)]
re PR libstdc++/44647 (std::nothrow and std::bad_alloc are coupled)

2010-10-05  Sebastian Huber  <sebastian.huber@embedded-brains.de>
    Jonathan Wakely  <jwakely.gcc@gmail.com>

PR libstdc++/44647
* libsupc++/Makefile.am (sources): Add bad_alloc.cc.
* libsupc++/new_handler.cc (bad_alloc): Move to ...
* libsupc++/bad_alloc.cc (bad_alloc): ... here, new file.
* libsupc++/Makefile.in: Regenerate.

Co-Authored-By: Jonathan Wakely <jwakely.gcc@gmail.com>
From-SVN: r164973

14 years ago[multiple changes]
Arnaud Charlet [Tue, 5 Oct 2010 09:37:44 +0000 (11:37 +0200)]
[multiple changes]

2010-10-05  Emmanuel Briot  <briot@adacore.com>

* prj-env.adb, prj-env.ads (Set_Path): New subprogram.
(Deep_Copy): Removed, not used.

2010-10-05  Javier Miranda  <miranda@adacore.com>

* sem_ch3.adb (Add_Internal_Interface_Entities): Code reorganization:
move code that searches in the list of primitives of a tagged type for
the entity that will be overridden by user-defined routines.
* sem_disp.adb (Find_Primitive_Covering_Interface): Move here code
previously located in routine Add_Internal_Interface_Entities.
* sem_disp.ads (Find_Primitive_Covering_Interface): Update documentation
* sem_ch6.adb (New_Overloaded_Entity): Add missing check on
availability of attribute Alias.

2010-10-05  Ed Falis  <falis@adacore.com>

* s-taprop-vxworks.adb, s-osinte-vxworks.adb, s-osinte-vxworks.ads,
s-vxwext.ads, s-vxwext-kernel.ads, s-vxwext-rtp.adb, s-vxwext-rtp.ads:
Move definition of intContext to System.OS_Interface.
Add necessary variants in System.VxWorks.Extensions.

2010-10-05  Doug Rupp  <rupp@adacore.com>

* s-asthan-vms-alpha.adb: On VMS, a task using
pragma AST_Entry exhibits a memory leak when the task terminates
because the vector allocated for the AST interface is not freed. Fixed
by making the vector a controlled type.

From-SVN: r164972

14 years agoprj-nmsc.adb (Expand_Subdirectory_Pattern): Check that the prefix in a "**" pattern...
Emmanuel Briot [Tue, 5 Oct 2010 09:32:05 +0000 (09:32 +0000)]
prj-nmsc.adb (Expand_Subdirectory_Pattern): Check that the prefix in a "**" pattern properly exists...

2010-10-05  Emmanuel Briot  <briot@adacore.com>

* prj-nmsc.adb (Expand_Subdirectory_Pattern): Check that the prefix in
a "**" pattern properly exists, and report an error otherwise.

2010-10-05  Emmanuel Briot  <briot@adacore.com>

* prj-env.ads: Use GNAT.OS_Lib rather than System.OS_Lib.

From-SVN: r164971

14 years agoprj-nmsc.adb, [...] (Expand_Subdirectory_Pattern): New subprogram.
Emmanuel Briot [Tue, 5 Oct 2010 09:29:14 +0000 (09:29 +0000)]
prj-nmsc.adb, [...] (Expand_Subdirectory_Pattern): New subprogram.

2010-10-05  Emmanuel Briot  <briot@adacore.com>

* prj-nmsc.adb, prj-err.adb (Expand_Subdirectory_Pattern): New
subprogram.
Extract some code from Get_Directories, to share with the handling
        of aggregate projects (for the Project_Files attributes)

From-SVN: r164970

14 years agognatcmd.adb, [...] (Project_Search_Path): New type.
Emmanuel Briot [Tue, 5 Oct 2010 09:26:00 +0000 (09:26 +0000)]
gnatcmd.adb, [...] (Project_Search_Path): New type.

2010-10-05  Emmanuel Briot  <briot@adacore.com>

* gnatcmd.adb, prj-proc.adb, prj-part.adb, prj-ext.adb, prj-ext.ads,
switch-m.adb, clean.adb, prj-nmsc.adb, prj-nmsc.ads, prj-env.adb,
prj-env.ads, prj-tree.adb, prj-tree.ads (Project_Search_Path): New type.

From-SVN: r164969

14 years ago[multiple changes]
Arnaud Charlet [Tue, 5 Oct 2010 09:22:21 +0000 (11:22 +0200)]
[multiple changes]

2010-10-05  Eric Botcazou  <ebotcazou@adacore.com>

* exp_ch5.adb (Make_Field_Expr): Revert previous change (removed).

2010-10-05  Emmanuel Briot  <briot@adacore.com>

* prj-dect.adb, prj-nmsc.adb, prj-attr.adb, snames.ads-tmpl
(Aggregate projects): added support for parsing aggregate projects.
In particular, check the presence and value of the new attributes
related to aggregate projects, ie Project_Files, Project_Path
and External.
(Check_Attribute_Allowed, Check_Package_Allowed,
Rename_Obsolescent_Attributes): new subprogram, extracting code
from existing subprogram to keep their sizes smaller.
(Check_Aggregate_Project, Check_Abstract_Project,
Check_Missing_Sources): new subprograms
(Check): remove comments that duplicated either the name of the
following subprogram call, or the comment on that subprogram.
* prj-part.adb (Check_Extending_All_Imports): New subprogram, extracted
from Parse_Single_Project.
(Check_Aggregate_Imports): new subprogram.

From-SVN: r164968

14 years ago[multiple changes]
Arnaud Charlet [Tue, 5 Oct 2010 09:16:23 +0000 (11:16 +0200)]
[multiple changes]

2010-10-05  Vincent Celier  <celier@adacore.com>

* make.adb (Check): When compiling with -gnatc, recompile if the ALI
file has not been generated for the current source, for example if it
has been generated for the spec, but we are compiling the body.

2010-10-05  Bob Duff  <duff@adacore.com>

* xgnatugn.adb: Remove unused procedure.

From-SVN: r164967

14 years agoDaily bump.
GCC Administrator [Tue, 5 Oct 2010 00:18:20 +0000 (00:18 +0000)]
Daily bump.

From-SVN: r164966

14 years agore PR debug/45849 (ICE: in emit_note_insn_var_location, at var-tracking.c:7336 with...
Jakub Jelinek [Mon, 4 Oct 2010 22:02:28 +0000 (00:02 +0200)]
re PR debug/45849 (ICE: in emit_note_insn_var_location, at var-tracking.c:7336 with -O -g)

PR debug/45849
* var-tracking.c (strip_pointer_flags): New function.
(emit_note_insn_var_location): If rtx_equal_p check failed,
retry on locations simplified with simplify_replace_fn_rtx
and strip_pointer_flags as its callback.

* gcc.dg/debug/pr45849.c: New test.

From-SVN: r164962

14 years agogimple-fold.c (static_object_in_other_unit_p): Rename to...
Jan Hubicka [Mon, 4 Oct 2010 20:59:07 +0000 (22:59 +0200)]
gimple-fold.c (static_object_in_other_unit_p): Rename to...

* gimple-fold.c (static_object_in_other_unit_p): Rename to...
(can_refer_decl_in_current_unit_p): ... this one; reverse return
value; handle comdats too.
(canonicalize_constructor_val): Use it; handle function_decls
correctly.
(gimple_fold_obj_type_ref_known_binfo): Likewise.
* gimple.c (get_base_address): Accept all kinds of decls.

From-SVN: r164961

14 years agoflags.h (g_switch_value, [...]): Remove.
Joseph Myers [Mon, 4 Oct 2010 20:48:39 +0000 (21:48 +0100)]
flags.h (g_switch_value, [...]): Remove.

* flags.h (g_switch_value, g_switch_set): Remove.
* opts.c (g_switch_value, g_switch_set): Remove.
* config/g.opt (G): Add Var(g_switch_value).
* config/alpha/alpha.c (alpha_handle_option): Don't handle -G
here.
(alpha_option_override): Check global_options_set.x_g_switch_value
instead of g_switch_set.
(alpha_in_small_data_p): Remove cast in comparison with
g_switch_value.
* config/alpha/elf.h (ASM_OUTPUT_ALIGNED_LOCAL): Cast
g_switch_value to unsigned HOST_WIDE_INT.
* config/frv/frv.c (frv_const_unspec_p): Remove cast in comparison
with g_switch_value.
(frv_handle_option): Don't handle -G here.
(frv_option_override): Check global_options_set.x_g_switch_value
instead of g_switch_set.  Don't modify g_switch_set.
(frv_in_small_data_p): Remove cast in comparison with
g_switch_value.
* config/frv/frv.h (ASM_OUTPUT_ALIGNED_DECL_LOCAL): Cast
g_switch_value to unsigned HOST_WIDE_INT.
* config/ia64/ia64.c (ia64_handle_option): Don't handle -G here.
(ia64_option_override): Check global_options_set.x_g_switch_value
instead of g_switch_set.
* config/lm32/lm32.c (lm32_handle_option, TARGET_HANDLE_OPTION):
Remove.
(lm32_in_small_data_p): Remove cast in comparison with
g_switch_value.
* config/lm32/lm32.h (ASM_OUTPUT_ALIGNED_LOCAL,
ASM_OUTPUT_ALIGNED_COMMON): Cast g_switch_value to unsigned
HOST_WIDE_INT.
* config/m32r/m32r.c (m32r_handle_option): Don't handle -G here.
(m32r_init): Check global_options_set.x_g_switch_value instead of
g_switch_set.
(m32r_in_small_data_p): Remove cast in comparison with
g_switch_value.
(m32r_file_start): Format g_switch_value with %d.
* config/m32r/m32r.h (ASM_OUTPUT_ALIGNED_COMMON,
ASM_OUTPUT_ALIGNED_BSS): Cast g_switch_value to unsigned
HOST_WIDE_INT.
* config/microblaze/microblaze.c (microblaze_handle_option): Don't
handle -G here.
(microblaze_option_override): Check
global_options_set.x_g_switch_value instead of g_switch_set.
* config/mips/mips.c (mips_handle_option): Don't handle -G here.
(mips_option_override): Check global_options_set.x_g_switch_value
instead of g_switch_set.
* config/rs6000/rs6000.c (rs6000_handle_option): Don't handle -G
here.
(rs6000_file_start): Format g_switch_value with %d.
(small_data_operand, rs6000_elf_in_small_data_p): Remove casts in
comparisons with g_switch_value.
* config/rs6000/sysv4.h (SUBTARGET_OVERRIDE_OPTIONS): Check
global_options_set.x_g_switch_value instead of g_switch_set.
* config/rs6000/vxworks.h (SUBSUBTARGET_OVERRIDE_OPTIONS): Check
global_options_set.x_g_switch_value instead of g_switch_set.
* config/score/score.c (score_handle_option): Don't handle -G
here.
* config/score/score3.c (score3_option_override): Check
global_options_set.x_g_switch_value instead of g_switch_set.
* config/score/score7.c (score7_option_override): Check
global_options_set.x_g_switch_value instead of g_switch_set.

From-SVN: r164960

14 years agocommon.opt (fira-coalesce): Remove.
Vladimir Makarov [Mon, 4 Oct 2010 20:37:57 +0000 (20:37 +0000)]
common.opt (fira-coalesce): Remove.

2010-10-04  Vladimir Makarov  <vmakarov@redhat.com>

* common.opt (fira-coalesce): Remove.

* doc/invoke.texi (flag_ira_coalesce): Remove.

* ira-color.c (allocno_coalesced_p): Move before
copy_freq_compare_func.
processed_coalesced_allocno_bitmap): Ditto.
(update_conflict_hard_regno_costs): Don't use
ALLOCNO_FIRST_COALESCED_ALLOCNO.
(allocno_cost_compare_func, print_coalesced_allocno): Remove.
(assign_hard_reg): Assume no coalesced allocnos.
(get_coalesced_allocnos_attributes): Remove.
(bucket_allocno_compare_func): Assume no coalesced allocnos.
(push_allocno_to_stack): Ditto.
(remove_allocno_from_bucket_and_push): Use
ira_print_expanded_allocno instead of print_coalesced_allocno.
(push_allocnos_to_stack): Assume uncoalesced allocnos.
(all_conflicting_hard_regs_coalesced): Ditto.  Rename to
all_conflicting_hard_regs.
(setup_allocno_available_regs_num): Assume uncoalesced allocnos.
(setup_allocno_left_conflicts_size): Ditto.
(put_allocno_into_bucket): Ditto.
(copy_freq_compare_func): Remove.
(copy_freq_compare_func, merge_allocnos): Move before
coalesced_pseudo_reg_freq_compare.
coalesced_allocno_conflict_p): Ditto.
(coalesced_allocno_conflict_p, coalesce_allocnos): Ditto.  Remove
parameter.  Assume it true.
(color_allocnos): Assume uncoalesced allocnos.  Use
ira_print_expanded_allocno instead of print_coalesced_allocno.
(ira_sort_regnos_for_alter_reg): Call coalesce_allocnos without
parameter.

* ira.c: Remove comment about coalescing.

From-SVN: r164959

14 years agomips.h (target_flags_explicit): Declare for GENERATOR_FILE.
Joseph Myers [Mon, 4 Oct 2010 20:10:06 +0000 (21:10 +0100)]
mips.h (target_flags_explicit): Declare for GENERATOR_FILE.

* config/mips/mips.h (target_flags_explicit): Declare for
GENERATOR_FILE.

From-SVN: r164958

14 years agofunctional (function<>::swap): Use std::swap.
Paolo Carlini [Mon, 4 Oct 2010 17:28:24 +0000 (17:28 +0000)]
functional (function<>::swap): Use std::swap.

2010-10-04  Paolo Carlini  <paolo.carlini@oracle.com>

* include/std/functional (function<>::swap): Use std::swap.
* include/tr1/functional (function<>::swap): Likewise.

From-SVN: r164952

14 years agoMark linker Makefile rules for job server build
Andi Kleen [Mon, 4 Oct 2010 17:09:45 +0000 (17:09 +0000)]
Mark linker Makefile rules for job server build

-fwhopr=jobserver requires telling GNU make that the linker (= lto)
rules support job server, so that the necessary jobserver
information is passed through.

Add + to all the executable targets that run LTO for this purpose.

This improves build performance with a -fwhopr=jobserver
bootstrap (or BUILD_CONFIG=bootstrap-lto) significantly.

I didn't change Ada because that apparently doesn't support LTO.

Passes bootstrap and test suite. Ok to commit?

gcc/

2010-10-04  Andi Kleen <ak@linux.intel.com>

* Makefile.in (xgcc, cpp, cc1, collect2, lto-wrapper, gcov,
        gcov-dump, cc1-dummy, genprog, build/gcov-iov):
        Add + to build rule.

gcc/cp/

2010-10-04  Andi Kleen <ak@linux.intel.com>

* Make-lang.in (g++, cc1plus): Add + to build rule.

gcc/fortran/

2010-10-04  Andi Kleen <ak@linux.intel.com>

* Make-lang.in (gfortran, f951): Add + to build rule.

gcc/java/

2010-10-04  Andi Kleen <ak@linux.intel.com>

* Make-lang.in (xgcj, jc1, jcf-dump, jvgenmain):
        Add + to build rule.

gcc/lto/

2010-10-04  Andi Kleen <ak@linux.intel.com>

* Make-lang.in (lto1): Add + to build rule.

gcc/objc/

2010-10-04  Andi Kleen <ak@linux.intel.com>

* Make-lang.in (cc1obj-dummy, cc1obj): Add + to build rule.

gcc/objcp/

2010-10-04  Andi Kleen <ak@linux.intel.com>

* Make-lang.in (cc1objplus-dummy, cc1objplus): Add + to build rule.

More plus fixes

From-SVN: r164949

14 years agot-linux64 (MULTILIB_OSDIRNAMES): Use ../lib32 as the multilib osdirname if it exists.
Matthias Klose [Mon, 4 Oct 2010 16:51:59 +0000 (16:51 +0000)]
t-linux64 (MULTILIB_OSDIRNAMES): Use ../lib32 as the multilib osdirname if it exists.

2010-10-04  Matthias Klose  <doko@ubuntu.com>

        * config/sparc/t-linux64 (MULTILIB_OSDIRNAMES): Use ../lib32 as the
        multilib osdirname if it exists.
        * config/s390/t-linux64 (MULTILIB_OSDIRNAMES): Likewise.

From-SVN: r164947

14 years agotree.c (decl_storage_duration): New.
Jason Merrill [Mon, 4 Oct 2010 16:18:03 +0000 (12:18 -0400)]
tree.c (decl_storage_duration): New.

* tree.c (decl_storage_duration): New.
* cp-tree.h: Declare it.
(duration_kind): Return values.

From-SVN: r164944

14 years agore PR middle-end/45876 (ICE: verify_gimple failed)
Jakub Jelinek [Mon, 4 Oct 2010 15:49:13 +0000 (17:49 +0200)]
re PR middle-end/45876 (ICE: verify_gimple failed)

PR middle-end/45876
* fold-const.c (fold_binary_loc) <case BIT_AND_EXPR>: Use
arg0's type or its unsigned counterpart as utype.  Convert
arg1 to utype unconditionally.

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

From-SVN: r164943

14 years ago[multiple changes]
Arnaud Charlet [Mon, 4 Oct 2010 15:07:59 +0000 (17:07 +0200)]
[multiple changes]

2010-10-04  Vincent Celier  <celier@adacore.com>

* a-direct.adb (Copy_File): Interpret the Form parameter and call
System.OS_Lib.Copy_File to do the work accordingly. Raise Use_Error if
the Form parameter contains an incorrect value for field preserve= or
mode=.
* a-direct.ads (Create_Directory, Create_Path): Indicate that the Form
parameter is ignored.
(Copy_File): Indicate the interpretation of the Form parameter.

2010-10-04  Vincent Celier  <celier@adacore.com>

* make.adb (Gnatmake): When there are no foreign languages declared and
a main in attribute Main of the main project does not exist or is a
source of another project, fail immediately before attempting
compilation.

2010-10-04  Javier Miranda  <miranda@adacore.com>

* exp_disp.ads (Convert_Tag_To_Interface): New function which must be
used to convert a node referencing a tag to a class-wide interface type.
* exp_disp.adb (Convert_Tag_To_Interface): New function.
(Expand_Interface_Conversion): Replace invocation of
Unchecked_Conversion by new function Convert_Tag_To_Interface.
(Write_DT): Add support for null primitives.
* exp_ch3.adb (Expand_N_Object_Declaration): For tagged type objects,
cleanup code that handles interface conversions and avoid unchecked
conversion of referenced tag components.
* exp_ch5.adb (Expand_N_Assignment_Statement): Code cleanup. Avoid
unrequired conversions when generating a dispatching call to _assign.
* sprint.adb (Write_Itype): Fix wrong output of not null access itypes.

2010-10-04  Ed Schonberg  <schonberg@adacore.com>

* exp_ch4.adb (Expand_N_Op_Not): Handle properly both operands when the
parent is a binary boolean operation and the operand is an unpacked
array.
(Build_Boolean_Array_Proc_Call): If the operands are both negations, the
operands of the rewritten node are the operands of the negations, not
the negations themselves.

From-SVN: r164942

14 years agoexpr.c (expand_assignment): Add assertion to prevent emitting null rtx for movmisalig...
Julian Brown [Mon, 4 Oct 2010 14:59:30 +0000 (14:59 +0000)]
expr.c (expand_assignment): Add assertion to prevent emitting null rtx for movmisalign pattern.

gcc/
* expr.c (expand_assignment): Add assertion to prevent emitting
null rtx for movmisalign pattern.
(expand_expr_real_1): Likewise.
* config/arm/arm.c (arm_builtin_support_vector_misalignment): New.
(TARGET_VECTORIZE_SUPPORT_VECTOR_MISALIGNMENT): New. Use above.
(arm_vector_alignment_reachable): New.
(TARGET_VECTORIZE_VECTOR_ALIGNMENT_REACHABLE): New. Use above.
(neon_vector_mem_operand): Disallow PRE_DEC for misaligned loads.
(arm_print_operand): Include alignment qualifier in %A.
* config/arm/neon.md (UNSPEC_MISALIGNED_ACCESS): New constant.
(movmisalign<mode>): New expander.
(movmisalign<mode>_neon_store, movmisalign<mode>_neon_load): New
insn patterns.

gcc/testsuite/
* gcc.dg/vect/vect-42.c: Use vect_element_align instead of
vect_hw_misalign.
* gcc.dg/vect/vect-60.c: Likewise.
* gcc.dg/vect/vect-56.c: Likewise.
* gcc.dg/vect/vect-93.c: Likewise.
* gcc.dg/vect/no-scevccp-outer-8.c: Likewise.
* gcc.dg/vect/vect-95.c: Likewise.
* gcc.dg/vect/vect-96.c: Likewise.
* gcc.dg/vect/vect-outer-5.c: Use quad-word vectors when available.
* gcc.dg/vect/slp-25.c: Likewise.
* gcc.dg/vect/slp-3.c: Likewise.
* gcc.dg/vect/vect-multitypes-1.c: Likewise.
* gcc.dg/vect/no-vfa-pr29145.c: Likewise.
* gcc.dg/vect/vect-multitypes-4.c: Likewise. Use vect_element_align.
* gcc.dg/vect/vect-109.c: Likewise.
* gcc.dg/vect/vect-peel-1.c: Likewise.
* gcc.dg/vect/vect-peel-2.c: Likewise.
* lib/target-supports.exp
(check_effective_target_arm_vect_no_misalign): New.
(check_effective_target_vect_no_align): Use above.
(check_effective_target_vect_element_align): New.
(add_options_for_quad_vectors): New.

From-SVN: r164941

14 years ago[multiple changes]
Arnaud Charlet [Mon, 4 Oct 2010 14:09:52 +0000 (16:09 +0200)]
[multiple changes]

2010-10-04  Robert Dewar  <dewar@adacore.com>

* sem_ch13.adb (Set_Biased): New procedure, now used throughout, adds
name of entity to biased warning msg.
(Analyze_Enumeration_Representation_Clause): Remove attempt to use
biased rep (wrong and never worked anyway).

2010-10-04  Arnaud Charlet  <charlet@adacore.com>

* sem_elab.adb: Minor reformatting.

2010-10-04  Ed Schonberg  <schonberg@adacore.com>

* exp_ch4.adb (Expand_N_Null): Handle properly the case of a subtype of
an access_to_protected subprogram type, and convert null value into
corresponding aggregate.

2010-10-04  Eric Botcazou  <ebotcazou@adacore.com>

* gnat_ugn.texi: Clarify first point of 7.1.5 about pragma Inline.

2010-10-04  Eric Botcazou  <ebotcazou@adacore.com>

* make.adb (Scan_Make_Arg): Pass -Oxxx switches to the linker as well.
* gnatlink.adb (Gnatlink): Filter out -Oxxx switches for CLI, RTX and
AAMP.

2010-10-04  Eric Botcazou  <ebotcazou@adacore.com>

* sem_ch4.adb (Analyze_Indexed_Component_Form): Remove redundant test
for N_Operator_Symbol.
(Indicate_Name_And_Type): Likewise.
* sem_ch8.adb (Analyze_Subprogram_Renaming): Likewise.
* sem_res.adb (Resolve): Likewise.
* sem_type.adb (Add_One_Interp): Likewise.
(Disambiguate): Likewise.

2010-10-04  Vincent Celier  <celier@adacore.com>

* osint.adb (Read_Library_Info_From_Full): If object timestamp is less
than ALI file timestamp, return null.

2010-10-04  Vincent Celier  <celier@adacore.com>

* prj-makr.adb (Finalize): Invoke Pretty_Print with Max_Length set to 79
* prj-pp.adb (Pretty_Print): New parameter Max_Line_Length, that
replaces global constant with the same name. When a line is too long,
indent properly the next continuation line.
* prj-pp.ads (Pretty_Print): New parameter Max_Line_Length with a range
from 50 to 255, defaulted to 255, to indicate the maximum length of
lines in the project file.

2010-10-04  Eric Botcazou  <ebotcazou@adacore.com>

* sem_ch7.adb (Analyze_Package_Body_Helper) <Has_Referencer>: New
Check_Subprogram_Ref function and Check_Subprogram_Refs instantiation
of Traverse_Func on it to look for subprogram references in a body.
Call Check_Subprogram_Refs on the body of inlined subprograms at the
outer level and keep clearing the Is_Public flag of subprograms as long
as it returns OK.  Do not look at anything else than subprograms once
an inlined subprogram has been seen.

From-SVN: r164940

14 years ago[multiple changes]
Arnaud Charlet [Mon, 4 Oct 2010 13:59:18 +0000 (15:59 +0200)]
[multiple changes]

2010-10-04  Robert Dewar  <dewar@adacore.com>

* exp_cg.adb: Minor reformatting.

2010-10-04  Javier Miranda  <miranda@adacore.com>

* exp_cg.adb (Expand_N_Assignment_Statement): Restore tag check when
the target object is an interface.
* sem_disp.adb (Propagate_Tag): If the controlling argument is an
interface type then we generate an implicit conversion to force
displacement of the pointer to the object to reference the secondary
dispatch table associated with the interface.

2010-10-04  Robert Dewar  <dewar@adacore.com>

* sem_ch13.adb (Analyze_Enumeration_Representation_Clause): Set
Enumeration_Rep_Expr to point to the literal, not the identifier.
(Analyze_Enumeration_Representation_Clause): Improve error message for
size too small for enum rep value
(Analyze_Enumeration_Representation_Clause): Fix size test to use proper
size (RM_Size, not Esize).

From-SVN: r164939

14 years ago[multiple changes]
Arnaud Charlet [Mon, 4 Oct 2010 13:53:10 +0000 (15:53 +0200)]
[multiple changes]

2010-10-04  Robert Dewar  <dewar@adacore.com>

* s-taprop-vxworks.adb, sem_res.adb: Minor reformatting.

2010-10-04  Javier Miranda  <miranda@adacore.com>

* exp_cg.adb (Write_Call_Info): Code clean up.

From-SVN: r164938

14 years ago[multiple changes]
Arnaud Charlet [Mon, 4 Oct 2010 13:46:35 +0000 (15:46 +0200)]
[multiple changes]

2010-10-04  Arnaud Charlet  <charlet@adacore.com>

* s-taprop-mingw.adb (Create_Task): Initialize Thread_Id field to 0.

2010-10-04  Robert Dewar  <dewar@adacore.com>

* exp_cg.adb: Minor code reorganization
Minor reformatting.
* exp_ch5.adb, prj-nmsc.adb: Minor reformatting.

From-SVN: r164937

14 years ago[multiple changes]
Arnaud Charlet [Mon, 4 Oct 2010 13:43:01 +0000 (15:43 +0200)]
[multiple changes]

2010-10-04  Bob Duff  <duff@adacore.com>

* sem_res.adb (Resolve_Type_Conversion): If a type conversion is needed
to make a qualified expression into a name (syntax-wise), then do not
consider it redundant.

2010-10-04  Thomas Quinot  <quinot@adacore.com>

* sem_warn.ads: Fix typo.

2010-10-04  Javier Miranda  <miranda@adacore.com>

* exp_cg.adb (Is_Predefined_Dispatching_Operation): Handle suffix in
TSS names.
(Write_Call_Info): Add missing support for renamed primitives.

2010-10-04  Thomas Quinot  <quinot@adacore.com>

* exp_ch5.adb (Make_Field_Expr): New subprogram, to factor duplicated
code between Make_Component_List_Assign and Make_Field_Assign.

2010-10-04  Vincent Celier  <celier@adacore.com>

* prj-nmsc.adb (Get_Directories): For non extending projects that
declare that they have no sources, do not create a non existing object
or exec directory if builder switch -p is used.

2010-10-04  Sergey Rybin  <rybin@adacore.com>

* gnat_ugn.texi (gnatcheck): Change the description of the report file
format.

2010-10-04  Ed Falis  <falis@adacore.com>

* s-taprop-vxworks.adb (Is_Task_Context): Import VxWorks intContext to
determine whether Set_True is called from a task or an ISR.
(Set_True): test for being in a task context before trying to
dereference Defer_Abort or Undefer_Abort.

From-SVN: r164936

14 years ago[multiple changes]
Arnaud Charlet [Mon, 4 Oct 2010 13:38:32 +0000 (15:38 +0200)]
[multiple changes]

2010-10-04  Robert Dewar  <dewar@adacore.com>

* sem_res.adb, sinput-l.adb: Minor reformatting.

2010-10-04  Hristian Kirtchev  <kirtchev@adacore.com>

* exp_ch5.adb (Expand_N_Assignment_Statement): Do not generate a tag
check when the target object is an interface since the expression of
the right hand side must only cover the interface.

From-SVN: r164935

14 years agofrontend.adb: Set Lib.Parsing_Main_Extended_Source to True before loading the main...
Vincent Celier [Mon, 4 Oct 2010 13:27:57 +0000 (13:27 +0000)]
frontend.adb: Set Lib.Parsing_Main_Extended_Source to True before loading the main source...

2010-10-04  Vincent Celier  <celier@adacore.com>

* frontend.adb: Set Lib.Parsing_Main_Extended_Source to True before
loading the main source, so that if it is preprocessed and -gnateG is
used, the preprocessed file is written.
* lib.ads (Analysing_Subunit_Of_Main): New global variable to indicate
if a subunit is from the main unit when it is loaded.
* sem_ch10.adb (Analyze_Proper_Body): Set Lib.Analysing_Subunit_Of_Main
to True before loading a subunit.
* sem_ch12.adb (Copy_Generic_Node): Set Lib.Analysing_Subunit_Of_Main
to True when the main is a generic unit before loading one of its
subunits.
* sinput-l.adb (Load_File): If -gnateG is used, write the preprocessed
file only for the main unit (spec, body and subunits).

From-SVN: r164934

14 years ago[multiple changes]
Arnaud Charlet [Mon, 4 Oct 2010 13:16:56 +0000 (15:16 +0200)]
[multiple changes]

2010-10-04  Vincent Celier  <celier@adacore.com>

* sinput-l.adb (Load_File): Do not fail when switch -gnateG is
specified and the processed file cannot be written. Just issue a
warning and continue.

2010-10-04  Thomas Quinot  <quinot@adacore.com>

* sem_res.adb: Minor reformatting.

2010-10-04  Ed Schonberg  <schonberg@adacore.com>

* sem_ch8.adb (Analyze_Subprogram_Renaming): If the renamed operation
is an overridden inherited operation, the desired operation is the
overriding one, which is the alias of the visible one.

2010-10-04  Ed Schonberg  <schonberg@adacore.com>

* sem_ch6.adb (Find_Corresponding_Spec): Check that the wrapper body is
present before deleting from the tree, when an inherited function with
a controlling result that returns a null extension is overridden by a
later declaration or body.

2010-10-04  Gary Dismukes  <dismukes@adacore.com>

* checks.adb: Update comment.

From-SVN: r164933

14 years agooptc-gen.awk: Define global_options_set.
Joseph Myers [Mon, 4 Oct 2010 11:51:00 +0000 (12:51 +0100)]
optc-gen.awk: Define global_options_set.

* optc-gen.awk: Define global_options_set.  Don't define
target_flags_explicit.
* opth-gen.awk: Declare global_options_set.  Define
target_flags_explicit as macro.
* opts-common.c (handle_option): Take opts_set and generated_p
parameters.
(handle_generated_option, read_cmdline_option, set_option): Take
opts_set parameter.
(set_option): Use opts_set instead of hardcoding target_flags and
target_flags_explicit.
* opts.c (sel_sched_switch_set, profile_arc_flag_set,
flag_profile_values_set, flag_unroll_loops_set, flag_tracer_set,
flag_value_profile_transformations_set, flag_peel_loops_set,
flag_branch_probabilities_set, flag_inline_functions_set,
flag_ipa_cp_set, flag_ipa_cp_clone_set,
flag_predictive_commoning_set, flag_unswitch_loops_set,
flag_gcse_after_reload_set): Remove.
(common_handle_option, lang_handle_option, target_handle_option):
Take opts_set parameter.  Assert that it is &global_options_set.
(common_handle_option): Don't set _set variables.  Check opts_set
instead of such variables.
(enable_warning_as_error): Pass &global_options_set to
handle_generated_option.
* opts.h (cl_option_handler_func.handler, set_option,
handle_option, handle_generated_option, read_cmdline_option): Add
opts_set parameters.
(handle_option): Add generated_p parameter.
* config/i386/i386.c (ix86_function_specific_save,
ix86_function_specific_restore): Updat for renaming of
target_flags_explicit field.
* config/i386/i386.opt (target_flags_explicit): Rename to
ix86_target_flags_explicit.
* config/ia64/ia64.c (ia64_override_options_after_change): Check
global_options_set.x_flag_selective_scheduling and
global_options_set.x_flag_selective_scheduling2, not
sel_sched_switch_set.
* flags.h (sel_sched_switch_set,
flag_speculative_prefetching_set): Remove.
* gcc.c (driver_handle_option): Take opts_set parameter.  Assert
that it is &global_options_set.
(process_command): Pass &global_options_set to
read_cmdline_option.
* lto-opts.c (lto_reissue_options): Pass &global_options_set to
set_option.
* toplev.c (target_flags_explicit): Remove.

c-family:
* c-opts.c (c_common_handle_option): Pass &global_options_set to
handle_generated_option.

From-SVN: r164932

14 years agore PR middle-end/45871 (lto bootstrap miscompiles expmed.c)
Jan Hubicka [Mon, 4 Oct 2010 11:11:57 +0000 (13:11 +0200)]
re PR middle-end/45871 (lto bootstrap miscompiles expmed.c)

PR middle-end/45871
* tree-ssa-ccp.c (get_base_constructor): Take HOST_WIDE_INT offset;
use get_ref_base_and_offset to handle references.
(fold_const_aggregate_ref): Update.

From-SVN: r164931

14 years agore PR tree-optimization/45572 (various ICEs with -finline-small-functions -findirect...
Martin Jambor [Mon, 4 Oct 2010 10:15:10 +0000 (12:15 +0200)]
re PR tree-optimization/45572 (various ICEs with -finline-small-functions -findirect-inlining -finline-functions)

2010-10-04  Martin Jambor  <mjambor@suse.cz>

PR tree-optimization/45572
* ipa-prop.c (ipa_make_edge_direct_to_target): Call
ipa_check_create_node_params.
* ipa-inline.c (add_new_edges_to_heap): Do not insert inlined edges.

* testsuite/g++.dg/ipa/pr45572-1.C: New test.
* testsuite/g++.dg/ipa/pr45572-2.C: Likewise.

From-SVN: r164930

14 years agopasses.texi: Clean up.
Yao Qi [Mon, 4 Oct 2010 09:59:54 +0000 (09:59 +0000)]
passes.texi: Clean up.

2010-10-04  Yao Qi  <yao@codesourcery.com>

        * doc/passes.texi: Clean up.

From-SVN: r164929

14 years agof95-lang.c (current_translation_unit): New global variable.
Richard Guenther [Mon, 4 Oct 2010 09:19:55 +0000 (09:19 +0000)]
f95-lang.c (current_translation_unit): New global variable.

2010-10-04  Richard Guenther  <rguenther@suse.de>

* f95-lang.c (current_translation_unit): New global variable.
(gfc_create_decls): Build a translation-unit decl.
(pushdecl): In the global binding-level use the
translation-unit decl as DECL_CONTEXT.
* trans-decl.c (gfc_get_symbol_decl): Use DECL_FILE_SCOPE_P.
(build_function_decl): Likewise.  Delay setting the assembler
name, leave setting of DECL_CONTEXT to pushdecl.
(trans_function_start): Use DECL_FILE_SCOPE_P.
(gfc_create_module_variable): Likewise.  Remove questionable
asserts.
* trans.c (gfc_generate_module_code): Likewise.

From-SVN: r164928