platform/upstream/gcc.git
10 years agoavx512er-vexp2ps-2.c: Decrease exponent argument to avoid inf values.
Kirill Yukhin [Mon, 3 Mar 2014 12:45:59 +0000 (12:45 +0000)]
avx512er-vexp2ps-2.c: Decrease exponent argument to avoid inf values.

gcc/testsuite/
* gcc.target/i386/avx512er-vexp2ps-2.c: Decrease exponent
argument to avoid inf values.
* gcc.target/i386/avx512f-vdivps-2.c: Compare results with
UNION_FP_CHECK machinery.

From-SVN: r208276

10 years agovalidate_memory.h: Move f32in64 and i32in128 cases outside special big-endian process...
Renlin Li [Mon, 3 Mar 2014 12:06:56 +0000 (12:06 +0000)]
validate_memory.h: Move f32in64 and i32in128 cases outside special big-endian processing block.

2014-03-03  Renlin Li  <Renlin.Li@arm.com>

* gcc.target/aarch64/aapcs64/validate_memory.h: Move f32in64 and
i32in128 cases outside special big-endian processing block.

From-SVN: r208275

10 years agore PR tree-optimization/58028 (Several failures in libgomp.graphite after revision...
Tobias Grosser [Mon, 3 Mar 2014 11:39:22 +0000 (11:39 +0000)]
re PR tree-optimization/58028 (Several failures in libgomp.graphite after revision 200946)

2014-03-03  Tobias Grosser  <tobias@grosser.es>
Mircea Namolaru  <mircea.namolaru@inria.fr>

PR tree-optimization/58028
* graphite-clast-to-gimple.c (set_cloog_options): Don't remove
scalar dimensions.

Co-Authored-By: Mircea Namolaru <mircea.namolaru@inria.fr>
From-SVN: r208273

10 years agore PR preprocessor/60400 (ICE with trigraphs)
Jakub Jelinek [Mon, 3 Mar 2014 11:12:22 +0000 (12:12 +0100)]
re PR preprocessor/60400 (ICE with trigraphs)

PR preprocessor/60400
* c-c++-common/cpp/pr60400.c: New test.
* c-c++-common/cpp/pr60400-1.h: New file.
* c-c++-common/cpp/pr60400-2.h: New file.

From-SVN: r208272

10 years agore PR objc++/60398 (FAIL: obj-c++.dg/invalid-method-2.mm -fgnu-runtime (test for...
Jakub Jelinek [Mon, 3 Mar 2014 09:36:44 +0000 (10:36 +0100)]
re PR objc++/60398 (FAIL: obj-c++.dg/invalid-method-2.mm -fgnu-runtime  (test for errors, line 10))

PR objc++/60398
* obj-c++.dg/invalid-method-2.mm: Adjust dg-error regexps.

From-SVN: r208270

10 years ago[ARM] Legitimize addresses for movmisalign<mode> for Neon.
Ramana Radhakrishnan [Mon, 3 Mar 2014 08:09:14 +0000 (08:09 +0000)]
[ARM] Legitimize addresses for movmisalign<mode> for Neon.

2014-03-03  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>

* config/arm/neon.md (*movmisalign<mode>): Legitimize addresses
not handled by recognizers.

From-SVN: r208269

10 years agoc-pragma.c (c_pp_lookup_pragma): Handle PRAGMA_CILK_SIMD.
Jakub Jelinek [Mon, 3 Mar 2014 07:27:46 +0000 (08:27 +0100)]
c-pragma.c (c_pp_lookup_pragma): Handle PRAGMA_CILK_SIMD.

* c-pragma.c (c_pp_lookup_pragma): Handle PRAGMA_CILK_SIMD.
(init_pragma): Call cpp_register_deferred_pragma for PRAGMA_CILK_SIMD
even when flag_preprocess_only.

* c-c++-common/cilk-plus/PS/vectorlength-2.c: New test.
* c-c++-common/cilk-plus/PS/vectorlength-3.c: New test.

From-SVN: r208268

10 years agore PR middle-end/60175 (ICE on gcc.dg/asan/nosanitize-and-inline.c)
Jakub Jelinek [Mon, 3 Mar 2014 07:25:50 +0000 (08:25 +0100)]
re PR middle-end/60175 (ICE on gcc.dg/asan/nosanitize-and-inline.c)

PR middle-end/60175
* function.c (expand_function_end): Don't emit
clobber_return_register sequence if clobber_after is a BARRIER.
* cfgexpand.c (construct_exit_block): Append instructions before
return_label to prev_bb.

From-SVN: r208267

10 years agoconstraints.md: Document reserved use of "wc".
Bill Schmidt [Mon, 3 Mar 2014 01:33:24 +0000 (01:33 +0000)]
constraints.md: Document reserved use of "wc".

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

* config/rs6000/constraints.md: Document reserved use of "wc".

From-SVN: r208266

10 years agoDaily bump.
GCC Administrator [Mon, 3 Mar 2014 00:16:41 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r208265

10 years agore PR lto/60150 (ICE in function_and_variable_visibility, at ipa.c:1000)
Jan Hubicka [Sun, 2 Mar 2014 22:19:37 +0000 (23:19 +0100)]
re PR lto/60150 (ICE in function_and_variable_visibility, at ipa.c:1000)

PR ipa/60150
* ipa.c (function_and_variable_visibility): When dissolving comdat
group, also set all symbols to local.
* g++.dg/lto/pr60150.H: New testcase.
* g++.dg/lto/pr60150_0.C: New testcase.
* g++.dg/lto/pr60150_1.C: New testcase.

From-SVN: r208262

10 years agore PR ipa/60306 (Incorrect devirtualization "pure virtual method called")
Jan Hubicka [Sun, 2 Mar 2014 20:51:48 +0000 (21:51 +0100)]
re PR ipa/60306 (Incorrect devirtualization "pure virtual method called")

PR ipa/60306

Revert:
2013-12-14   Jan Hubicka  <jh@suse.cz>
        PR middle-end/58477
        * ipa-prop.c (stmt_may_be_vtbl_ptr_store): Skip clobbers.

* testsuite/g++.dg/ipa/devirt-29.C: New testcase

From-SVN: r208261

10 years agore PR bootstrap/48230 (bootstrapping gcc-4.6.0-RC-20110321 fails for lm32-rtems*)
Jon Beniston [Sun, 2 Mar 2014 19:58:24 +0000 (19:58 +0000)]
re PR bootstrap/48230 (bootstrapping gcc-4.6.0-RC-20110321 fails for lm32-rtems*)

PR bootstrap/48230
PR bootstrap/50927
PR bootstrap/52466
PR target/46898
* config/lm32/lm32.c (lm32_legitimate_constant_p): Remove, as incorrect.
  (TARGET_LEGITIMATE_CONSTANT_P): Undefine, as not needed.
* config/lm32/lm32.md (movsi_insn): Add 32-bit immediate support.
(simple_return, *simple_return): New patterns
* config/lm32/predicates.md (movsi_rhs_operand): Remove as obsolete.
* configure.ac (force_sjlj_exceptions): Force sjlj exceptions for lm32.

From-SVN: r208260

10 years agore PR fortran/60236 (gfortran.dg/vect/pr32380.f fails on ARM)
Bernd Edlinger [Sun, 2 Mar 2014 18:06:49 +0000 (18:06 +0000)]
re PR fortran/60236 (gfortran.dg/vect/pr32380.f fails on ARM)

2014-03-02  Bernd Edlinger  <bernd.edlinger@hotmail.de>

        PR fortran/60236
        * gfortran.dg/vect/pr32380.f: Fix expected test results.

From-SVN: r208257

10 years agoDaily bump.
GCC Administrator [Sun, 2 Mar 2014 00:16:53 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r208254

10 years agore PR c++/50025 ([DR 1288] C++0x initialization syntax doesn't work for class members...
Edward Smith-Rowland [Sat, 1 Mar 2014 22:51:25 +0000 (22:51 +0000)]
re PR c++/50025 ([DR 1288] C++0x initialization syntax doesn't work for class members of reference type)

2014-03-01  Edward Smith-Rowland  <3dw4rd@verizon.net>

PR c++/50025
* g++.dg/cpp0x/pr50025.C: New.

From-SVN: r208251

10 years agore PR c++/60377 ([c++1y] ICE with invalid function parameter in conjunction with...
Adam Butcher [Sat, 1 Mar 2014 21:28:18 +0000 (21:28 +0000)]
re PR c++/60377 ([c++1y] ICE with invalid function parameter in conjunction with auto parameter)

Fix PR c++/60377.

PR c++/60377
* parser.c (cp_parser_parameter_declaration_clause): Unwind generic
function scope on parse error in function parameter list.

PR c++/60377
* g++.dg/cpp1y/pr60377.C: New testcase.

From-SVN: r208250

10 years agore PR fortran/60341 (ICE compiling Nonmem 6.2.0)
Mikael Morin [Sat, 1 Mar 2014 21:14:54 +0000 (21:14 +0000)]
re PR fortran/60341 (ICE compiling Nonmem 6.2.0)

fortran/
        PR fortran/60341
        * frontend-passes.c (optimize_comparison): Guard two union
        accesses with the corresponding tag checks.

testsuite/
        PR fortran/60341
        * gfortran.dg/str_comp_optimize_1.f90: New test.

From-SVN: r208249

10 years agomethod.c (implicitly_declare_fn): Remove redundant DECL_TEMPLATE_RESULT and STRIP_TEM...
Paolo Carlini [Sat, 1 Mar 2014 21:14:00 +0000 (21:14 +0000)]
method.c (implicitly_declare_fn): Remove redundant DECL_TEMPLATE_RESULT and STRIP_TEMPLATE uses.

/cp
2014-03-01  Paolo Carlini  <paolo.carlini@oracle.com>

* method.c (implicitly_declare_fn): Remove redundant
DECL_TEMPLATE_RESULT and STRIP_TEMPLATE uses.
* semantics.c (is_instantiation_of_constexpr): Likewise.
* error.c (dump_function_decl): Likewise.

2014-03-01  Paolo Carlini  <paolo.carlini@oracle.com>

* dwarf2out.c (gen_subprogram_die): Tidy.

From-SVN: r208248

10 years agore PR c++/60379 (pugixml build failure caused by r207001)
Jason Merrill [Sat, 1 Mar 2014 19:40:33 +0000 (14:40 -0500)]
re PR c++/60379 (pugixml build failure caused by r207001)

PR c++/60379
* semantics.c (begin_maybe_infinite_loop): Use
fold_non_dependent_expr_sfinae.

From-SVN: r208247

10 years agore PR c++/58845 (Operator || and && broken for vectors)
Jason Merrill [Sat, 1 Mar 2014 14:14:25 +0000 (09:14 -0500)]
re PR c++/58845 (Operator || and && broken for vectors)

PR c++/58845
* typeck.c (cp_build_binary_op): Sorry on vector&&vector.

From-SVN: r208243

10 years agore PR target/60071 ([SH] internal compiler error: in final_scan_insn, at final.c...
Oleg Endo [Sat, 1 Mar 2014 13:16:37 +0000 (13:16 +0000)]
re PR target/60071 ([SH] internal compiler error: in final_scan_insn, at final.c:2963)

PR target/60071
* config/sh/sh.md (*mov_t_msb_neg): Split into ...
(*mov_t_msb_neg_negc): ... this new insn.

PR target/60071
* gcc.c-torture/compile/pr60071.c: New.

From-SVN: r208242

10 years agore PR c++/58678 (pykde4-4.11.2 link error (devirtualization too trigger happy))
Jason Merrill [Sat, 1 Mar 2014 00:17:09 +0000 (19:17 -0500)]
re PR c++/58678 (pykde4-4.11.2 link error (devirtualization too trigger happy))

PR c++/58678
* ipa-devirt.c (ipa_devirt): Don't choose an implicitly-declared
function.

From-SVN: r208241

10 years agoDaily bump.
GCC Administrator [Sat, 1 Mar 2014 00:17:05 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r208240

10 years agore PR libgcc/60166 (ARM default NAN encoding violates EABI)
Joey Ye [Fri, 28 Feb 2014 21:53:40 +0000 (21:53 +0000)]
re PR libgcc/60166 (ARM default NAN encoding violates EABI)

2014-02-28  Joey Ye  <joey.ye@arm.com>

        PR libgcc/60166
        * config/arm/sfp-machine.h (_FP_NANFRAC_H,
        _FP_NANFRAC_S, _FP_NANFRAC_D, _FP_NANFRAC_Q):
        Set to zero.

From-SVN: r208229

10 years agore PR fortran/60359 ([OOP] symbol `__io_MOD___copy_character_1' is already defined)
Janus Weil [Fri, 28 Feb 2014 21:30:04 +0000 (22:30 +0100)]
re PR fortran/60359 ([OOP] symbol `__io_MOD___copy_character_1' is already defined)

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

PR fortran/60359
* class.c (find_intrinsic_vtab): Prevent duplicate creation of copy
procedure for characters.

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

PR fortran/60359
* gfortran.dg/unlimited_polymorphic_16.f90: New.

From-SVN: r208227

10 years agore PR c++/58610 ([c++11] ICE with constexpr of class with template constructor)
Paolo Carlini [Fri, 28 Feb 2014 20:20:21 +0000 (20:20 +0000)]
re PR c++/58610 ([c++11] ICE with constexpr of class with template constructor)

/cp
2014-02-28  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/58610
* cp-tree.h (DECL_DELETED_FN): Use LANG_DECL_FN_CHECK.
* call.c (print_z_candidate): Remove STRIP_TEMPLATE use.
* lambda.c (maybe_add_lambda_conv_op): Likewise.

/testsuite
2014-02-28  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/58610
* g++.dg/cpp0x/constexpr-ice11.C: New.

From-SVN: r208226

10 years agore PR c++/60314 ([C++1y] ICE with decltype(auto) when generating debug information)
Paolo Carlini [Fri, 28 Feb 2014 16:51:21 +0000 (16:51 +0000)]
re PR c++/60314 ([C++1y] ICE with decltype(auto) when generating debug information)

2014-02-25  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/60314
* dwarf2out.c (is_cxx_auto): Handle decltype(auto).

/testsuite
2014-02-25  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/60314
* g++.dg/cpp1y/auto-fn24.C: New.

From-SVN: r208225

10 years agoDefine __ARM_NEON for aarch64 by default unless general_regs_only
Ian Bolton [Fri, 28 Feb 2014 14:27:08 +0000 (14:27 +0000)]
Define __ARM_NEON for aarch64 by default unless general_regs_only

From-SVN: r208224

10 years ago* ChangeLog: Fix whitespace.
Uros Bizjak [Fri, 28 Feb 2014 13:55:32 +0000 (14:55 +0100)]
* ChangeLog: Fix whitespace.

From-SVN: r208223

10 years agore PR tree-optimization/60280 (gcc.target/arm/ivopts.c and gcc.target/arm/ivopts...
Richard Biener [Fri, 28 Feb 2014 13:14:23 +0000 (13:14 +0000)]
re PR tree-optimization/60280 (gcc.target/arm/ivopts.c and gcc.target/arm/ivopts-2.c failed caused by preserving loop structure.)

2014-02-28  Richard Biener  <rguenther@suse.de>

PR target/60280
* tree-cfgcleanup.c (tree_forwarder_block_p): Restrict
previous fix and only allow to remove trivial pre-headers
and latches.  Also honor LOOPS_MAY_HAVE_MULTIPLE_LATCHES.
(remove_forwarder_block): Properly update the latch of
a loop.

From-SVN: r208222

10 years agore PR debug/59992 (Compilation of insn-recog.c too slow due to var-tracking)
Alexandre Oliva [Fri, 28 Feb 2014 12:57:40 +0000 (12:57 +0000)]
re PR debug/59992 (Compilation of insn-recog.c too slow due to var-tracking)

PR debug/59992
* cselib.c (cselib_hasher::equal): Special-case VALUE lookup.
(cselib_preserved_hash_table): New.
(preserve_constants_and_equivs): Move preserved vals to it.
(cselib_find_slot): Look it up first.
(cselib_init): Initialize it.
(cselib_finish): Release it.
(dump_cselib_table): Dump it.

From-SVN: r208221

10 years agore PR debug/59992 (Compilation of insn-recog.c too slow due to var-tracking)
Alexandre Oliva [Fri, 28 Feb 2014 12:57:06 +0000 (12:57 +0000)]
re PR debug/59992 (Compilation of insn-recog.c too slow due to var-tracking)

PR debug/59992
* cselib.c (remove_useless_values): Skip to avoid quadratic
behavior if the condition moved from...
(cselib_process_insn): ... here holds.

From-SVN: r208220

10 years agore PR debug/57232 (wcstol.c:213:1: internal compiler error)
Alexandre Oliva [Fri, 28 Feb 2014 12:45:36 +0000 (12:45 +0000)]
re PR debug/57232 (wcstol.c:213:1: internal compiler error)

PR debug/57232
* var-tracking.c (vt_initialize): Apply the same condition to
preserve the CFA base value.

From-SVN: r208219

10 years agoPR target/PR60169
Joey Ye [Fri, 28 Feb 2014 12:02:13 +0000 (12:02 +0000)]
PR target/PR60169

2014-02-28  Joey Ye  <joey.ye@arm.com>

        PR target/PR60169
* config/arm/arm.c (thumb_far_jump_used_p): Don't change
if reload in progress or completed.

testsuite:
* gcc.target/arm/thumb1-far-jump-3.c: New case.

From-SVN: r208217

10 years agoDaily bump.
GCC Administrator [Fri, 28 Feb 2014 00:16:34 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r208212

10 years agore PR middle-end/60147 (ICE with -fdump-tree-original and NAMELIST)
Tobias Burnus [Thu, 27 Feb 2014 23:24:20 +0000 (00:24 +0100)]
re PR middle-end/60147 (ICE with -fdump-tree-original and NAMELIST)

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

        PR middle-end/60147
        * tree-pretty-print.c (dump_generic_node, print_declaration):
        Handle NAMELIST_DECL.

From-SVN: r208209

10 years agore PR c++/60253 (ICE passing class object through ellipsis (...))
Paolo Carlini [Thu, 27 Feb 2014 23:15:20 +0000 (23:15 +0000)]
re PR c++/60253 (ICE passing class object through ellipsis (...))

/cp
2014-02-27  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/60253
* call.c (convert_arg_to_ellipsis): Return error_mark_node after
error_at.

/testsuite
2014-02-27  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/60253
* g++.dg/overload/ellipsis2.C: New.

From-SVN: r208208

10 years agoCopy changes from doc/tm.texi to doc/tm.texi.in
H.J. Lu [Thu, 27 Feb 2014 19:54:56 +0000 (19:54 +0000)]
Copy changes from doc/tm.texi to doc/tm.texi.in

* doc/tm.texi.in (Condition Code Status): Update documention for
relative locations of cc0-setter and cc0-user.

From-SVN: r208205

10 years agore PR rtl-optimization/52714 (ICE in fixup_reorder_chain, at cfglayout.c:880)
Jeff Law [Thu, 27 Feb 2014 19:28:40 +0000 (12:28 -0700)]
re PR rtl-optimization/52714 (ICE in fixup_reorder_chain, at cfglayout.c:880)

PR rtl-optimization/52714
* combine.c (try_combine): When splitting an unrecognized PARALLEL
into two independent simple sets, if I3 is a jump, ensure the
pattern we place into I3 is a (set (pc) ...)

PR rtl-optimization/52714
* gcc.c-torture/compile/pr52714.c: New test.

From-SVN: r208204

10 years agore PR rtl-optimization/49847 (NULL deref in fold_rtx (prev_insn_cc0 == NULL))
Mikael Pettersson [Thu, 27 Feb 2014 19:02:18 +0000 (20:02 +0100)]
re PR rtl-optimization/49847 (NULL deref in fold_rtx (prev_insn_cc0 == NULL))

PR rtl-optimization/49847
* cse.c (fold_rtx) Handle case where cc0 setter and cc0 user
are in different blocks.
* doc/tm.texi (Condition Code Status): Update documention for
relative locations of cc0-setter and cc0-user.

 PR rtl-optimization/49847
 * g++.dg/pr49847.C: New test.

Co-Authored-By: Jeff Law <law@redhat.com>
From-SVN: r208203

10 years agore PR c++/58648 ([c++11] ICE with variadic template)
Jason Merrill [Thu, 27 Feb 2014 17:06:35 +0000 (12:06 -0500)]
re PR c++/58648 ([c++11] ICE with variadic template)

PR c++/58648
* g++.dg/cpp0x/variadic153.C: New.

From-SVN: r208202

10 years agore PR target/59222 (gcc.c-torture/compile/20050622-1.c ICEs at -O1 and above for...
Vladimir Makarov [Thu, 27 Feb 2014 17:06:02 +0000 (17:06 +0000)]
re PR target/59222 (gcc.c-torture/compile/20050622-1.c ICEs at -O1 and above for aarch64-elf ILP32)

2014-02-27  Vladimir Makarov  <vmakarov@redhat.com>

PR target/59222
* lra.c (lra_emit_add): Check SUBREG too.

From-SVN: r208201

10 years agore PR c++/60353 (Firefox build failure #3 caused by r208157)
Jason Merrill [Thu, 27 Feb 2014 16:20:59 +0000 (11:20 -0500)]
re PR c++/60353 (Firefox build failure #3 caused by r208157)

PR c++/60353
PR c++/55877
* decl2.c (tentative_decl_linkage): Don't mess with functions that
are not yet defined.

From-SVN: r208200

10 years agom68k.c (m68k_option_override): Disable -flive-range-shrinkage for classic m68k.
Andreas Schwab [Thu, 27 Feb 2014 11:10:55 +0000 (11:10 +0000)]
m68k.c (m68k_option_override): Disable -flive-range-shrinkage for classic m68k.

* config/m68k/m68k.c (m68k_option_override): Disable
-flive-range-shrinkage for classic m68k.
(m68k_override_options_after_change): Likewise.

From-SVN: r208198

10 years agore PR middle-end/59223 (-Wmaybe-uninitialized and -Wuninitialized relationships)
Marek Polacek [Thu, 27 Feb 2014 08:05:21 +0000 (08:05 +0000)]
re PR middle-end/59223 (-Wmaybe-uninitialized and -Wuninitialized relationships)

PR middle-end/59223
* tree-ssa-uninit.c (gate_warn_uninitialized): Run the pass even for
-Wmaybe-uninitialized.
testsuite/
* c-c++-common/pr59223.c: New test.

From-SVN: r208196

10 years agoDaily bump.
GCC Administrator [Thu, 27 Feb 2014 00:17:10 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r208191

10 years agocorrect bug number
Alan Modra [Wed, 26 Feb 2014 22:17:39 +0000 (08:47 +1030)]
correct bug number

From-SVN: r208187

10 years agore PR target/57935 (ICE in rs6000_secondary_reload_inner:15181, type = load)
Alan Modra [Wed, 26 Feb 2014 21:57:40 +0000 (08:27 +1030)]
re PR target/57935 (ICE in rs6000_secondary_reload_inner:15181, type = load)

PR target/57935
* reload1.c (emit_input_reload_insns): When reload_override_in,
set old to rl->in_reg when rl->in_reg is a subreg.

From-SVN: r208186

10 years agore PR c++/30301 (Invalid static member of anonymous class or union diagnosed too...
Jason Merrill [Wed, 26 Feb 2014 21:44:48 +0000 (16:44 -0500)]
re PR c++/30301 (Invalid static member of anonymous class or union diagnosed too late)

PR c++/30301
* g++.dg/parse/unnamed2.C: New.

From-SVN: r208185

10 years agore PR c++/60347 (r208153 breaks Firefox build)
Jason Merrill [Wed, 26 Feb 2014 21:32:41 +0000 (16:32 -0500)]
re PR c++/60347 (r208153 breaks Firefox build)

PR c++/60347
PR lto/53808
* class.c (clone_function_decl): Don't note_vague_linkage_fn.
* init.c (build_vtbl_address): Do it here.

From-SVN: r208184

10 years agore PR c++/59231 (gcc misses [-Werror=sign-compare] when inside a template)
Jason Merrill [Wed, 26 Feb 2014 21:28:08 +0000 (16:28 -0500)]
re PR c++/59231 (gcc misses [-Werror=sign-compare] when inside a template)

PR c++/59231
PR c++/11586
PR c++/14710
PR c++/57132
gcc/
* c-common.c (shorten_compare): Don't check
c_inhibit_evaluation_warnings.
gcc/cp/
* pt.c (struct warning_sentinel): New.
(tsubst_copy_and_build): Use it instead of
c_inhibit_evaluation_warnings.

From-SVN: r208183

10 years agoregex.tcc (match_results<>::format, [...]): Update __out after calling std::copy.
Tim Shen [Wed, 26 Feb 2014 19:45:15 +0000 (19:45 +0000)]
regex.tcc (match_results<>::format, [...]): Update __out after calling std::copy.

2014-02-26  Tim Shen  <timshen91@gmail.com>

* include/bits/regex.tcc (match_results<>::format,
regex_replace<>): Update __out after calling std::copy.
* testsuite/28_regex/algorithms/regex_replace/char/dr2213.cc:
Add testcase.
* testsuite/28_regex/match_results/format.cc: Likewise.

From-SVN: r208179

10 years agore PR c++/54440 ([c++11] g++ prematurely applying rule that a template parameter...
Jason Merrill [Wed, 26 Feb 2014 17:08:20 +0000 (12:08 -0500)]
re PR c++/54440 ([c++11] g++ prematurely applying rule that a template parameter pack cannot be followed by a template parameter)

PR c++/54440
* pt.c (get_template_parm_index): New.
(fixed_parameter_pack_p_1, fixed_parameter_pack_p): New.
(process_template_parm): Allow bare packs in template template
parm template parms.
(coerce_template_parameter_pack): Handle fixed template template
parm packs and fixed packs not at the end of the parm list.
(coerce_template_parms): Handle template parm packs not at the end
of the parm list.
(gen_elem_of_pack_expansion_instantiation): Handle a decl expansion.

From-SVN: r208178

10 years agore PR c++/60182 (g++ segfault within template expansion using "using" aliasing)
Jason Merrill [Wed, 26 Feb 2014 17:01:12 +0000 (12:01 -0500)]
re PR c++/60182 (g++ segfault within template expansion using "using" aliasing)

PR c++/60182
* pt.c (unify): Ignore alias templates when deducing a template
template parameter.

From-SVN: r208177

10 years agore PR c++/60345 (r208159 causes Firefox build error)
Jason Merrill [Wed, 26 Feb 2014 16:51:14 +0000 (11:51 -0500)]
re PR c++/60345 (r208159 causes Firefox build error)

PR c++/60345
* g++.dg/conversion/ref1.C: New.

From-SVN: r208176

10 years agore PR c++/60345 (r208159 causes Firefox build error)
Jason Merrill [Wed, 26 Feb 2014 16:48:22 +0000 (11:48 -0500)]
re PR c++/60345 (r208159 causes Firefox build error)

PR c++/60345
Revert:
DR 1571
* call.c (reference_binding): Recurse on user-defined conversion.
(convert_like_real) [ck_ref_bind]: Explain cv-qual mismatch.

From-SVN: r208175

10 years agore PR bootstrap/60343 (r208155 breaks bootstrap)
Richard Biener [Wed, 26 Feb 2014 10:29:04 +0000 (10:29 +0000)]
re PR bootstrap/60343 (r208155 breaks bootstrap)

2014-02-26  Richard Biener  <rguenther@suse.de>

PR bootstrap/60343
* lra-assigns.c (spill_for): Avoid mixed-sign comparison.

From-SVN: r208170

10 years agopredicates.md (const1256_operand): Remove.
Ilya Tocar [Wed, 26 Feb 2014 09:31:15 +0000 (09:31 +0000)]
predicates.md (const1256_operand): Remove.

gcc/
* common/config/i386/predicates.md (const1256_operand): Remove.
(const2356_operand): New.
(const_1_to_2_operand): Remove.
* config/i386/sse.md (avx512pf_gatherpf<mode>sf): Change hint value.
(*avx512pf_gatherpf<mode>sf_mask): Ditto.
(*avx512pf_gatherpf<mode>sf): Ditto.
(avx512pf_gatherpf<mode>df): Ditto.
(*avx512pf_gatherpf<mode>df_mask): Ditto.
(*avx512pf_gatherpf<mode>df): Ditto.
(avx512pf_scatterpf<mode>sf): Ditto.
(*avx512pf_scatterpf<mode>sf_mask): Ditto.
(*avx512pf_scatterpf<mode>sf): Ditto.
(avx512pf_scatterpf<mode>df): Ditto.
(*avx512pf_scatterpf<mode>df_mask): Ditto.
(*avx512pf_scatterpf<mode>df): Ditto.
* common/config/i386/xmmintrin.h (_mm_hint): Add _MM_HINT_ET0.

gcc/testsuite/
* common/config/i386/predicates.md (const1256_operand): Remove.
(const2356_operand): New.
(const_1_to_2_operand): Remove.
* config/i386/sse.md (avx512pf_gatherpf<mode>sf): Change hint value.
(*avx512pf_gatherpf<mode>sf_mask): Ditto.
(*avx512pf_gatherpf<mode>sf): Ditto.
(avx512pf_gatherpf<mode>df): Ditto.
(*avx512pf_gatherpf<mode>df_mask): Ditto.
(*avx512pf_gatherpf<mode>df): Ditto.
(avx512pf_scatterpf<mode>sf): Ditto.
(*avx512pf_scatterpf<mode>sf_mask): Ditto.
(*avx512pf_scatterpf<mode>sf): Ditto.
(avx512pf_scatterpf<mode>df): Ditto.
(*avx512pf_scatterpf<mode>df_mask): Ditto.
(*avx512pf_scatterpf<mode>df): Ditto.
* common/config/i386/xmmintrin.h (_mm_hint): Add _MM_HINT_ET0.

From-SVN: r208169

10 years agogcc/
Ilya Tocar [Wed, 26 Feb 2014 09:08:45 +0000 (09:08 +0000)]
gcc/
* config/i386/avx512fintrin.h (_mm512_testn_epi32_mask),
(_mm512_mask_testn_epi32_mask), (_mm512_testn_epi64_mask),
(_mm512_mask_testn_epi64_mask): Move to ...
* config/i386/avx512cdintrin.h: Here.
* config/i386/i386.c (bdesc_args): Change MASK_ISA for testnm.
* config/i386/sse.md (avx512f_vmscalef<mode><round_name>): Remove %.
(avx512f_scalef<mode><mask_name><round_name>): Ditto.
(avx512f_testnm<mode>3<mask_scalar_merge_name>): Change conditon to
TARGET_AVX512F from TARGET_AVX512CD.

gcc/testsuite/
* gcc.target/i386/avx512cd-vptestnmd-1.c: Change into ...
* gcc.target/i386/avx512f-vptestnmd-1.c: This.
* gcc.target/i386/avx512cd-vptestnmq-1.c: Change into ...
* gcc.target/i386/avx512f-vptestnmq-1.c: This.
* gcc.target/i386/avx512cd-vptestnmd-2.c: Change into ...
* gcc.target/i386/avx512f-vptestnmd-2.c: This.
* gcc.target/i386/avx512cd-vptestnmq-2.c: Change into ...
* gcc.target/i386/avx512f-vptestnmq-2.c: This.

From-SVN: r208168

10 years agore PR ipa/60327 (xalanbmk and dealII ICE in ipa-inline-analysis.c:3555)
Richard Biener [Wed, 26 Feb 2014 08:39:48 +0000 (08:39 +0000)]
re PR ipa/60327 (xalanbmk and dealII ICE in ipa-inline-analysis.c:3555)

2014-02-26  Richard Biener  <rguenther@suse.de>

PR ipa/60327
* ipa.c (walk_polymorphic_call_targets): Properly guard
call to inline_update_overall_summary.

From-SVN: r208167

10 years agore PR tree-optimization/60280 (gcc.target/arm/ivopts.c and gcc.target/arm/ivopts...
Bin Cheng [Wed, 26 Feb 2014 01:49:35 +0000 (01:49 +0000)]
re PR tree-optimization/60280 (gcc.target/arm/ivopts.c and gcc.target/arm/ivopts-2.c failed caused by preserving loop structure.)

PR target/60280
* tree-cfgcleanup.c (tree_forwarder_block_p): Protect loop
preheaders and latches only if requested.  Fix latch if it
is removed.
* tree-ssa-dom.c (tree_ssa_dominator_optimize): Set
LOOPS_HAVE_PREHEADERS.

PR target/60280
* gnat.dg/renaming5.adb: Change to two expected gotos.
* gcc.dg/tree-ssa/pr21559.c: Change back to three expected
jump threads.
* gcc.dg/tree-prof/update-loopch.c: Check two "Invalid sum"
messages for removed basic block.
* gcc.dg/tree-ssa/ivopt_1.c: Fix unreliable scanning string.
* gcc.dg/tree-ssa/ivopt_2.c: Ditto.
* gcc.dg/tree-ssa/ivopt_3.c: Ditto.
* gcc.dg/tree-ssa/ivopt_4.c: Ditto.

From-SVN: r208165

10 years agobuiltins.c (expand_builtin_thread_pointer): Create a new target when the target is...
Andrew Pinski [Wed, 26 Feb 2014 00:51:56 +0000 (00:51 +0000)]
builtins.c (expand_builtin_thread_pointer): Create a new target when the target is NULL.

2014-02-25  Andrew Pinski  <apinski@cavium.com>

* builtins.c (expand_builtin_thread_pointer): Create a new target
when the target is NULL.

From-SVN: r208163

10 years agoDaily bump.
GCC Administrator [Wed, 26 Feb 2014 00:16:30 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r208162

10 years agoDR 1571
Jason Merrill [Tue, 25 Feb 2014 21:27:51 +0000 (16:27 -0500)]
DR 1571

DR 1571
* call.c (reference_binding): Recurse on user-defined conversion.
(convert_like_real) [ck_ref_bind]: Explain cv-qual mismatch.

From-SVN: r208159

10 years agocall.c (print_conversion_rejection): Handle n_arg of -2.
Jason Merrill [Tue, 25 Feb 2014 21:27:44 +0000 (16:27 -0500)]
call.c (print_conversion_rejection): Handle n_arg of -2.

* call.c (print_conversion_rejection): Handle n_arg of -2.
(build_user_type_conversion_1): Pass it.

From-SVN: r208158

10 years agore PR c++/55877 (Anon visibility issues)
Jason Merrill [Tue, 25 Feb 2014 21:19:06 +0000 (16:19 -0500)]
re PR c++/55877 (Anon visibility issues)

PR c++/55877
* decl2.c (no_linkage_error): Handle C++98 semantics.
(reset_type_linkage): Move from decl.c.
(reset_type_linkage_1, reset_type_linkage_2, bt_reset_linkage_1)
(bt_reset_linkage_2, reset_decl_linkage): New.
(tentative_decl_linkage): Factor out of expand_or_defer_fn_1.
(cp_write_global_declarations): Move condition into no_linkage_error.
* decl.c (grokfndecl, grokvardecl): Use no_linkage_error.
* semantics.c (expand_or_defer_fn_1): Factor out
tentative_decl_linkage.
* cp-tree.h: Adjust.

From-SVN: r208157

10 years agodecl2.c (finish_static_data_member_decl): Diagnose static data member in unnamed...
Jason Merrill [Tue, 25 Feb 2014 21:18:19 +0000 (16:18 -0500)]
decl2.c (finish_static_data_member_decl): Diagnose static data member in unnamed class.

* decl2.c (finish_static_data_member_decl): Diagnose static data
member in unnamed class.

From-SVN: r208156

10 years agore PR rtl-optimization/60317 (find_hard_regno_for compile time hog in libvpx)
Vladimir Makarov [Tue, 25 Feb 2014 20:34:44 +0000 (20:34 +0000)]
re PR rtl-optimization/60317 (find_hard_regno_for compile time hog in libvpx)

2014-02-25  Vladimir Makarov  <vmakarov@redhat.com>

PR rtl-optimization/60317
* params.def (PARAM_LRA_MAX_CONSIDERED_RELOAD_PSEUDOS): New.
* params.h (LRA_MAX_CONSIDERED_RELOAD_PSEUDOS): New.
* lra-assigns.c: Include params.h.
(spill_for): Use LRA_MAX_CONSIDERED_RELOAD_PSEUDOS as guard for
other reload pseudos considerations.

From-SVN: r208155

10 years agore PR lto/53808 (Undefined symbol when building a library with lto)
Jason Merrill [Tue, 25 Feb 2014 18:54:48 +0000 (13:54 -0500)]
re PR lto/53808 (Undefined symbol when building a library with lto)

PR lto/53808
* class.c (clone_function_decl): Call note_vague_linkage_fn for
defaulted virtual dtor.

From-SVN: r208153

10 years agoDR 1286 PR c++/60328
Jason Merrill [Tue, 25 Feb 2014 18:53:45 +0000 (13:53 -0500)]
DR 1286 PR c++/60328

DR 1286
PR c++/60328
* pt.c (get_underlying_template): Fix equivalence calculation.

From-SVN: r208152

10 years ago2014-02-25 Doug Rupp <rupp@adacore.com>
Doug Rupp [Tue, 25 Feb 2014 16:16:27 +0000 (16:16 +0000)]
2014-02-25  Doug Rupp  <rupp@adacore.com>

* gcc-interface/Makefile.in (arm-linux):
(EH_MECHANISM): Use ARM unwinder (-arm)
(LIBGNAT_TARGET_PAIRS: Override defaults with a-exexpr-gcc.adb and
s-excmac-arm.ads.
(EXTRA_LIBGNAT_OBJS): Add raise-gcc.o
(EXTRA_GNATRTL_NONTASKING_OBJS): Add g-cppexc.o s-excmac.o.
(arm-wrs-vxworks): Add EH_MECHANISM=-gcc for kernel mode.
(EXTRA_LIBGNAT_OBJS): Add sigtramp-armvxw.o
Add dependencies for sigtramp-armvxw.o.

From-SVN: r208150

10 years ago* gcc-interface/trans.c (Pragma_to_gnu): Deal with Warning_As_Error.
Eric Botcazou [Tue, 25 Feb 2014 16:14:58 +0000 (16:14 +0000)]
* gcc-interface/trans.c (Pragma_to_gnu): Deal with Warning_As_Error.

From-SVN: r208149

10 years agortsfind.adb (Is_RTE): Protect against entity with no scope field (previously this...
Robert Dewar [Tue, 25 Feb 2014 15:52:52 +0000 (15:52 +0000)]
rtsfind.adb (Is_RTE): Protect against entity with no scope field (previously this call blew up on the...

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

* rtsfind.adb (Is_RTE): Protect against entity with no scope
field (previously this call blew up on the Standard entity).
* sem_attr.adb (Analyze_Attribute, case Access): Remove
test for No_Abort_Statements, this is now handled in
Set_Entity_With_Checks.
* exp_ch6.adb, sem_ch10.adb, sem_ch4.adb, sem_ch8.adb, sem_res.adb:
Change name Set_Entity_With_Style_Check => Set_Entity_With_Checks.
* sem_util.ads, sem_util.adb: Change name Set_Entity_With_Style_Check =>
Set_Entity_With_Checks.
(Set_Entity_With_Checks): Add checks for No_Dynamic_Attachment,
Add checks for No_Abort_Statements.

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

* exp_ch9.adb (Expand_Entry_Barrier): Add comment that call to
Check_Restriction is OK.

From-SVN: r208148

10 years agosem_ch3.adb (Process_Full_View): Better error message when the full view of a private...
Ed Schonberg [Tue, 25 Feb 2014 15:50:32 +0000 (15:50 +0000)]
sem_ch3.adb (Process_Full_View): Better error message when the full view of a private type without...

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

* sem_ch3.adb (Process_Full_View): Better error message when
the full view of  a private type without discriminants is an
unconstrained type.
* sem_ch7.adb (Uninstall_Declarations): Ditto.

From-SVN: r208147

10 years ago[multiple changes]
Arnaud Charlet [Tue, 25 Feb 2014 15:49:45 +0000 (16:49 +0100)]
[multiple changes]

2014-02-25  Eric Botcazou  <ebotcazou@adacore.com>

* sigtramp-armvxw.c: Also restore r0.

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

* errout.adb (Error_Msg_Internal): Warning_Msg_Char set
unconditionally (Set_Msg_Insertion_Warning): Warning_Msg_Char
set unconditionally.
* erroutc.adb (Get_Warning_Tag): Does not give a leading space
any more (Output_Msg_Text): Rewritten with new convention on
output of warnings that are treated as errors.
* erroutc.ads (Error_Msg_Object): Warn_Chr is always set even
if Warn is False.
* gnat_rm.texi: Updates to documentation on pragma
Warning_As_Error.
* warnsw.adb (Set_Dot_Warning_Switch): -gnatw.e should not
set Warning_Doc_Switch.
* lib-writ.ads: Add documentation note on ALI file generation
for C.
* exp_ch6.adb (Expand_Call): Remove check for No_Abort_Statements
(belongs in Sem).
* sem_attr.adb (Resolve_Attribute, case Access):
Abort_Task'Access violates the No_Abort_Statements restriction.
* sem_res.adb (Resolve_Call): Check restriction
No_Abort_Statements for call to Abort_Task or a renaming of it.

From-SVN: r208146

10 years ago[multiple changes]
Arnaud Charlet [Tue, 25 Feb 2014 15:48:05 +0000 (16:48 +0100)]
[multiple changes]

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

* sem_ch3.adb (Array_Type_Declaration): Check for case of using
type name as index.
* lib.ads: Minor reformatting.
* einfo.ads: Minor reformatting.

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

* sem_mech.adb (Set_Mechanisms): For convention Fortran on VMS
use Short_Descriptor(S) as the argument passing mechanism.

2014-02-25  Eric Botcazou  <ebotcazou@adacore.com>

* sigtramp-ppcvxw.c (CFI_COMMON_REGS): Also include r0.

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

* atree.ads (Warnings_Treated_As_Errors): New variable.
* errout.adb (Error_Msg_Internal): Set Warn_Err flag in
error object (Initialize): Initialize Warnings_As_Errors_Count
(Write_Error_Summary): Include count of warnings treated as errors.
* erroutc.adb (Warning_Treated_As_Error): New function.
(Matches): Function moved to outer level of package.
* erroutc.ads (Error_Msg_Object): Add Warn_Err flag.
(Warning_Treated_As_Error): New function.
* gnat_rm.texi: Document pragma Treat_Warning_As_Error.
* opt.adb: Add handling of Warnings_As_Errors_Count[_Config].
* opt.ads (Config_Switches_Type): Add entry for
Warnings_As_Errors_Count.
(Warnings_As_Errors_Count): New variable.
(Warnings_As_Errors): New array.
* par-prag.adb: Add dummy entry for Warning_As_Error.
* sem_prag.adb (Analyze_Pragma): Implement new pragma
Warning_As_Error.
* snames.ads-tmpl: Add entries for Warning_As_Error pragma.

From-SVN: r208145

10 years ago[multiple changes]
Arnaud Charlet [Tue, 25 Feb 2014 15:45:54 +0000 (16:45 +0100)]
[multiple changes]

2014-02-25  Eric Botcazou  <ebotcazou@adacore.com>

* sigtramp.h: Fix minor inaccuracy.

2014-02-25  Ben Brosgol  <brosgol@adacore.com>

* gnat_ugn.texi: Added description of kill command.

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

* gnat_rm.texi (Address_Clauses): Add a section discussing the
problem of address clauses causing unexpected initialization,
including the effect of Initialize_Scalars.

From-SVN: r208144

10 years ago[multiple changes]
Arnaud Charlet [Tue, 25 Feb 2014 15:35:36 +0000 (16:35 +0100)]
[multiple changes]

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

* errout.adb: Various changes for better msgs for anonmous access
subprogram types.
* erroutc.ads, erroutc.adb (Buffer_Ends_With): Version with character
argument.
(Buffer_Remove): Version with character argument.
* sem_attr.adb (Resolve_Attribute, case Access): Better handling
of mismatching conventions for access-to-subprogram case.
* sem_prag.adb (Set_Convention_From_Pragma): Deal with anonymous
access types in record.
* sem_util.ads, sem_util.adb (Set_Convention): Handle anonymous access
types, including in records.

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

* sigtramp-ppcvxw.c, sigtramp.h, sigtramp-armvxw.c: Comment
enhancements and corrections.

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

* gnat_rm.texi: New section "Conventions and Anonymous Access Types"

From-SVN: r208143

10 years ago[multiple changes]
Arnaud Charlet [Tue, 25 Feb 2014 15:30:10 +0000 (16:30 +0100)]
[multiple changes]

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

* gnat_rm.texi: Update "Standard Library Routines" chapter to
include all 2012 packages.
Add section on pragma Reviewable.
* sem_ch5.adb (Diagnose_Non_Variable_Lhs): Avoid wrong msgs if
expander off.
* exp_ch9.ads, exp_dist.adb, exp_dist.ads: Minor reformatting.
* sem_ch6.adb (Assert_False): New function
(Check_Statement_Sequence): Call Assert_False to check for
pragma Assert (False) which is considered OK block of control
for function.
* snames.ads-tmpl (Name_False): New entry.

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

* init.c (VxWorks Section): Enable sigtramp for ARM.
* sigtramp-armvxw.c: New file.

From-SVN: r208142

10 years agognat_rm.texi: First set of documentation additions for predefined RM units.
Robert Dewar [Tue, 25 Feb 2014 15:27:16 +0000 (15:27 +0000)]
gnat_rm.texi: First set of documentation additions for predefined RM units.

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

* gnat_rm.texi: First set of documentation additions for
predefined RM units.
* checks.adb: Minor reformatting.
* sem_elab.adb (Check_Task_Activation): Minor fix to error
message.
* sem_util.adb: Minor reformatting.

From-SVN: r208141

10 years ago[multiple changes]
Arnaud Charlet [Tue, 25 Feb 2014 15:20:43 +0000 (16:20 +0100)]
[multiple changes]

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

* usage.adb (Usage): Add help on -gnateC.
* switch-c.adb (Scan_Front_End_Switches): Add handling of -gnateC.
* opt.ads (Generate_CodePeer_Messages): New flag.
* gnat_ugn.texi: Document new switch -gnateC.

2014-02-25  Ben Brosgol  <brosgol@adacore.com>

* gnat_rm.texi: Corrected minor typos in Implementation Defined
Aspects.
* opt.ads: Minor reformatting.

From-SVN: r208140

10 years agobinde.adb: Change messages to mention -gnatel instead of -gnatwl.
Robert Dewar [Tue, 25 Feb 2014 15:19:43 +0000 (15:19 +0000)]
binde.adb: Change messages to mention -gnatel instead of -gnatwl.

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

* binde.adb: Change messages to mention -gnatel instead of -gnatwl.
* gnat_ugn.texi: Update documentation of -gnatwl Add documentation
of -gnatel/-gnateL.
* opt.ads (Warn_Info_Messages): New flag.
* sem_elab.adb: Use Elab_Warnings, Elab_Info_Messages to control
messages.
* sem_prag.adb: Use Elab_Warnings, Elab_Info_Messages to control
messages.
* switch-m.ad, switch-c.adb: Recognize new -gnatel/EL switches.
* usage.adb: Add documentation of -gnatel/-gnateL Update
documentation of -gnatwl/-gnatwL.
* warnsw.adb: New handling of Elab_Warnings, Elab_Info_Messages
* warnsw.ads (Elab_Info_Messages): New field in Warning_Record

From-SVN: r208139

10 years ago[multiple changes]
Arnaud Charlet [Tue, 25 Feb 2014 15:18:38 +0000 (16:18 +0100)]
[multiple changes]

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

* einfo.ads, einfo.adb (Has_Shift_Operator): New flag.
* gnat_rm.texi: Document pragma Provide_Shift_Operators.
* interfac.ads: Minor code reorganization (add pragma
Compiler_Unit_Warning).
* par-prag.adb: Add dummy entry for Provide_Shift_Operators.
* sem_ch3.adb (Build_Derived_Numeric_Type): Copy
Has_Shift_Operator flag.
* sem_intr.adb (Check_Intrinsic_Subprogram): Make sure
Check_Shift is always called (Check_Shift): Set Has_Shift_Operator.
* sem_prag.adb: Implement pragma Provide_Shift_Operators.
* snames.ads-tmpl: Add entries for pragma Provide_Shift_Operators
Add entry for Name_Amount.
* checks.adb (Selected_Range_Checks): When checking for a null
range, make sure we use the base type, and not the subtype for
deciding a range is null.
* sem_ch5.adb (Analyze_Loop_Parameter_Specification): Check
for suspicious loop bound which is outside the range of the
loop subtype.
* gnat_ugn.texi: Add documentation section "Determining the
Chosen Elaboration Order"
* sem_ch13.adb (UC_Entry): Add field Act_Unit
(Validate_Unchecked_Conversion): Store Act_Unit
(Validate_Unchecked_Conversions): Test Warnings_Off in Act_Unit
* treepr.adb: Minor reformatting.

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

* usage.adb: Minor: fix typo.

From-SVN: r208138

10 years agolib.ads, [...]: Implement pragma Compiler_Unit_Warning...
Arnaud Charlet [Tue, 25 Feb 2014 15:15:44 +0000 (16:15 +0100)]
lib.ads, [...]: Implement pragma Compiler_Unit_Warning...

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

* lib.ads, s-bitops.adb, s-bitops.ads, s-conca5.adb, gnat_rm.texi,
s-conca5.ads, s-conca7.adb, s-conca7.ads, s-crc32.adb, s-crc32.ads,
s-conca9.adb, s-conca9.ads, g-dyntab.adb, s-crtl.ads, g-dyntab.ads,
s-excdeb.adb, s-addope.adb, s-addope.ads, s-carun8.adb, s-carun8.ads,
g-htable.adb, g-htable.ads, g-hesora.adb, g-hesora.ads, s-conca2.adb,
s-conca2.ads, a-comlin.adb, a-chlat1.ads, a-comlin.ads, errout.ads,
a-except.adb, s-conca4.adb, a-except.ads, s-conca4.ads, s-conca6.adb,
s-conca6.ads, g-spchge.adb, g-spchge.ads, g-u3spch.adb, g-u3spch.ads,
a-strhas.ads, restrict.adb, aspects.adb, aspects.ads, s-conca8.adb,
s-conca8.ads, back_end.adb, par-prag.adb, g-byorma.adb, g-byorma.ads,
a-elchha.adb, a-elchha.ads, g-speche.adb, g-speche.ads, s-casuti.adb,
s-assert.adb, s-casuti.ads, s-assert.ads, a-clrefi.adb, a-clrefi.ads,
s-conca3.adb, s-conca3.ads, a-ioexce.ads: Implement pragma
Compiler_Unit_Warning, change Compiler_Unit everywhere to
Compiler_Unit_Warning.

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

* sem_prag.adb (Analyze_Depends_In_Decl_Part): Do not normalize
in ASIS mode aggregates that are used as aspect definitions.

From-SVN: r208137

10 years ago[multiple changes]
Arnaud Charlet [Tue, 25 Feb 2014 15:11:39 +0000 (16:11 +0100)]
[multiple changes]

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

* exp_ch7.adb, sem_util.adb, sem_util.ads, exp_ch6.adb: Minor
reformatting.

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

* freeze.adb (Freeze_Entity): If the return type of a function
is a limited view, and the non-limited view has not been seen yet,
defer freezing to some later point.

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

* sem_ch3.adb: Minor reformatting.

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

* s-excdeb.ads, s-except.ads, s-exctab.adb, s-exctab.ads, s-finmas.ads,
s-htable.adb, s-htable.ads, s-imenne.adb, s-imenne.ads, s-imgenu.adb,
s-imgenu.ads, s-mastop.adb, s-mastop.ads, s-memory-vms_64.adb,
s-memory-vms_64.ads, s-memory.adb, s-memory.ads, s-os_lib.adb,
s-os_lib.ads, s-parame.adb, s-parame.ads, s-purexc.ads, s-restri.adb,
s-restri.ads, s-rident.ads, s-secsta.adb, s-secsta.ads, s-soflin.adb,
s-soflin.ads, s-sopco3.adb, s-sopco3.ads, s-sopco4.adb, s-sopco4.ads,
s-sopco5.adb, s-sopco5.ads, s-spsufi.ads, s-stache.adb, s-stache.ads,
s-stalib.adb, s-stalib.ads, s-stoele.adb, s-stoele.ads, s-strcom.adb,
s-strcom.ads, s-strhas.adb, s-string.adb, s-string.ads, s-strops.adb,
s-strops.ads, s-ststop.adb, s-ststop.ads, s-traceb.adb, s-traceb.ads,
s-traent.adb, s-traent.ads, s-unstyp.ads, s-utf_32.adb, s-utf_32.ads,
s-wchcnv.adb, s-wchcnv.ads, s-wchcon.adb, s-wchcon.ads, s-wchjis.adb,
s-wchjis.ads, sem_ch11.adb, sem_ch4.adb, sem_ch5.adb, sem_prag.adb,
snames.ads-tmpl: Change Compiler_Unit everywhere to
Compiler_Unit_Warning.

From-SVN: r208135

10 years agoexp_ch6.adb (Add_Or_Save_Precondition): New routine.
Hristian Kirtchev [Tue, 25 Feb 2014 15:05:39 +0000 (15:05 +0000)]
exp_ch6.adb (Add_Or_Save_Precondition): New routine.

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

* exp_ch6.adb (Add_Or_Save_Precondition): New routine.
(Collect_Body_Postconditions_In_Decls): New routine.
(Collect_Body_Postconditions_Of_Kind): Factor out code. Handle
postcondition aspects or pragmas that appear on a subprogram
body stub.
(Collect_Spec_Preconditions): Factor out code. Handle
precondition aspects or pragmas that appear on a subprogram
body stub.
* sem_ch6.adb (Analyze_Subprogram_Body_Helper): The analysis of
aspects that apply to a subprogram body stub is no longer delayed,
the aspects are analyzed on the spot.
(SPARK_Aspect_Error):
Aspects that apply to a subprogram declaration cannot appear in
a subunit.
* sem_ch10.adb Remove with and use clause for Sem_Ch13.
(Analyze_Proper_Body): Add local variable Comp_Unit. Unum
is now a local variable. Code cleanup. Analysis related to
the aspects of a subprogram body stub is now carried out by
Analyze_Subprogram_Body_Helper. Do not propagate the aspects
and/or pragmas of a subprogram body stub to the proper body
as this is no longer needed. Do not analyze the aspects of a
subprogram stub when the corresponding source unit is missing.
(Analyze_Protected_Body_Stub): Flag the illegal use of aspects
on a stub.
(Analyze_Task_Body_Stub): Flag the illegal use of
aspects on a stub.
(Optional_Subunit): Add local variable Unum.
* sem_ch13.adb (Insert_Delayed_Pragma): Do not analyze a generated
pragma when it applies to a subprogram body stub.
* sem_prag.adb (Analyze_Pragma): Pragmas Contract_Cases,
Depends and Global can now apply to a subprogram body stub as
long as it acts as its own spec.
(Analyze_Refined_Pragma):
Code reformatting. Refinement pragmas cannot apply to a subunit.

From-SVN: r208134

10 years ago2014-02-25 Hristian Kirtchev <kirtchev@adacore.com>
Hristian Kirtchev [Tue, 25 Feb 2014 15:03:23 +0000 (15:03 +0000)]
2014-02-25  Hristian Kirtchev  <kirtchev@adacore.com>

* einfo.ads Update the usage of flag
Uses_Sec_Stack. Uses_Sec_Stack now applies to E_Loop entities.
* exp_ch5.adb (Expand_Iterator_Loop): The temporary for a cursor
now starts with the letter 'C'. This makes reading expanded
code easier.
* exp_ch7.adb (Establish_Transient_Scope): Add local variable
Iter_Loop. Signal that an Ada 2012 iterator loop requires
secondary stack management when creating a transient scope for
an element reference.
* exp_util.adb (Process_Statements_For_Controlled_Objects):
When wrapping the statements of a loop, pass the E_Loop entity
to the wrapping machinery.
(Wrap_Statements_In_Block): Add
formal parameter Scop along with comment on usage. Add local
variables Block_Id, Block_Nod and Iter_Loop. Mark the generated
block as requiring secondary stack management when the block is
created inside an Ada 2012 iterator loop. This ensures that any
reference objects are reclaimed on each iteration of the loop.
* sem_ch5.adb (Analyze_Loop_Statement): Mark the generated block
tasked with the handling of container iterators as requiring
secondary stack management. This ensures that iterators are
reclaimed when the loop terminates or is exited in any fashion.
* sem_util.adb (Add_Block_Identifier): New routine.
(Find_Enclosing_Iterator_Loop): New routine.
* sem_util.ads (Add_Block_Identifier): New routine.
(Find_Enclosing_Iterator_Loop): New routine.

From-SVN: r208133

10 years ago[multiple changes]
Arnaud Charlet [Tue, 25 Feb 2014 15:02:01 +0000 (16:02 +0100)]
[multiple changes]

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

* sinfo.ads: Minor reformatting.

2014-02-25  Tristan Gingold  <gingold@adacore.com>

* s-expllu.ads, s-expuns.ads, s-expmod.ads: Minor comment fix.

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

* sinput-l.adb, osint.adb, osint.ads: Add Prep_Suffix to factorize code.

From-SVN: r208132

10 years ago[multiple changes]
Arnaud Charlet [Tue, 25 Feb 2014 14:59:33 +0000 (15:59 +0100)]
[multiple changes]

2014-02-25  Tristan Gingold  <gingold@adacore.com>

* sem_ch10.adb: Minor comment fix.

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

* s-tasdeb.adb: Misc cleanup of this package,
including printing addresses in hexadecimal.
(Write): Fix minor bug when taking 'Address of an empty string.

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

* sem_prag.adb (Analyze_Part_Of): Reject state refinement in a
public child unit when it does not refer to the abstract state
of a public ancestor.

From-SVN: r208131

10 years ago[multiple changes]
Arnaud Charlet [Tue, 25 Feb 2014 14:58:29 +0000 (15:58 +0100)]
[multiple changes]

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

* sem_prag.adb (Analyze_Pragma/Pragma_Validity_Checks): Ignore pragma
Validity_Checks in GNATprove and CodePeer modes.

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

* prj-attr.adb, projects.texi, snames.ads-tmpl: Add package Install's
Artifacts attribute.

From-SVN: r208130

10 years ago[multiple changes]
Arnaud Charlet [Tue, 25 Feb 2014 14:57:28 +0000 (15:57 +0100)]
[multiple changes]

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

* sem_prag.adb: Minor reformatting to get consistent messages.

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

* checks.adb: Minor reformatting.
* sinfo.ads (Do_Range_Check): Document that this flag is never
passed to the back end.

From-SVN: r208129

10 years ago[multiple changes]
Arnaud Charlet [Tue, 25 Feb 2014 14:55:43 +0000 (15:55 +0100)]
[multiple changes]

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

* sem_ch3.adb, sem_ch5.adb, sem_ch9.adb, sem_prag.adb, sem_attr.adb,
sem_ch6.adb: Remove useless references to SPARK RM in error messages.

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

* sem_res.adb (Appears_In_Check): New routine.
(Resolve_Entity_Name): Remove local variables Prev and
Usage_OK. Par is now a constant. Remove the parent chain traversal
as the placement of a volatile object with enabled property
Async_Writers and/or Effective_Reads must appear immediately
within a legal construct.

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

* checks.adb (Apply_Selected_Range_Checks):
Alphabetize local constants and variables. Add comments.
Always insert a range check that requires runtime evaluation into
the tree.

From-SVN: r208128

10 years ago[multiple changes]
Arnaud Charlet [Tue, 25 Feb 2014 14:53:55 +0000 (15:53 +0100)]
[multiple changes]

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

* sem_attr.adb, sem_ch6.adb, par-ch3.adb: Minor reformatting.

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

* s-tassta.adb (Finalize_Global_Tasks): Limit the number of loop
iterations while waiting for independent tasks to terminate;
if an independent task does not terminate, we do not want to
hang here. In that case, the thread will be terminated when the
process exits.
* s-taprop-linux.adb (Abort_Task): Fix Assert to allow for ESRCH.

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

* sem_prag.adb (Check_SPARK_Aspect_For_ASIS): New subprogram,
used to perform pre-analysis of the expression for SPARK
aspects that have a non-standard syntax, such as GLobal and
Initializes. The procedure applies to the original expression
in an aspect specification, prior to the analysis of the
corresponding pragma, in order to provide semantic information
for ASIS navigation purposes.
(Analyze_Global_In_Decl_List, Analyze_Initializes_In_Decl_Part):
Call new subprogram.

From-SVN: r208127

10 years ago[multiple changes]
Arnaud Charlet [Tue, 25 Feb 2014 14:52:42 +0000 (15:52 +0100)]
[multiple changes]

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

* sem_prag.adb: Remove obsolete reference to SPARK RM in error message.

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

* init.c (HAVE_GNAT_ADJUST_CONTEXT_FOR_RAISE): Enable for ARM.
(__gnat_adjust_context_for_raise): Bump the PC by 2.

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

* par-ch3.adb (P_Basic_Declarative_Items): In the case of a
misplaced IS, add a statement sequence to improper body only if
one has not been parsed already.

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

* sem_attr.adb (Analyze_Attribute, case 'Update): Check for
mismatch when multidimensional array is updated with a single
index.

From-SVN: r208126

10 years agosem_ch3.adb, [...]: Mark most references to SPARK RM in error messages for removal.
Yannick Moy [Tue, 25 Feb 2014 14:51:20 +0000 (14:51 +0000)]
sem_ch3.adb, [...]: Mark most references to SPARK RM in error messages for removal.

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

* sem_ch3.adb, sem_ch5.adb, sem_prag.adb, sem_attr.adb, errout.ads,
sem_ch6.adb: Mark most references to SPARK RM in error messages
for removal.

From-SVN: r208125

10 years agoCorrect ChangeLog entry
William Schmidt [Tue, 25 Feb 2014 13:35:28 +0000 (13:35 +0000)]
Correct ChangeLog entry

From-SVN: r208124

10 years agovector.md (*vector_ordered<mode>): Change split to use canonical form for nor<mode>3.
Bill Schmidt [Tue, 25 Feb 2014 13:28:25 +0000 (13:28 +0000)]
vector.md (*vector_ordered<mode>): Change split to use canonical form for nor<mode>3.

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

* config/rs6000/vector.md (*vector_ordered<mode>): Change split to
use canonical form for nor<mode>3.
(*vector_unordered<mode>): Likewise.

From-SVN: r208122

10 years agold-vsx.c: Don't use vec_all_eq.
Bill Schmidt [Tue, 25 Feb 2014 13:18:17 +0000 (13:18 +0000)]
ld-vsx.c: Don't use vec_all_eq.

gcc/testsuite:

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

* gcc.dg/vmx/ld-vsx.c: Don't use vec_all_eq.
* gcc.dg/vmx/ld-vsx-be-order.c: Likewise.
* gcc.dg/vmx/ldl-vsx.c: Likewise.
* gcc.dg/vmx/ldl-vsx-be-order.c: Likewise.
* gcc.dg/vmx/merge-vsx.c: Likewise.
* gcc.dg/vmx/merge-vsx-be-order.c: Likewise.

From-SVN: r208120

10 years agore PR target/55426 (gcc.target/arm/neon-vld1_dupQ.c ICEs on armeb)
Kyrylo Tkachov [Tue, 25 Feb 2014 10:20:40 +0000 (10:20 +0000)]
re PR target/55426 (gcc.target/arm/neon-vld1_dupQ.c ICEs on armeb)

PR target/55426
* config/arm/arm.h (CANNOT_CHANGE_MODE_CLASS): Allow 128 to 64-bit
conversions.

From-SVN: r208116