platform/upstream/gcc.git
14 years agoMAINTAINERS (Write After Approval): Add myself.
Andi Kleen [Thu, 22 Jul 2010 21:16:49 +0000 (21:16 +0000)]
MAINTAINERS (Write After Approval): Add myself.

2010-07-22  Andi Kleen  <ak@linux.intel.com>

        * MAINTAINERS (Write After Approval): Add myself.

From-SVN: r162428

14 years agore PR bootstrap/45028 (ICE building 64-bit libjava on Solaris 2/SPARC: output_operand...
Jakub Jelinek [Thu, 22 Jul 2010 20:48:42 +0000 (22:48 +0200)]
re PR bootstrap/45028 (ICE building 64-bit libjava on Solaris 2/SPARC: output_operand: invalid expression as operand)

PR bootstrap/45028
* recgprop.c (copyprop_hardreg_forward_1): If changed is true,
call cprop_find_used_regs again via note_uses.

From-SVN: r162427

14 years ago* alias.c (get_alias_set): Fix formatting issues.
Eric Botcazou [Thu, 22 Jul 2010 19:33:45 +0000 (19:33 +0000)]
* alias.c (get_alias_set): Fix formatting issues.

From-SVN: r162426

14 years agore PR ada/44892 (internal error on gnat.dg/unchecked_convert5.adb)
Eric Botcazou [Thu, 22 Jul 2010 19:28:21 +0000 (19:28 +0000)]
re PR ada/44892 (internal error on gnat.dg/unchecked_convert5.adb)

PR ada/44892
* gcc-interface/utils.c (convert): Fix thinko in test.
(unchecked_convert): When converting from a scalar type to a type with
a different size, pad to have the same size on both sides.

From-SVN: r162425

14 years agoutils.c (gnat_types_compatible_p): Don't require strict equality for the component...
Eric Botcazou [Thu, 22 Jul 2010 19:12:46 +0000 (19:12 +0000)]
utils.c (gnat_types_compatible_p): Don't require strict equality for the component type of array types.

* gcc-interface/utils.c (gnat_types_compatible_p): Don't require strict
equality for the component type of array types.

From-SVN: r162424

14 years agore PR middle-end/44878 (Build fails when compiling libstdc++)
Steve Ellcey [Thu, 22 Jul 2010 18:14:27 +0000 (18:14 +0000)]
re PR middle-end/44878 (Build fails when compiling libstdc++)

2010-07-22  Steve Ellcey  <sje@cup.hp.com>

PR middle-end/44878
* stmt.c (expand_value_return):  Call promote_function_mode with
a for_return argument of 2 when returning by reference.

From-SVN: r162423

14 years agoChangeLog: Fix whitespace.
Uros Bizjak [Thu, 22 Jul 2010 18:10:32 +0000 (20:10 +0200)]
ChangeLog: Fix whitespace.

* ChangeLog: Fix whitespace.
* testsuite/ChangeLog: Ditto.

From-SVN: r162422

14 years agore PR debug/45024 (wrong nesting for inner template class)
Dodji Seketeli [Thu, 22 Jul 2010 16:25:17 +0000 (16:25 +0000)]
re PR debug/45024 (wrong nesting for inner template class)

Fix PR debug/45024

gcc/ChangeLog:
PR debug/45024
* dwarf2out.c (scope_die_for): Don't fall back to the compilation
unit DIE if we can find the scope DIE.

gcc/testsuite/ChangeLog:
PR debug/45024
* g++.dg/debug/dwarf2/nested-2.C: New test case.

From-SVN: r162420

14 years agoira-build.c (ira_create_object): New arg SUBWORD; all callers changed.
Bernd Schmidt [Thu, 22 Jul 2010 15:48:30 +0000 (15:48 +0000)]
ira-build.c (ira_create_object): New arg SUBWORD; all callers changed.

* ira-build.c (ira_create_object): New arg SUBWORD; all callers changed.
Initialize OBJECT_SUBWORD.
(ira_create_allocno): Clear ALLOCNO_NUM_OBJECTS.
(ira_create_allocno_objects): Renamed from ira_create_allocno_object;
all callers changed.
(merge_hard_reg_conflicts): Iterate over allocno subobjects.
(finish_allocno): Likewise.
(move_allocno_live_ranges, copy_allocno_live_ranges): Likewise.
(remove_low_level_allocnos): Likewise.
(update_bad_spill_attribute): Likewise.
(setup_min_max_allocno_live_range_point): Likewise.
(sort_conflict_id_map): Likewise.
(ira_flattening): Likewise.  Use ior_hard_reg_conflicts.
(ior_hard_reg_conflicts): New function.
(ior_allocate_object_conflicts): Renamed first argument to OBJ.
(compress_conflict_vecs): Iterate over objects, not allocnos.
(ira_add_live_range_to_object): New function.
(object_range_compare_func): Renamed from allocno_range_compare_func.
All callers changed.
(setup_min_max_conflict_allocno_ids): For allocnos with multiple
subobjects, widen the min/max range of the lowest-order object to
potentially include all other such low-order objects.
* ira.c (ira_bad_reload_regno_1): Iterate over allocno subobjects.
(check_allocation): Likewise.  Use more fine-grained tests for register
conflicts.
* ira-color.c (allocnos_have_intersected_live_ranges_p): Iterate over
allocno subobjects.
(assign_hard_reg): Keep multiple sets of conflicts.  Make finer-grained
choices about which bits to set in each set.  Don't use
ira_hard_reg_not_in_set_p, perform a more elaborate test for conflicts
using the multiple sets we computed.
(push_allocno_to_stack): Iterate over allocno subobjects.
(all_conflicting_hard_regs_coalesced): New static function.
(setup_allocno_available_regs_num): Use it.
(setup_allocno_left_conflicts_size): Likewise.  Iterate over allocno
subobjects.
(coalesced_allocno_conflict): Test subobject 0 in each allocno.
(setup_allocno_priorities): Divide ALLOCNO_EXCESS_PRESSURE_POINTS_NUM
by ALLOCNO_NUM_OBJECTS.
(calculate_spill_cost): Likewise.
(color_pass): Express if statement in a more normal way.
(ira_reassign_conflict_allocnos): Iterate over allocno subobjects.
(slot_coalesced_allocno_live_ranges_intersect_p): Likewise.
(setup_slot_coalesced_allocno_live_ranges): Likewise.
(allocno_reload_assign): Likewise.
(ira_reassign_pseudos): Likewise.
(fast_allocation): Likewise.
* ira-conflicts.c (build_conflict_bit_table): Likewise.
(print_allocno_conflicts): Likewise.
(ira_build_conflicts): Likewise.
(allocnos_conflict_for_copy_p): Renamed from allocnos_conflict_p.  All
callers changed.  Test subword 0 of each allocno for conflicts.
(build_object_conflicts): Renamed from build_allocno_conflicts.  All
callers changed.  Iterate over allocno subobjects.
* ira-emit.c (modify_move_list): Iterate over allocno subobjects.
* ira-int.h (struct ira_allocno): New member. num_objects.  Rename object
to objects and change it into an array.
(ALLOCNO_OBJECT): Add new argument N.
(ALLOCNO_NUM_OBJECTS, OBJECT_SUBWORD): New macros.
(ira_create_allocno_objects): Renamed from ira_create_allocno_object.
(ior_hard_reg_conflicts): Declare.
(ira_add_live_range_to_object): Declare.
(ira_allocno_object_iterator): New.
(ira_allocno_object_iter_init, ira_allocno_object_iter_cond): New.
(FOR_EACH_ALLOCNO_OBJECT): New macro.
* ira-lives.c (objects_live): Renamed from allocnos_live; all uses changed.
(allocnos_processed): New sparseset.
(make_object_born): Renamed from make_allocno_born; take an ira_object_t
argument.  All callers changed.
(make_object_dead): Renamed from make_allocno_dead; take an ira_object t
argument.  All callers changed.
(update_allocno_pressure_excess_length): Take an ira_obejct_t argument.
All callers changed.
(mark_pseudo_regno_live): Iterate over allocno subobjects.
(mark_pseudo_regno_dead): Likewise.
(mark_pseudo_regno_subword_live, mark_pseudo_regno_subword_dead): New
functions.
(mark_ref_live): Detect subword accesses and call
mark_pseudo_regno_subword_live as appropriate.
(mark_ref_dead): Likewise for mark_pseudo_regno_subword_dead.
(process_bb_nodes_live): Deal with object-related updates first; set
and test bits in allocnos_processed to avoid computing allocno
statistics more than once.
(create_start_finish_chains): Iterate over objects, not allocnos.
(print_object_live_ranges): New function.
(print_allocno_live_ranges): Use it.
(ira_create_allocno_live_ranges): Allocate and free allocnos_processed
and objects_live.

From-SVN: r162418

14 years agoReplace dg-require-lto-plugin with dg-require-linker-plugin.
H.J. Lu [Thu, 22 Jul 2010 14:45:07 +0000 (14:45 +0000)]
Replace dg-require-lto-plugin with dg-require-linker-plugin.

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

* gcc.dg/lto/20100722-1_0.c: Replace dg-require-lto-plugin
with dg-require-linker-plugin.

From-SVN: r162417

14 years agore PR c++/43850 (ice: tree code �template_type_parm� is not supported in gimple streams)
Richard Guenther [Thu, 22 Jul 2010 14:19:40 +0000 (14:19 +0000)]
re PR c++/43850 (ice: tree code �template_type_parm� is not supported in gimple streams)

2010-07-22  Richard Guenther  <rguenther@suse.de>

PR lto/43850
* g++.dg/lto/20100722-1_0.C: New testcase.

From-SVN: r162416

14 years agore PR lto/42451 ('warning: type of "array" does not match original declaration' with...
Richard Guenther [Thu, 22 Jul 2010 13:47:32 +0000 (13:47 +0000)]
re PR lto/42451 ('warning: type of "array" does not match original declaration' with -flto/-fwhopr)

2010-07-22  Richard Guenther  <rguenther@suse.de>

PR lto/42451
* gimple.c (gtc_next_dfs_num): New global.
(struct sccs): Make value a union, add integer same_p member.
(gtc_visit): New function.
(gimple_types_compatible_p_1): New function, split out from ...
(gimple_types_compatible_p): ... here.  Start a DFS walk here.
(iterative_hash_gimple_type): Adjust for sccs change.

* gcc.dg/lto/20100720-3_0.c: New testcase.
* gcc.dg/lto/20100720-3_1.c: Likewise.

From-SVN: r162415

14 years agore PR lto/43373 (-fwhopr -fuse-linker-plugin ICE compressed stream data error)
Richard Guenther [Thu, 22 Jul 2010 12:54:44 +0000 (12:54 +0000)]
re PR lto/43373 (-fwhopr -fuse-linker-plugin ICE compressed stream data error)

2010-07-22  Richard Guenther  <rguenther@suse.de>

* lib/target-supports-dg.exp (dg-require-linker-plugin): New proc.
* lib/target-supports.exp (check_linker_plugin_available): Likewise.

PR lto/43373
* gcc.dg/lto/20100722-1_0.c: New testcase.

From-SVN: r162414

14 years agore PR tree-optimization/44891 (non-trivial conversion ICE from early SRA)
Martin Jambor [Thu, 22 Jul 2010 12:52:14 +0000 (14:52 +0200)]
re PR tree-optimization/44891 (non-trivial conversion ICE from early SRA)

2010-07-22  Martin Jambor  <mjambor@suse.cz>

PR tree-optimization/44891
* tree-sra.c: Include gimple-pretty-print.h.
(replace_uses_with_default_def_ssa_name): Renamed to
get_repl_default_def_ssa_name, return the new SSA name instead of
replacing the old one.
(sra_modify_assign): Dump a message when removing a load, if the LHS
is an SSA_NAME, do not do any propagation, just set the RHS to a
default definition SSA NAME, type convert if necessary.
* Makefile.in (tree-sra.o): Add gimple-pretty-print.h to dependencies.

* testsuite/gcc.c-torture/compile/pr44891.c: New test.

From-SVN: r162413

14 years agoMakefile.am: New copy_lto_plugin rule to install the plugin into ../gcc.
Richard Guenther [Thu, 22 Jul 2010 12:50:00 +0000 (12:50 +0000)]
Makefile.am: New copy_lto_plugin rule to install the plugin into ../gcc.

2010-07-22  Richard Guenther  <rguenther@suse.de>

lto-plugin/
* Makefile.am: New copy_lto_plugin rule to install the plugin
into ../gcc.
* Makefile.in: Regenerated.

From-SVN: r162412

14 years agore PR middle-end/45017 (miscompile with bitfield and optimization)
Richard Guenther [Thu, 22 Jul 2010 12:14:27 +0000 (12:14 +0000)]
re PR middle-end/45017 (miscompile with bitfield and optimization)

2010-07-22  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/45017
* tree-ssa-sccvn.c (vn_reference_eq): Make sure we honor
TYPE_PRECISION of integral types in addition to size.

* gcc.c-torture/execute/pr45017.c: New testcase.

From-SVN: r162411

14 years agore PR fortran/45019 (Aliasing of TARGET dummy argument not detected correctly)
Tobias Burnus [Thu, 22 Jul 2010 11:35:09 +0000 (13:35 +0200)]
re PR fortran/45019 (Aliasing of TARGET dummy argument not detected correctly)

2010-07-22  Tobias Burnus  <burnus@net-b.de>

        PR fortran/45019
        * dependency.c (gfc_check_dependency): Add argument alising
        * check.
        * symbol.c (gfc_symbols_could_alias): Add argument alising
        * check.

2010-07-22  Tobias Burnus  <burnus@net-b.de>

        PR fortran/45019
        * gfortran.dg/aliasing_dummy_5.f90: New.

From-SVN: r162410

14 years agotrans-stmt.c (gfc_trans_return): Put back in the handling of se.post, now in the...
Daniel Kraft [Thu, 22 Jul 2010 10:59:31 +0000 (12:59 +0200)]
trans-stmt.c (gfc_trans_return): Put back in the handling of se.post, now in the correct place.

2010-07-22  Daniel Kraft  <d@domob.eu>

* trans-stmt.c (gfc_trans_return): Put back in the handling of se.post,
now in the correct place.

From-SVN: r162409

14 years agosysv4.h (CHOOSE_DYNAMIC_LINKER): Default to GLIBC when no C library is specified.
Maxim Kuvyrkov [Thu, 22 Jul 2010 09:47:01 +0000 (09:47 +0000)]
sysv4.h (CHOOSE_DYNAMIC_LINKER): Default to GLIBC when no C library is specified.

* config/rs6000/sysv4.h (CHOOSE_DYNAMIC_LINKER): Default to GLIBC
when no C library is specified.

From-SVN: r162408

14 years agoipa-prop.h (struct ipa_node_params): Updated comment.
Martin Jambor [Thu, 22 Jul 2010 09:45:29 +0000 (11:45 +0200)]
ipa-prop.h (struct ipa_node_params): Updated comment.

2010-07-22  Martin Jambor  <mjambor@suse.cz>

* ipa-prop.h (struct ipa_node_params): Updated comment.
(struct ipa_edge_args): Likewise.
* Makefile.in (ipa-prop.o): Remove bogus $(GIMPLE_FOLD_H) dependency.

From-SVN: r162407

14 years agocgraphunit.c (verify_edge_count_and_frequency): New function.
Martin Jambor [Thu, 22 Jul 2010 09:33:11 +0000 (11:33 +0200)]
cgraphunit.c (verify_edge_count_and_frequency): New function.

2010-07-22  Martin Jambor  <mjambor@suse.cz>

* cgraphunit.c (verify_edge_count_and_frequency): New function.
(verify_cgraph_node): Verify frequencies of indirect edges.
* tree-inline.c (tree_function_versioning): Update frequencies of
indirect edges.

From-SVN: r162406

14 years ago* MAINTAINERS (Write After Approval): Add myself.
Chung-Lin Tang [Thu, 22 Jul 2010 09:13:25 +0000 (09:13 +0000)]
* MAINTAINERS (Write After Approval): Add myself.

From-SVN: r162405

14 years agore PR target/43698 (Wrong use of ARMv6 REV instruction for endian bytewapping with...
Ramana Radhakrishnan [Thu, 22 Jul 2010 08:30:36 +0000 (08:30 +0000)]
re PR target/43698 (Wrong use of ARMv6 REV instruction for endian bytewapping with -Os or -O2 optimizations)

Fix PR target/43698

2010-07-22  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>

PR target/43698
* config/arm/arm.md: Split arm_rev into *arm_rev
and *thumb1_rev. Set *arm_rev to be predicable.

2010-07-22  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>

PR target/43698
* gcc.target/arm/pr43698.c: New test.

From-SVN: r162404

14 years agodarwin.h (LINK_COMMAND_SPEC): Split into...
Iain Sandoe [Thu, 22 Jul 2010 08:02:20 +0000 (08:02 +0000)]
darwin.h (LINK_COMMAND_SPEC): Split into...

* config/darwin.h (LINK_COMMAND_SPEC): Split into...
(LINK_COMMAND_SPEC_A): New.
(DSYMUTIL): New.
(DSYMUTIL_SPEC): New.
* config/darwin9.h (LINK_COMMAND_SPEC): Remove.
(DSYMUTIL_SPEC): Update for darwin >= 9 requirements.

-This line, and those below, will be ignored--

M    ChangeLog
M    config/darwin.h
M    config/darwin9.h

From-SVN: r162403

14 years agocalls.c (load_register_parameters): Move check for zero sized items so that only...
Iain Sandoe [Thu, 22 Jul 2010 07:59:50 +0000 (07:59 +0000)]
calls.c (load_register_parameters): Move check for zero sized items so that only the call to ...

* calls.c (load_register_parameters): Move check for zero
sized items so that only the call to
mem_overlaps_already_clobbered_arg_p () is protected.

From-SVN: r162402

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

From-SVN: r162396

14 years agoipa-pure-const.c (varying_state): Break out from ...
Jan Hubicka [Wed, 21 Jul 2010 22:56:27 +0000 (00:56 +0200)]
ipa-pure-const.c (varying_state): Break out from ...

* ipa-pure-const.c (varying_state): Break out from ...
(get_function_state): ... here; always return varying_state
when state would be NULL otherwise.
(remove_node_data): Do not free varying state.

From-SVN: r162392

14 years agofunction.c (record_hard_reg_sets): Restrict the previous change to cases where the...
Bernd Schmidt [Wed, 21 Jul 2010 22:51:13 +0000 (22:51 +0000)]
function.c (record_hard_reg_sets): Restrict the previous change to cases where the incoming nominal mode is the...

* function.c (record_hard_reg_sets): Restrict the previous change
to cases where the incoming nominal mode is the same as the
incoming promoted mode and everything happens in MODE_INT.

From-SVN: r162391

14 years agore PR bootstrap/44970 (Revision 162270 failed to bootstrap)
Bernd Schmidt [Wed, 21 Jul 2010 22:48:14 +0000 (22:48 +0000)]
re PR bootstrap/44970 (Revision 162270 failed to bootstrap)

PR bootstrap/44970
PR middle-end/45009
* postreload.c: Include "target.h".
(reload_combine_closest_single_use): Don't take DEBUG_INSNs
into account.
(fixup_debug_insns): Don't copy the rtx.
(reload_combine_recognize_const_pattern): DEBUG_INSNs can't
have uses.  Don't copy when replacing.  Call fixup_debug_insns
in the case where we merged one add with another.
(reload_combine_recognize_pattern): Fail if there aren't any
uses.  Try harder to determine whether we're picking a valid
index register.  Don't set store_ruid for an insn we're going
to scan in the next iteration.
(reload_combine): Remove unused code.
(reload_combine_note_use): When updating use information for
an old insn, ignore a use that occurs after store_ruid.
* Makefile.in (postreload.o): Update dependencies.

From-SVN: r162390

14 years agore PR fortran/44929 ([OOP] Parsing error of derived type name starting with 'REAL')
Steven G. Kargl [Wed, 21 Jul 2010 22:34:07 +0000 (22:34 +0000)]
re PR fortran/44929 ([OOP] Parsing error of  derived type name starting with 'REAL')

2010-07-21  Steven G. Kargl  <kargl@gcc.gnu.org>

    PR fortran/44929
    * Revert my commit r162325 for this PR.

From-SVN: r162386

14 years agore PR debug/45015 (ICE in cselib.c caused by fix for PR43051)
Jakub Jelinek [Wed, 21 Jul 2010 19:11:55 +0000 (21:11 +0200)]
re PR debug/45015 (ICE in cselib.c caused by fix for PR43051)

PR debug/45015
* var-tracking.c (adjust_mems): Ignore ASM_OPERANDS with non-zero
ASM_OPERANDS_OUTPUT_IDX.
(adjust_insn): For inline asm with multiple sets ensure first
ASM_OPERANDS vectors are used by all following ASM_OPERANDS in
the insn.

* gcc.target/m68k/pr45015.c: New test.

From-SVN: r162385

14 years agoEliminate the computed goto in x64 varargs.
Richard Henderson [Wed, 21 Jul 2010 18:50:02 +0000 (11:50 -0700)]
Eliminate the computed goto in x64 varargs.

Use a simple test and branch vs 0 instead.  Which also allows us
to avoid funny code emission problems as well.

From-SVN: r162384

14 years agoIA64 uses // instead of # for comments in its assembly file.
Jeffrey Yasskin [Wed, 21 Jul 2010 18:46:40 +0000 (18:46 +0000)]
IA64 uses // instead of # for comments in its assembly file.

PR c++/44641
* lib/scanasm.exp (dg-function-on-line): Fix regex for IA64's
comments.

From-SVN: r162383

14 years agoFix PR 44955: Strip off the real and complex parts.
Changpeng Fang [Wed, 21 Jul 2010 15:44:24 +0000 (15:44 +0000)]
Fix PR 44955: Strip off the real and complex parts.

2010-07-21  Changpeng Fang  <changpeng.fang@amd.com>

PR tree-optimization/44955
* tree-ssa-loop-prefetch.c (analyze_ref): Strip off the real
and imagine parts of a complex, so that they can have the same
base and fall into the same group.

From-SVN: r162381

14 years agore PR lto/45018 (ICE: tree check: did not expect class 'type', have 'type' (record_ty...
Richard Guenther [Wed, 21 Jul 2010 15:09:00 +0000 (15:09 +0000)]
re PR lto/45018 (ICE: tree check: did not expect class 'type', have 'type' (record_type) in contains_placeholder_p, at tree.c:2749)

2010-07-21  Richard Guenther  <rguenther@suse.de>

PR lto/45018
* tree.c (find_decls_types_r): Do not follow TREE_CHAIN
of TYPE_DECLs.  Do not follow TYPE_NEXT_VARIANT,
TYPE_NEXT_PTR_TO, nor TYPE_NEXT_REF_TO or TYPE_CANONICAL.

* g++.dg/lto/20100721-1_0.C: New testcase.

From-SVN: r162380

14 years ago* make-temp-file.c (choose_tmpdir): Append a dot to P_tmpdir if needed.
Pascal Obry [Wed, 21 Jul 2010 15:02:09 +0000 (15:02 +0000)]
* make-temp-file.c (choose_tmpdir): Append a dot to P_tmpdir if needed.

From-SVN: r162379

14 years ago* tree.c (cp_tree_equal): Fix CONSTRUCTOR handling.
Jason Merrill [Wed, 21 Jul 2010 14:38:12 +0000 (10:38 -0400)]
* tree.c (cp_tree_equal): Fix CONSTRUCTOR handling.

From-SVN: r162378

14 years agoparser.c (cp_parser_init_declarator): Pass LOOKUP_NORMAL to cp_finish_decl.
Jason Merrill [Wed, 21 Jul 2010 14:37:56 +0000 (10:37 -0400)]
parser.c (cp_parser_init_declarator): Pass LOOKUP_NORMAL to cp_finish_decl.

* parser.c (cp_parser_init_declarator): Pass LOOKUP_NORMAL
to cp_finish_decl.

From-SVN: r162377

14 years agore PR tree-optimization/44900 (The variable of SSE will be broken)
Martin Jambor [Wed, 21 Jul 2010 14:17:11 +0000 (16:17 +0200)]
re PR tree-optimization/44900 (The variable of SSE will be broken)

2010-07-21  Martin Jambor  <mjambor@suse.cz>

PR tree-optimization/44900
* tree-sra.c (load_assign_lhs_subreplacements): Updated comments.
(sra_modify_assign): Move gsi to the next statmenent unconditionally.

* testsuite/g++.dg/torture/pr44900.C: New test.

From-SVN: r162375

14 years agotrans.h (gfc_get_return_label): Removed.
Daniel Kraft [Wed, 21 Jul 2010 13:44:38 +0000 (15:44 +0200)]
trans.h (gfc_get_return_label): Removed.

2010-07-21  Daniel Kraft  <d@domob.eu>

* trans.h (gfc_get_return_label): Removed.
(gfc_generate_return): New method.
(gfc_trans_deferred_vars): Update gfc_wrapped_block rather than
returning a tree directly.
* trans-stmt.c (gfc_trans_return): Use `gfc_generate_return'.
(gfc_trans_block_construct): Update for new interface to
`gfc_trans_deferred_vars'.
* trans-decl.c (current_function_return_label): Removed.
(current_procedure_symbol): New variable.
(gfc_get_return_label): Removed.
(gfc_trans_deferred_vars): Update gfc_wrapped_block rather than
returning a tree directly.
(get_proc_result), (gfc_generate_return): New methods.
(gfc_generate_function_code): Clean up and do init/cleanup here
also with gfc_wrapped_block.  Remove return-label but rather
return directly.

From-SVN: r162373

14 years agore PR middle-end/44738 (c-c++-common/uninit-17.c failed)
Bernd Schmidt [Wed, 21 Jul 2010 12:36:44 +0000 (12:36 +0000)]
re PR middle-end/44738 (c-c++-common/uninit-17.c failed)

PR middle-end/44738
* tree-ssa.c (warn_uninit): Avoid emitting an unnecessary message.

PR middle-end/44738
* c-c++-common/uninit-17.c: Correct expected error.

From-SVN: r162372

14 years agore PR middle-end/45013 (Failed to build 483.xalancbmk in SPEC CPU 2006)
Richard Guenther [Wed, 21 Jul 2010 11:45:27 +0000 (11:45 +0000)]
re PR middle-end/45013 (Failed to build 483.xalancbmk in SPEC CPU 2006)

2010-07-21  Richard Guenther  <rguenther@suse.de>

PR middle-end/45013
* tree-ssa.c (useless_type_conversion_p): Dispatch to
gimple_types_compatible_p only when in lto.
* gimple.c (gimple_types_compatible_p): Use canonical types
to speed up comparison.

From-SVN: r162371

14 years agotree-flow.h (referenced_var): Move define ...
Richard Guenther [Wed, 21 Jul 2010 09:46:11 +0000 (09:46 +0000)]
tree-flow.h (referenced_var): Move define ...

2010-07-21  Richard Guenther  <rguenther@suse.de>

* tree-flow.h (referenced_var): Move define ...
* tree-flow-inline.h (referenced_var): ... here as an inline
function.  Assert here ...
* tree-dfa.c (referenced_var_lookup): ... instead of here.
* tree-ssa.c (maybe_optimize_var): Check if the variable
is in referenced vars.
(execute_update_addresses_taken): Remove old broken check.
* gimple-pretty-print.c (pp_points_to_solution): Use
referenced_var_lookup.
* tree-into-ssa.c (dump_decl_set): Likewise.

From-SVN: r162368

14 years agore PR debug/45003 (VTA issues with sign/zero extension and debug temporaries)
Jakub Jelinek [Wed, 21 Jul 2010 08:50:57 +0000 (10:50 +0200)]
re PR debug/45003 (VTA issues with sign/zero extension and debug temporaries)

PR debug/45003
* var-tracking.c (reverse_op): Also handle {SIGN,ZERO}_EXTEND of
a MEM.
* dwarf2out.c (loc_descriptor): Don't handle SIGN_EXTEND nor
ZERO_EXTEND here.

* gcc.dg/guality/pr45003-2.c: New test.
* gcc.dg/guality/pr45003-3.c: New test.

From-SVN: r162364

14 years ago* gcc.dg/guality/asm-1.c: New test.
Jakub Jelinek [Wed, 21 Jul 2010 08:12:36 +0000 (10:12 +0200)]
* gcc.dg/guality/asm-1.c: New test.

From-SVN: r162363

14 years agore PR fortran/44697 (I/O testsuite failures: \r\n vs \n - gfortran.dg/ftell_3.f90)
Jerry DeLisle [Wed, 21 Jul 2010 04:20:58 +0000 (04:20 +0000)]
re PR fortran/44697 (I/O testsuite failures: \r\n vs \n -  gfortran.dg/ftell_3.f90)

2010-07-20  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR libfortran/44697
* gfortran.dg/ftell_3.f90: Take care of cr-lf record endings.

From-SVN: r162362

14 years agoappendix_contributing.xml: Update for new reality.
Benjamin Kosnik [Wed, 21 Jul 2010 02:02:42 +0000 (02:02 +0000)]
appendix_contributing.xml: Update for new reality.

2010-07-19  Benjamin Kosnik  <bkoz@redhat.com>

* doc/xml/manual/appendix_contributing.xml: Update for new reality.
* doc/Makefile.am (doc-xml): New default rule for XML output.
(doc-xml-single-doxygen): Standardize output names.
* doc/Makefile.in: Regenerate.

* doc/doxygen/user.cfg.in: Tweak.

From-SVN: r162361

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

From-SVN: r162360

14 years ago* vxworks.c (vxworks_emutls_var_fields): Pass locus to build_decls.
Richard Henderson [Tue, 20 Jul 2010 23:09:58 +0000 (16:09 -0700)]
* vxworks.c (vxworks_emutls_var_fields): Pass locus to build_decls.

From-SVN: r162356

14 years agoarm.md (thumb1_addsi3): Add alternative and split for computing the sum of the stack...
Bernd Schmidt [Tue, 20 Jul 2010 20:50:44 +0000 (20:50 +0000)]
arm.md (thumb1_addsi3): Add alternative and split for computing the sum of the stack pointer and a...

* config/arm/arm.md (thumb1_addsi3): Add alternative and split for
computing the sum of the stack pointer and a large constant.
* config/arm/constraints.md (M): Remove superfluous parentheses.
(Pc): New constraint.

From-SVN: r162355

14 years agore PR c++/44641 (Generated constructors and destructors get wrong debug location...
Jeffrey Yasskin [Tue, 20 Jul 2010 20:16:53 +0000 (20:16 +0000)]
re PR c++/44641 (Generated constructors and destructors get wrong debug location when a typedef uses a forward declaration of the type before the definition)

PR c++/44641
        * gcc/cp/pt.c (instantiate_class_template): Propagate the
        template's location to its instance.

        * gcc/testsuite/lib/scanasm.exp (dg-function-on-line): Test
        that a function is defined on the current line.
        * gcc/testsuite/g++.dg/debug/dwarf2/lineno-simple1.C: New.
        Line number sanity test.
        * gcc/testsuite/g++.dg/debug/dwarf2/pr44641.C: New.

From-SVN: r162349

14 years agore PR debug/45006 (Failed to bootstrap)
Jakub Jelinek [Tue, 20 Jul 2010 18:57:14 +0000 (20:57 +0200)]
re PR debug/45006 (Failed to bootstrap)

PR debug/45006
* cfgexpand.c (expand_debug_expr): Only look at TYPE_UNSIGNED of
operand's type if exp is tcc_unary class tree.

From-SVN: r162348

14 years agoAdd myself to MAINTAINERS.
Jeffrey Yasskin [Tue, 20 Jul 2010 18:55:39 +0000 (18:55 +0000)]
Add myself to MAINTAINERS.

From-SVN: r162347

14 years agors6000.md (abs<mode>2_isel, [...]): Reverse sense of if_then_else condition.
Nathan Froyd [Tue, 20 Jul 2010 18:38:50 +0000 (18:38 +0000)]
rs6000.md (abs<mode>2_isel, [...]): Reverse sense of if_then_else condition.

* config/rs6000/rs6000.md (abs<mode>2_isel, nabs<mode>2_isel):
Reverse sense of if_then_else condition.

From-SVN: r162346

14 years agore PR c++/44967 ([C++0x] decltype of method call dependent on pack expansion crashes)
Jason Merrill [Tue, 20 Jul 2010 18:22:34 +0000 (14:22 -0400)]
re PR c++/44967 ([C++0x] decltype of method call dependent on pack expansion crashes)

PR c++/44967
* pt.c (tsubst_copy_and_build): Rework last change.

From-SVN: r162345

14 years agors6000.opt (mblock-move-inline-limit): New option.
Nathan Froyd [Tue, 20 Jul 2010 17:43:06 +0000 (17:43 +0000)]
rs6000.opt (mblock-move-inline-limit): New option.

gcc/
* config/rs6000/rs6000.opt (mblock-move-inline-limit): New option.
* config/rs6000/rs6000.c (rs6000_override_options): Set
rs6000_block_move_inline_limit appropriately.
(expand_block_move): Use rs6000_block_move_inline_limit.
* doc/invoke.texi (mblock-move-inline-limit): Document.

gcc/testsuite/
* gcc.target/powerpc/block-move-1.c: New test.
* gcc.target/powerpc/block-move-2.c: New test.

From-SVN: r162344

14 years agore PR c++/44967 ([C++0x] decltype of method call dependent on pack expansion crashes)
Jason Merrill [Tue, 20 Jul 2010 17:34:18 +0000 (13:34 -0400)]
re PR c++/44967 ([C++0x] decltype of method call dependent on pack expansion crashes)

PR c++/44967
* pt.c (tsubst_copy_and_build): Handle partial substitution of
CALL_EXPR.

From-SVN: r162343

14 years agopostreload.c (fixup_debug_insns): Remove arg REGNO.
Bernd Schmidt [Tue, 20 Jul 2010 15:33:35 +0000 (15:33 +0000)]
postreload.c (fixup_debug_insns): Remove arg REGNO.

* postreload.c (fixup_debug_insns): Remove arg REGNO.  New args
FROM and TO.  All callers changed.  Don't look for tracked uses,
just scan the RTL for DEBUG_INSNs and substitute.
(reload_combine_recognize_pattern): Call fixup_debug_insns.
(reload_combine): Ignore DEBUG_INSNs.

From-SVN: r162342

14 years agore PR lto/42696 (lto1 error with -fsigned-char and char comparison)
Richard Guenther [Tue, 20 Jul 2010 15:05:59 +0000 (15:05 +0000)]
re PR lto/42696 (lto1 error with -fsigned-char and char comparison)

2010-07-20  Richard Guenther  <rguenther@suse.de>

PR lto/42696
* gcc.dg/lto/20100720-4_0.c: New testcase.

From-SVN: r162341

14 years agore PR lto/43221 ([LTO] ICE in get_alias_set, at alias.c:717)
Richard Guenther [Tue, 20 Jul 2010 13:06:32 +0000 (13:06 +0000)]
re PR lto/43221 ([LTO] ICE in get_alias_set, at alias.c:717)

2010-07-20  Richard Guenther  <rguenther@suse.de>

PR lto/43221
* gcc.dg/lto/20100720-2_0.c: New testcase.
* gcc.dg/lto/20100720-2_1.c: Likewise.

From-SVN: r162339

14 years agore PR lto/43208 (lto1: error: invalid conversion in return statement)
Richard Guenther [Tue, 20 Jul 2010 13:03:10 +0000 (13:03 +0000)]
re PR lto/43208 (lto1: error: invalid conversion in return statement)

2010-07-20  Richard Guenther  <rguenther@suse.de>

PR lto/43208
* gcc.dg/lto/20100720-1_0.c: New testcase.
* gcc.dg/lto/20100720-1_1.c: Likewise.

From-SVN: r162338

14 years agovar-tracking.c (vt_expand_loc, [...]): Bump maximum depth to 8 from 5.
Jakub Jelinek [Tue, 20 Jul 2010 12:58:59 +0000 (14:58 +0200)]
var-tracking.c (vt_expand_loc, [...]): Bump maximum depth to 8 from 5.

* var-tracking.c (vt_expand_loc, vt_expand_loc_dummy): Bump maximum
depth to 8 from 5.

From-SVN: r162337

14 years agore PR debug/45003 (VTA issues with sign/zero extension and debug temporaries)
Jakub Jelinek [Tue, 20 Jul 2010 12:58:03 +0000 (14:58 +0200)]
re PR debug/45003 (VTA issues with sign/zero extension and debug temporaries)

PR debug/45003
* cfgexpand.c (expand_debug_expr) <case NOP_EXPR>: Use ZERO_EXTEND
or SIGN_EXTEND depending on TYPE_UNSIGNED of the operand's type
instead of the result's type.

* gcc.dg/guality/pr45003-1.c: New test.

From-SVN: r162336

14 years agore PR tree-optimization/44977 (ice in propagate_rhs_into_lhs, at tree-ssa-dom.c:2728)
Richard Guenther [Tue, 20 Jul 2010 12:41:20 +0000 (12:41 +0000)]
re PR tree-optimization/44977 (ice in propagate_rhs_into_lhs, at tree-ssa-dom.c:2728)

2010-07-20  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/44977
* tree-ssa-dom.c (propagate_rhs_into_lhs): Do not create invalid
SSA form.

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

From-SVN: r162334

14 years ago20090313_0.c: Use dg-require-effective-target sync_char_short
Bingfeng Mei [Tue, 20 Jul 2010 12:20:33 +0000 (12:20 +0000)]
20090313_0.c: Use dg-require-effective-target sync_char_short

2010-07-20  Bingfeng Mei  <bmei@broadcom.com>

* gcc.dg/lto/20090313_0.c: Use dg-require-effective-target
sync_char_short

From-SVN: r162331

14 years agolto-symtab.c (lto_symtab_merge): Use gimple_types_compatible_p.
Richard Guenther [Tue, 20 Jul 2010 12:05:59 +0000 (12:05 +0000)]
lto-symtab.c (lto_symtab_merge): Use gimple_types_compatible_p.

2010-07-20  Richard Guenther  <rguenther@suse.de>

* lto-symtab.c (lto_symtab_merge): Use gimple_types_compatible_p.
(lto_symtab_merge_decls_2): Likewise.
* gimple.h (gimple_types_compatible_p): Declare.
* gimple.c (gimple_queue_type_fixup): Remove.
(gimple_fixup_complete_and_incomplete_subtype_p): Likewise.
(gimple_compatible_complete_and_incomplete_type_p): New
function.
(gimple_types_compatible_p): Adjust.
(gimple_register_type): Remove type fixup code.
(print_gimple_types_stats): Adjust.
(free_gimple_type_tables): Likewise.
* lto-streamer-in.c (input_gimple_stmt): Use gimple_types_compatible_p.
* tree-ssa.c (useless_type_conversion_p): Likewise.

From-SVN: r162330

14 years agore PR debug/44971 (-fcompare-debug failure with uninitialized read in walk_gimple_stmt)
Richard Guenther [Tue, 20 Jul 2010 11:28:56 +0000 (11:28 +0000)]
re PR debug/44971 (-fcompare-debug failure with uninitialized read in walk_gimple_stmt)

2010-07-20  Richard Guenther  <rguenther@suse.de>

PR middle-end/44971
PR middle-end/44988
* tree-ssa.c (maybe_optimize_var): New function split out from ...
(execute_update_addresses_taken): ... here.
(non_rewritable_mem_ref_base): Likewise.
(execute_update_addresses_taken): Do not iterate over all referenced
vars but just all local decls and parms.
Properly check call and asm arguments and rewrite call arguments.

* gcc.dg/pr44971.c: New testcase.
* gcc.c-torture/compile/pr44988.c: Likewise.

From-SVN: r162329

14 years ago[multiple changes]
Paolo Carlini [Tue, 20 Jul 2010 09:44:01 +0000 (09:44 +0000)]
[multiple changes]

2010-07-20  Paolo Carlini  <paolo.carlini@oracle.com>

* libsupc++/unwind-cxx.h: Minor formatting / stylistic tweaks.

2010-07-20  Mikael Pettersson  <mikpe@it.uu.se>

PR libstdc++/44902
* libsupc++/unwind-cxx.h (__cxa_type_match): Correct prototype.
(__cxa_begin_cleanup): Likewise.

From-SVN: r162328

14 years agoMakefile.am (doc-texinfo): New rule.
Benjamin Kosnik [Tue, 20 Jul 2010 06:43:02 +0000 (06:43 +0000)]
Makefile.am (doc-texinfo): New rule.

2010-07-19  Benjamin Kosnik  <bkoz@redhat.com>

* doc/Makefile.am (doc-texinfo): New rule.
(doc-texinfo-docbook): New rule.
(DB2TEXI_FLAGS): New.
(doc-xml-single-docbook): Just the manual, not the set. Tweak flags.
* doc/Makefile.in: Regenerate.

From-SVN: r162327

14 years agore PR fortran/44929 ([OOP] Parsing error of derived type name starting with 'REAL')
Steven G. Kargl [Tue, 20 Jul 2010 04:01:32 +0000 (04:01 +0000)]
re PR fortran/44929 ([OOP] Parsing error of  derived type name starting with 'REAL')

2010-07-19  Steven G. Kargl  <kargl@gcc.gnu.org>

PR fortran/44929
* gfortran.dg/allocate_with_typespec.f90: New test.
* gfortran.dg/allocate_derived_1.f90: Update error message.

2010-07-19  Steven G. Kargl  <kargl@gcc.gnu.org>

PR fortran/44929
* fortran/match.c (match_type_spec): Check for derived type before
intrinsic types.

From-SVN: r162325

14 years agore PR c++/44996 ([C++0x] decltype produces rvalue reference type for parenthesized...
Jason Merrill [Tue, 20 Jul 2010 01:31:42 +0000 (21:31 -0400)]
re PR c++/44996 ([C++0x] decltype produces rvalue reference type for parenthesized id-expression)

PR c++/44996
* semantics.c (finish_decltype_type): Correct decltype
of parenthesized rvalue reference variable.

From-SVN: r162323

14 years agoDaily bump.
GCC Administrator [Tue, 20 Jul 2010 00:17:25 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r162322

14 years agoconfig.gcc (LIBC_GLIBC, [...]): Move constants to top level.
Maxim Kuvyrkov [Mon, 19 Jul 2010 20:05:46 +0000 (20:05 +0000)]
config.gcc (LIBC_GLIBC, [...]): Move constants to top level.

* config.gcc (LIBC_GLIBC, LIBC_UCLIBC, LIBC_BIONIC): Move constants
to top level.
* config/linux.h (LINUX_TARGET_OS_CPP_BUILTINS): Move Android-specific
definitions ...
* config/linux-android.h (ANDROID_TARGET_OS_CPP_BUILTINS): ... here.
New macro.
* config/arm/linux-eabi.h (TARGET_OS_CPP_BUILTINS): Use it.

From-SVN: r162315

14 years agogengtype.c (start_root_entry): New function, split out from write_root.
Richard Sandiford [Mon, 19 Jul 2010 19:38:42 +0000 (19:38 +0000)]
gengtype.c (start_root_entry): New function, split out from write_root.

gcc/
* gengtype.c (start_root_entry): New function, split out from
write_root.  Check whether V is null and raise an error if so.
(write_field_root): Check for V being null.  Don't raise an error here;
set V to null instead.
(write_root): Update comment above function.  Use start_root_entry.

From-SVN: r162314

14 years agore PR fortran/42385 ([OOP] poylmorphic operators do not work)
Paul Thomas [Mon, 19 Jul 2010 18:48:44 +0000 (18:48 +0000)]
re PR fortran/42385 ([OOP] poylmorphic operators do not work)

2010-07-19  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/42385
* interface.c (matching_typebound_op): Add argument for the
return of the generic name for the procedure.
(build_compcall_for_operator): Add an argument for the generic
name of an operator procedure and supply it to the expression.
(gfc_extend_expr, gfc_extend_assign): Use the generic name in
calls to the above procedures.
* resolve.c (resolve_typebound_function): Catch procedure
component calls for CLASS objects, check that the vtable is
complete and insert the $vptr and procedure components, to make
the call.
(resolve_typebound_function): The same.
* trans-decl.c (gfc_trans_deferred_vars): Do not deallocate
an allocatable scalar if it is a result.

2010-07-19  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/42385
* gfortran.dg/class_defined_operator_1.f03 : New test.

From-SVN: r162313

14 years agoslp-perm-1.c (main): Make sure loops aren't vectorized.
Peter Bergner [Mon, 19 Jul 2010 17:32:19 +0000 (12:32 -0500)]
slp-perm-1.c (main): Make sure loops aren't vectorized.

* gcc.dg/vect/slp-perm-1.c (main): Make sure loops aren't vectorized.
* gcc.dg/vect/slp-perm-2.c (main): Likewise.
* gcc.dg/vect/slp-perm-3.c (main): Likewise.  Fix loop limit.
* gcc.dg/vect/slp-perm-4.c (main): Fix loop limit.

From-SVN: r162311

14 years agoFix PR44932
Xinliang David Li [Mon, 19 Jul 2010 16:32:57 +0000 (16:32 +0000)]
Fix PR44932

From-SVN: r162310

14 years agore PR rtl-optimization/44941 (ICE: RTL check: expected code 'mem', have 'reg' in...
Richard Guenther [Mon, 19 Jul 2010 15:39:51 +0000 (15:39 +0000)]
re PR rtl-optimization/44941 (ICE: RTL check: expected code 'mem', have 'reg' in emit_block_move_hints, at expr.c:1189)

2010-07-19  Richard Guenther  <rguenther@suse.de>

PR middle-end/44941
* expr.c (emit_block_move_hints): Move zero size check first.
Move asserts to more useful places.
* calls.c (load_register_parameters): Check for zero size.

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

From-SVN: r162308

14 years agore PR c++/44969 ([C++0x] <type_traits> std::is_constructible broken for fundamental...
Jason Merrill [Mon, 19 Jul 2010 14:50:52 +0000 (10:50 -0400)]
re PR c++/44969 ([C++0x] <type_traits> std::is_constructible broken for fundamental types.)

PR c++/44969
* tree.c (cp_tree_equal): Compare type of *CAST_EXPR.
* pt.c (iterative_hash_template_arg): Hash type of *CAST_EXPR.

From-SVN: r162307

14 years agoReliably change cgraph_state to SSA form.
Richard Henderson [Mon, 19 Jul 2010 14:42:50 +0000 (07:42 -0700)]
Reliably change cgraph_state to SSA form.

From-SVN: r162306

14 years agoRemove gfortran.dg/data_implied_do_2.f90.
H.J. Lu [Mon, 19 Jul 2010 13:35:19 +0000 (06:35 -0700)]
Remove gfortran.dg/data_implied_do_2.f90.

2010-07-19  H.J. Lu  <hongjiu.lu@intel.com>

PR fortran/44353
* gfortran.dg/data_implied_do_2.f90: Removed.

From-SVN: r162305

14 years agore PR fortran/44953 (FAIL: gfortran.dg/char4_iunit_1.f03 * execution test)
Jerry DeLisle [Mon, 19 Jul 2010 13:11:54 +0000 (13:11 +0000)]
re PR fortran/44953 (FAIL: gfortran.dg/char4_iunit_1.f03  *  execution test)

2010-07-19  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR libfortran/44953
* io/unix.c (mem_alloc_w4): Return gfc_char4_t instead of char type
pointer. (mem_write4): Remove cast to gfc_char4_t.
* io/transfer.c (write_block): Use a gfc_char4_t pointer.
(memset4): New helper function. (next_record_w): Use new helper
function rather than sset for internal units.  Don't attempt to pad
with spaces if it is not needed.
* io/unix.h: Update prototype for mem_alloc_w4.
* io/write.c (memset4): Use gfc_char4_t pointer and chracter type.
Don't use multiply by 4 to compute offset. (memcpy4): Likewise.
(write_default_char4): Use a gfc_char4_t pointer and update memset4
and memcpy calls. (write_a): Likewise. (write_l): Likewise.
(write_boz): Likewise. (write_decimal): Likewise. (write_x): Likewise.
(write_char): Add support for character(kind=4) internal units that
was previously missed. (write_integer): Use a gfc_char4_t pointer and
update memset4 and memcpy calls. (write_character): Likewise.
(write_separator): Add support for character(kind=4) internal units
that was previously missed.
* write_float.def (output_float): Use a gfc_char4_t pointer and
update memset4 and memcpy calls. (write_infnan): Likewise.
(output_float_FMT_G_): Likewise.

From-SVN: r162304

14 years agore PR c++/44969 ([C++0x] <type_traits> std::is_constructible broken for fundamental...
Paolo Carlini [Mon, 19 Jul 2010 10:27:58 +0000 (10:27 +0000)]
re PR c++/44969 ([C++0x] <type_traits> std::is_constructible broken for fundamental types.)

/cp
2010-07-19  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/44969
* typeck.c (build_x_compound_expr_from_list): Add tsubst_flags_t
parameter.
* cp-tree.h: Adjust declaration.
* init.c (perform_member_init): Adjust caller.
* decl.c (grok_reference_init, cp_finish_decl): Likewise.
* typeck2.c (store_init_value): Likewise.
(build_functional_cast): Pass complain argument to
build_x_compound_expr_from_list.

/testsuite
2010-07-19  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/44969
* g++.dg/template/sfinae23.C: New.

From-SVN: r162303

14 years agopostreload.c (reload_combine_closest_single_use): Ignore the number of uses for DEBUG...
Bernd Schmidt [Mon, 19 Jul 2010 09:56:07 +0000 (09:56 +0000)]
postreload.c (reload_combine_closest_single_use): Ignore the number of uses for DEBUG_INSNs.

* postreload.c (reload_combine_closest_single_use): Ignore the
number of uses for DEBUG_INSNs.
(fixup_debug_insns): New static function.
(reload_combine_recognize_const_pattern): Use it.  Don't let the
main loop be affected by DEBUG_INSNs.
Really disallow moving adds past a jump insn.
(reload_combine_recognize_pattern): Don't update use_ruid here.
(reload_combine_note_use): Do it here.
(reload_combine): Use control_flow_insn_p rather than JUMP_P.

From-SVN: r162301

14 years agoddg.c (create_ddg): Exclude nodes of debug_insn in counting nodes of a loop.
Bingfeng Mei [Mon, 19 Jul 2010 09:18:14 +0000 (09:18 +0000)]
ddg.c (create_ddg): Exclude nodes of debug_insn in counting nodes of a loop.

2010-07-19  Bingfeng Mei  <bmei@broadcom.com>
* ddg.c (create_ddg): Exclude nodes of debug_insn in counting nodes
        of a loop.
        * loop-doloop.c (doloop_condition_get): Skip possible debug_insn.

From-SVN: r162300

14 years agoallow darwin branch island control depening on system version
Iain Sandoe [Mon, 19 Jul 2010 09:11:12 +0000 (09:11 +0000)]
allow darwin branch island control depening on system version

* config/i386/darwin.h: Define darwin_emit_branch_islands.
(TARGET_MACHO_BRANCH_ISLANDS): New.
(FUNCTION_PROFILER): Use TARGET_MACHO_BRANCH_ISLANDS.
* config/i386/i386.h (TARGET_MACHO_BRANCH_ISLANDS): Define a
default value.
* config/i386/i386.c (output_pic_addr_const): Do not emit
branch islands unless TARGET_MACHO_BRANCH_ISLANDS is set.
(x86_output_mi_thunk): Adjust symbol creation.
* config/rs6000/darwin.h: Define darwin_emit_branch_islands.
Remove out of date comment.
* config/rs6000/rs6000.c (print_operand): Adjust symbol.
DARWIN_LINKER_GENERATES_ISLANDS: Remove.
DARWIN_GENERATE_ISLANDS: Ditto.
(output_call):  Do not emit branch islands unless
darwin_emit_branch_islands is set.
* config/darwin.c: Declare darwin_emit_branch_islands.
(machopic_indirect_data_reference): Do not emit unless
darwin_emit_branch_islands is set.
(darwin_override_options): Set darwin_emit_branch_islands
where it is needed.
* config/darwin9.h
DARWIN_LINKER_GENERATES_ISLANDS: Remove.

From-SVN: r162299

14 years agosourcebuild.texi (Effective-Target Keywords): Document sse_runtime, sse2_runtime.
Rainer Orth [Mon, 19 Jul 2010 08:20:59 +0000 (08:20 +0000)]
sourcebuild.texi (Effective-Target Keywords): Document sse_runtime, sse2_runtime.

gcc:
* doc/sourcebuild.texi (Effective-Target Keywords): Document
sse_runtime, sse2_runtime.

gcc/testsuite:
* lib/target-supports.exp (check_sse_os_support_available): New
proc.
(check_sse_hw_available): New proc.
(check_effective_target_sse_runtime): New proc.
(check_effective_target_sse2_runtime): New proc.
* lib/fortran-torture.exp (get-fortran-torture-options): Only add
-msse2 if check_sse_os_support_available.
* g++.dg/vect/vect.exp: Only run -msse2 tests if
check_sse_os_support_available.
* gcc.dg/vect/vect.exp: Likewise.
* gfortran.dg/vect/vect.exp: Likewise.
* gcc.target/i386/sol2-check: Renamed to ...
* gcc.target/i386/sse-os-support.h: ... this.
(sol2_check): Renamed to ...
(sse_os_support): ... this.
Only test movss with xmm registers.
* gcc.target/i386/sse-check.h: Reflect new header and function names.
Removed ILL_INSN, ILL_INSN_LEN.
* gcc.target/i386/sse2-check.h: Likewise.
* gcc.target/i386/sse3-check.h: Likewise.
* gcc.dg/pr40550.c: Use dg-require-effective-target sse_runtime.
Removed cpuid.h, __get_cpuid test.
* g++.dg/other/i386-1.C: Use dg-require-effective-target sse2_runtime.
Removed cpuid.h, __get_cpuid test.
* g++.dg/other/pr40446.C: Likewise.
* gcc.dg/compat/union-m128-1_main.c: Likewise.
* gcc.dg/compat/vector-1a_main.c: Likewise.
* gcc.dg/compat/vector-2a_main.c: Likewise.
* gcc.dg/pr36584.c: Likewise.
* gcc.dg/pr37544.c: Likewise.
* gcc.dg/torture/pr16104-1.c: Likewise.
* gcc.dg/torture/stackalign/alloca-2.c: Likewise.
* gcc.dg/torture/stackalign/alloca-3.c: Likewise.
* gcc.dg/torture/stackalign/push-1.c: Likewise.
* gcc.dg/torture/stackalign/vararg-3.c: Likewise.
* gcc.dg/torture/pr35771.h: Removed cpuid.h, __get_cpuid test.
* gcc.dg/torture/pr35771-1.c: Use dg-require-effective-target
sse2_runtime.
* gcc.dg/torture/pr35771-2.c: Likewise.
* gcc.dg/torture/pr35771-3.c: Likewise.
* gcc.target/i386/pr39315-2.c: Likewise.
* gcc.target/i386/pr39315-4.c: Likewise.
* gcc.target/i386/vperm-v2df.c: Likewise.
* gcc.target/i386/vperm-v2di.c: Likewise.
* gcc.target/i386/vperm-v4si-1.c: Likewise.
* gcc.target/i386/vperm-v4sf-1.c: Use dg-require-effective-target
sse_runtime.

From-SVN: r162295

14 years agore PR fortran/44353 (rejects legal fortran)
Paul Thomas [Mon, 19 Jul 2010 05:05:23 +0000 (05:05 +0000)]
re PR fortran/44353 (rejects legal fortran)

2010-07-19  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/44353
* match.c (gfc_match_iterator): Revert.

2010-07-19  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/44353
* gfortran.dg/data_implied_do_2.f03 : Remove.

From-SVN: r162294

14 years agoDaily bump.
GCC Administrator [Mon, 19 Jul 2010 00:16:54 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r162291

14 years agore PR fortran/44353 (rejects legal fortran)
Paul Thomas [Sun, 18 Jul 2010 16:15:43 +0000 (16:15 +0000)]
re PR fortran/44353 (rejects legal fortran)

2010-07-18  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/44353
* match.c (gfc_match_iterator): Remove error that iterator
cannot be INTENT(IN).

2010-07-18  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/44353
* gfortran.dg/data_implied_do_2.f03 : New test.

From-SVN: r162286

14 years agocache-1.c: Allow 0 instead of 0x0.
Richard Sandiford [Sun, 18 Jul 2010 12:20:16 +0000 (12:20 +0000)]
cache-1.c: Allow 0 instead of 0x0.

gcc/testsuite/
* gcc.target/mips/cache-1.c: Allow 0 instead of 0x0.

From-SVN: r162285

14 years agomips.exp (mips_option_groups): Add -mflip-mips16 to the "mips16" group.
Richard Sandiford [Sun, 18 Jul 2010 12:16:36 +0000 (12:16 +0000)]
mips.exp (mips_option_groups): Add -mflip-mips16 to the "mips16" group.

gcc/testsuite/
* gcc.target/mips/mips.exp (mips_option_groups): Add -mflip-mips16
to the "mips16" group.
(mips_using_mips16_p): New procedure.
(mips-dg-options): Use it.

From-SVN: r162284

14 years agomips.c (mips16_build_call_stub): Zero-extend the low half of a single-register SCmode...
Richard Sandiford [Sun, 18 Jul 2010 12:14:26 +0000 (12:14 +0000)]
mips.c (mips16_build_call_stub): Zero-extend the low half of a single-register SCmode return value before ORing...

gcc/
* config/mips/mips.c (mips16_build_call_stub): Zero-extend the
low half of a single-register SCmode return value before ORing
it with the high half.
* config/mips/mips16.S (MERGE_GPRf): Likewise.

gcc/testsuite/
* gcc.target/mips/mips16-attributes-4.c: New test.

From-SVN: r162283

14 years agoDaily bump.
GCC Administrator [Sun, 18 Jul 2010 00:17:13 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r162282

14 years agore PR target/44805 (FAIL: gcc.c-torture/execute/builtins/strpcpy-2.c execution, at...
John David Anglin [Sat, 17 Jul 2010 22:51:34 +0000 (22:51 +0000)]
re PR target/44805 (FAIL: gcc.c-torture/execute/builtins/strpcpy-2.c execution, at -O1 and above)

PR target/44805
* config/pa/pa.h (CONSTANT_ALIGNMENT): Align strings to BITS_PER_WORD
on all targets.

From-SVN: r162278

14 years agore PR testsuite/44418 (FAIL: gcc.target/powerpc/recip-[123].c on powerpc-apple-darwin9)
Iain Sandoe [Sat, 17 Jul 2010 14:51:20 +0000 (14:51 +0000)]
re PR testsuite/44418 (FAIL: gcc.target/powerpc/recip-[123].c on powerpc-apple-darwin9)

PR testsuite/44418
* gcc.target/powerpc/recip-1.c: Do not run for powerpc*-apple-darwin*
* gcc.target/powerpc/recip-2.c: Ditto.
* gcc.target/powerpc/recip-3.c: Ditto.

From-SVN: r162277

14 years agotrans-array.c (gfc_free_ss): Don't free beyond ss rank.
Mikael Morin [Sat, 17 Jul 2010 09:57:19 +0000 (09:57 +0000)]
trans-array.c (gfc_free_ss): Don't free beyond ss rank.

2010-07-17  Mikael Morin  <mikael@gcc.gnu.org>

* trans-array.c (gfc_free_ss): Don't free beyond ss rank.
Access subscript through the "dim" field index.
(gfc_trans_create_temp_array): Access ss info through the "dim" field
index.
(gfc_conv_array_index_offset): Ditto.
(gfc_conv_loop_setup): Ditto.
(gfc_conv_expr_descriptor): Ditto.
(gfc_conv_ss_startstride): Ditto.  Update call to
gfc_conv_section_startstride.
(gfc_conv_section_startstride): Set values along the array dimension.
Get array dimension directly from the argument.

From-SVN: r162276

14 years agore PR target/44862 (bootstrap with --enable-build-with-cxx and --with-libiconv-prefi...
Jack Howarth [Sat, 17 Jul 2010 08:22:09 +0000 (08:22 +0000)]
re PR target/44862 (bootstrap  with --enable-build-with-cxx and --with-libiconv-prefix fails)

2010-07-17  Jack Howarth  <howarth@bromo.med.uc.edu>

PR target/44862
* Makefile.tpl (POSTSTAGE1_CXX_EXPORT):
Provide -B option to allow for link spec %s substitutions for
libstdc++.a on darwin.
* Makefile.in: Regenerate.

From-SVN: r162275

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

From-SVN: r162274

14 years agore PR target/42235 (redundant memory move from parameter space to spill space)
Bernd Schmidt [Fri, 16 Jul 2010 23:47:46 +0000 (23:47 +0000)]
re PR target/42235 (redundant memory move from parameter space to spill space)

PR target/42235
* postreload.c (reload_cse_move2add): Return bool, true if anything.
changed.  All callers changed.
(move2add_use_add2_insn): Likewise.
(move2add_use_add3_insn): Likewise.
(reload_cse_regs): If reload_cse_move2add changed anything, rerun
reload_combine.
(RELOAD_COMBINE_MAX_USES): Bump to 16.
(last_jump_ruid): New static variable.
(struct reg_use): New members CONTAINING_MEM and RUID.
(reg_state): New members ALL_OFFSETS_MATCH and REAL_STORE_RUID.
(reload_combine_split_one_ruid, reload_combine_split_ruids,
reload_combine_purge_insn_uses, reload_combine_closest_single_use
reload_combine_purge_reg_uses_after_ruid,
reload_combine_recognize_const_pattern): New static functions.
(reload_combine_recognize_pattern): Verify that ALL_OFFSETS_MATCH
is true for our reg and that we have available index regs.
(reload_combine_note_use): New args RUID and CONTAINING_MEM.  All
callers changed.  Use them to initialize fields in struct reg_use.
(reload_combine): Initialize last_jump_ruid.  Be careful when to
take PREV_INSN of the scanned insn.  Update REAL_STORE_RUID fields.
Call reload_combine_recognize_const_pattern.
(reload_combine_note_store): Update REAL_STORE_RUID field.

* gcc.target/arm/pr42235.c: New test.

From-SVN: r162270