OSDN Git Service

pf3gnuchains/gcc-fork.git
13 years ago * config/fr30/fr30-protos.h (fr30_num_arg_regs): Delete.
froydnj [Thu, 28 Oct 2010 19:51:34 +0000 (19:51 +0000)]
* config/fr30/fr30-protos.h (fr30_num_arg_regs): Delete.
* config/fr30/fr30.h (FUNCTION_ARG, FUNCTION_ARG_ADVANCE): Delete.
* config/fr30/fr30.c (fr30_num_arg_regs): Make static.  Take a
const_tree.
(fr30_function_arg): New function.
(fr30_function_arg_advance): New function.
(TARGET_FUNCTION_ARG, TARGET_FUNCTION_ARG_ADVANCE): Define.

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

13 years ago * config/frv/frv-protos.h (frv_function_arg): Delete.
froydnj [Thu, 28 Oct 2010 19:45:32 +0000 (19:45 +0000)]
* config/frv/frv-protos.h (frv_function_arg): Delete.
(frv_function_arg_advance): Delete.
* config/frv/frv.h (FUNCTION_ARG, FUNCTION_ARG_ADVANCE): Delete.
* config/frv/frv.c (frv_function_arg): Rename to...
(frv_function_arg_1): Make static.  Take const_tree and bool
arguments.
(frv_function_arg, frv_function_incoming_arg): New functions.
(frv_function_arg_advance): Make static.  Take a const_tree and
a bool.
(TARGET_FUNCTION_ARG, TARGET_FUNCTION_INCOMING_ARG): Define.
(TARGET_FUNCTION_ARG_ADVANCE): Define.

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

13 years agoAdd ARM VFP ABI support to libffi.
green [Thu, 28 Oct 2010 18:11:11 +0000 (18:11 +0000)]
Add ARM VFP ABI support to libffi.

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

13 years ago PR target/46153
uros [Thu, 28 Oct 2010 17:45:52 +0000 (17:45 +0000)]
PR target/46153
* config/i386/sse.md (sse_movhlps_exp): Use destination
returned from ix86_fixup_binary_operands to expand insn.
(sse_movlhps_exp): Ditto.
(sse_loadhps_exp): Ditto.
(sse_loadlps_exp): Ditto.
(sse2_loadhpd_exp): Ditto.
(sse2_loadlpd_exp): Ditto.
(*avx_movhlps): Use ix86_binary_operator_ok in insn predicate.
(sse_movhlps): Ditto.
(*avx_movlhps): Ditto.
(sse_movlhps): Ditto.
(*avx_loadhps): Ditto.
(sse_loadhps): Ditto.
(*avx_loadhpd): Ditto.
(sse_loadhpd): Ditto.
(*avx_storelps): Prevent both operands in memory.
(sse_storelps): Ditto.

testsuite/ChangeLog:

PR target/46153
* gcc.target/i386/pr46153.c: New test.

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

13 years ago2010-10-28 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Thu, 28 Oct 2010 16:01:05 +0000 (16:01 +0000)]
2010-10-28  Paolo Carlini  <paolo.carlini@oracle.com>

PR libstdc++/44436 (partial)
* include/bits/hashtable.h (_Hashtable<>::insert(value_type&&),
insert(_Pair&&), insert(const_iterator, value_type&&),
insert(const_iterator, _Pair&&)): Add.
(_M_allocate_node, _M_insert, _M_insert_bucket): Templatize.
* include/bits/hashtable_policy.h (__detail::_Select1st): Add; use
it throughout.
(_Map_base<>::operator[](_Key&&)): Add.
* include/bits/unordered_map.h: Use __detail::_Select1st throughout.
* include/debug/unordered_map: Update.
* include/debug/unordered_set: Likewise.
* include/profile/unordered_map: Likewise.
* include/profile/unordered_set: Likewise.
* testsuite/util/testsuite_rvalref.h (struct hash<rvalstruct>): Add;
minor tweaks throughout, use deleted special members.
* testsuite/23_containers/unordered_map/insert/map_single_move-1.cc:
New.
* testsuite/23_containers/unordered_map/insert/map_single_move-2.cc:
Likewise.
* testsuite/23_containers/unordered_map/insert/array_syntax_move.cc:
Likewise.
* testsuite/23_containers/unordered_multimap/insert/
multimap_single_move-1.cc: Likewise.
* testsuite/23_containers/unordered_multimap/insert/
multimap_single_move-2.cc: Likewise.
* testsuite/23_containers/unordered_set/insert/set_single_move.cc:
Likewise.
* testsuite/23_containers/unordered_multiset/insert/
multiset_single_move.cc: Likewise.

* testsuite/23_containers/unordered_map/insert/array_syntax.cc:
Minor cosmetic changes.

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

13 years ago2010-10-28 Andrew Stubbs <ams@codesourcery.com>
ams [Thu, 28 Oct 2010 12:36:14 +0000 (12:36 +0000)]
2010-10-28  Andrew Stubbs  <ams@codesourcery.com>

gcc/
* config/arm/arm.c (const_ok_for_arm): Support 0xXY00XY00 pattern
constants in thumb2.

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

13 years ago2010-10-28 Paolo Bonzini <bonzini@gnu.org>
bonzini [Thu, 28 Oct 2010 10:58:48 +0000 (10:58 +0000)]
2010-10-28  Paolo Bonzini  <bonzini@gnu.org>

* configure.ac: Rewrite DGUX check to use GC_CFLAGS, and -O0 check
to remove the need for MY_CFLAGS.
* Makefile.am: Do not use @...@ substitutions.  Use AM_CXXFLAGS,
AM_CFLAGS and AM_LDFLAGS instead of redefining LTCOMPILE and LINK.
Use "override" to disable -O2 when required.
* configure: Regenerate.
* Makefile.in: Regenerate.
* include/Makefile.in: Regenerate.

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

13 years ago * combine.c (set_nonzero_bits_and_sign_copies): Use unsigned
ebotcazou [Thu, 28 Oct 2010 10:32:03 +0000 (10:32 +0000)]
* combine.c (set_nonzero_bits_and_sign_copies): Use unsigned
arithmetics in masking operations.
(contains_muldiv): Likewise.
(try_combine): Likewise.
(find_split_point): Likewise.
(combine_simplify_rtx): Likewise.
(simplify_if_then_else): Likewise.
(simplify_set): Likewise.
(expand_compound_operation): Likewise.
(expand_field_assignment): Likewise.
(make_extraction): Likewise.
(extract_left_shift): Likewise.
(make_compound_operation): Likewise.
(force_to_mode): Likewise.
(make_field_assignment): Likewise.
(reg_nonzero_bits_for_combine): Likewise.
(simplify_shift_const_1): Likewise.
(simplify_comparison): Likewise.

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

13 years agoDaily bump.
gccadmin [Thu, 28 Oct 2010 00:18:38 +0000 (00:18 +0000)]
Daily bump.

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

13 years agochecking in Nathan's patch because I accidently checked in part of it
sje [Wed, 27 Oct 2010 22:51:18 +0000 (22:51 +0000)]
checking in Nathan's patch because I accidently checked in part of it
with my earlier patch.  Also adding ChangeLog entry I forgot.

2010-10-27  Nathan Froyd  <froydnj@codesourcery.com>

        * config/ia64/ia64-protos.h (ia64_function_arg): Delete.
        (ia64_function_arg_advance): Delete.
        * config/ia64/ia64.h (FUNCTION_ARG, FUNCTION_INCOMING_ARG): Delete.
        (FUNCTION_ARG_ADVANCE): Delete.
        * config/ia64/ia64.c (ia64_function_arg): Rename to...
        (ia64_function_arg_1): ...this.  Make static.  Take const_tree and
        bool arguments.
        (ia64_function_arg, ia64_function_incoming_arg): New functions.
        (ia64_function_arg_advance): Make static.  Take a const_tree and
        a bool.
        (TARGET_FUNCTION_ARG, TARGET_FUNCTION_INCOMING_ARG): Define.
        (TARGET_FUNCTION_ARG_ADVANCE): Define.

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

13 years ago2010-10-27 Steve Ellcey <sje@cup.hp.com>
sje [Wed, 27 Oct 2010 22:44:31 +0000 (22:44 +0000)]
2010-10-27  Steve Ellcey  <sje@cup.hp.com>

* doc/tm.texi.in (TARGET_GET_RAW_RESULT_MODE): New.
(TARGET_GET_RAW_ARG_MODE): New.
* doc/tm.texi: Regenerate.
* target.def (get_raw_result_mode): New.
(get_raw_arg_mode): New.
* targhooks.c (default_get_reg_raw_mode): New.
* targhooks.h (default_get_reg_raw_mode): New.
* builtins.c (apply_args_size): Use targetm.calls.get_raw_arg_mode.
(apply_result_size): Ditto.
* config/ia64/ia64.c (ia64_get_reg_raw_mode): New.
(TARGET_GET_RAW_RESULT_MODE): Define.
(TARGET_GET_RAW_ARG_MODE): Ditto.

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

13 years agogcc/c-family/
jason [Wed, 27 Oct 2010 21:43:33 +0000 (21:43 +0000)]
gcc/c-family/
* c-common.c (c_common_reswords): Add __is_literal_type.
* c-common.h (enum rid): Add RID_IS_LITERAL_TYPE.
gcc/cp/
* cp-tree.h (cp_trait_kind): Add CPTK_IS_LITERAL_TYPE.
* cxx-pretty-print.c (pp_cxx_trait_expression): Handle it.
* semantics.c (trait_expr_value, finish_trait_expr): Likewise.
* parser.c (cp_parser_primary_expression): Handle RID_IS_LITERAL_TYPE.
(cp_parser_trait_expr): Likewise.
libstdc++-v3/
* include/std/type_traits (is_literal_type): New.

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

13 years agoc-family/
jason [Wed, 27 Oct 2010 21:42:36 +0000 (21:42 +0000)]
c-family/
* c-common.c (check_case_value): Remove special C++ code.
cp/
* decl.c (finish_case_label): Use decl_constant_value.

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

13 years ago2010-10-27 Janus Weil <janus@gcc.gnu.org>
janus [Wed, 27 Oct 2010 21:41:52 +0000 (21:41 +0000)]
2010-10-27  Janus Weil  <janus@gcc.gnu.org>

PR fortran/46161
* interface.c (compare_allocatable): Handle polymorphic allocatables.
(compare_parameter): Add two error messages for polymorphic dummies.

2010-10-27  Janus Weil  <janus@gcc.gnu.org>

PR fortran/46161
* gfortran.dg/class_dummy_3.f03: New.

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

13 years ago * gcc-interface/trans.c (gigi): Fix formatting issues.
ebotcazou [Wed, 27 Oct 2010 21:15:06 +0000 (21:15 +0000)]
* gcc-interface/trans.c (gigi): Fix formatting issues.
(build_raise_check): Likewise.
(gnat_to_gnu): Likewise.
* gcc-interface/utils2.c (build_call_raise_range): Likewise.
(build_call_raise_column): Likewise.

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

13 years ago * config/sparc/sol2-unwind.h (sparc64_fallback_frame_state): Adjust
ebotcazou [Wed, 27 Oct 2010 20:34:36 +0000 (20:34 +0000)]
* config/sparc/sol2-unwind.h (sparc64_fallback_frame_state): Adjust
for newer Solaris 10 release.
(sparc_fallback_frame_state): Likewise.

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

13 years ago * method.c (synthesized_method_walk): Track constexprness too.
jason [Wed, 27 Oct 2010 20:11:29 +0000 (20:11 +0000)]
* method.c (synthesized_method_walk): Track constexprness too.
(process_subob_fn, walk_field_subobs): Likewise.
(implicitly_declare_fn): Set DECL_DECLARED_CONSTEXPR_P.
(defaulted_late_check): Handle DECL_DECLARED_CONSTEXPR_P.
* class.c (add_implicitly_declared_members): Handle
constexpr default ctor.

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

13 years ago * parser.c (cp_parser_ctor_initializer_opt_and_function_body):
jason [Wed, 27 Oct 2010 19:31:33 +0000 (19:31 +0000)]
* parser.c (cp_parser_ctor_initializer_opt_and_function_body):
Make sure a constexpr ctor has an empty body.
* class.c (type_has_constexpr_default_constructor): New.
* cp-tree.h: Declare it.
* init.c (perform_member_init): Complain about uninitialized
member in constexpr ctor.
(emit_mem_initializers): And uninitialized base.
* decl.c (check_tag_decl): Fix typo.

* semantics.c (valid_type_in_constexpr_fundecl_p): New fn.
(is_valid_constexpr_fn): New fn.
(validate_constexpr_fundecl): Use it.
* decl.c (validate_constexpr_redeclaration): New.
(duplicate_decls): Use it.
(cp_finish_decl): Call validate_constexpr_fundecl and
ensure_literal_type_for_constexpr_object here.
(start_decl): Not here.  Don't ICE on constexpr reference.
(check_for_uninitialized_const_var): Don't handle constexpr specially.
(grokfndecl): Set DECL_DECLARED_CONSTEXPR_P.
(check_static_variable_definition): Give friendly message about
missing constexpr.
(grokdeclarator): Complain about typedef and volatile with constexpr.
Reorganize.  Give sorry about non-static data members in C++0x mode.
(start_preparsed_function): Check validate_constexpr_fundecl here.
(check_function_type): Not here.
* decl2.c (finish_static_data_member_decl): Don't complain about
in-class init.
* parser.c (CP_PARSER_FLAGS_ONLY_TYPE_OR_CONSTEXPR): New.
(cp_parser_condition): Pass it to cp_parser_decl_specifier_seq.
(cp_parser_decl_specifier_seq): Handle it.
(cp_parser_explicit_instantiation): Diagnose inline and constexpr.

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

13 years ago * class.c (check_bases): Propagate non-literality.
jason [Wed, 27 Oct 2010 19:04:06 +0000 (19:04 +0000)]
* class.c (check_bases): Propagate non-literality.
(check_field_decls): Likewise.
(finalize_literal_type_property): New.
(check_bases_and_members): Call it.
* cp-tree.h (TYPE_HAS_CONSTEXPR_CTOR): New.
(lang_type_class): Add has_constexpr_ctor field.
(DECL_DECLARED_CONSTEXPR_P): Strip template.
* decl.c (grok_special_member_properties): Set
TYPE_HAS_CONSTEXPR_CTOR.

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

13 years ago * call.c (build_integral_nontype_arg_conv): New.
jason [Wed, 27 Oct 2010 15:59:54 +0000 (15:59 +0000)]
* call.c (build_integral_nontype_arg_conv): New.
* cp-tree.h: Declare it.
* pt.c (convert_nontype_argument): Use it.

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

13 years ago * error.c (dump_simple_decl): Print constexpr.
jason [Wed, 27 Oct 2010 15:54:45 +0000 (15:54 +0000)]
* error.c (dump_simple_decl): Print constexpr.

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

13 years ago * cvt.c (build_up_reference): Use target_type for the temporary var.
jason [Wed, 27 Oct 2010 15:54:35 +0000 (15:54 +0000)]
* cvt.c (build_up_reference): Use target_type for the temporary var.

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

13 years ago * except.c (build_throw): Set EXPR_LOCATION.
jason [Wed, 27 Oct 2010 15:48:26 +0000 (15:48 +0000)]
* except.c (build_throw): Set EXPR_LOCATION.

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

13 years ago * tree.c (build_cplus_new): Handle CONSTRUCTOR.
jason [Wed, 27 Oct 2010 15:48:16 +0000 (15:48 +0000)]
* tree.c (build_cplus_new): Handle CONSTRUCTOR.

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

13 years ago * semantics.c (finish_compound_stmt): Avoid creating an
jason [Wed, 27 Oct 2010 15:48:09 +0000 (15:48 +0000)]
* semantics.c (finish_compound_stmt): Avoid creating an
unnecessary BIND_EXPR.

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

13 years ago * call.c (convert_like_real): Don't check narrowing if the element
jason [Wed, 27 Oct 2010 15:48:01 +0000 (15:48 +0000)]
* call.c (convert_like_real): Don't check narrowing if the element
is also an initializer-list.

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

13 years ago * gimplify.c (gimplify_decl_expr): Handle anonymous artificial
jason [Wed, 27 Oct 2010 15:47:52 +0000 (15:47 +0000)]
* gimplify.c (gimplify_decl_expr): Handle anonymous artificial
variables sooner.

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

13 years ago * haifa-sched.c (ISSUE_POINTS): Remove.
jiez [Wed, 27 Oct 2010 14:30:17 +0000 (14:30 +0000)]
* haifa-sched.c (ISSUE_POINTS): Remove.
(max_issue): Don't issue more than issue_rate instructions.

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

13 years agoReplace UNSPEC_STACK_CHECK with UNSPECV_SPLIT_STACK_RETURN.
hjl [Wed, 27 Oct 2010 13:32:54 +0000 (13:32 +0000)]
Replace UNSPEC_STACK_CHECK with UNSPECV_SPLIT_STACK_RETURN.

2010-10-27  Ian Lance Taylor  <iant@google.com>

PR target/46197
* config/i386/i386.md (UNSPECV_SPLIT_STACK_RETURN): New.
(split_stack_return): Replace UNSPEC_STACK_CHECK with
UNSPECV_SPLIT_STACK_RETURN.

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

13 years agoAdd -mvzeroupper to x86.
hjl [Wed, 27 Oct 2010 12:36:15 +0000 (12:36 +0000)]
Add -mvzeroupper to x86.

gcc/

2010-10-27  H.J. Lu  <hongjiu.lu@intel.com>

* config/i386/i386-protos.h (init_cumulative_args): Add an int.

* config/i386/i386.c (block_info): New.
(BLOCK_INFO): Likewise.
(call_avx256_state): Likewise.
(check_avx256_stores): Likewise.
(move_or_delete_vzeroupper_2): Likewise.
(move_or_delete_vzeroupper_1): Likewise.
(move_or_delete_vzeroupper): Likewise.
(use_avx256_p): Likewise.
(function_pass_avx256_p): Likewise.
(flag_opts): Add -mvzeroupper.
(ix86_option_override_internal): Turn on MASK_VZEROUPPER by
default for TARGET_AVX.  Turn off MASK_VZEROUPPER if TARGET_AVX
is disabled.
(ix86_function_ok_for_sibcall): Disable sibcall if we need to
generate vzeroupper.
(init_cumulative_args): Add an int to indicate caller.  Set
use_avx256_p, callee_return_avx256_p and caller_use_avx256_p
based on return type.
(ix86_function_arg): Set use_avx256_p, callee_pass_avx256_p and
caller_pass_avx256_p based on argument type.
(ix86_expand_epilogue): Emit vzeroupper if 256bit AVX register
is used, but not returned by caller.
(ix86_expand_call): Emit vzeroupper if 256bit AVX register is
used.
(ix86_local_alignment): Set use_avx256_p if 256bit AVX register
is used.
(ix86_minimum_alignment): Likewise.
(ix86_expand_special_args_builtin): Set target to
GEN_INT (vzeroupper_intrinsic) for CODE_FOR_avx_vzeroupper.
(ix86_reorg): Run the vzeroupper optimization if needed.

* config/i386/i386.h (ix86_args): Add caller.
(INIT_CUMULATIVE_ARGS): Updated.
(machine_function): Add use_vzeroupper_p, use_avx256_p,
caller_pass_avx256_p, caller_return_avx256_p,
callee_pass_avx256_p and callee_return_avx256_p.

* config/i386/i386.opt (-mvzeroupper): New.

* config/i386/predicates.md (vzeroupper_operation): Removed.

* config/i386/sse.md (avx_vzeroupper): Removed.
(*avx_vzeroupper): Removed.
(avx_vzeroupper): New.

* doc/invoke.texi: Document -mvzeroupper.

gcc/testsuite/

2010-10-27  H.J. Lu  <hongjiu.lu@intel.com>

* gcc.target/i386/avx-vzeroupper-1.c: Add -mtune=generic.
* gcc.target/i386/avx-vzeroupper-2.c: Likewise.

* gcc.target/i386/avx-vzeroupper-3.c: New.
* gcc.target/i386/avx-vzeroupper-4.c: Likewise.
* gcc.target/i386/avx-vzeroupper-5.c: Likewise.
* gcc.target/i386/avx-vzeroupper-6.c: Likewise.
* gcc.target/i386/avx-vzeroupper-7.c: Likewise.
* gcc.target/i386/avx-vzeroupper-8.c: Likewise.
* gcc.target/i386/avx-vzeroupper-9.c: Likewise.
* gcc.target/i386/avx-vzeroupper-10.c: Likewise.
* gcc.target/i386/avx-vzeroupper-11.c: Likewise.
* gcc.target/i386/avx-vzeroupper-12.c: Likewise.
* gcc.target/i386/avx-vzeroupper-13.c: Likewise.
* gcc.target/i386/avx-vzeroupper-14.c: Likewise.

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

13 years ago * config/i386/t-mingw32 (SHLIB_LC): Add -lmingwthrd.
ebotcazou [Wed, 27 Oct 2010 11:21:00 +0000 (11:21 +0000)]
* config/i386/t-mingw32 (SHLIB_LC): Add -lmingwthrd.
* config/i386/t-mingw-w32 (SHLIB_LC): Likewise.
* config/i386/t-mingw-w64 (SHLIB_LC): Likewise.

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

13 years ago * config/i386/w32-unwind.h (i386_w32_fallback_frame_state): Fix regnum
ebotcazou [Wed, 27 Oct 2010 11:18:45 +0000 (11:18 +0000)]
* config/i386/w32-unwind.h (i386_w32_fallback_frame_state): Fix regnum
of EBP.  Do not restore reg #9.  Remove +1 adjustment to EIP and set
fs->signal_frame instead.

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

13 years agoIn gcc/:
nicola [Wed, 27 Oct 2010 05:23:08 +0000 (05:23 +0000)]
In gcc/:
2010-10-27  Nicola Pero  <nicola.pero@meta-innovation.com>

        * c-parser.c (c_parser_objc_at_property_declaration): Recognize
        RID_ASSIGN, RID_COPY, RID_RETAIN, RID_READWRITE and RID_NONATOMIC.
        Do not use objc_set_property_attr, but use local variables
        instead.  Detect repeated usage of setter, getter and ivar
        attributes.  Improved error processing when a setter name does not
        end in ':'.  Do not check for CPP_CLOSE_PAREN after we determined
        that the token is a keyword.  Updated call to
        objc_add_property_declaration.

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

        * parser.c (cp_parser_objc_at_property_declaration): Recognize
        RID_ASSIGN, RID_COPY, RID_RETAIN, RID_READWRITE and RID_NONATOMIC.
        Do not use objc_set_property_attr, but use local variables
        instead.  Detect repeated usage of setter, getter and ivar
        attributes.  Improved error processing when a setter name does not
        end in ':'.  Do not check for CPP_CLOSE_PAREN after we determined
        that the token is a keyword.  Updated call to
        objc_add_property_declaration.

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

        * c-common.h (enum rid): Added RID_READWRITE, RID_ASSIGN,
        RID_RETAIN, RID_COPY and RID_NONATOMIC.  Updated RID_FIRST_PATTR
        and RID_LAST_PATTR.
        (objc_add_property_declaration): Added additional arguments.
        (objc_property_attribute_kind): Removed.
        (objc_set_property_attr): Removed.
        * c-common.c (c_common_reswords): Added readwrite, assign, retain,
        copy and nonatomic.
        * stub-objc.c (objc_add_property_declaration): Added additional
        arguments.
        (objc_set_property_attr): Removed.

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

        * objc-act.c (objc_add_property_declaration): Added arguments to
        pass the various property attributes that were parsed with the
        property declaration.  Process arguments to determine the final
        property attributes and produce error messages as appropriate.
        Added temporary code to keep the compiler silent about variables
        set but not used - for new attributes that are only checked but
        have no effect yet.
        (property_readonly): Removed.
        (property_setter): Removed.
        (property_getter): Removed.
        (property_ivar): Removed.
        (property_copies): Removed.
        (objc_set_property_attr): Removed.
        * objc-act.h (enum property_assign_semantics): New.

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

        * obj-c.dg/property/at-property-4.m: New.
        * obj-c++.dg/property/at-property-4.mm: New.
        * obj-c++.dg/property/property-neg-5.m: Updated testcase for
        updates in warning.
        * obj-c++.dg/property/property-neg-5.mm: Updated testcase for
        updates in warning.

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

13 years agoIn gcc/:
nicola [Wed, 27 Oct 2010 04:37:47 +0000 (04:37 +0000)]
In gcc/:
2010-10-27  Nicola Pero  <nicola.pero@meta-innovation.com>

        * c-parser.c (c_parser_objc_at_property): Renamed to
        c_parser_objc_at_property_declaration.  Updated calls to
        objc_add_property_variable, now objc_add_property_declaration.
        Code rewritten to be much more robust in recovering from syntax
        errors.  Added comments.
        (c_parser_objc_property_attrlist): Removed.
        (c_parser_external_declaration): Updated calls to
        c_parser_objc_at_property, now
        c_parser_objc_at_property_declaration.
        (c_parser_objc_methodprotolist): Same change.

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

        * c-common.h (objc_add_property_variable): Renamed to
        objc_add_property_declaration.  Added location argument.
        * stub-objc.c (objc_add_property_variable): Same change.

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

        * parser.c (cp_parser_objc_property_decl): Renamed to
        cp_parser_objc_struct_declaration.  Return the parsed trees
        instead of calling objc_add_property_variable directly.  Detect
        missing or invalid declspecs.  Implemented attributes.  Do not eat
        the ';' at the end.  Exit loop whenever a non-comma is parsed, not
        just EOF.
        (cp_parser_objc_at_property): Renamed to
        cp_parser_objc_at_property_declaration.  Updated calls to
        objc_add_property_variable, now objc_add_property_declaration, and
        to cp_parser_objc_property_decl, now
        cp_parser_objc_struct_declaration.  Rewritten all code to be more
        robust in dealing with syntax errors, and almost identical to the
        one in c_parser_objc_at_property_declaration.
        (cp_parser_objc_property_attrlist): Removed.
        (cp_parser_objc_method_prototype_list): Updated call to
        cp_parser_objc_at_property.
        (cp_parser_objc_method_definition_list): Same change.
        (cp_parser_objc_class_ivars): Detect a number of invalid
        declarations of instance variables and produce errors when they
        are found.

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

        * objc-act.c (objc_add_property_variable): Renamed to
        objc_add_property_declaration.  Added location argument.  Updated
        warnings and errors to use it.  Use error, not fatal_error, if a
        property declaration is found outside an interface or
        implementation context.

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

        * objc.dg/property/at-property-1.m: New.
        * objc.dg/property/at-property-2.m: New.
        * objc.dg/property/at-property-3.m: New.
        * objc.dg/ivar-invalid-type-1.m: New.
        * obj-c++.dg/property/at-property-1.mm: New.
        * obj-c++.dg/property/at-property-2.mm: New.
        * obj-c++.dg/property/at-property-3.mm: New.
        * obj-c++.dg/ivar-invalid-type-1.mm: New.
        * objc.dg/property/property-neg-6.m: Updated testcase for updates
        in error reporting.

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

13 years agoPut back unspec_volatile on split_stack_return.
hjl [Wed, 27 Oct 2010 02:48:42 +0000 (02:48 +0000)]
Put back unspec_volatile on split_stack_return.

2010-10-26  H.J. Lu  <hongjiu.lu@intel.com>

* config/i386/i386.md (split_stack_return): Put back
unspec_volatile.

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

13 years agoDaily bump.
gccadmin [Wed, 27 Oct 2010 00:18:01 +0000 (00:18 +0000)]
Daily bump.

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

13 years ago * ipa.c (process_references): Enqueue all referenced nodes;
hubicka [Tue, 26 Oct 2010 22:42:53 +0000 (22:42 +0000)]
* ipa.c (process_references): Enqueue all referenced nodes;
mark as reachable only non-external nodes.
(cgraph_remove_unreachable_nodes): All referenced nodes should
be enqueued; remove bogues node->needed check.

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

13 years ago * cgraphbuild.c (build_cgraph_edges): Use ipa-reference to represent OMP.
hubicka [Tue, 26 Oct 2010 22:32:47 +0000 (22:32 +0000)]
* cgraphbuild.c (build_cgraph_edges): Use ipa-reference to represent OMP.

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

13 years ago * ipa.c (process_references): Enqueue all referenced nodes;
hubicka [Tue, 26 Oct 2010 21:33:37 +0000 (21:33 +0000)]
* ipa.c (process_references): Enqueue all referenced nodes;
mark as reachable only non-external nodes.
(cgraph_remove_unreachable_nodes): All referenced nodes should
be enqueued; remove bogues node->needed check.

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

13 years agoReplace unspec_volatile with unspec in split_stack_return.
hjl [Tue, 26 Oct 2010 21:20:19 +0000 (21:20 +0000)]
Replace unspec_volatile with unspec in split_stack_return.

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

13 years agoAdd missing testcase.
hubicka [Tue, 26 Oct 2010 21:20:00 +0000 (21:20 +0000)]
Add missing testcase.

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

13 years ago * lto.c (add_cgraph_node_to_partition,
hubicka [Tue, 26 Oct 2010 20:10:03 +0000 (20:10 +0000)]
* lto.c (add_cgraph_node_to_partition,
add_varpool_node_to_partition): Add debug info.
(lto_1_to_1_map, lto_balanced_map): Do not re-add already
partitioned nodes.
(do_whole_program_analysis): Set function flags before dumping.

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

13 years agoRevert
jason [Tue, 26 Oct 2010 19:45:55 +0000 (19:45 +0000)]
Revert
* pt.c (lookup_template_class): push_tinst_level around call to
coerce_template_parms.

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

13 years ago2010-10-26 Jerry DeLisle <jvdelisle@gcc.gnu.org>
jvdelisle [Tue, 26 Oct 2010 19:34:21 +0000 (19:34 +0000)]
2010-10-26  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR libgfortran/46010
* gfortran.dg/namelist_66.f90: New test.
* gfortran.dg/fmt_t_6.f: Fix whitespace.

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

13 years ago2010-10-26 Jonathan Wakely <jwakely.gcc@gmail.com>
redi [Tue, 26 Oct 2010 19:07:01 +0000 (19:07 +0000)]
2010-10-26  Jonathan Wakely  <jwakely.gcc@gmail.com>

* doc/install.texi: Fix typo in --with-sysroot description.

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

13 years ago2010-10-26 Jerry DeLisle <jvdelisle@gcc.gnu.org>
jvdelisle [Tue, 26 Oct 2010 19:05:08 +0000 (19:05 +0000)]
2010-10-26  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR libgfortran/46010
* io/list_read.c (nml_parse_qualifier): Add additional conditions for
setting the end index for loop specification. Fix some whitespace.
* io/write.c (write_default_char4): Const-ify the source argument.

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

13 years ago * ipa.c (cgraph_externally_visible_p, varpool_externally_visible_p):
hubicka [Tue, 26 Oct 2010 18:34:03 +0000 (18:34 +0000)]
* ipa.c (cgraph_externally_visible_p, varpool_externally_visible_p):
Use info provided by linker plugin.

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

13 years agoPatch by Ralf Wildenhues.
hubicka [Tue, 26 Oct 2010 18:29:29 +0000 (18:29 +0000)]
Patch by Ralf Wildenhues.
* aclocal.m4 (AC_LANG_FUNC_LINK_TRY(C)): Delete.
* configure: Regenerate.

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

13 years ago * tree.c (build_vec_init_expr): Split out from...
jason [Tue, 26 Oct 2010 18:10:53 +0000 (18:10 +0000)]
* tree.c (build_vec_init_expr): Split out from...
(build_array_copy): ...here.
* init.c (perform_member_init): Use it.
* cp-tree.h: Declare it.
* cp-gimplify.c (cp_gimplify_init_expr): Don't gimplify the slot for
VEC_INIT_EXPR and AGGR_INIT_EXPR here.  Drop pre/post parameters.
(cp_gimplify_expr): Handle array default-initialization via
VEC_INIT_EXPR.

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

13 years ago * varasm.c (constructor_static_from_elts_p): Don't require a
jason [Tue, 26 Oct 2010 17:57:44 +0000 (17:57 +0000)]
* varasm.c (constructor_static_from_elts_p): Don't require a
CONSTRUCTOR to have elements to be suitable for static
initialization.  Allow ARRAY_TYPE as well.

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

13 years ago * pt.c (lookup_template_class): push_tinst_level around call to
jason [Tue, 26 Oct 2010 17:57:30 +0000 (17:57 +0000)]
* pt.c (lookup_template_class): push_tinst_level around call to
coerce_template_parms.

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

13 years ago2010-10-26 Janus Weil <janus@gcc.gnu.org>
janus [Tue, 26 Oct 2010 17:38:42 +0000 (17:38 +0000)]
2010-10-26  Janus Weil  <janus@gcc.gnu.org>

PR fortran/42647
* trans.h (gfc_deallocate_scalar_with_status): New prototype.
* trans.c (gfc_deallocate_scalar_with_status): New function for
deallocation of allocatable scalars.
* trans-array.c (structure_alloc_comps): Call it here ...
* trans-decl.c (gfc_trans_deferred_vars): ... here ...
* trans-stmt.c (gfc_trans_deallocate): ... and here.

2010-10-26  Janus Weil  <janus@gcc.gnu.org>

PR fortran/42647
* gfortran.dg/allocatable_scalar_9.f90: Extended.
* gfortran.dg/allocatable_scalar_10.f90: New.
* gfortran.dg/class_19.f03: Extended.

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

13 years ago PR middle-end/45736
hubicka [Tue, 26 Oct 2010 16:40:16 +0000 (16:40 +0000)]
PR middle-end/45736
* cgraph.c (cgraph_set_readonly_flag): Rename to...
(cgraph_set_const_flags) ... this one; get also looping argument;
clear constructor/destructor flags.
(cgraph_set_pure_flag): Likewise.
(cgraph_set_looping_const_or_pure_flag): Remove.
(cgraph_can_remove_if_no_direct_calls_and_refs): Do not try
to optimize away static ctors/dtors; it does not work on inline clones;
external functions can always be rmeoved.
(cgraph_will_be_removed_from_program_if_no_direct_calls): Assert on inline
clones; in LTO external functions always can go.
(cgraph_used_from_object_file_p): Handle EXTERNAL functions correctly.
(cgraph_mark_address_taken_node): Assert that we are not taking address of
inline clone.
(cgraph_can_remove_if_no_direct_calls_p): We always eventually remove
external functions.
* ipa-cp.c (ipcp_cloning_candidate_p): Do not clone functions with address taken.
(ipcp_initialize_node_lattices): Only local functions can be handled without cloning.
* cgraph.h (cgraph_set_readonly_flag,
cgraph_set_looping_const_or_pure_flag): Remove.
(cgraph_set_const_flag): Declare.
(cgraph_set_pure_flag): Update.
* ipa-pure-const (propagate_pure_const, local_pure_const): Update
flags setting code.
* ipa.c (cgraph_remove_unreachable_nodes): Fix formating; do not look at inline
clones; fix handling of external definitions.
(cgraph_postorder): Do not look at inline clones in the first pass.
(function_and_variable_visibility): Drop constructors/destructor
flags at pure and const functions.
* tree-profile.c (tree_profiling): Update.
* ipa-inline.c (cgraph_clone_inlined_nodes): Always clone functions with
address taken; external functions do not account to whole program size.
(cgraph_decide_inlining): Likewise; do not try to inline functions already
inlined.
* testsuite/gcc.dg/lto/pr45736_0.c: New function.

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

13 years ago * doc/invoke.texi: Improve documentation of
jiez [Tue, 26 Oct 2010 16:13:04 +0000 (16:13 +0000)]
* doc/invoke.texi: Improve documentation of
-fstrict-volatile-bitfields.

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

13 years ago PR tree-optimization/46167
irar [Tue, 26 Oct 2010 15:53:28 +0000 (15:53 +0000)]
PR tree-optimization/46167
* tree-vect-patterns.c (vect_recog_dot_prod_pattern): Check that there
is basic block for the statement.

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

13 years ago * tree.c (stabilize_expr): Handle xvalues properly.
jason [Tue, 26 Oct 2010 15:02:54 +0000 (15:02 +0000)]
* tree.c (stabilize_expr): Handle xvalues properly.

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

13 years ago * call.c (build_over_call): Use argarray[0] for 'this' argument.
jason [Tue, 26 Oct 2010 15:02:47 +0000 (15:02 +0000)]
* call.c (build_over_call): Use argarray[0] for 'this' argument.

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

13 years ago * decl.c (finish_function): Don't look at function_depth.
jason [Tue, 26 Oct 2010 15:02:39 +0000 (15:02 +0000)]
* decl.c (finish_function): Don't look at function_depth.

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

13 years ago* config/pdp11/pdp11.c (pdp11_f_format, pdp11_d_format): Update to
pkoning [Tue, 26 Oct 2010 15:00:54 +0000 (15:00 +0000)]
* config/pdp11/pdp11.c (pdp11_f_format, pdp11_d_format): Update to
current definition of struct_real_format.

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

13 years agoProperly align parameters on stack for x86.
hjl [Tue, 26 Oct 2010 13:56:42 +0000 (13:56 +0000)]
Properly align parameters on stack for x86.

gcc/

2010-10-26  H.J. Lu  <hongjiu.lu@intel.com>

PR target/44948
* config/i386/i386.c (ix86_old_function_arg_boundary): New.
(ix86_function_arg_boundary): Always align parameters on stack
in 64bit and align parameters with alignment >= 16byte on stack
in 32bit.  Warn alignment change.

gcc/testsuite/

2010-10-26  H.J. Lu  <hongjiu.lu@intel.com>

PR target/44948
* g++.dg/abi/param2.C: Add -Wno-psabi for ilp32 x86.
* g++.dg/vect/pr33860a.cc: Likewise.
* gcc.c-torture/compile/20070522-1.c: Likewise.
* gcc.dg/compat/struct-align-1_x.c: Likewise.
* gcc.dg/compat/struct-align-1_y.c: Likewise.
* gcc.dg/compat/struct-align-2_x.c: Likewise.
* gcc.dg/compat/struct-align-2_y.c: Likewise.
* gcc.dg/pr44136.c: Likewise.

* gcc.c-torture/compile/pr33617.c: Add -Wno-psabi for x86.
* gcc.dg/compat/vector-1_x.c: Likewise.
* gcc.dg/compat/vector-1_y.c: Likewise.
* gcc.dg/compat/vector-2_x.c: Likewise.
* gcc.dg/compat/vector-2_y.c: Likewise.
* gcc.dg/pr43300.c: Likewise.

* gcc.dg/compat/vector-1a_x.c: Add -Wno-psabi.
* gcc.dg/compat/vector-1a_y.c: Likewise.
* gcc.dg/compat/vector-1b_x.c: Likewise.
* gcc.dg/compat/vector-1b_y.c: Likewise.
* gcc.dg/compat/vector-2a_x.c: Likewise.
* gcc.dg/compat/vector-2a_y.c: Likewise.
* gcc.dg/compat/vector-2b_x.c: Likewise.
* gcc.dg/compat/vector-2b_y.c: Likewise.
* gcc.target/i386/pr39162.c: Likewise.
* gcc.target/i386/pr40906-2.c: Likewise.
* gcc.target/i386/sse-5.c: Likewise.

* gcc.dg/pr35442.c: Prune ABI change warnings.

* gcc.c-torture/execute/pr38151.x: New.
* gcc.target/i386/pr44948-1a.c: Likewise.
* gcc.target/i386/pr44948-1b.c: Likewise.
* gcc.target/i386/pr44948-2a.c: Likewise.
* gcc.target/i386/pr44948-2b.c: Likewise.

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

13 years agogcc/:
ian [Tue, 26 Oct 2010 13:39:37 +0000 (13:39 +0000)]
gcc/:
PR middle-end/45687
* ipa-prop.c (ipa_modify_call_arguments): Correct type of MEM_REF
offset.
gcc/testsuite:
* gcc.c-torture/execute/20101025-1.c: New test.

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

13 years ago2010-10-26 Robert Dewar <dewar@adacore.com>
charlet [Tue, 26 Oct 2010 13:20:47 +0000 (13:20 +0000)]
2010-10-26  Robert Dewar  <dewar@adacore.com>

* exp_ch5.adb, exp_prag.adb, sem_ch3.adb, exp_atag.adb, layout.adb,
sem_dist.adb, exp_ch7.adb, exp_util.adb, exp_attr.adb, exp_ch9.adb,
sem_ch10.adb, checks.adb, sem_prag.adb, par-endh.adb, sem_ch12.adb,
exp_smem.adb, sem_attr.adb, exp_ch4.adb, exp_ch6.adb, exp_ch8.adb,
sem_ch6.adb, exp_disp.adb, exp_aggr.adb, exp_dist.adb, sem_ch13.adb,
par-ch3.adb, par-ch5.adb, exp_strm.adb, exp_ch3.adb: Minor reformatting
* opt.ads: Minor comment fix.

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

* gnat_ugn.texi: Document option -s for gnatlink.

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

13 years ago2010-10-26 Robert Dewar <dewar@adacore.com>
charlet [Tue, 26 Oct 2010 13:17:23 +0000 (13:17 +0000)]
2010-10-26  Robert Dewar  <dewar@adacore.com>

* opt.ads: Move documentation on checksum stuff here from prj-nmsc
* prj-nmsc.adb (Process_Project_Level_Array_Attributes): Move
documentation on checksum versions to opt.ads.

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

13 years ago2010-10-26 Vincent Celier <celier@adacore.com>
charlet [Tue, 26 Oct 2010 13:15:05 +0000 (13:15 +0000)]
2010-10-26  Vincent Celier  <celier@adacore.com>

* opt.ads (Checksum_Accumulate_Token_Checksum): New Boolean flag,
defaulted to True.
(Checksum_GNAT_6_3): New name of Old_Checksums
(Checksum_GNAT_5_03): New name of Old_Old_Checksums
* prj-nmsc.adb (Process_Project_Level_Array_Attributes): Adapt to new
names of Opt flags.
Set Checksum_Accumulate_Token_Checksum to False if GNAT version is 5.03
or before.
* scng.adb (Accumulate_Token_Checksum_GNAT_6_3): New name of procedure
Accumulate_Token_Checksum_Old.
(Accumulate_Token_Checksum_GNAT_5_03): New name of procedure
Accumulate_Token_Checksum_Old_Old.
(Nlit): Call Accumulate_Token_Checksum only if
Opt.Checksum_Accumulate_Token_Checksum is True.
(Scan): Ditto

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

13 years ago2010-10-26 Robert Dewar <dewar@adacore.com>
charlet [Tue, 26 Oct 2010 13:12:34 +0000 (13:12 +0000)]
2010-10-26  Robert Dewar  <dewar@adacore.com>

* sem_ch13.adb (Build_Invariant_Procedure): New calling sequence.
(Build_Invariant_Procedure): Properly handle analysis of invariant
expression with proper end-of-visible-decls visibility.
* sem_ch13.ads (Build_Invariant_Procedure): Changed calling sequence.
* sem_ch3.adb (Process_Full_View): Don't build invariant procedure
(too late).
(Analyze_Private_Extension_Declaration): Propagate invariant flags.
* sem_ch7.adb (Analyze_Package_Specification): Build invariant
procedures.

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

13 years ago2010-10-26 Vincent Celier <celier@adacore.com>
charlet [Tue, 26 Oct 2010 13:08:59 +0000 (13:08 +0000)]
2010-10-26  Vincent Celier  <celier@adacore.com>

* opt.ads (Old_Checksums, Old_Old_Checksums): New Boolean flags,
defaulted to False.
* prj-nmsc.adb (Process_Project_Level_Array_Attributes): When
processing attribute Toolchain_Version ("Ada"), set Opt.Old_Checksums
and Opt.Old_Old_Checksums depending on the GNAT version.
* scng.adb (Accumulate_Token_Checksum_Old): New procedure.
(Accumulate_Token_Checksum_Old_Old): New procedure.
(Scan): For keywords, when Opt.Old_Checksums is True, call one of the
alternative procedures Accumulate_Token_Checksum_Old or
Accumulate_Token_Checksum_Old_Old, instead of Accumulate_Token_Checksum.

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

13 years ago2010-10-26 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
charlet [Tue, 26 Oct 2010 13:06:34 +0000 (13:06 +0000)]
2010-10-26  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>

* gcc-interface/utils2.c (build_compound_expr): New function.
* gcc-interface/gigi.h (build_compound_expr): Declare it.
* gcc-interface/trans.c (Attribute_to_gnu, call_to_gnu): Use it.
(gnat_to_gnu, case N_Expression_With_Actions): Likewise.

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

13 years ago2010-10-26 Javier Miranda <miranda@adacore.com>
charlet [Tue, 26 Oct 2010 13:05:30 +0000 (13:05 +0000)]
2010-10-26  Javier Miranda  <miranda@adacore.com>

* sem_prag.adb (Process_Import_Or_Interface): Skip primitives of
interface types when processing all the entities in the homonym chain
that are declared in the same declarative part.

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

* sem_ch3.adb (Process_Range_In_Decl): If the range is part of a
quantified expression, the insertion point for range checks will be
arbitrarily far in the tree.
* sem_ch5.adb (One_Bound): Use Insert_Actions for the declaration of
the temporary that holds the value of the bounds.
* sem_res.adb (Resolve_Quantified_Expressions): Disable expansion of
condition until the full expression is expanded.

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

13 years ago2010-10-26 Robert Dewar <dewar@adacore.com>
charlet [Tue, 26 Oct 2010 13:00:05 +0000 (13:00 +0000)]
2010-10-26  Robert Dewar  <dewar@adacore.com>

* opt.ads: Comment fix.
* sem_cat.adb: Treat categorization errors as warnings in GNAT Mode.
* switch-c.adb: GNAT Mode does not set
Treat_Categorization_Errors_As_Warnings.

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

* sem_ch8.adb (Analyze_Subprogram_Renaming): Improve warning when an
operator renames another one with a different name.

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

* exp_ch4.adb, exp_pakd.adb: Minor reformatting.

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

13 years ago2010-10-26 Robert Dewar <dewar@adacore.com>
charlet [Tue, 26 Oct 2010 12:56:43 +0000 (12:56 +0000)]
2010-10-26  Robert Dewar  <dewar@adacore.com>

* exp_ch3.adb: Fix typo, comment updates.
* namet.adb: Minor comment additions.
* einfo.ads: Minor comment update.

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

* einfo.adb (Set_Dispatch_Table_Wrappers): Complete the assertion.

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

* par.adb, par-ch13.adb (Aspect_Specifications_Present): Add Strict
parameter.

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

13 years ago2010-10-26 Bob Duff <duff@adacore.com>
charlet [Tue, 26 Oct 2010 12:53:09 +0000 (12:53 +0000)]
2010-10-26  Bob Duff  <duff@adacore.com>

* namet.adb: Improve hash function.
Increase the size from 2**12 to 2**16 buckets.

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

* sem_disp.adb: Minor reformatting.

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

13 years ago2010-10-26 Robert Dewar <dewar@adacore.com>
charlet [Tue, 26 Oct 2010 12:48:29 +0000 (12:48 +0000)]
2010-10-26  Robert Dewar  <dewar@adacore.com>

* sem_ch3.adb, sem_ch4.adb, sem_disp.adb, switch-c.adb: Minor
reformatting.
* gnat_ugn.texi: Document -gnateP switch.

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

13 years ago2010-10-26 Robert Dewar <dewar@adacore.com>
charlet [Tue, 26 Oct 2010 12:45:45 +0000 (12:45 +0000)]
2010-10-26  Robert Dewar  <dewar@adacore.com>

* opt.ads (Treat_Categorization_Errors_As_Warnings): New flag
* sem_cat.adb (Check_Categorization_Dependencies):
Use Check_Categorization_Dependencies
* switch-c.adb: GNAT Mode sets Treat_Categorization_Errors_As_Warnings
-gnateP sets Treat_Categorization_Errors_As_Warnings
* usage.adb: Add line for -gnateP switch

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

* sem_ch3.adb (Add_Internal_Interface_Entities): Handle primitives
inherited from the parent that cover interface primitives.
(Derive_Progenitor_Subprograms): Handle primitives inherited from
the parent that cover interface primitives.
* sem_disp.adb (Find_Primitive_Covering_Interface): When searching in
the list of primitives of the type extend the test to include inherited
private primitives.
* sem_ch6.ads (Is_Interface_Conformant): Add missing documentation.
* sem_ch7.adb (Declare_Inherited_Private_Subprograms): Add missing
barrier to the loop searching for explicit overriding primitives.
* sem_ch4.adb (Analyze_Indexed_Component_Form): Add missing barrier
before accessing attribute Entity.

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

* make.adb: Call Namet.Finalize, so we can get statistics.

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

13 years ago2010-10-26 Geert Bosch <bosch@adacore.com>
charlet [Tue, 26 Oct 2010 12:35:17 +0000 (12:35 +0000)]
2010-10-26  Geert Bosch  <bosch@adacore.com>

* sem_ch6.adb (Analyze_Subprogram_Body_Helper): Use the subprogram_body
node to determine wether the subprogram is a rewritten parameterized
expression.

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

* opt.ads: Minor code reorganization
Alphabetize Warning switches.

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

13 years ago2010-10-26 Robert Dewar <dewar@adacore.com>
charlet [Tue, 26 Oct 2010 12:32:21 +0000 (12:32 +0000)]
2010-10-26  Robert Dewar  <dewar@adacore.com>

* sem_res.adb, xsinfo.adb: Minor reformatting.

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

13 years ago2010-10-26 Bob Duff <duff@adacore.com>
charlet [Tue, 26 Oct 2010 12:30:25 +0000 (12:30 +0000)]
2010-10-26  Bob Duff  <duff@adacore.com>

* namet.adb (Finalize): More cleanup of statistics printouts.

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

* ceinfo.adb: Minor reformatting.

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

13 years ago2010-10-26 Javier Miranda <miranda@adacore.com>
charlet [Tue, 26 Oct 2010 12:28:37 +0000 (12:28 +0000)]
2010-10-26  Javier Miranda  <miranda@adacore.com>

* sem_ch6.adb (Check_Overriding_Indicator, New_Overloaded_Entity): When
setting attribute Overridden_Operation do not reference the entities
generated by Derive_Subprograms but their aliased entity (which
is the primitive inherited from the parent type).

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

* namet.adb, namet.ads: Minor cleanup.

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

13 years ago * gcc-interface/Make-lang.in: Update dependencies.
charlet [Tue, 26 Oct 2010 12:21:31 +0000 (12:21 +0000)]
* gcc-interface/Make-lang.in: Update dependencies.

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

13 years ago2010-10-26 Robert Dewar <dewar@adacore.com>
charlet [Tue, 26 Oct 2010 12:19:56 +0000 (12:19 +0000)]
2010-10-26  Robert Dewar  <dewar@adacore.com>

* einfo.ads, einfo.adb (Is_Base_Type): New function, use it where
appropriate.
* exp_ch6.adb, exp_dbug.adb, exp_disp.adb, freeze.adb, lib-xref.adb,
sem_aux.adb, sem_ch3.adb, sem_ch7.adb, sem_ch8.adb (Is_Base_Type): Use
this new abstraction where appropriate.

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

* sem_ch12.adb: Code clean up.

2010-10-26  Paul Hilfinger  <hilfinger@adacore.com>

* exp_dbug.ads: Document effect of 'pragma Unchecked_Union' on
debugging data.

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

* sem_util.adb (Note_Possible_Modification): If the target of an
assignment is the bound variable in an iterator, the domain of
iteration, i.e. array or container, is modified as well.

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

* Make-generated.in: Make the relevant make targets depend on
ceinfo.adb and csinfo.adb.
* csinfo.adb, ceinfo.adb: Make sure it raises an exception on failure,
so when called from xeinfo, the failure will be noticed.
* sinfo.ads: Update comments to reflect the fact that xsinfo runs csinfo
* xsinfo.adb, xeinfo.adb: Run ceinfo to check for errors. Close files.

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

* exp_ch4.adb: Set properly parent field of operands of concatenation.

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

* sem_res.adb (Check_Infinite_Recursion): A recursive call within a
conditional expression or a case expression should not generate an
infinite recursion warning.

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

13 years ago2010-10-26 Javier Miranda <miranda@adacore.com>
charlet [Tue, 26 Oct 2010 11:02:31 +0000 (11:02 +0000)]
2010-10-26  Javier Miranda  <miranda@adacore.com>

* einfo.ads, einfo.adb (Is_Overriding_Operation): Removed.
(Set_Is_Overriding_Operation): Removed.
* sem_ch3.adb (Check_Abstract_Overriding): Remove redundant call to
Is_Overriding_Operation.
* exp_ch7.adb (Check_Visibly_Controlled): Remove redundant call to
Is_Overriding_Operation.
* sem_ch7.adb (Declare_Inherited_Private_Subprograms): Remove redundant
call to Set_Is_Overriding_Operation.
* sem_util.adb (Collect_Primitive_Operations): Replace test on
Is_Overriding_Operation by test on the presence of attribute
Overridden_Operation.
(Original_Corresponding_Operation): Remove redundant call to attribute
Is_Overriding_Operation.
* sem_ch6.adb (Analyze_Abstract_Subprogram_Declaration): Remove
redundant call to Is_Overriding_Operation.
(Verify_Overriding_Indicator): Replace several occurrences of test on
Is_Overriding_Operation by test on the presence of attribute
Overridden_Operation.
(Check_Convention): Replace test on Is_Overriding_Operation by test on
the presence of Overridden_Operation.
(Check_Overriding_Indicator): Add missing decoration of attribute
Overridden_Operation. Minor code cleanup.
(New_Overloaded_Entity): Replace occurrence of test on
Is_Overriding_Operation by test on the presence of attribute
Overridden_Operation. Remove redundant setting of attribute
Is_Overriding_Operation plus minor code reorganization.
Add missing decoration of attribute Overridden_Operation.
* sem_elim.adb (Set_Eliminated): Replace test on
Is_Overriding_Operation by test on the presence of Overridden_Operation.
* sem_ch8.adb (Analyze_Subprogram_Renaming): Replace test on
Is_Overriding_Operation by test on the presence of
Overridden_Operation. Remove a redundant test on attribute
Is_Overriding_Operation.
* lib-xref.adb (Generate_Reference): Replace test on
Is_Overriding_Operation by test on the presence of Overridden_Operation.
(Output_References): Replace test on Is_Overriding_Operation by test on
the presence of Overridden_Operation.
* sem_disp.adb (Override_Dispatching_Operation): Replace test on
Is_Overriding_Operation by test on the presence of Overridden_Operation.
Add missing decoration of attribute Overridden_Operation.

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

* sem_ch13.adb (Adjust_Record_For_Reverse_Bit_Order): Properly check
RM 13.4.1(10).

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

* sem_res.adb (Resolve_Actuals): In case of certain
internally-generated type conversions (created by OK_Convert_To, so the
Conversion_OK flag is set), avoid fetching the component type when it's
not really an array type, but a private type completed by an array type.

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

13 years ago2010-10-26 Ed Schonberg <schonberg@adacore.com>
charlet [Tue, 26 Oct 2010 10:57:52 +0000 (10:57 +0000)]
2010-10-26  Ed Schonberg  <schonberg@adacore.com>

* sem_ch5.adb: Adjust format of error message.

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

* einfo.ads, einfo.adb (OK_To_Reference): Removed, no longer used.
* exp_util.adb (Side_Effect_Free): Put in safety barrier in code to
detect renamings to avoid problems with invariants.
* sem_ch13.adb (Replace_Type_References_Generic): New procedure
(Build_Invariant_Procedure): Use Replace_Type_Reference_Generic
(Build_Predicate_Function): Use Replace_Type_Reference_Generic
* sem_res.adb, sem_ch8.adb, sem_ch4.adb (OK_To_Reference): Remove
references, flag is no longer set.

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

13 years ago2010-10-26 Vincent Celier <celier@adacore.com>
charlet [Tue, 26 Oct 2010 10:55:01 +0000 (10:55 +0000)]
2010-10-26  Vincent Celier  <celier@adacore.com>

* prj.ads (Source_Data): New Boolean component Initialized, defaulted
to False, set to True when Source_Data is completely initialized.
* prj-env.adb: Minor comment fix.

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

* sem_case.adb, sem_ch6.adb, sem_util.adb: Minor reformatting.

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

13 years agoUpdate copyright notice.
charlet [Tue, 26 Oct 2010 10:52:27 +0000 (10:52 +0000)]
Update copyright notice.

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

13 years ago2010-10-26 Ed Schonberg <schonberg@adacore.com>
charlet [Tue, 26 Oct 2010 10:51:36 +0000 (10:51 +0000)]
2010-10-26  Ed Schonberg  <schonberg@adacore.com>

* sem_ch5.adb (Analyze_Iteration_Scheme): Diagnose attempt to use thew
form "for X in A" when A is an array object. This form is only intended
for containers.
* sem_eval.adb: Fix reference to non-existing field of type conversion
node.
* sem_case.adb (Check_Choices): Improve error reporting for overlapping
choices in case statements.

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

* exp_disp.adb (Expand_Interface_Actuals): When expanding an actual for
a class-wide interface formal that involves applying a displacement
conversion to the actual, check for the case of calling a build-in-place
function and handle generation of the implicit BIP parameters (call
Make_Build_In_Place_Call_In_Anonymous_Context).
Add with and use of Exp_Ch6.

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

* sem_prag.adb, sem_cat.ads: Minor reformatting.

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

* vms_data.ads: Define VMS qualifier for gnatelim '--ignore' option

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

* sem_util.adb (Has_Preelaborable_Initialization.Check_Components):
For a discriminant, use Discriminant_Default_Value rather than
Expression (Declaration_Node (D)).

2010-10-26  Geert Bosch  <bosch@adacore.com>

* sem_ch6.adb (Analyze_Subprogram_Body_Helper): Parameterized
expressions don't need a spec, even when style checks require
subprograms to have one.

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

13 years ago * gnatvsn.ads: Update comments.
charlet [Tue, 26 Oct 2010 10:45:54 +0000 (10:45 +0000)]
* gnatvsn.ads: Update comments.

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

13 years ago2010-10-26 Matthew Heaney <heaney@adacore.com>
charlet [Tue, 26 Oct 2010 10:42:02 +0000 (10:42 +0000)]
2010-10-26  Matthew Heaney  <heaney@adacore.com>

* Makefile.rtl, impunit.adb: Add bounded hashed set and bounded hashed
map containers.
* a-cohata.ads: Add declaration of generic package for bounded hash
table types.
* a-chtgbo.ads, a-chtgbo.adb, a-chtgbk.ads, a-chtgbk.adb, a-cbhase.ads,
a-cbhase.adb, a-cbhama.ads, a-cbhama.adb: New files.

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

* sem_warn.adb: Improve warning message on overlapping actuals.

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

* sem_ch4.adb, exp_dist.adb: Minor reformatting.

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

* makeusg.adb (Makeusg): Add lines for switches -vl, -vm and -vh.

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

* exp_ch3.adb (Expand_N_Object_Declaration): Move generation of
predicate check to analyzer, since too much rewriting occurs in the
analyzer.
* sem_ch13.adb (Build_Predicate_Function): Change calling sequence, and
change the order in which things are done to fix several errors in
dealing with qualification of the type name.
(Build_Static_Predicate): Built static predicate after full analysis
of the body. This is necessary to fix several problems.
* sem_ch3.adb (Analyze_Object_Declaration): Move predicate check here
from expander, since too much expansion occurs in the analyzer to leave
it that late.
(Analyze_Object_Declaration): Change parameter Include_Null to new name
Include_Implicit in Is_Partially_Initialized_Type call.
(Analyze_Subtype_Declaration): Make sure predicates are proapagated in
some strange cases of internal subtype generation.
* sem_util.ads, sem_util.adb (Is_Partially_Initialized_Type): Change
Include_Null to Include_Implicit, now includes the case of
discriminants.

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

* gnat_rm.texi: Revise the documentation for pragma Eliminate.

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

13 years ago2010-10-26 Matthew Heaney <heaney@adacore.com>
charlet [Tue, 26 Oct 2010 10:31:39 +0000 (10:31 +0000)]
2010-10-26  Matthew Heaney  <heaney@adacore.com>

* Makefile.rtl, impunit.adb: Added bounded list container.
* a-cbdlli.ads, a-cbdlli.adb: New file.

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

13 years ago2010-10-26 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Tue, 26 Oct 2010 10:22:43 +0000 (10:22 +0000)]
2010-10-26  Paolo Carlini  <paolo.carlini@oracle.com>

* testsuite/lib/libstdc++.exp ([check_v3_target_normal_mode]): Add.
* testsuite/lib/dg-options.exp ([dg-require-normal-mode]): Likewise.
* testsuite/23_containers/headers/forward_list/synopsis.cc: Use the
latter.
* testsuite/23_containers/headers/vector/synopsis.cc: Likewise.
* testsuite/23_containers/headers/deque/synopsis.cc: Likewise.
* testsuite/23_containers/headers/bitset/synopsis.cc: Likewise.
* testsuite/23_containers/headers/list/synopsis.cc: Likewise.
* testsuite/23_containers/headers/set/synopsis.cc: Likewise.
* testsuite/23_containers/headers/map/synopsis.cc: Likewise.

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

13 years ago2010-10-26 Tobias Burnus <burnus@net-b.de>
burnus [Tue, 26 Oct 2010 06:49:43 +0000 (06:49 +0000)]
2010-10-26  Tobias Burnus  <burnus@net-b.de>

        PR fortran/45451
        * trans-stmt.c (gfc_trans_allocate): Do a deep-copy for SOURCE=.

        PR fortran/43018
        * trans-array.c (duplicate_allocatable): Use size of type and not
        the size of the pointer to the type.

2010-10-26  Tobias Burnus <burnus@net-b.de>

        PR fortran/45451
        * gfortran.dg/class_allocate_5.f90: New.

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

13 years ago Implement opaque-enum-specifiers for C++0x.
jason [Tue, 26 Oct 2010 04:56:45 +0000 (04:56 +0000)]
Implement opaque-enum-specifiers for C++0x.
gcc/
* tree.h (ENUM_IS_OPAQUE): New.
* dwarf2out.c (gen_enumeration_type_die): Use ENUM_IS_OPAQUE.
gcc/cp/
* cp-tree.h (SET_OPAQUE_ENUM_P): New.
(OPAQUE_ENUM_P): New.
(ENUM_FIXED_UNDERLYING_TYPE_P): New.
(start_enum): Update prototype.
(finish_enum_value_list): New prototype.
* parser.c (cp_parser_elaborated_type_specifier): Issue a pedwarn if
"enum class" is used in an elaborated-type-specifier.
(cp_parser_enum_specifier): Rewrite to parse opaque-enum-specifiers.
* decl.c (copy_type_enum): New.
(finish_enum_value_list): New, with code from finish_enum.
(finish_enum): A lot of code removed. Added a gcc_assert.
(start_enum): Add parameters enumtype and is_new.
Rewrite to work with opaque-enum-specifiers.
* pt.c (maybe_process_partial_specialization): Allow for template
specialization of enumerations, with a pedwarn.
(lookup_template_class): Update call to start_enum. Call to
SET_OPAQUE_ENUM_P.
(tsubst_enum): Call to begin_scope, finish_scope and
finish_enum_value_list.

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

13 years ago * stor-layout.c (layout_decl): Use the field's type to
jiez [Tue, 26 Oct 2010 03:22:49 +0000 (03:22 +0000)]
* stor-layout.c (layout_decl): Use the field's type to
determine the mode and keep DECL_BIT_FIELD for a volatile
bit-field.
* config/arm/arm.c (arm_override_options): Default to
-fstrict-volatile-bitfields.

testsuite/
* gcc.target/arm/volatile-bitfields-1.c: New test.
* gcc.target/arm/volatile-bitfields-2.c: New test.
* gcc.target/arm/volatile-bitfields-3.c: New test.

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

13 years ago* config/pdp11/pdp11.md: Add define_constants for register
pkoning [Tue, 26 Oct 2010 00:46:55 +0000 (00:46 +0000)]
* config/pdp11/pdp11.md: Add define_constants for register
numbers, branch offset limits.
* config/pdp11/pdp11.c: Use named constants instead of numbers.
* config/pdp11.pdp11.h: Ditto.

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

13 years agoDaily bump.
gccadmin [Tue, 26 Oct 2010 00:17:04 +0000 (00:17 +0000)]
Daily bump.

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

13 years ago * gcc-interface/utils2.c: Include flags.h and remove prototypes.
ebotcazou [Mon, 25 Oct 2010 19:29:10 +0000 (19:29 +0000)]
* gcc-interface/utils2.c: Include flags.h and remove prototypes.
(build_unary_op) <TRUTH_NOT_EXPR>: When not optimizing, fold the result
of the call to invert_truthvalue_loc.
* gcc-interface/Make-lang.in (utils2.o): Add $(FLAGS_H).

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

13 years agoCorrect the Changelog entries.
cfang [Mon, 25 Oct 2010 18:17:48 +0000 (18:17 +0000)]
Correct the Changelog entries.

* Changelog (2010-10-22  Changpeng Fang): Correct the
Changelog entries.

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

13 years ago * gcc-interface/utils.c (update_pointer_to): Clear TYPE_POINTER_TO and
ebotcazou [Mon, 25 Oct 2010 17:44:05 +0000 (17:44 +0000)]
* gcc-interface/utils.c (update_pointer_to): Clear TYPE_POINTER_TO and
TYPE_REFERENCE_TO of the old type after redirecting its pointer and
reference types.

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

13 years ago * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Type>: Do not set
ebotcazou [Mon, 25 Oct 2010 17:26:04 +0000 (17:26 +0000)]
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Type>: Do not set
TREE_THIS_NOTRAP on the INDIRECT_REF node built for the template.

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

13 years ago2010-10-25 Steven G. Kargl <kargl@gcc.gnu.org>
kargl [Mon, 25 Oct 2010 16:07:34 +0000 (16:07 +0000)]
2010-10-25  Steven G. Kargl  <kargl@gcc.gnu.org>

PR fortran/46140
* fortran/scanner.c (include_line): Check return value of load_file.

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

13 years ago2010-10-25 Jose Ruiz <ruiz@adacore.com>
charlet [Mon, 25 Oct 2010 15:28:13 +0000 (15:28 +0000)]
2010-10-25  Jose Ruiz  <ruiz@adacore.com>

* gcc-interface/Makefile.in (LIBGNAT_TARGET_PAIRS for powerpc-linux):
Reorganize target pairs so that it works on linux and ElinOS.

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

13 years ago2010-10-25 Pascal Obry <obry@adacore.com>
charlet [Mon, 25 Oct 2010 15:26:02 +0000 (15:26 +0000)]
2010-10-25  Pascal Obry  <obry@adacore.com>

* adaint.c (__gnat_file_time_name_attr): Use GetFileAttributesEx to get
the timestamp. A bit faster than opening/closing the file.
(__gnat_stat_to_attr): Remove kludge for Windows.
(__gnat_file_exists_attr): Likewise.
The timestamp is now retreived using GetFileAttributesEx as faster.

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

* sem_ch3.adb (Derive_Interface_Subprogram): New subprogram.
(Derive_Subprograms): For abstract private types transfer to the full
view entities of uncovered interface primitives. Required because if
the interface primitives are left in the private part of the package
they will be decorated as hidden when the analysis of the enclosing
package completes (and hence the interface primitive is not visible
for dispatching calls).

2010-10-25  Matthew Heaney  <heaney@adacore.com>

* Makefile.rtl, impunit.adb: Added bounded set and bounded map
containers.
* a-crbltr.ads: Added declaration of generic package for bounded tree
types.
* a-rbtgbo.ads, a-rbtgbo.adb, a-rbtgbk.ads, a-rbtgbk.adb, a-btgbso.ads,
a-btgbso.adb, a-cborse.ads, a-cborse.adb, a-cborma.ads, a-cborma.adb:
New.

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

* sem_util.adb: Minor reformatting.
* usage.adb: Fix usage line for -gnatwh.

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

* sem_ch12.adb (Analyze_Package_Instantiation): For an
instantiation in an RCI spec, omit package body if instantiation comes
from source, even as a nested
package.
* exp_dist.adb (Add_Calling_Stubs_To_Declarations,
*_Support.Add_Receiving_Stubs_To_Declarations): Handle the case of
nested packages, package instantiations and subprogram instantiations.

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