platform/upstream/gcc.git
13 years agore PR c++/48446 (internal compiler error: in gimplify_var_or_parm_decl, at gimplify...
Jason Merrill [Thu, 14 Apr 2011 14:59:58 +0000 (10:59 -0400)]
re PR c++/48446 (internal compiler error: in gimplify_var_or_parm_decl, at gimplify.c:1946)

PR c++/48446
* decl.c (compute_array_index_type): Use get_temp_regvar instead
of variable_size.
* init.c (get_temp_regvar): No longer static.
* cp-tree.h: Declare it.

From-SVN: r172432

13 years agotree-ssa-dse.c (struct dse_global_data, [...]): Remove.
Richard Guenther [Thu, 14 Apr 2011 13:38:33 +0000 (13:38 +0000)]
tree-ssa-dse.c (struct dse_global_data, [...]): Remove.

2011-04-14  Richard Guenther  <rguenther@suse.de>

* tree-ssa-dse.c (struct dse_global_data, struct dse_block_local_data):
Remove.
(dse_initialize_block_local_data, dse_leave_block,
record_voperand_set, get_stmt_uid): Likewise.
(dse_possible_dead_store_p): Allow any kind of killing stmt.
(dse_optimize_stmt): Remove voperand set handling code.
Simplify and improve to handle any kind of killing stmt.
(dse_record_phi): Remove.
(dse_enter_block): Simplify.
(tree_ssa_dse): Likewise.
* tree-ssa-alias.c (stmt_kills_ref_p_1): Handle some builtins.

* gcc.dg/tree-ssa/ssa-dse-14.c: New testcase.

From-SVN: r172431

13 years agocgraph.c (dump_cgraph_node): Do not dump inline summaries.
Jan Hubicka [Thu, 14 Apr 2011 13:26:44 +0000 (15:26 +0200)]
cgraph.c (dump_cgraph_node): Do not dump inline summaries.

* cgraph.c (dump_cgraph_node): Do not dump inline summaries.
* cgraph.h (struct inline_summary): Move to ipa-inline.h
(cgraph_local_info): Remove inline_summary.
* ipa-cp.c: Include ipa-inline.h.
(ipcp_cloning_candidate_p, ipcp_estimate_growth,
ipcp_estimate_cloning_cost, ipcp_insert_stage): Use inline_summary
accesor.
* lto-cgraph.c (lto_output_node): Do not stream inline summary.
(input_overwrite_node): Do not set inline summary.
(input_node): Do not stream inline summary.
* ipa-inline.c (cgraph_decide_inlining): Dump inline summaries.
(cgraph_decide_inlining_incrementally): Do not try to estimate overall
growth; we do not have inline parameters computed for that anyway.
(cgraph_early_inlining): After inlining compute call_stmt_sizes.
* ipa-inline.h (struct inline_summary): Move here from ipa-inline.h
(inline_summary_t): New type and VECtor.
(debug_inline_summary, dump_inline_summaries): Declare.
(inline_summary): Use VOCtor.
(estimate_edge_growth): Kill hack computing call stmt size directly.
* lto-section-in.c (lto_section_name): Add inline section.
* ipa-inline-analysis.c: Include lto-streamer.h
(node_removal_hook_holder, node_duplication_hook_holder): New holders
(inline_node_removal_hook, inline_node_duplication_hook): New functions.
(inline_summary_vec): Define.
(inline_summary_alloc, dump_inline_summary, debug_inline_summary,
dump_inline_summaries): New functions.
(estimate_function_body_sizes): Properly compute size/time of outgoing calls.
(compute_inline_parameters): Alloc inline_summary; do not compute size/time
of incomming calls.
(estimate_edge_time): Avoid missing time summary hack.
(inline_read_summary): Read inline summary info.
(inline_write_summary): Write inline summary info.
(inline_free_summary): Free all hooks and inline summary vector.
* lto-streamer.h: Add LTO_section_inline_summary section.
* Makefile.in (ipa-cp.o, ipa-inline-analysis.o): Update dependencies.
* ipa.c (cgraph_remove_unreachable_nodes): Fix dump file formating.

* lto.c: Include ipa-inline.h
(add_cgraph_node_to_partition, undo_partition): Use inline_summary accessor.
(ipa_node_duplication_hook): Fix declaration.
* Make-lang.in (lto.o): Update dependencies.

From-SVN: r172430

13 years agotree-vectorizer.h (vect_strided_store_supported): Add a HOST_WIDE_INT argument.
Richard Sandiford [Thu, 14 Apr 2011 12:47:16 +0000 (12:47 +0000)]
tree-vectorizer.h (vect_strided_store_supported): Add a HOST_WIDE_INT argument.

gcc/
* tree-vectorizer.h (vect_strided_store_supported): Add a
HOST_WIDE_INT argument.
(vect_strided_load_supported): Likewise.
(vect_permute_store_chain): Return void.
(vect_transform_strided_load): Likewise.
(vect_permute_load_chain): Delete.
* tree-vect-data-refs.c (vect_strided_store_supported): Take a
count argument.  Check that the count is a power of two.
(vect_strided_load_supported): Likewise.
(vect_permute_store_chain): Return void.  Update after above changes.
Assert that the access is supported.
(vect_permute_load_chain): Likewise.
(vect_transform_strided_load): Return void.
* tree-vect-stmts.c (vectorizable_store): Update calls after
above interface changes.
(vectorizable_load): Likewise.
(vect_analyze_stmt): Don't check for strided powers of two here.

From-SVN: r172428

13 years agore PR middle-end/48590 (Alias analysis confused by builtin-stack-save/restore)
Richard Guenther [Thu, 14 Apr 2011 12:19:28 +0000 (12:19 +0000)]
re PR middle-end/48590 (Alias analysis confused by builtin-stack-save/restore)

2011-04-14  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/48590
* tree-ssa-alias.c (ref_maybe_used_by_call_p_1): Handle
BUILT_IN_ALLOCA, BUILT_IN_STACK_SAVE and BUILT_IN_STACK_RESTORE.
(call_may_clobber_ref_p_1): Handle BUILT_IN_ALLOCA and
BUILT_IN_STACK_SAVE.
* tree-ssa-dce.c (propagate_necessity): Handle
BUILT_IN_ALLOCA, BUILT_IN_STACK_SAVE and BUILT_IN_STACK_RESTORE.

From-SVN: r172427

13 years agoIn gcc/: 2011-04-14 Nicola Pero <nicola.pero@meta-innovation.com>
Nicola Pero [Thu, 14 Apr 2011 12:12:55 +0000 (12:12 +0000)]
In gcc/: 2011-04-14 Nicola Pero <nicola.pero@meta-innovation.com>

In gcc/:
2011-04-14  Nicola Pero  <nicola.pero@meta-innovation.com>

* c-parser.c (c_parser_objc_class_declaration): Updated call to
objc_declare_class.

In gcc/c-family/:
2011-04-14  Nicola Pero  <nicola.pero@meta-innovation.com>

* stub-objc.c (objc_declare_class): Updated argument name.

In gcc/cp/:
2011-04-14  Nicola Pero  <nicola.pero@meta-innovation.com>

* parser.c (cp_parser_objc_class_declaration): Updated for change
in objc_declare_class().

In gcc/objc/:
2011-04-14  Nicola Pero  <nicola.pero@meta-innovation.com>

* objc-act.c (objc_declare_class): Changed to take a single
identifier as argument instead of a tree list.  This means callers
don't have to build temporary tree lists to call this function.
(synth_module_prologue): Updated calls to objc_declare_class.

From-SVN: r172425

13 years agotree.h (get_object_alignment_1): Declare.
Richard Guenther [Thu, 14 Apr 2011 12:07:57 +0000 (12:07 +0000)]
tree.h (get_object_alignment_1): Declare.

2011-04-14  Richard Guenther  <rguenther@suse.de>

* tree.h (get_object_alignment_1): Declare.
* builtins.c (get_object_alignment_1): Split out worker from ...
(get_object_alignment): ... here.
* fold-const.c (get_pointer_modulus_and_residue): Use
get_object_alignment_1.

* gcc.dg/fold-bitand-4.c: Move ...
* c-c++-common/fold-bitand-4.c: ... here.  Adjust slightly.

From-SVN: r172424

13 years agotree-vectorizer.h (vect_create_data_ref_ptr): Add an extra type parameter.
Richard Sandiford [Thu, 14 Apr 2011 11:54:43 +0000 (11:54 +0000)]
tree-vectorizer.h (vect_create_data_ref_ptr): Add an extra type parameter.

gcc/
* tree-vectorizer.h (vect_create_data_ref_ptr): Add an extra
type parameter.
* tree-vect-data-refs.c (vect_create_data_ref_ptr): Add an aggr_type
parameter.  Generalise code to handle arrays as well as vectors.
(vect_setup_realignment): Update accordingly.
* tree-vect-stmts.c (vectorizable_store): Likewise.
(vectorizable_load): Likewise.

From-SVN: r172423

13 years agotree-vect-stmts.c (vectorizable_load): Allocate and free dr_chain within the per...
Richard Sandiford [Thu, 14 Apr 2011 11:54:30 +0000 (11:54 +0000)]
tree-vect-stmts.c (vectorizable_load): Allocate and free dr_chain within the per-copy loop.

gcc/
* tree-vect-stmts.c (vectorizable_load): Allocate and free dr_chain
within the per-copy loop.

From-SVN: r172422

13 years agoFix email attribution in last commits.
Richard Sandiford [Thu, 14 Apr 2011 11:54:11 +0000 (11:54 +0000)]
Fix email attribution in last commits.

From-SVN: r172421

13 years agotree-vect-stmts.c (vectorizable_load): Print the number of copies in the dump file.
Richard Sandiford [Thu, 14 Apr 2011 11:53:02 +0000 (11:53 +0000)]
tree-vect-stmts.c (vectorizable_load): Print the number of copies in the dump file.

gcc/
* tree-vect-stmts.c (vectorizable_load): Print the number of copies
in the dump file.

From-SVN: r172420

13 years agooptions.texi (Negative): Explicitly mention that the Negative chain must be circular.
Richard Sandiford [Thu, 14 Apr 2011 11:52:17 +0000 (11:52 +0000)]
options.texi (Negative): Explicitly mention that the Negative chain must be circular.

gcc/
* doc/options.texi (Negative): Explicitly mention that the
Negative chain must be circular.

From-SVN: r172419

13 years agoutils.c (gnat_poplevel): Use block_chainon.
Nathan Froyd [Thu, 14 Apr 2011 11:18:40 +0000 (11:18 +0000)]
utils.c (gnat_poplevel): Use block_chainon.

gcc/ada/
* gcc-interface/utils.c (gnat_poplevel): Use block_chainon.

gcc/
* function.h (block_chainon): Declare.
* function.c (block_chainon): Define.

gcc/cp/
* decl.c (poplevel): Use block_chainon.

gcc/fortran//
* f95-lang.c (poplevel): Use BLOCK_CHAIN and block_chainon.

gcc/java/
* decl.c (poplevel): Use BLOCK_CHAIN and block_chainon.

From-SVN: r172418

13 years agotrivial.c: Fix line endings.
Georg-Johann Lay [Thu, 14 Apr 2011 10:38:17 +0000 (10:38 +0000)]
trivial.c: Fix line endings.

* gcc.target/avr/trivial.c: Fix line endings. Make PROGMEM
variables const.
* gcc.target/avr/torture/trivial.c: Ditto.

From-SVN: r172417

13 years agoavr.c: ("insn-codes.h"...
Anatoly Sokolov [Thu, 14 Apr 2011 09:24:34 +0000 (13:24 +0400)]
avr.c: ("insn-codes.h"...

* config/avr/avr.c: ("insn-codes.h", "optabs.h", "langhooks.h"):
New Includes
(avr_init_builtins, avr_expand_builtin,
avr_expand_delay_cycles, avr_expand_unop_builtin,
avr_expand_binop_builtin ): New functions.
(avr_builtin_id): New enum
(struct avr_builtin_description): New struct
(bdesc_1arg, bdesc_2arg): New arrays describing some RTL builtins.
(TARGET_INIT_BUILTINS, TARGET_EXPAND_BUILTIN): Define.

* config/avr/avr.md (UNSPEC_FMUL, UNSPEC_FMULS, UNSPEC_FMULSU,
UNSPECV_ENABLE_IRQS, UNSPECV_NOP, UNSPECV_SLEEP, UNSPECV_WDR,
UNSPECV_DELAY_CYCLES): new enumeration values
(UNSPEC_SEI, UNSPEC_CLI): Remove enumeration values
("enable_interrupt"): Use UNSPECV_ENABLE_IRQS
("disable_interrupt"): Use UNSPECV_ENABLE_IRQS
("*rotlqi3_4"): rename insn to "rotlqi3_4"
("delay_cycles_1", "delay_cycles_2", "delay_cycles_3",
"delay_cycles_4", "nopv", "sleep", "wdr", "fmul", "fmuls",
"fmulsu"): New insns

* config/avr/avr-c.c: fix line endings
(avr_cpu_cpp_builtins): New builtin defines: __BUILTIN_AVR_NOP,
__BUILTIN_AVR_SEI, __BUILTIN_AVR_CLI, __BUILTIN_AVR_WDR,
__BUILTIN_AVR_SLEEP, __BUILTIN_AVR_SWAP,
__BUILTIN_AVR_DELAY_CYCLES, __BUILTIN_AVR_FMUL,
__BUILTIN_AVR_FMULS, __BUILTIN_AVR_FMULSU.

* doc/extend.texi (AVR Built-in Functions): New node
(Target Builtins): Add documentation of AVR
built-in functions.

Co-Authored-By: Eric Weddington <eric.weddington@atmel.com>
Co-Authored-By: Georg-Johann Lay <avr@gjlay.de>
From-SVN: r172416

13 years agore PR target/44643 ([avr] ICE in c-typeck.c)
Georg-Johann Lay [Thu, 14 Apr 2011 08:38:20 +0000 (08:38 +0000)]
re PR target/44643 ([avr] ICE in c-typeck.c)

PR target/44643
* config/avr/avr.c (avr_insert_attributes): Leave TREE_READONLY
alone. Error if non-const data has attribute progmem.

From-SVN: r172415

13 years agotree.h (struct tree_constructor): Include tree_typed instead of tree_common.
Nathan Froyd [Thu, 14 Apr 2011 01:38:07 +0000 (01:38 +0000)]
tree.h (struct tree_constructor): Include tree_typed instead of tree_common.

* tree.h (struct tree_constructor): Include tree_typed instead of
tree_common.
* tree.c (initialize_tree_contains_struct): Mark TS_CONSTRUCTOR as
TS_TYPED instead of TS_COMMON.

From-SVN: r172409

13 years agoDaily bump.
GCC Administrator [Thu, 14 Apr 2011 00:17:45 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r172408

13 years agosse.md (*sse2_uavgv16qi3): Merge with *avx_uavgv16qi3.
Uros Bizjak [Wed, 13 Apr 2011 23:43:52 +0000 (01:43 +0200)]
sse.md (*sse2_uavgv16qi3): Merge with *avx_uavgv16qi3.

* config/i386/sse.md (*sse2_uavgv16qi3): Merge with *avx_uavgv16qi3.
(*sse2_uavgv8hi3): Merge with *avx_uavgv8hi3.
(sse2_psadbw): Merge with *avx_psadbw.
(ssse3_phaddwv8hi3): Merge with *avx_phaddwv8hi3.
(ssse3_phadddv4si3): Merge with *avx_phadddv4si3.
(ssse3_phaddswv8hi3): Merge with *avx_phaddswv8hi3.
(ssse3_phsubwv8hi3): Merge with *avx_phsubwv8hi3.
(ssse3_phsubdv4si3): Merge with *avx_phsubdv4si3.
(ssse3_phsubswv8hi3): Merge with *avx_phsubswv8hi3.
(ssse3_pmaddubsw128): Merge with *avx_pmaddubsw128.
(*ssse3_pmulhrswv8hi3): Merge with *avx_pmulhrswv8hi3.
(ssse3_pshufbv16qi3): Merge with *avx_pshufbv16qi3.
(ssse3_psign<mode>3): Merge with *avx_psign<mode>3.
(ssse3_palignrti): Merge with *avx_palignrti.

From-SVN: r172403

13 years agoUse backend interface for go and defer statements.
Ian Lance Taylor [Wed, 13 Apr 2011 23:21:21 +0000 (23:21 +0000)]
Use backend interface for go and defer statements.

Change defer stack from tree to Expression.

From-SVN: r172402

13 years ago[multiple changes]
Paolo Carlini [Wed, 13 Apr 2011 22:52:45 +0000 (22:52 +0000)]
[multiple changes]

2011-04-13  Daniel Krugler  <daniel.kruegler@googlemail.com>
    Paolo Carlini  <paolo.carlini@oracle.com>

PR libstdc++/48526
* include/std/type_traits (struct is_constructible): Re-implement,
according to n3290.
(struct is_default_constructible): Add.
(struct is_destructible): Likewise.
(struct __and_, __or_, __not_): Add and use throughout; reorder some
facilities, other minor tweaks.
* testsuite/util/testsuite_tr1.h: Add test types.
* testsuite/20_util/is_constructible/value-2.cc: New.
* testsuite/20_util/is_default_constructible/value.cc: Likewise.
* testsuite/20_util/is_default_constructible/requirements/typedefs.cc:
Likewise.
* testsuite/20_util/is_default_constructible/requirements/
explicit_instantiation.cc: Likewise.
* testsuite/20_util/is_destructible/value.cc: Likewise.
* testsuite/20_util/is_destructible/requirements/typedefs.cc:
Likewise.
* testsuite/20_util/is_destructible/requirements/
explicit_instantiation.cc: Likewise.
* testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust
dg-error line numbers.
* testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
Likewise.
* testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
* testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Likewise.

2011-04-13  Paolo Carlini  <paolo.carlini@oracle.com>

* testsuite/20_util/is_function/value.cc: Add, adapted from the tr
testsuite.
* testsuite/20_util/is_function/requirements/typedefs.cc: Likewise.
* testsuite/20_util/is_function/requirements/
explicit_instantiation.cc: Likewise.
* testsuite/20_util/is_function/24808.cc: Likewise.
* testsuite/20_util/is_function/35637.cc: Likewise.
* testsuite/20_util/is_object/value.cc: Likewise.
* testsuite/20_util/is_object/requirements/typedefs.cc: Likewise.
* testsuite/20_util/is_object/requirements/explicit_instantiation.cc:
: Likewise.
* testsuite/20_util/is_object/24808.cc: Likewise.
* testsuite/20_util/is_compound/value.cc: Likewise.
* testsuite/20_util/is_compound/requirements/typedefs.cc: Likewise.
* testsuite/20_util/is_compound/requirements/
explicit_instantiation.cc: Likewise.
* testsuite/20_util/is_member_object_pointer/value.cc: Likewise.
* testsuite/20_util/is_member_object_pointer/requirements/
typedefs.cc: Likewise.
* testsuite/20_util/is_member_object_pointer/requirements/
explicit_instantiation.cc: Likewise.
* testsuite/20_util/is_fundamental/value.cc: Likewise.
* testsuite/20_util/is_fundamental/requirements/typedefs.cc: Likewise.
* testsuite/20_util/is_fundamental/requirements/
explicit_instantiation.cc: Likewise.
* testsuite/20_util/is_member_pointer/value.cc: Likewise.
* testsuite/20_util/is_member_pointer/requirements/typedefs.cc:
Likewise.
* testsuite/20_util/is_member_pointer/requirements/
explicit_instantiation.cc: Likewise.
* testsuite/20_util/is_member_function_pointer/value.cc: Likewise.
* testsuite/20_util/is_member_function_pointer/
requirements/typedefs.cc: Likewise.
* testsuite/20_util/is_member_function_pointer/requirements/
explicit_instantiation.cc: Likewise.

* testsuite/20_util/is_convertible/value.cc: Minor tweak, adjust
Copyright years.

From-SVN: r172401

13 years ago* sv.po: Update.
Joseph Myers [Wed, 13 Apr 2011 22:08:01 +0000 (23:08 +0100)]
* sv.po: Update.

From-SVN: r172398

13 years agoUnify handling of runtime support functions.
Ian Lance Taylor [Wed, 13 Apr 2011 21:00:59 +0000 (21:00 +0000)]
Unify handling of runtime support functions.

This introduces the new approach, and rewrites the lowering
code which uses runtime functions.  The code which calls
runtime functions at GENERIC conversion time is not yet
rewritten.

From-SVN: r172396

13 years agore PR c++/48594 (Rejects valid with pointer-to-member in template)
Jason Merrill [Wed, 13 Apr 2011 20:50:26 +0000 (16:50 -0400)]
re PR c++/48594 (Rejects valid with pointer-to-member in template)

PR c++/48594
* decl2.c (build_offset_ref_call_from_tree): Fix calling a functor
or pointer to (non-member) function.

From-SVN: r172394

13 years agotree-flow.h (struct gimple_df): Make free_ssanames a VEC.
Nathan Froyd [Wed, 13 Apr 2011 20:32:30 +0000 (20:32 +0000)]
tree-flow.h (struct gimple_df): Make free_ssanames a VEC.

* tree-flow.h (struct gimple_df): Make free_ssanames a VEC.
* tree-ssanames.c (fini_ssanames): VEC_free it.
(make_ssa_name_fn): Update for VECness of free_ssanames.
(release_ssa_name, release_dead_ssa_names): Likewise.
* tree.h (struct tree_ssa_name): Include tree_typed instead of
tree_common.
* tree.c (initialize_tree_contains_struct): Mark TS_SSA_NAME as
TS_TYPED instead of TS_COMMON.

From-SVN: r172393

13 years agopostreload-gcse.c (gcse_after_reload_main): Add calls to statistics_counter_event.
Nathan Froyd [Wed, 13 Apr 2011 19:39:02 +0000 (19:39 +0000)]
postreload-gcse.c (gcse_after_reload_main): Add calls to statistics_counter_event.

* postreload-gcse.c (gcse_after_reload_main): Add calls to
statistics_counter_event.
* tree-ssa-copyrename.c (stats): Define.
(rename_ssa_copies): Count coalesced SSA_NAMEs.  Add call to
statistics_counter_event.
* tree-ssa-math-opts.c (reciprocal_stats, sincos_stats): Define.
(bswap_stats, widen_mul_stats): Define.
(insert_reciprocals): Increment rdivs_inserted.
(execute_cse_reciprocals): Zeroize reciprocal_stats.  Increment
rfuncs_inserted.  Add calls to statistics_counter_event.
(execute_cse_sincos_1): Increment inserted.
(execute_cse_sincos): Zeroize sincos_stats.  Add call to
statistics_counter_event.
(execute_optimize_bswap): Zeroize bswap_stats.  Increment fields
of bswap_stats.  Add calls to statistics_counter_event.
(convert_mult_to_widen): Increment widen_mults_inserted.
(convert_plusminus_to_widen): Increment maccs_inserted.
(convert_mult_to_fma): Increment fmas_inserted.
(execute_optimize_widening_mul): Zeroize widen_mul_stats.  Add
calls to statistics_counter_event.

From-SVN: r172392

13 years agore PR rtl-optimization/48455 (Huge code size regression for all ARM configurations)
Vladimir Makarov [Wed, 13 Apr 2011 18:26:52 +0000 (18:26 +0000)]
re PR rtl-optimization/48455 (Huge code size regression for all ARM configurations)

2011-04-13  Vladimir Makarov  <vmakarov@redhat.com>

PR rtl-optimization/48455
* ira-costs.c (find_costs_and_classes): Use i_mem_cost instead of
`temp_costs->mem_cost'.

From-SVN: r172389

13 years agoipa-inline.h: New file.
Jan Hubicka [Wed, 13 Apr 2011 17:26:50 +0000 (19:26 +0200)]
ipa-inline.h: New file.

* ipa-inline.h: New file.
* ipa-inline-analysis.c: New file. Broken out of ...
* ipa-inline.c: ... this file; update toplevel comment;
include ipa-inline.h
(inline_summary): Move to ipa-inline.h
(cgraph_estimate_edge_time): Rename to estimate_edge_time; move to
ipa-inline-analysis.c.
(cgraph_estimate_time_after_inlining): Rename to estiamte_time_after_inlining;
move to ipa-inline-analysis.c
(cgraph_estimate_edge_growth): Move to ipa-inline-analysis.c; rename
to estimate_edge_growth.
(cgraph_estimate_size_after_inlining): Move to ipa-inline-analysis.c;
rename to estimate_size_after_inlining.
(cgraph_mark_inline_edge): Update for new naming convention.
(cgraph_check_inline_limits): Likewise.
(cgraph_edge_badness): Likewise.
(cgraph_decide_recursive_inlining): Likewise.
(cgraph_decide_inlining_of_small_functions): Likewise.
(cgraph_decide_inlining_incrementally): Likewise.
(cgraph_estimate_growth): Rename to estimate_growth; move to ipa-inline-analysis.c.
(eliminated_by_inlining_prob): Move to ipa-inline-analysis.c.
(estimate_function_body_sizes): Move to ipa-inline-analysis.c.
(compute_inline_parameters): Likewise.
(compute_inline_parameters_for_current): Likewise.
(pass_inline_parameters): Likewise.
(inline_indirect_intraprocedural_analysis): Likewise.
(analyze_function): Rename to inline_analyze_function; likewise.
(add_new_function): Move to ipa-inline-analysis.c.
(inline_generate_summary): Likewise.
(inline_read_summary): Likewise.
(inline_write_summary): Likewise.
* Makefile.in (ipa-inline-analysis.c): New file.

From-SVN: r172388

13 years agoconfigure.ac (gcc_cv_as_sparc_gotdata_op): Remove GNU ld check.
Rainer Orth [Wed, 13 Apr 2011 17:12:53 +0000 (17:12 +0000)]
configure.ac (gcc_cv_as_sparc_gotdata_op): Remove GNU ld check.

* configure.ac (gcc_cv_as_sparc_gotdata_op): Remove GNU ld check.
* configure: Regenerate.

From-SVN: r172387

13 years agotree.h (struct tree_int_cst, [...]): Include tree_typed instead of tree_common.
Nathan Froyd [Wed, 13 Apr 2011 17:04:36 +0000 (17:04 +0000)]
tree.h (struct tree_int_cst, [...]): Include tree_typed instead of tree_common.

* tree.h (struct tree_int_cst, struct real_value): Include tree_typed
instead of tree_common.
(struct tree_fixed_cst, struct tree_string, struct tree_complex):
Likewise.
* tree.c (initialize_tree_contains_struct): Mark such nodes as being
TS_TYPED rather than TS_COMMON.
* print-tree.c (print_node) [STRING_CST]: Don't print TREE_CHAIN.

From-SVN: r172386

13 years agoFix ChangeLog entry for PR target/45263
Georg-Johann Lay [Wed, 13 Apr 2011 16:46:29 +0000 (16:46 +0000)]
Fix ChangeLog entry for PR target/45263

From-SVN: r172385

13 years agore PR target/45263 (registers used in __do_global_ctors can get clobbered)
Georg-Johann Lay [Wed, 13 Apr 2011 16:36:50 +0000 (16:36 +0000)]
re PR target/45263 (registers used in __do_global_ctors can get clobbered)

PR target/45263
* config/avr/libgcc.S (__do_global_ctors, __do_global_dtors): Save
R20 around calls of __tablejump_elpm__

From-SVN: r172384

13 years agoMAINTAINERS (Write After Approval): Add myself.
Georg-Johann Lay [Wed, 13 Apr 2011 16:04:11 +0000 (16:04 +0000)]
MAINTAINERS (Write After Approval): Add myself.

2011-04-13  Georg-Johann Lay  <avr@gjlay.de>

* MAINTAINERS (Write After Approval): Add myself.

From-SVN: r172382

13 years agore PR middle-end/48591 (OpenMP ICE with atomics on __float128 in 32-bit only i686...
Jakub Jelinek [Wed, 13 Apr 2011 15:50:02 +0000 (17:50 +0200)]
re PR middle-end/48591 (OpenMP ICE with atomics on __float128 in 32-bit only i686 cc1)

PR middle-end/48591
* omp-low.c (expand_omp_atomic_fetch_op): Return false if decl is
NULL.
(expand_omp_atomic_pipeline): Return false if cmpxchg is NULL.

* gcc.dg/gomp/pr48591.c: New test.

* testsuite/libgomp.c/pr48591.c: New test.

From-SVN: r172379

13 years agore PR regression/48570 (wrong subscription with -std=c++0x)
Jakub Jelinek [Wed, 13 Apr 2011 15:38:50 +0000 (17:38 +0200)]
re PR regression/48570 (wrong subscription with -std=c++0x)

PR c++/48570
* semantics.c (cxx_eval_array_reference): Handle reading from
wchar_t, char16_t and char32_t STRING_CST.

* g++.dg/cpp0x/constexpr-wstring1.C: New test.
* g++.dg/cpp0x/constexpr-wstring2.C: New test.

From-SVN: r172377

13 years agore PR c++/48574 (ICE)
Dodji Seketeli [Wed, 13 Apr 2011 15:09:26 +0000 (15:09 +0000)]
re PR c++/48574 (ICE)

Fix PR c++/48574

gcc/cp/

* class.c (fixed_type_or_null): We cannot determine the dynamic
type of a reference variable if its initializer is dependent.

gcc/testsuite/

* g++.dg/template/dependent-expr7.C: New test case.

From-SVN: r172375

13 years agopt.c (tsubst_copy_and_build): Don't complain about unqualified lookup failing if...
Jason Merrill [Wed, 13 Apr 2011 14:34:05 +0000 (10:34 -0400)]
pt.c (tsubst_copy_and_build): Don't complain about unqualified lookup failing if we're still in a template.

* pt.c (tsubst_copy_and_build) [CALL_EXPR]: Don't complain about
unqualified lookup failing if we're still in a template.

From-SVN: r172372

13 years agodwarf2out.c (struct dw_cfi_struct): Remove member dw_cfi_next.
Bernd Schmidt [Wed, 13 Apr 2011 11:42:08 +0000 (11:42 +0000)]
dwarf2out.c (struct dw_cfi_struct): Remove member dw_cfi_next.

* dwarf2out.c (struct dw_cfi_struct): Remove member dw_cfi_next.
(dw_cfi_ref): Add DEF_VEC_P and some DEF_VEC_ALLOC_Ps.
(cfi_vec): New typedef.
(struct dw_fde_struct): Make dw_fde_cfi a cfi_vec. Replace
dw_fde_switch_cfi with an integer dw_fde_switch_cfi_index.
(cie_cfi_vec): New static variable.
(cie_cfi_head): Delete.
(add_cfi): Accept a cfi_vec * as first argument. All callers and
declaration changed. Use vector rather than list operations.
(new_cfi): Don't initialize the dw_cfi_next field.
(add_fde_cfi): Allocate cie_cfi_vec if necessary. Use vector
rather than list operations.
(lookup_cfa): Use vector rather than list operations.
(output_cfis): New argument upto. Accept a cfi_vec rather than
a dw_cfi_ref list head as argument. All callers changed.
Iterate over the vector using upto as a maximum index.
(output_all_cfis): New static function.
(output_fde): Use vector rather than list operations. Use the
new upto argument for output_cfis rather than manipulating a
list.
(dwarf2out_begin_prologue): Change initializations to match
new struct members.
(dwarf2out_switch_text_section): Initialize dw_fde_switch_cfi_index
from the vector length rather than searching for the end of a list.
Use output_all_cfis.
(convert_cfa_to_fb_loc_list): Use vector rather than list operations.

From-SVN: r172369

13 years agorx.md (movmemsi): Do not use this pattern when volatile pointers are involved.
Nick Clifton [Wed, 13 Apr 2011 11:31:55 +0000 (11:31 +0000)]
rx.md (movmemsi): Do not use this pattern when volatile pointers are involved.

* config/rx/rx.md (movmemsi): Do not use this pattern when
volatile pointers are involved.

From-SVN: r172368

13 years agosse2-init-v2di-2.c: Update scan pattern.
Uros Bizjak [Wed, 13 Apr 2011 10:27:40 +0000 (12:27 +0200)]
sse2-init-v2di-2.c: Update scan pattern.

* gcc.target/i386/sse2-init-v2di-2.c: Update scan pattern.

From-SVN: r172366

13 years agosse.md (pinsrbits): Remove.
Uros Bizjak [Wed, 13 Apr 2011 10:16:51 +0000 (12:16 +0200)]
sse.md (pinsrbits): Remove.

* config/i386/sse.md (pinsrbits): Remove.
(sse2_packsswb): Merge with *avx_packsswb.
(sse2_packssdw): Merge with *avx_packssdw.
(sse2_packuswb): Merge with *avx_packuswb.
(vec_interleave_highv16qi): Merge with *avx_interleave_highv16qi.
(vec_interleave_lowv16qi): Merge with *avx_interleave_lowv16qi.
(vec_interleave_highv8hi): Merge with *avx_interleave_highv8hi.
(vec_interleave_lowv8hi): Merge with *avx_interleave_lowv8hi.
(vec_interleave_highv4si): Merge with *avx_interleave_highv4si.
(vec_interleave_lowv4si): Merge with *avx_interleave_lowv4si.
(*sse4_1_pinsrb): Merge with *avx_pinsr<ssevecsize>.
(*sse2_pinsrw): Merge with *avx_pinsr<ssevecsize>.
(*sse4_1_pinsrd): Merge with *avx_pinsr<ssevecsize>.
(*sse4_1_pinsrq): Merge with *avx_pinsrq.
(sse2_loadld): Merge with *avx_loadld.
(*vec_extractv2di_1_rex64): Merge with *vec_extractv2di_1_rex64_avx.
(*vec_extractv2di_1_sse2): Merge with *vec_extractv2di_1_avx.
(*vec_concatv2si_sse4_1): Merge with *vec_concatv2si_avx.
(*vec_concatv2di_rex64_sse4_1): Merge with *vec_concatv2di_rex64_avx.
(vec_concatv2di): Merge with *vec_concatv2di_avx.

From-SVN: r172365

13 years agoFix minor formatting issues
Eric Botcazou [Wed, 13 Apr 2011 10:09:13 +0000 (10:09 +0000)]
Fix minor formatting issues

From-SVN: r172364

13 years agoIn gcc/objc/: 2011-04-13 Nicola Pero <nicola.pero@meta-innovation.com>
Nicola Pero [Wed, 13 Apr 2011 04:02:26 +0000 (04:02 +0000)]
In gcc/objc/: 2011-04-13 Nicola Pero <nicola.pero@meta-innovation.com>

In gcc/objc/:
2011-04-13  Nicola Pero  <nicola.pero@meta-innovation.com>

* objc-act.c (build_keyword_selector): Use get_identifier_with_length
instead of get_identifier.

From-SVN: r172360

13 years agoada-tree.h (union lang_tree_node): Check for TS_COMMON before calling TREE_CHAIN.
Nathan Froyd [Wed, 13 Apr 2011 03:09:53 +0000 (03:09 +0000)]
ada-tree.h (union lang_tree_node): Check for TS_COMMON before calling TREE_CHAIN.

gcc/ada/
* gcc-interface/ada-tree.h (union lang_tree_node): Check for
TS_COMMON before calling TREE_CHAIN.
* gcc-interface/misc.c (gnat_init_ts): New function.
(LANG_HOOKS_INIT_TS): Define.

gcc/
* c-decl.c (union lang_tree_node): Check for TS_COMMON before
calling TREE_CHAIN.
* print-tree.c (print_node): Likewise.
* tree-inline.c (copy_tree_r): Likewise.
* c-lang.c (LANG_HOOKS_INIT_TS): Define.
* lto-streamer-in.c (lto_input_tree_pointers): Check for TS_TYPED
instead of TS_COMMON.
* lto-streamer-out.c (lto_output_tree_pointers): Likewise.
* tree.c (initialize_tree_contains_struct): Handle TS_TYPED.
(copy_node_stat): Zero TREE_CHAIN only if necessary.
(MARK_TS_BASE, MARK_TS_TYPED, MARK_TS_COMMON): Move these...
(MARK_TS_DECL_COMMON, MARK_TS_DECL_COMMON, MARK_TS_DECL_WRTL):
...and these...
(MARK_TS_DECL_WITH_VIS, MARK_TS_DECL_NON_COMMON): ...and these...
* tree.h: ...here.
(TREE_CHAIN): Check for a TS_COMMON structure.
(TREE_TYPE): Check for a TS_TYPED structure.

gcc/c-family/
* c-common.h (c_common_init_ts): Declare.
* c-common.c (c_common_init_ts): Define.

gcc/cp/
* cp-lang.c (cp_init_ts): Call cp_common_init_ts.  Move
tree_contains_struct initialization to...
* cp-objcp-common.c (cp_common_init_ts): ...here.  Use MARK_*
macros.
* cp-objcp-common.h (cp_common_init_ts): Declare.
* cp-tree.h (union lang_tree_node): Check for TS_COMMON before
calling TREE_CHAIN.

gcc/fortran/
* f95-lang.c (union lang_tree_node): Check for TS_COMMON before
calling TREE_CHAIN.

gcc/go/
* go-lang.c (union lang_tree_node): Check for TS_COMMON before
calling TREE_CHAIN.

gcc/java/
* java-tree.h (union lang_tree_node): Check for TS_COMMON before
calling TREE_CHAIN.

gcc/lto/
* lto-tree.h (union lang_tree_node): Check for TS_COMMON before
calling TREE_CHAIN.
* lto.c (lto_fixup_common): Likewise.

gcc/objc/
* objc-lang.c (objc_init_ts): Move code for this function...
* objc-act.c (objc_common_init_ts): ...here. Define.
* objc-act.h (objc_common_init_ts): Declare.

gcc/objcp/
* objcp-lang.c (objcxx_init_ts): Call objc_common_init_ts and
cp_common_init_ts.

From-SVN: r172359

13 years agoDaily bump.
GCC Administrator [Wed, 13 Apr 2011 00:18:51 +0000 (00:18 +0000)]
Daily bump.

From-SVN: r172353

13 years agopr43698.c: Remove -march option.
Janis Johnson [Tue, 12 Apr 2011 22:47:54 +0000 (22:47 +0000)]
pr43698.c: Remove -march option.

For
2011-04-12  Janis Johnson  <janisjo@codesourcery.com>

* gcc.target/arm/pr43698.c: Remove -march option.

From-SVN: r172348

13 years agoFor Janis Johnson
Janis Johnson [Tue, 12 Apr 2011 22:43:22 +0000 (22:43 +0000)]
For Janis Johnson

2011-04-12  Janis Johnson  <janisjo@codesourcery.com>

* gcc.target/arm/sync-1.c: Limit to sync_int_long, do not use
-march option.

From-SVN: r172347

13 years agors6000.c (call_ABI_of_interest): Call cgraph_get_create_node instead of cgraph_node.
Pat Haugen [Tue, 12 Apr 2011 20:59:41 +0000 (20:59 +0000)]
rs6000.c (call_ABI_of_interest): Call cgraph_get_create_node instead of cgraph_node.

        * config/rs6000/rs6000.c (call_ABI_of_interest): Call
        cgraph_get_create_node instead of cgraph_node.

From-SVN: r172345

13 years agoCleanup memsize types
Janne Blomqvist [Tue, 12 Apr 2011 19:27:49 +0000 (22:27 +0300)]
Cleanup memsize types

From-SVN: r172340

13 years agore PR fortran/48360 (ICE on array assignment statement with allocatable LHS)
Paul Thomas [Tue, 12 Apr 2011 19:14:49 +0000 (19:14 +0000)]
re PR fortran/48360 (ICE on array assignment statement with allocatable LHS)

2011-04-12  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/48360
PR fortran/48456
* trans-array.c (get_std_lbound): For derived type variables
return array valued component lbound.

2011-04-12  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/48360
PR fortran/48456
* gfortran.dg/realloc_on_assign_6.f03: New test.

From-SVN: r172339

13 years agoIn gcc/: 2011-04-12 Nicola Pero <nicola.pero@meta-innovation.com>
Nicola Pero [Tue, 12 Apr 2011 19:02:14 +0000 (19:02 +0000)]
In gcc/: 2011-04-12 Nicola Pero <nicola.pero@meta-innovation.com>

In gcc/:
2011-04-12  Nicola Pero  <nicola.pero@meta-innovation.com>

* c-parser.c (c_parser_initelt): Updated call to
objc_build_message_expr.
(c_parser_postfix_expression): Likewise.

In gcc/c-family/:
2011-04-12  Nicola Pero  <nicola.pero@meta-innovation.com>

* c-objc.h (objc_build_message_expr): Updated prototype.
* stub-objc.c (objc_build_message_expr): Likewise.

In gcc/objc/:
2011-04-12  Nicola Pero  <nicola.pero@meta-innovation.com>

* objc-act.c (objc_build_message_expr): Accept two arguments
instead of one so that callers can simply pass the arguments
without having to create a temporary chain to hold them.

In gcc/cp/:
2011-04-12  Nicola Pero  <nicola.pero@meta-innovation.com>

* parser.c (cp_parser_objc_message_expression): Updated call
to objc_build_message_expr.

From-SVN: r172338

13 years agoIn gcc/objc/: 2011-04-12 Nicola Pero <nicola.pero@meta-innovation.com>
Nicola Pero [Tue, 12 Apr 2011 18:53:08 +0000 (18:53 +0000)]
In gcc/objc/: 2011-04-12 Nicola Pero <nicola.pero@meta-innovation.com>

In gcc/objc/:
2011-04-12  Nicola Pero  <nicola.pero@meta-innovation.com>

* objc-act.c (comp_proto_with_proto): Do not create and use
inefficient temporary argument lists.  Compare the arguments
directly.  (match_proto_with_proto): Removed; incorporated into
comp_proto_with_proto ().

From-SVN: r172337

13 years agoChangeLog gcc/
Kai Tietz [Tue, 12 Apr 2011 18:52:41 +0000 (20:52 +0200)]
ChangeLog gcc/

2011-04-12  Kai Tietz  <ktietz@redhat.com>

* config/i386/mingw32.h (TARGET_SUBTARGET_DEFAULT): Add
MASK_MS_BITFIELD_LAYOUT bit.

ChangeLog gcc/testsuite

2011-04-12  Kai Tietz  <ktietz@redhat.com>

* g++.dg/ext/bitfield2.C: Add for i?86/x86_64-*-mingw*
targets the additional -mno-ms-bitfields and
-Wno-packed-bitfield-compat options.
* g++.dg/ext/bitfield3.C: Likewise.
* g++.dg/ext/bitfield4.C: Likewise.
* g++.dg/ext/bitfield5.C: Likewise.
* gcc.dg/bitfld-15.c: Likewise.
* gcc.dg/bitfld-16.c: Likewise.
* gcc.dg/bitfld-17.c: Likewise.
* gcc.dg/bitfld-18.c: Likewise.

From-SVN: r172336

13 years agoCall cgraph_get_node rather than cgraph_node.
Ian Lance Taylor [Tue, 12 Apr 2011 18:51:12 +0000 (18:51 +0000)]
Call cgraph_get_node rather than cgraph_node.

This is for a recent change to the gcc middle-end.

From-SVN: r172335

13 years agoFixed my email address in a ChangeLog entry of a few months ago
Nicola Pero [Tue, 12 Apr 2011 18:35:47 +0000 (18:35 +0000)]
Fixed my email address in a ChangeLog entry of a few months ago

From-SVN: r172334

13 years agoRemove _GNU_SOURCE from AM_CPPFLAGS
Janne Blomqvist [Tue, 12 Apr 2011 18:10:28 +0000 (21:10 +0300)]
Remove _GNU_SOURCE from AM_CPPFLAGS

From-SVN: r172330

13 years agocombine.c (update_cfg_for_uncondjump): Instead of testing at_end assert it is always...
Jakub Jelinek [Tue, 12 Apr 2011 17:49:11 +0000 (19:49 +0200)]
combine.c (update_cfg_for_uncondjump): Instead of testing at_end assert it is always true.

* combine.c (update_cfg_for_uncondjump): Instead of testing at_end
assert it is always true.
(try_combine): Don't call update_cfg_for_uncondjump for noop non-jump
moves.

From-SVN: r172329

13 years agoIn gcc/objc/: 2011-04-12 Nicola Pero <nicola.pero@meta-innovation.com>
Nicola Pero [Tue, 12 Apr 2011 17:37:39 +0000 (17:37 +0000)]
In gcc/objc/: 2011-04-12 Nicola Pero <nicola.pero@meta-innovation.com>

In gcc/objc/:
2011-04-12  Nicola Pero  <nicola.pero@meta-innovation.com>

* objc-act.c (printable_ivar_name): New.
(add_instance_variable): Call printable_ivar_name() when an error
message needs to be printed.  Do not prepare the instance variable
for printing unless there is an actual error.

From-SVN: r172328

13 years agoIn gcc/: 2011-04-12 Nicola Pero <nicola.pero@meta-innovation.com>
Nicola Pero [Tue, 12 Apr 2011 16:45:40 +0000 (16:45 +0000)]
In gcc/: 2011-04-12 Nicola Pero <nicola.pero@meta-innovation.com>

In gcc/:
2011-04-12  Nicola Pero  <nicola.pero@meta-innovation.com>

* c-parser.c (c_lex_one_token): Rewritten conditional used when
compiling Objective-C to be more efficient.

In gcc/objc/:
2011-04-12  Nicola Pero  <nicola.pero@meta-innovation.com>

* objc-act.c (objc_is_class_name, objc_is_id): For efficiency,
avoid calling identifier_global_value() multiple times.

From-SVN: r172327

13 years agoopts-common.c (decode_cmdline_options_to_array): Remove variable argv_copied.
Axel Freyn [Tue, 12 Apr 2011 16:29:23 +0000 (16:29 +0000)]
opts-common.c (decode_cmdline_options_to_array): Remove variable argv_copied.

2011-04-12  Axel Freyn  <axel-freyn@gmx.de>

* opts-common.c (decode_cmdline_options_to_array): Remove variable
argv_copied.

From-SVN: r172325

13 years agoChangeLog: Add the mising change log for my previous commit.
Yufeng Zhang [Tue, 12 Apr 2011 16:19:10 +0000 (16:19 +0000)]
ChangeLog: Add the mising change log for my previous commit.

2011-04-12  Yufeng Zhang  <yufeng.zhang@arm.com>

* ChangeLog: Add the mising change log for my previous commit.

From-SVN: r172324

13 years agoMAINTAINERS (Write After Approval): Add myself.
Yufeng Zhang [Tue, 12 Apr 2011 16:03:39 +0000 (16:03 +0000)]
MAINTAINERS (Write After Approval): Add myself.

2011-04-12  Yufeng Zhang  <yufeng.zhang@arm.com>

* MAINTAINERS (Write After Approval): Add myself.

From-SVN: r172323

13 years ago* recog.h, genoutput.c, optabs.c: Revert last patch.
Richard Sandiford [Tue, 12 Apr 2011 14:56:57 +0000 (14:56 +0000)]
* recog.h, genoutput.c, optabs.c: Revert last patch.

From-SVN: r172321

13 years agore PR target/48090 (gcc 4.5.2 miscompilation when building on arm)
Ramana Radhakrishnan [Tue, 12 Apr 2011 13:42:48 +0000 (13:42 +0000)]
re PR target/48090 (gcc 4.5.2 miscompilation when building on arm)

Fix PR target/48090

2011-04-12  Ramana Radhakrishnan  <ramana.radhakrishnan@linaro.org>

       PR target/48090
       * config/arm/arm.md (*arm_negdi2): Fix early clobber constraints.

From-SVN: r172318

13 years agorecog.h (insn_operand_data): Add an "allows_mem" field.
Richard Sandiford [Tue, 12 Apr 2011 12:51:28 +0000 (12:51 +0000)]
recog.h (insn_operand_data): Add an "allows_mem" field.

gcc/
* recog.h (insn_operand_data): Add an "allows_mem" field.
* genoutput.c (output_operand_data): Initialize it.
* optabs.c (maybe_legitimize_operand_same_code): New function.
(maybe_legitimize_operand): Use it when matching the original
op->value.

From-SVN: r172316

13 years agogenpreds.c (process_define_predicate): Move most processing to gensupport.c.
Richard Sandiford [Tue, 12 Apr 2011 12:51:10 +0000 (12:51 +0000)]
genpreds.c (process_define_predicate): Move most processing to gensupport.c.

gcc/
* genpreds.c (process_define_predicate): Move most processing
to gensupport.c.  Continue to validate the expression.
* genrecog.c (did_you_mean_codes, compute_predicate_codes)
(process_define_predicate): Move processing to gensupport.c.
(main): Remove DEFINE_PREDICATE and DEFINE_SPECIAL_PREDICATE cases.
* gensupport.c (did_you_mean_codes): Moved from genrecog.c.
(compute_predicate_codes): Moved from genrecog.c.  Add lineno
argument.
(valid_predicate_name_p): New function, split out from old
genpreds.c:process_define_predicate.
(process_define_predicate): New function, combining code from
old genpreds.c and genrecog.c functions.
(process_rtx): Call it for DEFINE_PREDICATE and
DEFINE_SPECIAL_PREDICATE.

From-SVN: r172315

13 years agoarm.c (arm_print_operand): Use MEM_SIZE to get the size of a '%A' memory reference.
Richard Sandiford [Tue, 12 Apr 2011 12:19:38 +0000 (12:19 +0000)]
arm.c (arm_print_operand): Use MEM_SIZE to get the size of a '%A' memory reference.

gcc/
* config/arm/arm.c (arm_print_operand): Use MEM_SIZE to get the
size of a '%A' memory reference.
(T_DREG, T_QREG): New neon_builtin_type_bits.
(arm_init_neon_builtins): Assert that the load and store operands
are neon_struct_operands.
(locate_neon_builtin_icode): Provide the neon_builtin_type_bits.
(NEON_ARG_MEMORY): New builtin_arg.
(neon_dereference_pointer): New function.
(arm_expand_neon_args): Add a neon_builtin_type_bits argument.
Handle NEON_ARG_MEMORY.
(arm_expand_neon_builtin): Update after above interface changes.
Use NEON_ARG_MEMORY for loads and stores.
* config/arm/predicates.md (neon_struct_operand): New predicate.
* config/arm/iterators.md (V_two_elem): Tweak formatting.
(V_three_elem): Use BLKmode for accesses that have no associated mode.
(V_four_elem): Tweak formatting.
* config/arm/neon.md (neon_vld1<mode>, neon_vld1_dup<mode>)
(neon_vst1_lane<mode>, neon_vst1<mode>, neon_vld2<mode>)
(neon_vld2_lane<mode>, neon_vld2_dup<mode>, neon_vst2<mode>)
(neon_vst2_lane<mode>, neon_vld3<mode>, neon_vld3_lane<mode>)
(neon_vld3_dup<mode>, neon_vst3<mode>, neon_vst3_lane<mode>)
(neon_vld4<mode>, neon_vld4_lane<mode>, neon_vld4_dup<mode>)
(neon_vst4<mode>): Replace pointer operand with a memory operand.
Use %A in the output template.
(neon_vld3qa<mode>, neon_vld3qb<mode>, neon_vst3qa<mode>)
(neon_vst3qb<mode>, neon_vld4qa<mode>, neon_vld4qb<mode>)
(neon_vst4qa<mode>, neon_vst4qb<mode>): Likewise, but halve
the width of the memory access.  Remove post-increment.
* config/arm/neon-testgen.ml: Allow addresses to have an alignment.

gcc/testsuite/
* gcc.target/arm/neon-vld3-1.c: New test.
* gcc.target/arm/neon-vst3-1.c: New test.
* gcc.target/arm/neon/v*.c: Regenerate.

From-SVN: r172314

13 years agov850.c (expand_prologue): Do not use the CALLT instruction for interrupt handlers...
Nick Clifton [Tue, 12 Apr 2011 11:34:26 +0000 (11:34 +0000)]
v850.c (expand_prologue): Do not use the CALLT instruction for interrupt handlers if...

* config/v850/v850.c (expand_prologue): Do not use the CALLT
instruction for interrupt handlers if the target is the basic V850
architecture.
(expand_epilogue): Likewise.

From-SVN: r172313

13 years agore PR rtl-optimization/48549 (Combiner ICE with -g)
Jakub Jelinek [Tue, 12 Apr 2011 10:53:47 +0000 (12:53 +0200)]
re PR rtl-optimization/48549 (Combiner ICE with -g)

PR rtl-optimization/48549
* combine.c (propagate_for_debug): Also stop after BB_END of
this_basic_block.  Process LAST and just stop processing after it.
(combine_instructions): If last_combined_insn has been deleted,
set last_combined_insn to its PREV_INSN.

* g++.dg/opt/pr48549.C: New test.

From-SVN: r172311

13 years agore PR tree-optimization/46076 (constant propagation and compile-time math no longer...
Richard Guenther [Tue, 12 Apr 2011 10:44:15 +0000 (10:44 +0000)]
re PR tree-optimization/46076 (constant propagation and compile-time math no longer happening versus 4.4 and 4.5)

2011-04-12  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/46076
* gimple.h (struct gimple_statement_call): Add fntype field.
(gimple_call_fntype): Adjust.
(gimple_call_set_fntype): New function.
* gimple.c (gimple_build_call_1): Set the call function type.
* gimplify.c (gimplify_call_expr): Preserve the function
type the frontend used for the call.
(gimplify_modify_expr): Likewise.
* lto-streamer-in.c (input_gimple_stmt): Input the call stmts
function type.
* lto-streamer-out.c (output_gimple_stmt): Output the call stmts
function type.
* tree-ssa.c (useless_type_conversion_p): Function pointer
conversions are useless.

* gcc.dg/tree-ssa/pr46076.c: Un-XFAIL.

From-SVN: r172310

13 years agore PR libstdc++/48476 ([C++0x] conversion between std::tuple which have reference...
Takaya Saito [Tue, 12 Apr 2011 10:31:33 +0000 (10:31 +0000)]
re PR libstdc++/48476 ([C++0x] conversion between std::tuple which have reference member is rejected)

2011-04-12  Takaya Saito  <gintensubaru@gmail.com>

PR libstdc++/48476
* include/std/tuple (_Tuple_impl<>::_Tuple_impl(_Tuple_impl<>&&),
_Tuple_impl<>::operator=(_Tuple_impl&&), _Tuple_impl<>::operator=
(_Tuple_impl<>&&), tuple_cat): Use std::forward where appropriate.
* testsuite/20_util/tuple/cons/48476.cc: New.
* testsuite/20_util/tuple/48476.cc: Likewise.
* testsuite/20_util/tuple/creation_functions/48476.cc: Likewise.

From-SVN: r172309

13 years agoclass.c (cp_fold_obj_type_ref): Call cgraph_get_node instead of cgraph_get_create_node.
Martin Jambor [Tue, 12 Apr 2011 10:02:31 +0000 (12:02 +0200)]
class.c (cp_fold_obj_type_ref): Call cgraph_get_node instead of cgraph_get_create_node.

2011-04-12  Martin Jambor  <mjambor@suse.cz>

gcc/cp/
* class.c (cp_fold_obj_type_ref): Call cgraph_get_node instead of
cgraph_get_create_node.
* decl2.c (cp_write_global_declarations): Call cgraph_get_node
instead of cgraph_get_create_node.
* method.c (make_alias_for_thunk): Call cgraph_get_node
instead of cgraph_get_create_node, assert it returns non-NULL.
(use_thunk): Likewise.
* optimize.c (maybe_clone_body): Call cgraph_same_body_alias only
when flag_syntax_only is not set.  Call cgraph_get_node instead of
cgraph_get_create_node.
(maybe_clone_body): Call cgraph_get_node instead of
cgraph_get_create_node.

From-SVN: r172308

13 years agocgraph.h (cgraph_node): Remove function declaration.
Martin Jambor [Tue, 12 Apr 2011 09:27:18 +0000 (11:27 +0200)]
cgraph.h (cgraph_node): Remove function declaration.

2011-04-12  Martin Jambor  <mjambor@suse.cz>

* cgraph.h (cgraph_node): Remove function declaration.
(cgraph_create_node): Declare.
(cgraph_get_create_node): Likewise.
* cgraph.c (cgraph_create_node): Renamed to cgraph_create_node_1.
Updated all callers.
(cgraph_node): Renamed to cgraph_create_node, assert that a node for
the decl does not already exist.  Call cgraph_get_create_node instead
of cgraph_node.
(cgraph_get_create_node): New function.
(cgraph_same_body_alias): Update comment.
(cgraph_set_call_stmt): Call cgraph_get_node instead of cgraph_node,
assert it does not return NULL.
(cgraph_update_edges_for_call_stmt): Likewise.
(cgraph_clone_edge): Likewise.
(cgraph_create_virtual_clone): Likewise.
(cgraph_update_edges_for_call_stmt_node): Call cgraph_get_create_node
instead of cgraph_node.
(cgraph_add_new_function): Call cgraph_create_node or
cgraph_get_create_node instead of cgraph_node.
* cgraphbuild.c (record_reference): Call cgraph_get_create_node
instead of cgraph_node.
(record_eh_tables): Likewise.
(mark_address): Likewise.
(mark_load): Likewise.
(build_cgraph_edges): Call cgraph_get_create_node instead
of cgraph_node.
(rebuild_cgraph_edges): Likewise.
* cgraphunit.c (cgraph_finalize_function): Call cgraph_get_create_node
instead of cgraph_node.
(cgraph_copy_node_for_versioning): Call cgraph_create_node instead of
cgraph_node.
* lto-symtab.c (lto_symtab_merge_cgraph_nodes_1): Call
cgraph_create_node instead of cgraph_node.
* c-decl.c (finish_function): Call cgraph_get_create_node instead
of cgraph_node.
* lto-cgraph.c (input_node): Likewise.
* lto-streamer-in.c (input_function): Likewise.
* varasm.c (mark_decl_referenced): Likewise.
(assemble_alias): Likewise.

gcc/c-family/
* c-gimplify.c (c_genericize): Call cgraph_get_create_node instead
of cgraph_node.

gcc/cp/
* cp/class.c (cp_fold_obj_type_ref): Call cgraph_get_create_node
instead of cgraph_node.
* cp/decl2.c (cxx_callgraph_analyze_expr): Likewise.
(cp_write_global_declarations): Likewise.
* cp/optimize.c (maybe_clone_body): Likewise.
* cp/semantics.c (maybe_add_lambda_conv_op): Likewise.
* cp/mangle.c (mangle_decl): Likewise.
* cp/method.c (make_alias_for_thunk): Likewise.
(use_thunk): Likewise.

gcc/ada/
* gcc-interface/utils.c (end_subprog_body): Call
cgraph_get_create_node instead of cgraph_node.

gcc/fortran/
* trans-decl.c (gfc_generate_function_code): Call
cgraph_get_create_node instead of cgraph_node.

gcc/objc/
* objc-act.c (mark_referenced_methods): Call cgraph_get_create_node
instead of cgraph_node.

From-SVN: r172307

13 years agotree-inline.c (tree_function_versioning): Call cgraph_get_node instead of cgraph_node...
Martin Jambor [Tue, 12 Apr 2011 09:12:58 +0000 (11:12 +0200)]
tree-inline.c (tree_function_versioning): Call cgraph_get_node instead of cgraph_node and assert it does not return NULL.

2011-04-12  Martin Jambor  <mjambor@suse.cz>

* tree-inline.c (tree_function_versioning): Call cgraph_get_node
instead of cgraph_node and assert it does not return NULL.
* lto-streamer-in.c (lto_read_body): Likewise.
* omp-low.c (new_omp_context): Likewise.
(create_task_copyfn): Likewise.
* tree-emutls.c (lower_emutls_function_body): Likewise.
* matrix-reorg.c (transform_allocation_sites): Likewise.

From-SVN: r172306

13 years agore PR libstdc++/48566 (libstdc++-v3 testsuite failures due to missing includes)
Paolo Carlini [Tue, 12 Apr 2011 09:05:30 +0000 (09:05 +0000)]
re PR libstdc++/48566 (libstdc++-v3 testsuite failures due to missing includes)

2011-04-12  Allan McRae  <allan@archlinux.org>

PR libstdc++/48566
* testsuite/tr1/6_containers/unordered_map/requirements/
iterator_null_neg.cc: Include <cstddef>.
* testsuite/tr1/6_containers/unordered_set/requirements/
iterator_null_neg.cc: Likewise.
* testsuite/27_io/basic_filebuf/seekoff/wchar_t/4.cc: Include
<cstring>.
* testsuite/util/testsuite_common_types.h: Include <limits>.
* testsuite/29_atomics/atomic_integral/cons/assign_neg.cc:
Adjust dg-error line numbers.
* testsuite/29_atomics/atomic_integral/cons/copy_neg.cc: Likewise.
* testsuite/29_atomics/atomic_integral/operators/increment_neg.cc:
Likewise.
* testsuite/29_atomics/atomic_integral/operators/bitwise_neg.cc:
Likewise.
* testsuite/29_atomics/atomic_integral/operators/decrement_neg.cc:
Likewise.
* testsuite/29_atomics/atomic/cons/assign_neg.cc: Likewise.
* testsuite/29_atomics/atomic/cons/copy_neg.cc: Likewise.

From-SVN: r172303

13 years agore PR testsuite/21164 (libjava tests uses absolute paths)
Rainer Orth [Tue, 12 Apr 2011 09:04:05 +0000 (09:04 +0000)]
re PR testsuite/21164 (libjava tests uses absolute paths)

libjava:
PR testsuite/21164
* testsuite/lib/libjava.exp: Load dg.exp.
* testsuite/libjava.jar/jar.exp (gcj_jar_interpret): Strip srcdir
from jarfile.
Use result for messages.
* testsuite/libjava.loader/loader.exp (gcj_loader_test_one): Pass
errname to libjava_invoke, fix testname.

gcc:
PR testsuite/21164
* lib/compat.exp (compat-execute): Declare unsupported after
stripping path from src1.
* lib/lto.exp (lto-execute): Likewise.

From-SVN: r172302

13 years agore PR c/48517 (ICE in build_unary_op, at c-typeck.c:3786)
Jakub Jelinek [Tue, 12 Apr 2011 06:43:12 +0000 (08:43 +0200)]
re PR c/48517 (ICE in build_unary_op, at c-typeck.c:3786)

PR c/48517
* c-typeck.c (store_init_value): Set TREE_TYPE (decl) to
qualified type.

* gcc.c-torture/compile/pr48517.c: New test.

From-SVN: r172299

13 years agore PR c/48552 (ICE with void type expressions in asm inputs/outputs)
Jakub Jelinek [Tue, 12 Apr 2011 06:27:23 +0000 (08:27 +0200)]
re PR c/48552 (ICE with void type expressions in asm inputs/outputs)

PR c/48552
* c-typeck.c (build_asm_expr): Error out on attempts to use
void type outputs or inputs for constraints that allow reg or
don't allow memory.

* gcc.dg/pr48552-1.c: New test.
* gcc.dg/pr48552-2.c: New test.

From-SVN: r172298

13 years agore PR target/48250 (ICE in reload_cse_simplify_operands, at postreload.c:403)
Chung-Lin Tang [Tue, 12 Apr 2011 04:42:55 +0000 (04:42 +0000)]
re PR target/48250 (ICE in reload_cse_simplify_operands, at postreload.c:403)

2011-04-11  Chung-Lin Tang  <cltang@codesourcery.com>
    Richard Earnshaw  <rearnsha@arm.com>

PR target/48250
* config/arm/arm.c (arm_legitimize_reload_address): Update cases
to use sign-magnitude offsets. Reject unsupported unaligned
cases. Add detailed description in comments.
* config/arm/arm.md (reload_outdf): Disable for ARM mode; change
condition from TARGET_32BIT to TARGET_ARM.

Co-Authored-By: Richard Earnshaw <rearnsha@arm.com>
From-SVN: r172297

13 years agotree.h (struct typed_tree): New.
Nathan Froyd [Tue, 12 Apr 2011 02:18:41 +0000 (02:18 +0000)]
tree.h (struct typed_tree): New.

* tree.h (struct typed_tree): New.
(struct tree_common): Include it instead of tree_base.
(TREE_TYPE): Update for new location of type field.
(TYPE_USER_ALIGN, TYPE_PACKED): Refer to base field directly.
(DECL_USER_ALIGN, DECL_PACKED): Likewise.
(union tree_node): Add typed field.
* treestruct.def (TS_TYPED): New.
* lto-streamer.c (check_handled_ts_structures): Handle it.
* tree.c (MARK_TS_TYPED): New macro.
(MARK_TS_COMMON): Call it instead of MARK_TS_BASE.

From-SVN: r172295

13 years agoDaily bump.
GCC Administrator [Tue, 12 Apr 2011 00:18:57 +0000 (00:18 +0000)]
Daily bump.

From-SVN: r172292

13 years agore PR c++/48535 ([C++0x][SFINAE] Hard errors during list-value-initialization)
Jason Merrill [Mon, 11 Apr 2011 22:01:04 +0000 (18:01 -0400)]
re PR c++/48535 ([C++0x][SFINAE] Hard errors during list-value-initialization)

PR c++/48535
* decl.c (cp_complete_array_type_or_error): New.
* semantics.c (finish_compound_literal): Use it.
* cp-tree.h: Declare it.

From-SVN: r172287

13 years agore PR c++/48535 ([C++0x][SFINAE] Hard errors during list-value-initialization)
Jason Merrill [Mon, 11 Apr 2011 22:00:53 +0000 (18:00 -0400)]
re PR c++/48535 ([C++0x][SFINAE] Hard errors during list-value-initialization)

PR c++/48535
* semantics.c (finish_compound_literal): Handle references.

From-SVN: r172286

13 years agore PR c++/48535 ([C++0x][SFINAE] Hard errors during list-value-initialization)
Jason Merrill [Mon, 11 Apr 2011 22:00:42 +0000 (18:00 -0400)]
re PR c++/48535 ([C++0x][SFINAE] Hard errors during list-value-initialization)

PR c++/48535
* semantics.c (finish_compound_literal): Take complain parm.
(build_lambda_object): Adjust.
* cp-tree.h: Adjust.
* call.c (convert_like_real): Adjust.
* decl.c (check_initializer): Adjust.
* parser.c (cp_parser_postfix_expression): Adjust.
(cp_parser_functional_cast): Adjust.
* pt.c (tsubst_copy_and_build): Adjust.
* typeck2.c (process_init_constructor_record): Adjust.

From-SVN: r172285

13 years agore PR c++/48534 ([C++0x][SFINAE] Compiler break down on explicit scoped enum => bool...
Jason Merrill [Mon, 11 Apr 2011 22:00:31 +0000 (18:00 -0400)]
re PR c++/48534 ([C++0x][SFINAE] Compiler break down on explicit scoped enum => bool conversion)

PR c++/48534
* cvt.c (ocp_convert): Use build_nop to convert to underlying type
of scoped enum.

From-SVN: r172284

13 years agore PR c++/48523 ([C++0x] lambda cannot capture 'this' in class template)
Jason Merrill [Mon, 11 Apr 2011 22:00:20 +0000 (18:00 -0400)]
re PR c++/48523 ([C++0x] lambda cannot capture 'this' in class template)

PR c++/48523
* tree.c (maybe_dummy_object): Use build_x_indirect_ref rather
than cp_build_indirect_ref.

From-SVN: r172283

13 years agoPR c++/48457, Core 1238
Jason Merrill [Mon, 11 Apr 2011 22:00:06 +0000 (18:00 -0400)]
PR c++/48457, Core 1238

PR c++/48457, Core 1238
* call.c (reference_binding): Allow rvalue reference to bind to
function lvalue.
* tree.c (lvalue_kind): Functions are always lvalues.

From-SVN: r172282

13 years agocfghooks.c (redirect_edge_and_branch_force): Localize variable.
Eric Botcazou [Mon, 11 Apr 2011 21:54:59 +0000 (21:54 +0000)]
cfghooks.c (redirect_edge_and_branch_force): Localize variable.

* cfghooks.c (redirect_edge_and_branch_force): Localize variable.
(force_nonfallthru): Do not alter the loop nest if no basic block
was created.

From-SVN: r172281

13 years agosse.md (VI): New mode iterator.
Uros Bizjak [Mon, 11 Apr 2011 21:39:40 +0000 (23:39 +0200)]
sse.md (VI): New mode iterator.

* config/i386/sse.md (VI): New mode iterator.
(SSEMODEI): Remove.
(AVX256MODEI): Ditto.
(AVXMODEF4P): Ditto.
(avxvecpsmode): Ditto.
(one_cmpl<mode>2): Enable for TARGET_SSE.  Use VI mode iterator.
(sse2_andnot<mode>3): New expander.
(*andnot<mode>3): Merge with *sse2_andnot<mode>3 and
*avx_andnot<mode>3.  Enable for TARGET_SSE.  Use VI mode iterator.
(<any_logic:code><mode>3): Use VI mode iterator.
(*<any_logic:code><mode>3): Merge with *sse2_<any_logic:code><mode>3
and *avx_<any_logic:code><mode>3.  Use VI mode iterator.
(*andnottf3): Handle AVX three-operand constraints.
(*<any_logic:code>tf3): Handle AVX three-operand constraints.

From-SVN: r172280

13 years agoconfig.gcc (x86_64-*-kfreebsd*-gnu): Use i386/kfreebsd-gnu.h.
Joseph Myers [Mon, 11 Apr 2011 21:22:36 +0000 (22:22 +0100)]
config.gcc (x86_64-*-kfreebsd*-gnu): Use i386/kfreebsd-gnu.h.

2011-04-11  Joseph Myers  <joseph@codesourcery.com>
            Robert Millan  <rmh@gnu.org>

* config.gcc (x86_64-*-kfreebsd*-gnu): Use i386/kfreebsd-gnu.h.
* config/i386/kfreebsd-gnu.h (GNU_USER_DYNAMIC_LINKER32,
GNU_USER_DYNAMIC_LINKER64): Define.
(REG_NAME): Don't undefine.
(MD_UNWIND_SUPPORT): Undefine.
* config/i386/knetbsd-gnu.h (GNU_USER_LINK_EMULATION): Define.
(REG_NAME): Don't undefine.
(MD_UNWIND_SUPPORT): Undefine.
* config/i386/kopensolaris-gnu.h (GNU_USER_LINK_EMULATION):
Define.

Co-Authored-By: Robert Millan <rmh@gnu.org>
From-SVN: r172279

13 years agognu.h (GNU_USER_LINK_EMULATION): Define.
Joseph Myers [Mon, 11 Apr 2011 21:21:49 +0000 (22:21 +0100)]
gnu.h (GNU_USER_LINK_EMULATION): Define.

* config/i386/gnu.h (GNU_USER_LINK_EMULATION): Define.
(CPP_SPEC, CC1_SPEC, ENDFILE_SPEC): Remove.

From-SVN: r172278

13 years agosanity check ic target
Xinliang David Li [Mon, 11 Apr 2011 20:37:57 +0000 (20:37 +0000)]
sanity check ic target

From-SVN: r172276

13 years agoMakefile.in (PLUGIN_HEADERS): Add gimple-pretty-print.h tree-pretty-print.h & realmpfr.h.
Basile Starynkevitch [Mon, 11 Apr 2011 19:31:50 +0000 (19:31 +0000)]
Makefile.in (PLUGIN_HEADERS): Add gimple-pretty-print.h tree-pretty-print.h & realmpfr.h.

2011-04-11  Basile Starynkevitch  <basile@starynkevitch.net>

* Makefile.in (PLUGIN_HEADERS): Add gimple-pretty-print.h
tree-pretty-print.h & realmpfr.h.

From-SVN: r172275

13 years agore PR middle-end/48464 (@171649: ICE in setup_pressure_classes, at ira.c:877)
Vladimir Makarov [Mon, 11 Apr 2011 19:23:13 +0000 (19:23 +0000)]
re PR middle-end/48464 (@171649: ICE in setup_pressure_classes, at ira.c:877)

2011-04-11  Vladimir Makarov  <vmakarov@redhat.com>

PR middle-end/48464
* ira.c (setup_pressure_classes): Fix typo in loop condition.
(setup_allocno_and_important_classes): Ditto.

From-SVN: r172274

13 years agolinux-elf.h (LINUX_DYNAMIC_LINKER): Rename to GNU_USER_DYNAMIC_LINKER.
Joseph Myers [Mon, 11 Apr 2011 18:46:05 +0000 (19:46 +0100)]
linux-elf.h (LINUX_DYNAMIC_LINKER): Rename to GNU_USER_DYNAMIC_LINKER.

* config/alpha/linux-elf.h (LINUX_DYNAMIC_LINKER): Rename to
GNU_USER_DYNAMIC_LINKER.
* config/arm/linux-eabi.h (TARGET_OS_CPP_BUILTINS): Change
LINUX_TARGET_OS_CPP_BUILTINS to GNU_USER_TARGET_OS_CPP_BUILTINS.
* config/arm/linux-elf.h (LINUX_TARGET_LINK_SPEC): Change
LINUX_DYNAMIC_LINKER to GNU_USER_DYNAMIC_LINKER.
(TARGET_OS_CPP_BUILTINS): Change LINUX_TARGET_OS_CPP_BUILTINS to
GNU_USER_TARGET_OS_CPP_BUILTINS.
* config/bfin/linux.h (TARGET_OS_CPP_BUILTINS): Change
LINUX_TARGET_OS_CPP_BUILTINS to GNU_USER_TARGET_OS_CPP_BUILTINS.
* config/bfin/uclinux.h (TARGET_OS_CPP_BUILTINS): Change
LINUX_TARGET_OS_CPP_BUILTINS to GNU_USER_TARGET_OS_CPP_BUILTINS.
* config/cris/linux.h (CRIS_LINK_SUBTARGET_SPEC): Change
LINUX_DYNAMIC_LINKER to GNU_USER_DYNAMIC_LINKER.
(TARGET_OS_CPP_BUILTINS): Change LINUX_TARGET_OS_CPP_BUILTINS to
GNU_USER_TARGET_OS_CPP_BUILTINS.
* config/frv/linux.h (LINK_SPEC): Change LINUX_DYNAMIC_LINKER to
GNU_USER_DYNAMIC_LINKER.
* config/gnu.h (LINUX_TARGET_OS_CPP_BUILTINS): Rename to
GNU_USER_TARGET_OS_CPP_BUILTINS.
* config/i386/gnu-user.h (TARGET_OS_CPP_BUILTINS): Change
LINUX_TARGET_OS_CPP_BUILTINS to GNU_USER_TARGET_OS_CPP_BUILTINS.
* config/i386/gnu-user64.h (TARGET_OS_CPP_BUILTINS): Change
LINUX_TARGET_OS_CPP_BUILTINS to GNU_USER_TARGET_OS_CPP_BUILTINS.
* config/i386/linux.h (GNU_USER_DYNAMIC_LINKER): Remove.
* config/i386/linux64.h (GNU_USER_DYNAMIC_LINKER32,
GNU_USER_DYNAMIC_LINKER64): Remove.
* config/ia64/linux.h (TARGET_OS_CPP_BUILTINS): Change
LINUX_TARGET_OS_CPP_BUILTINS to GNU_USER_TARGET_OS_CPP_BUILTINS.
(LINK_SPEC): Change LINUX_DYNAMIC_LINKER to
GNU_USER_DYNAMIC_LINKER.
* config/kfreebsd-gnu.h (LINUX_TARGET_OS_CPP_BUILTINS): Rename to
GNU_USER_TARGET_OS_CPP_BUILTINS.
* config/knetbsd-gnu.h (LINUX_TARGET_OS_CPP_BUILTINS): Rename to
GNU_USER_TARGET_OS_CPP_BUILTINS.
* config/kopensolaris-gnu.h (LINUX_TARGET_OS_CPP_BUILTINS): Rename
to GNU_USER_TARGET_OS_CPP_BUILTINS.
* config/linux.h (LINUX_TARGET_OS_CPP_BUILTINS): Rename to
GNU_USER_TARGET_OS_CPP_BUILTINS.
(LINUX_DYNAMIC_LINKER): Rename to GNU_USER_DYNAMIC_LINKER.
(LINUX_DYNAMIC_LINKER32): Rename to GNU_USER_DYNAMIC_LINKER32.
(LINUX_DYNAMIC_LINKER64): Rename to GNU_USER_DYNAMIC_LINKER64.
* config/lm32/uclinux-elf.h (TARGET_OS_CPP_BUILTINS): Change
LINUX_TARGET_OS_CPP_BUILTINS to GNU_USER_TARGET_OS_CPP_BUILTINS.
* config/m32r/linux.h (LINK_SPEC): Change LINUX_DYNAMIC_LINKER to
GNU_USER_DYNAMIC_LINKER.
(TARGET_OS_CPP_BUILTINS): Change LINUX_TARGET_OS_CPP_BUILTINS to
GNU_USER_TARGET_OS_CPP_BUILTINS.
* config/m68k/linux.h (TARGET_OS_CPP_BUILTINS): Change
LINUX_TARGET_OS_CPP_BUILTINS to GNU_USER_TARGET_OS_CPP_BUILTINS.
(LINK_SPEC): Change LINUX_DYNAMIC_LINKER to
GNU_USER_DYNAMIC_LINKER.
* config/m68k/uclinux.h (TARGET_OS_CPP_BUILTINS): Change
LINUX_TARGET_OS_CPP_BUILTINS to GNU_USER_TARGET_OS_CPP_BUILTINS.
* config/mips/linux.h (TARGET_OS_CPP_BUILTINS): Change
LINUX_TARGET_OS_CPP_BUILTINS to GNU_USER_TARGET_OS_CPP_BUILTINS.
(LINK_SPEC): Change LINUX_DYNAMIC_LINKER to
GNU_USER_DYNAMIC_LINKER.
* config/mips/linux64.h (LINUX_DYNAMIC_LINKERN32): Rename to
GNU_USER_DYNAMIC_LINKERN32.
(LINK_SPEC): Change LINUX_DYNAMIC_LINKERN32 to
GNU_USER_DYNAMIC_LINKERN32.  Change LINUX_DYNAMIC_LINKER64 to
GNU_USER_DYNAMIC_LINKER64.  Change LINUX_DYNAMIC_LINKER32 to
GNU_USER_DYNAMIC_LINKER32.
* config/mn10300/linux.h (TARGET_OS_CPP_BUILTINS): Change
LINUX_TARGET_OS_CPP_BUILTINS to GNU_USER_TARGET_OS_CPP_BUILTINS.
(LINK_SPEC): Change LINUX_DYNAMIC_LINKER to
GNU_USER_DYNAMIC_LINKER.
* config/moxie/uclinux.h (TARGET_OS_CPP_BUILTINS): Change
LINUX_TARGET_OS_CPP_BUILTINS to GNU_USER_TARGET_OS_CPP_BUILTINS.
* config/pa/pa-linux.h (TARGET_OS_CPP_BUILTINS): Change
LINUX_TARGET_OS_CPP_BUILTINS to GNU_USER_TARGET_OS_CPP_BUILTINS.
(LINK_SPEC): Change LINUX_DYNAMIC_LINKER to
GNU_USER_DYNAMIC_LINKER.
* config/rs6000/linux64.h (LINUX_DYNAMIC_LINKER32): Rename to
GNU_USER_DYNAMIC_LINKER32.
(LINUX_DYNAMIC_LINKER64): Rename to GNU_USER_DYNAMIC_LINKER64.
* config/rs6000/sysv4.h (LINUX_DYNAMIC_LINKER): Rename to
GNU_USER_DYNAMIC_LINKER.
* config/s390/linux.h (TARGET_OS_CPP_BUILTINS): Change
LINUX_TARGET_OS_CPP_BUILTINS to GNU_USER_TARGET_OS_CPP_BUILTINS.
(LINK_SPEC): Change LINUX_DYNAMIC_LINKER32 to
GNU_USER_DYNAMIC_LINKER32.  Change LINUX_DYNAMIC_LINKER64 to
GNU_USER_DYNAMIC_LINKER64.
* config/sh/linux.h (TARGET_OS_CPP_BUILTINS): Change
LINUX_TARGET_OS_CPP_BUILTINS to GNU_USER_TARGET_OS_CPP_BUILTINS.
(SUBTARGET_LINK_SPEC): Change LINUX_DYNAMIC_LINKER to
GNU_USER_DYNAMIC_LINKER.
* config/sparc/linux.h (TARGET_OS_CPP_BUILTINS): Change
LINUX_TARGET_OS_CPP_BUILTINS to GNU_USER_TARGET_OS_CPP_BUILTINS.
(LINK_SPEC): Change LINUX_DYNAMIC_LINKER to
GNU_USER_DYNAMIC_LINKER.
* config/sparc/linux64.h (TARGET_OS_CPP_BUILTINS): Change
LINUX_TARGET_OS_CPP_BUILTINS to GNU_USER_TARGET_OS_CPP_BUILTINS.
(LINK_ARCH32_SPEC): Change LINUX_DYNAMIC_LINKER32 to
GNU_USER_DYNAMIC_LINKER32.
(LINK_ARCH64_SPEC): Change LINUX_DYNAMIC_LINKER64 to
GNU_USER_DYNAMIC_LINKER64.
(LINK_SPEC): Change LINUX_DYNAMIC_LINKER64 to
GNU_USER_DYNAMIC_LINKER64.
* config/vax/linux.h (TARGET_OS_CPP_BUILTINS): Change
LINUX_TARGET_OS_CPP_BUILTINS to GNU_USER_TARGET_OS_CPP_BUILTINS.
* config/xtensa/linux.h (TARGET_OS_CPP_BUILTINS): Change
LINUX_TARGET_OS_CPP_BUILTINS to GNU_USER_TARGET_OS_CPP_BUILTINS.
(LINK_SPEC): Change LINUX_DYNAMIC_LINKER to
GNU_USER_DYNAMIC_LINKER.

From-SVN: r172273

13 years agognu-user.h: Copy from linux.h.
Joseph Myers [Mon, 11 Apr 2011 18:44:32 +0000 (19:44 +0100)]
gnu-user.h: Copy from linux.h.

* config/i386/gnu-user.h: Copy from linux.h.  Update comments.
(LINK_EMULATION, GLIBC_DYNAMIC_LINKER): Remove.
(SUBTARGET_EXTRA_SPECS): Use GNU_USER_LINK_EMULATION and
GNU_USER_DYNAMIC_LINKER.
(MD_UNWIND_SUPPORT, REG_NAME): Remove.
* config/i386/gnu-user64.h: Copy from linux64.h.  Update comments.
(GLIBC_DYNAMIC_LINKER32, GLIBC_DYNAMIC_LINKER64): Remove.
(LINK_SPEC): Use GNU_USER_DYNAMIC_LINKER32 and
GNU_USER_DYNAMIC_LINKER64.
(MD_UNWIND_SUPPORT, REG_NAME): Remove.
* config/i386/kfreebsd-gnu.h (LINK_EMULATION): Change to
GNU_USER_LINK_EMULATION.
* config/i386/linux.h (TARGET_ASM_FILE_START_FILE_DIRECTIVE,
DEFAULT_PCC_STRUCT_RETURN, TARGET_TLS_DIRECT_SEG_REFS_DEFAULT,
ASM_COMMENT_START, DBX_REGISTER_NUMBER, NO_PROFILE_COUNTERS,
MCOUNT_NAME, SUBTARGET_FRAME_POINTER_REQUIRED, SIZE_TYPE,
PTRDIFF_TYPE, WCHAR_TYPE, WCHAR_TYPE_SIZE, TARGET_OS_CPP_BUILTINS,
CPP_SPEC, CC1_SPEC): Remove.
(LINK_EMULATION): Change to GNU_USER_LINK_EMULATION.
(GNU_USER_DYNAMIC_LINKER): Define.
(ASM_SPEC, SUBTARGET_EXTRA_SPECS, LINK_SPEC, ENDFILE_SPEC,
ASM_OUTPUT_ALIGNED_BSS, ASM_OUTPUT_MAX_SKIP_ALIGN,
ASM_MAYBE_OUTPUT_ENCODED_ADDR_RTX, CRT_GET_RFIB_DATA,
LIBGCC2_HAS_TF_MODE, LIBGCC2_TF_CEXT, TF_SIZE,
TARGET_ASM_FILE_END, STACK_CHECK_MOVING_SP,
STACK_CHECK_STATIC_BUILTIN, TARGET_THREAD_SSP_OFFSET,
TARGET_CAN_SPLIT_STACK, TARGET_THREAD_SPLIT_STACK_OFFSET): Remove.
* config/i386/linux64.h (TARGET_OS_CPP_BUILTINS, CPP_SPEC,
CC1_SPEC, DEFAULT_PCC_STRUCT_RETURN,
TARGET_TLS_DIRECT_SEG_REFS_DEFAULT, SPEC_32, SPEC_64, ASM_SPEC,
LINK_SPEC, ENDFILE_SPEC, MULTILIB_DEFAULTS, LIBGCC2_HAS_TF_MODE,
LIBGCC2_TF_CEXT, TF_SIZE, TARGET_ASM_FILE_END): Remove.
(GNU_USER_DYNAMIC_LINKER32, GNU_USER_DYNAMIC_LINKER64): Define.
(STACK_CHECK_MOVING_SP, STACK_CHECK_STATIC_BUILTIN,
TARGET_THREAD_SSP_OFFSET, TARGET_CAN_SPLIT_STACK,
TARGET_THREAD_SPLIT_STACK_OFFSET): Remove.
* config/i386/gnu.h (GLIBC_DYNAMIC_LINKER): Change to
GNU_USER_DYNAMIC_LINKER.
* config/kfreebsd-gnu.h (GLIBC_DYNAMIC_LINKER): Change to
GNU_USER_DYNAMIC_LINKER.  Unconditionally undefine and redefine.
* config/knetbsd-gnu.h (GLIBC_DYNAMIC_LINKER): Change to
GNU_USER_DYNAMIC_LINKER.  Unconditionally undefine and redefine.
* config/kopensolaris-gnu.h (GLIBC_DYNAMIC_LINKER): Change to
GNU_USER_DYNAMIC_LINKER.  Unconditionally undefine and redefine.
* config.gcc (i[34567]86-*-linux* | i[34567]86-*-kfreebsd*-gnu |
i[34567]86-*-knetbsd*-gnu | i[34567]86-*-gnu* |
i[34567]86-*-kopensolaris*-gnu, x86_64-*-linux* |
x86_64-*-kfreebsd*-gnu | x86_64-*-knetbsd*-gnu): Use the new
headers.

From-SVN: r172271

13 years agopr47917.c: Define _ISO_C_SOURCE=19990L for alpha*-dec-osf5*.
Rainer Orth [Mon, 11 Apr 2011 18:14:23 +0000 (18:14 +0000)]
pr47917.c: Define _ISO_C_SOURCE=19990L for alpha*-dec-osf5*.

* gcc.dg/torture/pr47917.c: Define _ISO_C_SOURCE=19990L for
alpha*-dec-osf5*.

From-SVN: r172270

13 years agomoveable.cc: Actually run it in parallel-mode for check-parallel.
Paolo Carlini [Mon, 11 Apr 2011 17:50:39 +0000 (17:50 +0000)]
moveable.cc: Actually run it in parallel-mode for check-parallel.

2011-04-11  Paolo Carlini  <paolo.carlini@oracle.com>

* testsuite/25_algorithms/inplace_merge/moveable.cc: Actually run
it in parallel-mode for check-parallel.
* testsuite/25_algorithms/rotate/moveable.cc: Likewise.
* testsuite/25_algorithms/stable_partition/moveable.cc: Likewise.
* testsuite/25_algorithms/remove/moveable.cc: Likewise.
* testsuite/25_algorithms/sort_heap/check_compare_by_value.cc:
Likewise.
* testsuite/25_algorithms/unique/moveable.cc: Likewise.
* testsuite/25_algorithms/remove_if/moveable.cc: Likewise.
* testsuite/25_algorithms/heap/moveable.cc: Likewise.

* testsuite/25_algorithms/next_permutation/moveable.cc: Only skip
the tests based on std::lexicographical_compare for check-parallel.
* testsuite/25_algorithms/prev_permutation/moveable.cc: Likewise.

From-SVN: r172269

13 years agore PR target/9601 (-mrtd switch/stdcall attribute raises warnings for __buitltin...
Kai Tietz [Mon, 11 Apr 2011 17:44:04 +0000 (19:44 +0200)]
re PR target/9601 (-mrtd switch/stdcall attribute raises warnings for __buitltin functions)

2011-04-11  Kai Tietz  <ktietz@redhat.com>

PR target/9601
PR target/11772
* config/i386/i386-protos.h (ix86_get_callcvt): New prototype.
* config/i386/i386.c (ix86_handle_cconv_attribute): Adjust
comment.
(ix86_is_msabi_thiscall): Removed.
(ix86_is_type_thiscall): Likewise.
(ix86_get_callcvt): New function.
(ix86_comp_type_attributes): Simplify check.
(ix86_function_regparm): Use ix86_get_callcvt for calling
convention attribute checks.
(ix86_return_pops_args): Likewise.
(ix86_static_chain): Likewise.
(x86_this_parameter): Likewise.
(x86_output_mi_thunk): Likewise.
(ix86_function_type_abi): Optimize check for types without attributes.
* config/i386/i386.h (IX86_CALLCVT_CDECL, IX86_CALLCVT_STDCALL,
IX86_CALLCVT_FASTCALL, IX86_CALLCVT_THISCALL, IX86_CALLCVT_REGPARM,
IX86_CALLCVT_SSEREGPARM): New macros to represent calling convention
by flag-values.
(IX86_BASE_CALLCVT): Helper macro.
* config/i386/netware.c (i386_nlm_maybe_mangle_decl_assembler_name):
Use ix86_get_callcvt for calling convention attribute checks and avoid
symbol-decoration for stdcall in TARGET_RTD case.
* config/i386/winnt.c (i386_pe_maybe_mangle_decl_assembler_name):
Likewise.
(gen_stdcall_or_fastcall_suffix): Adjust ident and use DECL_ORIGIN
for declaration.

From-SVN: r172268

13 years ago* config/i386/sse.md: Fix unwanted commit.
Uros Bizjak [Mon, 11 Apr 2011 16:52:23 +0000 (18:52 +0200)]
* config/i386/sse.md: Fix unwanted commit.

From-SVN: r172266