gcc.git
14 years agoprofiler_list_to_slist.h: Remove spurious semicolon; prefer pre-increment.
Paolo Carlini [Fri, 25 Jun 2010 17:06:06 +0000 (17:06 +0000)]
profiler_list_to_slist.h: Remove spurious semicolon; prefer pre-increment.

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

* include/profile/impl/profiler_list_to_slist.h: Remove spurious
semicolon; prefer pre-increment.
* include/profile/impl/profiler_container_size.h: Use everywhere
qualified std::size_t.
* include/profile/impl/profiler_trace.h (__trace_base<>::
__collect_warnings): Tidy loop.
* include/profile/impl/profiler_vector_to_list.h: Minor formatting
changes.

From-SVN: r161390

14 years agoDon't search DEBUG_INSNs for removable zero extends.
H.J. Lu [Fri, 25 Jun 2010 15:33:21 +0000 (15:33 +0000)]
Don't search DEBUG_INSNs for removable zero extends.

2010-06-25  H.J. Lu  <hongjiu.lu@intel.com>

PR rtl-optimization/44326
* implicit-zee.c (find_removable_zero_extends): Replace
INSN_P with NONDEBUG_INSN_P.

From-SVN: r161389

14 years agoipa-prop.h (struct ipa_param_descriptor): Removed the modified flag.
Martin Jambor [Fri, 25 Jun 2010 14:27:47 +0000 (16:27 +0200)]
ipa-prop.h (struct ipa_param_descriptor): Removed the modified flag.

2010-06-25  Martin Jambor  <mjambor@suse.cz>

* ipa-prop.h (struct ipa_param_descriptor): Removed the modified flag.
(struct ipa_node_params): Removed the modification_analysis_done flag.
(ipa_is_param_modified): Removed.
(ipa_analyze_node): Declare.
(ipa_compute_jump_functions): Remove declaration.
(ipa_count_arguments): Likewise.
(ipa_detect_param_modifications): Likewise.
(ipa_analyze_params_uses): Likewise.
* ipa-prop.c (struct param_analysis_info): New type.
(visit_store_addr_for_mod_analysis): Removed.
(visit_load_for_mod_analysis): Renamed to visit_ref_for_mod_analysis,
moved down in the file.
(ipa_detect_param_modifications): Merged into ipa_analyze_params_uses.
(ipa_count_arguments): Made static.
(mark_modified): New function.
(is_parm_modified_before_call): New function.
(compute_pass_through_member_ptrs): New parameter parms_info, call
is_parm_modified_before_call instead of ipa_is_param_modified.
(ipa_compute_jump_functions_for_edge): New parameter parms_info, pass
it to compute_pass_through_member_ptrs.
(ipa_compute_jump_functions): New parameter parms_info, pass it to
ipa_compute_jump_functions_for_edge.  Call ipa_initialize_node_params
on the callee if it is analyzed.  Made static.
(ipa_analyze_indirect_call_uses): New parameter parms_info, call
is_parm_modified_before_call instead of ipa_is_param_modified.
(ipa_analyze_call_uses): New parameter parms_info, pass it to
ipa_analyze_indirect_call_uses.
(ipa_analyze_stmt_uses): New parameter parms_info, pass it to
ipa_analyze_call_uses.
(ipa_analyze_params_uses): New parameter parms_info, pass it to
ipa_analyze_stmt_uses.  Also perform the used analysis.  Made static.
(ipa_analyze_node): New function.
(ipa_print_node_params): Do not dump the modified flag.
(ipa_write_node_info): Assert uses_analysis_done rather than streaming
it.  Do not stream the modified parameter flag.
(ipa_read_node_info): Set uses_analysis_done to 1 instead of streaming
it.  Do not stream the modified parameter flag.
* ipa-cp.c (ipcp_analyze_node): Removed.
(ipcp_init_stage): Iterate only once over the nodes, analyze each one
with only a call to ipa_analyze_node.
* ipa-inline.c (inline_indirect_intraprocedural_analysis): Analyze the
node with only a call to ipa_analyze_node.

* testsuite/g++.dg/ipa/iinline-3.C: New test.
* testsuite/gcc.dg/ipa/modif-1.c: Removed.

From-SVN: r161384

14 years agoinvoke.texi (-Wsuggest-attribute): Add item for noreturn.
Manuel López-Ibáñez [Fri, 25 Jun 2010 13:23:08 +0000 (13:23 +0000)]
invoke.texi (-Wsuggest-attribute): Add item for noreturn.

2010-06-25  Manuel López-Ibáñez  <manu@gcc.gnu.org>

* doc/invoke.texi (-Wsuggest-attribute): Add item for noreturn.

From-SVN: r161383

14 years agotree-pass.h (pass_split_functions): Declare.
Jan Hubicka [Fri, 25 Jun 2010 13:13:31 +0000 (15:13 +0200)]
tree-pass.h (pass_split_functions): Declare.

* tree-pass.h (pass_split_functions): Declare.
* opts.c (decode_options): Enable function splitting at -O2
* timevar.def (TV_IPA_FNSPLIT): New macro.
* ipa-split.c: New file.
* common.opt (-fpartial-inlining): New flag.
* Makefile.in (ipa-split.o): New object file.
* passes.c (init_optimization_passes): Add ipa-split.
* params.def (max-inline-insns-auto): Reduce max-inline-insns-auto to 40.
(partial-inlining-entry-probability): New parameters.
* doc/invoke.texi (-fpartial-inlining): New.

* testsuite/gcc.dg/tree-ssa/ipa-split.c

From-SVN: r161382

14 years agore PR middle-end/44665 (typo in comment, incorrect/out-of-date comment)
Manuel López-Ibáñez [Fri, 25 Jun 2010 13:09:28 +0000 (13:09 +0000)]
re PR middle-end/44665 (typo in comment, incorrect/out-of-date comment)

2010-06-25  Manuel López-Ibáñez  <manu@gcc.gnu.org>

       PR 44665
       * tree-inline.c (gimple_expand_calls_inline): Fix typo in comment.
       * gimplify.c (is_gimple_reg_rhs_or_call): Likewise.
       (gimplify_expr): Likewise.

From-SVN: r161380

14 years agoipa-prop.c (determine_cst_member_ptr): Ignore non-clobbering statements instead of...
Martin Jambor [Fri, 25 Jun 2010 12:46:41 +0000 (14:46 +0200)]
ipa-prop.c (determine_cst_member_ptr): Ignore non-clobbering statements instead of bailing out on them.

2010-06-25  Martin Jambor  <mjambor@suse.cz>

* ipa-prop.c (determine_cst_member_ptr): Ignore non-clobbering
statements instead of bailing out on them.
(ipa_analyze_indirect_call_uses): Do not require that loads from the
parameter are in the same BB as the condition.  Update comments.

* testsuite/g++.dg/ipa/iinline-2.C: New test.

From-SVN: r161377

14 years agore PR middle-end/43866 (wrong code with -fbounds-check -funswitch-loops)
Jakub Jelinek [Fri, 25 Jun 2010 12:10:42 +0000 (14:10 +0200)]
re PR middle-end/43866 (wrong code with -fbounds-check -funswitch-loops)

PR middle-end/43866
* tree-ssa-loop-unswitch.c (tree_may_unswitch_on): If stmt is always
true or always false, return NULL_TREE.
(tree_unswitch_single_loop): Optimize conditions even when reaching
max-unswitch-level parameter.  If num > 0, optimize first all conditions
using entry checks, then do still reachable block discovery and consider
only conditions in still reachable basic blocks in the loop.

* gfortran.dg/pr43866.f90: New test.

From-SVN: r161375

14 years agore PR tree-optimization/44539 (ICE: verify_ssa failed: type mismatch between an SSA_N...
Jakub Jelinek [Fri, 25 Jun 2010 12:07:00 +0000 (14:07 +0200)]
re PR tree-optimization/44539 (ICE: verify_ssa failed: type mismatch between an SSA_NAME and its symbol)

PR tree-optimization/44539
* tree-cfgcleanup.c (fixup_noreturn_call): Call update_stmt even when
the call doesn't have LHS, but has VDEF.

* gcc.dg/pr44539.c: New test.

From-SVN: r161374

14 years agoprofiler_list_to_slist.h: Remove spurious semicolon; prefer pre-increment.
Paolo Carlini [Fri, 25 Jun 2010 11:37:54 +0000 (11:37 +0000)]
profiler_list_to_slist.h: Remove spurious semicolon; prefer pre-increment.

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

* include/profile/impl/profiler_list_to_slist.h: Remove spurious
semicolon; prefer pre-increment.
* include/profile/impl/profiler_container_size.h: Use everywhere
qualified std::size_t.
* include/profile/impl/profiler_trace.h (__trace_base<>::
__collect_warnings): Tidy loop.
* include/profile/impl/profiler_vector_to_list.h: Minor formatting
changes.

From-SVN: r161373

14 years agopa.h (MODIFY_TARGET_NAME): Remove.
Joseph Myers [Fri, 25 Jun 2010 11:12:01 +0000 (12:12 +0100)]
pa.h (MODIFY_TARGET_NAME): Remove.

* config/pa/pa.h (MODIFY_TARGET_NAME): Remove.
* doc/tm.texi (MODIFY_TARGET_NAME): Don't document.
* gcc.c (enum add_del, struct modify_target, modify_target):
Remove.
(process_command): Remove code conditional on MODIFY_TARGET_NAME.
* system.h (MODIFY_TARGET_NAME): Poison.

From-SVN: r161372

14 years agoinvoke.texi: Delete mcmodel=medium from powerpc options.
Alan Modra [Fri, 25 Jun 2010 10:42:41 +0000 (20:12 +0930)]
invoke.texi: Delete mcmodel=medium from powerpc options.

* doc/invoke.texi: Delete mcmodel=medium from powerpc options.
* config/rs6000/rs6000.h (enum rs6000_cmodel): Delete CMODEL_MEDIUM.
* config/rs6000/linux64.h (SUBSUBTARGET_OVERRIDE_OPTIONS): Set
CMODEL_LARGE as default.
* config/rs6000/rs6000.c (rs6000_handle_option): Remove mcmodel=medium.
(offsettable_ok_by_alignment): Delete.
(rs6000_emit_move): Remove mcmodel=medium optimization.

From-SVN: r161371

14 years agoprofiler_trace.h: Uglify it to __it, use everywhere std::size_t instead of size_t.
Paolo Carlini [Fri, 25 Jun 2010 09:43:18 +0000 (09:43 +0000)]
profiler_trace.h: Uglify it to __it, use everywhere std::size_t instead of size_t.

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

* include/profile/impl/profiler_trace.h: Uglify it to __it, use
everywhere std::size_t instead of size_t.

From-SVN: r161368

14 years agoWith large parts from Jim Wilson:
Bernd Schmidt [Fri, 25 Jun 2010 08:56:24 +0000 (08:56 +0000)]
With large parts from Jim Wilson:

PR target/43902
* tree-pretty-print.c (dump_generic_node, op_code_prio): Add
WIDEN_MULT_PLUS_EXPR and WIDEN_MULT_MINUS_EXPR.
* optabs.c (optab_for_tree_code): Likewise.
(expand_widen_pattern_expr): Likewise.
* tree-ssa-math-opts.c (convert_mult_to_widen): New function, broken
out of execute_optimize_widening_mul.
(convert_plusminus_to_widen): New function.
(execute_optimize_widening_mul): Use the two new functions.
* expr.c (expand_expr_real_2): Add support for GIMPLE_TERNARY_RHS.
Remove code to generate widening multiply-accumulate.  Add support
for WIDEN_MULT_PLUS_EXPR and WIDEN_MULT_MINUS_EXPR.
* gimple-pretty-print.c (dump_ternary_rhs): New function.
(dump_gimple_assign): Call it when appropriate.
* tree.def (WIDEN_MULT_PLUS_EXPR, WIDEN_MULT_MINUS_EXPR): New codes.
* cfgexpand.c (gimple_assign_rhs_to_tree): Likewise.
(expand_gimple_stmt_1): Likewise.
(expand_debug_expr): Support WIDEN_MULT_PLUS_EXPR and
WIDEN_MULT_MINUS_EXPR.
* tree-ssa-operands.c (get_expr_operands): Likewise.
* tree-inline.c (estimate_operator_cost): Likewise.
* gimple.c (extract_ops_from_tree_1): Renamed from
extract_ops_from_tree.  Add new arg for a third operand; fill it.
(gimple_build_assign_stat): Support operations with three operands.
(gimple_build_assign_with_ops_stat): Likewise.
(gimple_assign_set_rhs_from_tree): Likewise.
(gimple_assign_set_rhs_with_ops_1): Renamed from
gimple_assign_set_rhs_with_ops.  Add new arg for a third operand.
(get_gimple_rhs_num_ops): Support GIMPLE_TERNARY_RHS.
(get_gimple_rhs_num_ops): Handle WIDEN_MULT_PLUS_EXPR and
WIDEN_MULT_MINUS_EXPR.
* gimple.h (enum gimple_rhs_class): Add GIMPLE_TERNARY_RHS.
(extract_ops_from_tree_1): Adjust declaration.
(gimple_assign_set_rhs_with_ops_1): Likewise.
(gimple_build_assign_with_ops): Pass NULL for last operand.
(gimple_build_assign_with_ops3): New macro.
(gimple_assign_rhs3, gimple_assign_rhs3_ptr, gimple_assign_set_rhs3,
gimple_assign_set_rhs_with_ops, extract_ops_from_tree): New inline
functions.
* tree-cfg.c (verify_gimple_assign_ternary): New static function.
(verify_gimple_assign): Call it.
* doc/gimple.texi (Manipulating operands): Document GIMPLE_TERNARY_RHS.
(Tuple specific accessors, subsection GIMPLE_ASSIGN): Document new
functions for dealing with three-operand statements.
* tree.c (commutative_ternary_tree_code): New function.
* tree.h (commutative_ternary_tree_code): Declare it.
* tree-vrp.c (gimple_assign_nonnegative_warnv_p): Return false for ternary
statements.
(gimple_assign_nonzero_warnv_p): Likewise.
* tree-ssa-sccvn.c (stmt_has_constants): Handle GIMPLE_TERNARY_RHS.
* tree-ssa-ccp.c (get_rhs_assign_op_for_ccp): New static function.
(ccp_fold): Use it.  Handle GIMPLE_TERNARY_RHS.
* tree-ssa-dom.c (enum expr_kind): Add EXPR_TERNARY.
(struct hashtable_expr): New member ternary in the union.
(initialize_hash_element): Handle GIMPLE_TERNARY_RHS.
(hashable_expr_equal_p): Fix indentation.  Handle EXPR_TERNARY.
(iterative_hash_hashable_expr): Likewise.
(print_expr_hash_elt): Handle EXPR_TERNARY.
* gimple-fold.c (fold_gimple_assign): Handle GIMPLE_TERNARY_RHS.
* tree-ssa-threadedge.c (fold_assignment_stmt): Remove useless break
statements.  Handle GIMPLE_TERNARY_RHS.

testsuite/
PR target/43902
* gcc.target/mips/madd-9.c: New test.

From-SVN: r161366

14 years ago* doc/invoke.texi (-Wsuggest-attribute): Add noreturn.
Jan Hubicka [Fri, 25 Jun 2010 07:56:43 +0000 (09:56 +0200)]
* doc/invoke.texi (-Wsuggest-attribute): Add noreturn.

From-SVN: r161364

14 years agore PR c/44517 (improve diagnostic for mispelled typename in function declaration)
Shujing Zhao [Fri, 25 Jun 2010 07:31:49 +0000 (07:31 +0000)]
re PR c/44517 (improve diagnostic for mispelled typename in function declaration)

gcc/
2010-06-25  Shujing Zhao  <pearly.zhao@oracle.com>

        PR c/44517
        * c-parser.c (c_parser_parms_list_declarator): Return NULL if one of
        parameters are not good.
        (c_parser_parameter_declaration): Error unknown type name if the type
        name can't start declaration specifiers.

gcc/testsuite/
2010-06-25  Shujing Zhao  <pearly.zhao@oracle.com>

        PR c/44517
        * gcc.dg/noncompile/pr44517.c: New.
        * gcc.dg/noncompile/990416-1.c: Adjust expected error.

From-SVN: r161363

14 years agogcc.c (translate_options): Don't mention +e in comment.
Joseph Myers [Fri, 25 Jun 2010 00:26:24 +0000 (01:26 +0100)]
gcc.c (translate_options): Don't mention +e in comment.

* gcc.c (translate_options): Don't mention +e in comment.
(process_command): Don't handle +e specially.

cp:
* lang-specs.h: Remove +e handling.

objcp:
* lang-specs.h: Remove +e handling.

From-SVN: r161355

14 years agoDaily bump.
GCC Administrator [Fri, 25 Jun 2010 00:18:17 +0000 (00:18 +0000)]
Daily bump.

From-SVN: r161354

14 years agoira-int.h (struct live_range, [...]): Renamed from struct ira_allocno_live_range...
Bernd Schmidt [Thu, 24 Jun 2010 23:30:28 +0000 (23:30 +0000)]
ira-int.h (struct live_range, [...]): Renamed from struct ira_allocno_live_range and allocno_live_range_t...

* ira-int.h (struct live_range, live_range_t): Renamed from struct
ira_allocno_live_range and allocno_live_range_t; all uses changed.
* ira-build.c (live_range_pool): Renamed from allocno_live_range_pool.
All uses changed.

From-SVN: r161350

14 years agoira-int.h (SET_MINMAX_SET_BIT, [...]): Renamed from SET_ALLOCNO_SET_BIT...
Bernd Schmidt [Thu, 24 Jun 2010 23:29:44 +0000 (23:29 +0000)]
ira-int.h (SET_MINMAX_SET_BIT, [...]): Renamed from SET_ALLOCNO_SET_BIT...

* ira-int.h (SET_MINMAX_SET_BIT, CLEAR_MINMAX_SET_BIT,
TEST_MINMAX_SET_BIT, minmax_set_iterator, minmax_set_iter_init,
minmax_set_iter_cond, minmax_set_iter_next,
FOR_EACH_BIT_IN_MINMAX_SET): Renamed from SET_ALLOCNO_SET_BIT,
CLEAR_ALLOCNO_SET_BIT, TEST_ALLOCNO_SET_BIT, ira_allocno_set_iterator,
ira_allocno_set_iter_init, ira_allocno_set_iter_cond,
ira_allocno_set_iter_Next and FOR_EACH_ALLOCNO_IN_ALLOCNO_SET.  All
uses changed.

From-SVN: r161349

14 years agoira-color.c (assign_hard_reg): Improve formatting of multi-line for statement.
Bernd Schmidt [Thu, 24 Jun 2010 23:28:35 +0000 (23:28 +0000)]
ira-color.c (assign_hard_reg): Improve formatting of multi-line for statement.

* ira-color.c (assign_hard_reg): Improve formatting of multi-line for
statement.

From-SVN: r161348

14 years agoira-int.h (ira_parent_allocno, [...]): Declare.
Bernd Schmidt [Thu, 24 Jun 2010 23:27:58 +0000 (23:27 +0000)]
ira-int.h (ira_parent_allocno, [...]): Declare.

* ira-int.h (ira_parent_allocno, ira_parent_or_cap_allocno): Declare.
* ira-build.c (ira_parent_allocno, ira_parent_or_cap_allocno): New
functions.
(ira_flattening): Use ira_parent_allocno.
* ira-conflicts.c (process_regs_for_copy, propagate_copies)
build_allocno_conflicts): Use ira_parent_or_cap_allocno.

From-SVN: r161347

14 years agoira-build.c (merge_hard_reg_conflicts): New function.
Bernd Schmidt [Thu, 24 Jun 2010 23:27:09 +0000 (23:27 +0000)]
ira-build.c (merge_hard_reg_conflicts): New function.

* ira-build.c (merge_hard_reg_conflicts): New function.
(create_cap_allocno, copy_info_to_removed_store_destinations,
propagate_some_info_from_allocno, propagate_allocno_info): Use it.
(move_allocno_live_ranges, copy_allocno_live_ranges): New functions.
(remove_unnecessary_allocnos, remove_low_level_allocnos)
copy_nifo_to_removed_store_destination): Use them.
* ira-lives.c (make_hard_regno_born): New function, split out of
make_regno_born.
(make_allocno_born): Likewise.
(make_hard_regno_dead): New function, split out of make_regno_dead.
(make_allocno_dead): Likewise.
(inc_register_pressure): New function, split out of set_allocno_live.
(dec_register_pressure): New function, split out of clear_allocno_live.
(mark_pseudo_regno_live): New function, split out of mark_reg_live.
(mark_hard_reg_live): Likewise.  Use inc_register_pressure.
(mark_pseudo_regno_dead): New function, split out of mark_reg_dead.
(mark_hard_reg_dead): Likewise.  Use dec_register_pressure.
(make_pseudo_conflict): Use mark_pseudo_regno_dead and
mark_pseudo_regno_live.
(process_bb_node_lives): Use mark_pseudo_regno_live,
make_hard_regno_born and make_allocno_dead.
(make_regno_born, make_regno_dead, mark_reg_live, mark_reg_dead,
set_allocno_live, clear_allocno_live): Delete functions.

From-SVN: r161346

14 years ago* ira.c (allocno_pool, copy_pool, allocno_live_range_pool): Delete.
Bernd Schmidt [Thu, 24 Jun 2010 23:25:23 +0000 (23:25 +0000)]
* ira.c (allocno_pool, copy_pool, allocno_live_range_pool): Delete.

From-SVN: r161345

14 years agothumb2.md (thumb2_tlobits_cbranch): Delete.
Richard Earnshaw [Thu, 24 Jun 2010 22:46:54 +0000 (22:46 +0000)]
thumb2.md (thumb2_tlobits_cbranch): Delete.

* thumb2.md (thumb2_tlobits_cbranch): Delete.
(peephole2 to convert zero_extract/compare of single bit to
 lshift/compare): New.

From-SVN: r161344

14 years agoFix type in last checkin. (Added \t that should not have been there.)
Steve Ellcey [Thu, 24 Jun 2010 22:38:15 +0000 (22:38 +0000)]
Fix type in last checkin. (Added \t that should not have been there.)

From-SVN: r161343

14 years agore PR testsuite/43283 (ld: Unsatisfied symbol "start" in file c_lto_20091216-1_0.o)
Steve Ellcey [Thu, 24 Jun 2010 22:31:23 +0000 (22:31 +0000)]
re PR testsuite/43283 (ld: Unsatisfied symbol "start" in file c_lto_20091216-1_0.o)

2010-06-24  Steve Ellcey  <sje@cup.hp.com>

PR testsuite/43283
* gcc.dg/lto/20091216-1_0.c: Use newline instead of semicolon
and add argument to nop for IA64.

From-SVN: r161342

14 years agofold-const.c (const_binop): Remove 'notrunc' argement.
Anatoly Sokolov [Thu, 24 Jun 2010 19:11:19 +0000 (23:11 +0400)]
fold-const.c (const_binop): Remove 'notrunc' argement.

* fold-const.c (const_binop): Remove 'notrunc' argement. Adjust
recursive call and call to 'int_const_binop'.
(build_range_check, fold_cond_expr_with_comparison, unextend,
fold_truthop, extract_muldiv_1, fold_comparison, fold_binary_loc,
multiple_of_p): Adjust call to const_binop.

From-SVN: r161336

14 years agoprofiler_trace.h (__trace_base<>:: __trace_base()): Move inline, simplify; formatting...
Paolo Carlini [Thu, 24 Jun 2010 18:52:42 +0000 (18:52 +0000)]
profiler_trace.h (__trace_base<>:: __trace_base()): Move inline, simplify; formatting tweaks.

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

* include/profile/impl/profiler_trace.h (__trace_base<>::
__trace_base()): Move inline, simplify; formatting tweaks.
* include/profile/impl/profiler_hash_func.h: Formatting tweaks.

From-SVN: r161334

14 years agoprofiler_trace.h (__trace_base<>:: __trace_base()): Move inline, simplify; formatting...
Paolo Carlini [Thu, 24 Jun 2010 18:52:31 +0000 (18:52 +0000)]
profiler_trace.h (__trace_base<>:: __trace_base()): Move inline, simplify; formatting tweaks.

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

* include/profile/impl/profiler_trace.h (__trace_base<>::
__trace_base()): Move inline, simplify; formatting tweaks.
* include/profile/impl/profiler_hash_func.h: Formatting tweaks.

From-SVN: r161333

14 years agoi386.md (XFmode push splitter): Use GET_MODE_SIZE to determine size of XFmode operand.
Uros Bizjak [Thu, 24 Jun 2010 18:35:52 +0000 (20:35 +0200)]
i386.md (XFmode push splitter): Use GET_MODE_SIZE to determine size of XFmode operand.

* config/i386/i386.md (XFmode push splitter): Use GET_MODE_SIZE to
determine size of XFmode operand.
(XFmode extended DFmode push splitter): Ditto.
(XFmode extended SFmode push splitter): Ditto.

From-SVN: r161332

14 years agoAdd missing testcases for PR 44588.
H.J. Lu [Thu, 24 Jun 2010 18:21:21 +0000 (11:21 -0700)]
Add missing testcases for PR 44588.

From-SVN: r161330

14 years agoImplement 8bit divmod patterns.
H.J. Lu [Thu, 24 Jun 2010 18:20:28 +0000 (18:20 +0000)]
Implement 8bit divmod patterns.

gcc/

2010-06-24  H.J. Lu  <hongjiu.lu@intel.com>

PR target/44588
* config/i386/i386.md (extract_code): New.
(<u>divmodqi4): Likewise.
(divmodhiqi3): Likewise.
(udivmodhiqi3): Likewise.
(<u>divqi3): Remvoved.

gcc/testsuite/

2010-06-24  H.J. Lu  <hongjiu.lu@intel.com>

PR target/44588
* gcc.target/i386/mod-1.c: New.
* gcc.target/i386/umod-1.c: Likewise.
* gcc.target/i386/umod-2.c: Likewise.
* gcc.target/i386/umod-3.c: Likewise.

From-SVN: r161329

14 years agore PR middle-end/44492 (auto-inc-dec pushes PRE_MODIFY/PRE_INC into inline asm operands)
Jakub Jelinek [Thu, 24 Jun 2010 17:48:16 +0000 (19:48 +0200)]
re PR middle-end/44492 (auto-inc-dec pushes PRE_MODIFY/PRE_INC into inline asm operands)

PR middle-end/44492
* recog.h (struct recog_data): Add is_asm field.
* recog.c (asm_operand_ok, constrain_operands): If neither < nor > is
present in constraints of inline-asm operand and memory operand
contains {PRE,POST}_{INC,DEC,MODIFY}, return 0.
(extract_insn): Initialize recog_data.is_asm.
* doc/md.texi (Constraints): Document operand side-effect rules.

* g++.dg/torture/pr44492.C: New test.

From-SVN: r161328

14 years agoprofiler_trace.h (__warning_data:: __warning_message): Change to std::string...
Paolo Carlini [Thu, 24 Jun 2010 16:17:55 +0000 (16:17 +0000)]
profiler_trace.h (__warning_data:: __warning_message): Change to std::string...

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

* include/profile/impl/profiler_trace.h (__warning_data::
__warning_message): Change to std::string; clean-up includes,
qualify size_t, fprintf, etc, with std everywhere.
(struct __warn::operator()): Adjust.
* include/profile/impl/profiler_list_to_slist.h
(__list2slist_info::__advice): Change to return a std::string;
clean-up includes, qualify size_t, fprintf, etc, with std.
* include/profile/impl/profiler_container_size.h
(__container_size_info::__advice): Likewise.
* include/profile/impl/profiler_hash_func.h (__hashfunc_info::
__advice): Likewise.
* include/profile/impl/profiler_list_to_vector.h
(__list2vector_info::__advice): Likewise.
* include/profile/impl/profiler_vector_to_list.h
(__vector2list_info::__advice): Likewise.
* include/profile/impl/profiler_map_to_unordered_map.h
(__map2umap_info::__advice): Likewise.
* include/profile/impl/profiler.h: Likewise.
* include/profile/impl/profiler_hashtable_size.h: Likewise.
* include/profile/impl/profiler_node.h: Likewise.
* include/profile/impl/profiler_vector_size.h: Likewise.

* include/profile/iterator_tracker.h: Formatting and stylistic
tweaks.
* include/profile/base.h: Likewise.
* include/profile/map.h: Likewise.

From-SVN: r161325

14 years agoupdate_web_docs_svn: Also pass -I option pointing to ada/ source directory for Ada...
Joseph Myers [Thu, 24 Jun 2010 15:52:46 +0000 (16:52 +0100)]
update_web_docs_svn: Also pass -I option pointing to ada/ source directory for Ada manual.

* update_web_docs_svn: Also pass -I option pointing to ada/ source
directory for Ada manual.

From-SVN: r161324

14 years agoc-parser.c (c_parser_conditional_expression): Call warn_for_omitted_condop.
Andi Kleen [Thu, 24 Jun 2010 12:47:30 +0000 (12:47 +0000)]
c-parser.c (c_parser_conditional_expression): Call warn_for_omitted_condop.

2010-06-24  Andi Kleen  <ak@linux.intel.com>

* c-parser.c (c_parser_conditional_expression):
        Call warn_for_omitted_condop.
        * doc/invoke.texi: Document omitted condop warning.
c-family/
        * c-common.c (warn_for_omitted_condop): New.
        * c-common.h (warn_for_omitted_condop): Add prototype.
testsuite/
        * c-c++-common/warn-omitted-condop.c: New.
cp/
* parser.c: (cp_parser_question_colon_clause):
        Switch to use cp_lexer_peek_token.
        Call warn_for_omitted_condop. Call pedwarn for omitted
        middle operand.

From-SVN: r161318

14 years agoloop-unswitch.c (compare_and_jump_seq): Assert that the last insn in the sequence...
Nick Clifton [Thu, 24 Jun 2010 10:01:57 +0000 (10:01 +0000)]
loop-unswitch.c (compare_and_jump_seq): Assert that the last insn in the sequence is a jump insn before setting its label.

        * loop-unswitch.c (compare_and_jump_seq): Assert that the last
        insn in the sequence is a jump insn before setting its label.

From-SVN: r161313

14 years agocollect2.c (main): Match exactly --version and --help.
Alan Modra [Thu, 24 Jun 2010 08:39:11 +0000 (18:09 +0930)]
collect2.c (main): Match exactly --version and --help.

* collect2.c (main): Match exactly --version and --help.

From-SVN: r161311

14 years agore PR fortran/44614 ([OOP] Wrongly importing a symbol into an interface without IMPORT)
Tobias Burnus [Thu, 24 Jun 2010 07:51:22 +0000 (09:51 +0200)]
re PR fortran/44614 ([OOP] Wrongly importing a symbol into an interface without IMPORT)

2010-06-24  Tobias Burnus  <burnus@net-b.de>

        PR fortran/44614
        * decl.c (variable_decl): Fix IMPORT diagnostic for CLASS.

2010-06-24  Tobias Burnus  <burnus@net-b.de>

        PR fortran/44614
        * gfortran.dg/import8.f90: New.

From-SVN: r161310

14 years ago* config/m32c/m32c-pragma.c: Don't include rtl.h.
DJ Delorie [Thu, 24 Jun 2010 04:26:04 +0000 (00:26 -0400)]
* config/m32c/m32c-pragma.c: Don't include rtl.h.

From-SVN: r161307

14 years agoDaily bump.
GCC Administrator [Thu, 24 Jun 2010 00:17:50 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r161305

14 years agodecl.c (java_init_decl_processing): Use double_int_to_tree instead of build_int_cst_wide.
Anatoly Sokolov [Wed, 23 Jun 2010 19:18:10 +0000 (23:18 +0400)]
decl.c (java_init_decl_processing): Use double_int_to_tree instead of build_int_cst_wide.

/java
* decl.c (java_init_decl_processing): Use double_int_to_tree instead
of build_int_cst_wide.
* boehm.c (set_bit): Remove.
(mark_reference_fields): Use double_int type for 'mask' argument.
Use double_int_setbit instead of set_bit.
(get_boehm_type_descriptor): Use double_int_setbit instead of
set_bit. Use double_int_to_tree instead of build_int_cst_wide.

From-SVN: r161288

14 years agoi386 (mov<mode>): Macroize expander from mov{sf,df,xf} using X87MODEF mode iterator.
Uros Bizjak [Wed, 23 Jun 2010 19:02:42 +0000 (21:02 +0200)]
i386 (mov<mode>): Macroize expander from mov{sf,df,xf} using X87MODEF mode iterator.

* config/i386/i386 (mov<mode>): Macroize expander from mov{sf,df,xf}
using X87MODEF mode iterator.
(pushsf splitter): Macroize splitter using P mode iterator.
(*swap<mode>): Macroize insn from *swap{sf,df} using MODEF
mode iterator.

(*movxf_internal): Rename from *movxf_integer.
(*movxf_internal_nointeger): Rename from *movxf_nointeger.
(*movdf_internal_rex64): Rename from *movdf_integer_rex64.
(*movdf_internal): Rename from *movdf_integer.
(*movdf_internal_nointeger): Rename from *movdf_nointeger.
(*movsf_internal): Rename from *movdf_1.

From-SVN: r161287

14 years agocoretypes.h: (gimple_seq_node_d, gimple_seq_node)
Basile Starynkevitch [Wed, 23 Jun 2010 16:10:01 +0000 (16:10 +0000)]
coretypes.h: (gimple_seq_node_d, gimple_seq_node)

2010-06-23  Basile Starynkevitch  <basile@starynkevitch.net>

* coretypes.h: (gimple_seq_node_d, gimple_seq_node)
(const_gimple_seq_node): Removed typedefs.

* gimple.h: (gimple_seq_node_d, gimple_seq_node)
(const_gimple_seq_node): Added typedefs moved from coretypes.h.

From-SVN: r161283

14 years agore PR other/44644 (type/data name clash makes --enable-build-with-cxx cc1 hard to...
Joern Rennecke [Wed, 23 Jun 2010 14:25:33 +0000 (14:25 +0000)]
re PR other/44644 (type/data name clash makes --enable-build-with-cxx cc1 hard to debug)

        PR other/44644
        * df-core.c (struct df): Rename to df_d.
        * df.h (struct df): Likewise.
        * dse.h (struct df): Remove forward declaration.
        * recog.h (struct insn_data): Rename to:
        (struct_insn_data_d).  Adjusted all users.

From-SVN: r161281

14 years agoSplit AVX vec_extract_lo_XXX and 128bit to 256bit cast.
H.J. Lu [Wed, 23 Jun 2010 14:11:23 +0000 (14:11 +0000)]
Split AVX vec_extract_lo_XXX and 128bit to 256bit cast.

Remove 256bit to 128bit cast.

2010-06-23  H.J. Lu  <hongjiu.lu@intel.com>

* config/i386/i386.c (bdesc_args): Replace CODE_FOR_avx_si_si256,
CODE_FOR_avx_ps_ps256 and CODE_FOR_avx_pd_pd256 with
CODE_FOR_vec_extract_lo_v8si, CODE_FOR_vec_extract_lo_v8sf
and CODE_FOR_vec_extract_lo_v4df.

* config/i386/sse.md (vec_extract_lo_<AVX256MODE4P:mode>):
Changed to define_insn_and_split.
(vec_extract_lo_<AVX256MODE8P:mode>): Likewise.
(vec_extract_lo_v16hi): Likewise.
(vec_extract_lo_v32qi): Likewise.
(avx_<avxmodesuffixp><avxmodesuffix>_<avxmodesuffixp>): Likewise.
(avx_<avxmodesuffixp>_<avxmodesuffixp><avxmodesuffix>): Removed.

From-SVN: r161279

14 years agoFix header.
Arnaud Charlet [Wed, 23 Jun 2010 12:51:37 +0000 (14:51 +0200)]
Fix header.

From-SVN: r161278

14 years ago[multiple changes]
Arnaud Charlet [Wed, 23 Jun 2010 12:44:34 +0000 (14:44 +0200)]
[multiple changes]

2010-06-23  Thomas Quinot  <quinot@adacore.com>

* exp_attr.adb (Expand_Access_To_Protected_Op): When rewriting a
reference to a protected subprogram outside of the protected's scope,
ensure the corresponding external subprogram is frozen before the
reference.

2010-06-23  Ed Schonberg  <schonberg@adacore.com>

* sem_prag.adb: Fix typo in error message.
* sem.adb: Refine previous change.

2010-06-23  Robert Dewar  <dewar@adacore.com>

* impunit.adb, a-suewen.adb, a-suewen.ads, a-suenco.adb, a-suenco.ads,
a-suezen.adb, a-suezen.ads, a-stuten.adb, a-stuten.ads, Makefile.rtl:
Implement Ada 2012 string encoding packages.

2010-06-23  Arnaud Charlet  <charlet@adacore.com>

* a-stwiun-shared.adb, a-stwiun-shared.ads, a-stzunb-shared.adb,
a-stzunb-shared.ads, a-swunau-shared.adb, a-swuwti-shared.adb,
a-szunau-shared.adb, a-szuzti-shared.adb: New files.
* gcc-interface/Makefile.in: Enable use of above files.

From-SVN: r161277

14 years agoAdd PR markers.
Joern Rennecke [Wed, 23 Jun 2010 12:40:04 +0000 (13:40 +0100)]
Add PR markers.

From-SVN: r161276

14 years ago* config/spu/spu.c (ea_load_store_inline): Use add_reg_note.
Joern Rennecke [Wed, 23 Jun 2010 12:31:08 +0000 (12:31 +0000)]
* config/spu/spu.c (ea_load_store_inline): Use add_reg_note.

From-SVN: r161275

14 years ago* config/spu/spu-protos.h (spu_expand_epilogue) Use bool.
Joern Rennecke [Wed, 23 Jun 2010 12:29:32 +0000 (12:29 +0000)]
* config/spu/spu-protos.h (spu_expand_epilogue) Use bool.

        * config/spu/spu.c (spu_scalar_mode_supported_p): Declare with bool.
        (spu_vector_mode_supported_p, spu_handle_fndecl_attribute): Likewise.
        (spu_handle_vector_attribute, spu_pass_by_reference): Likewise.
        (spu_rtx_costs, spu_function_ok_for_sibcall): Likewise.

From-SVN: r161274

14 years ago[multiple changes]
Arnaud Charlet [Wed, 23 Jun 2010 10:21:23 +0000 (12:21 +0200)]
[multiple changes]

2010-06-23  Ed Schonberg  <schonberg@adacore.com>

* sem_ch13.adb (Check_Constant_Address_Clauses): Do not check legality
of address clauses if if Ignore_Rep_Clauses is active.
* freeze.adb (Check_Address_Clause): If Ignore_Rep_Clauses is active,
remove address clause from tree so that it does not reach the backend.

2010-06-23  Arnaud Charlet  <charlet@adacore.com>

* exp_attr.adb (Expand_N_Attribute_Reference [Attribute_Valid]): Do not
expand 'Valid from user code in CodePeer mode, will be handled by the
back-end directly.

2010-06-23  Bob Duff  <duff@adacore.com>

* g-comlin.ads: Minor comment improvements.

2010-06-23  Ed Schonberg  <schonberg@adacore.com>

* sem_res.adb (Uses_SS): The expression that initializes a controlled
component of a record type may be a user-defined operator that is
rewritten as a function call.

From-SVN: r161271

14 years agog-comlin.ads, [...]: Minor comment fix.
Bob Duff [Wed, 23 Jun 2010 10:13:57 +0000 (10:13 +0000)]
g-comlin.ads, [...]: Minor comment fix.

2010-06-23  Bob Duff  <duff@adacore.com>

* g-comlin.ads, sem_ch13.adb: Minor comment fix.

From-SVN: r161270

14 years ago[multiple changes]
Arnaud Charlet [Wed, 23 Jun 2010 09:53:24 +0000 (11:53 +0200)]
[multiple changes]

2010-06-23  Eric Botcazou  <ebotcazou@adacore.com>

* exp_ch11.adb (Expand_Local_Exception_Handlers): Propagate the end
label to the new sequence of statements.  Set the sloc of the raise
statement onto the new goto statements.

2010-06-23  Robert Dewar  <dewar@adacore.com>

* a-stuten.ads, a-stuten.adb: New files.
* impunit.adb: Add engtry for Ada.Strings.UTF_Encoding (a-stuten.ads)
* Makefile.rtl: Add entry for a-stuten (Ada.Strings.UTF_Encoding)

2010-06-23  Robert Dewar  <dewar@adacore.com>

* gnat_ugn.texi: Add documentation of -gnat12 switch
Add documentation of -gnatX switch.

2010-06-23  Ed Schonberg  <schonberg@adacore.com>

* inline.ads: Include the current Ada_Version in the info for pending
instance bodies, so that declaration and body are compiled with the
same Ada_Version.
* inline.adb: Move with_clause for Opt to spec.
* sem_ch12.adb (Analyze_Package_Instantiation,
Analyze_Subprogram_Instantiation): Save current Ada_Version in
Pending_Instantiation information.
(Instantiate_Package_Body, Instantiate_Subprogram_Body,
Inline_Package_Body): Use the Ada_Version present in the body
information.

2010-06-23  Robert Dewar  <dewar@adacore.com>

* usage.adb: Add documentation for -gnat12 switch.
* errout.ads: Add VMS alias entry for -gnat12 switch
* gnat_rm.texi: Add documentation for pragma Ada_12 and Ada_2012
Add documentation for pragma Extensions_Allowed.
* opt.ads: Add entry for Ada 2012 mode.
* sem_ch4.adb, par-ch3.adb, par-ch4.adb: Use new Ada 2012 mode for 2012
features.
* sem_prag.adb, par-prag.adb: Add processing for pragma Ada_12 and
Ada_2012.
* sem_ch13.adb: Add handling for Ada 2012 mode.
* snames.ads-tmpl: Add entries for pragma Ada_2012 and Ada_12.
* switch-c.adb: Add handling for -gnat12 switch.
Implement -gnat2005 and -gnat2012.
* usage.adb: Add documentation for -gnat12 switch.
* vms_data.ads: Add /12 switch for Ada 2012 mode.

From-SVN: r161268

14 years agostl_tree.h (erase(iterator), [...]): Remove inline specifier.
Paolo Carlini [Wed, 23 Jun 2010 09:50:42 +0000 (09:50 +0000)]
stl_tree.h (erase(iterator), [...]): Remove inline specifier.

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

* include/bits/stl_tree.h (erase(iterator), erase(const_iterator)):
Remove inline specifier.

From-SVN: r161267

14 years agoexp_ch4.adb (Expand_N_Allocator): Fix potential crash when using No_Task_Hierarchy...
Arnaud Charlet [Wed, 23 Jun 2010 09:29:04 +0000 (09:29 +0000)]
exp_ch4.adb (Expand_N_Allocator): Fix potential crash when using No_Task_Hierarchy restriction.

2010-06-23  Arnaud Charlet  <charlet@adacore.com>

* exp_ch4.adb (Expand_N_Allocator): Fix potential crash when using
No_Task_Hierarchy restriction. Add comment.
* exp_ch9.adb, exp_ch3.adb: Update comments.

From-SVN: r161266

14 years ago[multiple changes]
Arnaud Charlet [Wed, 23 Jun 2010 09:23:47 +0000 (11:23 +0200)]
[multiple changes]

2010-06-23  Robert Dewar  <dewar@adacore.com>

* sem_ch5.adb (Process_Bounds): Remove some junk initializations.
* sem_res.adb: Add comments.
* sem_util.adb: Minor reformatting. Add comments.
Change increment on Actuals_In_Call table.
* opt.ads: Minor: add 'constant'.

2010-06-23  Javier Miranda  <miranda@adacore.com>

* exp_disp.adb (Make_DT): Initialize the Size_Func component of the
TSD to Null_Address if No_Dispatching_Calls is active.

2010-06-23  Vincent Celier  <celier@adacore.com>

* a-comlin.ads: Indicate that use of this package is not supported
during the elaboration of an auto-initialized Stand-Alone Library.

2010-06-23  Ed Schonberg  <schonberg@adacore.com>

* exp_util.adb (Is_Possibly_Misaligned_Object): Do not rely on an
alignment clause on a record type to determine if a component may be
misaligned. The decision must be taken in the back-end where target
alignment information is known.

2010-06-23  Arnaud Charlet  <charlet@adacore.com>

* gnat1drv.adb (Adjust_Global_Switches): Enable some restrictions
systematically in CodePeer mode to simplify generated code.
* restrict.adb (Check_Restriction): Do nothing in CodePeer mode.
* exp_ch4.adb (Expand_N_Allocator): Generate proper code when
No_Task_Hierarchy is set instead of crasshing.

From-SVN: r161265

14 years ago[multiple changes]
Arnaud Charlet [Wed, 23 Jun 2010 09:14:55 +0000 (11:14 +0200)]
[multiple changes]

2010-06-23  Thomas Quinot  <quinot@adacore.com>

* sem_util.adb: Minor code cleanup: test for proper entity instead of
testing just Chars attribute when checking whether a given scope is
System.
* exp_ch4.adb, einfo.adb: Minor reformatting.

2010-06-23  Vincent Celier  <celier@adacore.com>

PR ada/44633
* switch-m.adb (Normalize_Compiler_Switches): Take into account
switches -gnatB, -gnatD=nn, -gnatG (incuding -gnatG=nn), -gnatI,
-gnatl=file, -gnatS, -gnatjnn, -gnateI=nn and -gnatWx.

2010-06-23  Ed Schonberg  <schonberg@adacore.com>

* sem_res.adb (Resolve_Membership_Op): If left operand is a mixed mode
operation with a universal real operand, and the right operand is a
range with universal bounds, find unique fixed point that may be
candidate, and warn appropriately.

From-SVN: r161264

14 years ago[multiple changes]
Arnaud Charlet [Wed, 23 Jun 2010 09:08:31 +0000 (11:08 +0200)]
[multiple changes]

2010-06-23  Ed Schonberg  <schonberg@adacore.com>

* sem_res.adb (Resolve_Intrinsic_Operator): Add guards to handle
properly the rare cases where VMS operators are visible through
Extend_System, but the default System is being used and Address is a
private type.
* sem_util.adb: Widen predicate Is_VMS_Operator.

2010-06-23  Vincent Celier  <celier@adacore.com>

* switch-m.adb (Normalize_Compiler_Switches): Take into account -gnatC
and -gnateS.

From-SVN: r161263

14 years ago[multiple changes]
Arnaud Charlet [Wed, 23 Jun 2010 09:01:32 +0000 (11:01 +0200)]
[multiple changes]

2010-06-23  Olivier Hainque  <hainque@adacore.com>

* einfo.adb (Has_Foreign_Convention): Consider Intrinsic with
Interface_Name as foreign. These are GCC builtin imports for
which Ada specific processing doesn't apply.

2010-06-23  Thomas Quinot  <quinot@adacore.com>

* sem_ch12.adb: Minor reformatting.

2010-06-23  Ed Schonberg  <schonberg@adacore.com>

* sem_util.adb (Is_VMS_Operator): Use scope of system extension to
determine whether an intrinsic subprogram is VMS specific.

2010-06-23  Hristian Kirtchev  <kirtchev@adacore.com>

* treepr.adb (Print_Entity_Info): Output the contents of Field28 if it
is present in the entity.

From-SVN: r161262

14 years ago(gnat_to_gnu_param): Use void_ptr GCC type for System.Address argument
Olivier Hainque [Wed, 23 Jun 2010 08:56:20 +0000 (08:56 +0000)]
(gnat_to_gnu_param): Use void_ptr GCC type for System.Address argument
of GCC builtin imports.

From-SVN: r161261

14 years agoxr_tabls.adb, [...]: Update to latest lib-xref.ads Fix handling of parameters.
Arnaud Charlet [Wed, 23 Jun 2010 08:53:09 +0000 (08:53 +0000)]
xr_tabls.adb, [...]: Update to latest lib-xref.ads Fix handling of parameters.

2010-06-23  Arnaud Charlet  <charlet@adacore.com>

* xr_tabls.adb, xref_lib.adb: Update to latest lib-xref.ads
Fix handling of parameters.
Add protection against unexpected cases.
* sem_ch6.adb (Create_Extra_Formals): Use suffix "L" instead of "A" for
access level, since "A" suffix is already used elsewhere. Similarly,
use suffix "O" instead of "C" for 'Constrained since "C" suffix is used
for xxx'Class.

From-SVN: r161260

14 years ago[multiple changes]
Arnaud Charlet [Wed, 23 Jun 2010 08:46:08 +0000 (10:46 +0200)]
[multiple changes]

2010-06-23  Thomas Quinot  <quinot@adacore.com>

* sem_util.adb, sem_util.ads: Minor reformatting.

2010-06-23  Vincent Celier  <celier@adacore.com>

* prj.ads (Gprclean_Flags.Missing_Source_Files): Set to Error to keep
the previous behavior of gprclean when there are missing files.

2010-06-23  Ed Schonberg  <schonberg@adacore.com>

* sem_ch12.adb (Load_Body_Of_Generic): In CodePeer mode, a missing
generic body is not a fatal error.
(Mark_Context): Handle properly names of child units.
* sem.adb (Walk_Library_Items.Do_Action): Remove assertion on
instantiations.

2010-06-23  Vincent Celier  <celier@adacore.com>

* ali.adb (Scan_ALI): When ignoring R lines, do not skip the next
non-empty line.

2010-06-23  Bob Duff  <duff@adacore.com>

* g-pehage.ads, g-pehage.adb: Switch default optimization mode to
Memory_Space, because CPU_Time doesn't seem to provide any significant
speed advantage in practice. Cleanup: Get rid of constant
Default_Optimization; doesn't seem to add anything. Use case
statements instead of if statements; seems cleaner.

From-SVN: r161259

14 years agodecl.c (gnat_to_gnu_entity): Use Wshadow instead of Wextra to guard warning on absenc...
Olivier Hainque [Wed, 23 Jun 2010 08:40:22 +0000 (08:40 +0000)]
decl.c (gnat_to_gnu_entity): Use Wshadow instead of Wextra to guard warning on absence of internal builtin...

* gcc-interface/decl.c (gnat_to_gnu_entity) <case E_Procedure>: Use
Wshadow instead of Wextra to guard warning on absence of internal
builtin decl for an import.  Fix use of quote in warning text.
(intrin_arglists_compatible_p): Remove processing of integer trailing
args on the Ada side.  Fix use of literal > in warning text.
(intrin_return_compatible_p): Never warn on "function imported as
procedure".  Defer the void/void case to the common type compatibility
check.

From-SVN: r161258

14 years agodecl.c (intrin_types_incompatible_p): New function, helper for ...
Olivier Hainque [Wed, 23 Jun 2010 08:28:20 +0000 (08:28 +0000)]
decl.c (intrin_types_incompatible_p): New function, helper for ...

2010-06-23  Olivier Hainque  <hainque@adacore.com>

* gcc-interface/decl.c (intrin_types_incompatible_p): New function,
helper for ...
(intrin_arglists_compatible_p, intrin_return_compatible_p): New
functions, helpers for ...
(intrin_profiles_compatible_p): New function, replacement for ...
(compatible_signatures_p): Removed.
(gnat_to_gnu_entity) <case E_Procedure>: If -Wextra, warn on
attempt to bind an unregistered builtin function.  When we have
one, use it and warn on profile incompatibilities.

From-SVN: r161257

14 years agoReplace PR 22220 by PR ada/22220.
Arnaud Charlet [Wed, 23 Jun 2010 07:47:57 +0000 (09:47 +0200)]
Replace PR 22220 by PR ada/22220.

From-SVN: r161256

14 years agore PR ada/22220 (Unable to build gnattools native i586)
Arnaud Charlet [Wed, 23 Jun 2010 07:08:46 +0000 (09:08 +0200)]
re PR ada/22220 (Unable to build gnattools native i586)

        PR 22220
        * doc/install.texi: Update requirements to build GNAT.

From-SVN: r161255

14 years agoUpdate dependencies.
Arnaud Charlet [Wed, 23 Jun 2010 07:01:12 +0000 (07:01 +0000)]
Update dependencies.

From-SVN: r161254

14 years ago[multiple changes]
Arnaud Charlet [Wed, 23 Jun 2010 06:59:47 +0000 (08:59 +0200)]
[multiple changes]

2010-06-23  Ed Schonberg  <schonberg@adacore.com>

* sem_util.adb (Mark_Coextensions): If the expression in the allocator
for a coextension in an object declaration is a concatenation, treat
coextension as dynamic.

2010-06-23  Javier Miranda  <miranda@adacore.com>

* sem_ch3.adb (Add_Internal_Interface_Entities): Ensure that the
internal entities are added to the scope of the tagged type.
(Derive_Subprograms): Do not stop derivation when we find the first
internal entity that has attribute Interface_Alias. After the change
done to Override_Dispatching_Operations it is no longer true that
these primirives are always located at the end of the list of
primitives.
* einfo.ads (Primitive_Operations): Add documentation.
* exp_disp.adb (Write_DT): Improve output adding to the name of the
primitive a prefix indicating its corresponding tagged type.
* sem_disp.adb (Override_Dispatching_Operations): If the overridden
entity covers the primitive of an interface that is not an ancestor of
this tagged type then the new primitive is added at the end of the list
of primitives.  Required to fulfill the C++ ABI.

From-SVN: r161253

14 years ago[multiple changes]
Arnaud Charlet [Wed, 23 Jun 2010 06:50:13 +0000 (08:50 +0200)]
[multiple changes]

2010-06-23  Javier Miranda  <miranda@adacore.com>

* atree.ads (Set_Reporting_Proc): New subprogram.
* atree.adb: Remove dependency on packages Opt and SCIL_LL.
(Allocate_Initialize_Node, Replace, Rewrite): Replace direct calls
to routines of package Scil_ll by indirect call to the registered
subprogram.
(Set_Reporting_Proc): New subprogram. Used to register a subprogram
that is invoked when a node is allocated, replaced or rewritten.
* scil_ll.adb (Copy_SCIL_Node): New routine that takes care of copying
the SCIL node. Used as argument for Set_Reporting_Proc.
(Initialize): Register Copy_SCIL_Node as the reporting routine that
is invoked by atree.

2010-06-23  Thomas Quinot  <quinot@adacore.com>

* sem_ch3.ads: Minor reformatting.

2010-06-23  Ed Schonberg  <schonberg@adacore.com>

* sem_ch12.adb (Analyze_Package_Instantiation): In CodePeer mode,
always analyze the generic body and instance, because it may be needed
downstream.
(Mark_Context): Prepend the with clauses for needed generic units, so
they appear in a better order for CodePeer.
* sem_util.adb, sem_util.ads: Prototype code for AI05-0144.

2010-06-23  Emmanuel Briot  <briot@adacore.com>

* prj.ads, prj-nmsc.adb (Error_Or_Warning): New subprogram.

From-SVN: r161252

14 years ago[multiple changes]
Arnaud Charlet [Wed, 23 Jun 2010 06:43:38 +0000 (08:43 +0200)]
[multiple changes]

2010-06-23  Robert Dewar  <dewar@adacore.com>

* g-pehage.adb, exp_ch13.adb: Minor reformatting.

2010-06-23  Thomas Quinot  <quinot@adacore.com>

* a-tags.ads: Fix description of TSD structure.

2010-06-23  Ed Schonberg  <schonberg@adacore.com>

* sem_ch12.adb (Mark_Context): When indicating that the body of a
generic unit is needed prior to the unit containing an instantiation,
search recursively the context of the generic to add other generic
bodies that may be instantiated indirectly through the current instance.

From-SVN: r161251

14 years ago[multiple changes]
Arnaud Charlet [Wed, 23 Jun 2010 06:39:36 +0000 (08:39 +0200)]
[multiple changes]

2010-06-23  Robert Dewar  <dewar@adacore.com>

* freeze.adb: Minor reformatting.

2010-06-23  Bob Duff  <duff@adacore.com>

* g-pehage.adb (Trim_Trailing_Nuls): Fix the code to match the comment.

2010-06-23  Vincent Celier  <celier@adacore.com>

* make.adb (Compile_Sources): Complete previous change.

2010-06-23  Ed Schonberg  <schonberg@adacore.com>

* sem_ch6.adb (Add_Extra_Formal): Use suffix "C" in the name of the
Constrained extra formal.

2010-06-23  Ed Schonberg  <schonberg@adacore.com>

* exp_ch13.adb (Expand_Freeze_Actions): If validity checks and
Initialize_Scalars are enabled, compile the generated equality function
for a composite type with full checks enabled, so that validity checks
are performed on individual components.

From-SVN: r161250

14 years ago[multiple changes]
Arnaud Charlet [Wed, 23 Jun 2010 06:35:36 +0000 (08:35 +0200)]
[multiple changes]

2010-06-23  Emmanuel Briot  <briot@adacore.com>

* prj.adb, prj.ads, prj-nmsc.adb (Processing_Flags): New flag
Missing_Source_Files.

2010-06-23  Robert Dewar  <dewar@adacore.com>

* exp_ch3.adb, exp_util.adb: Minor reformatting.

From-SVN: r161249

14 years ago[multiple changes]
Arnaud Charlet [Wed, 23 Jun 2010 06:31:57 +0000 (08:31 +0200)]
[multiple changes]

2010-06-23  Jose Ruiz  <ruiz@adacore.com>

* a-reatim.adb, a-retide.adb: Move the initialization of the tasking
run time from Ada.Real_Time.Delays to Ada.Real_Time. This way, calls to
Clock (without delays) use a run time which is properly initialized.

2010-06-23  Vincent Celier  <celier@adacore.com>

* make.adb: Do not set Check_Readonly_Files when setting Must_Compile,
when -f -u and a main is specified on the command line. However,
attempt to compile even when the ALI file is read-only when
Must_Compile is True.

2010-06-23  Thomas Quinot  <quinot@adacore.com>

* checks.adb, g-pehage.adb, cstand.adb: Minor code factorization.

From-SVN: r161248

14 years ago[multiple changes]
Arnaud Charlet [Wed, 23 Jun 2010 06:26:07 +0000 (08:26 +0200)]
[multiple changes]

2010-06-23  Javier Miranda  <miranda@adacore.com>

* sem_ch3.adb (Add_Internal_Interface_Entities): Generate internal
entities for parent types that are interfaces. Needed in generics to
handle formals that implement interfaces.
(Derive_Subprograms): Add assertion for derivation of tagged types that
do not cover interfaces. For generics, complete code that handles
derivation of type that covers interfaces because the previous
condition was weak (it required only name consistency; arguments were
not checked). Add new code to locate primitives covering interfaces
defined in generic units or instantiatons.
* sem_util.adb (Has_Interfaces): Add missing support for derived types.
* sem_ch6.adb (Check_Overriding_Indicator): Minor code cleanups.
* exp_disp.adb (Make_Select_Specific_Data_Table): Skip primitives of
interfaces that are parents of the type because they share the primary
dispatch table.
(Register_Primitive): Do not register primitives of interfaces that
are parents of the type.
* sem_ch13.adb (Analyze_Freeze_Entity): Add documentation.
* exp_cg.adb (Write_Type_Info): When displaying overriding of interface
primitives skip primitives of interfaces that are parents of the type.

2010-06-23  Ed Schonberg  <schonberg@adacore.com>

* sem_attr.adb (Eval_Attribute): If the prefix is an array, the
attribute cannot be constant-folded if an index type is a formal type,
or is derived from one.
* checks.adb (Determine_Range): ditto.

2010-06-23  Arnaud Charlet  <charlet@adacore.com>

* gnat_ugn.texi, gnatxref.adb: Add support for --ext switch.

2010-06-23  Bob Duff  <duff@adacore.com>

* g-pehage.ads, g-pehage.adb (Put): Fix off-by-one bug.
(Insert): Disallow nul characters.
(misc output routines): Assert no nul characters.

From-SVN: r161247

14 years ago[multiple changes]
Arnaud Charlet [Wed, 23 Jun 2010 06:21:26 +0000 (08:21 +0200)]
[multiple changes]

2010-06-23  Ed Schonberg  <schonberg@adacore.com>

* exp_ch4.adb: Use predefined unsigned type in all cases.

2010-06-23  Bob Duff  <duff@adacore.com>

* s-rannum.adb (Reset): Avoid overflow in calculation of Initiator.
* g-pehage.ads: Minor comment fixes.
* g-pehage.adb: Minor: Add some additional debugging printouts under
Verbose flag.

2010-06-23  Robert Dewar  <dewar@adacore.com>

* binde.adb (Better_Choice): Always prefer Pure/Preelab.
(Worse_Choice): Always prefer Pure/Preelab.

From-SVN: r161246

14 years agoa-reatim.adb: Call System.OS_Primitives.Initialize during elaboration
Vincent Celier [Wed, 23 Jun 2010 06:17:00 +0000 (06:17 +0000)]
a-reatim.adb: Call System.OS_Primitives.Initialize during elaboration

2010-06-23  Vincent Celier  <celier@adacore.com>

* a-reatim.adb: Call System.OS_Primitives.Initialize during elaboration

From-SVN: r161245

14 years ago[multiple changes]
Arnaud Charlet [Wed, 23 Jun 2010 06:11:20 +0000 (08:11 +0200)]
[multiple changes]

2010-06-23  Robert Dewar  <dewar@adacore.com>

* sem_ch6.adb (Analyze_Subprogram_Body_Helper): Properly handle
checking returns in generic case.
(Check_Missing_Return): New procedure.

2010-06-23  Robert Dewar  <dewar@adacore.com>

* bindgen.adb, switch-b.adb: Minor reformatting.

2010-06-23  Javier Miranda  <miranda@adacore.com>

* frontend.adb (Frontend): Add call to initialize the new package
SCIL_LL.
* exp_ch7.adb (Wrap_Transient_Expression): Remove call to
Adjust_SCIL_Node.
(Wrap_Transient_Statement): Remove call to Adjust_SCIL_Node.
* sem_ch5.adb (Analyze_Iteration_Scheme.Process_Bounds): Remove call to
Adjust_SCIL_Node.
* exp_util.adb (Insert_Actions): Remove code for
N_SCIL_Dispatch_Table_Object_Init and N_SCIL_Tag_Init nodes.
(Remove_Side_Effects): Remove calls to Adjust_SCIL_Node.
* sinfo.adb (SCIL_Entity, SCIL_Tag_Value): Remove checks on
N_SCIL_Tag_Init and N_SCIL_Dispatch_Table_Object_Init in the assertion.
(SCIL_Related_Node, Set_SCIL_Related_Node): Removed.
* sinfo.ads (SCIL_Related_Node): Field removed.
(N_SCIL_Dispatch_Table_Object_Init): Node removed.
(N_SCIL_Tag_Init): Node removed.
* sem_scil.ads, sem_scil.adb (Adjust_SCIL_Node): Removed.
(Check_SCIL_Node): New implementation.
(Find_SCIL_Node): Removed.
* sem.adb (Analyze): Remove management of
N_SCIL_Dispatch_Table_Object_Init and N_SCIL_Tag_Init nodes.
* sem_util.adb (Insert_Explicit_Dereference): Remove call to
Adjust_SCIL_Node.
* exp_ch4.adb (Expand_N_In): Code cleanup: remove call to
Set_SCIL_Related_Node and avoid adding the SCIL node before the
referenced node using Insert_Action because this is not longer required.
(Expand_Short_Circuit_Operator): Remove call to SCIL node.
* exp_ch6.adb (Expand_Call): Remove call to Adjust_SCIL_Node.
* sem_ch4.adb (Analyze_Type_Conversion): Remove call to Adjust_SCIL_Node
* exp_disp.adb (Expand_Dispatching_Call): Minor code reorganization
because we no longer require to generate the SCIL node before the call.
(Make_DT): Remove generation of SCI_Dispatch_Table_Object_Init node.
Remove calls to Set_SCIL_Related_Node and avoid adding the SCIL
nodes before the referenced node using Insert_Action because this
is not longer required.
* atree.adb (Allocate_Initialize_Node, Replace, Rewrite): Add call to
update the SCIL_Node field.
* sprint.adb (Sprint_Node_Actual): Remove code for
N_SCIL_Dispatch_Table_Object_Init and N_SCIL_Tag_Init nodes.
* treepr.adb (Print_Node): Print the SCIL node field (if available).
* exp_ch3.adb (Build_Init_Procedure): Remove generation of
SCIL_Tag_Init nodes.
* scil_ll.ads, scil_ll.adb: New files.

From-SVN: r161244

14 years ago[multiple changes]
Arnaud Charlet [Wed, 23 Jun 2010 05:48:28 +0000 (07:48 +0200)]
[multiple changes]

2010-06-23  Robert Dewar  <dewar@adacore.com>

* sem_ch6.adb: Minor reformatting.

2010-06-23  Doug Rupp  <rupp@adacore.com>

* bindusg.adb (Display): Write -Hnn line.
* bindgen.adb (Gen_Adainit_Ada): Write Heap_Size to binder file as
necessary.
* init.c (__gl_heap_size): Rename from __gl_no_malloc_64 and change
valid values to 32 and 64.
(GNAT$NO_MALLOC_64): Recognize TRUE, 1, FALSE, and 0 in addition to
ENABLE, DISABLE as valid settings.
* switch-b.adb (Scan_Binder_Switches): Process -Hnn switch.
* opt.ads (Heap_Size): New global variable.
* gcc-interface/utils2.c (maybe_wrap_malloc): Remove mostly redundant
TARGET_MALLOC64 check. Fix comment.

From-SVN: r161243

14 years agosem_ch6.adb, [...]: Minor reformatting.
Robert Dewar [Wed, 23 Jun 2010 05:40:52 +0000 (05:40 +0000)]
sem_ch6.adb, [...]: Minor reformatting.

2010-06-23  Robert Dewar  <dewar@adacore.com>

* sem_ch6.adb, exp_ch4.adb, s-rannum.ads, sem.adb, sem_ch12.adb: Minor
reformatting.  Add comments.
* errout.adb (Finalize): Properly adjust warning count when deleting
continuations.

From-SVN: r161242

14 years ago* gnat.dg/not_null.adb: Update test case.
Arnaud Charlet [Wed, 23 Jun 2010 05:21:16 +0000 (05:21 +0000)]
* gnat.dg/not_null.adb: Update test case.

From-SVN: r161241

14 years agoDaily bump.
GCC Administrator [Wed, 23 Jun 2010 00:17:33 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r161240

14 years agoprofiler_list_to_slist.h: Fix formatting, other minor stylistic changes.
Paolo Carlini [Tue, 22 Jun 2010 23:36:32 +0000 (23:36 +0000)]
profiler_list_to_slist.h: Fix formatting, other minor stylistic changes.

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

* include/profile/impl/profiler_list_to_slist.h: Fix formatting,
other minor stylistic changes.
* include/profile/impl/profiler_container_size.h: Likewise.
* include/profile/impl/profiler_vector_size.h: Likewise.
* include/profile/impl/profiler_hash_func.h: Likewise.
* include/profile/impl/profiler_trace.h: Likewise.
* include/profile/impl/profiler_list_to_vector.h: Likewise.
* include/profile/impl/profiler_vector_to_list.h: Likewise.
* include/profile/impl/profiler_state.h: Likewise.
* include/profile/impl/profiler_map_to_unordered_map.h: Likewise.
* include/profile/impl/profiler_hashtable_size.h: Likewise.
* include/profile/impl/profiler_node.h: Likewise.

From-SVN: r161236

14 years agoprinters.py: Don't use string exceptions.
Matthias Klose [Tue, 22 Jun 2010 22:09:07 +0000 (22:09 +0000)]
printers.py: Don't use string exceptions.

2010-06-22  Matthias Klose  <doko@ubuntu.com>

        * python/libstdcxx/v6/printers.py: Don't use string exceptions.

From-SVN: r161233

14 years agore PR c++/44619 (Bogus set but not used warning when using pointer to member operators)
Jakub Jelinek [Tue, 22 Jun 2010 20:50:03 +0000 (22:50 +0200)]
re PR c++/44619 (Bogus set but not used warning when using pointer to member operators)

PR c++/44619
* typeck2.c (build_m_component_ref): Call mark_lvalue_use on
datum and mark_rvalue_use on component.

* g++.dg/warn/Wunused-var-13.C: New test.

From-SVN: r161230

14 years agore PR c++/44627 (ICE in dump_expr, at cp/error.c:1735)
Jakub Jelinek [Tue, 22 Jun 2010 20:42:50 +0000 (22:42 +0200)]
re PR c++/44627 (ICE in dump_expr, at cp/error.c:1735)

PR c++/44627
* error.c (dump_expr): Don't look at CALL_EXPR_ARG (t, 0) if
the CALL_EXPR has no arguments.

* g++.dg/diagnostic/method1.C: New test.

From-SVN: r161227

14 years agom68k.c (m68k_output_addr_const_extra): Add cast to enum type.
Andreas Schwab [Tue, 22 Jun 2010 20:03:52 +0000 (20:03 +0000)]
m68k.c (m68k_output_addr_const_extra): Add cast to enum type.

* config/m68k/m68k.c (m68k_output_addr_const_extra): Add cast to
enum type.
(m68k_sched_attr_opx_type): Remove unreachable return.
(m68k_sched_attr_opy_type): Likewise.
(m68k_sched_attr_size): Likewise.
(sched_get_opxy_mem_type): Likewise.
(m68k_sched_attr_op_mem): Likewise.

From-SVN: r161225

14 years agocgraphunit.c (cgraph_redirect_edge_call_stmt_to_callee): Chain the new statement...
Eric Botcazou [Tue, 22 Jun 2010 18:21:25 +0000 (18:21 +0000)]
cgraphunit.c (cgraph_redirect_edge_call_stmt_to_callee): Chain the new statement and adjust VDEF only if necessary.

* cgraphunit.c (cgraph_redirect_edge_call_stmt_to_callee): Chain the
new statement and adjust VDEF only if necessary.  Remove superfluous
call to maybe_clean_or_replace_eh_stmt.
* gimple.c (gimple_call_copy_skip_args): Use gimple_call_copy_flags to
copy the flags.
* gimple-iterator.c (gsi_replace): Clear BB of old statement here...
* tree-inline.c (copy_bb): ...and not there.

From-SVN: r161221

14 years agodwarf2out.c (is_nested_in_subprogram): New function.
Cary Coutant [Tue, 22 Jun 2010 17:41:05 +0000 (17:41 +0000)]
dwarf2out.c (is_nested_in_subprogram): New function.

gcc/ChangeLog:

* dwarf2out.c (is_nested_in_subprogram): New function.
(should_move_die_to_comdat): Use it.
(copy_ancestor_tree): Don't mark DIEs here.
(copy_decls_walk): Start walk from root of newly-added tree;
mark DIEs here instead.

gcc/testsuite/ChangeLog:

* g++.dg/debug/dwarf2/dwarf4-typedef.C: New test.

From-SVN: r161217

14 years ago[multiple changes]
Arnaud Charlet [Tue, 22 Jun 2010 17:29:41 +0000 (19:29 +0200)]
[multiple changes]

2010-06-22  Robert Dewar  <dewar@adacore.com>

* errout.adb (Finalize): Set Prev pointers.
(Finalize): Delete continuations for deletion by warnings off(str).
* erroutc.ads: Add Prev pointer to error message structure.

2010-06-22  Ed Schonberg  <schonberg@adacore.com>

* sem.adb (Do_Unit_And_Dependents): If the spec of the main unit is a
child unit, examine context of parent units to locate instantiated
generics whose bodies may be needed.
* sem_ch12.adb: (Mark_Context): if the enclosing unit does not have a
with_clause for the instantiated generic, examine the context of its
parents, to set Withed_Body flag, so that it can be visited earlier.
* exp_ch4.adb (Expand_N_Op_Not): If this is a VMS operator applied to
an unsigned type, use a type of the proper size for the intermediate
value, to prevent alignment problems on unchecked conversion.

2010-06-22  Geert Bosch  <bosch@adacore.com>

* s-rannum.ads Change Generator type to be self-referential to allow
Random to update its argument. Use "in" mode for the generator in the
Reset procedures to allow them to be called from the Ada.Numerics
packages without tricks.
* s-rannum.adb: Use the self-referencing argument to get write access
to the internal state of the random generator.
* a-nudira.ads: Make Generator a derived type of
System.Random_Numbers.Generator.
* a-nudira.adb: Remove use of 'Unrestricted_Access.
Put subprograms in alpha order and add headers.
* g-mbdira.ads: Change Generator type to be self-referential.
* g-mbdira.adb: Remove use of 'Unrestricted_Access.

From-SVN: r161215

14 years ago[multiple changes]
Arnaud Charlet [Tue, 22 Jun 2010 17:17:57 +0000 (19:17 +0200)]
[multiple changes]

2010-06-22  Robert Dewar  <dewar@adacore.com>

* freeze.adb: Minor reformatting
Minor code reorganization (use Nkind_In and Ekind_In).

2010-06-22  Bob Duff  <duff@adacore.com>

* gnat1drv.adb (Gnat1drv): Remove the messages that recommend using
-gnatc when a file is compiled that we cannot generate code for, not
helpful and confusing.

2010-06-22  Vincent Celier  <celier@adacore.com>

* switch-m.adb (Normalize_Compiler_Switches): Process correctly
switches -gnatknn.

2010-06-22  Paul Hilfinger  <hilfinger@adacore.com>

* s-rannum.adb: Replace constants with commented symbols.
* s-rannum.ads: Explain significance of the initial value of the data
structure.

2010-06-22  Ed Schonberg  <schonberg@adacore.com>

* a-ngcoty.adb: Clarify comment.

2010-06-22  Gary Dismukes  <dismukes@adacore.com>

* exp_pakd.adb (Expand_Bit_Packed_Element_Set): Return without
expansion for indexing packed arrays with small power-of-2 component
sizes when the target is AAMP.
(Expand_Packed_Element_Reference): Return without expansion for
indexing packed arrays with small power-of-2 component sizes when the
target is AAMP.

2010-06-22  Geert Bosch  <bosch@adacore.com>

* exp_ch4.adb (Expand_N_In): Do not substitute a valid check for X in
Float'Range.

2010-06-22  Robert Dewar  <dewar@adacore.com>

* g-mbdira.adb, g-mbflra.adb, a-nuflra.adb, a-nudira.adb: Minor comment
updates.

From-SVN: r161213

14 years ago[multiple changes]
Arnaud Charlet [Tue, 22 Jun 2010 17:11:54 +0000 (19:11 +0200)]
[multiple changes]

2010-06-22  Doug Rupp  <rupp@adacore.com>

* system-vms.ads, system-vms-zcx.ads: Remove old unused VMS system
packages.
* system-vms_64.ads, system-vms-ia64.ads: Minor reformatting.
(pragma Ident): Add a default ident string in the private part.

2010-06-22  Robert Dewar  <dewar@adacore.com>

* cstand.adb: Minor reformatting.

2010-06-22  Ed Schonberg  <schonberg@adacore.com>

* freeze.adb (Build_And_Analyze_Renamed_Body): For expansion purposes,
recognize the Shift and Rotation intrinsics that are known to the
compiler but have no interface name.

2010-06-22  Geert Bosch  <bosch@adacore.com>

* a-ngcoty.adb ("*"): Rewrite complex multiplication to use proper
scaling in case of overflow or NaN results.

From-SVN: r161210

14 years agoAlso check sseishft1 for unit attribute.
H.J. Lu [Tue, 22 Jun 2010 17:10:29 +0000 (17:10 +0000)]
Also check sseishft1 for unit attribute.

2010-06-22  H.J. Lu  <hongjiu.lu@intel.com>

* config/i386/i386.md (unit): Also check sseishft1.

From-SVN: r161209

14 years agore PR fortran/44616 ([OOP] ICE if CLASS(foo) is used before its definition)
Janus Weil [Tue, 22 Jun 2010 17:07:06 +0000 (19:07 +0200)]
re PR fortran/44616 ([OOP] ICE if CLASS(foo) is used before its definition)

2010-06-22  Janus Weil  <janus@gcc.gnu.org>

PR fortran/44616
* resolve.c (resolve_fl_derived): Avoid checking for abstract on class
containers.

2010-06-22  Janus Weil  <janus@gcc.gnu.org>

PR fortran/44616
* gfortran.dg/abstract_type_8.f03: New.

From-SVN: r161208

14 years ago* gimple.h (gimple_expr_code): Do checking on when gimple checking is enabled.
Jan Hubicka [Tue, 22 Jun 2010 17:06:24 +0000 (19:06 +0200)]
* gimple.h (gimple_expr_code): Do checking on when gimple checking is enabled.

From-SVN: r161207

14 years agocstand.adb: Complete previous change.
Robert Dewar [Tue, 22 Jun 2010 17:04:37 +0000 (17:04 +0000)]
cstand.adb: Complete previous change.

2010-06-22  Robert Dewar  <dewar@adacore.com>

* cstand.adb: Complete previous change.
* g-dirope.ads: Add comment.
* s-stchop.adb, sfn_scan.adb: Minor reformatting.

From-SVN: r161206

14 years ago[multiple changes]
Arnaud Charlet [Tue, 22 Jun 2010 16:57:01 +0000 (18:57 +0200)]
[multiple changes]

2010-06-22  Ed Schonberg  <schonberg@adacore.com>

* cstand.adb: Add tree nodes for pragma Pack on string types.

2010-06-22  Javier Miranda  <miranda@adacore.com>

* einfo.ads, einfo.adb (Last_Formal): New synthesized attribute.
* exp_util.adb (Find_Prim_Op): Use new attribute to locate the last
formal of a primitive.
* exp_disp.adb (Is_Predefined_Dispatching_Operation,
 Is_Predefined_Dispatching_Alias): Use new attribute to locate the last
formal of a primitive.
* exp_cg.adb (Is_Predefined_Dispatching_Operation): Use new attribute
to obtain the last formal of a primitive.

2010-06-22  Geert Bosch  <bosch@adacore.com>

* sysdep.c, init.c, adaint.c, cstreams.c: Remove conditional code
depending on __EMX__ or MSDOS being defined.
* i-cstrea.ads, gnat_rm.texi: Remove mentions of OS/2, DOS and Xenix.
* a-excpol-abort.adb: Update comment indicating users of the file.
* xref_lib.adb, sfn_scan.adb: Remove mention of OS/2, replace NT by
Windows.
* env.c: Remove empty conditional for MSDOS.
* s-stchop.adb, g-dirope.ads, s-fileio.adb, osint.ads: Remove mention
of OS/2 in comment.

From-SVN: r161205

14 years ago[multiple changes]
Arnaud Charlet [Tue, 22 Jun 2010 16:47:55 +0000 (18:47 +0200)]
[multiple changes]

2010-06-22  Robert Dewar  <dewar@adacore.com>

* s-rannum.adb: Minor reformatting.

2010-06-22  Javier Miranda  <miranda@adacore.com>

* sem_aux.adb, sem_aux.ads, sem_util.adb, sem_util.ads, sem_elim.adb,
exp_cg.adb: Minor code reorganization: Move routine Ultimate_Alias from
package Sem_Util to package Sem_Aux.

2010-06-22  Javier Miranda  <miranda@adacore.com>

* exp_disp.adb (Make_Secondary_DT, Make_DT): Minor code cleanup:
remove useless restriction on imported routines when building the
dispatch tables.

2010-06-22  Robert Dewar  <dewar@adacore.com>

* cstand.adb (Create_Standard): Set Has_Pragma_Pack for standard string
types.

2010-06-22  Javier Miranda  <miranda@adacore.com>

* sem_ch4.adb (Collect_Generic_Type_Ops): Protect code that handles
generic subprogram declarations to ensure proper context. Add missing
support for generic actuals.
(Try_Primitive_Operation): Add missing support for concurrent types that
have no Corresponding_Record_Type. Required to diagnose errors compiling
generics or when compiling with no code generation (-gnatc).
* sem_ch9.adb (Analyze_Protected_Type, Analyze_Task_Type): Do not build
the corresponding record type.
* sem_disp.ads, sem_disp.adb (Check_Dispatching_Operation): Complete
documentation. Do minimum decoration when processing a primitive of a
concurrent tagged type that covers interfaces. Required to diagnose
errors in the Object.Operation notation compiling generics or under
-gnatc.
* exp_ch9.ads, exp_ch9.adb (Build_Corresponding_Record): Add missing
propagation of attribute Interface_List to the corresponding record.
(Expand_N_Task_Type_Declaration): Code cleanup.
(Expand_N_Protected_Type_Declaration): Code cleanup.

From-SVN: r161203

14 years ago[multiple changes]
Arnaud Charlet [Tue, 22 Jun 2010 16:35:15 +0000 (18:35 +0200)]
[multiple changes]

2010-06-22  Matthew Heaney  <heaney@adacore.com>

* a-convec.adb, a-coinve.adb: Removed 64-bit types Int and UInt.

2010-06-22  Paul Hilfinger  <hilfinger@adacore.com>

* s-rannum.adb (Random_Float_Template): Replace with unbiased version
that is able to produce all representable floating-point numbers in the
unit interval. Remove template parameter Shift_Right, no longer used.
* gnat_rm.texi: Document the period of the pseudo-random number
generator under the description of its algorithm.
* gcc-interface/Make-lang.in: Update dependencies.

From-SVN: r161202