OSDN Git Service

pf3gnuchains/gcc-fork.git
12 years ago2011-09-09 Richard Guenther <rguenther@suse.de>
rguenth [Fri, 9 Sep 2011 09:06:49 +0000 (09:06 +0000)]
2011-09-09  Richard Guenther  <rguenther@suse.de>

PR middle-end/50333
* tree-data-ref.c (split_constant_offset): Do not try to handle
ternary ops.

* gcc.dg/torture/pr50333.c: New testcase.

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

12 years agoDaily bump.
gccadmin [Fri, 9 Sep 2011 00:19:15 +0000 (00:19 +0000)]
Daily bump.

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

12 years ago2011-09-09 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Thu, 8 Sep 2011 22:42:21 +0000 (22:42 +0000)]
2011-09-09  Paolo Carlini  <paolo.carlini@oracle.com>

PR libstdc++/50336
* include/bits/streambuf_iterator.h (class istreambuf_iterator):
Implement LWG 445 in C++0x mode.
* testsuite/24_iterators/istreambuf_iterator/requirements/dr445.cc:
New.

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

12 years agoFix PR c/50332
dodji [Thu, 8 Sep 2011 21:46:14 +0000 (21:46 +0000)]
Fix PR c/50332

gcc/testsuite/

* gcc.dg/attr-invalid.c: Adjust as __attribute__((used) is no
longer ignored on typedefs.

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

12 years ago * gcc-interface/utils.c (unchecked_convert): Use a field of the right
ebotcazou [Thu, 8 Sep 2011 21:12:37 +0000 (21:12 +0000)]
* gcc-interface/utils.c (unchecked_convert): Use a field of the right
precision when converting to or from an integral type whose precision
is not equal to its size.

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

12 years ago2011-09-08 Andrew Stubbs <ams@codesourcery.com>
ams [Thu, 8 Sep 2011 19:45:37 +0000 (19:45 +0000)]
2011-09-08  Andrew Stubbs  <ams@codesourcery.com>

PR tree-optimization/50318

gcc/
* tree-ssa-math-opts.c (convert_plusminus_to_widen): Correct
typo in use of mult_rhs1 and mult_rhs2.

gcc/testsuite/
* gcc.target/arm/pr50318-1.c: New file.

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

12 years ago * config/i386.c (standard_sse_constant_opcode): Fix last commit.
uros [Thu, 8 Sep 2011 18:30:43 +0000 (18:30 +0000)]
* config/i386.c (standard_sse_constant_opcode): Fix last commit.

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

12 years ago2011-09-08 Uros Bizjak <ubizjak@gmail.com>
uros [Thu, 8 Sep 2011 18:24:04 +0000 (18:24 +0000)]
2011-09-08  Uros Bizjak  <ubizjak@gmail.com>

* config/i386/i386.c (standard_sse_constant_p): Handle AVX2 modes.
(standard_sse_constant_opcode) <case 2>: Change vpcmpeqd template.

testsuite/ChangeLog:

2011-09-08  Uros Bizjak  <ubizjak@gmail.com>

* gcc.target/i386/all_one_m256i.c: New test.

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

12 years ago * config/arm/arm.md (push_multi): Emit predicates.
bernds [Thu, 8 Sep 2011 16:29:17 +0000 (16:29 +0000)]
* config/arm/arm.md (push_multi): Emit predicates.
(push_fp_multi): Likewise.
* config/arm/arm.c (vfp_output_fstmd): Likewise.

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

12 years ago2011-09-08 Mikael Morin <mikael.morin@sfr.fr>
mikael [Thu, 8 Sep 2011 15:40:48 +0000 (15:40 +0000)]
2011-09-08  Mikael Morin  <mikael.morin@sfr.fr>

* trans-array.c (gfc_trans_constant_array_constructor): Remove
superfluous initialisation of DIM field.
(gfc_trans_array_constructor): Assert that DIMEN field is properly set.
(gfc_conv_expr_descriptor): Ditto.
* trans-expr.c (gfc_conv_procedure_call): Ditto.

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

12 years ago2011-09-08 Mikael Morin <mikael.morin@sfr.fr>
mikael [Thu, 8 Sep 2011 15:30:39 +0000 (15:30 +0000)]
2011-09-08  Mikael Morin  <mikael.morin@sfr.fr>

* trans-array.h (gfc_get_scalar_ss): New prototype.
* trans-array.c (gfc_get_scalar_ss): New function.
(gfc_walk_variable_expr, gfc_walk_op_expr,
gfc_walk_elemental_function_args): Re-use gfc_get_scalar_ss.
* trans-expr.c (gfc_trans_subarray_assign): Ditto.
(gfc_trans_assignment_1): Ditto.
* trans-stmt.c (compute_inner_temp_size, gfc_trans_where_assign,
gfc_trans_where_3): Ditto.

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

12 years ago2011-09-08 Mikael Morin <mikael.morin@sfr.fr>
mikael [Thu, 8 Sep 2011 15:18:20 +0000 (15:18 +0000)]
2011-09-08  Mikael Morin  <mikael.morin@sfr.fr>

* trans-array.h (gfc_get_temp_ss): New prototype.
* trans-array.c (gfc_get_temp_ss): New function.
(gfc_conv_resolve_dependencies): Re-use gfc_get_temp_ss.
(gfc_conv_expr_descriptor): Ditto.
* trans-expr.c (gfc_conv_subref_array_arg): Ditto.

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

12 years ago2011-09-08 Mikael Morin <mikael.morin@sfr.fr>
mikael [Thu, 8 Sep 2011 15:07:01 +0000 (15:07 +0000)]
2011-09-08  Mikael Morin  <mikael.morin@sfr.fr>

* trans-array.h (gfc_get_array_ss): New prototype.
* trans-array.c (gfc_get_array_ss): New function.
(gfc_walk_variable_expr, gfc_walk_function_expr,
gfc_walk_array_constructor): Re-use gfc_get_array_ss.
* trans-expr.c (gfc_trans_subarray_assign): Ditto.
* trans-intrinsic.c (gfc_walk_intrinsic_bound,
gfc_walk_intrinsic_libfunc): Ditto.
* trans-io.c (transfer_array_component): Ditto.

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

12 years ago/cp
paolo [Thu, 8 Sep 2011 14:58:21 +0000 (14:58 +0000)]
/cp
2011-09-08  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/50324
* typeck2.c (digest_init_r): Call complete_type_or_maybe_complain
instead of complete_type_or_else.

/testsuite
2011-09-08  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/50324
* g++.dg/cpp0x/sfinae28.C: New.

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

12 years agoPR c++/33255 - Support -Wunused-local-typedefs warning
dodji [Thu, 8 Sep 2011 13:54:24 +0000 (13:54 +0000)]
PR c++/33255 - Support -Wunused-local-typedefs warning

gcc/

* c-decl.c (lookup_name): Use the new
maybe_record_typedef_use.
(pushdecl): Use the new
record_locally_defined_typedef.
(store_parm_decls): Allocate cfun->language.
(finish_function): Use the new maybe_warn_unused_local_typedefs,
and free cfun->language.
(c_push_function_context): Allocate cfun->language here only if
needed.
(c_pop_function_context): Likewise, mark cfun->language
for collection only when it should be done.
* c-common.c (handle_used_attribute): Don't ignore TYPE_DECL
nodes.
* c-typeck.c (c_expr_sizeof_type, c_cast_expr): Use the new
maybe_record_local_typedef_use.

gcc/c-family

* c-common.h (struct c_language_function::local_typedefs): New
field.
(record_locally_defined_typedef, maybe_record_typedef_use)
(maybe_warn_unused_local_typedefs): Declare new functions.
* c-common.c (record_locally_defined_typedef)
(maybe_record_typedef_use)
(maybe_warn_unused_local_typedefs): Define new functions.
* c.opt: Declare new -Wunused-local-typedefs flag.

gcc/cp

* name-lookup.c (pushdecl_maybe_friend_1): Use the new
record_locally_defined_typedef.
* decl.c (finish_function): Use the new
maybe_warn_unused_local_typedefs.
(grokfield): Use the new record_locally_defined_typedef.
* parser.c (lookup_name): Use the new maybe_record_typedef_use.

gcc/doc/

* invoke.texi: Update documentation for -Wunused-local-typedefs.

gcc/testsuite/

* g++.dg/warn/Wunused-local-typedefs.C: New test file.
* c-c++-common/Wunused-local-typedefs.c: Likewise.

libstdc++-v3/

* include/ext/bitmap_allocator.h
(__detail::__mini_vector::__lower_bound): Remove unused typedef.
* src/istream.cc (std::operator>>(basic_istream<char>& __in,
basic_string<char>& __str)): Likewise.
(std::getline): Likewise.
* src/valarray.cc (__valarray_product): Likewise.

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

12 years agoImprove AGU stalls avoidance optimization.
hjl [Thu, 8 Sep 2011 13:41:27 +0000 (13:41 +0000)]
Improve AGU stalls avoidance optimization.

2011-09-08  Enkovich Ilya  <ilya.enkovich@intel.com>

* config/i386/i386-protos.h (ix86_lea_outperforms): New.
(ix86_avoid_lea_for_add): Likewise.
(ix86_avoid_lea_for_addr): Likewise.
(ix86_split_lea_for_addr): Likewise.

* config/i386/i386.c (LEA_MAX_STALL): New.
(increase_distance): Likewise.
(insn_defines_reg): Likewise.
(insn_uses_reg_mem): Likewise.
(distance_non_agu_define_in_bb): Likewise.
(distance_agu_use_in_bb): Likewise.
(ix86_lea_outperforms): Likewise.
(ix86_ok_to_clobber_flags): Likewise.
(ix86_avoid_lea_for_add): Likewise.
(ix86_avoid_lea_for_addr): Likewise.
(ix86_split_lea_for_addr): Likewise.
(distance_non_agu_define): Search in pred BBs added.
(distance_agu_use): Search in succ BBs added.
(IX86_LEA_PRIORITY): Value changed from 2 to 0.
(LEA_SEARCH_THRESHOLD): Now depends on LEA_MAX_STALL.
(ix86_lea_for_add_ok): Use ix86_lea_outperforms to make decision.

* config/i386/i386.md: Split added to transform non destructive
add into move and add.
(lea_1): transformed into insn_and_split to avoid AGU stalls.
(lea<mode>_2): Likewise.

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

12 years ago2011-09-08 Martin Jambor <mjambor@suse.cz>
jamborm [Thu, 8 Sep 2011 13:09:38 +0000 (13:09 +0000)]
2011-09-08  Martin Jambor  <mjambor@suse.cz>

PR tree-optimization/50287
* ipa-split.c (split_function): Do not create SSA names for
non-gimple-registers.

* testsuite/gcc.dg/torture/pr50287.c: New test.

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

12 years ago2011-09-08 Richard Guenther <rguenther@suse.de>
rguenth [Thu, 8 Sep 2011 13:00:23 +0000 (13:00 +0000)]
2011-09-08  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/19831
* tree-ssa-dce.c (mark_all_reaching_defs_necessary_1): Also
skip builtins with vdefs that do not really store something.
(propagate_necessity): For calls to free that we can associate
with an allocation function do not mark the freed pointer
definition necessary.
(eliminate_unnecessary_stmts): Remove a call to free if
the associated call to an allocation function is not necessary.

* gcc.dg/tree-ssa/pr19831-1.c: New testcase.
* gcc.dg/tree-ssa/pr19831-2.c: Likewise.
* gcc.dg/tree-ssa/pr19831-3.c: Likewise.
* gcc.dg/errno-1.c: Adjust.

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

12 years ago2011-09-08 Richard Guenther <rguenther@suse.de>
rguenth [Thu, 8 Sep 2011 09:21:39 +0000 (09:21 +0000)]
2011-09-08  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/19831
* tree-ssa-dce.c (mark_stmt_if_obviously_necessary): Do not mark
allocation functions as necessary.

* gcc.dg/tree-ssa/ssa-dce-8.c: New testcase.

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

12 years agopart of restore of powerpc-darwin Ada bootstrap
iains [Thu, 8 Sep 2011 09:20:12 +0000 (09:20 +0000)]
part of restore of powerpc-darwin Ada bootstrap

* traceback.c (Darwin) USE_GCC_UNWINDER for Darwin
versions >= 8.

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

12 years agomake darwin port a little more cross & cross native build friendly.
iains [Thu, 8 Sep 2011 07:28:11 +0000 (07:28 +0000)]
make darwin port a little more cross & cross native build friendly.

*config/darwin-driver.c (darwin_find_version_from_kernel): New routine
cut from ... (darwin_default_min_version): Amended to provide defaults
for the cross directory case.
(darwin_driver_init): call darwin_default_min_version unconditionally.
* config/darwin.h (DEF_MIN_OSX_VERSION): New.
* config/darwin9.h: Likewise.
* config/darwin10.h: Likewise.
* config/rs6000/darwin7.h: Likewise.

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

12 years agogcc/fortran/
burnus [Thu, 8 Sep 2011 06:38:13 +0000 (06:38 +0000)]
gcc/fortran/
2011-09-08  Tobias Burnus  <burnus@net-b.de>

        PR fortran/44646
        * decl.c (gfc_match_entry, gfc_match_end): Handle
        * COMP_DO_CONCURRENT.
        * dump-parse-tree.c (show_code_node): Handle EXEC_DO_CONCURRENT.
        * gfortran.h (gfc_exec_op): Add EXEC_DO_CONCURRENT.
        * match.c (gfc_match_critical, match_exit_cycle,
        * gfc_match_stopcode,
        lock_unlock_statement, sync_statement, gfc_match_allocate,
        gfc_match_deallocate, gfc_match_return): Add DO CONCURRENT diagnostic.
        (gfc_match_do): Match DO CONCURRENT.
        (match_derived_type_spec, match_type_spec, gfc_free_forall_iterator,
        match_forall_iterator, match_forall_header, match_simple_forall,
        gfc_match_forall): Move up in the file.
        * parse.c (check_do_closure, parse_do_block): Handle do
        * concurrent.
        * parse.h (gfc_compile_state): Add COMP_DO_CONCURRENT.
        * resolve.c (do_concurrent_flag): New global variable.
        (resolve_function, pure_subroutine, resolve_branch,
        gfc_resolve_blocks, resolve_code, resolve_types): Add do concurrent
        diagnostic.
        * st.c (gfc_free_statement): Handle EXEC_DO_CONCURRENT.
        * trans-stmt.c (gfc_trans_do_concurrent): New function.
        (gfc_trans_forall_1): Handle do concurrent.
        * trans-stmt.h (gfc_trans_do_concurrent): New function
        * prototype.
        * trans.c (trans_code): Call it.
        * frontend-passes.c (gfc_code_walker): Handle
        * EXEC_DO_CONCURRENT.

gcc/testsuite/
2011-09-08  Tobias Burnus  <burnus@net-b.de>

        PR fortran/44646
        * gfortran.dg/do_concurrent_1.f90: New.
        * gfortran.dg/do_concurrent_2.f90: New.

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

12 years ago PR target/50310
jakub [Thu, 8 Sep 2011 05:58:54 +0000 (05:58 +0000)]
PR target/50310
* config/i386/i386.c (ix86_prepare_sse_fp_compare_args): Return
code early if TARGET_AVX.
(ix86_expand_fp_vcond): Handle LTGT and UNEQ.

* gcc.c-torture/execute/ieee/pr50310.c: New test.
* gcc.dg/pr50310-2.c: New test.

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

12 years ago2011-09-07 François Dumont <francois.cppdevs@free.fr>
bkoz [Thu, 8 Sep 2011 01:24:11 +0000 (01:24 +0000)]
2011-09-07  François Dumont  <francois.cppdevs@free.fr>

* testsuite/23_containers/array/at.cc: Revert to...
* testsuite/23_containers/array/at_neg.cc: ...this.

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

12 years agoDaily bump.
gccadmin [Thu, 8 Sep 2011 00:18:59 +0000 (00:18 +0000)]
Daily bump.

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

12 years ago2011-09-07 Janus Weil <janus@gcc.gnu.org>
janus [Wed, 7 Sep 2011 22:20:47 +0000 (22:20 +0000)]
2011-09-07  Janus Weil  <janus@gcc.gnu.org>

PR fortran/48095
* primary.c (gfc_match_structure_constructor): Handle parsing of
procedure pointers components in structure constructors.
* resolve.c (resolve_structure_cons): Check interface of procedure
pointer components. Changed wording of some error messages.

2011-09-07  Janus Weil  <janus@gcc.gnu.org>

PR fortran/48095
* gfortran.dg/derived_constructor_comps_2.f90: Modified.
* gfortran.dg/impure_constructor_1.f90: Modified.
* gfortran.dg/proc_ptr_comp_33.f90: New.

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

12 years ago * config/i386/sse.md (sseinsnmode): Remove 32-byte integer vector
jakub [Wed, 7 Sep 2011 19:46:14 +0000 (19:46 +0000)]
* config/i386/sse.md (sseinsnmode): Remove 32-byte integer vector
duplicates.

PR target/50310
* config/i386/sse.md (*andnot<mode>3, *<code><mode>3): Fix up
"mode" attribute computation.

* gcc.dg/pr50310-1.c: New test.

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

12 years ago * bb-reorder.c (insert_section_boundary_note): Don't check
bernds [Wed, 7 Sep 2011 17:38:29 +0000 (17:38 +0000)]
* bb-reorder.c (insert_section_boundary_note): Don't check
optimize_function_for_speed_p.
(gate_handle_partition_blocks): Do it here instead.
(gate_handle_reorder_blocks): Move preliminary checks here ...
(rest_of_handle_reorder_blocks): ... from here.

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

12 years ago PR middle-end/48571
gjl [Wed, 7 Sep 2011 17:31:01 +0000 (17:31 +0000)]
PR middle-end/48571
* gcc.c-torture/execute/pr48571-1.c (bar): Use offsets sizeof(int)
instead of 4.

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

12 years ago/cp
paolo [Wed, 7 Sep 2011 17:16:23 +0000 (17:16 +0000)]
/cp
2011-09-07  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/50309
* decl.c (grokdeclarator): Check u.function.exception_specification
for error_mark_node.

/testsuite
2011-09-07  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/50309
* g++.dg/cpp0x/noexcept14.C: New.

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

12 years ago PR c++/50298
jason [Wed, 7 Sep 2011 17:11:49 +0000 (17:11 +0000)]
PR c++/50298
* parser.c (cp_parser_member_declaration): Don't require a constant
rvalue here in C++0x.

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

12 years ago * pt.c (type_unification_real): Correct complain arg for tsubsting
jason [Wed, 7 Sep 2011 17:11:37 +0000 (17:11 +0000)]
* pt.c (type_unification_real): Correct complain arg for tsubsting
default template args.

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

12 years ago * pt.c (tsubst_aggr_type): Check TYPE_P before tsubsting.
jason [Wed, 7 Sep 2011 17:11:20 +0000 (17:11 +0000)]
* pt.c (tsubst_aggr_type): Check TYPE_P before tsubsting.

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

12 years ago * gcc.dg/section1.c: Don't xfail for avr.
gjl [Wed, 7 Sep 2011 16:55:08 +0000 (16:55 +0000)]
* gcc.dg/section1.c: Don't xfail for avr.

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

12 years ago PR tree-optimization/50322
gjl [Wed, 7 Sep 2011 16:09:12 +0000 (16:09 +0000)]
PR tree-optimization/50322
* gcc.dg/tree-ssa/ivopts-lt.c: Add xfails for avr.

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

12 years ago * regrename.c (struct du_head): Make nregs signed.
bernds [Wed, 7 Sep 2011 15:57:45 +0000 (15:57 +0000)]
* regrename.c (struct du_head): Make nregs signed.
(closed_chains): Remove.
(create_new_chain): Return the new chain.
(chain_from_id): New static function.
(dump_def_use_chain): Change argument to be an int, indicating
the first ID to print.  All callers changed.
(merge_overlapping_regs): Use chain_from_id.  Assert that
chains don't conflict with themselves.
(rename_chains): Take no argument.  Iterate over id_to_chain
rather to find chains to rename.  Clear tick before the main
loop.
(struct incoming_reg_info): New struct.
(struct bb_rename_info): New struct.
(init_rename_info, set_incoming_from_chain, merge_chains): New
static functions.
(regrename_analyze): New static function, broken out of
regrename_optimize.  Record and make use of open chain information
at basic block boundaries, and merge chains where possible.
(scan_rtx_reg): Make this_nregs signed.  Don't update
closed_chains.
(build_def_use): Return a bool to indicate success.  All callers
changed.  Don't initialize global data here.
(regrename_optimize): Move most code out of here into
regrename_analyze.
* regs.h (add_range_to_hard_reg_set, remove_range_from_hard_reg_set,
range_overlaps_hard_reg_set_p, range_in_hard_reg_set_p): New
static inline functions.
* vec.h (FOR_EACH_VEC_ELT_FROM): New macro.

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

12 years ago2011-09-07 Martin Jambor <mjambor@suse.cz>
jamborm [Wed, 7 Sep 2011 15:36:53 +0000 (15:36 +0000)]
2011-09-07  Martin Jambor  <mjambor@suse.cz>

* g++.dg/tree-ssa/pr49911.C: Added flag -fstrict-enums.

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

12 years ago2011-09-07 Martin Jambor <mjambor@suse.cz>
jamborm [Wed, 7 Sep 2011 14:31:40 +0000 (14:31 +0000)]
2011-09-07  Martin Jambor  <mjambor@suse.cz>

PR middle-end/50301
* ipa-cp.c (find_more_values_for_callers_subset): Check jump
function index bounds.
(perhaps_add_new_callers): Likewise.

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

12 years ago2011-09-07 Martin Jambor <mjambor@suse.cz>
jamborm [Wed, 7 Sep 2011 14:25:39 +0000 (14:25 +0000)]
2011-09-07  Martin Jambor  <mjambor@suse.cz>

PR tree-optimization/49911
* tree-sra.c (analyze_access_subtree): Change type of to-be-replaced
enumerations to the corresponding plain integer type.

* testsuite/g++.dg/tree-ssa/pr49911.C: New test.

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

12 years ago2011-09-07 Richard Guenther <rguenther@suse.de>
rguenth [Wed, 7 Sep 2011 14:19:33 +0000 (14:19 +0000)]
2011-09-07  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/50319
* tree-if-conv.c (set_bb_predicate): Assert we only set
canonical predicates.
(add_to_predicate_list): Simplify.  Allow TRUTH_NOT_EXPR
around canonical predicates.
(predicate_bbs): Do not re-gimplify already canonical
predicates.  Properly unshare them though.
(find_phi_replacement_condition): Simplify.

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

12 years agogcc/
rsandifo [Wed, 7 Sep 2011 13:48:03 +0000 (13:48 +0000)]
gcc/
PR target/49030
* config/arm/arm-protos.h (maybe_get_arm_condition_code): Declare.
* config/arm/arm.c (maybe_get_arm_condition_code): New function,
reusing the old code from get_arm_condition_code.  Return ARM_NV
for invalid comparison codes.
(get_arm_condition_code): Redefine in terms of
maybe_get_arm_condition_code.
* config/arm/predicates.md (arm_comparison_operator): Use
maybe_get_arm_condition_code.

gcc/testsuite/
PR target/49030
* gcc.dg/torture/pr49030.c: New test.

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

12 years ago2011-09-07 Janus Weil <janus@gcc.gnu.org>
janus [Wed, 7 Sep 2011 13:31:04 +0000 (13:31 +0000)]
2011-09-07  Janus Weil  <janus@gcc.gnu.org>

PR fortran/50288
* gfortran.dg/class_4c.f03: Modified ("dg-do link" and "dg-final").
* gfortran.dg/class_4d.f03: Deleted.
* gfortran.dg/class_45b.f03: Modififed ("dg-do link").

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

12 years ago2011-09-07 Richard Guenther <rguenther@suse.de>
rguenth [Wed, 7 Sep 2011 13:02:05 +0000 (13:02 +0000)]
2011-09-07  Richard Guenther  <rguenther@suse.de>

* tree-ssa-forwprop.c (forward_propagate_into_gimple_cond):
Canonicalize negated predicates by swapping edges.
(forward_propagate_into_cond): Likewise.

* gcc.dg/tree-ssa/forwprop-16.c: New testcase.

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

12 years ago2011-09-07 Richard Guenther <rguenther@suse.de>
rguenth [Wed, 7 Sep 2011 11:28:39 +0000 (11:28 +0000)]
2011-09-07  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/50213
* tree-flow.h (simple_iv_increment_p): Declare.
* tree-ssa-dom.c (simple_iv_increment_p): Export.  Also handle
POINTER_PLUS_EXPR.
* tree-ssa-forwprop.c (ssa_forward_propagate_and_combine): Do
not propagate simple IV counter increments.

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

12 years agorestore powerpc-darwin Ada boostrap.
iains [Wed, 7 Sep 2011 09:39:49 +0000 (09:39 +0000)]
restore powerpc-darwin Ada boostrap.

gcc:
* config/rs6000/rs6000.c (compute_save_world_info): Test
cfun->has_nonlocal_label to determine if the out-of-line save
world call may be used.
ada:
* gcc-interface/Makefile.in (darwin): Provide powerpc64 system
implementation.
* system-darwin-ppc64.ads: New file.

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

12 years ago2011-09-07 Jiangning Liu <jiangning.liu@arm.com>
xguo [Wed, 7 Sep 2011 08:25:38 +0000 (08:25 +0000)]
2011-09-07  Jiangning Liu  <jiangning.liu@arm.com>

PR tree-optimization/46021
* gcc.dg/tree-ssa/20040204-1.c: Don't XFAIL on arm*-*-*.

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

12 years ago * config/mn10300/mn10300.c (mn10300_insert_setlb_lcc): Set the jump
nickc [Wed, 7 Sep 2011 07:43:22 +0000 (07:43 +0000)]
* config/mn10300/mn10300.c (mn10300_insert_setlb_lcc): Set the jump
label on the parallel part of the insn.

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

12 years ago PR debug/50191
jakub [Wed, 7 Sep 2011 07:32:46 +0000 (07:32 +0000)]
PR debug/50191
* dwarf2out.c (mem_loc_descriptor) <case MEM>: Try
avoid_constant_pool_reference first instead of last.

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

12 years agoDaily bump.
gccadmin [Wed, 7 Sep 2011 00:18:56 +0000 (00:18 +0000)]
Daily bump.

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

12 years ago2011-09-06 Benjamin Kosnik <bkoz@redhat.com>
bkoz [Wed, 7 Sep 2011 00:17:09 +0000 (00:17 +0000)]
2011-09-06  Benjamin Kosnik  <bkoz@redhat.com>

* include/std/tuple (_Tuple_impl::_M_head, _M_tail): Mark constexpr.
(tuple(tuple&&)): Same.
(tuple(const tuple<_UElements...>& __in)): Same.
(tuple(tuple<_UElements...>&& __in)): Same.
(tuple_cat(const tuple<_TElements...>&, const tuple<_UElements...>&)):
Same.
(get): Same.
* include/std/array: Consolidate array::data usage.
* testsuite/23_containers/array/requirements/constexpr_functions.cc:
Remove extra include.
* testsuite/20_util/tuple/creation_functions/constexpr.cc: New.
* testsuite/20_util/tuple/cons/constexpr-2.cc: Add tests.
* testsuite/20_util/tuple/cons/constexpr-3.cc: Same.
* testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust line numbers.

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

12 years agoUpdate documentation about tm_p.h
meissner [Tue, 6 Sep 2011 23:29:48 +0000 (23:29 +0000)]
Update documentation about tm_p.h

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

12 years ago2011-09-06 François Dumont <fdumont@gcc.gnu.org>
paolo [Tue, 6 Sep 2011 22:13:46 +0000 (22:13 +0000)]
2011-09-06  François Dumont  <fdumont@gcc.gnu.org>
    Paolo Carlini  <paolo.carlini@oracle.com>

* include/bits/hashtable_policy.h (_Prime_rehash_policy::
_M_next_bkt): Cast _M_max_load_factor to long double.
(_Prime_rehash_policy::_M_bkt_for_elements): Use _M_next_bkt.
(_Prime_rehash_policy::_M_need_rehash): Likewise; cast all
float quantities to long double.

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

12 years agoFix altivec-17.C to match current compiler error message
meissner [Tue, 6 Sep 2011 22:06:59 +0000 (22:06 +0000)]
Fix altivec-17.C to match current compiler error message

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

12 years agoFix typo
ebotcazou [Tue, 6 Sep 2011 21:21:58 +0000 (21:21 +0000)]
Fix typo

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

12 years ago PR middle-end/50266
ebotcazou [Tue, 6 Sep 2011 21:17:46 +0000 (21:17 +0000)]
PR middle-end/50266
* c-common.c (c_fully_fold_internal) <ADDR_EXPR>: Fold offsetof-like
computations.

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

12 years ago2011-09-06 Uros Bizjak <ubizjak@gmail.com>
uros [Tue, 6 Sep 2011 21:04:55 +0000 (21:04 +0000)]
2011-09-06  Uros Bizjak  <ubizjak@gmail.com>

        * config/i386/i386.c (ix86_function_value_regno_p): Use AX_REG.
        (function_value_32): Do not check TARGET_MMX, TARGET_SSE or TARGET_AVX.

testsuite/ChangeLog:

2011-09-06  Uros Bizjak  <ubizjak@gmail.com>

        * gcc.target/i386/builtin-apply-mmx.c: Require ia32 effective target.

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

12 years ago * config/darwin10.h Remove duplicate LIB_SPEC.
iains [Tue, 6 Sep 2011 20:02:24 +0000 (20:02 +0000)]
* config/darwin10.h Remove duplicate LIB_SPEC.

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

12 years ago * gcc-interface/Makefile.in (gnatlib-shared-darwin): Remove
iains [Tue, 6 Sep 2011 19:21:27 +0000 (19:21 +0000)]
* gcc-interface/Makefile.in (gnatlib-shared-darwin): Remove
reference to "-lm".

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

12 years ago * gcc-interface/Makefile.in (darwin, SO_OPTS): Provide architecture
iains [Tue, 6 Sep 2011 18:53:29 +0000 (18:53 +0000)]
* gcc-interface/Makefile.in (darwin, SO_OPTS): Provide architecture
size switches to the link phase for shared libs.

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

12 years ago * gcc-interface/Makefile.in (x86_64 darwin arch): Adjust
iains [Tue, 6 Sep 2011 18:38:41 +0000 (18:38 +0000)]
* gcc-interface/Makefile.in (x86_64 darwin arch): Adjust
LIBGNAT_TARGET_PAIRS for x86 and x86_64 variants.

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

12 years ago PR c++/50296
jason [Tue, 6 Sep 2011 18:09:01 +0000 (18:09 +0000)]
PR c++/50296
* semantics.c (register_constexpr_fundef): Call is_valid_constexpr_fn.
(cx_check_missing_mem_inits): Handle bases and empty trivial members.
(validate_constexpr_fundecl): Remove.
* decl.c (start_preparsed_function): Don't call it.
* cp-tree.h: Don't declare it.

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

12 years agoPR middle-end/44382: Tree reassociation improvement
hjl [Tue, 6 Sep 2011 16:42:47 +0000 (16:42 +0000)]
PR middle-end/44382: Tree reassociation improvement

gcc/

2011-09-06  Enkovich Ilya  <ilya.enkovich@intel.com>

PR middle-end/44382
* target.def (reassociation_width): New hook.

* doc/tm.texi.in (reassociation_width): Likewise.

* doc/tm.texi (reassociation_width): Likewise.

* doc/invoke.texi (tree-reassoc-width): New param documented.

* hooks.h (hook_int_uint_mode_1): New default hook.

* hooks.c (hook_int_uint_mode_1): Likewise.

* config/i386/i386.h (ix86_tune_indices): Add
X86_TUNE_REASSOC_INT_TO_PARALLEL and
X86_TUNE_REASSOC_FP_TO_PARALLEL.

(TARGET_REASSOC_INT_TO_PARALLEL): New.
(TARGET_REASSOC_FP_TO_PARALLEL): Likewise.

* config/i386/i386.c (initial_ix86_tune_features): Add
X86_TUNE_REASSOC_INT_TO_PARALLEL and
X86_TUNE_REASSOC_FP_TO_PARALLEL.

(ix86_reassociation_width) implementation of
new hook for i386 target.

* params.def (PARAM_TREE_REASSOC_WIDTH): New param added.

* tree-ssa-reassoc.c (get_required_cycles): New function.
(get_reassociation_width): Likewise.
(swap_ops_for_binary_stmt): Likewise.
(rewrite_expr_tree_parallel): Likewise.

(rewrite_expr_tree): Refactored. Part of code moved into
swap_ops_for_binary_stmt.

(reassociate_bb): Now checks reassociation width to be used
and call rewrite_expr_tree_parallel instead of rewrite_expr_tree
if needed.

gcc/testsuite/

2011-09-06  Enkovich Ilya  <ilya.enkovich@intel.com>

* gcc.dg/tree-ssa/pr38533.c (dg-options): Added option
--param tree-reassoc-width=1.

* gcc.dg/tree-ssa/reassoc-24.c: New test.
* gcc.dg/tree-ssa/reassoc-25.c: Likewise.

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

12 years ago2011-09-06 Richard Guenther <rguenther@suse.de>
rguenth [Tue, 6 Sep 2011 15:56:20 +0000 (15:56 +0000)]
2011-09-06  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/47025
* tree-ssa-alias.c (ref_maybe_used_by_call_p_1): BUILT_IN_VA_END
uses nothing.
(call_may_clobber_ref_p_1): BUILT_IN_VA_END is a barrier like
BUILT_IN_FREE.
(stmt_kills_ref_p_1): BUILT_IN_VA_END kills what its argument
definitely points to.
* tree-ssa-structalias.c (find_func_aliases_for_builtin_call):
BUILT_IN_VA_START doesn't let its va_list argument escape.
* tree-ssa-dce.c (propagate_necessity): BUILT_IN_VA_END does
not make any previous stores necessary.

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

12 years ago * gcc-interface/Makefile.in, gcc-interface/Make-lang.in
charlet [Tue, 6 Sep 2011 15:12:52 +0000 (15:12 +0000)]
* gcc-interface/Makefile.in, gcc-interface/Make-lang.in
(gnattools, regnattools, cross-gnattools, canadian-gnattools,
gnatlib, gnatlib-sjlj, gnatlib-zcx, gnatlib-shared, gnatlib_and_tools):
New targets.
(TOOLS_FLAGS_TO_PASS): New.
(../stamp-tools): Reintroduce, to avoid merge conflicts.

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

12 years ago2011-09-06 Martin Jambor <mjambor@suse.cz>
jamborm [Tue, 6 Sep 2011 14:46:55 +0000 (14:46 +0000)]
2011-09-06  Martin Jambor  <mjambor@suse.cz>

* ipa-inline.h (struct inline_summary): Move versionable flag...
* cgraph.h (struct cgraph_local_info): ...here
* ipa-cp.c (determine_versionability): Use the new versionable flag.
(determine_versionability): Likewise.
(ipcp_versionable_function_p): Likewise.
(ipcp_generate_summary): Likewise.
* ipa-inline-analysis.c (dump_inline_summary): Do not dump the
versionable flag.
(compute_inline_parameters): Do not clear the versionable flag.
(inline_read_section): Do not stream the versionable flag.
(inline_write_summary): Likewise.
* lto-cgraph.c (lto_output_node): Stream the versionable flag.
(input_overwrite_node): Likewise.

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

12 years ago2011-09-06 Richard Guenther <rguenther@suse.de>
rguenth [Tue, 6 Sep 2011 14:36:00 +0000 (14:36 +0000)]
2011-09-06  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/48149
* tree-ssa-sccvn.c (vn_get_expr_for): Simplify.  Fix tuplification bug.
(vn_valueize): Move earlier.
(valueize_expr): Use vn_valueize.
(simplify_binary_expression): Simplify, also combine COMPLEX_EXPR
operands.
(simplify_unary_expression): Simplify.

* gcc.dg/tree-ssa/ssa-fre-32.c: New testcase.

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

12 years ago2011-09-06 Robert Dewar <dewar@adacore.com>
charlet [Tue, 6 Sep 2011 13:31:15 +0000 (13:31 +0000)]
2011-09-06  Robert Dewar  <dewar@adacore.com>

* sem_ch10.adb, impunit.ads, impunit.adb (Not_Impl_Defined_Unit): New
name for Is_RM_Defined_Unit. Also several fixes to this unit.

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

12 years ago2011-09-06 Richard Guenther <rguenther@suse.de>
rguenth [Tue, 6 Sep 2011 13:17:50 +0000 (13:17 +0000)]
2011-09-06  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/48317
* tree-ssa-sccvn.h (struct vn_nary_op_s): Make op a true
trailing array.
(sizeof_vn_nary_op): New inline function.
(vn_nary_op_lookup_pieces): Adjust.
(vn_nary_op_insert_pieces): Likewise.
* tree-ssa-sccvn.c (vn_nary_op_eq): Also compare the length.
(init_vn_nary_op_from_pieces): Adjust signature.  Deal with
any number of operands.
(vn_nary_length_from_stmt): New function.
(init_vn_nary_op_from_stmt): Adjust for CONSTRUCTOR handling.
(vn_nary_op_lookup_pieces): Adjust signature and allocate properly
sized temporary.
(vn_nary_op_lookup): Likewise.
(vn_nary_op_lookup_stmt): Likewise.
(vn_nary_op_insert_into): Likewise.
(vn_nary_op_insert_stmt): Likewise.
(visit_use): Handle CONSTRUCTOR as nary.
* tree-ssa-pre.c (phi_translate_1): Adjust.
(create_expression_by_pieces): Likewise.
(compute_avail): Likewise.

* gcc.dg/tree-ssa/ssa-fre-31.c: New testcase.

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

12 years ago2011-09-06 Robert Dewar <dewar@adacore.com>
charlet [Tue, 6 Sep 2011 13:09:41 +0000 (13:09 +0000)]
2011-09-06  Robert Dewar  <dewar@adacore.com>

* impunit.ads, impunit.adb (Is_RM_Defined_Unit): New function.
* s-rident.ads: New restriction No_Implementation_Units
(this restriction is also part of the profile
No_Implementation_Extensions)
* sem_ch10.adb (Analyze_With_Clause): Add check for
No_Implementation_Units restriction.

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

12 years ago2011-09-06 Jerome Guitton <guitton@adacore.com>
charlet [Tue, 6 Sep 2011 13:07:09 +0000 (13:07 +0000)]
2011-09-06  Jerome Guitton  <guitton@adacore.com>

* sysdep.c (__gnat_get_task_options): Disable VX_SPE_TASK
on vThreads.

2011-09-06  Thomas Quinot  <quinot@adacore.com>

* s-solita.adb: Minor reformatting.

2011-09-06  Ed Schonberg  <schonberg@adacore.com>

* sem_ch6.adb (Analyze_Subprogram_Body_Helper): The body that
is a rewriting of an expression function does not freeze previous
entities.

2011-09-06  Robert Dewar  <dewar@adacore.com>

* impunit.adb (Is_Known_Unit): Fix bad handling of Ada 2012 case

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

12 years ago2011-09-06 Tristan Gingold <gingold@adacore.com>
charlet [Tue, 6 Sep 2011 12:16:01 +0000 (12:16 +0000)]
2011-09-06  Tristan Gingold  <gingold@adacore.com>

* gcc-interface/Makefile.in: Handle e500v2-wrs-vxworksae like
powerpc-wrs-vxworksae.

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

12 years ago2011-09-06 Thomas Quinot <quinot@adacore.com>
charlet [Tue, 6 Sep 2011 12:14:30 +0000 (12:14 +0000)]
2011-09-06  Thomas Quinot  <quinot@adacore.com>

* s-os_lib.ads (Spawn): Minor documentation clarification,
Success is True for a zero exit status.

2011-09-06  Ed Schonberg  <schonberg@adacore.com>

* sem_ch5.adb: Add message for common iterator error.

2011-09-06  Ed Schonberg  <schonberg@adacore.com>

* exp_ch3.adb (Build_Initialization_Call): If the target is a
selected component discriminated by a current instance, replace
the constraint with a reference to the target object, regardless
of whether the context is an init_proc.

2011-09-06  Robert Dewar  <dewar@adacore.com>

* exp_attr.adb: Descriptor_Size is never static.

2011-09-06  Robert Dewar  <dewar@adacore.com>

* gnat_ugn.texi: Add documentation for LSLOC metric in gnatmetric

2011-09-06  Hristian Kirtchev  <kirtchev@adacore.com>

* gnat_rm.texi: Clarify that attribute Descriptor_Size is
non-static.

2011-09-06  Ed Schonberg  <schonberg@adacore.com>

* sem_res.adb (Resolve): An expression that is the body of an
expression function does not freeze.

2011-09-06  Matthew Heaney  <heaney@adacore.com>

* a-csquin.ads, a-cusyqu.adb, a-cbprqu.adb, a-cbsyqu.adb,
a-cuprqu.adb: Changed copyright notice to indicate current
year only.

2011-09-06  Vincent Celier  <celier@adacore.com>

* prj.adb: Minor spelling error fix in comment
* sem_res.adb: Minor reformatting

2011-09-06  Pascal Obry  <obry@adacore.com>

* sysdep.c (winflush_nt): Removed as not needed anymore.
(winflush_95): Likewise.
(winflush_init): Likewise.
(winflush_function): Likewise.
(getc_immediate_common): Remove call to winflush_function.

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

12 years ago2011-09-06 Hristian Kirtchev <kirtchev@adacore.com>
charlet [Tue, 6 Sep 2011 12:03:30 +0000 (12:03 +0000)]
2011-09-06  Hristian Kirtchev  <kirtchev@adacore.com>

* exp_attr.adb (Expand_N_Attribute_Reference): Rewrite the
processing for Descriptor_Size.
* gnat_rm.texi: Rephrase the wording for attribute Descriptor_Size
to account for its broader usage.
* sem_attr.adb (Analyze_Attribute): Change the error detection
circuitry for Descriptor_Size as the attribute is now applicable
to all types.

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

12 years ago2011-09-06 Robert Dewar <dewar@adacore.com>
charlet [Tue, 6 Sep 2011 11:59:12 +0000 (11:59 +0000)]
2011-09-06  Robert Dewar  <dewar@adacore.com>

* sem_attr.adb, prj-nmsc.adb, exp_aggr.adb: Minor reformatting.

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

12 years ago * config/arm/arm.c (arm_preferred_simd_mode): Check
irar [Tue, 6 Sep 2011 11:29:53 +0000 (11:29 +0000)]
* config/arm/arm.c (arm_preferred_simd_mode): Check
TARGET_NEON_VECTORIZE_DOUBLE instead of
TARGET_NEON_VECTORIZE_QUAD.
(arm_autovectorize_vector_sizes): Likewise.
* config/arm/arm.opt (mvectorize-with-neon-quad): Make inverse
mask of mvectorize-with-neon-double.  Add RejectNegative.
(mvectorize-with-neon-double): New.

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

12 years ago2011-09-06 Ed Schonberg <schonberg@adacore.com>
charlet [Tue, 6 Sep 2011 11:03:44 +0000 (11:03 +0000)]
2011-09-06  Ed Schonberg  <schonberg@adacore.com>

* lib-xref.adb (OK_To_Set_Referenced): A reference to a formal
in a parameter association must not set the Referenced flag on
the formal.
* prj-nmsc.adb (Check_File_Naming_Schemes): Remove useless formal

2011-09-06  Hristian Kirtchev  <kirtchev@adacore.com>

* gnat_rm.texi: Add a section on attribute Descriptor_Size

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

12 years ago * gcc-interface/Makefile.in (common-tools, gnatmake-re,
charlet [Tue, 6 Sep 2011 10:55:20 +0000 (10:55 +0000)]
* gcc-interface/Makefile.in (common-tools, gnatmake-re,
gnatlink-re): Speed up by using -j0.

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

12 years ago2011-09-06 Robert Dewar <dewar@adacore.com>
charlet [Tue, 6 Sep 2011 10:53:58 +0000 (10:53 +0000)]
2011-09-06  Robert Dewar  <dewar@adacore.com>

* s-tpopsp-vxworks.adb, prj-nmsc.adb: Minor reformatting.

2011-09-06  Hristian Kirtchev  <kirtchev@adacore.com>

* gcc-interface/trans.c (Attribute_to_gnu): New case for
attribute Descriptor_Size.
* exp_attr.adb (Expand_N_Attribute_Reference): Add processing
for attribute Descriptor_Size.
* exp_ch7.adb (Double_Size_Of): Removed.
(Make_Finalize_Address_Stmts): Remove the code which generates
an expression to calculate the dope vector of an unconstrained
array. Instead use attribute Descriptor_Size and leave the
calculation to the back end.
(Nearest_Multiple_Rounded_Up): Removed.
(Size_Of): Removed.
* sem_attr.adb (Analyze_Attribute): Add processing for attribute
Descriptor_Size. Currently the attribute is applicable only
to unconstrained arrays.
(Eval_Attribute): Add processing for
attribute Descriptor_Size.
* snames.ads-tmpl: Add a predefined name and an Attribute_Id
for Descriptor_Size.

2011-09-06  Ed Schonberg  <schonberg@adacore.com>

* exp_aggr.adb: Remove useless formal.

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

12 years ago2011-09-06 Richard Guenther <rguenther@suse.de>
rguenth [Tue, 6 Sep 2011 10:45:09 +0000 (10:45 +0000)]
2011-09-06  Richard Guenther  <rguenther@suse.de>

* tree-ssa-sccvn.c (visit_use): CSE stmt pieces and simplify
matching.

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

12 years ago2011-09-06 Yannick Moy <moy@adacore.com>
charlet [Tue, 6 Sep 2011 10:43:17 +0000 (10:43 +0000)]
2011-09-06  Yannick Moy  <moy@adacore.com>

* sem_ch13.adb (Analyze_Aspect_Specifications): Call
Set_Corresponding_Aspect when creating pragma from aspect.
(Add_Predicates): Use new field Corresponding_Aspect.
* sem_prag.adb (Analyze_Pragma): Make Pname hold source aspect
name when present, for the purpose of issuing error messages;
remove local procedure Error_Pragma_Arg_Alternate_Name.
* sinfo.adb, sinfo.ads (Corresponding_Aspect): New field in
N_Pragma node.
(From_Dynamic_Predicate, From_Static_Predicate): Remove fields from
N_Pragma node.

2011-09-06  Robert Dewar  <dewar@adacore.com>

* checks.adb, s-except.ads, g-socket.adb: Minor reformatting.

2011-09-06  Hristian Kirtchev  <kirtchev@adacore.com>

* exp_ch6.adb (Build_Heap_Allocator): Add new
local variable Desig_Typ. Code and comment reformatting. Add
machinery to ensure that the allocation uses a fat pointer when
the type of the return object is a constrained array and the
function return type is an unconstrained array.

2011-09-06  Vincent Celier  <celier@adacore.com>

* make.adb, prj-part.adb, prj-nmsc.adb: Remove unused formal
parameters in subprograms.

2011-09-06  Arnaud Charlet  <charlet@adacore.com>

* s-taprop-mingw.adb (Finalize_TCB): Fix typo.

2011-09-06  Thomas Quinot  <quinot@adacore.com>

* s-taprop-vxworks.adb, s-tpoaal.adb, s-tpopsp-vxworks.adb
(System.Tasking.Primitive_Operations.Specific.Delete): Remove
subprogram.
(System.Tasking.Primitive_Operations.Specific.Set): If argument
is null, destroy task specific data, to make API consistent with
other platforms, and thus compatible with the shared version
of s-tpoaal.adb.
(System.Tasking.Primitive_Operations.ATCB_Allocation.Free_ATCB):
Document the above assumption.

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

12 years ago2011-09-06 Ed Schonberg <schonberg@adacore.com>
charlet [Tue, 6 Sep 2011 10:35:25 +0000 (10:35 +0000)]
2011-09-06  Ed Schonberg  <schonberg@adacore.com>

* exp_ch6.adb (Expand_Inlined_Call): Fix use of uninitialized
variable for type of return value when return type is
unconstrained and context is an assignment.

2011-09-06  Ed Schonberg  <schonberg@adacore.com>

* sem_ch8.adb (Check_Class_Wide_Actual): Do not generate body of
class-wide operation if expansion is not enabled.

2011-09-06  Eric Botcazou  <ebotcazou@adacore.com>

* checks.adb (Apply_Scalar_Range_Check): Deal with access
type prefix.

2011-09-06  Yannick Moy  <moy@adacore.com>

* sem_ch13.adb (Analyze_Aspect_Specifications, case
Aspect_Invariant): Do not issue error at this point on illegal
pragma placement, as this is checked later on when analyzing
the corresponding pragma.
* sem_prag.adb (Error_Pragma_Arg_Alternate_Name): New procedure
similar to Error_Pragma_Arg, except the source name of the
aspect/pragma to use in warnings may be equal to parameter
Alt_Name (Analyze_Pragma, case Pragma_Invariant): refine error
message to distinguish source name of pragma/aspect, and whether
the illegality resides in the type being public, or being private
without a public declaration

2011-09-06  Thomas Quinot  <quinot@adacore.com>

* g-socket.adb (Check_For_Fd_Set): On Windows, no need for bitmap
size check (fd_set is implemented differently on that platform).

2011-09-06  Thomas Quinot  <quinot@adacore.com>

* s-taprop-vxworks.adb, s-taprop-tru64.adb, s-taprop-vms.adb,
s-tpoaal.adb, s-taprop-mingw.adb, s-taprop-linux.adb,
s-taprop-solaris.adb, s-taprop-irix.adb, s-taprop.ads,
s-taprop-hpux-dce.adb, s-taprop-dummy.adb, s-taprop-posix.adb
(ATCB_Allocation): New subpackage of
System.Tasking.Primitive_Operations, shared across all targets
with full tasking runtime.
(ATCB_Allocation.New_ATCB): Moved there (from target specific
s-taprop bodies).
(ATCB_Allocation.Free_ATCB): New subprogram. Deallocate an ATCB,
taking care of establishing a local temporary ATCB if the one
being deallocated is Self, to avoid a reference to the freed
ATCB in Abort_Undefer.

2011-09-06  Thomas Quinot  <quinot@adacore.com>

* s-tassta.adb, s-taskin.ads (Free_Task): If the task is not
terminated, mark it for deallocation upon termination.
(Terminate_Task): Call Free_Task again if the task is marked
for automatic deallocation upon termination.

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

12 years ago2011-09-06 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Tue, 6 Sep 2011 10:22:21 +0000 (10:22 +0000)]
2011-09-06  Paolo Carlini  <paolo.carlini@oracle.com>

PR libstdc++/50257
* include/bits/hashtable_policy.h (_Prime_rehash_policy::
    _M_next_bkt): Optimize for small argument.

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

12 years ago2011-09-06 Tom de Vries <tom@codesourcery.com>
vries [Tue, 6 Sep 2011 10:02:41 +0000 (10:02 +0000)]
2011-09-06  Tom de Vries  <tom@codesourcery.com>

* recog.c (asm_labels_ok): New function.
(check_asm_operands): Use asm_labels_ok.

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

12 years ago2011-09-06 Robert Dewar <dewar@adacore.com>
charlet [Tue, 6 Sep 2011 09:46:21 +0000 (09:46 +0000)]
2011-09-06  Robert Dewar  <dewar@adacore.com>

* a-cbprqu.ads, a-cbsyqu.ads, a-cuprqu.ads, a-cusyqu.ads,
a-intnam-aix.ads, a-intnam-darwin.ads, a-intnam-dummy.ads,
a-intnam-freebsd.ads, a-intnam-hpux.ads, a-intnam-irix.ads,
a-intnam-linux.ads, a-intnam-lynxos.ads, a-intnam-mingw.ads,
a-intnam-solaris.ads, a-intnam-tru64.ads,
a-intnam-vms.ads, a-intnam-vxworks.ads, a-intnam.ads, interfac.ads,
cstand.adb, s-maccod.ads: Mark all entities as Implementation_Defined
* einfo.ads, einfo.adb (Is_Implementation_Defined): New flag
* par-prag.adb: Add dummy entry for pragma Implementation_Defined
* s-rident.ads: Add new restriction No_Implementation_Identifiers
Add new profile No_Implementation_Extensions
* sem_prag.adb: Implement pragma Implementation_Defined Implement
profile No_Implementation_Extensions
* sem_util.adb: Minor reformatting (Set_Entity_With_Style_Check):
Check violation of restriction No_Implementation_Identifiers
* snames.ads-tmpl: Add entries for pragma Implementation_Defined
Add entry for Name_No_Implementation_Extensions

2011-09-06  Robert Dewar  <dewar@adacore.com>

* impunit.ads: Minor reformatting.

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

12 years ago2011-09-06 Robert Dewar <dewar@adacore.com>
charlet [Tue, 6 Sep 2011 09:37:22 +0000 (09:37 +0000)]
2011-09-06  Robert Dewar  <dewar@adacore.com>

* ali.adb, sem_ch13.adb, lib-xref.adb: Minor reformatting.

2011-09-06  Pascal Obry  <obry@adacore.com>

* s-osinte-linux.ads, s-oscons-tmplt.c: Use oscons to define sigset_t
types.

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

12 years ago2011-09-06 Robert Dewar <dewar@adacore.com>
charlet [Tue, 6 Sep 2011 09:32:56 +0000 (09:32 +0000)]
2011-09-06  Robert Dewar  <dewar@adacore.com>

* g-socket.adb: Minor reformatting

2011-09-06  Javier Miranda  <miranda@adacore.com>

* ali.adb (Scan_ALI): Add missing support to load references of
entities imported from other languages.
* ali.ads (Xref_Record): Adding new fields to store the language and
name of an imported entity.
* lib-xref.adb (Output_Import_Export_Info): Fix typo
in comment.

2011-09-06  Ed Schonberg  <schonberg@adacore.com>

* sem_prag.adb (Analyze_Pragma, case Type_Invariant): A type invariant
is allowed on a full type declaration if it is the completion of
a private declarations.
* sem_ch13.adb (Analyze_Aspect_Specifications): An invariant
aspect is allowed on a full type declaration in the private part
of a package.

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

12 years ago2011-09-06 Robert Dewar <dewar@adacore.com>
charlet [Tue, 6 Sep 2011 09:28:33 +0000 (09:28 +0000)]
2011-09-06  Robert Dewar  <dewar@adacore.com>

* sem_ch8.ads: Minor reformatting

2011-09-06  Thomas Quinot  <quinot@adacore.com>

* s-oscons-tmplt.c, g-socket.adb (GNAT.Sockets.Clear,Set,Is_Set):
Guard against socket values that are not in [0;FD_SETSIZE[

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

12 years ago2011-09-06 Robert Dewar <dewar@adacore.com>
charlet [Tue, 6 Sep 2011 09:26:02 +0000 (09:26 +0000)]
2011-09-06  Robert Dewar  <dewar@adacore.com>

* s-osinte-linux.ads, a-iteint.ads, exp_ch6.adb, s-solita.adb: Minor
reformatting.

2011-09-06  Arnaud Charlet  <charlet@adacore.com>

* s-linux-alpha.ads: Minor reformatting
* s-oscons-tmplt.c: Fix generated comments in s-oscons template.
Use sizeof instead of corresponding C defines in s-oscons template.

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

12 years ago2011-09-06 Vadim Godunko <godunko@adacore.com>
charlet [Tue, 6 Sep 2011 09:20:36 +0000 (09:20 +0000)]
2011-09-06  Vadim Godunko  <godunko@adacore.com>

* a-convec.ads, a-iteint.ads: Minor reformatting.

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

12 years ago2011-09-06 Vincent Celier <celier@adacore.com>
charlet [Tue, 6 Sep 2011 09:15:15 +0000 (09:15 +0000)]
2011-09-06  Vincent Celier  <celier@adacore.com>

* projects.texi: Add menus and @node lines.

2011-09-06  Ed Schonberg  <schonberg@adacore.com>

* exp_ch6.adb (Expand_Inlined_Call): Handle properly the case
where the return type is an unconstrained array and the context
is an assignment. Optimize the case when the target of the
assignment is a selected component.

2011-09-06  Arnaud Charlet  <charlet@adacore.com>

* s-solita.adb: Update comments.

2011-09-06  Pascal Obry  <obry@adacore.com>

* s-linux.ads, s-linux-alpha.ads, s-linux-hppa.ads, s-linux-mipsel.ads,
s-linux-sparc.ads: Remove hard coded and now wrong definitions.
* s-oscons-tmplt.c: Add support for generating pthread related
types size on GNU/Linux as done for Darwin.
* s-osinte-linux.ads: Use s-oscons to define the pthread types.

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

12 years ago2011-09-06 Robert Dewar <dewar@adacore.com>
charlet [Tue, 6 Sep 2011 09:02:44 +0000 (09:02 +0000)]
2011-09-06  Robert Dewar  <dewar@adacore.com>

* exp_ch6.adb: Fix minor typo.

2011-09-06  Hristian Kirtchev  <kirtchev@adacore.com>

* exp_ch7.adb: Remove with and use clauses for Get_Targ.
(Alignment_Of): Moved to the body of Nearest_Multiple_Rounded_Up.
(Double_Size_Of): Alphabetized. Update the comment on usage.
(Make_Finalize_Address_Stmts): Update comments and reformat code.
(Nearest_Multiple_Rounded_Up): New routine.
(Size_Of): Update comment on usage. The generated expression now
accounts for alignment gaps by rounding the size of the type to the
nearest multiple rounded up of the type's alignment.

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

12 years ago2011-09-06 Robert Dewar <dewar@adacore.com>
charlet [Tue, 6 Sep 2011 08:27:42 +0000 (08:27 +0000)]
2011-09-06  Robert Dewar  <dewar@adacore.com>

* exp_ch7.adb, g-comlin.adb: Minor reformatting.

2011-09-06  Steve Baird  <baird@adacore.com>

* exp_ch4.adb (Expand_Allocator_Expression): Look through
derived subprograms in checking for presence of an
Extra_Accessibility_Of_Result formal parameter.
* exp_ch6.adb (Expand_Call): Look through derived subprograms in
checking for presence of an Extra_Accessibility_Of_Result formal
parameter.
(Expand_Call.Add_Actual_Parameter): Fix a bug in the
case where the Parameter_Associatiations attribute is already set,
but set to an empty list.
(Needs_Result_Accessibility_Level):
Unconditionally return False. This is a temporary
change, disabling the Extra_Accessibility_Of_Result
mechanism.
(Expand_Simple_Function_Return): Check for
Extra_Accessibility_Of_Result parameter's presence instead of
testing Ada_Version when generating a runtime accessibility
check which makes use of the parameter.

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

12 years ago2011-09-06 Ed Schonberg <schonberg@adacore.com>
charlet [Tue, 6 Sep 2011 08:07:27 +0000 (08:07 +0000)]
2011-09-06  Ed Schonberg  <schonberg@adacore.com>

* exp_ch4.adb (Expand_N_Case_Expression): Actions created for the
expression in a given case alternative must be attached to the
statement list of the ccrresponding case statement alternative
They cannot be propagated ahead of the case statement, because
the validity of the expression that generated the action may
hold only for that alternative.

2011-09-06  Hristian Kirtchev  <kirtchev@adacore.com>

* exp_ch7.adb: Remove with and use clauses for Get_Targ.
(Alignment_Of): Remove the code for strict alignment targets.
(Double_Alignment_Of): Removed.
(Double_Size_Of): New routine.
(Make_Finalize_Address_Stmts): Change the
calculation of the dope's size.  Update relevant comments.
(Size_Of): New routine.

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

12 years ago2011-09-06 Steve Baird <baird@adacore.com>
charlet [Tue, 6 Sep 2011 08:03:04 +0000 (08:03 +0000)]
2011-09-06  Steve Baird  <baird@adacore.com>

* einfo.ads (Extra_Accessibility): Update associated comment to use
the term "present" correctly ("present" just means that it is not
an error to query the value of the attribute - it does not imply
that the value must be non-null).
(Extra_Constrained): Ditto.
(Is_Visible_Formal): Ditto.
(Extra_Accessibility_Of_Result) Ditto; also add Inline pragma.
(Set_Extra_Accessibility_Of_Result): Add Inline pragma.
* exp_ch4.adb (Expand_Allocator_Expression): Improve a comment.
* exp_ch6.adb (Expand_Call): The callee may require an
Extra_Accessibility_Of_Result actual parameter even if Ada_Version
< Ada_2012. This can occur if the callee is exported from a Gnat
runtimes unit. Also improve a comment.

2011-09-06  Hristian Kirtchev  <kirtchev@adacore.com>

* exp_ch7.adb: Add with and use clauses for Get_Targ.
(Alignment_Of): Rename formal parameter Some_Typ
to Typ, update related comment. Use the allocator alignment on
strict alignment targets such as SPARC.
(Double_Alignment_Of): Rename formal parameter Some_Typ to Typ, update
related comment.

2011-09-06  Gary Dismukes  <dismukes@adacore.com>

* sem_ch9.adb (Check_Interfaces): Test
Is_Limited_Type rather than Is_Limited_Record when checking that
the partial view of a synchronized full view must be limited.

2011-09-06  Emmanuel Briot  <briot@adacore.com>

* g-comlin.adb (Free): Fix memory leak.

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

12 years ago2011-09-06 Robert Dewar <dewar@adacore.com>
charlet [Tue, 6 Sep 2011 07:56:50 +0000 (07:56 +0000)]
2011-09-06  Robert Dewar  <dewar@adacore.com>

* sem_util.adb, exp_ch6.adb: Minor reformatting and code reorganization.

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

12 years ago2011-09-06 Steve Baird <baird@adacore.com>
charlet [Tue, 6 Sep 2011 07:46:28 +0000 (07:46 +0000)]
2011-09-06  Steve Baird  <baird@adacore.com>

* einfo.ads (Extra_Accessibility_Of_Result): New function; in the
(Ada2012) cases described in AI05-0234 where the accessibility
level of a function result is "determined by the point of
call", an implicit parameter representing that accessibility
level is passed in. Extra_Accessibilty_Of_Result yields this
additional formal parameter. Extra_Accessibility_Of_Result
is analogous to the existing Extra_Accessibility
function used in the implementation of access parameters.
(Set_Extra_Accessibility_Of_Result): New procedure; sets
Extra_Accessibility_Of_Result attribute.
* einfo.adb (Extra_Accessibility_Of_Result): New function.
(Set_Extra_Accessibility_Of_Result): New procedure.
(Write_Field19_Name): Display Extra_Accessibilty_Of_Result attribute.
* sem_util.adb (Dynamic_Accessibility_Level): Set Etype of
an accessibility level literal to Natural; introduce a nested
function, Make_Level_Literal, to do this.
* exp_ch6.ads (Needs_Result_Accessibility_Level): New function;
determines whether a given function (or access-to-function
type) needs to have an implicitly-declared accessibility-level
parameter added to its profile.
(Add_Extra_Actual_To_Call): Export an existing procedure which was
previously declared in the body of Exp_Ch6.
* exp_ch6.adb (Add_Extra_Actual_To_Call): Export declaration by moving
it to exp_ch6.ads.
(Has_Unconstrained_Access_Discriminants): New Function; a
predicate on subtype entities which returns True if the given
subtype is unconstrained and has one or more access discriminants.
(Expand_Call): When expanding a call to a function which takes an
Extra_Accessibility_Of_Result parameter, pass in the appropriate
actual parameter value. In the case of a function call which is
used to initialize an allocator, this may not be possible because
the Etype of the allocator may not have been set yet. In this
case, we defer passing in the parameter and handle it later in
Expand_Allocator_Expression.
(Expand_Simple_Function_Return): When returning from a function which
returns an unconstrained subtype having at least one access
discriminant, generate the accessibility check needed to ensure that
the function result will not outlive any objects designated by its
discriminants.
(Needs_Result_Accessibility_Level): New function; see exp_ch6.ads
description.
* exp_ch4.adb (Expand_Allocator_Expression): When a function call
is used to initialize an allocator, we may need to pass in "the
accessibility level determined by the point of call" (AI05-0234)
to the function. Expand_Call, where such actual parameters are
usually generated, is too early in this case because the Etype of
the allocator (which is used in determining the level to be passed
in) may not have been set yet when Expand_Call executes. Instead,
we generate code to pass in the appropriate actual parameter
in Expand_Allocator_Expression.
* sem_ch6.adb (Create_Extra_Formals): Create
the new Extra_Accessibility_Of_Result formal if
Needs_Result_Accessibility_Level returns True. This includes the
introduction of a nested procedure, Check_Against_Result_Level.

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

12 years ago * gcc-interface/Makefile.in (X86_TARGET_PAIRS): Remove duplicate
charlet [Tue, 6 Sep 2011 07:06:52 +0000 (07:06 +0000)]
* gcc-interface/Makefile.in (X86_TARGET_PAIRS): Remove duplicate
declaration.

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

12 years agoDaily bump.
gccadmin [Tue, 6 Sep 2011 00:18:39 +0000 (00:18 +0000)]
Daily bump.

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

12 years ago * config/sparc/sol2-64.h: Move ...
davem [Mon, 5 Sep 2011 22:23:40 +0000 (22:23 +0000)]
* config/sparc/sol2-64.h: Move ...
* config/sparc/default-64.h: ... to here.  Update comment.
* config.gcc: Update Solaris sparc to use default-64.h, also
prefix this header into the list on sparc64-*-linux.
* config/sparc/linux64.h (TARGET_DEFAULT): Only override if
TARGET_64BIT_DEFAULT is defined.  Remove commented out reference
to MASK_HARD_QUAD.

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

12 years agogcc/
rsandifo [Mon, 5 Sep 2011 19:39:27 +0000 (19:39 +0000)]
gcc/
PR target/49606
* config/mips/mips.h (ABI_HAS_64BIT_SYMBOLS): Check Pmode.
(PMODE_INSN): New macro.
* config/mips/mips.c (gen_load_const_gp): Use PMODE_INSN.
(mips_got_load, mips_expand_synci_loop): Likewise.
(mips_save_gp_to_cprestore_slot): Handle SImode and DImode
cprestore patterns.
(mips_emit_loadgp): Use PMODE_INSN.  Handle SImode and DImode
copygp_mips16 patterns.
(mips_expand_prologue): Handle SImode and DImode potential_cprestore
and use_cprestore patterns.
(mips_override_options): Check for incompatible -mabi and -mlong
combinations.
* config/mips/mips.md (unspec_got<mode>): Rename to...
(unspec_got_<mode>): ...this.
(copygp_mips16): Use the Pmode iterator.
(potential_cprestore, cprestore, use_cprestore): Likewise.
(clear_cache, indirect_jump): Use PMODE_INSN.
(indirect_jump<mode>): Rename to...
(indirect_jump_<mode>): ...this.
(tablejump): Use PMODE_INSN.
(tablejump<mode>): Rename to...
(tablejump_<mode>): ...this.
(exception_receiver): Handle restore_gp_si and restore_gp_di.
(restore_gp): Use the Pmode iterator.
* config/mips/mips-dsp.md (mips_lbux, mips_lhx, mips_lwx): Use
PMODE_INSN.

gcc/testsuite/
PR target/49606
* gcc.target/mips/abi-main.h: New file.
* gcc.target/mips/abi-o32-long32.c: New test.
* gcc.target/mips/abi-o32-long64.c: Likewise.
* gcc.target/mips/abi-o64-long32.c: Likewise.
* gcc.target/mips/abi-o64-long64.c: Likewise.
* gcc.target/mips/abi-n32-long32.c: Likewise.
* gcc.target/mips/abi-n32-long64.c: Likewise.
* gcc.target/mips/abi-n64-long32.c: Likewise.
* gcc.target/mips/abi-n64-long64.c: Likewise.
* gcc.target/mips/abi-o32-long32-no-shared.c: Likewise.
* gcc.target/mips/abi-o32-long64-no-shared.c: Likewise.
* gcc.target/mips/abi-o64-long32-no-shared.c: Likewise.
* gcc.target/mips/abi-o64-long64-no-shared.c: Likewise.
* gcc.target/mips/abi-n32-long32-no-shared.c: Likewise.
* gcc.target/mips/abi-n32-long64-no-shared.c: Likewise.
* gcc.target/mips/abi-n64-long32-no-shared.c: Likewise.
* gcc.target/mips/abi-n64-long64-no-shared.c: Likewise.
* gcc.target/mips/abi-o32-long32-pic.c: Likewise.
* gcc.target/mips/abi-o32-long64-pic.c: Likewise.
* gcc.target/mips/abi-o64-long32-pic.c: Likewise.
* gcc.target/mips/abi-o64-long64-pic.c: Likewise.
* gcc.target/mips/abi-n32-long32-pic.c: Likewise.
* gcc.target/mips/abi-n32-long64-pic.c: Likewise.
* gcc.target/mips/abi-n64-long32-pic.c: Likewise.
* gcc.target/mips/abi-n64-long64-pic.c: Likewise.
* gcc.target/mips/abi-eabi32-long32.c: Likewise.
* gcc.target/mips/abi-eabi32-long64.c: Likewise.
* gcc.target/mips/abi-eabi64-long32.c: Likewise.
* gcc.target/mips/abi-eabi64-long64.c: Likewise.
* gcc.target/mips/mips.exp: Make -mshared implied -mabicalls.
* gcc.target/mips/branch-2.c: Remove -mabicalls.
* gcc.target/mips/branch-3.c: Likewise.
* gcc.target/mips/branch-4.c: Likewise.
* gcc.target/mips/branch-5.c: Likewise.
* gcc.target/mips/branch-6.c: Likewise.
* gcc.target/mips/branch-7.c: Likewise.
* gcc.target/mips/branch-8.c: Likewise.
* gcc.target/mips/branch-9.c: Likewise.
* gcc.target/mips/branch-10.c: Likewise.
* gcc.target/mips/branch-11.c: Likewise.
* gcc.target/mips/branch-12.c: Likewise.
* gcc.target/mips/branch-13.c: Likewise.
* gcc.target/mips/lazy-binding-1.c: Likewise.

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