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
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
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
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
GCC Administrator [Sat, 2 May 2009 00:16:48 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r147052
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
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
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
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
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
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
GCC Administrator [Fri, 1 May 2009 00:16:51 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r147028
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
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
Michael Matz [Thu, 30 Apr 2009 21:59:49 +0000 (21:59 +0000)]
fix for PR 39955
From-SVN: r147021
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
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
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
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
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
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
Janne Blomqvist [Thu, 30 Apr 2009 15:12:37 +0000 (18:12 +0300)]
Fix PR libfortran/39667
From-SVN: r147004
Eric Botcazou [Thu, 30 Apr 2009 14:35:50 +0000 (14:35 +0000)]
Fix date
From-SVN: r147003
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
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
Ramana Radhakrishnan [Thu, 30 Apr 2009 10:04:52 +0000 (10:04 +0000)]
Fix PR target/38571
From-SVN: r147000
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
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
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
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
GCC Administrator [Thu, 30 Apr 2009 00:17:30 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r146994
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
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
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
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
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
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
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
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
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
Arnaud Charlet [Wed, 29 Apr 2009 15:34:32 +0000 (15:34 +0000)]
* gcc-interface/Make-lang.in: Update dependencies
From-SVN: r146978
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
Arnaud Charlet [Wed, 29 Apr 2009 10:50:37 +0000 (12:50 +0200)]
Minor improvements.
From-SVN: r146950
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
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
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
Arnaud Charlet [Wed, 29 Apr 2009 10:30:53 +0000 (12:30 +0200)]
Minor clean ups.
From-SVN: r146946
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
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
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
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
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
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
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
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
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
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
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
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
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
Arnaud Charlet [Wed, 29 Apr 2009 09:24:02 +0000 (11:24 +0200)]
Minor message improvement.
From-SVN: r146932
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
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
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
Anmol P. Paralkar [Wed, 29 Apr 2009 08:34:21 +0000 (08:34 +0000)]
re PR target/39565 (Static variable leaves undefined symbol in object file)
2009-04-29 Anmol P. Paralkar <anmol@freescale.com>
PR target/39565
* gcc.dg/pr39565.c: New testcase.
From-SVN: r146928
Richard Guenther [Wed, 29 Apr 2009 08:10:15 +0000 (08:10 +0000)]
tree-vect-loop.c (get_initial_def_for_induction): Use correct types for pointer increment.
2009-04-28 Richard Guenther <rguenther@suse.de>
* tree-vect-loop.c (get_initial_def_for_induction): Use
correct types for pointer increment.
From-SVN: r146927
Nathan Sidwell [Wed, 29 Apr 2009 08:03:33 +0000 (08:03 +0000)]
re PR debug/23205 ([C++/unit-at-a-time] stabs debug info omitted for global const variables)
* gcc.target/i386/sse4_1-roundps-1.c: Skip for vxworks kernel.
* gcc.target/i386/sse4_1-roundpd-1.c: Likewise.
* gcc.target/i386/sse4_1-roundps-3.c: Likewise.
* gcc.target/i386/sse4_1-roundpd-3.c: Likewise.
* gcc.target/i386/sse4_1-roundss-1.c: Likewise.
* gcc.target/i386/sse4_1-roundsd-1.c: Likewise.
* gcc.target/i386/sse4_1-roundss-3.c: Likewise.
* gcc.target/i386/sse4_1-roundsd-3.c: Likewise.
* gcc.target/i386/sse4_1-roundps-2.c: Likewise.
* gcc.target/i386/sse4_1-roundpd-2.c: Likewise.
* gcc.target/i386/sse4_1-roundss-2.c: Likewise.
* gcc.target/i386/sse4_1-roundsd-2.c: Likewise.
* gcc.target/i386/sse4_1-roundss-4.c: Likewise.
* gcc.target/i386/sse4_1-roundsd-4.c: Likewise.
* gcc.target/i386/pr37191.c: Likewise.
* gcc.target/i386/reload-1.c: Likewise.
* g++.old-deja/g++.pt/repo1.C: Skip for vxworks kernel.
* g++.old-deja/g++.pt/repo2.C: Likewise.
* g++.old-deja/g++.pt/repo3.C: Likewise.
* g++.old-deja/g++.pt/repo4.C: Likewise.
* g++.old-deja/g++.pt/instantiate4.C: Likewise.
* g++.old-deja/g++.pt/instantiate6.C: Likewise.
* g++.dg/template/repo1.C: Likewise.
* g++.dg/template/repo2.C: Likewise.
* g++.dg/template/repo3.C: Likewise.
* g++.dg/template/repo4.C: Likewise.
* g++.dg/template/repo5.C: Likewise.
* g++.dg/template/repo6.C: Likewise.
* g++.dg/template/repo7.C: Likewise.
* g++.dg/template/repo8.C: Likewise.
* g++.dg/template/repo9.C: Likewise.
* g++.dg/rtti/repo1.C: Likewise.
* gcc.dg/cpp/_Pragma6.c: Skip for vxworks.
* g++.dg/cpp/_Pragma1.C: Skip for vxworks.
* gcc.dg/pthread-init-1.c: Xfail for vxworks rtp.
* g++.dg/other/PR23205.C: Skip for vxworks.
* g++.dg/ext/visibility/class1.C: Requires PIC.
* g++.dg/eh/async-unwind2.C: Requires PIC.
* lib/target-supports.exp (check_cxa_atexit_available): Vxworks
does not have cxa_exit.
From-SVN: r146926
Benjamin Kosnik [Wed, 29 Apr 2009 05:12:00 +0000 (05:12 +0000)]
re PR libstdc++/39868 (libstdc++ generates man pages, which conflict with the linux manpages)
2009-04-28 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/39868
* scripts/run_doxygen: Uncomment removal of includes.
(problematic): Rewrite __cxxabiv1 namespace to abi.
From-SVN: r146923
Kaveh R. Ghazi [Wed, 29 Apr 2009 04:19:38 +0000 (04:19 +0000)]
toplev.c (print_version): Update GMP version string calculation.
* toplev.c (print_version): Update GMP version string calculation.
From-SVN: r146921
GCC Administrator [Wed, 29 Apr 2009 00:17:05 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r146920
Eric Botcazou [Tue, 28 Apr 2009 21:29:58 +0000 (21:29 +0000)]
re PR rtl-optimization/39938 (build broke for cris-elf with dbr_schedule change)
PR rtl-optimization/39938
* resource.c (init_resource_info): Add call to df_analyze.
From-SVN: r146915
Jing Yu [Tue, 28 Apr 2009 20:39:11 +0000 (20:39 +0000)]
re PR testsuite/39790 (gcc.dg/tls/alias-1.c,opt-2.c fail if TLS is not supported by C library)
PR testsuite/39790
* lib/target-supports.exp (check_effective_target_tls): Remove
comment of caching.
(check_effective_target_tls_native): Likewise.
(check_effective_target_tls_runtime): Likewise.
* gcc.dg/tls/alias-1.c (dg-require-effective-target): Change target
tls to tls_runtime.
* gcc.dg/tls/opt-2.c: Add dg-require-effective-target tls_runtime.
From-SVN: r146913
Uros Bizjak [Tue, 28 Apr 2009 19:58:17 +0000 (21:58 +0200)]
alpha.md (usegp): Cast the result of alpha_find_lo_sum_using_gp to enum attr_usegp.
* config/alpha/alpha.md (usegp): Cast the result of
alpha_find_lo_sum_using_gp to enum attr_usegp.
* config/alpha/alpha.c (override_options): Remove end-of-structure
marker element from cpu_table. Use array size of cpu_table to handle
-mcpu and -mtune options.
(tls_symbolic_operand_type): Change 0 to TLS_MODEL_NONE.
From-SVN: r146912
Joseph Myers [Tue, 28 Apr 2009 18:59:57 +0000 (19:59 +0100)]
config.gcc (powerpc*-*-* | rs6000-*-*): Add rs6000/option-defaults.h to tm_file.
* config.gcc (powerpc*-*-* | rs6000-*-*): Add
rs6000/option-defaults.h to tm_file. Support cpu_32, cpu_64,
tune_32 and tune_64.
* doc/install.texi (--with-cpu-32, --with-cpu-64): Document
support on PowerPC.
* config/rs6000/rs6000.h (OPTION_DEFAULT_SPECS): Move to ...
* config/rs6000/option-defaults.h: ... here. New file.
(OPT_64, OPT_32): Define.
(MASK_64BIT): Define to 0 if not already defined.
(OPT_ARCH64, OPT_ARCH32): Define.
(OPTION_DEFAULT_SPECS): Add entries for cpu_32, cpu_64, tune_32
and tune_64.
From-SVN: r146908
Eric Botcazou [Tue, 28 Apr 2009 18:53:54 +0000 (18:53 +0000)]
Fix nits
From-SVN: r146907
Ramana Radhakrishnan [Tue, 28 Apr 2009 16:45:19 +0000 (16:45 +0000)]
FPA error for AAPCS
From-SVN: r146906
Janus Weil [Tue, 28 Apr 2009 16:27:27 +0000 (18:27 +0200)]
re PR fortran/39946 (PROCEDURE statements: interface with RESULT variable)
2009-04-28 Janus Weil <janus@gcc.gnu.org>
PR fortran/39946
* resolve.c (resolve_symbol): Correctly copy the interface of a
PROCEDURE statement if the interface involves a RESULT variable.
2009-04-28 Janus Weil <janus@gcc.gnu.org>
PR fortran/39946
* gfortran.dg/proc_ptr_16.f90: New.
From-SVN: r146905