platform/upstream/linaro-gcc.git
12 years ago2012-07-19 Tobias Burnus <burnus@net-b.de>
burnus [Thu, 19 Jul 2012 17:39:49 +0000 (17:39 +0000)]
2012-07-19  Tobias Burnus  <burnus@net-b.de>

        * interface.c (compare_parameter, compare_actual_formal): Fix
        handling of polymorphic arguments.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189669 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Subtype>: Do not
ebotcazou [Thu, 19 Jul 2012 15:44:00 +0000 (15:44 +0000)]
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Subtype>: Do not
look up the REP part of the base type in advance.  Deal with that of
the variant types.
(get_rep_part): Be prepared for record types with fields.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189666 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * doc/tm.texi.in (MODE_AFTER): Add entity as the first macro argument.
uros [Thu, 19 Jul 2012 14:49:01 +0000 (14:49 +0000)]
* doc/tm.texi.in (MODE_AFTER): Add entity as the first macro argument.
* doc/tm.texi: Regenerate.
* mode-switching.c (optimize_mode_switching): Update MODE_AFTER call.
* config/sh/sh.h (MODE_AFTER): Update.
* config/epiphany/epiphany.h (MODE_AFTER): Update.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189665 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoFix --produce_manifest flag in validate_failures.py.
dnovillo [Thu, 19 Jul 2012 14:35:18 +0000 (14:35 +0000)]
Fix --produce_manifest flag in validate_failures.py.

When I added the functionality to use other summary files for
reporting, I broke the generation of manifests. When sum files are
passed on, we need to use the list. Otherwise, we need to find summary
files in the build directory.

This patch factors out that logic into a new function and calls it
from both the reporting and generation routines.

Committed to trunk.

* testsuite-management/validate_failures.py (CollectSumFiles):
Rename from GetSumFiles.
(GetSumFiles): Factor out of CheckExpectedResults.
(CheckExpectedResults): Call it.
(ProduceManifest): Call it.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189662 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR middle-end/54017
jakub [Thu, 19 Jul 2012 14:02:32 +0000 (14:02 +0000)]
PR middle-end/54017
* tree-cfgcleanup.c (cleanup_omp_return): Remove.
(cleanup_tree_cfg_bb): Don't call it.
* omp-low.c (expand_omp_sections): Fix up the !exit_reachable case
handling.

* c-c++-common/gomp/pr54017.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189658 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoPR target/54029
chrbr [Thu, 19 Jul 2012 11:56:09 +0000 (11:56 +0000)]
PR target/54029
* config/sh/sh.c (gen_far_branch): Set JUMP_LABEL for return jumps.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189652 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-07-19 Richard Guenther <rguenther@suse.de>
rguenth [Thu, 19 Jul 2012 11:48:46 +0000 (11:48 +0000)]
2012-07-19  Richard Guenther  <rguenther@suse.de>
Eric Botcazou  <ebotcazou@adacore.com>

* tree-ssa-ccp.c (valid_lattice_transition): Clarify comment
about transition from invariant to known bits.
(likely_value): Addresses with UNDEFINED components are
UNDEFINED.

* gnat.dg/loop_optimization11.adb: New testcase.
* gnat.dg/loop_optimization11_pkg.ads: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189650 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-07-19 Richard Guenther <rguenther@suse.de>
rguenth [Thu, 19 Jul 2012 08:48:01 +0000 (08:48 +0000)]
2012-07-19  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/53970
* tree-vect-data-refs.c (not_size_aligned): Avoid sign-compare
warning.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189647 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agolibstdc++-v3/
gingold [Thu, 19 Jul 2012 07:29:24 +0000 (07:29 +0000)]
libstdc++-v3/
* libsupc++/eh_personality.cc (__gxx_personality_seh0): New function.
Adjust for SEH.
* config/abi/pre/gnu.ver: Add __gxx_personality_seh0.

libobjc/
* exception.c (__gnu_objc_personality_seh0): New function.

libjava/
* libgcj.ver: Add __gcj_personality_seh0.
* exception.cc (__gcj_personality_seh0): New function.
Adjust for SEH.

libgcc/
* unwind-seh.c: New file.
* unwind-generic.h: Include windows.h for SEH.
(_Unwind_Exception): Use 6 private fields for SEH.
(_GCC_specific_handler): Declare.
* unwind-c.c (__gcc_personality_seh0): New function.
Adjust for SEH.
* config/i386/libgcc-cygming.ver: New file.
* config/i386/t-seh-eh: New file.
* config.host (x86_64-*-mingw*): Default to seh.

gcc/
* opts.c (finish_options): Handle UI_SEH.
* expr.c (build_personality_function): Handle UI_SEH.
* dwarf2out.c (dwarf2out_begin_prologue): Handle UI_SEH.
* coretypes.h (unwind_info_type): Add UI_SEH.
* config/i386/winnt.c (i386_pe_seh_emit_except_personality):
New function.
(i386_pe_seh_init_sections): Likewise.
* config/i386/cygming.h (TARGET_ASM_EMIT_EXCEPT_PERSONALITY): Define.
(TARGET_ASM_INIT_SECTIONS): Define.
* common/config/i386/i386-common.c (TARGET_EXCEPT_UNWIND_INFO): Define.
(i386_except_unwind_info): New function.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189644 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * pt.c (instantiate_decl): Don't recheck substitutions.
jason [Thu, 19 Jul 2012 01:36:58 +0000 (01:36 +0000)]
* pt.c (instantiate_decl): Don't recheck substitutions.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189640 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago DR 1170
jason [Thu, 19 Jul 2012 01:36:50 +0000 (01:36 +0000)]
DR 1170
PR c++/51213
* semantics.c (perform_access_checks): Add complain parm, return bool.
(perform_deferred_access_checks): Likewise.
(perform_or_defer_access_check): Likewise.
(speculative_access_check): Remove.
* call.c (enforce_access): Add complain parm, return bool.
* decl.c, friend.c, class.c, init.c, parser.c: Adjust callers.
* search.c: Adjust callers.
* cp-tree.h (TINFO_RECHECK_ACCESS_P): New macro.
(FNDECL_RECHECK_ACCESS_P): New macro.
* method.c (synthesized_method_walk): Stop deferring access checks.
* pt.c (recheck_decl_substitution): New.
(instantiate_template_1): Set and check FNDECL_RECHECK_ACCESS_P.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189639 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * method.c (process_subob_fn): Make sure no_implicit_p is non-null
jason [Thu, 19 Jul 2012 01:36:41 +0000 (01:36 +0000)]
* method.c (process_subob_fn): Make sure no_implicit_p is non-null
before trying to store through it.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189638 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoDaily bump.
gccadmin [Thu, 19 Jul 2012 00:17:28 +0000 (00:17 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189637 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * testsuite-management/validate_failures.py: Fix
dnovillo [Wed, 18 Jul 2012 19:55:46 +0000 (19:55 +0000)]
* testsuite-management/validate_failures.py: Fix
/usr/bin/python invocation.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189631 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * cp-demangle.c (cplus_demangle_operators): Add *_cast.
jason [Wed, 18 Jul 2012 19:51:36 +0000 (19:51 +0000)]
* cp-demangle.c (cplus_demangle_operators): Add *_cast.
(op_is_new_cast): New.
(d_expression, d_print_comp): Check it.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189630 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * ChangeLog.libgcj: Move last two entries ...
uros [Wed, 18 Jul 2012 19:40:46 +0000 (19:40 +0000)]
* ChangeLog.libgcj: Move last two entries ...
* ChangeLog: ... here.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189627 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoDefine FFI_SIZEOF_JAVA_RAW to 4 for x32
hjl [Wed, 18 Jul 2012 19:19:34 +0000 (19:19 +0000)]
Define FFI_SIZEOF_JAVA_RAW to 4 for x32

PR libffi/53982
PR libffi/53973
* src/x86/ffitarget.h: Check __ILP32__ instead of __LP64__ for
x32.
(FFI_SIZEOF_JAVA_RAW): Defined to 4 for x32.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189626 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * include/x86_64-signal.h (HANDLE_DIVIDE_OVERFLOW): Fix whitespace.
uros [Wed, 18 Jul 2012 19:00:33 +0000 (19:00 +0000)]
* include/x86_64-signal.h (HANDLE_DIVIDE_OVERFLOW): Fix whitespace.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189625 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-07-18 Maciej W. Rozycki <macro@codesourcery.com>
clm [Wed, 18 Jul 2012 18:13:09 +0000 (18:13 +0000)]
2012-07-18  Maciej W. Rozycki  <macro@codesourcery.com>
    Chao-ying Fu  <fu@mips.com>

* config/mips/mips.opt (mmcu): New option.
* config/mips/mips.h (TARGET_CPU_CPP_BUILTINS): Define
_mips_mcu when TARGET_MCU.
(ASM_SPEC): Pass mcu options to the assembler.
* doc/invoke.texi (MIPS Options): Document -mmcu and -mno-mcu.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189624 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoSkip 67h address size prefix unconditionally
hjl [Wed, 18 Jul 2012 18:09:49 +0000 (18:09 +0000)]
Skip 67h address size prefix unconditionally

PR libjava/53973
* include/x86_64-signal.h (CHECK_67H_PREFIX): Removed.
(HANDLE_DIVIDE_OVERFLOW): Skip 67h address size prefix
unconditionally.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189623 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoCheck and skip 67h address size prefix for x32
hjl [Wed, 18 Jul 2012 17:38:37 +0000 (17:38 +0000)]
Check and skip 67h address size prefix for x32

PR libjava/53973
* include/x86_64-signal.h (CHECK_67H_PREFIX): New.
(HANDLE_DIVIDE_OVERFLOW): Check and and skip 67h address size
prefix if CHECK_67H_PREFIX is 1.  Use ULL suffix for 64-bit
integer.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189621 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-07-18 Julian Brown <julian@codesourcery.com>
sandra [Wed, 18 Jul 2012 16:27:37 +0000 (16:27 +0000)]
2012-07-18  Julian Brown  <julian@codesourcery.com>
    Sandra Loosemore <sandra@codesroucery.com>

gcc/testsuite/
* gcc.c-torture/execute/20101011-1.c: Skip on bare-metal m68k.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189620 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-07-18 Ralf Corsépius <ralf.corsepius@rtems.org>
corsepiu [Wed, 18 Jul 2012 15:29:51 +0000 (15:29 +0000)]
2012-07-18  Ralf Corsépius  <ralf.corsepius@rtems.org>

       * config.gcc (v850-*-rtems*): New target.
       * config/v850/rtems.h: New.
       * config/v850/t-rtems: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189618 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-07-18 Bill Schmidt <wschmidt@linux.ibm.com>
wschmidt [Wed, 18 Jul 2012 15:15:36 +0000 (15:15 +0000)]
2012-07-18  Bill Schmidt  <wschmidt@linux.ibm.com>

* doc/invoke.texi: Add -fhoist-adjacent-loads and -ftree-slsr to list
of flags controlling optimization; add -ftree-slsr to list of flags
enabled by default at -O; add -fhoist-adjacent-loads to list of flags
enabled by default at -O2; add -fvect-cost-model to list of flags
enabled by default at -O3; document -fhoist-adjacent-loads and
-ftree-slsr.
* opts.c (default_option): Make -ftree-slsr default at -O1 and above.
* gimple-ssa-strength-reduction.c (gate_strength_reduction): Use
flag_tree_slsr.
* common.opt: Add -ftree-slsr with flag_tree_slsr.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189617 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * gcc-interface/trans.c (stmt_group_may_fallthru): New function.
ebotcazou [Wed, 18 Jul 2012 12:20:06 +0000 (12:20 +0000)]
* gcc-interface/trans.c (stmt_group_may_fallthru): New function.
(gnat_to_gnu) <N_Block_Statement>: Use it to find out whether the
block needs to be translated.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189612 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago gcc/
jules [Wed, 18 Jul 2012 11:29:45 +0000 (11:29 +0000)]
gcc/
    * config/arm/arm.c (arm_rtx_costs_1): Adjust cost for
    CONST_VECTOR.
    (arm_size_rtx_costs): Likewise.
    (neon_valid_immediate): Add a case for double 0.0.

    gcc/testsuite/
    * gcc.target/arm/neon-vdup-1.c: New test case.
    * gcc.target/arm/neon-vdup-2.c: New test case.
    * gcc.target/arm/neon-vdup-3.c: New test case.
    * gcc.target/arm/neon-vdup-4.c: New test case.
    * gcc.target/arm/neon-vdup-5.c: New test case.
    * gcc.target/arm/neon-vdup-6.c: New test case.
    * gcc.target/arm/neon-vdup-7.c: New test case.
    * gcc.target/arm/neon-vdup-8.c: New test case.
    * gcc.target/arm/neon-vdup-9.c: New test case.
    * gcc.target/arm/neon-vdup-10.c: New test case.
    * gcc.target/arm/neon-vdup-11.c: New test case.
    * gcc.target/arm/neon-vdup-12.c: New test case.
    * gcc.target/arm/neon-vdup-13.c: New test case.
    * gcc.target/arm/neon-vdup-14.c: New test case.
    * gcc.target/arm/neon-vdup-15.c: New test case.
    * gcc.target/arm/neon-vdup-16.c: New test case.
    * gcc.target/arm/neon-vdup-17.c: New test case.
    * gcc.target/arm/neon-vdup-18.c: New test case.
    * gcc.target/arm/neon-vdup-19.c: New test case.
    * gcc.target/arm/neon-combine-sub-abs-into-vabd.c: Make intrinsic
    arguments non-constant.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189611 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago gcc/
jules [Wed, 18 Jul 2012 11:25:32 +0000 (11:25 +0000)]
gcc/
* config/arm/vfp.md (*arm_movsi_vfp, *thumb2_movsi_vfp)
(*movdi_vfp_cortexa8, *movsf_vfp, *thumb2_movsf_vfp)
(*movdf_vfp, *thumb2_movdf_vfp, *movsfcc_vfp)
(*thumb2_movsfcc_vfp, *movdfcc_vfp, *thumb2_movdfcc_vfp): Add
neon_type.
* config/arm/arm.md (neon_type): Update comment.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189610 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-07-18 Richard Guenther <rguenther@suse.de>
rguenth [Wed, 18 Jul 2012 10:46:05 +0000 (10:46 +0000)]
2012-07-18  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/53970
* tree.h (contains_packed_reference): Remove.
* expr.c (contains_packed_reference): Likewise.
* tree-vect-data-refs.c (not_size_aligned): New function.
(vector_alignment_reachable_p): Use it.
(vect_supportable_dr_alignment): Likewise.

* g++.dg/torture/pr53970.C: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189609 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-07-18 Richard Guenther <rguenther@suse.de>
rguenth [Wed, 18 Jul 2012 08:49:55 +0000 (08:49 +0000)]
2012-07-18  Richard Guenther  <rguenther@suse.de>

* tree.h (get_object_or_type_alignment): Remove.
* builtins.c (get_object_alignment_2): New function copied from
get_object_alignment_1.  Take extra argument to indicate whether
we take the address of EXP.  Rework to use type alignment information
if not, and return whether the result is an approximation or not.
(get_object_alignment_1): Wrap around get_object_alignment_2.
(get_pointer_alignment_1): Call get_object_alignment_2 indicating
we take the address.
(get_object_or_type_alignment): Remove.
* expr.c (expand_assignment): Call get_object_alignment.
(expand_expr_real_1): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189607 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR target/38621
olegendo [Wed, 18 Jul 2012 07:56:57 +0000 (07:56 +0000)]
PR target/38621
* gcc.c-torture/compile/pr38621.c: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189605 138bc75d-0d04-0410-961f-82ee72b054a4

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189604 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * config/sh/sh.md (mulsidi3, umulsidi3): Remove constraints in
olegendo [Wed, 18 Jul 2012 07:51:36 +0000 (07:51 +0000)]
* 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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189603 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR target/33135
olegendo [Wed, 18 Jul 2012 07:49:50 +0000 (07:49 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189602 138bc75d-0d04-0410-961f-82ee72b054a4

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189601 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR c++/53995
jason [Wed, 18 Jul 2012 02:47:59 +0000 (02:47 +0000)]
PR c++/53995
* decl.c (finish_enum_value_list): Only call
insert_late_enum_def_into_classtype_sorted_fields in class scope.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189598 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-07-17 Kazu Hirata <kazu@codesourcery.com>
sandra [Wed, 18 Jul 2012 01:11:41 +0000 (01:11 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189596 138bc75d-0d04-0410-961f-82ee72b054a4

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189594 138bc75d-0d04-0410-961f-82ee72b054a4

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189591 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * dumpfile.h (TDF_COMMENT): New define.
steven [Tue, 17 Jul 2012 23:17:20 +0000 (23:17 +0000)]
* 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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189590 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-07-17 Janus Weil <janus@gcc.gnu.org>
janus [Tue, 17 Jul 2012 21:51:20 +0000 (21:51 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189589 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR c++/53989
jason [Tue, 17 Jul 2012 21:34:06 +0000 (21:34 +0000)]
PR c++/53989
* tree.c (build_cplus_array_type): Also add TYPE_CANONICAL
to the list of variants.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189587 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-07-17 Tobias Burnus <burnus@net-b.de>
burnus [Tue, 17 Jul 2012 20:07:32 +0000 (20:07 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189586 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * decl.c (xref_basetypes): Complain about incomplete template base.
jason [Tue, 17 Jul 2012 18:09:10 +0000 (18:09 +0000)]
* decl.c (xref_basetypes): Complain about incomplete template base.
* class.c (finish_struct): Adjust variants in templates, too.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189583 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR c++/53549
jason [Tue, 17 Jul 2012 18:08:59 +0000 (18:08 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189582 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-07-17 Richard Guenther <rguenther@suse.de>
rguenth [Tue, 17 Jul 2012 15:12:05 +0000 (15:12 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189581 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-07-17 Tom de Vries <tom@codesourcery.com>
vries [Tue, 17 Jul 2012 13:49:51 +0000 (13:49 +0000)]
2012-07-17  Tom de Vries  <tom@codesourcery.com>

* hwint.c: Fix loop range.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189577 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-07-17 Tom de Vries <tom@codesourcery.com>
vries [Tue, 17 Jul 2012 12:48:36 +0000 (12:48 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189575 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoClean up supportable_widening_operation.
rth [Tue, 17 Jul 2012 12:28:31 +0000 (12:28 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189574 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-07-17 Vincent Pucci <pucci@adacore.com>
charlet [Tue, 17 Jul 2012 10:16:59 +0000 (10:16 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189570 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-07-17 Tristan Gingold <gingold@adacore.com>
charlet [Tue, 17 Jul 2012 10:14:38 +0000 (10:14 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189569 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-07-17 Tristan Gingold <gingold@adacore.com>
charlet [Tue, 17 Jul 2012 09:57:14 +0000 (09:57 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189568 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-07-17 Robert Dewar <dewar@adacore.com>
charlet [Tue, 17 Jul 2012 09:51:38 +0000 (09:51 +0000)]
2012-07-17  Robert Dewar  <dewar@adacore.com>

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189567 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-07-17 Robert Dewar <dewar@adacore.com>
charlet [Tue, 17 Jul 2012 09:49:48 +0000 (09:49 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189566 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-07-17 Tobias Burnus <burnus@net-b.de>
burnus [Tue, 17 Jul 2012 09:40:12 +0000 (09:40 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189565 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-07-17 Ramana Radhakrishnan <ramana.radhakrishnan@linaro.org>
ramana [Tue, 17 Jul 2012 09:17:20 +0000 (09:17 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189563 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-07-17 Tobias Burnus <burnus@net-b.de>
burnus [Tue, 17 Jul 2012 08:59:18 +0000 (08:59 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189562 138bc75d-0d04-0410-961f-82ee72b054a4

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189559 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR libstdc++/53270
redi [Mon, 16 Jul 2012 21:57:18 +0000 (21:57 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189553 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * cp-tree.h (struct deferred_access_check): Add location.
jason [Mon, 16 Jul 2012 21:25:30 +0000 (21:25 +0000)]
* cp-tree.h (struct deferred_access_check): Add location.
* semantics.c (perform_access_checks): Use it.
(perform_or_defer_access_check): Store it.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189552 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * config/sh/sh.h (CONST_OK_FOR_I06): Delete.
olegendo [Mon, 16 Jul 2012 21:16:52 +0000 (21:16 +0000)]
* 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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189551 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * config/sh/sh.md: Delete mov related define_peephole patterns.
olegendo [Mon, 16 Jul 2012 21:15:00 +0000 (21:15 +0000)]
* config/sh/sh.md: Delete mov related define_peephole patterns.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189550 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-07-16 Thomas König <tkoenig@gcc.gnu.org>
tkoenig [Mon, 16 Jul 2012 20:58:04 +0000 (20:58 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189549 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR libstdc++/53978
redi [Mon, 16 Jul 2012 20:43:11 +0000 (20:43 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189547 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR c++/53919
redi [Mon, 16 Jul 2012 19:14:18 +0000 (19:14 +0000)]
PR c++/53919
* doc/install.texi (Installing GCC): Refer to instructions for
released versions. Fix hypenation.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189545 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * config/spu/spu.c (targetm): Move to bottom of file.
uweigand [Mon, 16 Jul 2012 17:23:54 +0000 (17:23 +0000)]
* 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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189544 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-07-16 Andrew Pinski <apinski@cavium.com>
pinskia [Mon, 16 Jul 2012 17:16:29 +0000 (17:16 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189543 138bc75d-0d04-0410-961f-82ee72b054a4

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189541 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * tree-ssa-ccp.c (optimize_unreachable): Check gsi_end_p
uweigand [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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189539 138bc75d-0d04-0410-961f-82ee72b054a4

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189538 138bc75d-0d04-0410-961f-82ee72b054a4

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189537 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-07-16 Tristan Gingold <gingold@adacore.com>
charlet [Mon, 16 Jul 2012 13:10:02 +0000 (13:10 +0000)]
2012-07-16  Tristan Gingold  <gingold@adacore.com>

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189536 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-07-16 Thomas Quinot <quinot@adacore.com>
charlet [Mon, 16 Jul 2012 13:03:26 +0000 (13:03 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189535 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-07-16 Robert Dewar <dewar@adacore.com>
charlet [Mon, 16 Jul 2012 13:00:24 +0000 (13:00 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189534 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-07-16 Thomas Quinot <quinot@adacore.com>
charlet [Mon, 16 Jul 2012 12:57:45 +0000 (12:57 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189533 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-07-16 Thomas Quinot <quinot@adacore.com>
charlet [Mon, 16 Jul 2012 12:55:50 +0000 (12:55 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189532 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-07-16 Robert Dewar <dewar@adacore.com>
charlet [Mon, 16 Jul 2012 12:51:41 +0000 (12:51 +0000)]
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).

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189530 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoRestore type attribute comparison
hjl [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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189528 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-07-16 Bill Schmidt <wschmidt@linux.ibm.com>
wschmidt [Mon, 16 Jul 2012 12:32:25 +0000 (12:32 +0000)]
2012-07-16  Bill Schmidt  <wschmidt@linux.ibm.com>

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189527 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-07-16 Robert Dewar <dewar@adacore.com>
charlet [Mon, 16 Jul 2012 12:26:58 +0000 (12:26 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189526 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-07-16 Pascal Obry <obry@adacore.com>
charlet [Mon, 16 Jul 2012 12:08:15 +0000 (12:08 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189525 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * graphite-clast-to-gimple.c, graphite-dependences.c,
steven [Mon, 16 Jul 2012 12:01:34 +0000 (12:01 +0000)]
* 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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189524 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * haifa-sched.c (init_before_recovery): Do not set EDGE_CAN_FALLTHRU.
steven [Mon, 16 Jul 2012 11:50:29 +0000 (11:50 +0000)]
* haifa-sched.c (init_before_recovery): Do not set EDGE_CAN_FALLTHRU.
* cfgrtl.c (force_nonfallthru_and_redirect): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189523 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * function.c (stack_protect_epilogue): Use expand_call to expand
steven [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.
* 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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189522 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * emit-rtl.c (emit_label_before): Do not allow the same label
steven [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_label_after): Likewise.
(emit_label): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189521 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * flags.h (TYPE_OVERFLOW_WRAPS, TYPE_OVERFLOW_UNDEFINED,
steven [Mon, 16 Jul 2012 11:42:47 +0000 (11:42 +0000)]
* 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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189520 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agogcc/
steven [Mon, 16 Jul 2012 11:32:42 +0000 (11:32 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189519 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-07-16 Dehao Chen <dehao@google.com>
dehao [Mon, 16 Jul 2012 11:08:21 +0000 (11:08 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189518 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-07-16 Vasiliy Fofanov <fofanov@adacore.com>
charlet [Mon, 16 Jul 2012 10:52:21 +0000 (10:52 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189517 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-07-16 Robert Dewar <dewar@adacore.com>
charlet [Mon, 16 Jul 2012 10:49:46 +0000 (10:49 +0000)]
2012-07-16  Robert Dewar  <dewar@adacore.com>

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189516 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-07-16 Janus Weil <janus@gcc.gnu.org>
janus [Mon, 16 Jul 2012 10:13:19 +0000 (10:13 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189514 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-07-16 Sergey Melnikov <sergey.melnikov@intel.com>
kyukhin [Mon, 16 Jul 2012 10:00:37 +0000 (10:00 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189513 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-07-16 Andrew Pinski <apinski@cavium.com>
pinskia [Mon, 16 Jul 2012 07:17:49 +0000 (07:17 +0000)]
2012-07-16  Andrew Pinski  <apinski@cavium.com>

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189510 138bc75d-0d04-0410-961f-82ee72b054a4

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189509 138bc75d-0d04-0410-961f-82ee72b054a4

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189508 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * config/cris/cris-protos.h (cris_legitimate_address_p): Declare.
hp [Mon, 16 Jul 2012 03:31:12 +0000 (03:31 +0000)]
* 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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189507 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * config/cris/cris.c (cris_preferred_reload_class):
hp [Mon, 16 Jul 2012 03:24:14 +0000 (03:24 +0000)]
* config/cris/cris.c (cris_preferred_reload_class):
Don't return GENERAL_REGS as preferred to MOF_SRP_REGS.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189506 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * gcc.target/cris/sync-2i.c, gcc.target/cris/sync-2s.c,
hp [Mon, 16 Jul 2012 03:21:47 +0000 (03:21 +0000)]
* 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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189505 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * config/cris/cris.c (cris_init_libfuncs): Handle initialization
hp [Mon, 16 Jul 2012 03:18:23 +0000 (03:18 +0000)]
* 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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189504 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * config/cris/cris.c (cris_print_operand) <case 'P', 'q'>: New cases.
hp [Mon, 16 Jul 2012 03:11:31 +0000 (03:11 +0000)]
* 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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189503 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * gcc.target/cris/20011127-1.c: Adjust to %P being a
hp [Mon, 16 Jul 2012 03:09:57 +0000 (03:09 +0000)]
* gcc.target/cris/20011127-1.c: Adjust to %P being a
valid register operand output modifier.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189502 138bc75d-0d04-0410-961f-82ee72b054a4