gcc.git
12 years ago* doc/invoke.texi (ARM Options): Document -munaligned-access.
Nick Clifton [Wed, 18 Jul 2012 07:56:37 +0000 (07:56 +0000)]
* doc/invoke.texi (ARM Options): Document -munaligned-access.

From-SVN: r189604

12 years agosh.md (mulsidi3, umulsidi3): Remove constraints in expander.
Oleg Endo [Wed, 18 Jul 2012 07:51:36 +0000 (07:51 +0000)]
sh.md (mulsidi3, umulsidi3): Remove constraints in expander.

* config/sh/sh.md (mulsidi3, umulsidi3): Remove constraints in
expander.  Use arith_reg_dest predicate.
(rotldi3, rotrdi3): Remove constraints in expander.
(adddi3_compact, subdi3_compact, mulsidi3_compact, umulsidi3_compact,
ashlsi3_n, *ashlhi3_n, ashrsi2_16, ashrsi2_31, lshrsi3_n): Convert to
insn_and_split.

From-SVN: r189603

12 years agore PR target/33135 ([SH] -ffinite-math-only should not be on by default)
Oleg Endo [Wed, 18 Jul 2012 07:49:50 +0000 (07:49 +0000)]
re PR target/33135 ([SH] -ffinite-math-only should not be on by default)

PR target/33135
* config/sh/sh.opt (mieee): Use Var instead of Mask.  Correct
description.
* config/sh/sh.c (sh_option_override): Do not change
flag_finite_math_only.  Set TARGET_IEEE to complement of
flag_finite_math_only.
* doc/invoke.texi (SH options): Add mno-ieee.  Correct description
of mieee and mno-ieee behavior.

PR target/33135
* gcc.target/sh/pr33135-1.c: New.
* gcc.target/sh/pr33135-2.c: New.
* gcc.target/sh/pr33135-3.c: New.
* gcc.target/sh/pr33135-4.c: New.

From-SVN: r189602

12 years ago* graphite-poly.c (print_pbb_body): Fixup dump_bb call.
Steven Bosscher [Wed, 18 Jul 2012 07:32:21 +0000 (07:32 +0000)]
* graphite-poly.c (print_pbb_body): Fixup dump_bb call.

From-SVN: r189601

12 years agore PR c++/53995 (Overload resolution fails with enum argument, says <anonymous enum>)
Jason Merrill [Wed, 18 Jul 2012 02:47:59 +0000 (22:47 -0400)]
re PR c++/53995 (Overload resolution fails with enum argument, says <anonymous enum>)

PR c++/53995
* decl.c (finish_enum_value_list): Only call
insert_late_enum_def_into_classtype_sorted_fields in class scope.

From-SVN: r189598

12 years agopr36134.c: Use dg-skip-if to skip the testcase if there is a conflict with -mcpu=.
Kazu Hirata [Wed, 18 Jul 2012 01:11:41 +0000 (01:11 +0000)]
pr36134.c: Use dg-skip-if to skip the testcase if there is a conflict with -mcpu=.

2012-07-17  Kazu Hirata  <kazu@codesourcery.com>
    Sandra Loosemore  <sandra@codesourcery.com>

gcc/testsuite/
* gcc.target/m68k/pr36134.c: Use dg-skip-if to skip the testcase
if there is a conflict with -mcpu=.  Use -mcpu=5208.

Co-Authored-By: Sandra Loosemore <sandra@codesourcery.com>
From-SVN: r189596

12 years agoDaily bump.
GCC Administrator [Wed, 18 Jul 2012 00:17:11 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r189594

12 years agofix botched commit
Steven Bosscher [Tue, 17 Jul 2012 23:59:01 +0000 (23:59 +0000)]
fix botched commit

From-SVN: r189591

12 years agodumpfile.h (TDF_COMMENT): New define.
Steven Bosscher [Tue, 17 Jul 2012 23:17:20 +0000 (23:17 +0000)]
dumpfile.h (TDF_COMMENT): New define.

* dumpfile.h (TDF_COMMENT): New define.
* basic-block.h (EDGE_FALLTHRU, EDGE_ABNORMAL, EDGE_ABNORMAL_CALL,
EDGE_EH, EDGE_FAKE, EDGE_DFS_BACK, EDGE_CAN_FALLTHRU,
EDGE_IRREDUCIBLE_LOOP, EDGE_SIBCALL, EDGE_LOOP_EXIT, EDGE_TRUE_VALUE,
EDGE_FALSE_VALUE, EDGE_EXECUTABLE, EDGE_CROSSING, EDGE_PRESERVE):
Move to new file cfg-flags.h.
(enum cfg_edge_flags): New enum, using cfg-flags.h.
(EDGE_ALL_FLAGS): Compute value automatically.
(BB_NEW, BB_REACHABLE, BB_IRREDUCIBLE_LOOP, BB_SUPERBLOCK,
BB_DISABLE_SCHEDULE, BB_HOT_PARTITION, BB_COLD_PARTITION,
BB_DUPLICATED, BB_NON_LOCAL_GOTO_TARGET, BB_RTL,
BB_FORWARDER_BLOCK, BB_NONTHREADABLE_BLOCK, BB_MODIFIED, BB_VISITED,
BB_IN_TRANSACTION): Move to new file cfg-flags.h.
(enum bb_flags): Rename to cfg_bb_flags.  Use cfg-flags.h.
(BB_ALL_FLAGS): New, compute value automatically.
(dump_bb_info): Update prototype.
(dump_edge_info): Update prototype.
* cfg-flags.h: New file.
* cfg.c (dump_edge_info): Take flags argument.  Be verbose only if
TDF_DETAILS and not TDF_SLIM.  Include cfg-flags.h for bitnames.
Check that the edge flags are within the range of EDGE_ALL_FLAGS.
(debug_bb): Update dump_bb call.
(dump_cfg_bb_info): Remove.
(dump_bb_info): New function.  Use cfg-flags.h for bitnames.
Adjust verbosity using TDF_* flags.  Check that the basic block flags
are within the range of BB_ALL_FLAGS.
(brief_dump_cfg): Use dump_bb_info instead of dump_cfg_bb_info.
* cfghooks.h (struct cfghooks): Update dump_bb hook, take a FILE
first for consistency with other dump functions.
(dump_bb): Update prototype accordingly.
* cfghooks.c: Include dumpfile.h.
(verify_flow_info): Update dump_edge_info calls.
(dump_bb): Take a flags argument and pass it around.
Use dump_bb_info to dump common information about a basic block.
(dump_flow_info): Moved here from cfgrtl.c.  Make IL agnostic.
(debug_flow_info): Moved here from cfgrtl.c.
* profile.c (is_edge_inconsistent): Update dump_bb calls.
* loop-invariant.c (find_defs): Update print_rtl_with_bb call.
* rtl.h (debug_bb_n_slim, debug_bb_slim, print_rtl_slim,
print_rtl_slim_with_bb): Remove prototypes.
(dump_insn_slim): Adjust prototype to take a const_rtx.
(print_rtl_with_bb): Adjust prototype.
* sched-rgn.c (debug_region): Use dump_bb instead of debug_bb_n_slim.
* sched-vis.c (dump_insn_slim): Take a const_rtx.
(debug_insn_slim): Prototype here near DEBUG_FUNCTION marker.
(print_rtl_slim_with_bb): Remove.
(print_rtl_slim): Rename to debug_rtl_slim.  Print only insn info,
not basic block info (print_rtl_with_bb with TDF_SLIM should be used
for that.  Prototype here near DEBUG_FUNCTION marker.
(debug_bb_slim): Prototype here near DEBUG_FUNCTION marker.
Use dump_bb.
(debug_bb_n_slim): Prototype here near DEBUG_FUNCTION marker.
* tree-cfg.c (gimple_can_merge_blocks_p): Use EDGE_COMPLEX.
(remove_bb): Update dump_bb call.
(gimple_debug_bb): Use dump_bb.
(dump_function_to_file): Update gimple_dump_bb call.
(print_loops_bb): Likewise.
* tree-flow.h (gimple_dump_bb): Update prototype.
* gimple-pretty-print.c (dump_bb_header): Rename to
dump_gimple_bb_header.  Write to a stream instead of a pretty
printer.  Use dump_bb_info to dump basic block info.
(dump_bb_end): Rename to dump_gimple_bb_footer.  Write to a
stream instead of a pretty printer.  Use dump_bb_info.
(gimple_dump_bb_buff): Do not call dump_bb_header and dump_bb_end.
(gimple_dump_bb): Do it here with dump_gimple_bb_header and
dump_gimple_bb_footer.
* cfgrtl.c (rtl_dump_bb): Update prototype.  Only dump DF if the
dump flags have TDF_DETAILS.  Use dump_insn_slim if TDF_SLIM.
(print_rtl_with_bb): Take a flags argument and pass it around.
Use dump_insn_slim if TDF_SLIM.
(dump_bb_info): Removed and re-incarnated in cfg.c.
(dump_flow_info): Moved to cfghooks.c.
(debug_flow_info): Moved to cfghooks.c.
* passes.c (execute_function_dump): Unconditionally use
print_rtl_with_bb for RTL dumps, now that it understands TDF_SLIM.
* final.c (dump_basic_block_info): Update dump_edge_info calls.
* tree-vrp.c (dump_asserts_for): Likewise.
* ifcvt.c (if_convert): Unconditionally use print_rtl_with_bb.
* tree-if-conv.c (if_convertible_bb_p): Don't look at
EDGE_ABNORMAL_CALL, it has no meaning in the GIMPLE world.
* trans-mem.c (make_tm_edge): Don't set EDGE_ABNORMAL_CALL,
for the same reason.
* config/rl78/rl78.c (rl78_reorg): Update print_rtl_with_bb calls.

From-SVN: r189590

12 years agore PR fortran/51081 ([F03] Proc-pointer assignment: Rejects valid internal proc)
Janus Weil [Tue, 17 Jul 2012 21:51:20 +0000 (23:51 +0200)]
re PR fortran/51081 ([F03] Proc-pointer assignment: Rejects valid internal proc)

2012-07-17  Janus Weil  <janus@gcc.gnu.org>

PR fortran/51081
* error.c (gfc_notify_std): Automatically print the relevant Fortran
standard version.
* arith.c (arith_power): Remove explicit standard reference string.
* array.c (gfc_match_array_spec, gfc_match_array_constructor): Ditto.
* check.c (gfc_check_a_p, gfc_check_besn, gfc_check_count,
gfc_check_float, gfc_check_fn_rc2008, gfc_check_iand,
gfc_check_ichar_iachar, gfc_check_ieor, gfc_check_index, gfc_check_ior,
gfc_check_lbound, gfc_check_len_lentrim, check_rest, gfc_check_min_max,
gfc_check_null, gfc_check_scan, gfc_check_selected_real_kind,
gfc_check_shape, gfc_check_size, gfc_check_sngl, gfc_check_ubound,
gfc_check_verify): Ditto.
* data.c (gfc_assign_data_value): Ditto.
* decl.c (var_element, char_len_param_value, match_char_length,
gfc_verify_c_interop_param, match_pointer_init, variable_decl,
gfc_match_decl_type_spec, gfc_match_import, match_attr_spec,
gfc_match_prefix, gfc_match_suffix, match_ppc_decl,
match_procedure_in_interface, gfc_match_procedure,gfc_match_entry,
gfc_match_subroutine, gfc_match_end, gfc_match_codimension,
gfc_match_protected, gfc_match_value, gfc_match_volatile,
gfc_match_asynchronous, gfc_match_modproc, gfc_get_type_attr_spec,
gfc_match_enum, match_procedure_in_type): Ditto.
* expr.c (check_elemental, gfc_check_assign, gfc_check_pointer_assign):
Ditto.
* interface.c (gfc_match_abstract_interface, check_interface0): Ditto.
* intrinsic.c (gfc_intrinsic_func_interface): Ditto.
* io.c (format_lex, resolve_tag_format, resolve_tag,
compare_to_allowed_values, gfc_match_open, gfc_match_rewind,
gfc_resolve_dt, gfc_match_wait): Ditto.
* match.c (match_arithmetic_if, gfc_match_if, gfc_match_critical,
gfc_match_do, match_exit_cycle, gfc_match_pause, gfc_match_stop,
gfc_match_lock, sync_statement, gfc_match_assign, gfc_match_goto,
gfc_match_allocate, gfc_match_return, gfc_match_st_function): Ditto.
* module.c (gfc_match_use, gfc_use_module): Ditto.
* parse.c (parse_derived_contains, parse_block_construct,
parse_associate, parse_contained): Ditto.
* primary.c (match_hollerith_constant, match_boz_constant,
match_real_constant, match_sym_complex_part, match_arg_list_function,
build_actual_constructor, gfc_convert_to_structure_constructor): Ditto.
* resolve.c (resolve_formal_arglist, resolve_entries,
resolve_common_blocks, resolve_actual_arglist, gfc_resolve_index_1,
gfc_resolve_iterator_expr, resolve_ordinary_assign,
resolve_fl_var_and_proc, resolve_fl_variable_derived,
resolve_fl_procedure, resolve_fl_derived0, resolve_fl_derived,
resolve_fl_namelist, resolve_symbol, resolve_fntype): Ditto.
* symbol.c (check_conflict, conflict, gfc_add_is_bind_c,
gfc_add_extension, gfc_check_symbol_typed): Ditto.

From-SVN: r189589

12 years agore PR c++/53989 (Internal compiler error in strip_typedefs, at cp/tree.c:1187)
Jason Merrill [Tue, 17 Jul 2012 21:34:06 +0000 (17:34 -0400)]
re PR c++/53989 (Internal compiler error in strip_typedefs, at cp/tree.c:1187)

PR c++/53989
* tree.c (build_cplus_array_type): Also add TYPE_CANONICAL
to the list of variants.

From-SVN: r189587

12 years agore PR fortran/53985 (-Wno-c-binding-type still prints a warning)
Tobias Burnus [Tue, 17 Jul 2012 20:07:32 +0000 (22:07 +0200)]
re PR fortran/53985 (-Wno-c-binding-type still prints a warning)

2012-07-17  Tobias Burnus  <burnus@net-b.de>

        PR fortran/53985
        * decl.c (gfc_verify_c_interop_param): Make warning conditional
        on -Wc-binding-type works and improve the wording.

2012-07-17  Tobias Burnus  <burnus@net-b.de>

        PR fortran/53985
        * gfortran.dg/bind_c_usage_26.f90: New.
        * gfortran.dg/bind_c_procs.f03: Add dg-options
        * "-Wc-binding-type".
        * gfortran.dg/bind_c_usage_13.f03: Ditto.
        * gfortran.dg/bind_c_usage_18.f90: Ditto.
        * gfortran.dg/interop_params.f03: Ditto.

From-SVN: r189586

12 years agodecl.c (xref_basetypes): Complain about incomplete template base.
Jason Merrill [Tue, 17 Jul 2012 18:09:10 +0000 (14:09 -0400)]
decl.c (xref_basetypes): Complain about incomplete template base.

* decl.c (xref_basetypes): Complain about incomplete template base.
* class.c (finish_struct): Adjust variants in templates, too.

From-SVN: r189583

12 years agore PR c++/53549 (g++ and armadillo 3.2.0, operator() is inaccessible)
Jason Merrill [Tue, 17 Jul 2012 18:08:59 +0000 (14:08 -0400)]
re PR c++/53549 (g++ and armadillo 3.2.0, operator() is inaccessible)

PR c++/53549
* parser.c (cp_parser_class_head): Call xref_basetypes here.
(cp_parser_class_specifier_1): Not here.
* pt.c (tsubst_decl) [USING_DECL]: Check uses_template_parms
as well as DECL_DEPENDENT_P.

From-SVN: r189582

12 years agotree-vect-data-refs.c (vect_get_new_vect_var): Add referenced vars here, use create_t...
Richard Guenther [Tue, 17 Jul 2012 15:12:05 +0000 (15:12 +0000)]
tree-vect-data-refs.c (vect_get_new_vect_var): Add referenced vars here, use create_tmp_reg where appropriate.

2012-07-17  Richard Guenther  <rguenther@suse.de>

* tree-vect-data-refs.c (vect_get_new_vect_var): Add referenced
vars here, use create_tmp_reg where appropriate.
(vect_create_addr_base_for_vector_ref): Do not add referenced
vars here, use create_tmp_reg where appropriate.
(vect_create_data_ref_ptr): Likewise.
(vect_create_destination_var): Likewise.
(vect_permute_store_chain): Likewise.
(vect_permute_load_chain): Likewise.
* tree-vect-loop-manip.c (vect_create_cond_for_align_checks):
Likewise.
* tree-vect-loop.c (get_initial_def_for_induction): Likewise.
* tree-vect-patterns.c (vect_recog_temp_ssa_var): Likewise.
(vect_handle_widen_op_by_const): Likewise.
* tree-vect-stmts.c (vect_init_vector): Likewise.
(vectorizable_load): Likewise.

From-SVN: r189581

12 years agohwint.c: Fix loop range.
Tom de Vries [Tue, 17 Jul 2012 13:49:51 +0000 (13:49 +0000)]
hwint.c: Fix loop range.

2012-07-17  Tom de Vries  <tom@codesourcery.com>

* hwint.c: Fix loop range.

From-SVN: r189577

12 years agodouble-int.h (double_int_popcount): New inline function.
Tom de Vries [Tue, 17 Jul 2012 12:48:36 +0000 (12:48 +0000)]
double-int.h (double_int_popcount): New inline function.

2012-07-17  Tom de Vries  <tom@codesourcery.com>

* double-int.h (double_int_popcount): New inline function.
* hwint.c (popcount_hwi): New function.
* hwint.h (popcount_hwi): Declare function.  New inline function.

From-SVN: r189575

12 years agoClean up supportable_widening_operation.
Richard Henderson [Tue, 17 Jul 2012 12:28:31 +0000 (05:28 -0700)]
Clean up supportable_widening_operation.

* tree-vect-stmts.c (supportable_widening_operation): Remove decl
parameters.
(vectorizable_conversion): Update supportable_widening_operation call.
* tree-vect-patterns.c (vect_recog_widen_mult_pattern): Likewise.
(vect_recog_widen_shift_pattern): Likewise.
* tree-vectorizer.h: Update decl.

From-SVN: r189574

12 years ago[multiple changes]
Arnaud Charlet [Tue, 17 Jul 2012 10:16:59 +0000 (12:16 +0200)]
[multiple changes]

2012-07-17  Vincent Pucci  <pucci@adacore.com>

* gnat_ugn.texi: GNAT dimensionality checking
documentation updated with System.Dim.Mks modifications.

2012-07-17  Ed Schonberg  <schonberg@adacore.com>

* exp_ch3.adb: sloc of array init_proc is sloc of type declaration.

2012-07-17  Tristan Gingold  <gingold@adacore.com>

* raise-gcc.c (get_call_site_action_for): Remove useless init
expression for p.
(get_action_description_for): Do not overwrite action->kind.

2012-07-17  Hristian Kirtchev  <kirtchev@adacore.com>

* exp_attr.adb (Expand_N_Attribute_Reference): Add local variables Attr
and Conversion_Added.  Add local constant Typ.
Retrieve the original attribute after the arithmetic check
machinery has modified the node. Add a conversion to the target
type when the prefix of attribute Max_Size_In_Storage_Elements
is a controlled type.

2012-07-17  Gary Dismukes  <dismukes@adacore.com>

* exp_ch6.adb (Expand_Inlined_Call): For each actual parameter
of mode 'out' or 'in out' that denotes an entity, reset
Last_Assignment on the entity so that any assignments to the
corresponding formal in the inlining will not trigger spurious
warnings about overwriting assignments.

From-SVN: r189570

12 years ago[multiple changes]
Arnaud Charlet [Tue, 17 Jul 2012 10:14:38 +0000 (12:14 +0200)]
[multiple changes]

2012-07-17  Tristan Gingold  <gingold@adacore.com>

* gnat_rm.texi: Adjust previous change.

2012-07-17  Ed Schonberg  <schonberg@adacore.com>

* sem_prag.adb (Process_Import_Or_Interface): If the pragma
comes from an aspect, it applies to the corresponding entity
without further check.

2012-07-17  Olivier Hainque  <hainque@adacore.com>

* initialize.c (__gnat_initialize for VxWorks): Remove section with
call to __gnat_vxw_setup_for_eh.
* system-vxworks-ppc.ads: Add -auto-register to -crtbe, relying
on the VxWorks constructor mechanism for network loaded modules
by default.

2012-07-17  Tristan Gingold  <gingold@adacore.com>

* adaint.c: Minor reformatting.

2012-07-17  Pascal Obry  <obry@adacore.com>

* s-regexp.adb (Adjust): Fix access violation in Adjust.

2012-07-17  Ed Schonberg  <schonberg@adacore.com>

* freeze.adb (Freeze_Entity): Warn if an imported subprogram
has pre/post conditions, because these will not be enforced.

2012-07-17  Eric Botcazou  <ebotcazou@adacore.com>

* exp_ch7.adb (Process_Transient_Objects): Put all the
finalization blocks and the final raise statement into a wrapper
block.

2012-07-17  Vincent Pucci  <pucci@adacore.com>

* s-atopri.adb (Lock_Free_Try_Write_X): Atomic_Compare_Exchange_X
replaced by Sync_Compare_And_Swap_X.
(Lock_Free_Try_Write_64): Removed.
* s-atopri.ads (Sync_Compare_And_Swap_X): Replaces previous
routine Atomic_Compare_Exchange_X.
(Lock_Free_Read_64): Renaming of Atomic_Load_64.
(Lock_Free_Try_Write_64): Renaming of Sync_Compare_And_Swap_64.

2012-07-17  Vincent Celier  <celier@adacore.com>

* switch-m.adb (Normalize_Compiler_Switches): Recognize new
switches -gnatn1 and -gnatn2.

2012-07-17  Vincent Pucci  <pucci@adacore.com>

* gnat_ugn.texi: GNAT dimensionality checking
documentation updated with System.Dim.Mks modifications.

2012-07-17  Ed Schonberg  <schonberg@adacore.com>

* exp_ch3.adb: sloc of array init_proc is sloc of type declaration.

2012-07-17  Tristan Gingold  <gingold@adacore.com>

* raise-gcc.c (get_call_site_action_for): Remove useless init
expression for p.
(get_action_description_for): Do not overwrite action->kind.

2012-07-17  Hristian Kirtchev  <kirtchev@adacore.com>

* exp_attr.adb (Expand_N_Attribute_Reference): Add local variables Attr
and Conversion_Added.  Add local constant Typ.
Retrieve the original attribute after the arithmetic check
machinery has modified the node. Add a conversion to the target
type when the prefix of attribute Max_Size_In_Storage_Elements
is a controlled type.

2012-07-17  Gary Dismukes  <dismukes@adacore.com>

* exp_ch6.adb (Expand_Inlined_Call): For each actual parameter
of mode 'out' or 'in out' that denotes an entity, reset
Last_Assignment on the entity so that any assignments to the
corresponding formal in the inlining will not trigger spurious
warnings about overwriting assignments.

From-SVN: r189569

12 years ago[multiple changes]
Arnaud Charlet [Tue, 17 Jul 2012 09:57:14 +0000 (11:57 +0200)]
[multiple changes]

2012-07-17  Tristan Gingold  <gingold@adacore.com>

* treepr.adb, treepr.ads: Revert previous patch, unneeded.

2012-07-17  Robert Dewar  <dewar@adacore.com>

* s-assert.ads: Fix comments to make it clear that this is used
for all assertions, not just pragma Assert.

2012-07-17  Jerome Guitton  <guitton@adacore.com>

* par_sco.ads: Minor typo fix.

2012-07-17  Gary Dismukes  <dismukes@adacore.com>

* layout.adb (Layout_Type): In the case where the target is
AAMP, use 32 bits (a single pointer) rather than 64 bits for an
anonymous access-to-subprogram type if the type is library-level
and Is_Local_Anonymous_Access is True.

2012-07-17  Jose Ruiz  <ruiz@adacore.com>

* s-tassta.adb, s-tarest.adb (Create_Task, Create_Restricted_Task,
Initialize): Add comments explaining that the CPU affinity value that
is passed to the run-time library can be either Unspecified_CPU, to
indicate that the task inherits the affinity of its activating task,
or a value in the range of CPU_Range but no greater than Number_Of_CPUs.

2012-07-17  Javier Miranda  <miranda@adacore.com>

* exp_disp.adb (Make_DT): Remove decoration of Ada.Tags entities.
(Make_Tags): Add decoration of Ada.Tags entities.

2012-07-17  Ed Schonberg  <schonberg@adacore.com>

* sem_ch6.adb (Check_Statement_Sequence): When locating the
last significant statement in a sequence, ignore iserted nodes
that typically come from expansion of controlled operations.

2012-07-17  Tristan Gingold  <gingold@adacore.com>

* gnat_rm.texi: Document foreign exceptions.

From-SVN: r189568

12 years agosem_prag.adb, treepr.ads: Minor reformatting.
Robert Dewar [Tue, 17 Jul 2012 09:51:38 +0000 (09:51 +0000)]
sem_prag.adb, treepr.ads: Minor reformatting.

2012-07-17  Robert Dewar  <dewar@adacore.com>

* sem_prag.adb, treepr.ads: Minor reformatting.

From-SVN: r189567

12 years ago[multiple changes]
Arnaud Charlet [Tue, 17 Jul 2012 09:49:48 +0000 (11:49 +0200)]
[multiple changes]

2012-07-17  Robert Dewar  <dewar@adacore.com>

* exp_ch9.adb: Minor code reorganization.
* exp_ch3.adb: Minor code improvement.

2012-07-17  Tristan Gingold  <gingold@adacore.com>

* seh_init.c (__gnat_SEH_error_handler): Not compiled anymore
on Windows 64 (+ SEH), as it is unused.

2012-07-17  Tristan Gingold  <gingold@adacore.com>

* treepr.ads (psloc): Declare.
* treepr.adb (psloc): New debug procedure to print a sloc.
(Print_Sloc): New procedure, from ...
(Print_Node_Subtree): ... this.  Call Print_Sloc.

2012-07-17  Javier Miranda  <miranda@adacore.com>

* sem_prag.adb (CPP_Class): Transform obsolescent pragma CPP_Class into
CPP convention automatically.

From-SVN: r189566

12 years agore PR fortran/52101 (Obsolescence warning for non-obs. feature character name*length)
Tobias Burnus [Tue, 17 Jul 2012 09:40:12 +0000 (11:40 +0200)]
re PR fortran/52101 (Obsolescence warning for non-obs. feature character name*length)

2012-07-17  Tobias Burnus  <burnus@net-b.de>

        PR fortran/52101
        * decl.c (match_char_length): Extra argument, show obsolenscent
        warning only if *length is used after the typename.
        (variable_decl, gfc_match_char_spec): Update call

2012-07-17  Tobias Burnus  <burnus@net-b.de>

        PR fortran/52101
        * gfortran.dg/oldstyle_4.f90: New.

From-SVN: r189565

12 years agoarm-common.c (arm_option_optimization_table): Enable -fsched-pressure by default...
Ramana Radhakrishnan [Tue, 17 Jul 2012 09:17:20 +0000 (09:17 +0000)]
arm-common.c (arm_option_optimization_table): Enable -fsched-pressure by default while optimizing.

2012-07-17  Ramana Radhakrishnan  <ramana.radhakrishnan@linaro.org>
    Ulrich Weigand  <ulrich.weigand@linaro.org>

* common/config/arm/arm-common.c (arm_option_optimization_table):
Enable -fsched-pressure by default while optimizing.
* config/arm/arm.c (arm_option_override): Use the alternate scheduler
pressure algorithm by default.

Co-Authored-By: Ulrich Weigand <ulrich.weigand@linaro.org>
From-SVN: r189563

12 years agore PR fortran/49265 (Double colon in procedure-stmt (generic interface))
Tobias Burnus [Tue, 17 Jul 2012 08:59:18 +0000 (10:59 +0200)]
re PR fortran/49265 (Double colon in procedure-stmt (generic interface))

2012-07-17  Tobias Burnus  <burnus@net-b.de>
            Steven G. Kargl  <kargl@gcc.gnu.org>

        PR fortran/49265
        * decl.c (match_procedure_in_interface): Support "::" for
        Fortran 2008 and later.

2012-07-17  Tobias Burnus  <burnus@net-b.de>

        PR fortran/49265
        * gfortran.dg/module_procedure_double_colon_3.f90: New.
        * gfortran.dg/module_procedure_double_colon_4.f90: New.

Co-Authored-By: Steven G. Kargl <kargl@gcc.gnu.org>
From-SVN: r189562

12 years agoDaily bump.
GCC Administrator [Tue, 17 Jul 2012 00:17:38 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r189559

12 years agore PR libstdc++/53270 (Error when bootstrapping gcc on hppa2.0-unknown-linux-gcc)
Jonathan Wakely [Mon, 16 Jul 2012 21:57:18 +0000 (21:57 +0000)]
re PR libstdc++/53270 (Error when bootstrapping gcc on hppa2.0-unknown-linux-gcc)

PR libstdc++/53270
* include/ext/concurrence.h (__mutex, __recursive_mutex, __cond): Use
NSDMI in C++98 mode too.
* include/ext/rope: Add system_header pragma.
(_Refcount_Base, _Rope_RopeRep): Use NSDMI.
(_Rope_RopeRep::~_Rope_RopeRep): Destroy mutex.

From-SVN: r189553

12 years agocp-tree.h (struct deferred_access_check): Add location.
Jason Merrill [Mon, 16 Jul 2012 21:25:30 +0000 (17:25 -0400)]
cp-tree.h (struct deferred_access_check): Add location.

* cp-tree.h (struct deferred_access_check): Add location.
* semantics.c (perform_access_checks): Use it.
(perform_or_defer_access_check): Store it.

From-SVN: r189552

12 years agosh.h (CONST_OK_FOR_I06): Delete.
Oleg Endo [Mon, 16 Jul 2012 21:16:52 +0000 (21:16 +0000)]
sh.h (CONST_OK_FOR_I06): Delete.

* config/sh/sh.h (CONST_OK_FOR_I06): Delete.
(CONST_OK_FOR_I10): Move macro to ...
* config/sh/sh.c: ... here.
(sh_legitimate_index_p): Use satisfies_constraint_I06 instead of
CONST_OK_FOR_I06.

From-SVN: r189551

12 years agosh.md: Delete mov related define_peephole patterns.
Oleg Endo [Mon, 16 Jul 2012 21:15:00 +0000 (21:15 +0000)]
sh.md: Delete mov related define_peephole patterns.

* config/sh/sh.md: Delete mov related define_peephole patterns.

From-SVN: r189550

12 years agore PR fortran/53824 (ICE with ALLOCATE of coarrays)
Thomas Koenig [Mon, 16 Jul 2012 20:58:04 +0000 (20:58 +0000)]
re PR fortran/53824 (ICE with ALLOCATE of coarrays)

2012-07-16  Thomas König  <tkoenig@gcc.gnu.org>

PR fortran/53824
* resolve.c (resolve_allocate_deallocate):  If both
start indices are NULL, skip the test for equality.

2012-07-16  Thomas König  <tkoenig@gcc.gnu.org>

PR fortran/53824
* gfortran.dg/coarray_allocate_1.f90:  New test.

From-SVN: r189549

12 years agore PR libstdc++/53978 (Missing static const definitions in <bits/alloc_traits.h>)
Jonathan Wakely [Mon, 16 Jul 2012 20:43:11 +0000 (20:43 +0000)]
re PR libstdc++/53978 (Missing static const definitions in <bits/alloc_traits.h>)

PR libstdc++/53978
* include/bits/alloc_traits.h (allocator_traits): Define static
constants.
* include/bits/ptr_traits.h (pointer_traits): Likewise.
* include/ext/alloc_traits.h (__allocator_always_compares_equal):
Likewise.

From-SVN: r189547

12 years agore PR web/53919 (Version-specific install instructions not available)
Jonathan Wakely [Mon, 16 Jul 2012 19:14:18 +0000 (19:14 +0000)]
re PR web/53919 (Version-specific install instructions not available)

PR c++/53919
* doc/install.texi (Installing GCC): Refer to instructions for
released versions. Fix hypenation.

From-SVN: r189545

12 years agospu.c (targetm): Move to bottom of file.
Ulrich Weigand [Mon, 16 Jul 2012 17:23:54 +0000 (17:23 +0000)]
spu.c (targetm): Move to bottom of file.

* config/spu/spu.c (targetm): Move to bottom of file.
(spu_attribute_table): Likewise.
(spu_option_override, spu_init_builtins, spu_builtin_decl,
spu_scalar_mode_supported_p, spu_vector_mode_supported_p,
spu_legitimate_address_p, spu_addr_space_legitimate_address_p,
adjust_operand, get_pic_reg, need_to_save_reg, frame_emit_store,
frame_emit_load, frame_emit_add_imm, emit_nop_for_insn,
insn_clobbers_hbr, spu_emit_branch_hint, spu_emit_vector_compare,
get_branch_target, spu_machine_dependent_reorg, spu_sched_issue_rate,
spu_sched_variable_issue, spu_sched_adjust_cost, spu_sched_init_global,
spu_sched_init, spu_sched_reorder, spu_handle_fndecl_attribute,
spu_handle_vector_attribute, spu_pass_by_reference, spu_function_arg,
spu_function_arg_advance, spu_build_builtin_va_list, spu_va_start,
spu_gimplify_va_arg_expr, store_with_one_insn_p, reg_aligned_for_addr,
spu_assemble_integer, spu_asm_globalize_label, spu_rtx_costs,
spu_function_ok_for_sibcall, spu_init_libfuncs, spu_return_in_memory,
spu_encode_section_info, spu_legitimize_address,
spu_addr_space_legitimize_address, spu_builtin_mask_for_load,
spu_builtin_vectorization_cost, spu_vector_alignment_reachable,
spu_addr_space_pointer_mode, spu_addr_space_address_mode,
spu_addr_space_subset_p, spu_addr_space_convert, spu_sms_res_mii,
spu_section_type_flags, spu_select_section, spu_unique_section,
spu_trampoline_init, spu_conditional_register_usage,
spu_ref_may_alias_errno, spu_output_mi_thunk, spu_unwind_word_mode,
spu_libgcc_cmp_return_mode, spu_libgcc_shift_count_mode,
spu_setup_incoming_varargs): Remove prototypes.
(spu_legitimize_address): Add "static" to definition.

From-SVN: r189544

12 years agobswap-1.c: New testcase.
Andrew Pinski [Mon, 16 Jul 2012 17:16:29 +0000 (17:16 +0000)]
bswap-1.c: New testcase.

2012-07-16  Andrew Pinski  <apinski@cavium.com>

        * gcc.c-torture/execute/bswap-1.c: New testcase.
        * gcc.c-torture/compile/unalign-1.c: New testcase.
        * gcc.c-torture/compile/20120524-1.c: New testcase.
        * gcc.c-torture/compile/20101216-1.c: New testcase.

From-SVN: r189543

12 years ago* config/i386/rtmintrin.h (_xabort): Remove trailing semicolon.
Jakub Jelinek [Mon, 16 Jul 2012 14:53:40 +0000 (16:53 +0200)]
* config/i386/rtmintrin.h (_xabort): Remove trailing semicolon.

From-SVN: r189541

12 years agotree-ssa-ccp.c (optimize_unreachable): Check gsi_end_p before calling gsi_stmt.
Ulrich Weigand [Mon, 16 Jul 2012 14:27:53 +0000 (14:27 +0000)]
tree-ssa-ccp.c (optimize_unreachable): Check gsi_end_p before calling gsi_stmt.

* tree-ssa-ccp.c (optimize_unreachable): Check gsi_end_p
before calling gsi_stmt.

From-SVN: r189539

12 years agoRevert r189513.
Kirill Yukhin [Mon, 16 Jul 2012 14:08:42 +0000 (14:08 +0000)]
Revert r189513.

From-SVN: r189538

12 years ago* README: Document use of ranges of years in copyright notices.
Joseph Myers [Mon, 16 Jul 2012 14:01:34 +0000 (15:01 +0100)]
* README: Document use of ranges of years in copyright notices.

From-SVN: r189537

12 years agodecl.c (intrin_return_compatible_p): Map Address to void *.
Tristan Gingold [Mon, 16 Jul 2012 13:10:02 +0000 (13:10 +0000)]
decl.c (intrin_return_compatible_p): Map Address to void *.

2012-07-16  Tristan Gingold  <gingold@adacore.com>

* decl.c (intrin_return_compatible_p): Map Address to void *.

From-SVN: r189536

12 years agoexp_ch9.adb (Ensure_Statement_Present): New subprogram.
Thomas Quinot [Mon, 16 Jul 2012 13:03:26 +0000 (13:03 +0000)]
exp_ch9.adb (Ensure_Statement_Present): New subprogram.

2012-07-16  Thomas Quinot  <quinot@adacore.com>

* exp_ch9.adb (Ensure_Statement_Present): New subprogram.
(Expand_N_Asynchronous_Select,
Expand_N_Selective_Accept.Process_Accept_Alternative,
Expand_N_Selective_Accept.Process_Delay_Alternative,
Expand_N_Timed_Entry_Call): For an alternative with no trailing
statements, introduce a null statement to carry the sloc of
the initial special statement (accept, delay, or entry call)
in the alternative, for coverage analysis purposes.

2012-07-16  Thomas Quinot  <quinot@adacore.com>

* sem_eval.adb (In_Subrange_Of): Fix typo in test for scalar
arguments.

From-SVN: r189535

12 years ago[multiple changes]
Arnaud Charlet [Mon, 16 Jul 2012 13:00:24 +0000 (15:00 +0200)]
[multiple changes]

2012-07-16  Robert Dewar  <dewar@adacore.com>

* a-exexpr.adb, freeze.adb, a-exexpr-gcc.adb, a-except-2005.adb,
sem_eval.adb, s-fileio.adb: Minor reformatting.

2012-07-16  Javier Miranda  <miranda@adacore.com>

* sem_prag.adb (Analyze_Pragma): Remove support for obsolescent
pragma CPP_Class.
* sem_ch13.adb (Analyze_Freeze_Entity): Add missing error on Ada
derivations of CPP types.  Found updating the tests affected by
the removal of pragma CPP_Class.

2012-07-16  Thomas Quinot  <quinot@adacore.com>

* back_end.adb: Minor reformatting.

2012-07-16  Thomas Quinot  <quinot@adacore.com>

* exp_ch9.adb (Expand_N_Selective_Accept.Process_Accept_Alternative):
Remove junk test that was always true. For the case of no statements
following the ACCEPT, jump directly to End_Lab instead of
introducing an intermediate jump.
(Expand_N_Selective_Accept.Process_Delay_Alternative): Fix
predicate testing for presence of statements following the DELAY.
that was always true. For the case of no statements following
the ACCEPT, jump directly to End_Lab instead of introducing an
intermediate jump.
(Expand_N_Selective_Accept): Fix incorrect insertion point for
end label.

From-SVN: r189534

12 years ago[multiple changes]
Arnaud Charlet [Mon, 16 Jul 2012 12:57:45 +0000 (14:57 +0200)]
[multiple changes]

2012-07-16  Thomas Quinot  <quinot@adacore.com>

* gnat_rm.texi: Minor documentation improvements.

2012-07-16  Yannick Moy  <moy@adacore.com>

* sem_ch13.adb (Analyze_Aspect_Specifications): Allow Pre
and Pre'Class aspects on the same declaration.
* sem_prag.adb (Chain_PPC): Allow Pre and Pre'Class aspects on the
same hierarchy of primitive operations.

From-SVN: r189533

12 years ago[multiple changes]
Arnaud Charlet [Mon, 16 Jul 2012 12:55:50 +0000 (14:55 +0200)]
[multiple changes]

2012-07-16  Thomas Quinot  <quinot@adacore.com>

* freeze.adb (Check_Component_Storage_Order): Do not reject a
nested composite with different scalar storage order if it is
byte aligned.

2012-07-16  Thomas Quinot  <quinot@adacore.com>

* gnat_rm.texi: Update documentation for Scalar_Storage_Order.

2012-07-16  Tristan Gingold  <gingold@adacore.com>

* a-exexpr.adb (Propagate_Exception): Adjust call to
Exception_Traces procedures.
* a-exexpr-gcc.adb (Setup_Current_Excep): Now a
function that returns an access to the Ada occurrence.
(Propagate_GCC_Exception): Adjust calls.
* raise.h (struct Exception_Occurrence): Declare.
* a-exextr.adb: Remove useless pragma. (Notify_Handled_Exception,
Notify_Unhandled_Exception) (Unhandled_Exception_Terminate):
Add Excep parameter.
* a-except.adb (Notify_Handled_Exception,
Notify_Unhandled_Exception) (Unhandled_Exception_Terminate):
Add Excep parameter.
(Process_Raise_Exception): Adjust calls.
* a-except-2005.adb (Notify_Handled_Exception,
Notify_Unhandled_Exception) (Unhandled_Exception_Terminate): Add
Excep parameter.
(Raise_Exception): Calls Raise_Exception_Always.
* raise-gcc.c (__gnat_setup_current_excep,
__gnat_notify_handled_exception)
(__gnat_notify_unhandled_exception): Adjust declarations.
(PERSONALITY_FUNCTION): Adjust calls.
(__gnat_personality_seh0): Remove warning.

2012-07-16  Javier Miranda  <miranda@adacore.com>

* sem_eval.adb (Test_Expression_Is_Foldable): Adding documentation.
(Eval_Relational_Op): Adding documentation.

From-SVN: r189532

12 years ago[multiple changes]
Arnaud Charlet [Mon, 16 Jul 2012 12:51:41 +0000 (14:51 +0200)]
[multiple changes]

2012-07-16  Robert Dewar  <dewar@adacore.com>

* freeze.adb, g-debpoo.adb, exp_ch3.adb: Minor reformatting.

2012-07-16  Thomas Quinot  <quinot@adacore.com>

* s-oscons-tmplt.c: Add definitions of E2BIG and EILSEQ.

2012-07-16  Tristan Gingold  <gingold@adacore.com>

* a-exexpr.adb (Propagate_Continue): New function replacing
Raise_Current_Excep.
(Allocate_Occurrence): New function.
(Propagate_Exception): Add Excep parameter, remove call to Call_Chain.
* a-exexpr-gcc.adb (GNAT_GCC_Exception): Occurrence component
is now aliased.
(To_GCC_Exception): Convert from Address.
(Allocate_Occurrence): Allocate an Unwind exception occurrence.
(Setup_Current_Excep): Fill the machine occurrence in case of
foreign exception.
(Propagate_Exception): Add Excep parameter, remove call to Call_Chain.
* a-except.adb (Set_Exception_C_Msg, Set_Exception_Msg): add
Excep parameter.
(Raise_Exception, Raise_Exception_Always,
Raise_Exception_No_Defer): Adjust calls to the above procedures.
(Raise_From_Signal_Handler, Raise_With_Location_And_Msg)
(Rcheck_PE_Finalize_Raised_Exception): Likewise.
* a-except-2005.adb (Set_Exception_C_Msg, Set_Exception_Msg):
add Excep parameter.
(Propagate_Exception): Likewise.
(Allocate_Occurrence): New function.
(Raise_Current_Excep): Removed.
(Complete_Occurrence): New function to save the call chain.
(Complete_And_Propagate_Occurrence): New procedure.
(Create_Occurrence_From_Signal_Handler): New function to build an
occurrence without propagating it.
(Create_Machine_Occurrence_From_Signal_Handler): Likewise, but
return the machine occurrence.
(Raise_From_Signal_Handler): Use Create_Occurrence_From_Signal_Handler.
(Raise_Exception, Raise_Exception_Always, Raise_Exception_No_Defer):
Adjust calls to the above procedures. Allocate the occurrence at
the beginning.
(Raise_With_Location_And_Msg, Raise_With_Msg)
(Rcheck_PE_Finalize_Raised_Exceptionm Reraise): Likewise.
(Reraise_Occurrence): Use Reraise_Occurrence_Always.
(Reraise_Occurrence_Always): Use Reraise_Occurrence_No_Defer.
(Reraise_Occurrence_No_Defer): Preserve machine occurrence.
(Save_Occurrence): Do not save machine occurrence.
* a-except-2005.ads (Exception_Occurrence): Add Machine_Occurrence
component.
(Null_Occurrence): Consider it.
* a-exexda.adb (Set_Exception_C_Msg, Set_Exception_Msg): add
Excep parameter.

2012-07-16  Tristan Gingold  <gingold@adacore.com>

* seh_init.c (__gnat_map_SEH): New function extracted from
__gnat_SEH_error_handler.
* raise-gcc.c: __gnat_personality_seh0: Directly transforms
Windows system exception into GCC one when possible, in order
to save stack room (particularly useful when Storage_Error will
be propagated).

From-SVN: r189530

12 years agoRestore type attribute comparison
H.J. Lu [Mon, 16 Jul 2012 12:35:10 +0000 (12:35 +0000)]
Restore type attribute comparison

PR middle-end/53959
PR bootstrap/53963
* gimple.c (gimple_types_compatible_p_1): Restore type attribute
comparison.

From-SVN: r189528

12 years agoopts.c (default_option): Add -fvect-cost-model to default options at -O3 and above.
Bill Schmidt [Mon, 16 Jul 2012 12:32:25 +0000 (12:32 +0000)]
opts.c (default_option): Add -fvect-cost-model to default options at -O3 and above.

2012-07-16  Bill Schmidt  <wschmidt@linux.ibm.com>

* opts.c (default_option): Add -fvect-cost-model to default options
at -O3 and above.

From-SVN: r189527

12 years ago[multiple changes]
Arnaud Charlet [Mon, 16 Jul 2012 12:26:58 +0000 (14:26 +0200)]
[multiple changes]

2012-07-16  Robert Dewar  <dewar@adacore.com>

* a-direct.adb, g-dirope.adb: Minor reformatting.

2012-07-16  Tristan Gingold  <gingold@adacore.com>

* a-except.ads, a-except-2005.ads: Remove outdated comment.

2012-07-16  Robert Dewar  <dewar@adacore.com>

* sem_ch6.adb (Subprogram_Name_Greater): Fix algorithm to
conform to documentation.

2012-07-16  Ed Schonberg  <schonberg@adacore.com>

* gnat1drv.adb (Check_Library_Items): Removed, no longer used.

2012-07-16  Ed Schonberg  <schonberg@adacore.com>

* sem_ch3.adb (Array_Type_Declaration): if component type has
invariants, the array type itself requires an invariant procedure.
* exp_ch3.ads, exp_ch3.adb (Build_Array_Invariant_Proc): new
procedure, to build a checking procedure that applies the
invariant check on some type T to each component of an array
of T's.  Code is similar to the construction of the init_proc
for an array, and handles multidimensional arrays by recursing
over successive dimensions.

2012-07-16  Hristian Kirtchev  <kirtchev@adacore.com>

* g-debpoo.adb: Revert previous change.

2012-07-16  Hristian Kirtchev  <kirtchev@adacore.com>

* freeze.adb (Freeze_Entity): Insert the itype reference to a
library-level class-wide subtype after the freeze node of the
equivalent record type.

From-SVN: r189526

12 years agos-crtl.ads (mkdir): New routine, support encoding.
Pascal Obry [Mon, 16 Jul 2012 12:08:15 +0000 (12:08 +0000)]
s-crtl.ads (mkdir): New routine, support encoding.

2012-07-16  Pascal Obry  <obry@adacore.com>

* s-crtl.ads (mkdir): New routine, support encoding.
* adaint.h (__gnat_mkdir): Update spec to pass encoding.
* mkdir.c (__gnat_mkdir): Add encoding parameter.
* a-direct.adb (Create_Directory): Use CRTL.mkdir, parse encoding
in form parameter.
* g-dirope.adb (Make_Dir): Update to pass encoding parameter.

2012-07-16  Pascal Obry  <obry@adacore.com>

* adaint.c: Minor reformatting.

From-SVN: r189525

12 years agographite-clast-to-gimple.c, [...]: Include tree-pass.h instead of dumpfile.h for...
Steven Bosscher [Mon, 16 Jul 2012 12:01:34 +0000 (12:01 +0000)]
graphite-clast-to-gimple.c, [...]: Include tree-pass.h instead of dumpfile.h for pass TODO flags.

* graphite-clast-to-gimple.c, graphite-dependences.c,
graphite-sese-to-poly.c: Include tree-pass.h instead of dumpfile.h
for pass TODO flags.
* Makefile.in: Fix dependencies.

From-SVN: r189524

12 years agohaifa-sched.c (init_before_recovery): Do not set EDGE_CAN_FALLTHRU.
Steven Bosscher [Mon, 16 Jul 2012 11:50:29 +0000 (11:50 +0000)]
haifa-sched.c (init_before_recovery): Do not set EDGE_CAN_FALLTHRU.

* haifa-sched.c (init_before_recovery): Do not set EDGE_CAN_FALLTHRU.
* cfgrtl.c (force_nonfallthru_and_redirect): Likewise.

From-SVN: r189523

12 years agofunction.c (stack_protect_epilogue): Use expand_call to expand targetm.stack_protect_...
Steven Bosscher [Mon, 16 Jul 2012 11:47:59 +0000 (11:47 +0000)]
function.c (stack_protect_epilogue): Use expand_call to expand targetm.stack_protect_fail.

* function.c (stack_protect_epilogue): Use expand_call to expand
targetm.stack_protect_fail.
* stmt.c (expand_expr_stmt): Remove now-unused function.
* tree.h (expand_expr_stmt): Remove prototype.
* doc/tm.texi.in (TARGET_STACK_PROTECT_FAIL): Document that this
hook must return a CALL_EXPR.
* doc/tm.texi: Regenerate.

From-SVN: r189522

12 years agoemit-rtl.c (emit_label_before): Do not allow the same label to be emitted twice.
Steven Bosscher [Mon, 16 Jul 2012 11:43:47 +0000 (11:43 +0000)]
emit-rtl.c (emit_label_before): Do not allow the same label to be emitted twice.

* emit-rtl.c (emit_label_before): Do not allow the same label
to be emitted twice.
(emit_label_after): Likewise.
(emit_label): Likewise.

From-SVN: r189521

12 years agoflags.h (TYPE_OVERFLOW_WRAPS, [...]): Move to tree.h.
Steven Bosscher [Mon, 16 Jul 2012 11:42:47 +0000 (11:42 +0000)]
flags.h (TYPE_OVERFLOW_WRAPS, [...]): Move to tree.h.

* flags.h (TYPE_OVERFLOW_WRAPS, TYPE_OVERFLOW_UNDEFINED,
TYPE_OVERFLOW_TRAPS, POINTER_TYPE_OVERFLOW_UNDEFINED): Move to tree.h.
* tree.h (TYPE_OVERFLOW_WRAPS, TYPE_OVERFLOW_UNDEFINED,
TYPE_OVERFLOW_TRAPS, POINTER_TYPE_OVERFLOW_UNDEFINED): New home.

From-SVN: r189520

12 years agosystem.h (dump_file): Do not define.
Steven Bosscher [Mon, 16 Jul 2012 11:32:42 +0000 (11:32 +0000)]
system.h (dump_file): Do not define.

gcc/
* system.h (dump_file): Do not define.
* tree-pass.h: Include dumpfile.h, which is a new file containing...
(enum tree_dump_index, TDF_*, get_dump_file_name, dump_enabled_p,
dump_initialized_p, dump_begin, dump_end, dump_node, dump_switch_p,
dump_flag_name, dump_file, dump_flags, dump_file_name,
get_dump_file_info, struct dump_file_info): all of this, moved to...
* dumpfile.h: Here, new file.
* tree-dump.h: Include dumpfile.h, but not tree-pass.h.
(dump_stmt): Remove prototype for C++ specific function.
(dump_enumerated_decls): Move prototype from here...
* tree-flow.h (dump_enumerated_decls): ... to here.
(get_ref_base_and_extent) Move prototype from here ...
* tree.h (get_ref_base_and_extent) ... to here.
* tree-ssa-live.c: Do not inclde tree-pretty-print.h, because
gimple-pretty-print.h is enough.  Do not include tree-dump.h,
include timevar.h and dumpfile.h instead.
(struct numbered_tree_d, compare_decls_by_uid,
dump_enumerated_decls_push, dump_enumerated_decls): Move from here ...
* tree-dfa.c:(struct numbered_tree_d, compare_decls_by_uid,
dump_enumerated_decls_push, dump_enumerated_decls):... to here.
Do not include timevar.h.
* tree.c: Do not include timevar.h.
* tree-cfg.c: Do not include langhooks.h, tree-pretty-print.h, and
timevar.h.
(dump_cfg_stats): Use current_function_name.
(gimple_cfg2vcg): Likewise.
(dump_function_to_file): Likewise.
* df-scan.c: Do not include tree-pass.h and timevar.h.
Include dumpfile.h.
(df_entry_block_bitmap_verify, df_exit_block_bitmap_verify): Do not
use print_current_pass.
* df-problems.c: Include dumpfile.h.
Always define REG_DEAD_DEBUGGING, avoid #ifdef code, because it
leads to errors in the code not selected.
(df_note_compute): Do not print_rtl_with_bb here.  Fix compilation
bug if REG_DEAD_DEBUGGING is not 0, get_insns is not available here.
* lcm.c: Include dumpfile.h.
Remove obsolete include of insn-attr.h.
* dojump.c (do_compare_rtx_and_jump): Remove failure printing for
missing probability notes.
* stmt.c: Include dumpfile.h.
(emit_case_decision_tree): Re-enable printing expand details only
if TDF_DETAILS.
* alias.c, auto-inc-dec.c, bb-reorder.c, caller-save.c, cfg.c,
cfgcleanup.c, cfgexpand.c, cfgloop.c, cfgloopmanip.c, cgraph.c,
cgraphclones.c, cgraphunit.c, combine.c, combine-stack-adj.c,
coverage.c, cprop.c, cse.c, cselib.c, dbgcnt.c, dce.c, df-core.c,
dse.c, dwarf2out.c, emit-rtl.c, except.c, expr.c, final.c,
function.c, fwprop.c, gcse.c, gimple-fold.c,
gimple-pretty-print.c, gimple-ssa-strength-reduction.c,
gimplify.c, graphite-blocking.c, graphite-clast-to-gimple.c,
graphite-dependences.c, graphite-interchange.c,
graphite-optimize-isl.c, graphite-poly.c,
graphite-sese-to-poly.c, haifa-sched.c, hw-doloop.c, ifcvt.c,
ipa.c, ipa-cp.c, ipa-inline-analysis.c, ipa-inline.c,
ipa-inline-transform.c, ipa-prop.c, ipa-pure-const.c,
ipa-reference.c, ipa-split.c, ipa-utils.c, ira.c, ira-emit.c,
jump.c, loop-doloop.c, loop-init.c, loop-invariant.c, loop-iv.c,
loop-unroll.c, loop-unswitch.c, lower-subreg.c,
lto-section-out.c, lto-streamer-in.c, matrix-reorg.c, mcf.c,
mode-switching.c, modulo-sched.c, omega.c, omp-low.c, passes.c,
plugin.c, postreload.c, postreload-gcse.c, predict.c, print-rtl.c,
print-tree.c, profile.c, recog.c, ree.c, regcprop.c, reginfo.c,
regmove.c, regrename.c, reg-stack.c, reload1.c, reorg.c,
sched-rgn.c, sched-vis.c, sel-sched.c, sel-sched-ir.c,
store-motion.c, tracer.c, trans-mem.c, tree-affine.c,
tree-call-cdce.c, tree-cfgcleanup.c, tree-chrec.c,
tree-data-ref.c, tree-diagnostic.c, tree-dump.c,
tree-eh.c, tree-flow-inline.h, tree-if-conv.c, tree-into-ssa.c,
tree-mudflap.c, tree-nrv.c, tree-object-size.c,
tree-optimize.c, tree-outof-ssa.c, tree-predcom.c,
tree-pretty-print.c, tree-profile.c, tree-scalar-evolution.c,
tree-sra.c, tree-ssa-address.c, tree-ssa-alias.c, tree-ssa.c,
tree-ssa-ccp.c, tree-ssa-coalesce.c, tree-ssa-copy.c,
tree-ssa-copyrename.c,, tree-ssa-dce.c, tree-ssa-dom.c,
tree-ssa-dse.c, tree-ssa-forwprop.c, tree-ssa-ifcombine.c,
tree-ssa-loop.c, tree-ssa-loop-ch.c, tree-ssa-loop-im.c,
tree-ssa-loop-ivcanon.c, tree-ssa-loop-ivopts.c,
tree-ssa-loop-manip.c, tree-ssa-loop-niter.c,
tree-ssa-loop-prefetch.c, tree-ssa-loop-unswitch.c,
tree-ssa-math-opts.c, tree-ssa-operands.c, tree-ssa-phiopt.c,
tree-ssa-phiprop.c, tree-ssa-pre.c, tree-ssa-propagate.c,
tree-ssa-reassoc.c, tree-ssa-sccvn.c, tree-ssa-sink.c,
tree-ssa-structalias.c, tree-ssa-tail-merge.c, tree-ssa-ter.c,
tree-ssa-threadedge.c, tree-ssa-threadupdate.c,
tree-ssa-uncprop.c, tree-ssa-uninit.c,
tree-switch-conversion.c, tree-tailcall.c,
tree-vect-data-refs.c, tree-vect-loop.c,
tree-vect-loop-manip.c, tree-vectorizer.c,
tree-vect-patterns.c, tree-vect-slp.c, tree-vect-stmts.c,
tree-vrp.c, value-prof.c, var-tracking.c, web.c: Include tree-pass.h
only if needed.  If tree-pass.h is included, do not include timevar.h
and dumpfile.h.  If tree-pass.h is not included but dump_file, or
dump_flags, or the TDF_* flags are used, include dumpfile.h.
If gimple-pretty-print.h is included, don't include tree-pretty-print.h.
Remove assorted unnecessary includes.

* config/mn10300/mn10300.c, config/c6x/c6x.c, config/ia64/ia64.c,
config/arm/arm.c, config/bfin/bfin.c, config/frv/frv.c,
config/spu/spu.c, config/mep/mep.c, config/i386/i386.c:
Include dumpfile.h.
* config/rl78/rl78.c: Include dumpfile.h instead of tree-pass.h.
* arm/t-arm, avr/t-avr, i386/t-i386, ia64/t-ia64, mep/t-mep,
spu/t-spu-elf: Fix dependencies.

c-family/
* c-gimplify.c: Include dumpfile.h instead of tree-dump.h.
* c-ada-spec.c: Likewise.
* c-dump.c (dump_stmt): Move to cp/dump.c, the only user.

c/
* c-decl.c: Include dumpfile.h instead of tree-dump.h.
* Make-lang.in: Fix dependencies.

cp/
* dump.c (dump_stmt): Moved here from c-dump.c.
* optimize.c: Include dumpfile.h instead of tree-dump.h.
* class.c: Likewise.
* decl2.c: Likewise.
* Make-lang.in: Fix dependencies.

fortran/
* f95-lang.c: Include dumpfile.h instead of tree-dump.h.
* Make-lang.in: Fix dependencies.

java/
* java-gimplify.c Include dumpfile.h instead of tree-dump.h
* Make-lang.in: Fix dependencies.

lto/
* lto.c: Do not include timevar.h.
* Make-lang.in: Fix dependencies.

ada/
* gcc-interface/utils.c: Include timevar.h.
* Make-lang.in: Fix dependencies.

From-SVN: r189519

12 years agorevert: tree.h (phi_arg_d): New field.
Dehao Chen [Mon, 16 Jul 2012 11:08:21 +0000 (11:08 +0000)]
revert: tree.h (phi_arg_d): New field.

2012-07-16  Dehao Chen  <dehao@google.com>

Revert
2012-07-10  Dehao Chen  <dehao@google.com>

* tree.h (phi_arg_d): New field.
* tree-flow-inline.h (gimple_phi_arg_block): New function.
(gimple_phi_arg_block_from_edge): New function.
(gimple_phi_arg_set_block): New function.
(gimple_phi_arg_has_block): New function.
(redirect_edge_var_map_block): New function.
* tree-flow.h (_edge_var_map): New field.
* tree-ssa-live.c (remove_unused_locals): Mark phi_arg's block as used.
* tree-eh.c (cleanup_empty_eh_merge_phis): Add block debug info for
redirect_edge_var_map_add.
* tree-outof-ssa.c (_elim_graph): New field.
(insert_partition_copy_on_edge): New parameter.
(insert_value_copy_on_edge): New parameter.
(insert_rtx_to_part_on_edge): New parameter.
(insert_part_to_rtx_on_edge): New parameter.
(elim_graph_add_edge): New parameter.
(elim_graph_remove_succ_edge): New parameter.
(FOR_EACH_ELIM_GRAPH_SUCC): New parameter.
(FOR_EACH_ELIM_GRAPH_PRED): New parameter.
(new_elim_graph): Add block debug info.
(clear_elim_graph): Likewise.
(delete_elim_graph): Likewise.
(elim_graph_add_node): Likewise.
(elim_graph_add_edge): Likewise.
(elim_graph_remove_succ_edge): Likewise.
(eliminate_build): Likewise.
(elim_forward): Likewise.
(elim_unvisited_predecessor): Likewise.
(elim_backward): Likewise.
(elim_create): Likewise.
(eliminate_phi): Likewise.
(insert_backedge_copies): Likewise.
* tree-into-ssa.c (insert_phi_nodes_for): Add block debug info for
add_phi_arg.
(rewrite_add_phi_arguments): Likewise.
* tree-ssa-loop-im.c (execute_sm_if_changed): Likewise.
* tree-ssa-tail-merge.c (replace_block_by): Likewise.
* tree-ssa-threadupdate.c (copy_phi_args): Likewise.
* tree-loop-distribution.c (update_phis_for_loop_copy): Likewise.
* tree-ssa-loop-manip.c (create_iv): Likewise.
(add_exit_phis_edge): Likewise.
(split_loop_exit_edge): Likewise.
(copy_phi_node_args): Likewise.
(tree_transform_and_unroll_loop): Likewise.
* value-prof.c (gimple_ic): Likewise.
(gimple_stringop_fixed_value): Likewise.
* tree-tailcall.c (add_successor_phi_arg): Likewise.
(eliminate_tail_call): Likewise.
(create_tailcall_accumulator): Likewise.
(tree_optimize_tail_calls_1): Likewise.
* tree-phinodes.c (add_phi_arg): Likewise.
(make_phi_node): Likewise.
(resize_phi_node): Likewise.
(remove_phi_arg_num): Likewise.
* omp-low.c (expand_parallel_call): Likewise.
(expand_omp_for_static_chunk): Likewise.
* tree-vect-loop-manip.c (slpeel_update_phis_for_duplicate_loop):
Likewise.
(slpeel_update_phi_nodes_for_guard1): Likewise.
(slpeel_update_phi_nodes_for_guard2): Likewise.
(slpeel_tree_duplicate_loop_to_edge_cfg): Likewise.
(set_prologue_iterations): Likewise.
(slpeel_tree_peel_loop_to_edge): Likewise.
(vect_loop_versioning): Likewise.
* tree-parloops.c (create_phi_for_local_result): Likewise.
(transform_to_exit_first_loop): Likewise.
(create_parallel_loop): Likewise.
* ipa-split.c (split_function): Likewise.
* tree-vect-loop.c (get_initial_def_for_induction): Likewise.
(vect_create_epilog_for_reduction): Likewise.
* tree-vect-data-refs.c (vect_setup_realignment): Likewise.
* graphite-scop-detection.c (canonicalize_loop_closed_ssa): Likewise.
* tree-ssa-phiopt.c (cond_store_replacement): Likewise.
(cond_if_else_store_replacement_1): Likewise.
* tree-cfgcleanup.c (remove_forwarder_block): Likewise.
(remove_forwarder_block_with_phi): Likewise.
* tree-ssa-pre.c (insert_into_preds_of_block): Likewise.
* tree-predcom.c (initialize_root_vars): Likewise.
(initialize_root_vars_lm): Likewise.
* sese.c (sese_add_exit_phis_edge): Likewise.
* tree-ssa-dce.c (forward_edge_to_pdom): Likewise.
* tree-ssa.c (flush_pending_stmts): Likewise.
(redirect_edge_var_map_add): Likewise.
(ssa_redirect_edge): Likewise.
* gimple-streamer-in.c (input_phi): Likewise.
* tree-vect-stmts.c (vectorizable_load): Likewise.
* tree-inline.c (copy_phis_for_bb): Likewise.
* tree-ssa-phiprop.c (phiprop_insert_phi): Likewise.
* tree-switch-conversion.c (fix_phi_nodes): Likewise.
* tree-cfg.c (reinstall_phi_args): Likewise.
(gimple_make_forwarder_block): Likewise.
(add_phi_args_after_copy_edge): Likewise.
(gimple_duplicate_sese_tail): Likewise.

From-SVN: r189518

12 years ago[multiple changes]
Arnaud Charlet [Mon, 16 Jul 2012 10:52:21 +0000 (12:52 +0200)]
[multiple changes]

2012-07-16  Vasiliy Fofanov  <fofanov@adacore.com>

* ug_words, vms_data.ads: Document VMS qualifiers for -gnatn1/2
switches.

2012-07-16  Bob Duff  <duff@adacore.com>

* sinfo.ads: Minor comment fix.

2012-07-16  Bob Duff  <duff@adacore.com>

* sem_elab.adb (Within_Elaborate_All): Walk the with clauses to
find pragmas Elaborate_All that may be found in the transitive
closure of the dependences.

From-SVN: r189517

12 years agoexp_pakd.adb, [...]: Minor reformatting.
Robert Dewar [Mon, 16 Jul 2012 10:49:46 +0000 (10:49 +0000)]
exp_pakd.adb, [...]: Minor reformatting.

2012-07-16  Robert Dewar  <dewar@adacore.com>

* exp_pakd.adb, freeze.adb, sem_util.adb, vms_data.ads: Minor
reformatting.

From-SVN: r189516

12 years agore PR fortran/53956 ([F03] PROCEDURE w/ interface: Bogus "EXTERNAL attribute conflict...
Janus Weil [Mon, 16 Jul 2012 10:13:19 +0000 (12:13 +0200)]
re PR fortran/53956 ([F03] PROCEDURE w/ interface: Bogus "EXTERNAL attribute conflicts with FUNCTION attribute")

2012-07-16  Janus Weil  <janus@gcc.gnu.org>

PR fortran/53956
* gfortran.h (gfc_copy_formal_args,gfc_copy_formal_args_ppc): Modified
prototypes.
* symbol.c (gfc_copy_formal_args): New argument 'if_src'. Copy if_source
of dummy procedures.
(gfc_copy_formal_args_ppc): Ditto.
* resolve.c (resolve_procedure_interface): Pass IFSRC_DECL to
gfc_copy_formal_args.
(resolve_fl_derived0): Pass IFSRC_DECL to gfc_copy_formal_args_ppc.

2012-07-16  Janus Weil  <janus@gcc.gnu.org>

PR fortran/53956
* gfortran.dg/proc_decl_28.f90: New.

From-SVN: r189514

12 years agoi386.md (stack_protect_set): Disable the pattern for Android since Android libc ...
Sergey Melnikov [Mon, 16 Jul 2012 10:00:37 +0000 (10:00 +0000)]
i386.md (stack_protect_set): Disable the pattern for Android since Android libc (bionic) does not provide...

2012-07-16 Sergey Melnikov <sergey.melnikov@intel.com>

        * config/i386/i386.md (stack_protect_set): Disable the pattern
        for Android since Android libc (bionic) does not provide random
        value for stack protection guard at gs:0x14. Guard value
        will be provided from external symbol (default implementation).
        (stack_protect_set_<mode>): Likewise.
        (stack_protect_test): Likewise.
        (stack_protect_test_<mode>): Likewise.

From-SVN: r189513

12 years agobuiltins-1.c: New testcase.
Andrew Pinski [Mon, 16 Jul 2012 07:17:49 +0000 (07:17 +0000)]
builtins-1.c: New testcase.

2012-07-16  Andrew Pinski  <apinski@cavium.com>

* gcc.dg/torture/builtins-1.c: New testcase.

From-SVN: r189510

12 years agoCommit hunk missing from last change
Hans-Peter Nilsson [Mon, 16 Jul 2012 06:11:09 +0000 (06:11 +0000)]
Commit hunk missing from last change

From-SVN: r189509

12 years agoTweak ChangeLog formatting for my recent entries
Hans-Peter Nilsson [Mon, 16 Jul 2012 03:33:35 +0000 (03:33 +0000)]
Tweak ChangeLog formatting for my recent entries

From-SVN: r189508

12 years agocris-protos.h (cris_legitimate_address_p): Declare.
Hans-Peter Nilsson [Mon, 16 Jul 2012 03:31:12 +0000 (03:31 +0000)]
cris-protos.h (cris_legitimate_address_p): Declare.

* config/cris/cris-protos.h (cris_legitimate_address_p): Declare.
* config/cris/cris.h (CONSTANT_ADDRESS_P): Define in terms of
CONSTANT_P and cris_legitimate_address_p.
* config/cris/cris.c (cris_legitimate_address_p): Make non-static.

From-SVN: r189507

12 years agocris.c (cris_preferred_reload_class): Don't return GENERAL_REGS as preferred to MOF_S...
Hans-Peter Nilsson [Mon, 16 Jul 2012 03:24:14 +0000 (03:24 +0000)]
cris.c (cris_preferred_reload_class): Don't return GENERAL_REGS as preferred to MOF_SRP_REGS.

* config/cris/cris.c (cris_preferred_reload_class):
Don't return GENERAL_REGS as preferred to MOF_SRP_REGS.

From-SVN: r189506

12 years agosync-2i.c, [...]: For cris*-*-linux*, also pass -mno-unaligned-atomic-may-use-library.
Hans-Peter Nilsson [Mon, 16 Jul 2012 03:21:47 +0000 (03:21 +0000)]
sync-2i.c, [...]: For cris*-*-linux*, also pass -mno-unaligned-atomic-may-use-library.

* gcc.target/cris/sync-2i.c, gcc.target/cris/sync-2s.c,
gcc.target/cris/sync-3i.c, gcc.target/cris/sync-3s.c,
gcc.target/cris/sync-4i.c, gcc.target/cris/sync-4s.c,
gcc.target/cris/sync-1-v10.c,
gcc.target/cris/sync-1-v32.c: For cris*-*-linux*, also
pass -mno-unaligned-atomic-may-use-library.
* gcc.target/cris/sync-xchg-1.c: New test.

From-SVN: r189505

12 years agocris.c (cris_init_libfuncs): Handle initialization of library functions for basic...
Hans-Peter Nilsson [Mon, 16 Jul 2012 03:18:23 +0000 (03:18 +0000)]
cris.c (cris_init_libfuncs): Handle initialization of library functions for basic atomic compare-and-swap.

* config/cris/cris.c (cris_init_libfuncs): Handle initialization
of library functions for basic atomic compare-and-swap.
* config/cris/cris.h (TARGET_ATOMICS_MAY_CALL_LIBFUNCS): New macro.
* config/cris/cris.opt (munaligned-atomic-may-use-library): New
option.
* config/cris/sync.md ("atomic_fetch_<atomic_op_name><mode>")
("cris_atomic_fetch_<atomic_op_name><mode>_1")
("atomic_compare_and_swap<mode>")
("cris_atomic_compare_and_swap<mode>_1"): Make
conditional on TARGET_ATOMICS_MAY_CALL_LIBFUNCS for
sizes larger than byte.

From-SVN: r189504

12 years agocris.c (cris_print_operand): New cases.
Hans-Peter Nilsson [Mon, 16 Jul 2012 03:11:31 +0000 (03:11 +0000)]
cris.c (cris_print_operand): New cases.

* config/cris/cris.c (cris_print_operand) <case 'P', 'q'>: New cases.
* config/cris/sync.md (atomic_op_op_cnstr): New code_attr.
(atomic_op_op_pred): Ditto.
(atomic_op_mnem_pre_op2): Renamed from atomic_op_mnem_pre; to
reflect the change to include %2 in expansion.  All callers changed.
(qm3): New mode_attr.
("atomic_fetch_<atomic_op_name><mode>"): Use <atomic_op_op_pred>
as predicate for operand 2.
("cris_atomic_fetch_<atomic_op_name><mode>_1"): Update FIXME.  Use
"<atomic_op_op_pred>" "<atomic_op_op_cnstr>" for predicate and
constraint for operand 2.
("atomic_compare_and_swap<mode>"): Add FIXME.  Change predicate to
nonmemory_operand for operand 3.
("cris_atomic_compare_and_swap<mode>_1"): Change operand 3 to
exclude memory.  Improve emitted sync code for v10 and v32.  Use
<qm3> instead of <m> for size designator for cmp.

From-SVN: r189503

12 years ago20011127-1.c: Adjust to %P being a valid register operand output modifier.
Hans-Peter Nilsson [Mon, 16 Jul 2012 03:09:57 +0000 (03:09 +0000)]
20011127-1.c: Adjust to %P being a valid register operand output modifier.

* gcc.target/cris/20011127-1.c: Adjust to %P being a
valid register operand output modifier.

From-SVN: r189502

12 years agosync.md ("atomic_compare_and_swap<mode>"): Change predicate to nonmemory_operand...
Hans-Peter Nilsson [Mon, 16 Jul 2012 03:02:47 +0000 (03:02 +0000)]
sync.md ("atomic_compare_and_swap<mode>"): Change predicate to nonmemory_operand for operand 3.

* config/cris/sync.md ("atomic_compare_and_swap<mode>"): Change
predicate to nonmemory_operand for operand 3.  Add FIXME.
("cris_atomic_compare_and_swap<mode>_1"): Change predicates and

From-SVN: r189501

12 years ago* config/cris/sync.md ("atomic_fetch_<atomic_op_name><mode>")
Hans-Peter Nilsson [Mon, 16 Jul 2012 02:59:42 +0000 (02:59 +0000)]
* config/cris/sync.md ("atomic_fetch_<atomic_op_name><mode>")
("atomic_compare_and_swap<mode>"): Gate expand_mem_thread_fence
calls on result of call to need_atomic_barrier_p.

From-SVN: r189500

12 years agoDaily bump.
GCC Administrator [Mon, 16 Jul 2012 00:18:10 +0000 (00:18 +0000)]
Daily bump.

From-SVN: r189499

12 years agomips.md (move_type): Replace mfhilo and mthilo with mflo and mtlo.
Richard Sandiford [Sun, 15 Jul 2012 16:26:48 +0000 (16:26 +0000)]
mips.md (move_type): Replace mfhilo and mthilo with mflo and mtlo.

gcc/
* config/mips/mips.md (move_type): Replace mfhilo and mthilo
with mflo and mtlo.
(type): Split mfhilo into mfhi and mflo.  Split mthilo into mthi
and mtlo.  Adjust move_type->type mapping.
(may_clobber_hilo): Split mthilo into mthi and mtlo.
(*movdi_32bit, *movdi_32bit_mips16, *movdi_64bit, *movdi_64bit_mips16)
(*mov<mode>_internal, *mov<mode>_mips16, *movhi_internal)
(*movhi_mips16, *movqi_internal, *movqi_mips16): Use mtlo and mflo
instead of mthilo and mfhilo.
(mfhi<GPR:mode>_<HILO:mode>): Use mfhi instead of mfhilo.
(mthi<GPR:mode>_<HILO:mode>): Use mthi instead of mthilo.
* config/mips/mips-dsp.md (mips_extr_w, mips_extr_r_w, mips_extr_rs_w)
(mips_extr_s_h, mips_extp, mips_extpdp, mips_shilo, mips_mthlip):
Use mflo instead of mfhilo.
* config/mips/10000.md (r10k_arith): Split mthilo.
(r10k_mfhi, r10k_mflo): Use mfhi and mflo directly.
* config/mips/sb1.md (ir_sb1_mfhi, ir_sb1_mflo): Likewise.
(ir_sb1_mthilo): Split mthilo into mthi and mtlo.
* config/mips/20kc.md (r20kc_imthilo, r20kc_imfhilo): Split
mthilo and mfhilo.
* config/mips/24k.md (r24k_int_mfhilo, r24k_int_mthilo): Likewise.
* config/mips/4130.md (vr4130_class, vr4130_mfhilo, vr4130_mthilo):
Likewise.
* config/mips/4k.md (r4k_int_mthilo, r4k_int_mfhilo): Likewise.
* config/mips/5400.md (ir_vr54_hilo): Likewise.
* config/mips/5500.md (ir_vr55_mthilo, ir_vr55_mfhilo): Likewise.
* config/mips/5k.md (r5k_int_mthilo, r5k_int_mfhilo): Likewise.
* config/mips/7000.md (rm7_mthilo, rm7_mfhilo): Likewise.
* config/mips/74k.md (r74k_int_mfhilo, r74k_int_mthilo): Likewise.
* config/mips/9000.md (rm9k_mfhilo, rm9k_mthilo): Likewise.
* config/mips/generic.md (generic_hilo): Likewise.
* config/mips/loongson2ef.md (ls2_alu): Likewise.
* config/mips/loongson3a.md (ls3a_mfhilo): Likewise.
* config/mips/octeon.md (octeon_imul_o1, octeon_imul_o2)
(octeon_mfhilo_o1, octeon_mfhilo_o2): Likewise.
* config/mips/sr71k.md (ir_sr70_hilo): Likewise.
* config/mips/xlr.md (xlr_hilo): Likewise.

From-SVN: r189496

12 years agopubnames-2.C: Support all known comment characters.
Andreas Schwab [Sun, 15 Jul 2012 10:22:35 +0000 (10:22 +0000)]
pubnames-2.C: Support all known comment characters.

* g++.dg/debug/dwarf2/pubnames-2.C: Support all known comment
characters.

From-SVN: r189494

12 years agoDaily bump.
GCC Administrator [Sun, 15 Jul 2012 00:18:16 +0000 (00:18 +0000)]
Daily bump.

From-SVN: r189489

12 years agosh.h (SH_ASM_SPEC): Add spaces between options.
Andrew Stubbs [Sun, 15 Jul 2012 00:02:47 +0000 (00:02 +0000)]
sh.h (SH_ASM_SPEC): Add spaces between options.

2012-07-14  Andrew Stubbs  <ams@codesourcery.com>
    Sandra Loosemore  <sandra@codesourcery.com>

gcc/
* config/sh/sh.h (SH_ASM_SPEC): Add spaces between options.

Co-Authored-By: Sandra Loosemore <sandra@codesourcery.com>
From-SVN: r189486

12 years agoAdd missing pthread requirement.
Mike Stump [Sat, 14 Jul 2012 22:38:41 +0000 (22:38 +0000)]
Add missing pthread requirement.

From-SVN: r189485

12 years agoi386.c (ix86_set_reg_reg_cost): Enable TFmode/TCmode for TARGET_SSE.
Uros Bizjak [Sat, 14 Jul 2012 19:33:12 +0000 (21:33 +0200)]
i386.c (ix86_set_reg_reg_cost): Enable TFmode/TCmode for TARGET_SSE.

* config/i386/i386.c (ix86_set_reg_reg_cost): Enable TFmode/TCmode
for TARGET_SSE.

From-SVN: r189483

12 years agotoplev.c (init_asm_output): Open asm_out_file in 'w' mode.
Steven Bosscher [Sat, 14 Jul 2012 17:28:31 +0000 (17:28 +0000)]
toplev.c (init_asm_output): Open asm_out_file in 'w' mode.

gcc/
* toplev.c (init_asm_output): Open asm_out_file in 'w' mode.

c-family/
* c-pch.c (CHECK_NO_ASM_OUT_DURING_PCH): Do not define.
Remove code conditional on it.

From-SVN: r189482

12 years ago* config/t-darwin (crt3.0): Remove work-around for fixed PR26840.
Steven Bosscher [Sat, 14 Jul 2012 13:50:59 +0000 (13:50 +0000)]
* config/t-darwin (crt3.0): Remove work-around for fixed PR26840.

From-SVN: r189479

12 years agoocteon2-pipe-1.c: Use cleanup-rtl-dump rather than cleanup-tree-dump.
Andrew Pinski [Sat, 14 Jul 2012 01:15:59 +0000 (01:15 +0000)]
octeon2-pipe-1.c: Use cleanup-rtl-dump rather than cleanup-tree-dump.

2012-07-13  Andrew Pinski  <apinski@cavium.com>

* gcc.target/mips/octeon2-pipe-1.c: Use cleanup-rtl-dump
rather than cleanup-tree-dump.
* gcc.target/mips/octeon-pipe-1.c: Likewise.

tree

From-SVN: r189477

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

From-SVN: r189476

12 years agore PR bootstrap/53955 (Missing prototypes in i386.c, bootstrap failure with --disable...
Bill Schmidt [Fri, 13 Jul 2012 22:33:31 +0000 (22:33 +0000)]
re PR bootstrap/53955 (Missing prototypes in i386.c, bootstrap failure with --disable-build-poststage1-with-cxx)

2012-07-13  Bill Schmidt  <wschmidt@linux.ibm.com>

PR bootstrap/53955
* config/spu/spu.c (spu_init_cost): Mark static.
(spu_add_stmt_cost): Likewise.
(spu_finish_cost): Likewise.
(spu_destroy_cost_data): Likewise.
* config/i386/i386.c (ix86_init_cost): Mark static.
(ix86_add_stmt_cost): Likewise.
(ix86_finish_cost): Likewise.
(ix86_destroy_cost_data): Likewise.
* config/rs6000/rs6000.c (rs6000_init_cost): Mark static.
(rs6000_add_stmt_cost): Likewise.
(rs6000_finish_cost): Likewise.
(rs6000_destroy_cost_data): Likewise.

From-SVN: r189473

12 years agofilenames.h: #include "hashtab.h".
Doug Evans [Fri, 13 Jul 2012 22:12:28 +0000 (22:12 +0000)]
filenames.h: #include "hashtab.h".

include/
* filenames.h: #include "hashtab.h".
(filename_hash, filename_eq): Declare.
libiberty/
* filename_cmp.c (filename_hash, filename_eq): New functions.

From-SVN: r189472

12 years agoggc.h (ggc_internal_alloc_stat, [...]): Add ATTRIBUTE_MALLOC.
Steven Bosscher [Fri, 13 Jul 2012 17:51:34 +0000 (17:51 +0000)]
ggc.h (ggc_internal_alloc_stat, [...]): Add ATTRIBUTE_MALLOC.

* ggc.h (ggc_internal_alloc_stat, ggc_alloc_typed_stat,
ggc_internal_cleared_alloc_stat, ggc_cleared_alloc_htab_ignore_args,
ggc_cleared_alloc_ptr_array_two_args, ggc_splay_alloc): Add
ATTRIBUTE_MALLOC.
* alloc-pool.h (pool_alloc): Likewise.

* final.c (final): Do not loop to find max_uid.

From-SVN: r189470

12 years agoemit-rtl.c (make_debug_insn_raw, [...]): Make static.
Steven Bosscher [Fri, 13 Jul 2012 15:56:04 +0000 (15:56 +0000)]
emit-rtl.c (make_debug_insn_raw, [...]): Make static.

* emit-rtl.c (make_debug_insn_raw, make_jump_insn_raw): Make static.
* rtl.h (make_debug_insn_raw, make_jump_insn_raw): Remove prototypes.

From-SVN: r189467

12 years agore PR regression/53953 (g++.dg/cpp0x/lambda/lambda-ice2.C (warnings and errors not...
Jason Merrill [Fri, 13 Jul 2012 15:08:55 +0000 (11:08 -0400)]
re PR regression/53953 (g++.dg/cpp0x/lambda/lambda-ice2.C (warnings and errors not matching))

PR c++/53953
* method.c (synthesized_method_walk): Initialize no_implicit_p sooner.

From-SVN: r189465

12 years agoctors.exp: Explicitely specify -O0.
Richard Guenther [Fri, 13 Jul 2012 13:25:13 +0000 (13:25 +0000)]
ctors.exp: Explicitely specify -O0.

2012-07-13  Richard Guenther  <rguenther@suse.de>

* testsuite/libmudflap.c++/ctors.exp: Explicitely specify -O0.
* testsuite/libmudflap.c++/c++frags.exp: Likewise.
* testsuite/libmudflap.cth/cthfrags.exp: Likewise.
* testsuite/libmudflap.c/cfrags.exp: Likewise.
* testsuite/libmudflap.c/externs.exp: Likewise.

From-SVN: r189464

12 years agofail11-frag.c: Adjust to not look like memset.
Richard Guenther [Fri, 13 Jul 2012 13:11:37 +0000 (13:11 +0000)]
fail11-frag.c: Adjust to not look like memset.

2012-07-13  Richard Guenther  <rguenther@suse.de>

* testsuite/libmudflap.c/fail11-frag.c: Adjust to not look like memset.
* testsuite/libmudflap.c/fail12-frag.c: Likewise.

From-SVN: r189463

12 years agore PR target/53907 (gcc uses unaligned load when aligned load was requested)
Richard Guenther [Fri, 13 Jul 2012 13:01:06 +0000 (13:01 +0000)]
re PR target/53907 (gcc  uses unaligned load when aligned load was requested)

2012-07-13  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/53907
* tree-ssa-forwprop.c (associate_pointerplus): New function.
(ssa_forward_propagate_and_combine): Call it.

* gcc.target/i386/pr53907.c: New testcase.

From-SVN: r189462

12 years agore PR tree-optimization/53922 (VRP: semantic conflict between range_includes_zero_p...
Richard Guenther [Fri, 13 Jul 2012 11:21:39 +0000 (11:21 +0000)]
re PR tree-optimization/53922 (VRP: semantic conflict between range_includes_zero_p and value_inside_range)

2012-07-13  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/53922
* tree-vrp.c (value_inside_range): Change prototype to take
min/max instead of value-range.
(range_includes_zero_p): Likewise.  Return the result from
value_inside_range.
(extract_range_from_binary_expr_1): Adjust to handle dont-know
return value from range_includes_zero_p.
(extract_range_from_unary_expr_1): Likewise.
(compare_range_with_value): Likewise.
(vrp_meet_1): Likewise.

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

From-SVN: r189461

12 years agotm.texi: Regenerate.
Bill Schmidt [Fri, 13 Jul 2012 11:12:33 +0000 (11:12 +0000)]
tm.texi: Regenerate.

2012-07-13  Bill Schmidt  <wschmidt@linux.ibm.com>

* doc/tm.texi: Regenerate.
* doc/tm.texi.in (TARGET_VECTORIZE_INIT_COST): New hook.
(TARGET_VECTORIZE_ADD_STMT_COST): Likewise.
(TARGET_VECTORIZE_FINISH_COST): Likewise.
(TARGET_VECTORIZE_DESTROY_COST_DATA): Likewise.
* targhooks.c (default_init_cost): New function.
(default_add_stmt_cost): Likewise.
(default_finish_cost): Likewise.
(default_destroy_cost_data): Likewise.
* targhooks.h (default_init_cost): New decl.
(default_add_stmt_cost): Likewise.
(default_finish_cost): Likewise.
(default_destroy_cost_data): Likewise.
* target.def (init_cost): New DEFHOOK.
(add_stmt_cost): Likewise.
(finish_cost): Likewise.
(destroy_cost_data): Likewise.
* target.h (struct _stmt_vec_info): New extern decl.
(stmt_vectype): Likewise.
(stmt_in_inner_loop_p): Likewise.
* tree-vectorizer.h (stmt_info_for_cost): New struct/typedef.
(stmt_vector_for_cost): New VEC/typedef.
(add_stmt_info_to_vec): New function.
(struct _slp_tree): Remove cost.inside_of_loop field.
(struct _slp_instance): Remove cost.inside_of_loop field; add
stmt_cost_vec field.
(SLP_INSTANCE_INSIDE_OF_LOOP_COST): Remove macro.
(SLP_INSTANCE_STMT_COST_VEC): New accessor macro.
(SLP_TREE_INSIDE_OF_LOOP_COST): Remove macro.
(struct _vect_peel_extended_info): Add stmt_cost_vec field.
(struct _loop_vec_info): Add target_cost_data field.
(LOOP_VINFO_TARGET_COST_DATA): New accessor macro.
(struct _bb_vec_info): Add target_cost_data field.
(BB_VINFO_TARGET_COST_DATA): New accessor macro.
(struct _stmt_vec_info): Remove cost.inside_of_loop field.
(STMT_VINFO_INSIDE_OF_LOOP_COST): Remove macro.
(stmt_vinfo_set_inside_of_loop_cost): Remove function.
(init_cost): New function.
(add_stmt_cost): Likewise.
(finish_cost): Likewise.
(destroy_cost_data): Likewise.
(vect_model_simple_cost): Change parameter list.
(vect_model_store_cost): Likewise.
(vect_model_load_cost): Likewise.
(record_stmt_cost): New extern decl.
(vect_get_load_cost): Change parameter list.
(vect_get_store_cost): Likewise.
* tree-vect-loop.c (new_loop_vec_info): Call init_cost.
(destroy_loop_vec_info): Call destroy_cost_data.
(vect_estimate_min_profitable_iters): Remove old calculation of
inside costs; call finish_cost instead.
(vect_model_reduction_cost): Call add_stmt_cost instead of old
inside-costs calculation.
(vect_model_induction_cost): Likewise.
* tree-vect-data-refs.c (vect_get_data_access_cost): Change to
return a stmt_vector_for_cost; modify calls to vect_get_load_cost
and vect_get_store_cost to obtain the value to return.
(vect_peeling_hash_get_lowest_cost): Obtain a stmt_cost_vec from
vect_get_data_access_cost and store it in the minimum peeling
structure.
(vect_peeling_hash_choose_best_peeling): Change the parameter list
to add a (stmt_vector_for_cost *) output parameter, and set its value.
(vect_enhance_data_refs_alignment): Ignore the new return value from
calls to vect_get_data_access_cost; obtain stmt_cost_vec from
vect_peeling_hash_choose_best_peeling and pass its contents to the
target cost model.
* tree-vect-stmts.c (stmt_vectype): New function.
(stmt_in_inner_loop_p): Likewise.
(record_stmt_cost): Likewise.
(vect_model_simple_cost): Add stmt_cost_vec parameter; call
record_stmt_cost instead of old calculation; don't call
stmt_vinfo_set_inside_of_loop_cost.
(vect_model_promotion_demotion_cost): Call add_stmt_cost instead of
old calculation; don't call stmt_vinfo_set_inside_of_loop_cost.
(vect_model_store_cost): Add stmt_cost_vec parameter; call
record_stmt_cost instead of old calculation; add stmt_cost_vec
parameter to vect_get_store_cost call; don't call
stmt_vinfo_set_inside_of_loop_cost.
(vect_get_store_cost): Add stmt_cost_vec parameter; call
record_stmt_cost instead of old calculation.
(vect_model_load_cost): Add stmt_cost_vec parameter; call
record_stmt_cost instead of old calculation; add stmt_cost_vec
parameter to vect_get_load_cost call; don't call
stmt_vinfo_set_inside_of_loop_cost.
(vect_get_load_cost): Add stmt_cost_vec parameter; call
record_stmt_cost instead of old calculation.
(vectorizable_call): Add NULL parameter to vect_model_simple_cost call.
(vectorizable_conversion): Likewise.
(vectorizable_assignment): Likewise.
(vectorizable_shift): Likewise.
(vectorizable_operation): Likewise.
(vectorizable_store): Add NULL parameter to vect_model_store_cost call.
(vectorizable_load): Add NULL parameter to vect_model_load_cost call.
(new_stmt_vec_info): Don't set STMT_VINFO_INSIDE_OF_LOOP_COST.
* config/spu/spu.c (TARGET_VECTORIZE_INIT_COST): New macro def.
(TARGET_VECTORIZE_ADD_STMT_COST): Likewise.
(TARGET_VECTORIZE_FINISH_COST): Likewise.
(TARGET_VECTORIZE_DESTROY_COST_DATA): Likewise.
(spu_init_cost): New function.
(spu_add_stmt_cost): Likewise.
(spu_finish_cost): Likewise.
(spu_destroy_cost_data): Likewise.
* config/i386/i386.c (ix86_init_cost): New function.
(ix86_add_stmt_cost): Likewise.
(ix86_finish_cost): Likewise.
(ix86_destroy_cost_data): Likewise.
(TARGET_VECTORIZE_INIT_COST): New macro def.
(TARGET_VECTORIZE_ADD_STMT_COST): Likewise.
(TARGET_VECTORIZE_FINISH_COST): Likewise.
(TARGET_VECTORIZE_DESTROY_COST_DATA): Likewise.
* config/rs6000/rs6000.c (TARGET_VECTORIZE_INIT_COST): New macro def.
(TARGET_VECTORIZE_ADD_STMT_COST): Likewise.
(TARGET_VECTORIZE_FINISH_COST): Likewise.
(TARGET_VECTORIZE_DESTROY_COST_DATA): Likewise.
(rs6000_init_cost): New function.
(rs6000_add_stmt_cost): Likewise.
(rs6000_finish_cost): Likewise.
(rs6000_destroy_cost_data): Likewise.
* tree-vect-slp.c (vect_free_slp_instance): Free stmt_cost_vec.
(vect_create_new_slp_node): Don't set SLP_TREE_INSIDE_OF_LOOP_COST.
(vect_get_and_check_slp_defs): Add stmt_cost_vec parameter; add
stmt_cost_vec parameter to vect_model_store_cost and
vect_model_simple_cost calls.
(vect_build_slp_tree): Remove inside_cost parameter; add stmt_cost_vec
parameter; add stmt_cost_vec parameter to vect_get_and_check_slp_defs,
vect_model_load_cost, and recursive vect_build_slp_tree calls; prevent
calculating cost more than once for loads; remove inside_cost
parameter from recursive vect_build_slp_tree calls; call
record_stmt_cost instead of old calculation.
(vect_analyze_slp_instance): Allocate stmt_cost_vec and save it with
the instance; free it on premature exit; remove inside_cost parameter
from vect_build_slp_tree call; add stmt_cost_vec parameter to
vect_build_slp_tree call; don't set SLP_INSTANCE_INSIDE_OF_LOOP_COST.
(new_bb_vec_info): Call init_cost.
(destroy_bb_vec_info): Call destroy_cost_data.
(vect_bb_vectorization_profitable_p): Call add_stmt_cost for each
statement recorded with an SLP instance; call finish_cost instead of
the old calculation.
(vect_update_slp_costs_according_to_vf): Record statement costs from
SLP instances, multiplying by the appropriate number of copies; don't
update SLP_INSTANCE_INSIDE_OF_LOOP_COST.

From-SVN: r189460

12 years agore PR c/53937 (Pack'ing struct causes gcc to not recognize that an field's address...
Richard Guenther [Fri, 13 Jul 2012 09:45:00 +0000 (09:45 +0000)]
re PR c/53937 (Pack'ing struct causes gcc to not recognize that an field's address is aligned)

2012-07-13  Richard Guenther  <rguenther@suse.de>

PR middle-end/53937
* builtins.c (get_pointer_alignment_1): Handle constant
pointers.

From-SVN: r189458

12 years agore PR libstdc++/53657 ([C++11] pair(pair&&) move constructor is non-trivial)
Paolo Carlini [Fri, 13 Jul 2012 08:59:58 +0000 (08:59 +0000)]
re PR libstdc++/53657 ([C++11] pair(pair&&) move constructor is non-trivial)

2012-07-13  Paolo Carlini  <paolo.carlini@oracle.com>

PR libstdc++/53657
* include/bits/stl_pair.h (pair<>::pair(pair&&)): Declare defaulted,
per C++11.
* include/bits/stl_map.h (map<>::insert(_Pair&&), map<>::insert
(const_iterator, _Pair&&)): Constrain with std::is_constructible,
per LWG2005.
* include/bits/stl_multimap.h (multimap<>::insert(_Pair&&),
multimap<>::insert(const_iterator, _Pair&&)): Likewise.
* include/bits/hashtable_policy.h (_Insert<>::insert(_Pair&&),
_Insert<>::insert(const_iterator, _Pair&&)): Likewise.
* include/debug/unordered_map: Adjust.
* include/debug/map.h: Likewise.
* include/debug/multimap.h: Likewise.
* include/profile/unordered_map: Likewise.
* include/profile/map.h: Likewise.
* include/profile/multimap.h: Likewise.

From-SVN: r189456

12 years agore PR rtl-optimization/53908 (csa removes needed memory load)
Hans-Peter Nilsson [Fri, 13 Jul 2012 08:58:46 +0000 (08:58 +0000)]
re PR rtl-optimization/53908 (csa removes needed memory load)

PR rtl-optimization/53908
* gcc.dg/torture/pr53908.c: New test.

From-SVN: r189455

12 years agore PR rtl-optimization/53908 (csa removes needed memory load)
Richard Sandiford [Fri, 13 Jul 2012 08:53:24 +0000 (08:53 +0000)]
re PR rtl-optimization/53908 (csa removes needed memory load)

PR rtl-optimization/53908
* df-problems.c (can_move_insns_across): When doing
memory-reference book-keeping, handle call insns.

Co-Authored-By: Bernd Schmidt <bernds@codesourcery.com>
Co-Authored-By: Steven Bosscher <steven@gcc.gnu.org>
From-SVN: r189454

12 years agogimple.c (gimple_types_compatible_p_1): Remove redundant type attribute comparisons.
Richard Guenther [Fri, 13 Jul 2012 08:15:10 +0000 (08:15 +0000)]
gimple.c (gimple_types_compatible_p_1): Remove redundant type attribute comparisons.

2012-07-13  Richard Guenther  <rguenther@suse.de>

* gimple.c (gimple_types_compatible_p_1): Remove redundant
type attribute comparisons.
(gimple_canonical_types_compatible_p): Likewise.

From-SVN: r189453

12 years agore PR c++/53531 (<,,,,> accepted as template arguments for variadic template)
Jonathan Wakely [Fri, 13 Jul 2012 07:53:12 +0000 (07:53 +0000)]
re PR c++/53531 (<,,,,> accepted as template arguments for variadic template)

PR c++/53531
* testsuite/g++.dg/cpp0x/variadic135.C: New.

From-SVN: r189452

12 years agoDaily bump.
GCC Administrator [Fri, 13 Jul 2012 00:16:42 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r189448