platform/upstream/gcc.git
14 years agogigi.h (enum standard_datatypes): Add new values ADT_sbitsize_one_node and ADT_sbitsi...
Eric Botcazou [Sat, 17 Apr 2010 08:14:08 +0000 (08:14 +0000)]
gigi.h (enum standard_datatypes): Add new values ADT_sbitsize_one_node and ADT_sbitsize_unit_node.

* gcc-interface/gigi.h (enum standard_datatypes): Add new values
ADT_sbitsize_one_node and ADT_sbitsize_unit_node.
(sbitsize_one_node): New macro.
(sbitsize_unit_node): Likewise.
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Subtype>: Fix
latent bug in the computation of subrange_p.  Fold wider_p predicate.
(cannot_be_superflat_p): Use an explicitly signed 64-bit type to do
the final comparison.
(make_aligning_type): Build real negation and use sizetype throughout
the offset computation.
(maybe_pad_type): Do not issue the warning when the new size expression
is too complex.
(annotate_value) <INTEGER_CST>: Simplify code handling negative values.
* gcc-interface/misc.c (gnat_init): Initialize sbitsize_one_node and
sbitsize_unit_node.
* gcc-interface/trans.c (Attribute_to_gnu) <Attr_Pool_Address>: Fold
double negation.
(gnat_to_gnu) <N_Free_Statement>: Likewise.
* gcc-interface/utils.c (convert): Use sbitsize_unit_node.
* gcc-interface/utils2.c (compare_arrays): Compute real lengths and use
constants in sizetype.  Remove dead code and tweak comments.  Generate
equality instead of inequality comparisons for zero length tests.

From-SVN: r158461

14 years agoFix set but unused variables.
Ramana Radhakrishnan [Sat, 17 Apr 2010 08:06:05 +0000 (08:06 +0000)]
Fix set but unused variables.

2010-04-17  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>

        * config/arm/arm.c (arm_gen_constant): Remove unused variable 'can_shift'.
        (arm_rtx_costs_1): Remove unused variable 'extra_cost'.
        (arm_unwind_emit_set): Use variable 'offset'.
        (thumb1_output_casesi): Remove unused variable 'flags'.

From-SVN: r158460

14 years agoconfigure.ac (*-*-rtems*): Add target-libiberty to $skipdirs.
Ralf Corsepius [Sat, 17 Apr 2010 03:02:28 +0000 (05:02 +0200)]
configure.ac (*-*-rtems*): Add target-libiberty to $skipdirs.

2010-04-17  Ralf Corsépius  <ralf.corsepius@rtems.org>

* configure.ac (*-*-rtems*): Add target-libiberty to $skipdirs.
* configure: Regenerate.

From-SVN: r158459

14 years agoira-color.c (ira_reassign_pseudos): Collect and sort all the pseudos needing assignme...
Jeff Law [Sat, 17 Apr 2010 01:30:35 +0000 (19:30 -0600)]
ira-color.c (ira_reassign_pseudos): Collect and sort all the pseudos needing assignment rather than doing a...

* ira-color.c (ira_reassign_pseudos): Collect and sort all the pseudos
needing assignment rather than doing a two-phase assignment.  Remove
unused variable 'm'.

From-SVN: r158458

14 years agoDaily bump.
GCC Administrator [Sat, 17 Apr 2010 00:17:28 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r158457

14 years agoira-color.c (ira_reassign_pseudos): Collect and sort all the pseudos needing assignme...
Jeff Law [Fri, 16 Apr 2010 23:13:37 +0000 (17:13 -0600)]
ira-color.c (ira_reassign_pseudos): Collect and sort all the pseudos needing assignment rather than doing a...

* ira-color.c (ira_reassign_pseudos): Collect and sort all the pseudos
needing assignment rather than doing a two-phase assignment.

From-SVN: r158453

14 years agoh8300.c (print_operand): Modify case 'V' and case 'W' print operands for HI mode.
Kaushik Phatak [Fri, 16 Apr 2010 22:56:21 +0000 (22:56 +0000)]
h8300.c (print_operand): Modify case 'V' and case 'W' print operands for HI mode.

* config/h8300/h8300.c (print_operand) : Modify case 'V' and
case 'W' print operands for HI mode.
* config/h8300/h8300.h (Y0, Y2) : New constraints.
* config/h8300/h8300.md (bclrqi_msx, bclrhi_msx): New patterns
(bsetqi_msx, bsethi_msx, bnotqi_msx, bnothi_msx): Likewise.
* config/h8300/predicate.md (bit_register_indirect_operand): New.

From-SVN: r158452

14 years agotrans-decl.c (gfc_build_qualified_array): Ensure ubound.N and lbound.N artificial...
Jakub Jelinek [Fri, 16 Apr 2010 21:44:48 +0000 (23:44 +0200)]
trans-decl.c (gfc_build_qualified_array): Ensure ubound.N and lbound.N artificial variable names don't appear in debug info.

* trans-decl.c (gfc_build_qualified_array): Ensure
ubound.N and lbound.N artificial variable names don't appear
in debug info.

From-SVN: r158451

14 years agore PR bootstrap/43767 (Revision 158401 failed to bootstrap)
Jakub Jelinek [Fri, 16 Apr 2010 21:43:36 +0000 (23:43 +0200)]
re PR bootstrap/43767 (Revision 158401 failed to bootstrap)

PR bootstrap/43767
* alias.c (memrefs_conflict_p): Don't crash if CSELIB_VAL_PTR is NULL.

From-SVN: r158450

14 years agotree-ssa-reassoc.c (struct operand_entry): Add new field ID.
Doug Kwan [Fri, 16 Apr 2010 20:31:39 +0000 (20:31 +0000)]
tree-ssa-reassoc.c (struct operand_entry): Add new field ID.

2010-04-16  Doug Kwan  <dougkwan@google.com>

* tree-ssa-reassoc.c (struct operand_entry): Add new field ID.
(next_operand_entry_id): New static variable.
(sort_by_operand_rank): Stabilize qsort comparator by using unique IDs.
(add_to_ops_vec): Assigned unique ID to operand entry.
  (struct oecount_s): New field ID.
(oecount_cmp): Stabilize qsort comparotor by using unique IDs.
(undistribute_ops_list): Assign unique IDs to oecounts.
(init_reassoc): reset next_operand_entry_id.

From-SVN: r158449

14 years agoi386.md (*jcc_bt<mode>): Fix build breakage by adding missing left parenthesis.
Doug Kwan [Fri, 16 Apr 2010 20:10:32 +0000 (20:10 +0000)]
i386.md (*jcc_bt<mode>): Fix build breakage by adding missing left parenthesis.

2010-04-16  Doug Kwan  <dougkwan@google.com>

        * config/i386/i386.md (*jcc_bt<mode>): Fix build breakage by adding
        missing left parenthesis.

From-SVN: r158448

14 years ago* sv.po: Update.
Joseph Myers [Fri, 16 Apr 2010 18:58:56 +0000 (19:58 +0100)]
* sv.po: Update.

From-SVN: r158443

14 years agoh8300.h (OK_FOR_U): Support 'U' constraint for H8300SX.
Kaushik Phatak [Fri, 16 Apr 2010 18:58:03 +0000 (18:58 +0000)]
h8300.h (OK_FOR_U): Support 'U' constraint for H8300SX.

* config/h8300/h8300.h (OK_FOR_U): Support 'U' constraint for H8300SX.

From-SVN: r158442

14 years agoh8300.md (movqi_h8sx, [...]): Emit instructions in #xx:3 and #xx:4 mode.
Kaushik Phatak [Fri, 16 Apr 2010 18:19:50 +0000 (18:19 +0000)]
h8300.md (movqi_h8sx, [...]): Emit instructions in #xx:3 and #xx:4 mode.

* config/h8300/h8300.md (movqi_h8sx, movhi_h8sx, movsi_h8sx,
cmphi_h8300hs_znvc, cmpsi, addhi3_h8sx) : Emit instructions in #xx:3
and #xx:4 mode.

From-SVN: r158439

14 years agoi386.md (*bt<mode>): Macroize insn from *btsi and *btdi_rex64 using SWI48 mode iterator.
Uros Bizjak [Fri, 16 Apr 2010 17:58:12 +0000 (19:58 +0200)]
i386.md (*bt<mode>): Macroize insn from *btsi and *btdi_rex64 using SWI48 mode iterator.

* config/i386/i386.md (*bt<mode>): Macroize insn from *btsi and
*btdi_rex64 using SWI48 mode iterator.
(*jcc_bt<mode>): Ditto from *jcc_btsi and *jcc_btdi_rex64.
(*jcc_bt<mode>_mask): Ditto from *jcc_btsi_mask and
*jcc_btdi_mask_rex64.

From-SVN: r158438

14 years agodouble-int.h (tree_to_double_int): Convert to macro.
Anatoly Sokolov [Fri, 16 Apr 2010 17:31:00 +0000 (21:31 +0400)]
double-int.h (tree_to_double_int): Convert to macro.

* double-int.h (tree_to_double_int): Convert to macro.
* double-int.c (tree_to_double_int): Remove.

From-SVN: r158437

14 years agoh8300.md (inverted load with HImode dest): Add support for H8300SX.
Kaushik Phatak [Fri, 16 Apr 2010 16:39:45 +0000 (16:39 +0000)]
h8300.md (inverted load with HImode dest): Add support for H8300SX.

* config/h8300/h8300.md (inverted load with HImode dest): Add
support for H8300SX.

From-SVN: r158436

14 years ago* crontab: Enable 4.6 snapshots.
Joseph Myers [Fri, 16 Apr 2010 15:55:25 +0000 (16:55 +0100)]
* crontab: Enable 4.6 snapshots.

From-SVN: r158434

14 years agore PR debug/43762 (VLA artificial length var loclist is missing DW_OP_stack_value)
Jakub Jelinek [Fri, 16 Apr 2010 15:34:47 +0000 (17:34 +0200)]
re PR debug/43762 (VLA artificial length var loclist is missing DW_OP_stack_value)

PR debug/43762
* dwarf2out.c (add_bound_info): Always call loc_list_from_tree
with want_address 2 and in case a single element list might be
possible, call it again with want_address 0.

From-SVN: r158430

14 years agopredicate.md (bit_operand): Allow immediate values that satisfy 'U' constraint.
Kaushik Phatak [Fri, 16 Apr 2010 15:24:07 +0000 (09:24 -0600)]
predicate.md (bit_operand): Allow immediate values that satisfy 'U' constraint.

2010-04-12  Kaushik Phatak<kaushik.phatak@kpitcummins.com>

  * config/h8300/predicate.md (bit_operand): Allow immediate values that
  satisfy 'U' constraint.

From-SVN: r158429

14 years agogigi.h (gnat_init_decl_processing): Delete.
Eric Botcazou [Fri, 16 Apr 2010 15:04:26 +0000 (15:04 +0000)]
gigi.h (gnat_init_decl_processing): Delete.

* gcc-interface/gigi.h (gnat_init_decl_processing): Delete.
* gcc-interface/decl.c (gnat_to_gnu_entity): Constify a few variables.
<object>: Do not create the fake PARM_DECL if no debug info is needed.
Do not create the corresponding VAR_DECL of a CONST_DECL for debugging
purposes if no debug info is needed.
Fix formatting.  Reorder and add comments.
* gcc-interface/trans.c (gnat_to_gnu) <N_Attribute_Reference>: Constify
variable and remove obsolete comment.
* gcc-interface/utils.c (convert_vms_descriptor64): Tweak comment.
(convert_vms_descriptor32): Likewise.
(convert): Remove dead code.
<UNCONSTRAINED_ARRAY_REF>: Pass the field instead of its name to build
the reference to the P_ARRAY pointer.
<POINTER_TYPE>: Likewise.
(maybe_unconstrained_array) <UNCONSTRAINED_ARRAY_TYPE>: Likewise.
(gnat_init_decl_processing): Delete, move contents to...
* gcc-interface/misc.c (gnat_init): ...here.

From-SVN: r158428

14 years agobe.po, [...]: Update.
Joseph Myers [Fri, 16 Apr 2010 14:55:56 +0000 (15:55 +0100)]
be.po, [...]: Update.

* be.po, ca.po, da.po, de.po, el.po, es.po, fr.po, id.po, ja.po,
nl.po, sv.po, tr.po, uk,po, vi.po, zh_CN.po, zh_TW.po: Update.

From-SVN: r158426

14 years agobe.po, [...]: Update.
Joseph Myers [Fri, 16 Apr 2010 14:52:16 +0000 (15:52 +0100)]
be.po, [...]: Update.

* be.po, da.po, de.po, el.po, es.po, fi.po, fr.po, id.po, ja.po,
nl.po, ru.po, sr.po, sv.po, tr.po, zh_CN.po, zh_TW.po: Update.

From-SVN: r158424

14 years agoconfigure.ac: Check for elf_getshdrstrndx or elf_getshstrndx separately.
Rainer Orth [Fri, 16 Apr 2010 13:45:25 +0000 (13:45 +0000)]
configure.ac: Check for elf_getshdrstrndx or elf_getshstrndx separately.

toplevel:
* configure.ac: Check for elf_getshdrstrndx or elf_getshstrndx
separately.
* configure: Regenerate.

gcc:
* configure.ac: Check for elf_getshdrstrndx or elf_getshstrndx
flavor.
* configure: Regenerate.
* config.in: Regenerate.
* doc/install.texi (Prerequisites): Document that Solaris 2 libelf
works.

gcc/lto:
* lto-elf.c [!HAVE_ELF_GETSHDRSTRNDX] (elf_getshdrstrndx): New
function.

From-SVN: r158423

14 years agotree.h (struct tree_decl_minimal): Move pt_uid ...
Richard Guenther [Fri, 16 Apr 2010 13:33:31 +0000 (13:33 +0000)]
tree.h (struct tree_decl_minimal): Move pt_uid ...

2010-04-16  Richard Guenther  <rguenther@suse.de>

* tree.h (struct tree_decl_minimal): Move pt_uid ...
(struct tree_decl_common): ... here.
(DECL_PT_UID): Adjust.
(SET_DECL_PT_UID): Likewise.
(DECL_PT_UID_SET_P): Likewise.

From-SVN: r158421

14 years agore PR tree-optimization/43572 (FAIL: gfortran.dg/PR19872.f execution test; formatted...
Richard Guenther [Fri, 16 Apr 2010 13:21:38 +0000 (13:21 +0000)]
re PR tree-optimization/43572 (FAIL: gfortran.dg/PR19872.f execution test; formatted read - wrong numbers)

2010-04-16  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/43572
* tree-ssa-alias.h (call_may_clobber_ref_p): Declare.
* tree-ssa-alias.c (call_may_clobber_ref_p): Export.
* tree-flow.h (is_call_clobbered): Remove.
* tree-flow-inline.h (is_call_clobbered): Likewise.
* tree-dfa.c (dump_variable): Do not dump call clobber state.
* tree-nrv.c (dest_safe_for_nrv_p): Use the alias oracle.
(execute_return_slot_opt): Adjust.
* tree-tailcall.c (suitable_for_tail_opt_p): Remove
check for call clobbered vars here.
(find_tail_calls): Move tailcall verification to the
proper place.

* gcc.dg/tree-ssa/tailcall-5.c: New testcase.

From-SVN: r158418

14 years agoFixed ChangeLog entry.
Diego Novillo [Fri, 16 Apr 2010 12:38:22 +0000 (08:38 -0400)]
Fixed ChangeLog entry.

From-SVN: r158416

14 years agotypo fix
Diego Novillo [Fri, 16 Apr 2010 12:38:14 +0000 (08:38 -0400)]
typo fix

From-SVN: r158415

14 years agorephrase text
Diego Novillo [Fri, 16 Apr 2010 12:38:04 +0000 (08:38 -0400)]
rephrase text

From-SVN: r158414

14 years agoClarify what happens with an unrecognized -Wno- option
Diego Novillo [Fri, 16 Apr 2010 12:37:55 +0000 (08:37 -0400)]
Clarify what happens with an unrecognized -Wno- option

From-SVN: r158413

14 years agotrans.c (unchecked_conversion_nop): Handle function calls.
Eric Botcazou [Fri, 16 Apr 2010 12:23:39 +0000 (12:23 +0000)]
trans.c (unchecked_conversion_nop): Handle function calls.

* gcc-interface/trans.c (unchecked_conversion_nop): Handle function
calls.  Return true for conversion from a record subtype to its type.

From-SVN: r158412

14 years agodecl.c (gnat_to_gnu_entity): Use boolean_type_node in lieu of integer_type_node for...
Eric Botcazou [Fri, 16 Apr 2010 12:07:02 +0000 (12:07 +0000)]
decl.c (gnat_to_gnu_entity): Use boolean_type_node in lieu of integer_type_node for boolean operations.

* gcc-interface/decl.c (gnat_to_gnu_entity): Use boolean_type_node in
lieu of integer_type_node for boolean operations.
(choices_to_gnu): Likewise.
* gcc-interface/trans.c (Attribute_to_gnu): Likewise.
(Loop_Statement_to_gnu): Likewise.
(establish_gnat_vms_condition_handler): Likewise.
(Exception_Handler_to_gnu_sjlj): Likewise.
(gnat_to_gnu): Likewise.
(build_unary_op_trapv): Likewise.
(build_binary_op_trapv): Likewise.
(emit_range_check): Likewise.
(emit_index_check): Likewise.
(convert_with_check): Likewise.
* gcc-interface/utils.c (convert_vms_descriptor64): Likewise.
(convert_vms_descriptor32): Likewise.
(convert_vms_descriptor): Likewise.
* gcc-interface/utils2.c (nonbinary_modular_operation): Likewise.
(compare_arrays): Use boolean instead of integer constants.
(build_binary_op) <TRUTH_ANDIF_EXPR, TRUTH_ORIF_EXPR, TRUTH_AND_EXPR,
TRUTH_OR_EXPR, TRUTH_XOR_EXPR>: New case.  Check that the result type
is a boolean type.
<GE_EXPR, LE_EXPR, GT_EXPR, LT_EXPR>: Remove obsolete assertion.
<EQ_EXPR, NE_EXPR>: Check that the result type is a boolean type.
<PREINC/PREDECREMENT_EXPR, POSTINC/POSTDECREMENT_EXPR>: Delete.
<TRUTH_NOT_EXPR>: Check that the result type is a boolean type.
(build_unary_op): Use boolean_type_node in lieu of integer_type_node
for boolean operations.
(fill_vms_descriptor): Likewise.  Fix formatting nits.

From-SVN: r158411

14 years agoada-tree.def (LOOP_STMT): Change to 4-operand nodes.
Eric Botcazou [Fri, 16 Apr 2010 11:54:51 +0000 (11:54 +0000)]
ada-tree.def (LOOP_STMT): Change to 4-operand nodes.

* gcc-interface/ada-tree.def (LOOP_STMT): Change to 4-operand nodes.
* gcc-interface/ada-tree.h (LOOP_STMT_TOP_COND, LOOP_STMT_BOT_COND):
Merge into...
(LOOP_STMT_COND): ...this.
(LOOP_STMT_BOTTOM_COND_P): New flag.
(LOOP_STMT_TOP_UPDATE_P): Likewise.
* gcc-interface/trans.c (can_equal_min_or_max_val_p): New function.
(can_equal_min_val_p): New static inline function.
(can_equal_max_val_p): Likewise.
(Loop_Statement_to_gnu): Use build4 in lieu of build5 and adjust to
new LOOP_STMT semantics.  Use two different strategies depending on
whether optimization is enabled to translate the loop.
(gnat_gimplify_stmt) <LOOP_STMT>: Adjust to new LOOP_STMT semantics.

From-SVN: r158410

14 years agouintp.adb (UI_From_Dint): Remove useless code.
Eric Botcazou [Fri, 16 Apr 2010 10:16:52 +0000 (10:16 +0000)]
uintp.adb (UI_From_Dint): Remove useless code.

* uintp.adb (UI_From_Dint): Remove useless code.
(UI_From_Int): Likewise.
* uintp.h: Reorder declarations.
(UI_From_gnu): Declare.
(UI_Base): Likewise.
(Vector_Template): Likewise.
(Vector_To_Uint): Likewise.
(Uint_0): Remove.
(Uint_1): Likewise.
* gcc-interface/gigi.h: Tweak comments.
* gcc-interface/cuintp.c (UI_From_gnu): New global function.
* gcc-interface/decl.c (maybe_pad_type): Do not warn if either size
overflows.
(annotate_value) <INTEGER_CST>: Call UI_From_gnu.
* gcc-interface/trans.c (post_error_ne_num): Call post_error_ne.
(post_error_ne_tree): Call UI_From_gnu and post_error_ne.
* gcc-interface/utils.c (max_size) <tcc_binary>: Do not special-case
TYPE_MAX_VALUE.

From-SVN: r158408

14 years agore PR target/40603 (unnecessary conversion from unsigned byte load to signed byte...
Bernd Schmidt [Fri, 16 Apr 2010 10:04:15 +0000 (10:04 +0000)]
re PR target/40603 (unnecessary conversion from unsigned byte load to signed byte load)

PR target/40603
* config/arm/arm.md (cbranchqi4): New pattern.
* config/arm/predicates.md (const0_operand,
cbranchqi4_comparison_operator): New predicates.

PR target/40603
* gcc.target/arm/thumb-cbranchqi.c: New test.

From-SVN: r158407

14 years agogimple-pretty-print.c (dump_gimple_phi): Dump alias info.
Richard Guenther [Fri, 16 Apr 2010 09:49:20 +0000 (09:49 +0000)]
gimple-pretty-print.c (dump_gimple_phi): Dump alias info.

2010-04-16  Richard Guenther  <rguenther@suse.de>

* gimple-pretty-print.c (dump_gimple_phi): Dump alias info.
(dump_gimple_stmt): Likewise.

From-SVN: r158406

14 years agoarm.md (addsi3_cbranch): If destination is a high register...
Bernd Schmidt [Fri, 16 Apr 2010 09:47:17 +0000 (09:47 +0000)]
arm.md (addsi3_cbranch): If destination is a high register...

* config/arm/arm.md (addsi3_cbranch): If destination is a high
register, inputs must be low registers and we need a low register
scratch.  Handle alternative 2 like alternative 3.

From-SVN: r158405

14 years agore PR target/41514 (redundant compare instruction of consecutive conditional branches)
Bernd Schmidt [Fri, 16 Apr 2010 09:42:32 +0000 (09:42 +0000)]
re PR target/41514 (redundant compare instruction of consecutive conditional branches)

PR target/41514
* config/arm/arm.md (cbranchsi4_insn): Renamed from "*cbranchsi4_insn".
If the previous insn is a cbranchsi4_insn with the same arguments,
omit the compare instruction.

PR target/41514
gcc.target/arm/thumb-comparisons.c: New test.

From-SVN: r158404

14 years agorecog.h (struct recog_data): New field is_operator.
Bernd Schmidt [Fri, 16 Apr 2010 09:32:21 +0000 (09:32 +0000)]
recog.h (struct recog_data): New field is_operator.

* recog.h (struct recog_data): New field is_operator.
(struct insn_operand_data): New field is_operator.
* recog.c (extract_insn): Set recog_data.is_operator.
* genoutput.c (output_operand_data): Emit code to set the
is_operator field.
* reload.c (find_reloads): Use it rather than testing for an
empty constraint string.

From-SVN: r158403

14 years agoalias.c (memrefs_conflict_p): If x and y are the same VALUE, don't call get_addr...
Jakub Jelinek [Fri, 16 Apr 2010 09:26:43 +0000 (11:26 +0200)]
alias.c (memrefs_conflict_p): If x and y are the same VALUE, don't call get_addr on both.

* alias.c (memrefs_conflict_p): If x and y are the same VALUE,
don't call get_addr on both.  If one expression is a VALUE and
the other a REG, check VALUE's locs if the REG isn't among them.

From-SVN: r158401

14 years ago* MAINTAINERS (Write After Approval): Add myself.
Kevin Williams [Fri, 16 Apr 2010 09:15:59 +0000 (11:15 +0200)]
* MAINTAINERS (Write After Approval): Add myself.

From-SVN: r158400

14 years agoadd accumulate-outgoing-args and omit-frame-pointer for SH
Christian Bruel [Fri, 16 Apr 2010 08:04:05 +0000 (10:04 +0200)]
add accumulate-outgoing-args and omit-frame-pointer for SH

From-SVN: r158399

14 years agodecl.c (make_type_from_size): Just copy TYPE_NAME.
Eric Botcazou [Fri, 16 Apr 2010 06:58:43 +0000 (06:58 +0000)]
decl.c (make_type_from_size): Just copy TYPE_NAME.

* gcc-interface/decl.c (make_type_from_size) <INTEGER_TYPE>: Just copy
TYPE_NAME.
* gcc-interface/trans.c (smaller_packable_type_p): Rename into...
(smaller_form_type_p): ...this.  Change parameter and variable names.
(call_to_gnu): Use the nominal type of the parameter to create the
temporary if it's a smaller form of the actual type.
(addressable_p): Return false if the actual type is integral and its
size is greater than that of the expected type.

From-SVN: r158398

14 years agoDaily bump.
GCC Administrator [Fri, 16 Apr 2010 00:17:47 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r158397

14 years agore PR target/43741 (sh-elf ICEs for libstdc++-v3/src/ios_init.cc with -m2a)
Kaz Kojima [Thu, 15 Apr 2010 21:51:14 +0000 (21:51 +0000)]
re PR target/43741 (sh-elf ICEs for libstdc++-v3/src/ios_init.cc with -m2a)

PR target/43471
* config/sh/sh.c (sh_legitimize_reload_address): Use
MAYBE_BASE_REGISTER_RTX_P instead of BASE_REGISTER_RTX_P.
Remove a unneeded check for offset_base.

From-SVN: r158393

14 years agore PR fortran/30073 (Array out of bounds gives name of RHS array not LHS array)
Steven G. Kargl [Thu, 15 Apr 2010 21:32:21 +0000 (21:32 +0000)]
re PR fortran/30073 (Array out of bounds gives name of RHS array not LHS array)

    PR fortran/30073
    * trans-array.c (gfc_trans_array_bound_check): Eliminate a redundant
    block of code.  Set name to the variable associated with the descriptor.

From-SVN: r158392

14 years agocuintp.c (UI_To_gnu): Fix long line.
Eric Botcazou [Thu, 15 Apr 2010 21:15:47 +0000 (21:15 +0000)]
cuintp.c (UI_To_gnu): Fix long line.

* gcc-interface/cuintp.c (UI_To_gnu): Fix long line.
* gcc-interface/gigi.h (MARK_VISITED): Skip objects of constant class.
(process_attributes): Delete.
(post_error_ne_num): Change parameter name.
* gcc-interface/decl.c (gnat_to_gnu_entity): Do not force debug info
with -g3.  Remove a couple of obsolete lines.  Minor tweaks.
If type annotating mode, operate on trees to compute the adjustment to
the sizes of tagged types.  Fix long line.
(cannot_be_superflat_p): Tweak head comment.
(annotate_value): Fold local constant.
(set_rm_size): Fix long line.
* gcc-interface/trans.c (Identifier_to_gnu): Rework comments.
(Attribute_to_gnu): Fix long line.
<Attr_Size>: Remove useless assertion.
Reorder statements.  Use size_binop routine.
(Loop_Statement_to_gnu): Use build5 in lieu of build_nt.
Create local variables for the label and the test.  Tweak comments.
(Subprogram_Body_to_gnu): Reset cfun to NULL.
(Compilation_Unit_to_gnu): Use the Sloc of the Unit node.
(process_inlined_subprograms): Integrate into...
(Compilation_Unit_to_gnu): ...this.
(gnat_to_gnu): Fix long line.
(post_error_ne_num): Change parameter name.
* gcc-interface/utils.c (process_attributes): Static-ify.
<ATTR_MACHINE_ATTRIBUTE>: Set input_location before proceeding.
(create_type_decl): Add comment.
(create_var_decl_1): Process the attributes after adding the VAR_DECL
to the current binding level.
(create_subprog_decl): Likewise for the FUNCTION_DECL.
(end_subprog_body): Do not reset cfun to NULL.
(build_vms_descriptor32): Fix long line.
(build_vms_descriptor): Likewise.
(handle_nonnull_attribute): Likewise.
(convert_vms_descriptor64): Likewise.
* gcc-interface/utils2.c (fill_vms_descriptor): Fix long line.
(gnat_protect_expr): Fix thinko.

From-SVN: r158390

14 years agotrans.c (gigi): Set DECL_IGNORED_P on EH functions.
Eric Botcazou [Thu, 15 Apr 2010 20:21:08 +0000 (20:21 +0000)]
trans.c (gigi): Set DECL_IGNORED_P on EH functions.

* gcc-interface/trans.c (gigi): Set DECL_IGNORED_P on EH functions.
(gnat_to_gnu) <N_Op_Eq>: Restore the value of input_location
before translating the top-level node.
(lvalue_required_p) <N_Function_Call>: Return 1 if !constant.
<N_Object_Declaration>: Likewise.
<N_Assignment_Statement>: Likewise.
<N_Unchecked_Type_Conversion>: Likewise.
(call_to_gnu): Remove kludge.
(gnat_to_gnu) <N_Return_Statement>: When not optimizing, force labels
associated with user returns to be preserved.
(gnat_to_gnu): Add special code to deal with boolean rvalues.
* gcc-interface/utils2.c (compare_arrays): Set input_location on all
comparisons.
(build_unary_op) <ADDR_EXPR>: Call build_fold_addr_expr.
<INDIRECT_REF>: Call build_fold_indirect_ref.

From-SVN: r158388

14 years agoRegenerate gcc/configure.
H.J. Lu [Thu, 15 Apr 2010 19:00:27 +0000 (19:00 +0000)]
Regenerate gcc/configure.

2010-04-15  H.J. Lu  <hongjiu.lu@intel.com>

* configure: Regenerated.

From-SVN: r158386

14 years agos390.c (s390_call_save_register_used): Switch back to HARD_REGNO_NREGS.
Andreas Krebbel [Thu, 15 Apr 2010 16:30:32 +0000 (16:30 +0000)]
s390.c (s390_call_save_register_used): Switch back to HARD_REGNO_NREGS.

2010-04-15  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

* config/s390/s390.c (s390_call_save_register_used): Switch back
to HARD_REGNO_NREGS.

From-SVN: r158384

14 years agog-socket.adb: A target can have multiple missing errno's.
Joel Sherrill [Thu, 15 Apr 2010 15:39:47 +0000 (15:39 +0000)]
g-socket.adb: A target can have multiple missing errno's.

2010-04-15  Joel Sherrill <joel.sherrill@oarcorp.com>

* g-socket.adb: A target can have multiple missing errno's.  This
will result in multiple errno's being defined as -1.  Because of this
we can not use a case but must use a series of if's to avoid
a duplicate case error in GNAT.Sockets.Resolve_Error.

From-SVN: r158382

14 years agogsocket.h: Run-time can no longer be built without network OS headers available.
Joel Sherrill [Thu, 15 Apr 2010 15:35:27 +0000 (15:35 +0000)]
gsocket.h: Run-time can no longer be built without network OS headers available.

2010-04-13  Joel Sherrill <joel.sherrill@oarcorp.com>

* gsocket.h: Run-time can no longer be built without network
OS headers available.  Changing RTEMS GNAT build procedure to
reflect this and letting run-time build use network .h files.

From-SVN: r158381

14 years agoalias.c (alias_set_subset_of): Handle alias-set zero child properly.
Richard Guenther [Thu, 15 Apr 2010 15:30:17 +0000 (15:30 +0000)]
alias.c (alias_set_subset_of): Handle alias-set zero child properly.

2010-04-15  Richard Guenther  <rguenther@suse.de>

* alias.c (alias_set_subset_of): Handle alias-set zero
child properly.

From-SVN: r158380

14 years agothumb2.md (thumb2_movsi_insn): Split ldr and str alternatives according to use of...
Mark Shinwell [Thu, 15 Apr 2010 14:39:22 +0000 (14:39 +0000)]
thumb2.md (thumb2_movsi_insn): Split ldr and str alternatives according to use of high and low regs.

gcc/
* config/arm/thumb2.md (thumb2_movsi_insn): Split ldr and str
alternatives according to use of high and low regs.
* config/arm/vfp.md (thumb2_movsi_vfp): Likewise.
* config/arm/arm.h (CONDITIONAL_REGISTER_USAGE): Use high regs when
optimizing for size on Thumb-2.

Co-Authored-By: Julian Brown <julian@codesourcery.com>
From-SVN: r158378

14 years agoconfig.gcc: Handle softfp as for Linux.
Thomas Schwinge [Thu, 15 Apr 2010 13:29:07 +0000 (15:29 +0200)]
config.gcc: Handle softfp as for Linux.

2010-04-15 Thomas Schwinge <tschwinge@gnu.org>

gcc/
* config.gcc <i[34567]86-*-gnu*>: Handle softfp as for Linux.

libgcc/
* config.host <i[34567]86-*-gnu*>: Handle softfp as for Linux.

From-SVN: r158375

14 years agotree-ssa-structalias.c (struct variable_info): Add is_fn_info flag.
Richard Guenther [Thu, 15 Apr 2010 13:16:44 +0000 (13:16 +0000)]
tree-ssa-structalias.c (struct variable_info): Add is_fn_info flag.

2010-04-15  Richard Guenther  <rguenther@suse.de>

* tree-ssa-structalias.c (struct variable_info): Add
is_fn_info flag.
(new_var_info): Initialize it.
(dump_constraints): Support printing last added constraints.
(debug_constraints): Adjust.
(dump_constraint_graph): Likewise.
(make_heapvar_for): Check for NULL cfun.
(get_function_part_constraint): New function.
(get_fi_for_callee): Likewise.
(find_func_aliases): Properly implement IPA PTA constraints.
(process_ipa_clobber): New function.
(find_func_clobbers): Likewise.
(insert_into_field_list_sorted): Remove.
(create_function_info_for): Properly allocate vars for IPA mode.
Do not use insert_into_field_list_sorted.
(create_variable_info_for): Properly generate constraints for
global vars in IPA mode.
(dump_solution_for_var): Always dump the solution.
(set_uids_in_ptset): Initialize DECL_PT_UID if in ipa-mode.
(find_what_var_points_to): Adjust.
(pt_solution_set): Change.
(pt_solution_ior_into): New function.
(pt_solution_empty_p): Export.
(pt_solution_includes_global): Adjust.
(pt_solution_includes_1): Likewise.
(pt_solutions_intersect_1): Likewise.
(dump_sa_points_to_info): Check some invariants.
(solve_constraints): Move constraint dumping ...
(compute_points_to_sets): ... here.
(ipa_pta_execute): ... and here.
(compute_may_aliases): Do not re-compute points-to info
locally if IPA info is available.
(ipa_escaped_pt): New global var.
(ipa_pta_execute): Properly implement IPA PTA.
* tree-into-ssa.c (dump_decl_set): Support dumping
decls not in referenced-vars.
* tree-flow.h (struct gimple_df): Add ipa_pta flag.
* tree-ssa-alias.c (ptr_deref_may_alias_decl_p): Adjust.
(dump_points_to_solution): Likewise.
* tree-dfa.c (dump_variable): Also dump DECL_PT_UID.
* tree-inline.c (remap_ssa_name): Copy IPA points-to solution.
(remap_gimple_stmt): Reset call clobber/use information if
necessary.
(copy_decl_to_var): Copy DECL_PT_UID.
(copy_result_decl_to_var): Likewise.
* tree.c (make_node_stat): Initialize DECL_PT_UID.
(copy_node_stat): Copy it.
* tree.h (DECL_PT_UID): New macro.
(SET_DECL_PT_UID): Likewise.
(DECL_PT_UID_SET_P): Likewise.
(struct tree_decl_minimal): Add pt_uid member.
* tree-ssa-alias.h (struct pt_solution): Add ipa_escaped flag.
(pt_solution_empty_p): Declare.
(pt_solution_set): Adjust.
(ipa_escaped_pt): Declare.
* cfgexpand.c (update_alias_info_with_stack_vars): Adjust.
* gimple-pretty-print.c (pp_points_to_solution): New function.
(dump_gimple_call): Dump call clobber/use information.
* tree-dump.c (dump_option_value_in): Add TDF_ALIAS entry.
* tree-pass.h (TDF_ALIAS): New dump option.
* tree-pretty-print.c (dump_decl_name): Dump DECL_PT_UID if asked to.
* doc/invoke.texi (-fipa-pta): Update documentation.

* gcc.dg/ipa/ipa-pta-1.c: New testcase.
* gcc.dg/ipa/ipa-pta-2.c: Likewise.
* gcc.dg/ipa/ipa-pta-3.c: Likewise.
* gcc.dg/ipa/ipa-pta-4.c: Likewise.
* gcc.dg/ipa/ipa-pta-5.c: Likewise.
* gcc.dg/ipa/ipa-pta-6.c: Likewise.
* gcc.dg/ipa/ipa-pta-7.c: Likewise.
* gcc.dg/ipa/ipa-pta-8.c: Likewise.
* gcc.dg/ipa/ipa-pta-9.c: Likewise.
* gcc.dg/ipa/ipa-pta-10.c: Likewise.
* gcc.dg/ipa/ipa-pta-11.c: Likewise.
* gcc.dg/ipa/ipa-pta-12.c: Likewise.
* gcc.dg/ipa/ipa-pta-13.c: Likewise.
* gcc.dg/torture/ipa-pta-2.c: Likewise.
* gcc.dg/torture/ipa-pta-1.c: Adjust.

From-SVN: r158374

14 years agoMakefile.in (OBJS-common): Add gimple-fold.o.
Richard Guenther [Thu, 15 Apr 2010 12:58:05 +0000 (12:58 +0000)]
Makefile.in (OBJS-common): Add gimple-fold.o.

2010-04-15  Richard Guenther  <rguenther@suse.de>

* Makefile.in (OBJS-common): Add gimple-fold.o.
(gimple-fold.o): New rule.
* tree.h (maybe_fold_offset_to_reference,
maybe_fold_offset_to_address, maybe_fold_stmt_addition): Move
prototypes ...
* gimple.h: ... here.
* tree-flow.h (fold_stmt, fold_stmt_inplace, get_symbol_constant_value,
may_propagate_address_into_dereference): Move prototypes ...
* gimple.h: ... here.
* tree-ssa-ccp.c (get_symbol_constant_value,
may_propagate_address_into_dereference, maybe_fold_offset_to_array_ref,
maybe_fold_offset_to_component_ref, maybe_fold_offset_to_reference,
maybe_fold_offset_to_address, maybe_fold_stmt_indirect,
maybe_fold_stmt_addition, maybe_fold_reference, get_maxval_strlen,
ccp_fold_builtin, fold_gimple_assign, fold_gimple_cond,
fold_gimple_call, fold_stmt_1, fold_stmt, fold_stmt_inplace,
gimplify_and_update_call_from_tree): Move ...
* gimple-fold.c: ... here.  New file.
(ccp_fold_builtin): Rename to ...
(gimple_fold_builtin): ... this.
* tree-ssa-ccp.c (execute_fold_all_builtins): Adjust.

From-SVN: r158373

14 years agofold-const.c (LOWPART, [...]): Move ...
Richard Guenther [Thu, 15 Apr 2010 12:45:58 +0000 (12:45 +0000)]
fold-const.c (LOWPART, [...]): Move ...

2010-04-15  Richard Guenther  <rguenther@suse.de>

* fold-const.c (LOWPART, HIGHPART, BASE, encode, decode,
fit_double_type, force_fit_type_double, add_double_with_sign,
neg_double, mul_double_with_sign, lshift_double, rshift_double,
lrotate_double, rrotate_double, div_and_round_double): Move ...
* double-int.c: ... here.
* tree.h (force_fit_type_double, fit_double_type, add_double_with_sign,
add_double, neg_double, mul_double_with_sign, mul_double,
lshift_double, rshift_double, lrotate_double, rrotate_double,
div_and_round_double): Move prototypes ...
* double-int.h: ... here.

From-SVN: r158372

14 years agotrans.c (call_to_gnu): Open a nesting level if this is a statement.
Eric Botcazou [Thu, 15 Apr 2010 12:40:15 +0000 (12:40 +0000)]
trans.c (call_to_gnu): Open a nesting level if this is a statement.

* gcc-interface/trans.c (call_to_gnu): Open a nesting level if this is
a statement.  Otherwise, if at top-level, push the processing of the
elaboration routine.  In the misaligned case, issue the error messages
again on entry and create the temporary explicitly.  Do not issue them
for CONSTRUCTORs.
For a function call, emit the range check if necessary.
In the copy-in copy-out case, create the temporary for the return
value explicitly.
Do not unnecessarily convert by-ref parameters to the formal's type.
Remove obsolete guards in conditions.
(gnat_to_gnu) <N_Assignment_Statement>: For a function call, pass the
target to call_to_gnu in all cases.
(gnat_gimplify_expr) <ADDR_EXPR>: Remove handling of SAVE_EXPR.
(addressable_p) <CONSTRUCTOR>: Return false if not static.
<COMPOUND_EXPR>: New case.
* gcc-interface/utils2.c (build_unary_op) <ADDR_EXPR>: Fold a compound
expression if it has unconstrained array type.
(gnat_mark_addressable) <COMPOUND_EXPR>: New case.
(gnat_stabilize_reference) <COMPOUND_EXPR>: Stabilize operands on an
individual basis.

From-SVN: r158371

14 years agotrans.c (gigi): Do not start statement group.
Eric Botcazou [Thu, 15 Apr 2010 10:38:36 +0000 (10:38 +0000)]
trans.c (gigi): Do not start statement group.

* gcc-interface/trans.c (gigi): Do not start statement group.
(Compilation_Unit_to_gnu): Set current_function_decl to NULL.
Start statement group and push binding level here...
(gnat_to_gnu) <N_Compilation_Unit>: ...and not here.
Do not push fake contexts at top level.  Remove redundant code.
(call_to_gnu): Rename a local variable and constify another.
* gcc-interface/utils.c (gnat_pushlevel): Fix formatting nits.
(set_current_block_context): Set it as the group's block.
(gnat_init_decl_processing): Delete unrelated init code.
(end_subprog_body): Use NULL_TREE.

From-SVN: r158370

14 years agotrans.c (call_to_gnu): Do not unnecessarily force side-effects of actual parameters...
Eric Botcazou [Thu, 15 Apr 2010 10:17:54 +0000 (10:17 +0000)]
trans.c (call_to_gnu): Do not unnecessarily force side-effects of actual parameters before the call.

* gcc-interface/trans.c (call_to_gnu): Do not unnecessarily force
side-effects of actual parameters before the call.

From-SVN: r158369

14 years agodecl.c (validate_size): Reorder, remove obsolete test and warning.
Eric Botcazou [Thu, 15 Apr 2010 10:10:03 +0000 (10:10 +0000)]
decl.c (validate_size): Reorder, remove obsolete test and warning.

* gcc-interface/decl.c (validate_size): Reorder, remove obsolete test
and warning.
(set_rm_size): Reorder and remove obsolete test.

From-SVN: r158368

14 years agore PR target/43742 (web.c/union_match_dups segfaults for a null *ref on sh-elf)
Bernd Schmidt [Thu, 15 Apr 2010 08:57:27 +0000 (08:57 +0000)]
re PR target/43742 (web.c/union_match_dups segfaults for a null *ref on sh-elf)

PR target/43742
* config/sh/sh.md (doloop_end_split, dect): Undo previous patch.  Use
matching constraints to ensure inputs match the output.

From-SVN: r158367

14 years agotrans-decl.c (gfc_build_qualified_array): Clear DECL_IGNORED_P on VAR_DECL LBOUND...
Jakub Jelinek [Thu, 15 Apr 2010 08:53:41 +0000 (10:53 +0200)]
trans-decl.c (gfc_build_qualified_array): Clear DECL_IGNORED_P on VAR_DECL LBOUND and/or UBOUND, even for -O1.

* trans-decl.c (gfc_build_qualified_array): Clear DECL_IGNORED_P
on VAR_DECL LBOUND and/or UBOUND, even for -O1.

From-SVN: r158366

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

From-SVN: r158365

14 years agore PR target/43742 (web.c/union_match_dups segfaults for a null *ref on sh-elf)
Kaz Kojima [Wed, 14 Apr 2010 23:58:10 +0000 (23:58 +0000)]
re PR target/43742 (web.c/union_match_dups segfaults for a null *ref on sh-elf)

PR target/43742
* config/sh/sh.md (doloop_end_split): Remove "+r" constraint
in an input-only operand.

From-SVN: r158361

14 years agodouble-int.h (HOST_BITS_PER_DOUBLE_INT): Define.
Anatoly Sokolov [Wed, 14 Apr 2010 22:05:32 +0000 (02:05 +0400)]
double-int.h (HOST_BITS_PER_DOUBLE_INT): Define.

* double-int.h (HOST_BITS_PER_DOUBLE_INT): Define.
(double_int_not, double_int_lshift, double_int_rshift): Declare.
(double_int_negative_p): Convert to static inline function.
* double-int.c (double_int_lshift, double_int_lshift): Add new function.
(double_int_negative_p): Remove.
* tree.h (lshift_double, rshift_double):
* tree.c (build_low_bits_mask): Clean up, use double_int_* functions.
* fold-const.c (fold_convert_const_int_from_real,
fold_convert_const_int_from_fixed, div_if_zero_remainder): (Ditto.).
(lshift_double): Change type of arith argument to bool.
(rshift_double): Change type of arith argument to bool. Correct
comment.
* expmed.c (mask_rtx, lshift_value): (Ditto.).

From-SVN: r158360

14 years ago* filenames.h (HAS_DRIVE_SPEC, STRIP_DRIVE_SPEC): New macros.
Doug Evans [Wed, 14 Apr 2010 21:16:34 +0000 (21:16 +0000)]
* filenames.h (HAS_DRIVE_SPEC, STRIP_DRIVE_SPEC): New macros.

From-SVN: r158359

14 years agore PR rtl-optimization/21803 ([ia64] gcc produces really odd predicated code)
Bernd Schmidt [Wed, 14 Apr 2010 20:42:02 +0000 (20:42 +0000)]
re PR rtl-optimization/21803 ([ia64] gcc produces really odd predicated code)

gcc/
PR target/21803
* ifcvt.c (cond_exec_process_if_block): Look for identical sequences
at the start and end of the then/else blocks, and omit them from the
conversion.
* cfgcleanup.c (flow_find_cross_jump): No longer static.  Remove MODE
argument; all callers changed.  Pass zero to old_insns_match_p instead.
(flow_find_head_matching_sequence): New function.
(old_insns_match_p): Check REG_EH_REGION notes for calls.
* basic-block.h (flow_find_cross_jump,
flow_find_head_matching_sequence): Declare functions.

gcc/testsuite/
PR target/21803
* gcc.target/arm/pr42496.c: New test.

From-SVN: r158357

14 years agore PR c++/36625 (bogus error on __attribute__((aligned(N))) in template code)
Jason Merrill [Wed, 14 Apr 2010 20:17:34 +0000 (16:17 -0400)]
re PR c++/36625 (bogus error on __attribute__((aligned(N))) in template code)

PR c++/36625
* c-common.c (attribute_takes_identifier_p): New fn.
* c-common.h: Declare it.
cp/
* parser.c (cp_parser_parenthesized_expression_list): Change
is_attribute_list parm to int to indicate whether or not to
handle initial identifier specially.
(cp_parser_attribute_list): Use attribute_takes_identifier_p.

From-SVN: r158355

14 years agoAdd ChangeLog entry for my previous commit.
Steven G. Kargl [Wed, 14 Apr 2010 19:38:07 +0000 (19:38 +0000)]
Add ChangeLog entry for my previous commit.

From-SVN: r158354

14 years agoi386.md (*divmod<mode>4): Remove stray "&&" from splitter condition.
Uros Bizjak [Wed, 14 Apr 2010 18:55:05 +0000 (20:55 +0200)]
i386.md (*divmod<mode>4): Remove stray "&&" from splitter condition.

* config/i386/i386.md (*divmod<mode>4): Remove stray "&&" from
splitter condition.
(*udivmod<mode>4): Ditto.

From-SVN: r158353

14 years agointrinsic.texi: Add the missing specific name of intrinsic procedure where the specif...
Steven G. Kargl [Wed, 14 Apr 2010 18:32:51 +0000 (18:32 +0000)]
intrinsic.texi: Add the missing specific name of intrinsic procedure where the specific name is...

2010-04-14  Steven G. Kargl  <kargl@gcc.gnu.org>

* fortran/intrinsic.texi: Add the missing specific name of intrinsic
procedure where the specific name is identical to the generic name.
Fix inconsistent or mismatch in the argument names in intrinsic
procedure descriptions.  Add the SCALAR allocatable description to
ALLOCATED.

From-SVN: r158352

14 years agore PR testsuite/43739 (FAIL: gcc.dg/pr43643.c (test for excess errors))
Steve Ellcey [Wed, 14 Apr 2010 16:47:15 +0000 (16:47 +0000)]
re PR testsuite/43739 (FAIL: gcc.dg/pr43643.c (test for excess errors))

2010-04-14  Steve Ellcey  <sje@cup.hp.com>

PR testsuite/43739
* gcc.dg/pr43643.c: Use static link on hppa*-*-hpux*.

From-SVN: r158351

14 years agoi386.md (maxmin_int): Rename code attribute from maxminiprefix and update all users.
Uros Bizjak [Wed, 14 Apr 2010 16:16:31 +0000 (18:16 +0200)]
i386.md (maxmin_int): Rename code attribute from maxminiprefix and update all users.

* config/i386/i386.md (maxmin_int): Rename code attribute from
maxminiprefix and update all users.
(maxmin_float): Ditto from maxminfprefix.
(logic): Ditto from logicprefix.
(absneg_mnemonic): Ditto from absnegprefix.
* config/i386/mmx.md: Update all users of maxminiprefix,
maxminfprefix and loficprefix for rename.
* config/i386/sse.md: Ditto.
* config/i386/sync.md (sync_<code><mode>): Update for
logicprefix rename.

From-SVN: r158350

14 years agore PR other/42966 (add some indication that a warning has been converted to an error)
Manuel López-Ibáñez [Wed, 14 Apr 2010 16:08:23 +0000 (16:08 +0000)]
re PR other/42966 (add some indication that a warning has been converted to an error)

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

PR 42966
* diagnostics.c (diagnostic_report_diagnostic): Mark specially
warnings converted to errors.

testsuite/
* gcc.dg/cpp/warn-undef-2.c: Update.
* gcc.dg/cpp/warn-traditional-2.c: Update.
* gcc.dg/cpp/warn-comments-2.c: Update.
* gcc.dg/cpp/warn-variadic-2.c: Update.
* gcc.dg/cpp/warn-long-long-2.c: Update.
* gcc.dg/cpp/warn-deprecated-2.c: Update.
* gcc.dg/cpp/warn-multichar-2.c: Update.
* gcc.dg/cpp/warn-normalized-3.c: Update.
* gcc.dg/cpp/warn-cxx-compat-2.c: Update.
* gcc.dg/cpp/warn-trigraphs-3.c: Update.
* gcc.dg/cpp/warn-unused-macros-2.c: Update.
* gcc.dg/cpp/warn-trigraphs-4.c: Update.
* gcc.dg/cpp/warn-redefined-2.c: Update.
* gfortran.dg/warning-directive-2.F90: Update.
* c-c++-common/cpp/warning-directive-2.c: Update.

From-SVN: r158349

14 years agoalpha.c (alpha_adjust_cost): Remove set but not used insn_type variable.
Uros Bizjak [Wed, 14 Apr 2010 15:23:05 +0000 (17:23 +0200)]
alpha.c (alpha_adjust_cost): Remove set but not used insn_type variable.

* config/alpha/alpha.c (alpha_adjust_cost): Remove set but not
used insn_type variable.
(function_value): Add ATTRIBUTE_UNUSED to dummy variable declaration
to avoid set-but-not-used warning.

From-SVN: r158348

14 years agodf-core.c (df_ref_debug): Change format string placeholder from 0x%x to %#x.
Uros Bizjak [Wed, 14 Apr 2010 15:08:54 +0000 (17:08 +0200)]
df-core.c (df_ref_debug): Change format string placeholder from 0x%x to %#x.

* df-core.c (df_ref_debug): Change format string placeholder
from 0x%x to %#x.
* dwarf2asm.c (dw2_asm_output_data_raw,
dw2_asm_output_data_uleb128_raw, dw2_asm_output_data_uleb128,
dw2_asm_output_data_sleb128_raw, dw2_asm_output_data_sleb128): Ditto.
* dwarf2out.c (output_cfi, output_cfi_directive,
dwarf2out_do_cfi_startproc, output_loc_sequence_raw,
output_cfa_loc_raw, output_die, output_ranges, output_file_names):
Ditto.
* genattrtab.c (write_test_expr, write_attr_valueq): Ditto.
* print-rtl.c (print_rtx): Ditto.

From-SVN: r158347

14 years agoPR 42694: Optimize pow (x, 0.25), pow (x, 0.75), pow (x, 1./6.)
Michael Meissner [Wed, 14 Apr 2010 15:01:40 +0000 (15:01 +0000)]
PR 42694: Optimize pow (x, 0.25), pow (x, 0.75), pow (x, 1./6.)

From-SVN: r158346

14 years agore PR tree-optimization/42963 (Redundant switch labels not cleaned up anymore)
Michael Matz [Wed, 14 Apr 2010 14:50:33 +0000 (14:50 +0000)]
re PR tree-optimization/42963 (Redundant switch labels not cleaned up anymore)

PR tree-optimization/42963
* tree-cfg.c (touched_switch_bbs): New static variable.
(group_case_labels_stmt): New function broken out from ...
(group_case_labels): ... here, use the above.
(start_recording_case_labels): Allocate touched_switch_bbs.
(end_recording_case_labels): Deallocate it, call
group_case_labels_stmt.
(gimple_redirect_edge_and_branch): Remember index of affected BB.

testsuite/
* testsuite/gcc.dg/pr42963.c: New testcase.

From-SVN: r158345

14 years agoacinclude.m4 (LIBGOMP_CHECK_SYNC_BUILTINS): Remove set but not unused bar variable.
Uros Bizjak [Wed, 14 Apr 2010 12:57:43 +0000 (14:57 +0200)]
acinclude.m4 (LIBGOMP_CHECK_SYNC_BUILTINS): Remove set but not unused bar variable.

* acinclude.m4 (LIBGOMP_CHECK_SYNC_BUILTINS): Remove set but
not unused bar variable.
* configure: Regenerate.

From-SVN: r158344

14 years agoSynchronize with src/.
Tristan Gingold [Wed, 14 Apr 2010 09:48:21 +0000 (09:48 +0000)]
Synchronize with src/.

2010-04-14  Tristan Gingold  <gingold@adacore.com>

* configure.ac (alpha*-*-*vms*): Remove ld from noconfigdirs.
* configure: Regenerate.

From-SVN: r158341

14 years agoi386.md (*popcountsi2_cmp_zext): Remove mode attribute from insn template.
Uros Bizjak [Wed, 14 Apr 2010 09:28:05 +0000 (11:28 +0200)]
i386.md (*popcountsi2_cmp_zext): Remove mode attribute from insn template.

* config/i386/i386.md (*popcountsi2_cmp_zext): Remove mode attribute
from insn template.

From-SVN: r158340

14 years agogigi.h: Reorder declarations and tweak comments.
Eric Botcazou [Wed, 14 Apr 2010 08:14:54 +0000 (08:14 +0000)]
gigi.h: Reorder declarations and tweak comments.

* gcc-interface/gigi.h: Reorder declarations and tweak comments.
(gigi): Adjust ATTRIBUTE_UNUSED markers.
* gcc-interface/gadaint.h: New file.
* gcc-interface/trans.c: Include it in lieu of adaint.h.  Reorder.
(__gnat_to_canonical_file_spec): Remove declaration.
(number_names): Delete.
(number_files): Likewise.
(gigi): Adjust.
* gcc-interface/Make-lang.in (ada/trans.o): Adjust dependencies to
above change.

From-SVN: r158296

14 years agodecl.c (gnat_to_gnu_entity): Fix comment.
Eric Botcazou [Wed, 14 Apr 2010 07:58:08 +0000 (07:58 +0000)]
decl.c (gnat_to_gnu_entity): Fix comment.

* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Class_Wide_Type>: Fix
comment.
* gcc-interface/trans.c (process_freeze_entity): Use local copy of
Ekind.  Return early for class-wide types.  Do not compute initializer
unless necessary.  Reuse the tree for an associated class-wide type
only if processing its root type.

From-SVN: r158295

14 years agoi386.md (*ashlqi3_1_slp): New insn pattern.
Uros Bizjak [Wed, 14 Apr 2010 06:36:53 +0000 (08:36 +0200)]
i386.md (*ashlqi3_1_slp): New insn pattern.

* config/i386/i386.md (*ashlqi3_1_slp): New insn pattern.

From-SVN: r158293

14 years agore PR fortran/18918 (Eventually support Fortran 2008's coarrays [co-arrays])
Tobias Burnus [Wed, 14 Apr 2010 05:43:30 +0000 (07:43 +0200)]
re PR fortran/18918 (Eventually support Fortran 2008's coarrays [co-arrays])

2010-04-14  Tobias Burnus  <burnus@net-b.de>

        PR fortran/18918
        * array.c (gfc_find_array_ref): Handle codimensions.
        (gfc_match_array_spec,gfc_match_array_ref): Use gfc_fatal_error.
        * check.c (is_coarray, dim_corank_check, gfc_check_lcobound,
        gfc_check_image_index, gfc_check_this_image, gfc_check_ucobound):
        New functions.
        * gfortran.h (gfc_isym_id): Add GFC_ISYM_IMAGE_INDEX,
        GFC_ISYM_LCOBOUND, GFC_ISYM_THIS_IMAGE,
        GFC_ISYM_UCOBOUND.
        * intrinsic.h (add_functions): Add this_image, image_index,
        lcobound and ucobound intrinsics.
        * intrinsic.c (gfc_check_lcobound,gfc_check_ucobound,
        gfc_check_image_index, gfc_check_this_image,
        gfc_simplify_image_index, gfc_simplify_lcobound,
        gfc_simplify_this_image, gfc_simplify_ucobound):
        New function prototypes.
        * intrinsic.texi (IMAGE_INDEX, LCOBOUND, THIS_IMAGE
        IMAGE_INDEX): Document new intrinsic functions.
        * match.c (gfc_match_critical, sync_statement): Make
        * -fcoarray=none
        error fatal.
        * simplify.c (simplify_bound_dim): Handle coarrays.
        (simplify_bound): Update simplify_bound_dim call.
        (gfc_simplify_num_images): Add -fcoarray=none check.
        (simplify_cobound, gfc_simplify_lcobound, gfc_simplify_ucobound,
        gfc_simplify_ucobound, gfc_simplify_ucobound): New functions.

2010-04-14  Tobias Burnus  <burnus@net-b.de>

        PR fortran/18918
        * gfortran.dg/coarray_9.f90: Update dg-errors.
        * gfortran.dg/coarray_10.f90: New test.
        * gfortran.dg/coarray_11.f90: New test.

From-SVN: r158292

14 years agore PR fortran/43747 (ICE in find_array_section, at fortran/expr.c:1551)
Jerry DeLisle [Wed, 14 Apr 2010 05:27:29 +0000 (05:27 +0000)]
re PR fortran/43747 (ICE in find_array_section, at fortran/expr.c:1551)

2010-04-14  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR fortran/43747
gfortran.dg/initialization_24.f90: New test.

From-SVN: r158291

14 years agore PR fortran/43747 (ICE in find_array_section, at fortran/expr.c:1551)
Jerry DeLisle [Wed, 14 Apr 2010 05:16:59 +0000 (05:16 +0000)]
re PR fortran/43747 (ICE in find_array_section, at fortran/expr.c:1551)

2010-04-14  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR fortran/43747
* constructor.c: Fix typo in comment.
* expr.c (find_array_section): Add check for max array limit.

From-SVN: r158290

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

From-SVN: r158289

14 years agoconfigure: Regenerate after change to elf.m4.
Steve Ellcey [Tue, 13 Apr 2010 22:54:07 +0000 (22:54 +0000)]
configure: Regenerate after change to elf.m4.

2010-04-13  Steve Ellcey  <sje@cup.hp.com>

* configure: Regenerate after change to elf.m4.

In config subdir:

2010-04-13  Steve Ellcey  <sje@cup.hp.com>

* elf.m4: Add hppa[12]*-*-hpux* to list of non-elf platforms.

From-SVN: r158285

14 years agohash_map: Don't #include "backward_warning.h" if _GLIBCXX_PERMIT_BACKWARD_HASH is...
Ian Lance Taylor [Tue, 13 Apr 2010 20:24:40 +0000 (20:24 +0000)]
hash_map: Don't #include "backward_warning.h" if _GLIBCXX_PERMIT_BACKWARD_HASH is defined.

* include/backward/hash_map: Don't #include "backward_warning.h"
if _GLIBCXX_PERMIT_BACKWARD_HASH is defined.
* include/backward/hash_set: Likewise.

From-SVN: r158281

14 years agogsocket.h: Run-time can no longer be built without network OS headers available.
Joel Sherrill [Tue, 13 Apr 2010 19:41:05 +0000 (19:41 +0000)]
gsocket.h: Run-time can no longer be built without network OS headers available.

2010-04-13  Joel Sherrill <joel.sherrill@oarcorp.com>

* gsocket.h: Run-time can no longer be built without network
OS headers available.  Changing RTEMS GNAT build procedure to
reflect this and letting run-time build use network .h files.

From-SVN: r158279

14 years agoipa-inline.c (cgraph_mark_inline_edge): Avoid double accounting of optimized out...
Jan Hubicka [Tue, 13 Apr 2010 18:22:35 +0000 (20:22 +0200)]
ipa-inline.c (cgraph_mark_inline_edge): Avoid double accounting of optimized out static functions.

* ipa-inline.c (cgraph_mark_inline_edge): Avoid double accounting
of optimized out static functions.
(cgraph_edge_badness): Add DUMP parameter and dump reasons for the
cost computation.  Also sanity check for overflows.
(update_caller_keys): Update cgraph_edge_badness call; properly
update fibheap and sanity check that it is up to date.
(add_new_edges_to_heap): Update cgraph_edge_badness.
(cgraph_decide_inlining_of_small_function): Likewise;
add sanity checking that badness in heap is up to date;
improve dumping of reason; Update badness of calls to the
offline copy of function currently inlined; dump badness
of functions not inlined because of unit growth limits.

From-SVN: r158278

14 years agocall.c (type_decays_to): Check MAYBE_CLASS_TYPE_P instead of CLASS_TYPE_P.
Jason Merrill [Tue, 13 Apr 2010 17:24:52 +0000 (13:24 -0400)]
call.c (type_decays_to): Check MAYBE_CLASS_TYPE_P instead of CLASS_TYPE_P.

* call.c (type_decays_to): Check MAYBE_CLASS_TYPE_P instead of
CLASS_TYPE_P.
* parser.c (cp_parser_lambda_expression): Complain about lambda in
unevaluated context.
* pt.c (iterative_hash_template_arg): Don't crash on lambda.

From-SVN: r158277

14 years agoCommit gcc/testsuite/ChangeLog for revision 158275.
Manuel López-Ibáñez [Tue, 13 Apr 2010 16:29:54 +0000 (16:29 +0000)]
Commit gcc/testsuite/ChangeLog for revision 158275.

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

* gcc.dg/cpp/cpp.exp: Test also c-c++-common/cpp.
* g++.dg/dg.exp: Likewise.
* gcc.dg/cpp/warning-directive-1.c: Move to ...
* c-c++-common/cpp/warning-directive-1.c: ... here.
* gcc.dg/cpp/warning-directive-2.c: Move to ...
* c-c++-common/cpp/warning-directive-2.c: ... here.
* gcc.dg/cpp/warning-directive-3.c: Move to ...
* c-c++-common/cpp/warning-directive-3.c: ... here.
* gcc.dg/cpp/warning-directive-4.c: Move to ...
* c-c++-common/cpp/warning-directive-4.c: ... here.
* g++.dg/cpp/warning-directive-1.C: Delete.
* g++.dg/cpp/warning-directive-2.C: Delete.
* g++.dg/cpp/warning-directive-3.C: Delete.
* g++.dg/cpp/warning-directive-4.C: Delete.
* gcc.dg/cpp/normalised-3.c: Delete.
* g++.dg/cpp/normalised-1.C: Rename as ...
* c-c++-common/cpp/normalised-3.c: ... this.

From-SVN: r158276

14 years agocpp.exp: Test also c-c++-common/cpp.
Manuel López-Ibáñez [Tue, 13 Apr 2010 16:26:01 +0000 (16:26 +0000)]
cpp.exp: Test also c-c++-common/cpp.

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

* gcc.dg/cpp/cpp.exp: Test also c-c++-common/cpp.
* g++.dg/dg.exp: Likewise.
* gcc.dg/cpp/warning-directive-1.c: Move to ...
* c-c++-common/cpp/warning-directive-1.c: ... here.
* gcc.dg/cpp/warning-directive-2.c: Move to ...
* c-c++-common/cpp/warning-directive-2.c: ... here.
* gcc.dg/cpp/warning-directive-3.c: Move to ...
* c-c++-common/cpp/warning-directive-3.c: ... here.
* gcc.dg/cpp/warning-directive-4.c: Move to ...
* c-c++-common/cpp/warning-directive-4.c: ... here.
* g++.dg/cpp/warning-directive-1.C: Delete.
* g++.dg/cpp/warning-directive-2.C: Delete.
* g++.dg/cpp/warning-directive-3.C: Delete.
* g++.dg/cpp/warning-directive-4.C: Delete.
* gcc.dg/cpp/normalised-3.c: Delete.
* g++.dg/cpp/normalised-1.C: Rename as ...
* c-c++-common/cpp/normalised-3.c: ... this.

From-SVN: r158275

14 years agore PR middle-end/32628 (bogus integer overflow warning)
Eric Botcazou [Tue, 13 Apr 2010 15:47:38 +0000 (15:47 +0000)]
re PR middle-end/32628 (bogus integer overflow warning)

PR middle-end/32628
* c-common.c (pointer_int_sum): Disregard overflow that occured only
because of sign-extension change when converting to sizetype here...
* fold-const.c (fold_convert_const_int_from_int): ...and not here.

* fold-const.c (fold_binary_op_with_conditional_arg): Do not restrict
the folding to constants.  Remove redundant final conversion.
(fold_binary) <associate>: Do not associate if the re-association of
constants alone overflows.
(fold_binary) <FLOOR_MOD_EXPR>: Move transformation into BIT_AND_EXPR
to the end of the list.
(multiple_of_p) <COND_EXPR>: New case.

From-SVN: r158274

14 years agoopt-functions.awk (opt_sanitized_name): New.
Manuel López-Ibáñez [Tue, 13 Apr 2010 14:27:22 +0000 (14:27 +0000)]
opt-functions.awk (opt_sanitized_name): New.

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

* opt-functions.awk (opt_sanitized_name): New.
(opt_enum): New.
* optc-gen.awk: Use it
* opth-gen.awk: Use it.

From-SVN: r158272

14 years agotree-sra.c (replace_uses_with_default_def_ssa_name): New function.
Martin Jambor [Tue, 13 Apr 2010 13:47:34 +0000 (15:47 +0200)]
tree-sra.c (replace_uses_with_default_def_ssa_name): New function.

2010-04-13  Martin Jambor  <mjambor@suse.cz>

* tree-sra.c (replace_uses_with_default_def_ssa_name): New function.
(sra_modify_assign): Delete stmts loading dead data even if racc has no
children.  Call replace_uses_with_default_def_ssa_name to handle
SSA_NAES on lhs.

* testsuite/gcc.dg/tree-ssa/sra-9.c: New test.

From-SVN: r158271