platform/upstream/linaro-gcc.git
10 years ago PR c++/60241
jason [Fri, 21 Feb 2014 21:41:16 +0000 (21:41 +0000)]
PR c++/60241
* pt.c (lookup_template_class_1): Update DECL_TEMPLATE_INSTANTIATIONS
of the partial instantiation, not the most general template.
(maybe_process_partial_specialization): Reassign everything on
that list.

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

10 years ago2014-02-21 Vladimir Makarov <vmakarov@redhat.com>
vmakarov [Fri, 21 Feb 2014 21:23:48 +0000 (21:23 +0000)]
2014-02-21  Vladimir Makarov  <vmakarov@redhat.com>

PR target/60298
* lra-constraints.c (inherit_reload_reg): Use lra_emit_move
instead of emit_move_insn.

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

10 years agogcc:
wschmidt [Fri, 21 Feb 2014 21:01:01 +0000 (21:01 +0000)]
gcc:

2014-02-21  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

* config/rs6000/altivec.md (altivec_vsumsws): Replace second
vspltw with vsldoi.
(reduc_uplus_v16qi): Use gen_altivec_vsumsws_direct instead of
gen_altivec_vsumsws.

gcc/testsuite:

2014-02-21  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

* gcc.dg/vmx/vsums.c: Check entire result vector.
* gcc.dg/vmx/vsums-be-order.c: Likewise.

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

10 years agogcc:
wschmidt [Fri, 21 Feb 2014 20:46:52 +0000 (20:46 +0000)]
gcc:

2014-02-21  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

* config/rs6000/altivec.md (altivec_lvxl): Rename as
*altivec_lvxl_<mode>_internal and use VM2 iterator instead of
V4SI.
(altivec_lvxl_<mode>): New define_expand incorporating
-maltivec=be semantics where needed.
(altivec_lvx): Rename as *altivec_lvx_<mode>_internal.
(altivec_lvx_<mode>): New define_expand incorporating -maltivec=be
semantics where needed.
(altivec_stvx): Rename as *altivec_stvx_<mode>_internal.
(altivec_stvx_<mode>): New define_expand incorporating
-maltivec=be semantics where needed.
(altivec_stvxl): Rename as *altivec_stvxl_<mode>_internal and use
VM2 iterator instead of V4SI.
(altivec_stvxl_<mode>): New define_expand incorporating
-maltivec=be semantics where needed.
* config/rs6000/rs6000-builtin.def: Add new built-in definitions
LVXL_V2DF, LVXL_V2DI, LVXL_V4SF, LVXL_V4SI, LVXL_V8HI, LVXL_V16QI,
LVX_V2DF, LVX_V2DI, LVX_V4SF, LVX_V4SI, LVX_V8HI, LVX_V16QI,
STVX_V2DF, STVX_V2DI, STVX_V4SF, STVX_V4SI, STVX_V8HI, STVX_V16QI,
STVXL_V2DF, STVXL_V2DI, STVXL_V4SF, STVXL_V4SI, STVXL_V8HI,
STVXL_V16QI.
* config/rs6000/rs6000-c.c (altivec_overloaded_builtins): Replace
ALTIVEC_BUILTIN_LVX with ALTIVEC_BUILTIN_LVX_<MODE> throughout;
similarly for ALTIVEC_BUILTIN_LVXL, ALTIVEC_BUILTIN_STVX, and
ALTIVEC_BUILTIN_STVXL.
* config/rs6000/rs6000-protos.h (altivec_expand_lvx_be): New
prototype.
(altivec_expand_stvx_be): Likewise.
* config/rs6000/rs6000.c (swap_selector_for_mode): New function.
(altivec_expand_lvx_be): Likewise.
(altivec_expand_stvx_be): Likewise.
(altivec_expand_builtin): Add cases for
ALTIVEC_BUILTIN_STVX_<MODE>, ALTIVEC_BUILTIN_STVXL_<MODE>,
ALTIVEC_BUILTIN_LVXL_<MODE>, and ALTIVEC_BUILTIN_LVX_<MODE>.
(altivec_init_builtins): Add definitions for
__builtin_altivec_lvxl_<mode>, __builtin_altivec_lvx_<mode>,
__builtin_altivec_stvx_<mode>, and
__builtin_altivec_stvxl_<mode>.

gcc/testsuite:

2014-02-21  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

* gcc.dg/vmx/ld.c: New test.
* gcc.dg/vmx/ld-be-order.c: New test.
* gcc.dg/vmx/ld-vsx.c: New test.
* gcc.dg/vmx/ld-vsx-be-order.c: New test.
* gcc.dg/vmx/ldl.c: New test.
* gcc.dg/vmx/ldl-be-order.c: New test.
* gcc.dg/vmx/ldl-vsx.c: New test.
* gcc.dg/vmx/ldl-vsx-be-order.c: New test.
* gcc.dg/vmx/st.c: New test.
* gcc.dg/vmx/st-be-order.c: New test.
* gcc.dg/vmx/st-vsx.c: New test.
* gcc.dg/vmx/st-vsx-be-order.c: New test.
* gcc.dg/vmx/stl.c: New test.
* gcc.dg/vmx/stl-be-order.c: New test.
* gcc.dg/vmx/stl-vsx.c: New test.
* gcc.dg/vmx/stl-vsx-be-order.c: New test.

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

10 years agogcc:
wschmidt [Fri, 21 Feb 2014 20:45:09 +0000 (20:45 +0000)]
gcc:

2014-02-21  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

* config/rs6000/altivec.md (altivec_lvxl): Rename as
*altivec_lvxl_<mode>_internal and use VM2 iterator instead of
V4SI.
(altivec_lvxl_<mode>): New define_expand incorporating
-maltivec=be semantics where needed.
(altivec_lvx): Rename as *altivec_lvx_<mode>_internal.
(altivec_lvx_<mode>): New define_expand incorporating -maltivec=be
semantics where needed.
(altivec_stvx): Rename as *altivec_stvx_<mode>_internal.
(altivec_stvx_<mode>): New define_expand incorporating
-maltivec=be semantics where needed.
(altivec_stvxl): Rename as *altivec_stvxl_<mode>_internal and use
VM2 iterator instead of V4SI.
(altivec_stvxl_<mode>): New define_expand incorporating
-maltivec=be semantics where needed.
* config/rs6000/rs6000-builtin.def: Add new built-in definitions
LVXL_V2DF, LVXL_V2DI, LVXL_V4SF, LVXL_V4SI, LVXL_V8HI, LVXL_V16QI,
LVX_V2DF, LVX_V2DI, LVX_V4SF, LVX_V4SI, LVX_V8HI, LVX_V16QI,
STVX_V2DF, STVX_V2DI, STVX_V4SF, STVX_V4SI, STVX_V8HI, STVX_V16QI,
STVXL_V2DF, STVXL_V2DI, STVXL_V4SF, STVXL_V4SI, STVXL_V8HI,
STVXL_V16QI.
* config/rs6000/rs6000-c.c (altivec_overloaded_builtins): Replace
ALTIVEC_BUILTIN_LVX with ALTIVEC_BUILTIN_LVX_<MODE> throughout;
similarly for ALTIVEC_BUILTIN_LVXL, ALTIVEC_BUILTIN_STVX, and
ALTIVEC_BUILTIN_STVXL.
* config/rs6000/rs6000-protos.h (altivec_expand_lvx_be): New
prototype.
(altivec_expand_stvx_be): Likewise.
* config/rs6000/rs6000.c (swap_selector_for_mode): New function.
(altivec_expand_lvx_be): Likewise.
(altivec_expand_stvx_be): Likewise.
(altivec_expand_builtin): Add cases for
ALTIVEC_BUILTIN_STVX_<MODE>, ALTIVEC_BUILTIN_STVXL_<MODE>,
ALTIVEC_BUILTIN_LVXL_<MODE>, and ALTIVEC_BUILTIN_LVX_<MODE>.
(altivec_init_builtins): Add definitions for
__builtin_altivec_lvxl_<mode>, __builtin_altivec_lvx_<mode>,
__builtin_altivec_stvx_<mode>, and
__builtin_altivec_stvxl_<mode>.

gcc/testsuite:

2014-02-21  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

* gcc.dg/vmx/ld.c: New test.
* gcc.dg/vmx/ld-be-order.c: New test.
* gcc.dg/vmx/ld-vsx.c: New test.
* gcc.dg/vmx/ld-vsx-be-order.c: New test.
* gcc.dg/vmx/ldl.c: New test.
* gcc.dg/vmx/ldl-be-order.c: New test.
* gcc.dg/vmx/ldl-vsx.c: New test.
* gcc.dg/vmx/ldl-vsx-be-order.c: New test.
* gcc.dg/vmx/st.c: New test.
* gcc.dg/vmx/st-be-order.c: New test.
* gcc.dg/vmx/st-vsx.c: New test.
* gcc.dg/vmx/st-vsx-be-order.c: New test.
* gcc.dg/vmx/stl.c: New test.
* gcc.dg/vmx/stl-be-order.c: New test.
* gcc.dg/vmx/stl-vsx.c: New test.
* gcc.dg/vmx/stl-vsx-be-order.c: New test.

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

10 years ago * g++.dg/other/i386-2.C (dg-options): Add -mavx512pf.
uros [Fri, 21 Feb 2014 19:24:43 +0000 (19:24 +0000)]
* g++.dg/other/i386-2.C (dg-options): Add -mavx512pf.
* g++.dg/other/i386-3.C (dg-options): Ditto.
* gcc.target/i386/sse-12.c (dg-options): Add -msha.
* gcc.target/i386/sse-13.c (dg-options): Add -mavx512er, -mavx512cd,
-mavx512pf and -msha.

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

10 years ago PR c++/60227
jason [Fri, 21 Feb 2014 15:53:43 +0000 (15:53 +0000)]
PR c++/60227
Fix ChangeLog

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

10 years ago PR c++/60216
jason [Fri, 21 Feb 2014 14:57:07 +0000 (14:57 +0000)]
PR c++/60216
* pt.c (register_specialization): Copy DECL_DELETED_FN to clones.
(check_explicit_specialization): Don't clone.

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

10 years ago PR c++/60219
jason [Fri, 21 Feb 2014 14:57:00 +0000 (14:57 +0000)]
PR c++/60219
* pt.c (coerce_template_parms): Bail if argument packing fails.

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

10 years ago PR c++/60224
jason [Fri, 21 Feb 2014 14:56:53 +0000 (14:56 +0000)]
PR c++/60224
* decl.c (cp_complete_array_type, maybe_deduce_size_from_array_init):
Don't get confused by a CONSTRUCTOR that already has a type.

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

10 years ago PR c++/60277
jason [Fri, 21 Feb 2014 14:56:46 +0000 (14:56 +0000)]
PR c++/60277
* call.c (build_array_conv): Don't crash on VLA.

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

10 years ago PR c++/60248
jason [Fri, 21 Feb 2014 14:56:38 +0000 (14:56 +0000)]
PR c++/60248
* mangle.c (mangle_decl): Don't make an alias for a TYPE_DECL.

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

10 years ago PR c++/60252
jason [Fri, 21 Feb 2014 14:56:31 +0000 (14:56 +0000)]
PR c++/60252
* lambda.c (maybe_resolve_dummy): Don't try to capture this
in declaration context.

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

10 years ago DR 1591
jason [Fri, 21 Feb 2014 14:56:20 +0000 (14:56 +0000)]
DR 1591
PR c++/60051
* pt.c (unify): Only unify if deducible.  Handle 0-length list.

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

10 years ago2014-02-21 Ed Smith-Rowland <3dw4rd@verizon.net>
emsr [Fri, 21 Feb 2014 14:40:26 +0000 (14:40 +0000)]
2014-02-21  Ed Smith-Rowland  <3dw4rd@verizon.net>

Rename testsuite directory shared_mutex to shared_timed_mutex
for consistency.
* testsuite/30_threads/shared_mutex: Moved to...
* testsuite/30_threads/shared_timed_mutex: ...here

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

10 years ago PR c++/60250
jason [Fri, 21 Feb 2014 14:01:29 +0000 (14:01 +0000)]
PR c++/60250
* parser.c (cp_parser_direct_declarator): Don't wrap a
type-dependent expression in a NOP_EXPR.

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

10 years ago PR c++/60251
jason [Fri, 21 Feb 2014 14:01:20 +0000 (14:01 +0000)]
PR c++/60251
* lambda.c (is_normal_capture_proxy): Handle VLA capture.

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

10 years ago PR c++/60167
jason [Fri, 21 Feb 2014 14:00:44 +0000 (14:00 +0000)]
PR c++/60167
PR c++/60222
PR c++/58606
* parser.c (cp_parser_template_argument): Restore dereference.
* pt.c (template_parm_to_arg): Dereference non-pack expansions too.
(process_partial_specialization): Handle deref.
(unify): Likewise.

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

10 years ago2014-02-21 Catherine Moore <clm@codesourcery.com>
clm [Fri, 21 Feb 2014 13:30:47 +0000 (13:30 +0000)]
2014-02-21  Catherine Moore  <clm@codesourcery.com>

* doc/invoke.texi (mvirt, mno-virt): Document.
* config/mips/mips.opt (mvirt): New option.
* config/mips/mips.h (ASM_SPEC): Pass mvirt to the assembler.

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

10 years ago2014-02-21 Richard Biener <rguenther@suse.de>
rguenth [Fri, 21 Feb 2014 13:18:54 +0000 (13:18 +0000)]
2014-02-21  Richard Biener  <rguenther@suse.de>

PR tree-optimization/60276
* tree-vectorizer.h (struct _stmt_vec_info): Add min_neg_dist field.
(STMT_VINFO_MIN_NEG_DIST): New macro.
* tree-vect-data-refs.c (vect_analyze_data_ref_dependence): Record
STMT_VINFO_MIN_NEG_DIST.
* tree-vect-stmts.c (vectorizable_load): Verify if assumptions
made for negative dependence distances still hold.

* gcc.dg/vect/pr60276.c: New testcase.

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

10 years ago2014-02-21 Richard Biener <rguenther@suse.de>
rguenth [Fri, 21 Feb 2014 13:14:23 +0000 (13:14 +0000)]
2014-02-21  Richard Biener  <rguenther@suse.de>

PR middle-end/60291
* tree-ssa-live.c (mark_all_vars_used_1): Do not walk
DECL_INITIAL for globals not in the current function context.

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

10 years agoAdded forgotten ChangeLog entry.
ro [Fri, 21 Feb 2014 11:55:14 +0000 (11:55 +0000)]
Added forgotten ChangeLog entry.

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

10 years ago PR tree-optimization/56490
jakub [Fri, 21 Feb 2014 09:53:56 +0000 (09:53 +0000)]
PR tree-optimization/56490
* params.def (PARAM_UNINIT_CONTROL_DEP_ATTEMPTS): New param.
* tree-ssa-uninit.c: Include params.h.
(compute_control_dep_chain): Add num_calls argument, return false
if it exceed PARAM_UNINIT_CONTROL_DEP_ATTEMPTS param, pass
num_calls to recursive call.
(find_predicates): Change dep_chain into normal array,
cur_chain into auto_vec<edge, MAX_CHAIN_LEN + 1>, add num_calls
variable and adjust compute_control_dep_chain caller.
(find_def_preds): Likewise.

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

10 years agoCorrect TDF_RAW pretty-printing of GIMPLE_OMP_FOR's GF_OMP_FOR_KIND_CILKSIMD.
tschwinge [Fri, 21 Feb 2014 09:18:15 +0000 (09:18 +0000)]
Correct TDF_RAW pretty-printing of GIMPLE_OMP_FOR's GF_OMP_FOR_KIND_CILKSIMD.

gcc/
* gimple-pretty-print.c (dump_gimple_omp_for) [flags & TDF_RAW]
<case GF_OMP_FOR_KIND_CILKSIMD>: Add missing break statement.

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

10 years ago2014-02-21 Janus Weil <janus@gcc.gnu.org>
janus [Fri, 21 Feb 2014 09:06:57 +0000 (09:06 +0000)]
2014-02-21  Janus Weil  <janus@gcc.gnu.org>

PR fortran/60234
* gfortran.h (gfc_build_class_symbol): Removed argument.
* class.c (gfc_add_component_ref): Fix up missing vtype if necessary.
(gfc_build_class_symbol): Remove argument 'delayed_vtab'. vtab is always
delayed now, except for unlimited polymorphics.
(comp_is_finalizable): Procedure pointer components are not finalizable.
* decl. (build_sym, build_struct, attr_decl1): Removed argument of
'gfc_build_class_symbol'.
* match.c (copy_ts_from_selector_to_associate, select_type_set_tmp):
Ditto.
* symbol.c (gfc_set_default_type): Ditto.

2014-02-21  Janus Weil  <janus@gcc.gnu.org>

PR fortran/60234
* gfortran.dg/finalize_23.f90: New.

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

10 years ago * config/stormy16/stormy16.md (pushdqi1): Add mode to post_inc.
nickc [Fri, 21 Feb 2014 08:11:10 +0000 (08:11 +0000)]
* config/stormy16/stormy16.md (pushdqi1): Add mode to post_inc.
(pushhi1): Likewise.
(popqi1): Add mode to pre_dec.
(pophi1): Likewise.

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

10 years ago * config/i386/i386.c (ix86_expand_vec_perm): Use V8SImode
jakub [Fri, 21 Feb 2014 07:48:07 +0000 (07:48 +0000)]
* config/i386/i386.c (ix86_expand_vec_perm): Use V8SImode
mode for mask of V8SFmode permutation.

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

10 years agoFix PR c++/60052 and PR c++/60053.
abutcher [Fri, 21 Feb 2014 07:47:55 +0000 (07:47 +0000)]
Fix PR c++/60052 and PR c++/60053.

PR c++/60052
PR c++/60053
* parser.c (cp_parser_parameter_declaration_list): Correctly reset
implicit_template_scope upon leaving an out-of-line generic member
function definition.

PR c++/60052
PR c++/60053
* g++.dg/cpp1y/pr60052.C: New testcase.
* g++.dg/cpp1y/pr60053.C: New testcase.

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

10 years ago2014-02-21 Tobias Burnus <burnus@net-b.de>
burnus [Fri, 21 Feb 2014 07:37:06 +0000 (07:37 +0000)]
2014-02-21  Tobias Burnus  <burnus@net-b.de>

        PR fortran/60286
        * libgfortran/io/inquire.c (yes, no): New static const char
        * vars.
        (inquire_via_unit): Use them. Use OPEN mode instead of using
        POSIX's access to query about write=, read= and readwrite=.

2014-02-21  Tobias Burnus  <burnus@net-b.de>

        PR fortran/60286
        * gfortran.dg/inquire_16.f90: New.

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

10 years agoruntime: Use a better heap location on arm64 systems.
ian [Fri, 21 Feb 2014 03:24:03 +0000 (03:24 +0000)]
runtime: Use a better heap location on arm64 systems.

Before this, the heap location used on a 64-bit system was not
available to user-space on arm64, so the "32-bit" strategy ended up
being used.  So use somewhere that is available, and for bonus points
is far away from where the kernel allocates address space by default.

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

10 years agoDaily bump.
gccadmin [Fri, 21 Feb 2014 00:16:45 +0000 (00:16 +0000)]
Daily bump.

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

10 years agoPR c++/60272
rth [Fri, 21 Feb 2014 00:11:43 +0000 (00:11 +0000)]
PR c++/60272

        * builtins.c (expand_builtin_atomic_compare_exchange): Always make
        a new pseudo for OLDVAL.

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

10 years ago PR target/57896
jakub [Thu, 20 Feb 2014 20:39:46 +0000 (20:39 +0000)]
PR target/57896
* config/i386/i386.c (expand_vec_perm_interleave2): Don't call
gen_reg_rtx if d->testing_p.
(expand_vec_perm_pshufb2, expand_vec_perm_broadcast_1): Return early
if d->testing_p and we will certainly return true.
(expand_vec_perm_even_odd_1): Likewise.  Don't call gen_reg_rtx
if d->testing_p.

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

10 years ago * emit-rtl.c (gen_reg_rtx): Assert that
uros [Thu, 20 Feb 2014 20:21:42 +0000 (20:21 +0000)]
* emit-rtl.c (gen_reg_rtx): Assert that
crtl->emit.regno_pointer_align_length is non-zero.

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

10 years ago * lto-partition.c (add_symbol_to_partition_1,
hubicka [Thu, 20 Feb 2014 19:40:14 +0000 (19:40 +0000)]
* lto-partition.c (add_symbol_to_partition_1,
undo_partition, lto_balanced_map): Aliases have no
defined size.
(lto_balanced_map): Do not follow refering variables
if they can be optimized out.

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

10 years agoPR c++/60272
rth [Thu, 20 Feb 2014 17:43:53 +0000 (17:43 +0000)]
PR c++/60272

gcc/
* builtins.c (expand_builtin_atomic_compare_exchange): Conditionalize
on failure the store back into EXPECT.
libatomic/
* cas_n.c (libat_compare_exchange): Conditionalize on failure
the store back to EPTR.

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

10 years ago2014-02-20 Chung-Lin Tang <cltang@codesourcery.com>
cltang [Thu, 20 Feb 2014 16:35:10 +0000 (16:35 +0000)]
2014-02-20  Chung-Lin Tang  <cltang@codesourcery.com>
    Sandra Loosemore  <sandra@codesourcery.com>

gcc/
* config/nios2/nios2.md (unspec): Add UNSPEC_PIC_GOTOFF_SYM enum.
* config/nios2/nios2.c (nios2_function_profiler):
Add -fPIC (flag_pic == 2) support.
(nios2_handle_custom_fpu_cfg): Fix warning parameter.
(nios2_large_offset_p): New function.
(nios2_unspec_reloc_p): Move up position, update to use
nios2_large_offset_p.
(nios2_unspec_address): Remove function.
(nios2_unspec_offset): New function.
(nios2_large_got_address): New function.
(nios2_got_address): Add large offset support.
(nios2_legitimize_tls_address): Update usage of removed and new
functions.
(nios2_symbol_binds_local_p): New function.
(nios2_load_pic_address): Add -fPIC (flag_pic == 2) support.
(nios2_legitimize_address): Update to use nios2_large_offset_p.
(nios2_emit_move_sequence): Avoid legitimizing (const (unspec ...)).
(nios2_print_operand): Merge H/L processing, add hiadj/lo
processing for (const (unspec ...)).
(nios2_unspec_reloc_name): Add UNSPEC_PIC_GOTOFF_SYM case.

gcc/testsuite/
* gcc.target/nios2/biggot-1.c: New.
* gcc.target/nios2/biggot-2.c: New.

libgcc/
* config/nios2/t-nios2 (CRTSTUFF_T_CFLAGS): Add -mno-gpopt.
* config/nios2/crti.S: Remove .file directive.
* config/nios2/crtn.S: Likewise.

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

10 years ago2014-02-20 Ed Smith-Rowland <3dw4rd@verizon.net>
emsr [Thu, 20 Feb 2014 16:06:40 +0000 (16:06 +0000)]
2014-02-20  Ed Smith-Rowland  <3dw4rd@verizon.net>

Rename shared_mutex to shared_timed_mutex per C++14 acceptance of N3891.
* include/std/shared_mutex: Rename shared_mutex to shared_timed_mutex.
* testsuite/30_threads/shared_lock/locking/2.cc: Ditto.
* testsuite/30_threads/shared_lock/locking/4.cc: Ditto.
* testsuite/30_threads/shared_lock/locking/1.cc: Ditto.
* testsuite/30_threads/shared_lock/locking/3.cc: Ditto.
* testsuite/30_threads/shared_lock/requirements/
explicit_instantiation.cc: Ditto.
* testsuite/30_threads/shared_lock/requirements/typedefs.cc: Ditto.
* testsuite/30_threads/shared_lock/cons/2.cc: Ditto.
* testsuite/30_threads/shared_lock/cons/4.cc: Ditto.
* testsuite/30_threads/shared_lock/cons/1.cc: Ditto.
* testsuite/30_threads/shared_lock/cons/6.cc: Ditto.
* testsuite/30_threads/shared_lock/cons/3.cc: Ditto.
* testsuite/30_threads/shared_lock/cons/5.cc: Ditto.
* testsuite/30_threads/shared_lock/modifiers/2.cc: Ditto.
* testsuite/30_threads/shared_lock/modifiers/1.cc: Ditto.
* testsuite/30_threads/shared_mutex/requirements/
standard_layout.cc: Ditto.
* testsuite/30_threads/shared_mutex/cons/copy_neg.cc: Ditto.
* testsuite/30_threads/shared_mutex/cons/1.cc: Ditto.
* testsuite/30_threads/shared_mutex/cons/assign_neg.cc: Ditto.
* testsuite/30_threads/shared_mutex/try_lock/2.cc: Ditto.
* testsuite/30_threads/shared_mutex/try_lock/1.cc: Ditto.

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

10 years ago PR c++/58873
ktietz [Thu, 20 Feb 2014 16:02:24 +0000 (16:02 +0000)]
PR c++/58873
* parser.c (cp_parser_functional_cast): Treat NULL_TREE
valued type argument as error_mark_node.

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

10 years ago PR go/60288
ian [Thu, 20 Feb 2014 15:20:26 +0000 (15:20 +0000)]
PR go/60288
compiler: Avoid crash, give error for *&x when x is not addressable.

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

10 years ago2014-02-20 Richard Biener <rguenther@suse.de>
rguenth [Thu, 20 Feb 2014 14:56:27 +0000 (14:56 +0000)]
2014-02-20  Richard Biener  <rguenther@suse.de>

* tree-cfg.c (replace_uses_by): Mark altered BBs before
doing the substitution.
(verify_gimple_assign_single): Also verify bare MEM_REFs
on the lhs.

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

10 years ago PR c++/58835
ktietz [Thu, 20 Feb 2014 14:28:16 +0000 (14:28 +0000)]
PR c++/58835
* semantics.c (finish_fname): Handle error_mark_node.

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

10 years ago2014-02-20 Sergey Rybin <rybin@adacore.com frybin>
charlet [Thu, 20 Feb 2014 14:21:35 +0000 (14:21 +0000)]
2014-02-20  Sergey Rybin  <rybin@adacore.com frybin>

* gnat_ugn.texi, vms_data.ads (gnatelim): Add description of
project-specific options.

2014-02-20  Ed Schonberg  <schonberg@adacore.com>

* a-cbdlli.adb (Insert): When capacity exceeded, raise Capacity_Error,
not Constraint_Error.
* a-cbmutr.adb (Append_Child, Insert_Child, Prepend_Child): Ditto.
* sem_ch5.adb: Code clean up.

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

10 years ago2014-02-20 Hristian Kirtchev <kirtchev@adacore.com>
charlet [Thu, 20 Feb 2014 14:19:23 +0000 (14:19 +0000)]
2014-02-20  Hristian Kirtchev  <kirtchev@adacore.com>

* sem_prag.adb (Usage_Error): Remove local
constant Typ. Remove the specialized diagnostics for unconstrained
or tagged items as those are not part of the explicit input set
of the related subprogram and should not be flagged.

2014-02-20  Ed Schonberg  <schonberg@adacore.com>

* sem_attr.adb: Add guard to preserve all errors.

2014-02-20  Vincent Celier  <celier@adacore.com>

* switch-m.adb (Normalize_Compiler_Switches): Take into account
switches that are recorded in ALI files: -gnateA, -gnateE,
-gnateF, -gnateinn, -gnateu, -gnateV and -gnateY.

2014-02-20  Ed Schonberg  <schonberg@adacore.com>

* sem_ch5.adb (Analyze_Iterator_Specification): Check legality
of an element iterator form over a formal container with an
Iterable aspect.
* exp_ch5.adb (Build_Formal_Container_Iteration): Utility
to create declaration and loop statements for both forms of
container iterators.
(Expand_Formal_Container_Element_Iterator): New procedure
to handle loops of the form  "for E of C" when C is a formal
container.
(Expand_Formal_Container_Iterator): Code cleanup.

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

10 years ago2014-02-20 Hristian Kirtchev <kirtchev@adacore.com>
charlet [Thu, 20 Feb 2014 14:08:31 +0000 (14:08 +0000)]
2014-02-20  Hristian Kirtchev  <kirtchev@adacore.com>

* sem_prag.adb (Add_Item_To_Name_Buffer): New routine.
(Analyze_Contract_Case): Remove the use of
"may". Replace "aspect Contract_Cases" to avoid categorization
of aspect vs pragma.
(Analyze_External_Property_In_Decl_Part): Remove the use of "formal".
(Analyze_Global_Item): Remove
the use of "formal", specify the subprogram.  Split the
error message about a state with visible refinement into
two. Remove the use of "global" from "volatile global item".
(Analyze_Initialization_Item): Ensure that the SPARK RM reference
is on one line.
(Analyze_Input_Output): Update the call to
Check_Mode. Specify the duplicated item. Reword the error
message concerning an input of a null output list. Use "\"
for error message continuation.
(Analyze_Part_Of): Remove
the use of "may". Use "\" for error message continuation.
(Analyze_Refined_Depends_In_Decl_Part): Update the error
message concerning a useless refinement to match the format
of Refined_Global.
(Analyze_Refined_Global_In_Decl_Part): Reword the error message
concerning a useless refinement.
(Analyze_Refinement_Clause): Use "\" for error message continuation.
(Check_Constituent_Usage): Use "\" for error message continuation.
(Check_Dependency_Clause): Use "\" for error message continuation.
(Check_Matching_Constituent): Use "\" for error message continuation.
(Check_Missing_Part_Of): Use "\" for error message continuation.
(Check_Mode): Renamed to
Check_Role. Update the comment on usage. Redo the error reporting
to use Role_Error.
(Check_Mode_Restriction_In_Enclosing_Context): Use "\" for error
message continuation.
(Find_Mode): Renamed to Find_Role. Update the parameter profile along
with comment on usage. Update all occurrences of Is_Input and Is_Output.
(Inconsistent_Mode_Error): Use "\" for error message continuation.
(Input_Match): Use "\" for error message continuation.
(Role_Error): New routine.
(Set_Convention_From_Pragma): Use "\" for error message continuation.
(Usage_Error): Add local variable Error_Msg. Build specialized error
message showcasing the offending item kind. Redo the diagnostics for
unconstrained types.

2014-02-20  Ed Schonberg  <schonberg@adacore.com>

* exp_util.adb (Is_Iterated_Container): Use high-level primitives
to determine whether a type is a container type, rather than
examining only its type declaration, so that subtypes and derived
types are handled properly.

2014-02-20  Sergey Rybin  <rybin@adacore.com frybin>

* gnat_ugn.texi: gnatmetric: add description of project-specific
options.

2014-02-20  Ed Schonberg  <schonberg@adacore.com>

* sem_attr.adb (Analyze_Attribute, case 'Update): Verify that
all choices in an association for a record type have the same
type, as is done for record aggregates.

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

10 years agoXFAIL sourcelocation (PR libgcj/55637)
ro [Thu, 20 Feb 2014 14:04:53 +0000 (14:04 +0000)]
XFAIL sourcelocation (PR libgcj/55637)

PR libgcj/55637
* testsuite/libjava.lang/sourcelocation.xfail: New file.

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

10 years ago2014-02-20 Robert Dewar <dewar@adacore.com>
charlet [Thu, 20 Feb 2014 14:04:38 +0000 (14:04 +0000)]
2014-02-20  Robert Dewar  <dewar@adacore.com>

* a-cborma.adb, a-cbhama.adb, a-cbdlli.adb, a-cbmutr.adb: Use pragma
Unmodified rather than Warnings (Off). Make comments
uniform in the four affected units.

2014-02-20  Robert Dewar  <dewar@adacore.com>

* sem_ch13.adb (Analyze_Attribute_Definition_Clause, case
Object_Size): For non-scalar types allow any value that is a
multiple of 8.
* gnat_rm.texi: Document Object_Size for composites more clearly.

2014-02-20  Yannick Moy  <moy@adacore.com>

* sem_util.ads, sem_util.adb (Default_Initialization): Remove function.

2014-02-20  Ed Schonberg  <schonberg@adacore.com>

* stand.ads: Raise_Type: new predefined entity, used as the type
of a Raise_Expression prior to resolution.
* cstand.adb: Build entity for Raise_Type.
* sem_ch11.adb (Analyze_Raise_Expression): use Raise_Type as the
initial type of the node.
* sem_type.adb (Covers): Raise_Type is compatible with all
other types.
* sem_res.adb (Resolve): Remove special handling of Any_Type on
Raise_Expression nodes.
(Resolve_Raise_Expression): Signal ambiguity if the type of the
context is still Raise_Type.

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

10 years ago2014-02-20 Robert Dewar <dewar@adacore.com>
charlet [Thu, 20 Feb 2014 14:02:27 +0000 (14:02 +0000)]
2014-02-20  Robert Dewar  <dewar@adacore.com>

* sem_ch12.adb (Validate_Access_Type_Instance): Add message if
mismatching predicates.
* sem_ch6.adb (Check_Conformance): Give better messages on
predicate mismatch.
* sem_eval.adb (Predicates_Match): Move to spec.
* sem_eval.ads (Predicates_Match): Moved here from body.

2014-02-20  Ed Schonberg  <schonberg@adacore.com>

* a-cbmutr.adb: Use default value in Insert_Child.

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

10 years ago2014-02-20 Vincent Celier <celier@adacore.com>
charlet [Thu, 20 Feb 2014 13:54:18 +0000 (13:54 +0000)]
2014-02-20  Vincent Celier  <celier@adacore.com>

* gnatcmd.adb, make.adb, prj-makr.adb, clean.adb: Call
Stringt.Initialize in all project aware tools.

2014-02-20  Doug Rupp  <rupp@adacore.com>

* gnat_ugn.texi: Document gnatbind -X option.
* vms_data.ads: Minor warnings documentation reformatting.

2014-02-20  Ed Schonberg  <schonberg@adacore.com>

* exp_ch3.adb (Expand_Freeze_Array_Type): Only create invariant
procedure for a base type.

2014-02-20  Robert Dewar  <dewar@adacore.com>

* sem_ch4.adb (Analyze_Case_Expression): Get type from first
expression with type info.
* sem_ch13.adb: Minor reformatting.
* sem_eval.adb (Subtypes_Statically_Match): Make sure we return
False if predicates do not match on the two types.

2014-02-20  Arnaud Charlet  <charlet@adacore.com>

* sem_prag.adb (Analyze_Pragma [pragma Attach_Handler]):
In Relaxed_RM_Semantics mode, allow any static integer value,
for compatibility with other compilers.

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

10 years ago2014-02-20 Vincent Celier <celier@adacore.com>
charlet [Thu, 20 Feb 2014 13:52:08 +0000 (13:52 +0000)]
2014-02-20  Vincent Celier  <celier@adacore.com>

* errutil.adb (Initialize): Properly initialize entry in table
Warnings when warnings are suppressed.

2014-02-20  Robert Dewar  <dewar@adacore.com>

* s-os_lib.ads: Add warning about non-portability of Rename_File.
* sem_util.ads, sem_util.adb (Is_Junk_Name): New function.
* sem_warn.adb: Use Is_Junk_Name to suppress some warnings.
* gnat_ugn.texi: Document no warnings on junk variable names.
* layout.adb: Minor code reorganization (use Ekind_In).
* stringt.adb: Move initialization of Null_String_Id to Initialize
routine.

2014-02-20  Ed Schonberg  <schonberg@adacore.com>

* sem_ch13.adb: Initialize optional Element_Id.

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

10 years ago2014-02-20 Robert Dewar <dewar@adacore.com>
charlet [Thu, 20 Feb 2014 13:48:32 +0000 (13:48 +0000)]
2014-02-20  Robert Dewar  <dewar@adacore.com>

* s-os_lib.ads (Rename_File): Minor commment addition.

2014-02-20  Thomas Quinot  <quinot@adacore.com>

* einfo.ads: Minor reformatting.

2014-02-20  Hristian Kirtchev  <kirtchev@adacore.com>

* aspects.adb (Exchange_Aspects): New routine.
* aspects.ads (Exchange_Aspects): New routine.
* atree.adb (Rewrite): Do not check whether the save node has
aspects as it never will, instead check the node about to be clobbered.
* einfo.adb (Write_Field25_Name): Abstract_States can appear in
entities of generic packages.
* sem_ch6.adb (Analyze_Expression_Function): Fix the parent
pointer of an aspect specification list after rewriting takes place.
* sem_ch7.adb (Analyze_Package_Body_Helper): Swap the aspect
specifications of the generic template and the copy used for analysis.
* sem_ch12.adb (Analyze_Generic_Package_Declaration): Swap
the aspect specifications of the generic template and the
copy used for analysis.
(Analyze_Package_Instantiation): Propagate the aspect specifications
from the generic template to the instantiation.
(Build_Instance_Compilation_Unit_Nodes): Propagate the aspect
specifications from the generic template to the instantiation.
* sem_ch13.adb (Analyze_Aspect_Specifications): Handle aspects
Abstract_State, Initializes and Initial_Condition when they
apply to a package instantiation.

2014-02-20  Robert Dewar  <dewar@adacore.com>

* stringt.adb: Add call to Initialize in package initialization.

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

10 years ago2014-02-20 Robert Dewar <dewar@adacore.com>
charlet [Thu, 20 Feb 2014 13:46:15 +0000 (13:46 +0000)]
2014-02-20  Robert Dewar  <dewar@adacore.com>

* a-crbtgk.adb, a-cihama.adb, a-coinve.adb, a-ciorse.adb, a-crbtgo.adb,
a-cidlli.adb, a-cimutr.adb, a-cihase.adb, a-cohama.adb, a-coorse.adb,
a-chtgke.adb, a-chtgop.adb, a-comutr.adb, a-ciorma.adb, a-cobove.adb,
a-convec.adb, a-cohase.adb, a-chtgbk.adb, a-chtgbo.adb: Minor
reformatting.

2014-02-20  Bob Duff  <duff@adacore.com>

* s-os_lib.ads: Minor: Remove incorrect comment.

2014-02-20  Robert Dewar  <dewar@adacore.com>

* sem_elab.adb (Check_Elab_Assign): Clearer warning message.

2014-02-20  Vincent Celier  <celier@adacore.com>

* gnat_rm.texi: Minor syntax error fix.

2014-02-20  Ed Schonberg  <schonberg@adacore.com>

* a-cborma.adb (Assign): When creating a node without a specified
element, insert an uninitialized element in the map, because
the instance may provide an element type with a default
initialization, e.g a scalar with a Default_Value aspect.
* a-cbhama.adb (Assign_Key): Remove useless Allocate procedure.
(Insert): In the version without explicit element, provide an
uninitialized element, as above.
* a-cbdlli.adb (Append): In the version without explicit element,
provide an uninitalized element, as above.
(Allocate): Remove unused version.

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

10 years ago2014-02-20 Robert Dewar <dewar@adacore.com>
charlet [Thu, 20 Feb 2014 13:44:20 +0000 (13:44 +0000)]
2014-02-20  Robert Dewar  <dewar@adacore.com>

* sem_elab.adb: Minor code reorganization (use Nkind_In).
* stringt.adb: Remove temporary pragma Warnings (Off).
* stringt.ads: Add pragma Elaborate_Body to ensure initialization
of Null_String_Id.

2014-02-20  Matthew Heaney  <heaney@adacore.com>

* a-chtgbk.adb (Replace): Use correct offset when calculating bucket
index.

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

10 years ago2014-02-20 Ed Schonberg <schonberg@adacore.com>
charlet [Thu, 20 Feb 2014 13:42:58 +0000 (13:42 +0000)]
2014-02-20  Ed Schonberg  <schonberg@adacore.com>

* sem_ch5.adb (Analyze_Iterator_Specification): Initialize
properly the cursor type for subsequent volatile testing in SPARK
mode, when domain is a formal container with an Iterabe aspect.

2014-02-20  Robert Dewar  <dewar@adacore.com>

* errout.adb (Set_Warnings_Mode_Off): Add Reason argument.
(Set_Specific_Warning_Off): Add Reason argument.
* errout.ads (Set_Warnings_Mode_Off): Add Reason argument.
(Set_Specific_Warning_Off): Add Reason argument.
* erroutc.adb (Warnings_Entry): Add Reason field
(Specific_Warning_Entry): Add Reason field.
(Warnings_Suppressed): return String_Id for Reason.
(Warning_Specifically_Suppressed): return String_Id for Reason.
* erroutc.ads (Warnings_Entry): Add Reason field.
(Specific_Warning_Entry): Add Reason field.
(Set_Specific_Warning_Off): Add Reason argument.
(Set_Warnings_Mode_Off): Add Reason argument.
(Warnings_Suppressed): return String_Id for Reason.
(Warning_Specifically_Suppressed): return String_Id for Reason.
* errutil.adb (Warnings_Suppressed): returns String_Id for Reason
(Warning_Specifically_Suppressed): returns String_Id for Reason
* gnat_rm.texi: Document that Warning parameter is string literal
or a concatenation of string literals.
* par-prag.adb: New handling for Reason argument.
* sem_prag.adb (Analyze_Pragma, case Warning): New handling
for Reason argument.
* sem_util.ads, sem_util.adb (Get_Reason_String): New procedure.
* sem_warn.ads (Warnings_Off_Entry): Add reason field.
* stringt.adb: Set Null_String_Id.
* stringt.ads (Null_String_Id): New constant.

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

10 years ago2014-02-20 Robert Dewar <dewar@adacore.com>
charlet [Thu, 20 Feb 2014 13:38:06 +0000 (13:38 +0000)]
2014-02-20  Robert Dewar  <dewar@adacore.com>

* einfo.ads: Minor comment addition: Etype of package is
Standard_Void_Type.
* checks.adb, exp_aggr.adb, exp_atag.adb, exp_attr.adb, exp_ch13.adb,
exp_ch2.adb, exp_ch3.adb, exp_ch4.adb, exp_ch5.adb, exp_ch6.adb,
exp_ch7.adb, exp_ch9.adb, exp_dbug.adb, exp_disp.adb, exp_imgv.adb,
exp_intr.adb, exp_prag.adb, exp_sel.adb, exp_strm.adb, exp_util.adb,
freeze.adb, rtsfind.adb, sem_aggr.adb, sem_attr.adb, sem_ch10.adb,
sem_ch12.adb, sem_ch13.adb, sem_ch3.adb, sem_ch4.adb, sem_ch5.adb,
sem_ch6.adb, sem_ch8.adb, sem_dim.adb, sem_prag.adb, sem_res.adb,
sem_util.adb, tbuild.adb, tbuild.ads: Remove New_Reference_To.
Replace all calls with calls to New_Occurrence_Of.

2014-02-20  Robert Dewar  <dewar@adacore.com>

* par-util.adb (Ignore, case of right paren): Make this a
serious error.

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

10 years ago2014-02-20 Martin Jambor <mjambor@suse.cz>
jamborm [Thu, 20 Feb 2014 13:28:34 +0000 (13:28 +0000)]
2014-02-20  Martin Jambor  <mjambor@suse.cz>

PR ipa/55260
* ipa-cp.c (cgraph_edge_brings_all_agg_vals_for_node): Uce correct
info when checking whether lattices are bottom.

testsuite/
* gcc.dg/ipa/pr55260.c: New test.

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

10 years ago * gcc.dg/tree-prof/crossmodule-indircall-1.c: Return 0
amker [Thu, 20 Feb 2014 10:41:03 +0000 (10:41 +0000)]
* gcc.dg/tree-prof/crossmodule-indircall-1.c: Return 0
for execution test case.

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

10 years ago2014-02-20 Richard Biener <rguenther@suse.de>
rguenth [Thu, 20 Feb 2014 09:00:23 +0000 (09:00 +0000)]
2014-02-20  Richard Biener  <rguenther@suse.de>

PR middle-end/60221
* tree-eh.c (execute_cleanup_eh_1): Also cleanup empty EH
regions at -O0.

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

10 years ago2014-02-20 Richard Biener <rguenther@suse.de>
rguenth [Thu, 20 Feb 2014 08:43:04 +0000 (08:43 +0000)]
2014-02-20  Richard Biener  <rguenther@suse.de>

PR libjava/60261
* configure.ac (dbexecdir): Remove redundant multilib addition.
* Makefile.am (gcc_version): Export.
* configure: Regenerate.
* Makefile.in: Likewise.

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

10 years ago PR ipa/58555
hubicka [Thu, 20 Feb 2014 06:40:07 +0000 (06:40 +0000)]
PR ipa/58555
* ipa-inline-transform.c (clone_inlined_nodes): Add freq_scale parameter
specifying the scaling.
(inline_call): Update.
(want_inline_recursively): Guard division by zero.
(recursive_inlining): Update.
* ipa-inline.h (clone_inlined_nodes): Update.
* testsuite/g++.dg/torture/pr58555.C: New testcase.

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

10 years agogcc/
kyukhin [Thu, 20 Feb 2014 06:32:21 +0000 (06:32 +0000)]
gcc/
PR target/60204
* config/i386/i386.c (classify_argument): Pass structures of size
64 bytes or less in register.

tessuite/gcc/
PR target/60204
* gcc.target/x86_64/abi/avx512f/test_passing_structs.c: Update to
reflect abi fix.
* gcc.target/x86_64/abi/avx512f/test_passing_unions.c: Ditto.

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

10 years agogcc/
kyukhin [Thu, 20 Feb 2014 06:26:38 +0000 (06:26 +0000)]
gcc/
* config/i386/avx512erintrin.h (_mm_rcp28_round_sd): Swap operands.
(_mm_rcp28_round_ss): Ditto.
(_mm_rsqrt28_round_sd): Ditto.
(_mm_rsqrt28_round_ss): Ditto.
* config/i386/avx512erintrin.h (_mm_rcp14_round_sd): Ditto.
(_mm_rcp14_round_ss): Ditto.
(_mm_rsqrt14_round_sd): Ditto.
(_mm_rsqrt14_round_ss): Ditto.
* config/i386/sse.md (rsqrt14<mode>): Put nonimmediate operand as
the first input operand, get rid of match_dup.
(avx512er_exp2<mode><mask_name><round_saeonly_name>): Set type
attribute to sse.
(<mask_codefor>avx512er_rcp28<mode><mask_name><round_saeonly_name>):
Ditto.
(avx512er_vmrcp28<mode><round_saeonly_name>): Put nonimmediate
operand as the first input operand, set type attribute.
(<mask_codefor>avx512er_rsqrt28<mode><mask_name><round_saeonly_name>):
Set type attribute.
(avx512er_vmrsqrt28<mode><round_saeonly_name>): Put nonimmediate
operand as the first input operand, set type attribute.

testsuite/gcc/
* gcc.target/i386/avx512er-vrcp28sd-2.c: Distinguish src1 and src2.
* gcc.target/i386/avx512er-vrcp28ss-2.c: Call correct intrinsic.
* gcc.target/i386/avx512er-vrsqrt28sd-2.c: Distinguish src1 and src2.
* gcc.target/i386/avx512er-vrsqrt28ss-2.c: Ditto.
* gcc.target/i386/avx512f-vrcp14sd-2.c: Fix reference calculation.
* gcc.target/i386/avx512f-vrcp14ss-2.c: Fix reference calculation.

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

10 years agoDaily bump.
gccadmin [Thu, 20 Feb 2014 00:17:08 +0000 (00:17 +0000)]
Daily bump.

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

10 years ago PR c/37743
jakub [Wed, 19 Feb 2014 22:27:40 +0000 (22:27 +0000)]
PR c/37743
* c-common.c (c_common_nodes_and_builtins): When initializing
c_uint{16,32,64}_type_node, also set corresponding
uint{16,32,64}_type_node to the same value.

* g++.dg/ext/builtin-bswap1.C: New test.
* c-c++-common/pr37743.c: New test.

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

10 years ago2014-02-19 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
wschmidt [Wed, 19 Feb 2014 19:43:13 +0000 (19:43 +0000)]
2014-02-19  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

* config/rs6000/rs6000.c (vspltis_constant): Fix most significant
bit of zero.

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

10 years ago PR c++/60046
jason [Wed, 19 Feb 2014 19:03:19 +0000 (19:03 +0000)]
PR c++/60046
* pt.c (maybe_instantiate_noexcept): Don't instantiate exception
spec from template context.

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

10 years ago * c-parser.c (c_parser_declspecs): Replace call to error by error_at.
mpolacek [Wed, 19 Feb 2014 18:51:57 +0000 (18:51 +0000)]
* c-parser.c (c_parser_declspecs): Replace call to error by error_at.
(c_parser_parameter_declaration): Likewise.

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

10 years ago PR debug/56563
jakub [Wed, 19 Feb 2014 18:12:31 +0000 (18:12 +0000)]
PR debug/56563
* cp-objcp-common.c (cp_function_decl_explicit_p): Remove
FUNCTION_FIRST_USER_PARMTYPE (decl) != void_list_node check.

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

10 years ago PR c++/60267
jakub [Wed, 19 Feb 2014 18:11:54 +0000 (18:11 +0000)]
PR c++/60267
* pt.c (tsubst_expr): Handle ANNOTATE_EXPR.

* g++.dg/ext/ivdep-1.C: New test.

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

10 years agoRemove TFmode check for X86_64_INTEGER_CLASS
hjl [Wed, 19 Feb 2014 18:10:04 +0000 (18:10 +0000)]
Remove TFmode check for X86_64_INTEGER_CLASS

PR target/60207
* config/i386/i386.c (construct_container): Remove TFmode check
for X86_64_INTEGER_CLASS.

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

10 years ago PR c++/60267
jakub [Wed, 19 Feb 2014 16:45:21 +0000 (16:45 +0000)]
PR c++/60267
* c-pragma.c (init_pragma): Don't call cpp_register_deferred_pragma
for PRAGMA_IVDEP if flag_preprocess_only.

* gcc.dg/pr60267.c: New test.

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

10 years ago PR target/59794
uros [Wed, 19 Feb 2014 15:53:59 +0000 (15:53 +0000)]
PR target/59794
* config/i386/i386.c (type_natural_mode): Warn for ABI changes
only when -Wpsabi is enabled.

testsuite/ChangeLog:

PR target/59794
* gcc.target/i386/pr39162.c: Add dg-prune-output.
(dg-options): Remove -Wno-psabi.
* gcc.target/i386/59794-2.c: Ditto.
* gcc.target/i386/60205-1.c: Ditto.
* gcc.target/i386/sse-5.c: Ditto.

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

10 years ago * gcc.dg/graphite/pr46966.c: Only run on 32-bit+ targets.
nickc [Wed, 19 Feb 2014 15:44:11 +0000 (15:44 +0000)]
* gcc.dg/graphite/pr46966.c: Only run on 32-bit+ targets.
* gcc.dg/pr23623.c: Likewise.
* gcc.dg/pr48784-1.c: Likewise.
* gcc.dg/pr48784-2.c: Likewise.
* gcc.dg/pr56997-2.c: Likewise.
* gcc.dg/sms-6.c: Likewise.
* gcc.dg/torture/pr60183.c: Likewise.
* gcc.dg/torture/vec-cvt-1.c: Likewise.
* gcc.c-torture/execute/20061220-1.x: New.
* gcc.c-torture/execute/pr43220.x: New.
* gcc.c-torture/execute/pr51581-1.x: New.
* gcc.c-torture/execute/pr51581-2.x: New.
* gcc.c-torture/execute/pr58570.x: New.
* gcc.c-torture/unsorted/DFcmp.x: New.
* gcc.c-torture/unsorted/SFset.x: New.

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

10 years ago2014-02-19 Michael Hudson-Doyle <michael.hudson@linaro.org>
yroux [Wed, 19 Feb 2014 15:32:54 +0000 (15:32 +0000)]
2014-02-19  Michael Hudson-Doyle  <michael.hudson@linaro.org>

 PR target/59799
* config/aarch64/aarch64.c (aarch64_pass_by_reference): The rules for
passing arrays in registers are the same as for structs, so remove the
special case for them.

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

10 years ago2014-02-19 Robert Dewar <dewar@adacore.com>
charlet [Wed, 19 Feb 2014 15:05:43 +0000 (15:05 +0000)]
2014-02-19  Robert Dewar  <dewar@adacore.com>

* sem_ch5.adb, sem_prag.adb, sem_attr.adb: Minor reformatting.
* debug.adb: Remove -gnatd.X switch, no longer used.
* styleg.adb (Check_Then): Remove check of -gnatd.X, check is
now always made.

2014-02-19  Bob Duff  <duff@adacore.com>

* g-socket.ads: Minor: Correct some comments.

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

10 years ago2014-02-19 Ed Schonberg <schonberg@adacore.com>
charlet [Wed, 19 Feb 2014 15:04:08 +0000 (15:04 +0000)]
2014-02-19  Ed Schonberg  <schonberg@adacore.com>

* sem_ch5.adb: Inhibit iterator rewriting in ASIS mode.

2014-02-19  Arnaud Charlet  <charlet@adacore.com>

* sem_ch13.adb (Analyze_Aspect_Specifications): Do not generate
an error on out of range priorities if Relaxed_RM_Semantics.
* sem_prag.adb (Analyze_Pragma): Ditto.

2014-02-19  Bob Duff  <duff@adacore.com>

* sem_attr.adb (Resolve_Attribute): Detect the case of F'Access
where F denotes the renaming of an enumeration literal, and
issue a specialized error message.

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

10 years ago2014-02-19 Matthew Heaney <heaney@adacore.com>
charlet [Wed, 19 Feb 2014 14:59:32 +0000 (14:59 +0000)]
2014-02-19  Matthew Heaney  <heaney@adacore.com>

* a-chtgop.ads (Checked_Index): New operation.
(Next): Changed mode of hash table.
* a-chtgop.adb (Adjust, Delete_Node_Sans_Free): Detect tampering
(Generic_Read, Reserve_Capacity): Ditto.
(Generic_Equal): Detect tampering.
(Next): Changed mode of hash table, detect tampering.
* a-chtgke.ads (Checked_Index, Checked_Equivalent_Keys): New
operation.
(Find): Changed mode of hash table.
* a-chtgke.adb (Checked_Equivalent_Keys): New operation
(Delete_Key_Sans_Free, Generic_Conditional_Insert): Detect
tampering.
(Find): Changed mode of hash table, check for tampering.
(Generic_Replace_Element): Check for tampering.
* a-chtgbk.ads (Checked_Index, Checked_Equivalent_Keys): New operation.
* a-chtgbk.adb (Checked_Index, Checked_Equivalent_Keys): New
operation (Delete_Key_Sans_Free, Generic_Conditional_Insert):
Detect tampering.
(Find, Generic_Replace_Element): Check for tampering.
* a-chtgbo.ads (Checked_Index): New operation.
* a-chtgbo.adb (Checked_Index): New operation
(Delete_Node_Sans_Free, Generic_Equal): Detect tampering.
(Generic_Read, Next): Ditto.
* a-cohase.adb, a-cihase.adb (Is_In): Changed mode of hash
table (Difference, Intersection): Use variable view of
source, detect tampering (Find, Is_Subset, Overlap): Use
variable view of container (Symmetric_Difference, Union):
Detect tampering (Vet): Use Checked_Index to detect tampering
(Constant_Reference, Element, Find): Use variable view of
container.
(Update_Element_Preserving_Key): Detect tampering.
* a-cbhase.adb (Difference, Find, Is_In): Use variable view
of container.
(Is_Subset): Ditto.
(Equivalent_Sets, Overlap): Use Node's Next component.
(Vet): Use Checked_Index to detect tampering.
(Constant_Reference, Element, Find): Use variable view of container.
(Update_Element_Preserving_Key): Detect tampering.
* a-cohama.adb, a-cihama.adb, a-cbhama.adb (Constant_Reference,
Element, Find): Use variable view of container.
(Reference): Rename hash table component.
(Vet): Use Checked_Index to detect tampering.

2014-02-19  Arnaud Charlet  <charlet@adacore.com>

* adabkend.adb (Scan_Compiler_Arguments): Add missing handling
of -nostdinc.

2014-02-19  Thomas Quinot  <quinot@adacore.com>

* tbuild.adb (New_Occurrence_Of, New_Rerefence_To): Guard
against calls without Def_Id.

2014-02-19  Claire Dross  <dross@adacore.com>

* a-cfdlli.ads, a-cfhase.ads, a-cforma.ads, a-cfhama.ads, a-cforse.ads,
a-cofove.ads: Add global annotations to subprograms.

2014-02-19  Hristian Kirtchev  <kirtchev@adacore.com>

* sem_prag.adb (Analyze_Initial_Condition_In_Decl_Part): Remove
constants Errors, Pack_Id and Pack_Init. Remove variable Vars.
Initial_Condition no longer requires the presence of pragma
Initialized. Do not try to diagnose whether all variables mentioned in
pragma Initializes also appear in Initial_Condition.
(Collect_Variables): Removed.
(Match_Variable): Removed.
(Match_Variables): Removed.
(Report_Unused_Variables): Removed.

2014-02-19  Thomas Quinot  <quinot@adacore.com>

* gnat_rm.texi (pragma Stream_Convert): Minor rewording.

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

10 years ago2014-02-19 Robert Dewar <dewar@adacore.com>
charlet [Wed, 19 Feb 2014 14:48:32 +0000 (14:48 +0000)]
2014-02-19  Robert Dewar  <dewar@adacore.com>

* sem_util.adb, sem_util.ads, prj-conf.adb, s-os_lib.adb: Minor
reformatting.

2014-02-19  Vincent Celier  <celier@adacore.com>

* prj-part.adb (Parse_Single_Project): Use the fully resolved
project path, with all symbolic links resolved, to check if the
same project is imported with a different unresolved path.
* prj-tree.ads (Project_Name_And_Node): Component Canonical_Path
changed to Resolved_Path to reflect that all symbolic links
are resolved.

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

10 years ago2014-02-19 Ed Schonberg <schonberg@adacore.com>
charlet [Wed, 19 Feb 2014 14:46:15 +0000 (14:46 +0000)]
2014-02-19  Ed Schonberg  <schonberg@adacore.com>

* sem_util.ads, sem_util.adb (Get_Cursor_Type): Moved to sem_util
from sem_ch13, for use elsewhere.
* sem_ch13.adb (Get_Cursor_Type): Moved to sem_util.
* sem_ch5.adb (Analyze_Iterator_Specification): Set properly the
cursor type on the loop variable when the iteration is over o
formal container.

2014-02-19  Vincent Celier  <celier@adacore.com>

* prj-conf.adb (Add_Default_GNAT_Naming_Scheme): Add declaration
for an empty Target (Check_Target): Never fail when an empty
target is declared in the configuration project.

2014-02-19  Ed Schonberg  <schonberg@adacore.com>

* sem_prag.adb (Check_Arg_Is_Local_Name): Argument is local if
the pragma comes fron a predicate aspect and the context is a
record declaration within the scope that declares the type.

2014-02-19  Robert Dewar  <dewar@adacore.com>

* gnat_rm.texi: Minor clarifications.
* expander.adb, sem_aggr.adb: Add comments.

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

10 years ago * expr.c (expand_expr_real_1) <case VIEW_CONVERT_EXPR>: For a bit-field
ebotcazou [Wed, 19 Feb 2014 14:45:16 +0000 (14:45 +0000)]
* expr.c (expand_expr_real_1) <case VIEW_CONVERT_EXPR>: For a bit-field
destination type, extract only the valid bits if the source type is not
integral and has a different mode.

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

10 years ago2014-02-19 Ed Schonberg <schonberg@adacore.com>
charlet [Wed, 19 Feb 2014 14:42:55 +0000 (14:42 +0000)]
2014-02-19  Ed Schonberg  <schonberg@adacore.com>

* sem_prag.adb (Check_Arg_Is_Local_Name): For an aspect that
applies to a subprogram body, the name is the current scope,
rather than being declared in the current scope.
(Analyze_Pragma, case No_Return): Handle properly a No_Return
aspect applied to a subprogram body.

2014-02-19  Ed Schonberg  <schonberg@adacore.com>

* sem_ch13.adb (Resolve_Iterable_Operation): Improve resolution
of overloaded subprograms, and fix bug in handling of primitive
operation Element.

2014-02-19  Pascal Obry  <obry@adacore.com>

* s-os_lib.adb: Minor reformatting.

2014-02-19  Yannick Moy  <moy@adacore.com>

* expander.adb (Expand): Do nothing inside generics.
* sem_aggr.adb (Aggregate_Constraint_Checks): Do nothing inside
generics.

2014-02-19  Yannick Moy  <moy@adacore.com>

* exp_ch2.adb: Remove useless 'with' of unit Uintp.

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

10 years ago2014-02-19 Robert Dewar <dewar@adacore.com>
charlet [Wed, 19 Feb 2014 14:40:26 +0000 (14:40 +0000)]
2014-02-19  Robert Dewar  <dewar@adacore.com>

* sem_ch3.adb, style.adb, sem_prag.adb, sem_ch13.adb: Minor reformatting
* a-sequio.adb: Remove useless pragma Extensions_Allowed (no
longer needed).

2014-02-19  Claire Dross  <dross@adacore.com>

* a-cfdlli.ads, a-cfhase.ads, a-cforma.ads, a-cfhama.ads,
a-cforse.ads, a-cofove.ads: Add Iterable aspect to formal containers.

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

10 years ago2014-02-19 Richard Biener <rguenther@suse.de>
rguenth [Wed, 19 Feb 2014 14:25:47 +0000 (14:25 +0000)]
2014-02-19  Richard Biener  <rguenther@suse.de>

PR ipa/60243
* tree-inline.c (estimate_num_insns): Avoid calling cgraph_get_node
for all calls.

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

10 years agoXFAIL gcc.dg/torture/pr60092.c execution on Solaris 11
ro [Wed, 19 Feb 2014 12:28:15 +0000 (12:28 +0000)]
XFAIL gcc.dg/torture/pr60092.c execution on Solaris 11

* gcc.dg/torture/pr60092.c: xfail execution on *-*-solaris2.11* at -O0.

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

10 years ago2014-02-19 Janus Weil <janus@gcc.gnu.org>
janus [Wed, 19 Feb 2014 11:52:39 +0000 (11:52 +0000)]
2014-02-19  Janus Weil  <janus@gcc.gnu.org>

PR fortran/60232
* expr.c (gfc_get_variable_expr): Don't add REF_ARRAY for dimensionful
functions, which are used as procedure pointer target.

2014-02-19  Janus Weil  <janus@gcc.gnu.org>

PR fortran/60232
* gfortran.dg/typebound_proc_33.f90: New.

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

10 years ago2014-02-19 Hristian Kirtchev <kirtchev@adacore.com>
charlet [Wed, 19 Feb 2014 11:18:32 +0000 (11:18 +0000)]
2014-02-19  Hristian Kirtchev  <kirtchev@adacore.com>

* sem_ch3.adb (Analyze_Declarations): Analyze
a package contract at the end of the private declarations (if
applicable), otherwise analyze it and the end of the visible
declarations.

2014-02-19  Ed Schonberg  <schonberg@adacore.com>

* style.adb (Missing_Overriding): If subprogram is an
instantiation, place warning on the instance node itself,
without mention of the original generic. Do not emit message
if explicit Ada version is older than the introduction of the
overriding indicator.

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

10 years ago2014-02-19 Yannick Moy <moy@adacore.com>
charlet [Wed, 19 Feb 2014 11:17:15 +0000 (11:17 +0000)]
2014-02-19  Yannick Moy  <moy@adacore.com>

* gnat_rm.texi: Doc clarifications.

2014-02-19  Yannick Moy  <moy@adacore.com>

* exp_util.adb (Remove_Side_Effects): Do not remove side-effects
inside a generic.

2014-02-19  Ed Schonberg  <schonberg@adacore.com>

* sem_ch13.adb (Get_Cursor_Type): Obtain cursor type from
specified First primitive, rather than by name.
(Validate_Iterable_Aspect, Resolve_Iterable_Operation): Use it,
and extend error checking for missing primitives and incorrect
signatures.

2014-02-19  Ed Schonberg  <schonberg@adacore.com>

* sem_ch3.adb (Check_Pragma_Implemented): Detect additional
errors when a Synchronization aspect on an overriding protected
operation does not match the given aspect on the overridden
operation of an ancestor interface.

2014-02-19  Hristian Kirtchev  <kirtchev@adacore.com>

* sem_prag.adb (Check_Loop_Pragma_Grouping): New routine.
(Check_Loop_Pragma_Placement): Update
comment on usage. Remove local variables Orig_Stmt and
Within_Same_Sequence. Check that the current Loop_Invariant or
Loop_Variant pragma is grouped together with other such pragmas.
(Is_Loop_Pragma): New routine.
(Prev_In_Loop): Removed.

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

10 years ago2014-02-19 Robert Dewar <dewar@adacore.com>
charlet [Wed, 19 Feb 2014 11:12:05 +0000 (11:12 +0000)]
2014-02-19  Robert Dewar  <dewar@adacore.com>

* par-ch6.adb (P_Return): For extended return, end column lines
up with RETURN.
* par.adb: Minor documentation clarification.

2014-02-19  Yannick Moy  <moy@adacore.com>

* sem_prag.adb (Check_Loop_Pragma_Placement): Add check
that Loop_Invariant and Loop_Variant appear consecutively.
* gnat_rm.texi Update documentation of Loop_Invariant and
Loop_Variant pragmas.

2014-02-19  Robert Dewar  <dewar@adacore.com>

* debug.adb: Document -gnatd.X.
* par-ch5.adb (P_If_Statement): Always check THEN, even if not
first token
(Check_Then_Column): Ditto.
* styleg.adb (Check_Then): Allow THEN on line after IF.
(Check_Then): Check THEN placement under control of -gnatd.X
* styleg.ads (Check_Then): Now called even if THEN is not first
token on line.
* stylesw.ads (Style_Check_If_Then_Layout): Document new
relaxed rules.
* gnat_ugn.texi: For -gnatyi, THEN can now be on line after IF.

2014-02-19  Robert Dewar  <dewar@adacore.com>

* a-cfhama.adb, a-cfhase.adb, a-cforse.adb, a-cofove.adb, a-ngcefu.adb,
a-teioed.adb, a-wtedit.adb, a-ztedit.adb, exp_ch5.adb, inline.adb,
prj-pp.adb, prj-tree.adb, sem_ch12.adb, sem_ch8.adb,
vms_conv.adb: Fix bad layout of IF statements

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

10 years ago2014-02-19 Robert Dewar <dewar@adacore.com>
charlet [Wed, 19 Feb 2014 11:07:31 +0000 (11:07 +0000)]
2014-02-19  Robert Dewar  <dewar@adacore.com>

* exp_util.adb (Side_Effect_Free): Scalar if expressions can be SEF.

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

10 years ago2014-02-19 Robert Dewar <dewar@adacore.com>
charlet [Wed, 19 Feb 2014 11:05:35 +0000 (11:05 +0000)]
2014-02-19  Robert Dewar  <dewar@adacore.com>

* exp_util.adb: Update comments.

2014-02-19  Doug Rupp  <rupp@adacore.com>

* bindgen.adb (Gen_Adainit) [VMS] New global Float_Format.
* init.c (__gl_float_format): [VMS] New global.
(__gnat_set_features): Call FP_CONTROL to set FPSR for the float
representation in effect.

2014-02-19  Hristian Kirtchev  <kirtchev@adacore.com>

* exp_ch6.adb Add with and use clause for Exp_Prag.
(Expand_Contract_Cases): Relocated to Exp_Prag.
* exp_ch6.ads (Expand_Contract_Cases): Relocated to Exp_Prag.
* exp_prag.adb Add with and use clauses for Checks and Validsw.
(Expand_Contract_Cases): Relocated from Exp_Ch6. Update the
structure of the expanded code to showcase the evaluation of
attribute 'Old prefixes. Add local variable Old_Evals. Expand
any attribute 'Old references found within a consequence. Add
circuitry to evaluate the prefixes of attribute 'Old that
belong to a selected consequence.
(Expand_Old_In_Consequence): New routine.
* exp_prag.ads (Expand_Contract_Cases): Relocated from Exp_Ch6.
* sem_attr.adb (Check_Use_In_Contract_Cases): Warn that a
potentially unevaluated prefix is always evaluated.

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

10 years ago2014-02-19 Robert Dewar <dewar@adacore.com>
charlet [Wed, 19 Feb 2014 11:02:48 +0000 (11:02 +0000)]
2014-02-19  Robert Dewar  <dewar@adacore.com>

* exp_attr.adb (Expand_Min_Max_Attribute): Use Insert_Declaration
(Expand_Min_Max_Attribute): Use Matching_Standard_Type.
* exp_ch4.adb (Expand_N_Expression_With_Actions): Remove special
handling for the case of Modify_Tree_For_C, this approach did
not work.
* exp_util.adb (Matching_Standard_Type): New function
(Side_Effect_Free): New top level functions (from
Remove_Side_Effects).
* exp_util.ads (Side_Effect_Free): New top level functions
(moved from body).
* sinfo.ads: Minor comment updates.

2014-02-19  Ed Schonberg  <schonberg@adacore.com>

* exp_ch6.adb (Expand_Simple_Function_Return): If return
type is unconstrained and uses the secondary stack, mark the
enclosing function accordingly, to ensure that the value is not
prematurely removed.

2014-02-19  Hristian Kirtchev  <kirtchev@adacore.com>

* par.adb Alphabetize the routines in Par.Sync.
(Resync_Past_Malformed_Aspect): New routine.
* par-ch13.adb (Get_Aspect_Specifications): Alphabetize local
variables. Code and comment reformatting. Detect missing
parentheses on aspects [Refined_]Global and [Refined_]Depends
with a non-null definition.
* par-sync.adb: Alphabetize all routines in this separate unit.
(Resync_Past_Malformed_Aspect): New routine.

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

10 years ago2014-02-19 Robert Dewar <dewar@adacore.com>
charlet [Wed, 19 Feb 2014 11:01:01 +0000 (11:01 +0000)]
2014-02-19  Robert Dewar  <dewar@adacore.com>

* sem_eval.ads, sem_eval.adb (Subtypes_Statically_Match): Return False
if Esize values do not match.

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

10 years ago2014-02-19 Yannick Moy <moy@adacore.com>
charlet [Wed, 19 Feb 2014 10:59:25 +0000 (10:59 +0000)]
2014-02-19  Yannick Moy  <moy@adacore.com>

* sinfo.ads: Minor comment update.

2014-02-19  Hristian Kirtchev  <kirtchev@adacore.com>

* atree.ads: Minor reformatting (change Entity_Info to Einfo).

2014-02-19  Thomas Quinot  <quinot@adacore.com>

* exp_ch7.adb (Find_Node_To_Be_Wrapped): An assignment statement
that has the No_Ctrl_Actions flag is a suitable node to be
wrapped if the assigned expression has no finalization actions.
* sem_eval.adb (Eval_Entity_Name): For a compile time known
boolean value, mark the corresponding condition SCO as constant.

2014-02-19  Robert Dewar  <dewar@adacore.com>

* exp_util.adb: Minor reformatting.
* exp_util.ads (Matching_Standard_Type): New function.
* exp_ch7.adb: Minor reformatting.

2014-02-19  Ed Schonberg  <schonberg@adacore.com>

* sem_ch13.adb (Get_Cursor_Type): Use scope of iterable type
to find declaration for Cursor, to handle properly the case of
a discriminated iterable type.

2014-02-19  Vincent Celier  <celier@adacore.com>

* gnatcmd.adb (GNATCmd): Always replace the object dirs of
imported library projects with the library ALI dirs, when setting
the object paths.
* prj-env.ads (Ada_Objects_Path): Correct comments about
argument Including_Libraries.

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

10 years ago2014-02-19 Gary Dismukes <dismukes@adacore.com>
charlet [Wed, 19 Feb 2014 10:55:33 +0000 (10:55 +0000)]
2014-02-19  Gary Dismukes  <dismukes@adacore.com>

* gnat_rm.texi: Minor spelling fixes.

2014-02-19  Doug Rupp  <rupp@adacore.com>

* init.c: Remove unneeded code.
* fe.h (Float_Format): New macro
* gcc-interface/trans.c (gigi): On VMS, set vms_float_format.

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

10 years ago2014-02-19 Hristian Kirtchev <kirtchev@adacore.com>
charlet [Wed, 19 Feb 2014 10:51:26 +0000 (10:51 +0000)]
2014-02-19  Hristian Kirtchev  <kirtchev@adacore.com>

* sem_prag.adb (Check_Refined_Global_Item):
A state or variable acts as a constituent only it is part of an
encapsulating state and the state has visible refinement.

2014-02-19  Ed Schonberg  <schonberg@adacore.com>

* sem_ch6.adb (Analyze_Subprogram_Contract): Do not warn on a
postcondition for a function when the expression does not mention
'Result but the function has in-out parameters.

2014-02-19  Robert Dewar  <dewar@adacore.com>

* gnat_rm.texi: Add documentation on Value_Size forcing biased
representation.

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

10 years ago2014-02-19 Hristian Kirtchev <kirtchev@adacore.com>
charlet [Wed, 19 Feb 2014 10:48:06 +0000 (10:48 +0000)]
2014-02-19  Hristian Kirtchev  <kirtchev@adacore.com>

* lib-xref.ads Remove the small table of letter and symbol usage as we
already have one.

2014-02-19  Hristian Kirtchev  <kirtchev@adacore.com>

* sem_ch6.adb (Analyze_Subprogram_Body_Helper): Emit specific error
messages depending on the offending misplaced aspect specifications.
(Diagnose_Misplaced_Aspect_Specifications): New routine.

2014-02-19  Ed Schonberg  <schonberg@adacore.com>

* sem_ch13.adb (Get_Cursor): Utility to retrieve cursor type
for iterable aspect primitives.
(Resolve_Iterable_Operation): Use expected signature of iterable
aspect to resolve primitive when overloading is present.
(Validate_Iterable_Aspect, Analyze_Aspects_At_Freeze_Point): use it.
(Check_Signature): Removed.

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

10 years ago2014-02-19 Yannick Moy <moy@adacore.com>
charlet [Wed, 19 Feb 2014 10:44:33 +0000 (10:44 +0000)]
2014-02-19  Yannick Moy  <moy@adacore.com>

* sem_ch10.adb (Analyze_Proper_Body): Issue error on missing
subunit in GNATprove_Mode.
* sinfo.ads (GNATprove_Mode): Document error issued in GNATprove_Mode.

2014-02-19  Hristian Kirtchev  <kirtchev@adacore.com>

* lib-xref.ads Alphabetize the contents of table
Xref_Entity_Letters. Add an entry in table Xref_Entity_Letters
for E_Abstract_State. List all letters and symbols in use.
* sem_prag.adb (Analyze_Abstract_State): Update all calls
to Create_Abstract_State to reflect the new signature.
(Create_Abstract_State): Change subprogram profile and update
the comment on usage. Use the proper location of the state
declaration when creating a new abstract state entity. Do not
generate an external name, but simply reuse the name coming from
the state declaration.

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

10 years ago2014-02-19 Robert Dewar <dewar@adacore.com>
charlet [Wed, 19 Feb 2014 10:42:16 +0000 (10:42 +0000)]
2014-02-19  Robert Dewar  <dewar@adacore.com>

* exp_ch4.adb (Expand_N_Expression_With_Actions): Make sure
declarations get properly inserted in Modify_Tree_For_C mode.
* sinfo.ads: Minor comment addition.

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

10 years ago2014-02-19 Robert Dewar <dewar@adacore.com>
charlet [Wed, 19 Feb 2014 10:32:17 +0000 (10:32 +0000)]
2014-02-19  Robert Dewar  <dewar@adacore.com>

* par-ch9.adb, exp_ch5.adb, sem_ch5.adb, exp_attr.adb, sem_util.adb,
sem_util.ads, sem_ch13.adb, sem_ch13.ads: Minor reformatting.

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

10 years ago2014-02-19 Ed Schonberg <schonberg@adacore.com>
charlet [Wed, 19 Feb 2014 10:30:33 +0000 (10:30 +0000)]
2014-02-19  Ed Schonberg  <schonberg@adacore.com>

* style.adb (Missing_Overriding): Warning does not apply in
language versions prior to Ada 2005.
* snames.ads-tmpl: Add Name_Iterable and Attribute_Iterable.
* sem_attr.adb: Add Attribute_Iterable where needed.
* exp_attr.adb: ditto.
* exp_ch5.adb (Expand_Formal_Container_Loop): New procedure to
handle loops and quantified expressions over types that have an
iterable aspect.  Called from Expand_Iterator_Loop.
* sem_ch5.adb (Analyze_Iterator_Specification): Recognize types
with Iterable aspect.
* sem_ch13.adb (Validate_Iterable_Aspect): Verify that the
subprograms specified in the Iterable aspect have the proper
signature involving container and cursor.
(Check_Aspect_At_Freeze_Point): Analyze value of iterable aspect.
* sem_ch13.ads (Validate_Iterable_Aspect): New subprogram.
* sem_util.ads, sem_util.adb (Get_Iterable_Type_Primitive):
New procedure to retrieve one of the primitives First, Last,
or Has_Element, from the value of the iterable aspect of a
formal container.
(Is_Container_Element): Predicate to recognize expressions
that denote an element of one of the predefined containers,
for possible optimization.  This subprogram is not currently
used, pending ARG discussions on the legality of the proposed
optimization. Worth preserving for eventual use.
(Is_Iterator): Recognize formal container types.
* aspects.ads, aspects.adb: Add Aspect_Iterable where needed.

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