platform/upstream/gcc.git
15 years agoexpr.c (get_def_for_expr): New function.
Adam Nemet [Sun, 3 May 2009 17:20:30 +0000 (17:20 +0000)]
expr.c (get_def_for_expr): New function.

* expr.c (get_def_for_expr): New function.
(expand_expr_real_1) <PLUS_EXPR, MINUS_EXPR>: Adjust to work with
SSA rather than trees.
<MULT_EXPR>: Likewise.  Use subexp0 and subexp1 instead of
TREE_OPERAND (exp, 0) and TREE_OPERAND (exp, 1).

Co-Authored-By: Richard Guenther <rguenther@suse.de>
From-SVN: r147078

15 years agosettings.h (get): Mark const.
Jan Hubicka [Sun, 3 May 2009 16:51:50 +0000 (18:51 +0200)]
settings.h (get): Mark const.

* include/parallel/settings.h (get): Mark const.
* libsupc++/unwind-cxx.h (__cxa_call_terminate): Mark throw ().
* libsupc++/eh_call.cc (__cxa_call_terminate): Mark throw ().
* config/io/basic_file_stdio.cc (sys_open, is_open, fd, seekoff): Mark
throw ().
* config/io/basic_file_stdio.h (__basic_file, sys_open): Mark throw ().
(is_open, fd): Mark pure and throw ().
(seekoff): Mark throw ().

From-SVN: r147077

15 years agoacinclude.m4 ([GLIBCXX_ENABLE_ATOMIC_BUILTINS]): Do link tests when possible.
Paolo Carlini [Sun, 3 May 2009 16:13:59 +0000 (16:13 +0000)]
acinclude.m4 ([GLIBCXX_ENABLE_ATOMIC_BUILTINS]): Do link tests when possible.

2009-05-03  Paolo Carlini  <paolo.carlini@oracle.com>

* acinclude.m4 ([GLIBCXX_ENABLE_ATOMIC_BUILTINS]): Do link tests when
possible.
* configure: Regenerate.

From-SVN: r147076

15 years agoc-common.c (reswords): Add _Imaginary.
Joseph Myers [Sun, 3 May 2009 14:07:41 +0000 (15:07 +0100)]
c-common.c (reswords): Add _Imaginary.

* c-common.c (reswords): Add _Imaginary.
* c-common.c (enum rid): Add RID_IMAGINARY.

testsuite:
* gcc.dg/c99-complex-3.c: New test.

From-SVN: r147075

15 years agotree.h (TYPE_VECTOR_OPAQUE): Fix documentation.
Paolo Bonzini [Sun, 3 May 2009 14:03:24 +0000 (14:03 +0000)]
tree.h (TYPE_VECTOR_OPAQUE): Fix documentation.

2009-05-03  Paolo Bonzini  <bonzini@gnu.org>

* tree.h (TYPE_VECTOR_OPAQUE): Fix documentation.
Patch by Richard Guenther.

From-SVN: r147074

15 years agocharset.c (one_utf8_to_cppchar): Correct mask used for 5-byte UTF-8 sequences.
Joseph Myers [Sun, 3 May 2009 11:59:26 +0000 (12:59 +0100)]
charset.c (one_utf8_to_cppchar): Correct mask used for 5-byte UTF-8 sequences.

libcpp:
* charset.c (one_utf8_to_cppchar): Correct mask used for 5-byte
UTF-8 sequences.

gcc/testsuite:
* gcc.dg/cpp/utf8-5byte-1.c: New test.

From-SVN: r147073

15 years agodefaults.h (FRAME_POINTER_REQUIRED): Provide default.
Anatoly Sokolov [Sun, 3 May 2009 11:25:20 +0000 (15:25 +0400)]
defaults.h (FRAME_POINTER_REQUIRED): Provide default.

* defaults.h (FRAME_POINTER_REQUIRED): Provide default.
* doc/tm.texi (FRAME_POINTER_REQUIRED): Revise documentation.
* config/alpha/alpha.h (FRAME_POINTER_REQUIRED): Delete.
* config/s390/s390.h (FRAME_POINTER_REQUIRED): Delete.
* config/spu/spu.h (FRAME_POINTER_REQUIRED): Delete.
* config/sh/sh.h (FRAME_POINTER_REQUIRED): Delete.
* config/pdp11/pdp11.h (FRAME_POINTER_REQUIRED): Delete.
* config/stormy16/stormy16.h (FRAME_POINTER_REQUIRED): Delete.
* config/m68hc11/m68hc11.h (FRAME_POINTER_REQUIRED): Delete.
* config/iq2000/iq2000.h (FRAME_POINTER_REQUIRED): Delete.
* config/mn10300/mn10300.h (FRAME_POINTER_REQUIRED): Delete.
* config/ia64/ia64.h (FRAME_POINTER_REQUIRED): Delete.
* config/m68k/m68k.h (FRAME_POINTER_REQUIRED): Delete.
* config/rs6000/rs6000.h (FRAME_POINTER_REQUIRED): Delete.
* config/picochip/picochip.h (FRAME_POINTER_REQUIRED): Delete.
* config/mcore/mcore.h (FRAME_POINTER_REQUIRED): Delete.
* config/h8300/h8300.h (FRAME_POINTER_REQUIRED): Delete.
* config/v850/v850.h (FRAME_POINTER_REQUIRED): Delete.

From-SVN: r147072

15 years agoDaily bump.
GCC Administrator [Sun, 3 May 2009 00:16:41 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r147071

15 years ago* gcc.dg/ucnid-6.c: Fix typo in dg-do directive.
Joseph Myers [Sat, 2 May 2009 23:30:58 +0000 (00:30 +0100)]
* gcc.dg/ucnid-6.c: Fix typo in dg-do directive.

From-SVN: r147068

15 years agore PR java/39940 (failure in jc1 on i686-apple-darwin9 host)
Richard Guenther [Sat, 2 May 2009 17:50:21 +0000 (17:50 +0000)]
re PR java/39940 (failure in jc1 on i686-apple-darwin9 host)

2009-05-02  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/39940
* tree-ssa-pre.c (eliminate): Make sure we may propagate before
doing so.

From-SVN: r147065

15 years agore PR regression/40001 (r146817 broke libgloss build for SPU)
Richard Guenther [Sat, 2 May 2009 17:49:32 +0000 (17:49 +0000)]
re PR regression/40001 (r146817 broke libgloss build for SPU)

2009-05-02  Richard Guenther  <rguenther@suse.de>

PR middle-end/40001
* tree-ssa.c (execute_update_addresses_taken): Properly check
if we can mark a variable DECL_GIMPLE_REG_P.
* gimple.c (is_gimple_reg): Re-order check for DECL_GIMPLE_REG_P
back to the end of the function.
(is_gimple_reg_type): Remove complex type special casing.
* gimplify.c (gimplify_bind_expr): Do not set DECL_GIMPLE_REG_P
if not optimizing.

* gcc.target/spu/pr40001.c: New testcase.

From-SVN: r147064

15 years agofunctional_hash.h (explicit specializations of () operator): Mark pure.
Jan Hubicka [Sat, 2 May 2009 13:22:49 +0000 (15:22 +0200)]
functional_hash.h (explicit specializations of () operator): Mark pure.

* include/tr1_impl/functional_hash.h (explicit specializations of ()
operator): Mark pure.

From-SVN: r147062

15 years agocollect2.texi (Collect2): Document search path behaviour when configured with --with-ld.
Ben Elliston [Sat, 2 May 2009 12:03:05 +0000 (12:03 +0000)]
collect2.texi (Collect2): Document search path behaviour when configured with --with-ld.

* doc/collect2.texi (Collect2): Document search path behaviour
when configured with --with-ld.

From-SVN: r147058

15 years agotree-ssa-coalesce.c (coalesce_cost): Do not take ciritical parameter; update callers.
Jan Hubicka [Sat, 2 May 2009 11:00:59 +0000 (13:00 +0200)]
tree-ssa-coalesce.c (coalesce_cost): Do not take ciritical parameter; update callers.

* tree-ssa-coalesce.c (coalesce_cost): Do not take ciritical
parameter; update callers.
(coalesce_cost_edge): EH edges are costier because they needs splitting
even if not critical and even more costier when there are multiple
EH predecestors.

From-SVN: r147057

15 years agoexcept.c (remove_eh_handler_and_replace): Handle updating after removing TRY blocks.
Jan Hubicka [Sat, 2 May 2009 10:57:07 +0000 (12:57 +0200)]
except.c (remove_eh_handler_and_replace): Handle updating after removing TRY blocks.

* except.c (remove_eh_handler_and_replace): Handle updating after
removing TRY blocks.

From-SVN: r147055

15 years ago* store-motion.c (compute_store_table): Add ENABLE_CHECKING guard.
Eric Botcazou [Sat, 2 May 2009 09:11:23 +0000 (09:11 +0000)]
* store-motion.c (compute_store_table): Add ENABLE_CHECKING guard.

From-SVN: r147054

15 years agovarasm.c: Do not include c-pragma.h
Steven Bosscher [Sat, 2 May 2009 06:43:49 +0000 (06:43 +0000)]
varasm.c: Do not include c-pragma.h

* varasm.c: Do not include c-pragma.h
* attribs.c: Do not incude c-common.h

From-SVN: r147053

15 years agoDaily bump.
GCC Administrator [Sat, 2 May 2009 00:16:48 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r147052

15 years agocalls.c (initialize_argument_information): Handle SSA names like decls with a non...
Michael Matz [Fri, 1 May 2009 21:53:15 +0000 (21:53 +0000)]
calls.c (initialize_argument_information): Handle SSA names like decls with a non MEM_P DECL_RTL.

        * calls.c (initialize_argument_information): Handle SSA names
        like decls with a non MEM_P DECL_RTL.

From-SVN: r147044

15 years agoipa-reference.c: Do not include c-common.h, include splay-tree.h.
Steven Bosscher [Fri, 1 May 2009 20:25:26 +0000 (20:25 +0000)]
ipa-reference.c: Do not include c-common.h, include splay-tree.h.

* ipa-reference.c: Do not include c-common.h, include splay-tree.h.
* ipa-utils.c: Likewise.
* ipa-type-escape.c: Likewise.
* cgraphunit.c Do not include c-common.h.
* ipa-pure-const.c: Likewise.
* tree-if-conv.c: Likewise.
* matrix-reorg.c: Do not include c-common.h and c-tree.h.
* ipa-struct-reorg.c: Likewise.
* tree-nomudflap.c: Likewise.
* tree-ssa-structalias.c: Likewise.

From-SVN: r147035

15 years agostore-motion.c: Many cleanups to make this pass a first-class citizen instead of...
Steven Bosscher [Fri, 1 May 2009 20:22:56 +0000 (20:22 +0000)]
store-motion.c: Many cleanups to make this pass a first-class citizen instead of an appendix to...

* store-motion.c: Many cleanups to make this pass a first-class
citizen instead of an appendix to gcse load motion.  Add TODO list
to make this pass faster/cleaner/better.

(struct ls_expr): Post gcse.c-split cleanups.
Rename to st_expr.  Rename "loads" field to "antic_stores".  Rename
"stores" field to "avail_stores".
(pre_ldst_mems): Rename to store_motion_mems.
(pre_ldst_table): Rename to store_motion_mems_table.
(pre_ldst_expr_hash): Rename to pre_st_expr_hash, update users.
(pre_ldst_expr_eq): Rename to pre_st_expr_eq, update users.
(ldst_entry): Rename to st_expr_entry, update users.
(free_ldst_entry): Rename to free_st_expr_entry, update users.
(free_ldst_mems): Rename to free_store_motion_mems, update users.
(enumerate_ldsts): Rename to enumerate_store_motion_mems, update caller.
(first_ls_expr): Rename to first_st_expr, update users.
(next_ls_expr): Rename to next_st_expr, update users.
(print_ldst_list): Rename to print_store_motion_mems.  Print names of
fields properly for store motion instead of names inherited from load
motion in gcse.c.
(ANTIC_STORE_LIST, AVAIL_STORE_LIST): Remove.
(LAST_AVAIL_CHECK_FAILURE): Explain what this is.  Undefine when we
are done with it.

(ae_kill): Rename to st_kill, update users.
(ae_gen): Rename to st_avloc, update users.
(transp): Rename to st_transp, update users.
(pre_insert_map): Rename to st_insert_map, update users.
(pre_delete_map): Rename to st_delete_map, update users.
(insert_store, build_store_vectors, free_store_memory,
one_store_motion_pass): Update for abovementioned changes.

(gcse_subst_count, gcse_create_count): Remove.
(one_store_motion_pass): New statistics counters "n_stores_deleted"
and "n_stores_created", local variables.

(extract_mentioned_regs, extract_mentioned_regs_1): Rewrite to
use for_each_rtx.

(regvec, compute_store_table_current_insn): Remove.
(reg_set_info, reg_clear_last_set): Remove.
(compute_store_table): Use DF caches instead of local dataflow
solvers.

From-SVN: r147034

15 years agoc-objc-common.c (c_tree_printer): Print identifiers with pp_identifier, not pp_string.
Joseph Myers [Fri, 1 May 2009 14:09:20 +0000 (15:09 +0100)]
c-objc-common.c (c_tree_printer): Print identifiers with pp_identifier, not pp_string.

* c-objc-common.c (c_tree_printer): Print identifiers with
pp_identifier, not pp_string.  Mark "({anonymous})" for
translation.
* c-pretty-print.c (pp_c_ws_string): New.
(pp_c_cv_qualifier, pp_c_type_specifier,
pp_c_specifier_qualifier_list, pp_c_parameter_type_list,
pp_c_storage_class_specifier, pp_c_function_specifier,
pp_c_attributes, pp_c_bool_constant, pp_c_constant,
pp_c_primary_expression, pp_c_postfix_expression,
pp_c_unary_expression, pp_c_shift_expression,
pp_c_relational_expression, pp_c_equality_expression,
pp_c_logical_and_expression, pp_c_logical_or_expression): Mostly
use pp_string and pp_c_ws_string in place of pp_identifier and
pp_c_identifier for non-identifiers.  Mark English strings for
translation.
* c-pretty-print.h (pp_c_ws_string): Declare.

cp:
* cxx-pretty-print.c (is_destructor_name, pp_cxx_unqualified_id,
pp_cxx_template_keyword_if_needed, pp_cxx_postfix_expression,
pp_cxx_new_expression, pp_cxx_delete_expression,
pp_cxx_unary_expression, pp_cxx_assignment_operator,
pp_cxx_assignment_expression, pp_cxx_expression,
pp_cxx_function_specifier, pp_cxx_decl_specifier_seq,
pp_cxx_simple_type_specifier, pp_cxx_type_specifier_seq,
pp_cxx_exception_specification, pp_cxx_direct_declarator,
pp_cxx_ctor_initializer, pp_cxx_type_id, pp_cxx_statement,
pp_cxx_namespace_alias_definition, pp_cxx_template_parameter,
pp_cxx_canonical_template_parameter, pp_cxx_template_declaration,
pp_cxx_declaration, pp_cxx_typeid_expression,
pp_cxx_va_arg_expression, pp_cxx_offsetof_expression,
pp_cxx_trait_expression): Mostly use pp_string and
pp_cxx_ws_string in place of pp_identifier and pp_cxx_identifier
for non-identifiers.  Mark English strings for translation.
* cxx-pretty-print.h (pp_cxx_ws_string): Define.
* error.c (dump_template_parameter, dump_template_bindings,
dump_type, dump_aggr_type, dump_type_prefix, dump_simple_decl,
dump_decl, dump_template_decl, dump_function_decl,
dump_parameters, dump_exception_spec, dump_template_parms,
dump_expr, dump_binary_op, dump_unary_op, op_to_string,
assop_to_string, args_to_string, cp_print_error_function,
print_instantiation_full_context,
print_instantiation_partial_context): Mostly use pp_string and
pp_cxx_ws_string in place of pp_identifier and pp_cxx_identifier
for non-identifiers.  Mark English strings for translation.
(dump_global_iord): Mark strings for translation; use longer
strings instead of substituting single words.
(function_category): Return a format string marked for
translation, not a single word or phrase to substitute in a longer
phrase.

From-SVN: r147033

15 years ago* doc/install.texi: Document --enable-linker-build-id option.
Ian Lance Taylor [Fri, 1 May 2009 00:38:54 +0000 (00:38 +0000)]
* doc/install.texi: Document --enable-linker-build-id option.

From-SVN: r147031

15 years agoconfigure.ac (HAVE_LD_BUILDID): New check for ld --build-id support.
Paul Pluzhnikov [Fri, 1 May 2009 00:19:24 +0000 (17:19 -0700)]
configure.ac (HAVE_LD_BUILDID): New check for ld --build-id support.

* configure.ac (HAVE_LD_BUILDID): New check for ld --build-id
support.
(ENABLE_LD_BUILDID): New configuration option.
* gcc.c [HAVE_LD_BUILDID and ENABLE_LD_BUILDID]
(LINK_BUILDID_SPEC): New macro.
(init_spec): If defined, prepend it between LINK_EH_SPEC and
link_spec.
* doc/install.texi: Document --enable-linker-build-id option.
* configure: Rebuild.
* config.in: Rebuild.

Co-Authored-By: Roland McGrath <roland@redhat.com>
From-SVN: r147029

15 years agoDaily bump.
GCC Administrator [Fri, 1 May 2009 00:16:51 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r147028

15 years agomips.h (FRAME_GROWS_DOWNWARD, [...]): Define new macros.
Adam Nemet [Thu, 30 Apr 2009 22:42:58 +0000 (22:42 +0000)]
mips.h (FRAME_GROWS_DOWNWARD, [...]): Define new macros.

* config/mips/mips.h (FRAME_GROWS_DOWNWARD,
MIPS_GP_SAVE_AREA_SIZE): Define new macros.
(STARTING_FRAME_OFFSET): Return 0 if FRAME_GROWS_DOWNWARD.  Use
MIPS_GP_SAVE_AREA_SIZE.
* config/mips/mips.c (struct mips_frame_info): Update comment
before arg_pointer_offset and hard_frame_pointer_offset.
(mips_compute_frame_info): Update diagram before function: to
correctly use stack_pointer_rtx for fp_sp_offset and gp_sp_offset, to
indicate the position of frame_pointer_rtx with -fstack-protector and
to show args_size.  Don't allocate cprestore area for leaf functions
if FRAME_GROWS_DOWNWARD.  Use MIPS_GP_SAVE_AREA_SIZE to set
cprestore_size.
(mips_initial_elimination_offset): Update for FRAME_GROWS_DOWNWARD.

From-SVN: r147024

15 years ago* gcc.dg/ssp-1.c (__stack_chk_fail): Remove static.
Adam Nemet [Thu, 30 Apr 2009 22:33:32 +0000 (22:33 +0000)]
* gcc.dg/ssp-1.c (__stack_chk_fail): Remove static.

From-SVN: r147023

15 years agofix for PR 39955
Michael Matz [Thu, 30 Apr 2009 21:59:49 +0000 (21:59 +0000)]
fix for PR 39955

From-SVN: r147021

15 years agoFix from Dave Korn in case a backend does not declare any define_register_constraints
Dave Korn [Thu, 30 Apr 2009 21:52:15 +0000 (21:52 +0000)]
Fix from Dave Korn in case a backend does not declare any define_register_constraints

From-SVN: r147020

15 years agore PR middle-end/39579 (revisions 145171/145172 caused 2 extra failures)
Steve Ellcey [Thu, 30 Apr 2009 21:43:21 +0000 (21:43 +0000)]
re PR middle-end/39579 (revisions 145171/145172 caused 2 extra failures)

PR middle-end/39579
* gcc.dg/vect/vect-35.c: XFAIL for IA64 and Sparc.
* gfortran.dg/vect/fast-math-pr38968.f90: Ditto.

From-SVN: r147018

15 years agocreate_testsuite_files: Remove thread directory.
Jonathan Wakely [Thu, 30 Apr 2009 19:04:03 +0000 (19:04 +0000)]
create_testsuite_files: Remove thread directory.

2009-04-30  Jonathan Wakely  <jwakely.gcc@gmail.com>

* scripts/create_testsuite_files: Remove thread directory.

From-SVN: r147012

15 years agore PR testsuite/39776 (FAIL: g++.dg/ext/altivec-15.C)
Janis Johnson [Thu, 30 Apr 2009 17:48:03 +0000 (17:48 +0000)]
re PR testsuite/39776 (FAIL: g++.dg/ext/altivec-15.C)

PR testsuite/39776
* g++.dg/ext/altivec-15.C: Remove dg-error for messages that are
no longer issued.

From-SVN: r147010

15 years agoalloc-pool.c (alloc_pool_descriptor): Use an insert_opion value instead of an int.
Rafael Avila de Espindola [Thu, 30 Apr 2009 16:24:31 +0000 (16:24 +0000)]
alloc-pool.c (alloc_pool_descriptor): Use an insert_opion value instead of an int.

2009-04-30  Rafael Avila de Espindola  <espindola@google.com>

* alloc-pool.c (alloc_pool_descriptor): Use an insert_opion value
instead of an int.
* bitmap.c (bitmap_descriptor): Likewise.
* ggc-common.c (loc_descriptor): Likewise.
* varray.c (varray_descriptor): Likewise.
* vec.c (vec_descriptor): Likewise.

From-SVN: r147009

15 years agoobjc.exp (objc_init): Add and set gcc_warning_prefix and gcc_error_prefix variables.
David Ayers [Thu, 30 Apr 2009 16:03:44 +0000 (16:03 +0000)]
objc.exp (objc_init): Add and set gcc_warning_prefix and gcc_error_prefix variables.

2009-04-30  David Ayers  <ayers@fsfe.org>

* lib/objc.exp (objc_init): Add and set gcc_warning_prefix
and gcc_error_prefix variables.
* objc.dg/bad-receiver-type.m: Update to match correct
diagnostics marker.
* objc.dg/encode-5.m: Likewise.
* objc.dg/id-1.m: Likewise.
* objc.dg/method-1.m: Likewise.
* objc.dg/method-6.m: Likewise.
* objc.dg/method-7.m: Likewise.
* objc.dg/method-9.m: Likewise.
* objc.dg/method-11.m: Likewise.
* objc.dg/method-20.m: Likewise.
* objc.dg/private-1.m: Likewise.

From-SVN: r147006

15 years agoFix PR libfortran/39667
Janne Blomqvist [Thu, 30 Apr 2009 15:12:37 +0000 (18:12 +0300)]
Fix PR libfortran/39667

From-SVN: r147004

15 years agoFix date
Eric Botcazou [Thu, 30 Apr 2009 14:35:50 +0000 (14:35 +0000)]
Fix date

From-SVN: r147003

15 years agoMakefile.in (dce.o): Add $(EXCEPT_H).
Eric Botcazou [Thu, 30 Apr 2009 14:35:22 +0000 (14:35 +0000)]
Makefile.in (dce.o): Add $(EXCEPT_H).

* Makefile.in (dce.o): Add $(EXCEPT_H).
* dce.c: Include except.h and delete redundant vector definitions.
(deletable_insn_p): Return false for non-call insns that can throw
if DF is running.

From-SVN: r147002

15 years agogcse.c (ae_gen): Remove.
Steven Bosscher [Thu, 30 Apr 2009 10:51:08 +0000 (10:51 +0000)]
gcse.c (ae_gen): Remove.

* gcse.c (ae_gen): Remove.
(can_assign_to_reg_p): Rename to can_assign_to_reg_without_clobbers_p
and make non-static function to make it available in store-motion.c.
Update call sites with search-and-replace.
(enumerate_ldsts, reg_set_info, reg_clear_last_set, store_ops_ok,
extract_mentioned_regs, extract_mentioned_regs_helper,
find_moveable_store, compute_store_table, load_kills_store, find_loads,
store_killed_in_insn, store_killed_after, store_killed_before,
build_store_vectors, insert_insn_start_basic_block, insert-store,
remove_reachable_equiv_notes, replace_store_insn, delete_store,
free_store_memory, one_store_motion_pass, gate_rtl_store_motion,
execute_rtl_store_motion, pass_rtl_store_motion): Move to...
* store-motion.c: ...new file.  Also copy data structures from gcse.c
and clean up to remove parts not used by store motion.
* rtl.h (can_assign_to_reg_without_clobbers_p): Add prototype.
* Makefile.in (store-motion.o): New rule. Add to OBJS-common.

From-SVN: r147001

15 years agoFix PR target/38571
Ramana Radhakrishnan [Thu, 30 Apr 2009 10:04:52 +0000 (10:04 +0000)]
Fix PR target/38571

From-SVN: r147000

15 years ago* gcse.c (gcse_constant_p): Fix typo in last change.
Hans-Peter Nilsson [Thu, 30 Apr 2009 08:10:37 +0000 (08:10 +0000)]
* gcse.c (gcse_constant_p): Fix typo in last change.

From-SVN: r146999

15 years agoplugin.c: Include plugin-version.h only if ENABLE_PLUGIN is defined.
Rafael Avila de Espindola [Thu, 30 Apr 2009 08:05:31 +0000 (08:05 +0000)]
plugin.c: Include plugin-version.h only if ENABLE_PLUGIN is defined.

2009-04-30  Rafael Avila de Espindola  <espindola@google.com>

* plugin.c: Include plugin-version.h only if ENABLE_PLUGIN is defined.

From-SVN: r146998

15 years agogcse.c (gcse_constant_p): Make sure the constant is sharable.
Andreas Krebbel [Thu, 30 Apr 2009 06:54:54 +0000 (06:54 +0000)]
gcse.c (gcse_constant_p): Make sure the constant is sharable.

2009-04-30  Andreas Krebbel  <krebbel1@de.ibm.com>

* gcse.c (gcse_constant_p): Make sure the constant is sharable.

From-SVN: r146997

15 years agomips.c (mips_add_offset): Use gen_int_mode for CONST_HIGH_PART result.
James E. Wilson [Thu, 30 Apr 2009 00:58:10 +0000 (00:58 +0000)]
mips.c (mips_add_offset): Use gen_int_mode for CONST_HIGH_PART result.

* config/mips/mips.c (mips_add_offset): Use gen_int_mode for
CONST_HIGH_PART result.

From-SVN: r146995

15 years agoDaily bump.
GCC Administrator [Thu, 30 Apr 2009 00:17:30 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r146994

15 years agoRevert
Eric Botcazou [Wed, 29 Apr 2009 23:10:21 +0000 (23:10 +0000)]
Revert
2009-04-29  Vincent Celier  <celier@adacore.com>

* sinput-l.adb (Load_File): When preprocessing, set temporarily the
Source_File_Index_Table entries for the source, to avoid crash when
reporting an error.

* gnatcmd.adb (Test_If_Relative_Path): Use
Makeutl.Test_If_Relative_Path.

* makeutl.adb:(Test_If_Relative_Path): Process switches --RTS= only if
Including_RTS is True.

* makeutl.ads (Test_If_Relative_Path): New Boolean parameter
Including_RTS defaulted to False.

* sinput.ads, scans.ads, err_vars.ads: Initialize some variables with
a default value.

From-SVN: r146991

15 years ago(frame_pointer_required_p): Change return type to bool.
Anatoly Sokolov [Wed, 29 Apr 2009 22:41:33 +0000 (02:41 +0400)]
(frame_pointer_required_p): Change return type to bool.

From-SVN: r146990

15 years agoavr.c (initial_elimination_offset): Rename to avr_initial_elimination_offset.
Anatoly Sokolov [Wed, 29 Apr 2009 21:57:03 +0000 (01:57 +0400)]
avr.c (initial_elimination_offset): Rename to avr_initial_elimination_offset.

* config/avr/avr.c (initial_elimination_offset): Rename to
avr_initial_elimination_offset.
(frame_pointer_required_p): Rename to avr_frame_pointer_required_p,
change return type to bool.
(avr_can_eliminate): New function.
* config/avr/avr.h (CAN_ELIMINATE): Use avr_can_eliminate.
(FRAME_POINTER_REQUIRED): Use avr_frame_pointer_required_p.
(INITIAL_ELIMINATION_OFFSET): Use avr_initial_elimination_offset.
* config/avr/avr-protos.h (initial_elimination_offset) : Rename to
avr_initial_elimination_offset.
(frame_pointer_required_p): Rename to avr_frame_pointer_required_p.
(avr_initial_elimination_offset): Define.

From-SVN: r146989

15 years agore PR rtl-optimization/39938 (build broke for cris-elf with dbr_schedule change)
Eric Botcazou [Wed, 29 Apr 2009 21:44:26 +0000 (21:44 +0000)]
re PR rtl-optimization/39938 (build broke for cris-elf with dbr_schedule change)

PR rtl-optimization/39938
* Makefile.in (cfgrtl.o): Add $(INSN_ATTR_H).
* cfgrtl.c: Include insn-attr.h.
(rest_of_pass_free_cfg): New function.
(pass_free_cfg): Use rest_of_pass_free_cfg as execute function.
* resource.c (init_resource_info): Remove call to df_analyze.

Co-Authored-By: Steven Bosscher <steven@gcc.gnu.org>
From-SVN: r146988

15 years agore PR middle-end/39943 (wrong conversion from unsigned int to float)
Richard Guenther [Wed, 29 Apr 2009 18:07:23 +0000 (18:07 +0000)]
re PR middle-end/39943 (wrong conversion from unsigned int to float)

2009-04-29  Richard Guenther  <rguenther@suse.de>

PR target/39943
* config/i386/i386.c (ix86_vectorize_builtin_conversion): Only
allow conversion to signed integers.

* lib/target-supports.exp (check_effective_target_vect_uintfloat_cvt):
New.
(check_effective_target_vect_floatuint_cvt): Likewise.
* gcc.dg/vect/slp-10.c: Adjust.
* gcc.dg/vect/slp-11.c: Adjust.
* gcc.dg/vect/slp-12b.c: Adjust.
* gcc.dg/vect/slp-33.c: Adjust.
* gcc.c-torture/compile/pr39943.c: New testcase.

From-SVN: r146984

15 years agotree-cfg.c (verify_gimple_assign_binary): Allow vector shifts of floating point vecto...
Richard Guenther [Wed, 29 Apr 2009 18:03:58 +0000 (18:03 +0000)]
tree-cfg.c (verify_gimple_assign_binary): Allow vector shifts of floating point vectors if...

2009-04-29  Richard Guenther  <rguenther@suse.de>

* tree-cfg.c (verify_gimple_assign_binary): Allow vector
shifts of floating point vectors if the shift amount is
a constant multiple of the element size.

From-SVN: r146983

15 years agore PR middle-end/39927 (build breakage for cris-elf building libstdc++-v3)
Andreas Krebbel [Wed, 29 Apr 2009 17:36:21 +0000 (17:36 +0000)]
re PR middle-end/39927 (build breakage for cris-elf building libstdc++-v3)

        PR middle-end/39927
        PR bootstrap/39929
        * tree-outof-ssa.c (emit_partition_copy): New function.
        (insert_partition_copy_on_edge, insert_rtx_to_part_on_edge,
        insert_part_to_rtx_on_edge): Perform the partition base var
        copy using emit_partition_copy.
        (insert_value_copy_on_edge): Convert constants to the right mode.
        (insert_rtx_to_part_on_edge): Add UNSIGNEDSRCP parameter.
        (elim_create): Pass the sign of the src to insert_rtx_to_part_on_edge.

Co-Authored-By: Michael Matz <matz@suse.de>
From-SVN: r146982

15 years agobfin.c (bfin_optimize_loop): When looking for the last insn before the loop_end instr...
Bernd Schmidt [Wed, 29 Apr 2009 15:40:06 +0000 (15:40 +0000)]
bfin.c (bfin_optimize_loop): When looking for the last insn before the loop_end instruction...

* config/bfin/bfin.c (bfin_optimize_loop): When looking for the last
insn before the loop_end instruction, don't look past labels.

From-SVN: r146980

15 years ago[multiple changes]
Arnaud Charlet [Wed, 29 Apr 2009 15:36:48 +0000 (17:36 +0200)]
[multiple changes]

2009-04-29  Ed Schonberg  <schonberg@adacore.com>

* sem_ch8.adb (Analyze_Subprogram_Renaming): Improve error message on
box-defaulted operator in an instantiation, when the type of the
operands is not directly visible.

2009-04-29  Gary Dismukes  <dismukes@adacore.com>

* sem_aggr.adb (Valid_Limited_Ancestor): Undo previous change.
(Resolve_Extension_Aggregate): Call Check_Parameterless_Call after the
analysis of the ancestor part. Remove prohibition against limited
interpretations of the ancestor expression in the case of Ada 2005.
Revise error message in overloaded case, adding a message to cover
the Ada 2005 case.

2009-04-29  Thomas Quinot  <quinot@adacore.com>

* xoscons.adb: Minor reformatting

2009-04-29  Bob Duff  <duff@adacore.com>

* sem_ch13.adb (Analyze_Attribute_Definition_Clause): Do not ignore
attribute_definition_clauses for the following attributes when the
-gnatI switch is used: External_Tag, Input, Output, Read, Storage_Pool,
Storage_Size, Write. Otherwise, we get spurious errors (for example,
missing Read attribute on remote types).

* gnat_ugn.texi: Document the change, and add a stern warning.

2009-04-29  Ed Schonberg  <schonberg@adacore.com>

* sem_attr.adb (Check_Local_Access): Indicate that value tracing is
disabled not just for the current scope, but for the innermost dynamic
scope as well.

From-SVN: r146979

15 years ago* gcc-interface/Make-lang.in: Update dependencies
Arnaud Charlet [Wed, 29 Apr 2009 15:34:32 +0000 (15:34 +0000)]
* gcc-interface/Make-lang.in: Update dependencies

From-SVN: r146978

15 years agoRemoved file that should have been removed in a previous commit. Already listed on...
Rafael Espindola [Wed, 29 Apr 2009 15:33:20 +0000 (15:33 +0000)]
Removed file that should have been removed in a previous commit. Already listed on ChangeLog.

From-SVN: r146977

15 years ago[multiple changes]
Arnaud Charlet [Wed, 29 Apr 2009 15:25:01 +0000 (17:25 +0200)]
[multiple changes]

2009-04-29  Vincent Celier  <celier@adacore.com>

* prj-part.adb: Minor comment update

2009-04-29  Ed Schonberg  <schonberg@adacore.com>

* sem_aggr.adb (Resolve_Record_Aggregate): handle properly
box-initialized records with discriminated subcomponents that are
constrained by discriminants of enclosing components. New subsidiary
procedures Add_Discriminant_Values, Propagate_Discriminants.

2009-04-29  Arnaud Charlet  <charlet@adacore.com>

* g-socket.adb: Code clean up.

From-SVN: r146976

15 years agobfin.c (bfin_optimize_loop): If we need a scratch reg, scan backwards to try to find...
Bernd Schmidt [Wed, 29 Apr 2009 15:09:37 +0000 (15:09 +0000)]
bfin.c (bfin_optimize_loop): If we need a scratch reg, scan backwards to try to find a constant to initialize it.

* config/bfin/bfin.c (bfin_optimize_loop): If we need a scratch reg,
scan backwards to try to find a constant to initialize it.

From-SVN: r146974

15 years agore PR middle-end/39937 (Revision 146831 failed SPEC CPU 2006)
Richard Guenther [Wed, 29 Apr 2009 15:05:22 +0000 (15:05 +0000)]
re PR middle-end/39937 (Revision 146831 failed SPEC CPU 2006)

2009-04-29  Richard Guenther  <rguenther@suse.de>

PR middle-end/39937
* tree-ssa-forwprop.c (forward_propagate_addr_expr_1): Do not
loose type conversions.
(forward_propagate_addr_expr): Fix tuplification bug.  Remove
stmts only if there are no uses of its definition.

* gcc.c-torture/compile/pr39937.c: New testcase.

From-SVN: r146973

15 years agobfin.h (splitting_loops): Declare.
Bernd Schmidt [Wed, 29 Apr 2009 14:13:30 +0000 (14:13 +0000)]
bfin.h (splitting_loops): Declare.

* config/bfin/bfin.h (splitting_loops): Declare.
* config/bfin/bfin-protos.h (WA_05000257, WA_05000283, WA_05000315):
Reorder bit definitions to be ascending.
(WA_LOAD_LCREGS, ENABLE_WA_LOAD_LCREGS): New macros.
* config/bfin/bfin.c (splitting_loops): New variable.
(bfin_cpus): Add WA_LOAD_LCREGS as needed.
(struct loop_info): Remove members INIT and LOOP_INIT.
(bfin_optimize_loop): Don't set them.  Reorder the code that generates
the LSETUP sequence.  Allow LC to be loaded from any register, but also
add a case to push/pop a PREG scratch if ENABLE_WA_LOAD_LCREGS.
(bfin_reorg_loops): When done, split all BB_ENDs with splitting_loops
set to 1.
* config/bfin/bfin.md (loop_end splitter): Use splitting_loops instead
of reload_completed.
From Jie Zhang:
* config/bfin/bfin.md (movsi_insn): Refine constraints.

From-SVN: r146971

15 years ago[multiple changes]
Arnaud Charlet [Wed, 29 Apr 2009 13:56:09 +0000 (15:56 +0200)]
[multiple changes]

2009-04-29  Gary Dismukes  <dismukes@adacore.com>

* sem_aggr.adb (Valid_Limited_Ancestor): Add test for the name of a
function entity, to cover the case of a parameterless function call
that has not been resolved.

2009-04-29  Robert Dewar  <dewar@adacore.com>

* err_vars.ads, prj-part.adb, scans.ads, exp_tss.adb: Minor
reformatting and comment updates.

From-SVN: r146970

15 years ago[multiple changes]
Arnaud Charlet [Wed, 29 Apr 2009 13:47:42 +0000 (15:47 +0200)]
[multiple changes]

2009-04-29  Arnaud Charlet  <charlet@adacore.com>

* gnat_ugn.texi: Update some documentation about interfacing with C++
Mention -fkeep-inline-functions.

* gnat_ugn.texi: Minor edits

2009-04-29  Ed Schonberg  <schonberg@adacore.com>

* sem_aggr.adb (Resolve_Record_Aggregate): When building an aggregate
for a defaulted component of an enclosing aggregate, inherit the type
from the component declaration of the enclosing type.

2009-04-29  Albert Lee  <lee@adacore.com>

* g-socthi-vms.ads, g-socthi-vxworks.ads, s-oscons-tmplt.c,
g-socthi-mingw.ads, g-socthi.ads, g-socket.adb, g-sothco.ads
(System.OS_Constants): New type Msg_Iovlen_T which follows whether the
msg_iovlen field in struct msghdr is 32 or 64 bits wide.
Relocate the Msghdr record type from GNAT.Sockets.Thin to
GNAT.Sockets.Common, and use System.OS_Constants.Msg_Iovlen_T as the
type for the Msg_Iovlen field.

From-SVN: r146969

15 years ago[multiple changes]
Arnaud Charlet [Wed, 29 Apr 2009 13:39:13 +0000 (15:39 +0200)]
[multiple changes]

2009-04-29  Vincent Celier  <celier@adacore.com>

* sinput-l.adb (Load_File): When preprocessing, set temporarily the
Source_File_Index_Table entries for the source, to avoid crash when
reporting an error.

* gnatcmd.adb (Test_If_Relative_Path): Use
Makeutl.Test_If_Relative_Path.

* makeutl.adb:(Test_If_Relative_Path): Process switches --RTS= only if
Including_RTS is True.

* makeutl.ads (Test_If_Relative_Path): New Boolean parameter
Including_RTS defaulted to False.

* sinput.ads, scans.ads, err_vars.ads: Initialize some variables with
a default value.

2009-04-29  Javier Miranda  <miranda@adacore.com>

* gnat_ugn.texi: Adding documentation for non-default C++ constructors.

From-SVN: r146967

15 years agosem_ch3.adb (Analyze_Object_Declaration): Disable error message associated with dyami...
Javier Miranda [Wed, 29 Apr 2009 13:29:08 +0000 (13:29 +0000)]
sem_ch3.adb (Analyze_Object_Declaration): Disable error message associated with dyamically tagged expressions if...

2009-04-29  Javier Miranda  <miranda@adacore.com>

* sem_ch3.adb (Analyze_Object_Declaration): Disable error message
associated with dyamically tagged expressions if the expression
initializing a tagged type corresponds with a non default CPP
constructor.
(OK_For_Limited_Init): CPP constructor calls are OK for initialization
of limited type objects.

* sem_ch5.adb (Analyze_Assignment): Improve the error message reported
when a CPP constructor is called in an assignment. Disable also the
error message associated with dyamically tagged expressions if the
exporession initializing a tagged type corresponds with a non default
CPP constructor.

* sem_prag.adb (Analyze_Pragma): Remove code disabling the use of
non-default C++ constructors.

* sem_util.ads, sem_util.adb (Is_CPP_Constructor_Call): New subprogram.

* exp_tss.ads, exp_tss.adb (Base_Init_Proc): Add support for
non-default constructors.
(Init_Proc): Add support for non-default constructors.

* exp_disp.adb (Set_Default_Constructor): Removed.
(Set_CPP_Constructors): Code based in removed Set_Default_Constructor
but extending its functionality to handle non-default constructors.

* exp_aggr.adb (Build_Record_Aggr_Code): Add support for non-default
constructors. Minor code cleanup removing unrequired label and goto
statement.

* exp_ch3.adb (Build_Initialization_Call): Add support for non-default
constructors.
(Build_Init_Statements): Add support for non-default constructors.
(Expand_N_Object_Declaration): Add support for non-default constructors.
(Freeze_Record_Type): Replace call to Set_Default_Constructor by call
to Set_CPP_Constructors.

* exp_ch5.adb (Expand_N_Assignment_Statement): Add support for
non-default constructors.
Required to handle its use in build-in-place statements.

* gnat_rm.texi (CPP_Constructor): Document new extended use of this
pragma for non-default C++ constructors and the new compiler support
that allows the use of these constructors in record components, limited
aggregates, and extended return statements.

From-SVN: r146966

15 years ago[multiple changes]
Arnaud Charlet [Wed, 29 Apr 2009 13:24:07 +0000 (15:24 +0200)]
[multiple changes]

2009-04-29  Vincent Celier  <celier@adacore.com>

* prj-part.adb (Parse_Single_Project): Do not attempt to find a
project extending an abstract project.

2009-04-29  Eric Botcazou  <ebotcazou@adacore.com>

* targparm.ads: Fix oversight.

From-SVN: r146965

15 years agolib-xref.adb (Output_Overridden_Op): Follow several levels of derivation when necessa...
Ed Schonberg [Wed, 29 Apr 2009 13:22:02 +0000 (13:22 +0000)]
lib-xref.adb (Output_Overridden_Op): Follow several levels of derivation when necessary...

2009-04-29  Ed Schonberg  <schonberg@adacore.com>

* lib-xref.adb (Output_Overridden_Op): Follow several levels of
derivation when necessary, to find the user-subprogram that is actally
being overridden.

From-SVN: r146964

15 years agosem_util.adb (May_Be_Lvalue): Fix cases involving indexed/selected components
Robert Dewar [Wed, 29 Apr 2009 13:21:10 +0000 (13:21 +0000)]
sem_util.adb (May_Be_Lvalue): Fix cases involving indexed/selected components

2009-04-29  Robert Dewar  <dewar@adacore.com>

* sem_util.adb (May_Be_Lvalue): Fix cases involving indexed/selected
components

From-SVN: r146963

15 years agoMakefile.in (PLUGIN_VERSION_H): New.
Rafael Avila de Espindola [Wed, 29 Apr 2009 13:20:53 +0000 (13:20 +0000)]
Makefile.in (PLUGIN_VERSION_H): New.

2009-04-29  Rafael Avila de Espindola  <espindola@google.com>

* Makefile.in (PLUGIN_VERSION_H): New.
(OBJS-common): Remove plugin-version.o.
(plugin.o): Depend on (PLUGIN_VERSION_H).
(plugin-version.o): Remove.
* configure: Regenerate
* configure.ac: Create plugin-version.h.
* gcc-plugin.h (plugin_gcc_version): Remove.
(plugin_default_version_check): Change signature.
* plugin-version.c: Remove.
* plugin.c: Include plugin-version.h.
(str_plugin_gcc_version_name): Remove.
(try_init_one_plugin): Pass gcc version to plugin_init.
(plugin_default_version_check): Both gcc and plugin versions are now
arguments.

From-SVN: r146962

15 years agoexp_ch9.ads, [...] (Build_Wrapper_Spec): Use source line of primitive operation...
Ed Schonberg [Wed, 29 Apr 2009 13:20:27 +0000 (13:20 +0000)]
exp_ch9.ads, [...] (Build_Wrapper_Spec): Use source line of primitive operation...

2009-04-29  Ed Schonberg  <schonberg@adacore.com>

* exp_ch9.ads, exp_ch9.adb (Build_Wrapper_Spec): Use source line of
primitive operation, rather than source line of synchronized type, when
building the wrapper for a primitive operation that overrides an
operation inherited from a progenitor, to improve the error message on
duplicate declarations.

* sem_ch3.adb (Process_Full_View): Use new signature of
Build_Wrapper_Spec.

From-SVN: r146961

15 years ago[multiple changes]
Arnaud Charlet [Wed, 29 Apr 2009 13:04:57 +0000 (15:04 +0200)]
[multiple changes]

2009-04-29  Robert Dewar  <dewar@adacore.com>

* prj-nmsc.ads: Minor reformatting

2009-04-29  Eric Botcazou  <ebotcazou@adacore.com>

* exp_ch4.adb (Expand_N_Conditional_Expression): Set the SLOC of the
expression on the existing parent If statement.

From-SVN: r146960

15 years agoComplete previous change:
Arnaud Charlet [Wed, 29 Apr 2009 13:03:12 +0000 (15:03 +0200)]
Complete previous change:

2009-04-29  Robert Dewar  <dewar@adacore.com>

* prj-nmsc.ads: Minor reformatting

2009-04-29  Eric Botcazou  <ebotcazou@adacore.com>

* exp_ch4.adb (Expand_N_Conditional_Expression): Set the SLOC of the
expression on the existing parent If statement.

From-SVN: r146959

15 years agoprj-proc.adb, prj.ads: Minor reformatting
Robert Dewar [Wed, 29 Apr 2009 12:52:06 +0000 (12:52 +0000)]
prj-proc.adb, prj.ads: Minor reformatting

2009-04-29  Robert Dewar  <dewar@adacore.com>

* prj-proc.adb, prj.ads: Minor reformatting

From-SVN: r146958

15 years agoexp_ch4.adb (Expand_N_Conditional_Expression): Set the SLOC of an existing parent...
Eric Botcazou [Wed, 29 Apr 2009 12:49:34 +0000 (12:49 +0000)]
exp_ch4.adb (Expand_N_Conditional_Expression): Set the SLOC of an existing parent If statement on the newly created one.

2009-04-29  Eric Botcazou  <ebotcazou@adacore.com>

* exp_ch4.adb (Expand_N_Conditional_Expression): Set the SLOC of an
existing parent If statement on the newly created one.

From-SVN: r146957

15 years agobfin.c (bfin_register_move_cost): Test for subsets of DREGS rather than comparing...
Bernd Schmidt [Wed, 29 Apr 2009 12:44:00 +0000 (12:44 +0000)]
bfin.c (bfin_register_move_cost): Test for subsets of DREGS rather than comparing directly.

* config/bfin/bfin.c (bfin_register_move_cost): Test for subsets of
DREGS rather than comparing directly.  Remove code that tries to
account for latencies.

From-SVN: r146956

15 years ago2009-04-29 Emmanuel Briot <briot@adacore.com>
Emmanuel Briot [Wed, 29 Apr 2009 12:10:28 +0000 (12:10 +0000)]
2009-04-29  Emmanuel Briot  <briot@adacore.com>

* gnatcmd.adb, prj-proc.adb, prj-proc.ads, make.adb, prj-part.adb,
prj-part.ads, prj.adb, prj.ads, clean.adb, prj-dect.adb, prj-dect.ads,
prj-nmsc.adb, prj-nmsc.ads, prj-pars.adb, prj-pars.ads, prj-makr.adb
(Set_In_Configuration, In_Configuration): Removed.
Replaced by an extra parameter Is_Config_File in several parameter to
avoid global variables to store the state of the parser.

From-SVN: r146955

15 years ago[multiple changes]
Arnaud Charlet [Wed, 29 Apr 2009 12:03:14 +0000 (14:03 +0200)]
[multiple changes]

2009-04-29  Albert Lee  <lee@adacore.com>

* g-socthi-vxworks.ads: Change the spec of Msghdr to match the one in
the default version of GNAT.Sockets.Thin.

* g-socthi-vms.ads: Change the spec of Msghdr to match the one in the
default version of GNAT.Sockets.Thin.

2009-04-29  Ed Schonberg  <schonberg@adacore.com>

* sem_ch6.adb (Analyze_Subprogram_Specification): If the subprogram is
an overriding operation of an inherited interface operation, and the
controlling type is a synchronized type, we replace the type with its
corresponding record, to match the proper signature of an overriding
operation. The same processing must be performed for an access
parameter whose designated type is derived from a synchronized
interface.

From-SVN: r146954

15 years agopex-win32.c (pex_win32_pipe): Add _O_NOINHERIT.
Julian Brown [Wed, 29 Apr 2009 11:48:33 +0000 (11:48 +0000)]
pex-win32.c (pex_win32_pipe): Add _O_NOINHERIT.

* pex-win32.c (pex_win32_pipe): Add _O_NOINHERIT.
(pex_win32_exec_child): Ensure each process has only one handle open
on pipe endpoints. Close standard input after creating child for
symmetry with standard output/standard error.

From-SVN: r146953

15 years agobfin.c (bfin_optimize_loop): Unify handling of problematic last insns.
Bernd Schmidt [Wed, 29 Apr 2009 10:55:25 +0000 (10:55 +0000)]
bfin.c (bfin_optimize_loop): Unify handling of problematic last insns.

* config/bfin/bfin.c (bfin_optimize_loop): Unify handling of
problematic last insns.  Test for TYPE_CALL rather than CALL_P.
Remove special case testing for last insn of inner loops. Don't fail if
the loop ends with a jump, emit an extra nop instead.

From-SVN: r146952

15 years agosinfo.ads, sinfo.adb: New attribute Next_Implicit_With...
Ed Schonberg [Wed, 29 Apr 2009 10:54:12 +0000 (10:54 +0000)]
sinfo.ads, sinfo.adb: New attribute Next_Implicit_With...

2009-04-29  Ed Schonberg  <schonberg@adacore.com>

* sinfo.ads, sinfo.adb: New attribute Next_Implicit_With, to chain
with_clauses generated for the same unit through rtsfind, and that
appear in the context of different units.

* rtsfind.adb: New attribute First_Implicit_With, component of the
Unit_Record that stores information about a unit loaded through rtsfind.

From-SVN: r146951

15 years agoMinor improvements.
Arnaud Charlet [Wed, 29 Apr 2009 10:50:37 +0000 (12:50 +0200)]
Minor improvements.

From-SVN: r146950

15 years ago[multiple changes]
Arnaud Charlet [Wed, 29 Apr 2009 10:49:15 +0000 (12:49 +0200)]
[multiple changes]

2009-04-29  Gary Dismukes  <dismukes@adacore.com>

* exp_ch3.adb (Stream_Operation_OK): Return True for limited interfaces
(other conditions permitting), so that abstract stream subprograms will
be declared for them.

2009-04-29  Bob Duff  <duff@adacore.com>

* g-expect.adb (Expect_Internal): Fix check for overfull buffer.

* g-expect.ads: Minor comment fixes.

2009-04-29  Ed Schonberg  <schonberg@adacore.com>

* freeze.adb, lib-xref.adb (Check_Dispatching_Operation): if the
dispatching operation is a body without previous spec, update the list
of primitive operations to ensure that cross-reference information is
up-to-date.

2009-04-29  Albert Lee  <lee@adacore.com>

* g-socthi-vms.adb, g-socthi-vms.ads, g-socthi-vxworks.adb,
g-socthi-vxworks.ads, g-socthi-mingw.adb, g-socthi-mingw.ads,
g-socthi.adb, g-socthi.ads, g-socket.adb, g-socket.ads
(GNAT.Sockets.Thin.C_Readv,
GNAT.Sockets.Thin.C_Writev): Remove unused subprograms.
(GNAT.Sockets.Thin.C_Recvmsg,
GNAT.Sockets.Thin.C_Sendmsg): New bindings to call recvmsg(2) and
sendmsg(2).
(GNAT.Sockets.Receive_Vector, GNAT.Sockets.Send_Vector): Use
C_Recvmsg/C_Sendmsg rather than Readv/C_Writev.

From-SVN: r146949

15 years agore PR middle-end/39941 (ice in passes.c:execute_todo())
Richard Guenther [Wed, 29 Apr 2009 10:39:26 +0000 (10:39 +0000)]
re PR middle-end/39941 (ice in passes.c:execute_todo())

2009-04-29  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/39941
* tree-ssa-pre.c (eliminate): Schedule update-ssa after
eliminating an indirect call.

* gcc.c-torture/compile/pr39941.c: New testcase.

From-SVN: r146948

15 years agotree-cfg.c (verify_types_in_gimple_reference): Add require_lvalue parameter.
Richard Guenther [Wed, 29 Apr 2009 10:37:14 +0000 (10:37 +0000)]
tree-cfg.c (verify_types_in_gimple_reference): Add require_lvalue parameter.

2009-04-29  Richard Guenther  <rguenther@suse.de>

* tree-cfg.c (verify_types_in_gimple_reference): Add require_lvalue
parameter.  Allow invariants as base if !require_lvalue.
(verify_gimple_assign_single): Adjust.

From-SVN: r146947

15 years agoMinor clean ups.
Arnaud Charlet [Wed, 29 Apr 2009 10:30:53 +0000 (12:30 +0200)]
Minor clean ups.

From-SVN: r146946

15 years ago[multiple changes]
Arnaud Charlet [Wed, 29 Apr 2009 10:28:55 +0000 (12:28 +0200)]
[multiple changes]

2009-04-29  Ed Schonberg  <schonberg@adacore.com>

* sem_disp.adb (Check_Dispatching_Operation): if the dispatching
operation is a body without previous spec, update the list of
primitive operations to ensure that cross-reference information is
up-to-date.

* sem_ch12.adb (Build_Instance_Compilation_Unit_Nodes): When creating a
new compilation unit node for the instance declaration, keep the
context items of the original unit on it, so that the context of the
instance body only holds the context inherited from the generic body.

2009-04-29  Bob Duff  <duff@adacore.com>

* sem_res.adb: Minor comment fix.

From-SVN: r146945

15 years ago[multiple changes]
Arnaud Charlet [Wed, 29 Apr 2009 10:19:14 +0000 (12:19 +0200)]
[multiple changes]

2009-04-29  Thomas Quinot  <quinot@adacore.com>

* sem_elim.adb: Minor reformatting

2009-04-29  Ed Schonberg  <schonberg@adacore.com>

* exp_aggr.adb (Convert_To_Positional): if the current unit is a
predefined unit, allow arbitrary number of components in static
aggregate, to ensure that the same level of constant folding applies
for Ada 95 and Ada 05 versions of the file.

From-SVN: r146944

15 years ago[multiple changes]
Arnaud Charlet [Wed, 29 Apr 2009 10:12:51 +0000 (12:12 +0200)]
[multiple changes]

2009-04-29  Ed Schonberg  <schonberg@adacore.com>

* sem_elim.adb (Check_Eliminated): Handle new improved eliminate
information: no need for full scope check.
(Eliminate_Error): Do not emit error in a generic context.

2009-04-29  Ed Falis  <falis@adacore.com>

* adaint.c (__gnat_rmdir): return error code if VTHREADS is defined.
VxWorks 653 POS does not support rmdir.

2009-04-29  Matteo Bordin  <bordin@adacore.com>

* s-stausa.adb, s-stausa.ads: Get_Usage_Range: changing the way
results are printed.

From-SVN: r146943

15 years ago[multiple changes]
Arnaud Charlet [Wed, 29 Apr 2009 10:05:44 +0000 (12:05 +0200)]
[multiple changes]

2009-04-29  Arnaud Charlet  <charlet@adacore.com>

* s-taskin.adb (Initialize): Remove pragma Warnings Off and remove
unused assignment.

2009-04-29  Thomas Quinot  <quinot@adacore.com>

* make.adb: Minor reformatting.
Minor code reorganization throughout.

2009-04-29  Matteo Bordin  <bordin@adacore.com>

* s-stausa.ads: Changed visibility of type Task_Result: moved to
public part to give application visibility over it.
This is for future improvement and to build a public API on top of it.
Changed record components name of type Task_Result to reflect the new
way of reporting.

* s-stausa.adb: Actual_Size_Str changed to reflect the new way of
reporting Stack usage.

* gnat_ugn.texi: Update doc of stack usage report.

* g-tastus.ads, s-stusta.ads, s-stusta.adb: New files.

* Makefile.rtl: Add new run-time files.

From-SVN: r146942

15 years agoinitialize.c: Do not expand quoted arguments.
Pascal Obry [Wed, 29 Apr 2009 09:55:37 +0000 (09:55 +0000)]
initialize.c: Do not expand quoted arguments.

2009-04-29  Pascal Obry  <obry@adacore.com>

* initialize.c: Do not expand quoted arguments.

From-SVN: r146941

15 years agoprj-ext.adb, [...]: Fix memory leaks.
Emmanuel Briot [Wed, 29 Apr 2009 09:52:34 +0000 (09:52 +0000)]
prj-ext.adb, [...]: Fix memory leaks.

2009-04-29  Emmanuel Briot  <briot@adacore.com>

* prj-ext.adb, prj.adb, prj.ads: Fix memory leaks.

* clean.adb (Ultimate_Extension_Of): removed, since duplicate of
 Prj.Ultimate_Extending_Project_Of

From-SVN: r146940

15 years agoexp_ch7.adb (Build_Final_List): If the designated type is a Taft Amendment type...
Ed Schonberg [Wed, 29 Apr 2009 09:51:28 +0000 (09:51 +0000)]
exp_ch7.adb (Build_Final_List): If the designated type is a Taft Amendment type...

2009-04-29  Ed Schonberg  <schonberg@adacore.com>

* exp_ch7.adb (Build_Final_List): If the designated type is a Taft
Amendment type, add the with_clause for Finalization.List_Controller
only if the current context is a package body.

From-SVN: r146939

15 years ago[multiple changes]
Arnaud Charlet [Wed, 29 Apr 2009 09:45:57 +0000 (11:45 +0200)]
[multiple changes]

2009-04-29  Thomas Quinot  <quinot@adacore.com>

* sem_ch12.adb: Minor reformatting

* sem_aggr.adb: Minor reformatting

* sem_ch6.adb, sem_cat.ads: Minor reformatting

* sem_ch10.adb, gnat1drv.adb, prj-nmsc.adb: Minor reformatting

2009-04-29  Quentin Ochem  <ochem@adacore.com>

* prj.ads (Source_Id): Now general pointer type.

From-SVN: r146938

15 years agoexp_ch7.adb, [...]: Minor reformatting
Thomas Quinot [Wed, 29 Apr 2009 09:41:23 +0000 (09:41 +0000)]
exp_ch7.adb, [...]: Minor reformatting

2009-04-29  Thomas Quinot  <quinot@adacore.com>

* exp_ch7.adb, rtsfind.adb: Minor reformatting

* sem_res.adb: Minor reformatting

From-SVN: r146937

15 years agosem_res.adb (Static_Concatenation): An N_Op_Concat with static operands is static...
Thomas Quinot [Wed, 29 Apr 2009 09:37:01 +0000 (09:37 +0000)]
sem_res.adb (Static_Concatenation): An N_Op_Concat with static operands is static only if...

2009-04-29  Thomas Quinot  <quinot@adacore.com>

* sem_res.adb (Static_Concatenation): An N_Op_Concat with static
operands is static only if it is a predefined concatenation operator.

* sem_util.adb: Minor reformatting

* sem_ch12.adb (Save_References): When propagating semantic information
from generic copy back to generic template, for the case of an
identifier that has been rewritten to an explicit dereference whose
prefix is either an object name or a parameterless funcion call
denoting a global object or function, properly capture the denoted
global entity: perform the corresponding rewriting in the template,
and point the rewritten identifier to the correct global entity (not
to the associated identifier in the generic copy).

From-SVN: r146936

15 years ago[multiple changes]
Arnaud Charlet [Wed, 29 Apr 2009 09:32:55 +0000 (11:32 +0200)]
[multiple changes]

2009-04-29  Robert Dewar  <dewar@adacore.com>

* rtsfind.adb, prj-env.adb: Minor reformatting
Minor code reorganization

2009-04-29  Emmanuel Briot  <briot@adacore.com>

* make.adb: Fix comment

* prj.adb (Ultimate_Extending_Project_Of): Fix handling when no project
is given as argument, as might happen in gnatmake.

From-SVN: r146935

15 years agosem_ch3.adb (Check_Abstract_Overriding): Improve error message when an abstract opera...
Ed Schonberg [Wed, 29 Apr 2009 09:31:29 +0000 (09:31 +0000)]
sem_ch3.adb (Check_Abstract_Overriding): Improve error message when an abstract operation of a progenitor is not...

2009-04-29  Ed Schonberg  <schonberg@adacore.com>

* sem_ch3.adb (Check_Abstract_Overriding): Improve error message when
an abstract operation of a progenitor is not properly overridden by an
operation of a derived synchronized type.

From-SVN: r146934

15 years agomlib-prj.adb, [...]: Minor reformatting Minor code reorganization
Robert Dewar [Wed, 29 Apr 2009 09:28:07 +0000 (09:28 +0000)]
mlib-prj.adb, [...]: Minor reformatting Minor code reorganization

2009-04-29  Robert Dewar  <dewar@adacore.com>

* mlib-prj.adb, mlib-tgt.adb, mlib-tgt.ads, prj-nmsc.adb,
prj-proc.adb: Minor reformatting
Minor code reorganization

From-SVN: r146933

15 years agoMinor message improvement.
Arnaud Charlet [Wed, 29 Apr 2009 09:24:02 +0000 (11:24 +0200)]
Minor message improvement.

From-SVN: r146932

15 years ago[multiple changes]
Arnaud Charlet [Wed, 29 Apr 2009 09:22:32 +0000 (11:22 +0200)]
[multiple changes]

2009-04-29  Bob Duff  <duff@adacore.com>

* exp_ch7.adb (Build_Final_List): For an access type that designates a
Taft Amendment type, if the access type needs finalization, make sure
the implicit with clause for List_Controller occurs on the package spec.

* rtsfind.adb (Text_IO_Kludge): Fine tune the creation of implicit
with's created for the pseudo-children of Text_IO and friends. In
particular, avoid cycles, such as Ada.Wide_Text_IO.Integer_IO and
Ada.Text_IO.Integer_IO both with-ing each other.

* sem.adb (Walk_Library_Items): Suppress assertion failure in certain
oddball cases when pragma Extend_System is used.

* sem_ch12.adb (Get_Associated_Node): Prevent direct 'with' cycles in
the case where a package spec instantiates a generic whose body with's
this package, so Walk_Library_Items won't complain about cyclic with's.

2009-04-29  Emmanuel Briot  <briot@adacore.com>

* gnatcmd.adb, prj-proc.adb, make.adb, mlib-prj.adb, prj.adb, prj.ads,
prj-pp.adb, prj-pp.ads, makeutl.adb, clean.adb, prj-nmsc.adb,
mlib-tgt.adb, mlib-tgt.ads, prj-util.adb, prj-env.adb, prj-env.ads
(Project_Id): now a real pointer to Project_Data, instead of an index
into the Projects_Table. This simplifies the API significantly, avoiding
extra lookups in this table and the need to pass the Project_Tree_Ref
parameter in several cases

From-SVN: r146931

15 years agoMakefile.in: Produce .dSYM files for shared libs on darwin.
Nicolas Setton [Wed, 29 Apr 2009 09:11:35 +0000 (09:11 +0000)]
Makefile.in: Produce .dSYM files for shared libs on darwin.

2009-04-29  Nicolas Setton  <setton@adacore.com>

* gcc-interface/Makefile.in: Produce .dSYM files for shared libs on
darwin.

From-SVN: r146930

15 years agobfin.md (sp_or_sm, [...]): New macro.
Bernd Schmidt [Wed, 29 Apr 2009 08:41:32 +0000 (08:41 +0000)]
bfin.md (sp_or_sm, [...]): New macro.

gcc/
* config/bfin/bfin.md (sp_or_sm, spm_string, spm_name): New macro.
(ss<spm_name>hi3, ss<spm_name>hi3_parts, ss<spm_name>hi3_low_parts,
ss<spm_name_hi3_high_parts): New patterns, replacing ssaddhi3, ssubhi3,
ssaddhi3_parts and sssubhi3_parts.
(flag_mulhi3_parts): Produce a HImode output rather than trying to set
a VEC_SELECT.
* config/bfin/bfin.c (bfin_expand_builtin, case BFIN_BUILTIN_CPLX_SQU):
Adjust accordingly.

gcc/testsuite/
* gcc.target/bfin/20090411-1.c: New test.

From-SVN: r146929